:root {
  --sb-size: 10px;
  --sb-thumb: var(--color-brand-two-12, #DBCFC1);
  /* Beżowy thumb jak na screenie */
  --sb-track: var(--color-brand-two-12-track, #FCFAF8);
  /* Bardzo jasny track */
  --sb-thumb-hover: var(--color-brand-two-10, #F3EFEA);
  /* Jaśniejszy po hover */
}

/* Firefox + ogólnie */
html,
body {
  scrollbar-width: thin;
  scrollbar-color: var(--sb-thumb) var(--sb-track);
}

/* Jeśli przeglądarka wspiera gutter – rezerwujemy miejsce, żeby “maskowanie” nie weszło w content */
/* Używamy auto zamiast stable, żeby uniknąć separatora po lewej stronie */
@supports (scrollbar-gutter: auto) {
  html {
    scrollbar-gutter: auto;
  }
}

/* Chrome / Edge / Safari */
html::-webkit-scrollbar,
body::-webkit-scrollbar {
  width: var(--sb-size);
  height: var(--sb-size);
  background: transparent;
  /* Scrollbar przezroczysty - track niewidoczny */
  border: none;
  border-left: none;
  border-right: none;
  outline: none;
  margin-left: 0;
  margin-right: 0;
}

html::-webkit-scrollbar-track,
html::-webkit-scrollbar-track-piece,
body::-webkit-scrollbar-track,
body::-webkit-scrollbar-track-piece {
  background: transparent !important;
  /* Track przezroczysty - nie widoczny po lewej */
  border: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  -webkit-box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
  background: var(--sb-thumb);
  border-radius: 3px;

  /* ładny “odstęp” i spójny kolor przy krawędziach */
  border: none;

  box-shadow: none;
  margin: 0;
  padding: 0;
  width: 100%;
  /* Wypełnia całą szerokość tracku - bez odstępów */
}

html::-webkit-scrollbar-thumb:hover,
html::-webkit-scrollbar-thumb:active,
body::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:active {
  background: var(--sb-thumb-hover);
  border-radius: 20px;
  border: none;
  margin: 0;
  padding: 0;
  width: 100%;
  /* Wypełnia całą szerokość tracku - bez odstępów */
}

html::-webkit-scrollbar-corner,
body::-webkit-scrollbar-corner {
  background: transparent;
  /* Corner przezroczysty */
}

html::-webkit-scrollbar-button,
body::-webkit-scrollbar-button {
  display: none;
  width: 0;
  height: 0;
}

html::-webkit-resizer,
body::-webkit-resizer {
  background: transparent;
}

/* ===== MASKA NA 1px “separator” (to właśnie ta linia) ===== */
/* Nakładka działa tylko tam, gdzie jest gutter (czyli głównie Chromium/Win). */
/* Maska separatora wyłączona - track jest przezroczysty */


/* ============================================
   GLOBAL - PREVENT HORIZONTAL SCROLL
   ============================================ */
/* Only hide horizontal overflow on body, not html - to preserve sticky positioning */
body {
  overflow-x: hidden !important;
  max-width: 100% !important;
  width: 100% !important;
}

a:hover {
  color: #000;
}

/* Product description lists - restore standard bullets */
.product-description ul {
  list-style: disc !important;
  list-style-position: outside;
  padding-left: 1.25rem;
}

#product .single-c {
  padding-left: 0;
}

html {
  max-width: 100% !important;
  width: 100% !important;
  /* Don't set overflow-x on html to preserve sticky positioning */
}

.page-container {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

/* Don't set overflow-x on #wrapper and #main to preserve sticky positioning */
#wrapper {
  max-width: 100% !important;
  /* overflow-x: hidden removed to allow sticky positioning */
}

/* Don't set overflow-x on #main to preserve sticky positioning */
#main {
  max-width: 100% !important;
}

/* Ensure sticky navigation works - force sticky positioning */
/* Desktop only - overflow visible dla sticky */
@media (min-width: 768px) {
  #product .product-container2 #productSpy.nav-full {
    position: sticky !important;
    top: 0 !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }
}

/* Ensure parent containers don't block sticky */
#product .product-container2 {
  overflow-x: visible !important;
  overflow-y: visible !important;
}

/* 
#product .container-fluid {
	overflow-x: hidden;
	max-width: 100%;
	width: 100%;
}
*/

/* Ensure all parent containers allow sticky */
#product,
.backcolor1,
.product-container,
#main section,
#main {
  overflow-x: visible !important;
  overflow-y: visible !important;
}

/* ============================================
 MULTI-COLUMN MEGA MENU STYLES
 ============================================ */

/* Main menu container */
#header .header-nav #_desktop_top_menu,
#_desktop_top_menu {
  display: flex !important;
  justify-content: flex-start;
  gap: 0;
  align-items: center;
  flex-wrap: wrap;
  visibility: visible !important;
  opacity: 1 !important;
}


/* Main menu list */
.main-menu-list {
  display: flex !important;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
  align-items: center;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100%;
}

/* Ensure menu items are visible */
.main-menu-item {
  display: list-item !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.main-menu-link {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Main menu item */
.main-menu-item {
  position: relative;
  margin: 0;
}

/* Main menu link */
.main-menu-link {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 500;
  color: #222;
  text-decoration: none;
  transition: color 0.2s ease;
  white-space: nowrap;
}

.main-menu-link:hover {
  color: #000;
}

.main-menu-item.current .main-menu-link,
.main-menu-link.active {
  color: #e4002b;
}

/* Menu arrow */
.menu-arrow {
  width: 12px;
  height: 12px;
  transition: transform 0.2s ease;
  flex-shrink: 0;
}

.main-menu-item:hover .menu-arrow {
  transform: rotate(180deg);
}

/* Mega menu dropdown */
.mega-menu-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  min-width: 800px;
  max-width: 1200px;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  z-index: 1000;
  margin-top: 8px;
}

.main-menu-item:hover .mega-menu-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Mega menu container */
.mega-menu-container {
  display: flex;
  gap: 32px;
  align-items: flex-start;
}

/* Mega menu column */
.mega-menu-column {
  min-width: 200px;
  position: relative;
}

.mega-menu-column[data-depth="0"] {
  border-right: 1px solid #e5e5e5;
  padding-right: 24px;
}

.mega-menu-column[data-depth="0"]:last-child {
  border-right: none;
  padding-right: 0;
}

/* Column header */
.mega-menu-column-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid #f0f0f0;
}

.mega-menu-column-title {
  font-size: 16px;
  font-weight: 600;
  color: #000;
  margin: 0;
  line-height: 1.4;
}

.mega-menu-column-link {
  color: #000;
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
}

.mega-menu-column-link:hover {
  color: #e4002b;
}

.mega-menu-view-all {
  font-size: 12px;
  color: #595959;
  text-decoration: none;
  transition: color 0.2s ease;
}

.mega-menu-view-all:hover {
  color: #000;
}

/* Mega menu items list */
.mega-menu-items {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mega-menu-item {
  position: relative;
  margin-bottom: 4px;
}

.mega-menu-item-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  font-size: 14px;
  color: #595959;
  text-decoration: none;
  border-radius: 4px;
  transition: all 0.2s ease;
  position: relative;
}

.mega-menu-item-link:hover {
  background-color: #f8f6f0;
  color: #000;
}

.mega-menu-item.current .mega-menu-item-link {
  background-color: #f8f6f0;
  color: #000;
}

/* Active item indicator (green line) */
.mega-menu-item.current .mega-menu-item-link::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background-color: #4CAF50;
  border-radius: 0 2px 2px 0;
}

/* Mega menu arrow */
.mega-menu-arrow {
  width: 8px;
  height: 8px;
  flex-shrink: 0;
  margin-left: 8px;
  opacity: 0.6;
}

.mega-menu-item.has-children:hover .mega-menu-arrow {
  opacity: 1;
}

/* Subcolumn (nested columns) */
.mega-menu-subcolumn {
  position: absolute;
  left: 100%;
  top: 0;
  background: #fff;
  box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  min-width: 220px;
  padding: 16px;
  margin-left: 16px;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-10px);
  transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
  z-index: 1001;
}

.mega-menu-item.has-children:hover .mega-menu-subcolumn {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.mega-menu-subcolumn .mega-menu-column {
  border-right: none;
  padding-right: 0;
  min-width: 200px;
}

.mega-menu-subcolumn .mega-menu-column-header {
  margin-bottom: 12px;
  padding-bottom: 6px;
}

.mega-menu-subcolumn .mega-menu-column-title {
  font-size: 14px;
  font-weight: 600;
}

/* Mobile menu styles */
#_mobile_top_menu {
  padding: 0;
}

.mobile-menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mobile-menu-item {
  border-bottom: 1px solid #e5e5e5;
}

.mobile-menu-link {
  display: block;
  padding: 16px 20px;
  font-size: 16px;
  font-weight: 500;
  color: #222;
  text-decoration: none;
}

.mobile-menu-item.has-children {
  position: relative;
}

.mobile-menu-item .mobile-nav-toggle {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: #595959;
  transition: transform 0.2s ease;
}

.mobile-menu-item .mobile-nav-toggle[aria-expanded="true"] {
  transform: translateY(-50%) rotate(180deg);
}

.mobile-submenu {
  background-color: #f8f8f8;
  padding-left: 20px;
}

.mobile-submenu .mobile-menu-item {
  border-bottom: 1px solid #e0e0e0;
}

.mobile-submenu .mobile-menu-link {
  padding-left: 40px;
  font-size: 14px;
}

/* Promocje highlight - use class instead of :has() for better browser support */
.main-menu-item.promocje .main-menu-link,
.main-menu-link[href*="promocje"],
.main-menu-link[href*="Promocje"] {
  color: #e4002b !important;
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
  .mega-menu-dropdown {
    min-width: 100%;
    left: 0;
    right: 0;
  }

  .mega-menu-container {
    flex-direction: column;
    gap: 24px;
  }

  .mega-menu-column[data-depth="0"] {
    border-right: none;
    border-bottom: 1px solid #e5e5e5;
    padding-right: 0;
    padding-bottom: 24px;
  }

  .mega-menu-column[data-depth="0"]:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
}

/* Footer Map Location Popup */
.location-popup {
  transition: opacity 0.3s ease, transform 0.3s ease;
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  z-index: 1000 !important;
}

.location-popup.show {
  opacity: 1 !important;
  transform: translateY(0);
  pointer-events: auto !important;
  display: block !important;
  visibility: visible !important;
}

.location-popup .popup-content {
  max-width: 100%;
}

.location-popup .popup-title {
  font-family: Sora;
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
  color: #000;
  margin-bottom: 8px;
}

.location-popup .popup-address {
  font-family: Sora;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #595959;
  margin-bottom: 16px;
}

.location-popup .popup-contact {
  margin-top: 16px;
}

.location-popup .popup-email,
.location-popup .popup-phone {
  font-family: Sora;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #000;
}

.location-popup .popup-email:hover,
.location-popup .popup-phone:hover {
  color: #000;
  text-decoration: underline;
}

.location-popup .popup-close {
  z-index: 10;
}

/* Footer Map Container */
.c-map {
  position: relative;
}

#footer-map {
  width: 100%;
  height: 256px;
  min-height: 256px;
  border-radius: 8px;
  overflow: hidden;
}

/* Contact Form Corner Decoration */
.contact-form {
  position: relative;
}

.contact-form-corner-decoration {
  position: absolute;
  bottom: -53px;
  left: -41px;
  width: 122px;
  height: 122px;
  pointer-events: none;
  z-index: 1;
}

.contact-form-corner-decoration svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* Contact Form AJAX Notifications */
#contact-form-notification {
  margin-bottom: 24px;
  animation: slideDown 0.4s ease-out;
}

#contact-form-notification .alert {
  border-radius: 8px;
  padding: 20px 24px;
  margin-bottom: 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

#contact-form-notification .alert-success {
  background: #d4edda;
  border: 1px solid #c3e6cb;
  color: #155724;
}

#contact-form-notification .alert-danger {
  background: #f8d7da;
  border: 1px solid #f5c6cb;
  color: #721c24;
}

#contact-form-notification .alert ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

#contact-form-notification .alert ul li {
  padding: 4px 0;
  font-size: 15px;
  line-height: 1.5;
}

/* Submit Button Loading State */
.contact-form button[type="submit"]:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}



/* Footer Map Container */
.c-map {
  position: relative;
}

.footer-map {
  width: 100%;
  height: 225px;
  border-radius: 8px;
  overflow: hidden;
}

/* Footer Map Search Bar - Positioned over map */
.footer-map-search {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10;
  width: 280px;
  max-width: calc(100% - 24px);
}

.footer-map-search-input {
  width: 100%;
  padding: 10px 16px 10px 40px;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #000;
  background: #fff;
  outline: none;
  transition: all 0.3s ease;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

.footer-map-search-input:focus {
  border-color: #e4fd71;
  box-shadow: 0 0 0 3px rgba(228, 253, 113, 0.2), 0 2px 6px rgba(0, 0, 0, 0.15);
}

.footer-map-search-input::placeholder {
  color: #888;
}

.footer-map-search-icon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

/* Footer Map Search Suggestions */
.footer-map-search-suggestions {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  max-height: 200px;
  overflow-y: auto;
  z-index: 1000;
  display: none;
}

.footer-map-suggestion-item {
  padding: 12px 16px;
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #000;
  cursor: pointer;
  transition: background-color 0.2s ease;
  border-bottom: 1px solid #f5f5f5;
}

.footer-map-suggestion-item:last-child {
  border-bottom: none;
}

.footer-map-suggestion-item:hover,
.footer-map-suggestion-item.active {
  background-color: #f8f9fa;
  color: #000;
}

.footer-map-suggestion-item:first-child {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

.footer-map-suggestion-item:last-child {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}

@media (max-width: 768px) {
  .c-map {
    margin-top: 32px;
  }

  .footer-map-search {
    top: 8px;
    right: 8px;
    width: calc(100% - 16px);
  }

  .footer-map-search-input {
    font-size: 13px;
    padding: 9px 14px 9px 36px;
  }

  .footer-map-search-icon {
    left: 10px;
    width: 18px;
    height: 18px;
  }

  .footer-map-search-suggestions {
    max-height: 150px;
  }

  .footer-map-suggestion-item {
    padding: 10px 14px;
    font-size: 13px;
  }

  .footer-map {
    height: 300px !important;
    border-radius: 8px;
  }
}

/* Blockcart Modal - Stylowanie jak counselor-modal */
#blockcart-modal.modal {
  background: rgba(0, 0, 0, 0.6);
  z-index: 1055;
}

#blockcart-modal .modal-dialog {
  margin: 0 auto;
  max-width: 560px;
  width: 100%;
}

#blockcart-modal .modal-content {
  position: relative;
  border: 0;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.2);
  background-color: #ffffff;
}

/* Przycisk zamknięcia - jak counselor-modal-close */
#blockcart-modal .blockcart-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: rgba(255, 255, 255, 0.9);
  border: none;
  color: #000;
  cursor: pointer;
  padding: 8px;
  border-radius: 50%;
  z-index: 10;
  transition: all 0.2s;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#blockcart-modal .blockcart-modal-close:hover {
  background: #fff;
  transform: scale(1.1);
}

#blockcart-modal .blockcart-modal-close svg {
  width: 16px;
  height: 16px;
}

#blockcart-modal .modal-header {
  border-bottom: 1px solid #E5E5E5;
  padding: 32px 32px 20px 32px;
  position: relative;
}

/* Ukryj domyślny btn-close z Bootstrap */
#blockcart-modal .modal-header .btn-close {
  display: none;
}

#blockcart-modal .modal-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0;
}

#blockcart-modal .modal-body {
  padding: 20px 32px 32px 32px;
}

/* Przyciski - jak counselor-modal */
#blockcart-modal .btn.btn-primary {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-10, #F2FEBD);
  background: var(--color-brand-one-8-base, #E4FD71);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  padding: 16px 24px;
  transition: all 0.2s;
  text-transform: none;
}

#blockcart-modal .btn.btn-primary:hover {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
  color: var(--text-color-base-primary, #000);
}

#blockcart-modal .btn.btn-outline-secondary {
  border-radius: 4px;
  border: 1px solid var(--color-neutral-8-base, #B2B2B2);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  padding: 16px 24px;
  transition: all 0.2s;
  background: transparent;
}

#blockcart-modal .btn.btn-outline-secondary:hover {
  border-radius: 4px;
  border: 1px solid var(--color-neutral-8-base, #B2B2B2);
  background: rgba(178, 178, 178, 0.20);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

#blockcart-modal img {
  max-height: 422px;
  border-radius: 8px;
}

#blockcart-modal .product-name {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  /* 133.333% */
}

#blockcart-modal .blockcart-subtotal {
  margin-top: 15px;
}

/* Responsive */
@media (max-width: 767px) {
  #blockcart-modal.modal {
    padding: 16px;
  }

  #blockcart-modal .modal-content {
    border-radius: 12px;
    max-height: calc(100vh - 32px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  #blockcart-modal .modal-header {
    padding: 24px 20px 20px 20px;
  }

  #blockcart-modal .modal-body {
    padding: 20px 20px 24px 20px;
  }

  #blockcart-modal .blockcart-modal-close {
    top: 12px;
    right: 12px;
  }
}

/* Pagination Summary */
.pagination-summary {
  color: #888888;
  font-family: "Sora", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
}

.pagination-summary strong {
  color: #888888;
  font-family: "Sora", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
}

/* Custom Pagination Controls */
.custom-pagination-controls {
  gap: 20px;
}

.custom-pagination-controls .current-page-box {
  display: inline-block;
}

.custom-pagination-controls .page-number-input {
  width: 60px;
  height: 40px;
  padding: 8px 12px;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  color: #000000;
  font-size: 16px;
  font-weight: 400;
  text-align: center;
  outline: none;
  transition: border-color 0.2s ease;
}

.custom-pagination-controls .page-number-input:focus {
  border-color: #b4d12d;
}

.custom-pagination-controls .page-number-input::-webkit-inner-spin-button,
.custom-pagination-controls .page-number-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.custom-pagination-controls .page-number-input[type="number"] {
  -moz-appearance: textfield;
}

.custom-pagination-controls .total-pages-text {
  color: #666666;
  font-size: 16px;
  font-weight: 400;
  white-space: nowrap;
}

.custom-pagination-controls .btn-next-page,
.custom-pagination-controls .btn-prev-page {
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  border-radius: 4px;
  border: 1px solid #e4fd71;
  background: #e4fd71;
  color: #000000;
  font-family: "Sora", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration: none;
  transition: background-color 0.2s ease, opacity 0.2s ease;
  white-space: nowrap;
  cursor: pointer;
}

.custom-pagination-controls .btn-next-page:hover:not(.disabled),
.custom-pagination-controls .btn-prev-page:hover:not(.disabled) {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
  color: #000000;
  text-decoration: none;
}

.custom-pagination-controls .btn-next-page.disabled,
.custom-pagination-controls .btn-prev-page.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* Responsive adjustments */
@media (max-width: 767px) {
  .custom-pagination-controls {
    gap: 10px;
    margin-top: 15px;
  }

  .custom-pagination-controls .page-number-input {
    width: 50px;
    height: 36px;
    font-size: 14px;
  }

  .custom-pagination-controls .total-pages-text {
    font-size: 14px;
  }

  .custom-pagination-controls .btn-next-page,
  .custom-pagination-controls .btn-prev-page {
    padding: 10px 20px;
    font-size: 14px;
  }
}

.pagination-wrapper {
  margin-top: 16px;
  margin-bottom: 32px;
  padding-bottom: 32px;
  border-bottom: 1px solid #e5e5e5;
}

.pagination-separator {
  padding-top: 48px;
  padding-bottom: 48px;
  color: #888888;
  font-family: "Sora", sans-serif;
  font-size: 14px;
  text-align: center;
}

/* =============================================================================
   Strona listy marek (/marki) — ManufacturerController (#manufacturer / .page-manufacturer)
   ============================================================================= */
#manufacturer #main ul,
.page-manufacturer #main > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  list-style: none;
  padding-left: 0;
  margin: 0;
}

#manufacturer #main ul .brand,
.page-manufacturer #main > ul > li.brand {
  position: relative;
  width: calc(20% - 10px);
  min-width: 240px;
  padding: 5px;
  margin: 5px;
  text-align: center;
  background: #fff;
  transition: 0.4s ease-out;
  box-sizing: border-box;
}

#manufacturer #main ul .brand:hover,
.page-manufacturer #main > ul > li.brand:hover,
#supplier #main ul .supplier:hover,
.page-supplier #main > ul > li.supplier:hover {
  box-shadow: none;
}

.page-manufacturer #main > ul > li.brand .card {
  border: 1px solid #e0e0e0 !important;
  border-radius: 10px;
  background: #ffffff;
  text-align: left !important;
  height: 100%;
  position: relative;
  overflow: hidden;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

#manufacturer #main ul .brand .card:hover,
.page-manufacturer #main > ul > li.brand .card:hover {
  box-shadow: none;
  border-color: #d0d0d0 !important;
}

.page-manufacturer #main > ul > li.brand .card-body {
  display: none !important;
}

#manufacturer #main ul .brand .card > a.d-block,
.page-manufacturer #main > ul > li.brand .card > a.d-block {
  display: flex !important;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  padding: 13px 30px 7px 13px !important;
  text-decoration: none;
  color: inherit;
  position: relative;
  min-height: 96px;
}

.page-manufacturer #main > ul > li.brand .card > a.d-block:focus-visible {
  outline: 2px solid #b4d12d;
  outline-offset: 2px;
}

.page-manufacturer #main > ul > li.brand .card > a.d-block img {
  margin: 0 !important;
  flex-shrink: 0;
  display: block !important;
  max-height: 88px;
  max-width: 96px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.page-manufacturer #main > ul > li.brand .card > a.d-block::after {
  content: "";
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background-color: #e3d9cf;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23716659' d='M4.86154 12L4 11.1385L9.90769 5.23077H4.61538V4H12V11.3846H10.7692V6.09231L4.86154 12Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
  pointer-events: none;
}

/* Category Manufacturers Section */
.category-manufacturers {
  margin-top: 24px;
  margin-bottom: 48px;
  padding-bottom: 32px;
  border-bottom: 1px solid #e5e5e5;
}

.category-manufacturers #brands-container {
  --bs-gutter-y: 8px;
  --bs-gutter-x: 8px;
}

.category-manufacturers .brand-item .card {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  position: relative;
  height: 100%;
  transition: box-shadow 0.2s ease;
}

.category-manufacturers .brand-item .card a {
  display: flex;
  align-items: center;
  text-decoration: none;
  padding: 0 16px;
  position: relative;
}

.category-manufacturers .brand-logo {
  width: 96px;
  height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-right: 24px;
}

.category-manufacturers .brand-logo img {
  max-height: 96px;
  max-width: 96px;
}

.category-manufacturers .brand-name {
  flex-grow: 1;
}

.category-manufacturers .brand-name span {
  color: #000000;
  font-family: "Sora", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.category-manufacturers .brand-products-ico {
  position: absolute;
  top: 16px;
  right: 16px;
  flex-shrink: 0;
}

.category-manufacturers .brand-arrow-icon {
  position: absolute;
  top: 12px;
  right: 12px;
  flex-shrink: 0;
}

.category-manufacturers .section-button-wrapper {
  margin-top: 16px;
  text-align: center;
  margin-bottom: 32px;
}

.category-manufacturers #toggle-brands-btn {
  display: inline-flex;
  align-items: center;
  color: #000000;
  cursor: pointer;
  font-family: "Sora", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 7%;
  text-underline-offset: 70%;
  text-underline-position: from-font;
  transition: opacity 0.2s ease;
}

.category-manufacturers #toggle-brands-btn:hover {
  opacity: 0.8;
}

.category-manufacturers .brands-toggle-chevron {
  margin-left: 8px;
  transition: transform 0.2s ease;
}

/* Category Title with Product Count */
.category-title-wrapper {
  margin-top: 32px;
  margin-bottom: 24px;
}

.category-title {
  color: #000000;
  font-family: "Sora", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 0;
}

.category-title .product-count {
  color: #888888;
  font-family: "Sora", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

/* Sort Orders Dropdown */
.products-selection-row {
  margin-top: 30px;
  padding-top: 30px;
  margin-bottom: 32px;
  border-top: 1px solid rgb(229, 229, 229);
}

.products-selection-row .col-md-8 {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

/* Ukryj paginację poniżej 768px */
@media (max-width: 767px) {
  .products-selection-row .col-md-8 {
    display: none;
  }
}

.products-sort-order .btn {
  display: flex;
  padding: 10px 16px;
  justify-content: space-between;
  align-items: center;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  color: #000000;
  font-family: "Sora", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-align: left;
  transition: border-color 0.2s ease;
}

.products-sort-order .btn:hover,
.products-sort-order .btn:focus {
  border-color: #b4d12d;
  background: #ffffff;
  color: #000000;
}

.products-sort-order .btn::after {
  content: "";
  display: inline-block;
  margin-left: 12px;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid #666666;
  vertical-align: middle;
}

.products-sort-order .dropdown-menu {
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  padding: 8px 0;
}

.products-sort-order .dropdown-item {
  padding: 10px 16px;
  color: #000000;
  font-family: "Sora", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  transition: background-color 0.2s ease;
}

.products-sort-order .dropdown-item:hover {
  background-color: #f5f5f5;
  color: #000000;
}

.products-sort-order .dropdown-item.current {
  background-color: #e4fd71;
  color: #000000;
  font-weight: 600;
}

/* Top Pagination */
.top-pagination {
  margin-top: 16px;
}

@media (min-width: 768px) {
  .top-pagination {
    margin-top: 0;
  }
}

/* Mobile Swipeable Brands */
@media (max-width: 768px) {

  /* Hide top pagination on mobile */
  .top-pagination {
    display: none;
  }

  #wrapper {
    padding-top: 16px;
  }

  .category-title-wrapper {
    margin-top: 0;
  }

  .category-manufacturers {
    position: relative;
    margin-left: -16px;
    margin-right: -16px;
    padding-left: 16px;
    padding-right: 16px;
    border-bottom: none;
    margin-bottom: 0;
    margin-top: 8px;
  }

  .category-manufacturers #brands-container {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* IE and Edge */
    padding-bottom: 8px;
    padding-right: 16px;
  }

  /* Hide scrollbar for Chrome, Safari and Opera */
  .category-manufacturers #brands-container::-webkit-scrollbar {
    display: none;
  }

  .category-manufacturers .brand-item {
    flex: 0 0 140px;
    max-width: 140px;
    height: 172px;
    scroll-snap-align: start;
    scroll-snap-stop: normal;
  }

  /* Adjust card for mobile - vertical layout */
  .category-manufacturers .brand-item .card {
    height: 100%;
    min-height: auto;
  }

  .category-manufacturers .brand-item .card a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 12px 8px;
  }

  .category-manufacturers .brand-logo {
    width: 128px;
    height: 128px;
    margin-right: 0;
    margin-bottom: 0;
    flex-shrink: 0;
  }

  .category-manufacturers .brand-logo img {
    max-height: 128px;
    max-width: 128px;
    width: auto;
    height: auto;
    object-fit: contain;
    padding: 8px;
  }

  .category-manufacturers .brand-name {
    width: 100%;
    flex-shrink: 0;
  }

  .category-manufacturers .brand-name span {
    font-size: 12px;
    line-height: 16px;
    display: block;
    word-wrap: break-word;
    overflow-wrap: break-word;
    color: #000000;

    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
  }

  .category-manufacturers .brand-products-ico {
    top: 12px;
    right: 12px;
  }

  /* Fade indicator for showing more items */
  .category-manufacturers::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 180px;
    background: linear-gradient(to left,
        rgba(255, 255, 255, 1) 0%,
        rgba(255, 255, 255, 0.8) 50%,
        transparent 100%);
    pointer-events: none;
    z-index: 1;
  }

  /* Hide toggle button on mobile when brands are swipeable */
  .category-manufacturers .section-button-wrapper {
    display: none;
  }

  /* Show all brand items on mobile (no hiding) */
  .category-manufacturers .brand-item-hidden {
    display: block;
  }
}

/* Footer Styles - Converted from SCSS */
#footer {
  background-color: rgba(0, 0, 0, 1);
  padding-top: 96px;
  margin-top: 0;
}

#footer .contact-sec {
  background: rgba(0, 0, 0, 1);
  color: #fff;
  /* padding-bottom: 80px; */
}

#footer .contact-sec .c-brand {
  margin-bottom: 96px;
  margin-top: 12px;
}

/* Social — stała szerokość 147px, gap 8px */
#footer .contact-sec .c-social {
  /* gutter 8px */
  --bs-gutter-x: 8px;
  --bs-gutter-y: 8px;
  /* docelowa szerokość kafla */
  --c-social-item-w: 147px;
}

/* Style dla kolumn social media - tylko na mobile (przeniesione do media query) */
/* Sam kafel zawsze 147px - tylko na mobile (przeniesione do media query) */

#footer .contact-sec .c-social .c-scard {
  position: relative;
  display: block;
  padding: 16px;
  border-radius: 4px;
  background: transparent;
  border: 1px solid rgba(45, 45, 45, 1);
  transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

#footer .contact-sec .c-social .c-scard .c-scard__icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(0, 0, 0, 0.06);
  margin: 0 auto;
  margin-bottom: 16px;
}

#footer .contact-sec .c-social .c-scard .c-scard__icon img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

#footer .contact-sec .c-social .c-scard .c-scard__icon--yt svg {
  display: block;
}

#footer .contact-sec .c-social .c-scard .c-scard__icon--ig svg {
  display: block;
}

#footer .contact-sec .c-social .c-scard .c-scard__value {
  display: block;
  color: #fff;
  font-weight: 600;
  line-height: 20px;
  font-size: 14px;
  margin-bottom: 2px;
}

#footer .contact-sec .c-social .c-scard .c-scard__label {
  display: block;
  color: rgba(114, 114, 114, 1);
  font-size: 14px;
  line-height: 20px;
}

#footer .contact-sec .c-social .c-scard .c-scard__ext {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  display: grid;
  place-items: center;
  color: rgba(255, 255, 255, 0.9);
  pointer-events: none;
  background-color: rgba(67, 67, 67, 1);
}

#footer .contact-sec .c-social .c-scard .c-scard__ext svg {
  color: rgba(178, 178, 178, 1);
}

#footer .contact-sec .c-social .c-scard:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.18);
}

#footer .contact-sec .c-info__hours {
  margin-bottom: 82px;
}

#footer .contact-sec .c-info__hours p {
  color: rgba(255, 255, 255, 1);
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 0;
  letter-spacing: 0;
}

#footer .contact-sec .c-info__contact {
  display: grid;
  gap: 2px;
}

#footer .contact-sec .c-info__link {
  color: #fff;
  text-decoration: none;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
}

#footer .contact-sec .c-info__link:hover {
  text-decoration: underline;
}

#footer .contact-sec .c-info__addr {
  margin-bottom: 24px;
}

#footer .contact-sec .c-info__addr-line1 {
  font-weight: 400;
  color: rgba(255, 255, 255, 1);
  font-size: 16px;
  line-height: 24px;
}

#footer .contact-sec .c-info__addr-line2 {
  font-weight: 400;
  color: rgba(178, 178, 178, 1);
  font-size: 12px;
  line-height: 16px;
}

#footer .footer-link {
  margin-bottom: 80px;
}

#footer .footer-link .footer-links h3 {
  font-weight: 400;
  line-height: 20px;
  font-size: 14px;
  margin-bottom: 12px;
  color: rgba(114, 114, 114, 1);
}

#footer .footer-link .footer-links .menu-ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#footer .footer-link .footer-links .menu-ul li+li {
  margin-top: 0.35rem;
}

#footer .footer-link .footer-links .menu-ul li {
  margin-bottom: 12px;
}

#footer .footer-link .footer-links .menu-ul a {
  display: inline-block;
  text-decoration: none;
  color: rgba(255, 255, 255, 1);
  font-size: 14px;
  line-height: 20px;
}

#footer .footer-link .footer-links .menu-ul a:hover {
  color: #fff;
  text-decoration: underline;
}

#footer .footer-bottom {
  padding-bottom: 48px;
}

#footer .footer-bottom .fb-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

#footer .footer-bottom .fb-links h3 {
  display: none;
}

/* Ukryj przyciski accordion w footer-bottom - zawsze (mobile i desktop) */
#footer .footer-bottom .fb-links .footer-menu-toggle,
#footer .footer-bottom .footer-menu-toggle,
#footer .footer-bottom .fb-links .footer-menu-item .footer-menu-toggle {
  display: none !important;
  visibility: hidden !important;
}

/* Ukryj strzałki accordion w footer-bottom */
#footer .footer-bottom .fb-links .footer-menu-arrow,
#footer .footer-bottom .footer-menu-arrow {
  display: none !important;
}

/* Ukryj h3 w footer-bottom (tylko pokazuj menu) */
#footer .footer-bottom .fb-links h3.footer-menu-title {
  display: none !important;
}

/* Zawsze pokazuj menu w footer-bottom (nie używaj collapse) - mobile i desktop */
#footer .footer-bottom .fb-links .collapse,
#footer .footer-bottom .footer-menu-item .collapse,
#footer .footer-bottom .collapse {
  display: block !important;
  height: auto !important;
  visibility: visible !important;
}

#footer .footer-bottom .fb-links .collapse:not(.in),
#footer .footer-bottom .fb-links .collapse.in,
#footer .footer-bottom .footer-menu-item .collapse:not(.in),
#footer .footer-bottom .footer-menu-item .collapse.in {
  display: block !important;
  height: auto !important;
}

/* Usuń border i padding z footer-menu-item w footer-bottom */
#footer .footer-bottom .footer-menu-item {
  margin-bottom: 0;
  border-bottom: none;
  padding: 0;
}

#footer .footer-bottom .fb-links .menu-ul {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

#footer .footer-bottom .fb-links .menu-ul li {
  margin: 0;
  padding: 0;
}

#footer .footer-bottom .fb-links .menu-ul a {
  display: inline-block;
  font-size: 14px;
  line-height: 20px;
  color: rgba(114, 114, 114, 1);
  text-decoration: none;
}

#footer .footer-bottom .fb-links .menu-ul a:hover {
  color: #fff;
  text-decoration: underline;
}

#footer .footer-bottom .fb-credit {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.64);
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 10px;
}

#footer .footer-bottom .fb-credit-sep {
  color: rgba(114, 114, 114, 1);
  user-select: none;
}

#footer .footer-bottom .fb-credit a {
  font-size: 10px;
  line-height: 1.3;
  color: rgba(114, 114, 114, 1);
  text-decoration: none;
}

#footer .footer-bottom .fb-credit a:hover {
  color: #fff;
  text-decoration: underline;
}

button.tcm-preferences-btn.btn1 {
  font-size: 12px !important;
  padding: 5px 15px !important;
}



@media (min-width: 768px) {

  /* Na desktopie przywróć normalną strukturę */
  #footer .footer-wrapper {
    display: block;
  }

  /* Na desktopie dodaj margin-top dla footer-link */
  #footer .footer-link {
    margin-top: 80px;
  }

  /* Ukryj accordion wrapper na desktopie */
  #footer .footer-link .footer-accordion-wrapper {
    display: none !important;
  }

  /* Pokaż desktop layout */
  #footer .footer-link .footer-menu-desktop {
    display: block;
  }

  /* Na desktopie ukryj funkcjonalność accordion - wszystkie przyciski */
  #footer .footer-link .footer-menu-title {
    display: block;
    padding: 0;
    margin-bottom: 12px;
  }

  #footer .footer-link .footer-menu-title-text {
    display: block;
  }

  /* Zawsze pokazuj menu na desktopie */
  #footer .footer-link .collapse,
  #footer .footer-link .footer-menu-desktop .collapse,
  #footer .footer-link .footer-accordion-wrapper .collapse {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
  }

  #footer .footer-link .collapse.in,
  #footer .footer-link .collapse:not(.in),
  #footer .footer-link .footer-menu-desktop .collapse.in,
  #footer .footer-link .footer-menu-desktop .collapse:not(.in) {
    display: block !important;
    height: auto !important;
  }

  /* Przywróć oryginalne style menu na desktopie */
  #footer .footer-link .footer-menu-item {
    margin-bottom: 0;
    border-bottom: none;
  }

  #footer .footer-link .footer-menu-desktop .footer-menu-item {
    margin-bottom: 0;
    border-bottom: none;
  }

  /* Przywróć normalne style dla h3 na desktopie */
  #footer .footer-link .footer-menu-desktop .footer-menu-title {
    font-weight: 400;
    line-height: 20px;
    font-size: 14px;
    margin-bottom: 12px;
    color: rgba(114, 114, 114, 1);
    display: block;
  }

  /* Ukryj social media mobile na desktopie */
  #footer .footer-social-mobile {
    display: none;
  }

  /* Przywróć social media w logo-col na desktopie */
  #footer .contact-sec .footer-logo-col .footer-social-col {
    display: block;
  }

  /* Na desktopie wymuś display: flex dla kontenera social media */
  #footer .contact-sec .footer-logo-col .c-social.row,
  #footer .contact-sec .c-social.row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
  }

  /* Na desktopie pozwól kolumnom social media być obok siebie - szerokość 147px (123px content + 12px padding z każdej strony) */
  #footer .contact-sec .footer-logo-col .c-social>.col-12,
  #footer .contact-sec .footer-logo-col .c-social>.col-md-6,
  #footer .contact-sec .footer-logo-col .c-social>.col-lg-6,
  #footer .contact-sec .footer-logo-col .c-social>.col-xl-6,
  #footer .contact-sec .footer-logo-col .c-social>[class^="col-"],
  #footer .contact-sec .footer-logo-col .c-social>[class*=" col-"],
  #footer .contact-sec .c-social>.col-12,
  #footer .contact-sec .c-social>.col-md-6,
  #footer .contact-sec .c-social>.col-lg-6,
  #footer .contact-sec .c-social>.col-xl-6,
  #footer .contact-sec .c-social>[class^="col-"],
  #footer .contact-sec .c-social>[class*=" col-"] {
    flex: 0 0 auto !important;
    max-width: 147px !important;
    width: auto !important;
  }

  /* Na desktopie karty social media powinny mieć pełną szerokość kolumny */
  #footer .contact-sec .footer-logo-col .c-social .c-scard,
  #footer .contact-sec .c-social .c-scard {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Ukryj przyciski i strzałki accordion dopiero od lg (992px). Przy 768–991 accordion
 * .f-links-responsive nadal pokazuje nagłówki wewnątrz .footer-menu-toggle. */
@media (min-width: 992px) {
  #footer .footer-link .footer-menu-toggle,
  #footer .footer-link .footer-menu-desktop .footer-menu-toggle,
  #footer .footer-link .footer-accordion-wrapper .footer-menu-toggle {
    display: none !important;
    visibility: hidden !important;
  }

  #footer .footer-link .footer-menu-arrow {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  #footer .footer-link .footer-links .col-xl-5 {
    padding-right: 1rem;
  }

  #footer .footer-link .footer-links .col-xl-7 {
    padding-left: 1rem;
  }
}

@media (max-width: 575.98px) {
  #footer .footer-bottom .fb-row {
    justify-content: flex-start;
    gap: 8px 20px;
  }
}

/* ===== Styles for footermenu module ===== */
/* Main footer menu links */
#footer .footer-link .footer-menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

#footer .footer-link .footer-menu-list li {
  margin-bottom: 12px;
}

#footer .footer-link .footer-menu-link {
  display: inline-block;
  text-decoration: none;
  color: rgba(255, 255, 255, 1);
  font-size: 14px;
  line-height: 20px;
}

#footer .footer-link .footer-menu-link:hover {
  color: #fff;
  text-decoration: underline;
}

/* Footer menu title (h3) - shown on desktop */
#footer .footer-link .footer-menu-title {
  font-weight: 400;
  line-height: 20px;
  font-size: 14px;
  margin-bottom: 12px;
  color: rgba(114, 114, 114, 1);
  display: block;
}

#footer .footer-link .footer-menu-title span {
  color: rgba(114, 114, 114, 1);
}

/* Style the button inside h3 to look like plain text on desktop */

#footer .footer-link .footer-menu-desktop .footer-menu-title .footer-menu-toggle {
  all: unset !important;
  display: block !important;
  color: rgba(114, 114, 114, 1) !important;
  cursor: default !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  font-size: 14px !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#footer .footer-link .footer-menu-desktop .footer-menu-title .footer-menu-toggle span {
  color: rgba(114, 114, 114, 1) !important;
}

@media (min-width: 768px) {

  /* Hide accordion arrow on desktop */
  #footer .footer-link .footer-menu-desktop .footer-menu-arrow {
    display: none !important;
  }

  /* Always show menu list on desktop */
  #footer .footer-link .footer-menu-list {
    display: block !important;
    height: auto !important;
  }

  #footer .footer-link .footer-menu-desktop .footer-menu-title {
    display: block !important;
  }
}

/* Footer bottom bar - horizontal layout */
#footer .footer-bottom .footer-menu-item {
  margin-bottom: 0;
  border-bottom: none;
  padding: 0;
}

#footer .footer-bottom .footer-menu-list,
#footer .footer-bottom .fb-links .footer-menu-list {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

#footer .footer-bottom .footer-menu-list li,
#footer .footer-bottom .fb-links .footer-menu-list li {
  margin: 0 !important;
  padding: 0;
  width: auto !important;
}

#footer .footer-bottom .footer-menu-link {
  display: inline-block;
  font-size: 14px;
  line-height: 20px;
  color: rgba(114, 114, 114, 1);
  text-decoration: none;
}

#footer .footer-bottom .footer-menu-link:hover {
  color: #fff;
  text-decoration: underline;
}

/* Hide title in footer bottom */
#footer .footer-bottom .footer-menu-title {
  display: none !important;
}

/* Always show menu list in footer bottom */
#footer .footer-bottom .footer-menu-list.collapse,
#footer .footer-bottom .fb-links .footer-menu-list.collapse {
  display: flex !important;
  height: auto !important;
}

/* ===== Mobile CTA (≤768px), wygląd jak na screenie ===== */
#header #mobile-cta-fixed {
  background: #e5e5e5;
  box-shadow: none;
  border-radius: 0;
  margin: 0;
  padding: 12px 0;
  color: #595959;
  font-size: 10px;
  font-weight: 400;
  line-height: 12px;
  letter-spacing: 0.3px;
}

#header #mobile-cta-fixed .container-fluid {
  padding: 0 20px;
}

#header #mobile-cta-fixed .row {
  padding: 0;
}

#header #mobile-cta-fixed .single1 {
  gap: 6px;
}

#header #mobile-cta-fixed .vr {
  width: 1px;
  height: 22px;
  background: #cfcfcf;
  opacity: 1;
  margin-left: 0;
  margin-right: 0;
  flex-shrink: 0;
}

#header #mobile-cta-fixed .text-muted {
  color: #595959 !important;
  font-size: 10px;
  font-weight: 400;
  line-height: 12px;
  letter-spacing: 0.3px;
}

/* Ukryj tylko słowo "Salon" na mobilce, pozostawiając nazwę sklepu */
@media (max-width: 991.98px) {
  #header #mobile-cta-fixed .text-muted {
    font-size: 9px;
  }

  #header #mobile-cta-fixed .single1 .text-muted {
    display: inline-block;
    position: relative;
  }

  .mobile-header-nav .container-fluid {
    padding-left: 15px;
    padding-right: 15px;
  }

  .carousel {
    background-color: transparent;
    padding-bottom: 0;
  }
}

#header #mobile-cta-fixed strong.text-muted {
  color: #595959 !important;
  font-weight: 400;
}

#header #mobile-cta-fixed .route-link,
#header #mobile-cta-fixed .phone-link {
  color: #000 !important;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
}

#header #mobile-cta-fixed .route-link:hover,
#header #mobile-cta-fixed .route-link:focus,
#header #mobile-cta-fixed .phone-link:hover,
#header #mobile-cta-fixed .phone-link:focus {
  text-decoration: underline;
  outline: none;
}

/* Widoczny tylko na mobile (fallback do klas d-block d-lg-none) */
@media (min-width: 992px) {
  #header #mobile-cta-fixed {
    display: none !important;
  }
}

/* Mobilny pasek nawigacji */
.mobile-header-nav {
  background: #fff;
  padding: 8px 0;
  border-bottom: 1px solid #e5e5e5;
  position: sticky;
  top: 0;
  z-index: 1000;
}

.mobile-header-nav .container-fluid {
  padding-left: 20px;
  padding-right: 12px;
}

.mobile-header-nav .mobile-logo {
  flex-shrink: 1;
  min-width: 0;
  max-width: 120px;
  display: flex;
  align-items: center;
}

.mobile-header-nav .mobile-logo img {
  height: 28px;
  width: auto;
  max-height: 28px;
  max-width: 100%;
  display: block;
}

.mobile-header-nav .mobile-logo a,
.mobile-header-nav .mobile-logo h1 {
  display: flex;
  align-items: center;
  height: 100%;
}

.mobile-header-nav .mobile-header-actions {
  flex-shrink: 0;
  gap: 12px;
  display: flex;
  align-items: center;
}


.mobile-header-nav .mobile-nav-toggle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 24px;
  height: 24px;
  min-width: 24px;
  color: #595959;
  border: none;
  background: #E4FD71;
  padding: 0;
  border-radius: 4px;
  position: static;
  right: auto;
  top: auto;
  transform: none;
  border-radius: 4px;
  ;
  background: linear-gradient(270deg, rgba(228, 253, 113, 0.00) 0%, rgba(228, 253, 113, 0.30) 100%), #FAFAFA;
}

.mobile-header-nav .mobile-nav-toggle:hover,
.mobile-header-nav .mobile-nav-toggle:focus {
  border-radius: 4px;
  border: 1px solid var(--color-neutral-12-base, #FAFAFA);
  background: linear-gradient(270deg, rgba(228, 253, 113, 0.00) 0%, rgba(228, 253, 113, 0.30) 100%), var(--color-neutral-12-base, #FAFAFA);
  outline: none;
}

.mobile-header-nav .mobile-nav-toggle svg {
  width: 22px;
  height: 2px;
  display: block;
  flex-shrink: 0;
  stroke: currentColor;
}

/* Przycisk wyszukiwarki w mobilnym pasku */
.mobile-header-nav .mobile-search-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  min-width: 24px;
  max-width: 24px;
  color: #000;
  border: none;
  background: transparent;
  padding: 0;
  text-decoration: none;
  border-radius: 4px;
  transition: background-color 0.2s ease;
  flex-shrink: 0;
}

.mobile-header-nav .mobile-search-btn:hover,
.mobile-header-nav .mobile-search-btn:focus {
  background-color: #f5f5f5;
  color: #000;
  outline: none;
}

.mobile-header-nav .mobile-search-btn svg {
  width: 17px;
  height: 17px;
  display: block;
}

/* Przyciski koszyka, wishlist i konta w mobilnym pasku */
.mobile-header-nav .mobile-wishlist-btn,
.mobile-header-nav .mobile-cart-btn,
.mobile-header-nav .mobile-account-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  min-width: 24px;
  max-width: 24px;
  color: #595959;
  text-decoration: none;
  border-radius: 4px;
  transition: background-color 0.2s ease;
  flex-shrink: 0;
}

.mobile-header-nav .mobile-wishlist-btn:hover,
.mobile-header-nav .mobile-cart-btn:hover,
.mobile-header-nav .mobile-account-btn:hover {
  background-color: #f5f5f5;
  color: #000;
}

.mobile-header-nav .mobile-wishlist-btn svg,
.mobile-header-nav .mobile-cart-btn svg,
.mobile-header-nav .mobile-account-btn svg {
  width: 24px;
  height: 24px;
  display: block;
}

/* Kompaktowy layout dla bardzo małych ekranów */
@media (max-width: 360px) {
  .mobile-header-nav {
    padding: 6px 0;
  }

  .mobile-header-nav .container-fluid {
    padding-left: 20px;
    padding-right: 12px;
  }

  .mobile-header-nav .mobile-logo {
    max-width: 100px;
  }

  .mobile-header-nav .mobile-logo img {
    height: 24px;
    max-height: 24px;
  }

  .mobile-header-nav .mobile-header-actions {
    gap: 12px;
  }

  .mobile-header-nav .mobile-search-btn,
  .mobile-header-nav .mobile-account-btn,
  .mobile-header-nav .mobile-wishlist-btn,
  .mobile-header-nav .mobile-cart-btn,
  .mobile-header-nav .mobile-nav-toggle {
    width: 24px;
    height: 24px;
    min-width: 24px;
  }

  .mobile-header-nav .mobile-search-btn svg {
    width: 15px;
    height: 15px;
  }

  .mobile-header-nav .mobile-wishlist-btn svg,
  .mobile-header-nav .mobile-cart-btn svg {
    width: 20px;
    height: 20px;
  }

  .mobile-header-nav .mobile-nav-toggle {
    gap: 4px;
  }

  .mobile-header-nav .mobile-nav-toggle svg {
    width: 18px;
    height: 2px;
  }
}

/* Modal wyszukiwarki */
#mobile-search-modal {
  z-index: 1055;
}

/* Ukryj mobile-cta-fixed gdy modal jest otwarty lub otwierany */
body.modal-open #header #mobile-cta-fixed {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

#mobile-search-modal .modal-dialog {
  margin: 0;
  max-width: 100%;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  display: flex;
  align-items: stretch;
}

#mobile-search-modal .modal-content {
  border: none;
  border-radius: 0;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

#mobile-search-modal .modal-header {
  border-bottom: 1px solid #e5e5e5;
  padding: 16px 20px;
}

#mobile-search-modal .modal-title {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}

#mobile-search-modal .modal-body {
  padding: 20px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* Offcanvas menu */
#mobile-menu-offcanvas {
  z-index: 1050;
}

#mobile-menu-offcanvas .offcanvas-header {
  border-bottom: 1px solid #e5e5e5;
  padding: 16px 20px;
}

#mobile-menu-offcanvas .offcanvas-title {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}

#mobile-menu-offcanvas .offcanvas-body {
  padding: 20px;
}

/* Ukryj mobilny pasek na desktopie */
@media (min-width: 992px) {
  .mobile-header-nav {
    display: none !important;
  }
}

/* Ukryj istniejący mobilny pasek nawigacji PrestaShop - zostaw tylko nowy mobile-header-nav */
@media (max-width: 991.98px) {

  main navigation:not(.mobile-header-nav),
  main>*:first-child>navigation,
  main header-nav-wrapper+navigation {
    display: none !important;
  }

  /* Padding dla header-nav-wrapper na mobile */
  #header .header-nav-wrapper .container-fluid {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* Strona błędu 404 */
.page-error-404 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  text-align: center;
}

.error-404-image {
  margin-bottom: 40px;
  max-width: 100%;
}

.error-404-image img {
  max-width: 100%;
  height: auto;
  display: block;
}

.error-404-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.error-404-title {
  color: #000;
  margin: 0 0 8px 0;
  text-align: center;
  font-family: Sora;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: 54px;
  /* 135% */
}

.error-404-text {
  color: #595959;
  font-family: Sora;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0 0 40px 0;
}

.error-404-btn {
  display: flex;
  padding: 16px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  max-width: 281px;
  border-radius: 4px;
  border: 1px solid #000;
  background: #000;
  color: #FFF;
  font-family: Sora;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  text-decoration: none;
  transition: background-color 0.2s ease;
}

.error-404-btn:hover {
  background-color: #333;
  border-color: #333;
  color: #FFF;
  text-decoration: none;
}

.error-404-btn svg {
  width: 8px;
  height: 8px;
  flex-shrink: 0;
}

.error-404-btn:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
}

@media (max-width: 767.98px) {
  .page-error-404 {
    min-height: 50vh;
    padding: 32px 20px;
  }

  .error-404-image {
    margin-bottom: 32px;
  }

  .error-404-title {
    font-size: 28px;
    line-height: 38px;
    /* 135% */
    margin-bottom: 12px;
  }

  .error-404-text {
    font-size: 14px;
    line-height: 21px;
    /* 150% */
    margin-bottom: 24px;
  }

  .error-404-btn {
    padding: 12px 20px;
    font-size: 14px;
  }
}

/* Szerokość dla strony 404 */
#pagenotfound .page-not-found,
#products .page-not-found {
  width: 100%;
  max-width: 100%;
}

/* Strona logowania - split screen layout */
.page-authentication #content,
.page-registration #content {
  padding: 0 !important;
  background: transparent !important;
  max-width: 100% !important;
  margin: 0 !important;
  width: 100% !important;
}

.page-authentication #content .container-fluid,
.page-registration #content .container-fluid {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

body#authentication .page-content,
body#authentication #main,
body#authentication #wrapper,
body.page-authentication .page-content,
body.page-authentication #main,
body.page-authentication #wrapper,
body#registration .page-content,
body#registration #main,
body#registration #wrapper,
body.page-registration .page-content,
body.page-registration #main,
body.page-registration #wrapper {
  padding: 0;
  margin: 0;
  max-width: 100%;
  overflow-x: hidden !important;
}

body#authentication,
body.page-authentication,
body#registration,
body.page-registration,
body#password,
body.page-password {
  overflow-x: hidden !important;
}


/* Ukryj oryginalny header na stronie logowania */
body#authentication #header .header-banner,
body.page-authentication #header .header-banner,
body#authentication #header .header-nav-wrapper,
body.page-authentication #header .header-nav-wrapper,
body#authentication #header .header-top,
body.page-authentication #header .header-top,
body#authentication #header .header-menu,
body.page-authentication #header .header-menu {
  display: none !important;
}

/* Alternatywny header dla strony logowania */
body#authentication #header,
body.page-authentication #header,
body#registration #header,
body.page-registration #header {
  width: 100%;
  background-color: #fff;
  z-index: 1000;
  border-bottom: 1px solid #e5e5e5;
  display: block !important;
}

body#authentication .authentication-header-wrapper,
body.page-authentication .authentication-header-wrapper,
body#registration .authentication-header-wrapper,
body.page-registration .authentication-header-wrapper,
body#password .authentication-header-wrapper,
body.page-password .authentication-header-wrapper {
  padding-top: 20px;
  padding-bottom: 20px;
  max-width: 100%;
}

body#authentication .authentication-header-wrapper .container-fluid,
body.page-authentication .authentication-header-wrapper .container-fluid,
body#registration .authentication-header-wrapper .container-fluid,
body.page-registration .authentication-header-wrapper .container-fluid,
body#password .authentication-header-wrapper .container-fluid,
body.page-password .authentication-header-wrapper .container-fluid {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-left: 0;
  padding-right: 0;
  width: 100% !important;
}

.authentication-header-left {
  display: flex;
  align-items: center;
}

.authentication-header-left .site-logo {
  margin: 0;
}

.authentication-header-left .site-logo a,
.authentication-header-left .site-logo {
  display: inline-flex;
  align-items: center;
}

.authentication-header-left .site-logo img {
  height: 32px;
  width: auto;
  max-width: 100%;
  display: block;
}

.authentication-header-right {
  display: flex;
  align-items: center;
}

/* Stylowanie selektora języka na stronie logowania i rejestracji - analogicznie do custom.scss */
body#authentication .authentication-header-right .language-selector-wrapper,
body.page-authentication .authentication-header-right .language-selector-wrapper,
body#registration .authentication-header-right .language-selector-wrapper,
body.page-registration .authentication-header-right .language-selector-wrapper,
body#password .authentication-header-right .language-selector-wrapper,
body.page-password .authentication-header-right .language-selector-wrapper {
  margin: 0;
}

/* Ukryj ::after dla dropdown-toggle w selektorze języka */
body#authentication #_desktop_language_selector .dropdown-toggle::after,
body.page-authentication #_desktop_language_selector .dropdown-toggle::after,
body#registration #_desktop_language_selector .dropdown-toggle::after,
body.page-registration #_desktop_language_selector .dropdown-toggle::after,
body#password #_desktop_language_selector .dropdown-toggle::after,
body.page-password #_desktop_language_selector .dropdown-toggle::after {
  display: none !important;
}

body#authentication .authentication-header-right .lang-currency,
body.page-authentication .authentication-header-right .lang-currency,
body#registration .authentication-header-right .lang-currency,
body.page-registration .authentication-header-right .lang-currency {
  display: flex;
  align-items: center;
  gap: 10px;
}

body#authentication .authentication-header-right .btn-currency,
body.page-authentication .authentication-header-right .btn-currency,
body#registration .authentication-header-right .btn-currency,
body.page-registration .authentication-header-right .btn-currency,
body#password .authentication-header-right .btn-currency,
body.page-password .authentication-header-right .btn-currency,
body#authentication .authentication-header-right .btn-lang,
body.page-authentication .authentication-header-right .btn-lang,
body#registration .authentication-header-right .btn-lang,
body.page-registration .authentication-header-right .btn-lang,
body#password .authentication-header-right .btn-lang,
body.page-password .authentication-header-right .btn-lang {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px 4px 8px;
  border: 1px solid #2d2d2d;
  border-radius: 4px;
  background: transparent;
  color: #000;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  transition: all 0.3s ease;
  text-decoration: none;
}

body#authentication .authentication-header-right .btn-currency:hover,
body.page-authentication .authentication-header-right .btn-currency:hover,
body#registration .authentication-header-right .btn-currency:hover,
body.page-registration .authentication-header-right .btn-currency:hover,
body#password .authentication-header-right .btn-currency:hover,
body.page-password .authentication-header-right .btn-currency:hover,
body#authentication .authentication-header-right .btn-lang:hover,
body.page-authentication .authentication-header-right .btn-lang:hover,
body#registration .authentication-header-right .btn-lang:hover,
body.page-registration .authentication-header-right .btn-lang:hover,
body#password .authentication-header-right .btn-lang:hover,
body.page-password .authentication-header-right .btn-lang:hover {
  border-color: #2d2d2d;
  color: rgba(178, 178, 178, 1);
  border-radius: 4px;
  border: 1px solid #2d2d2d;
  background: #2d2d2d;
}

body#authentication .authentication-header-right .btn-currency:active,
body.page-authentication .authentication-header-right .btn-currency:active,
body#password .authentication-header-right .btn-currency:active,
body.page-password .authentication-header-right .btn-currency:active,
body#authentication .authentication-header-right .btn-lang:active,
body.page-authentication .authentication-header-right .btn-lang:active,
body#password .authentication-header-right .btn-lang:active,
body.page-password .authentication-header-right .btn-lang:active {
  border-radius: 4px;
  border: 1px solid #2d2d2d;
  background: #2d2d2d;
}

body#authentication .authentication-header-right .btn-currency i.material-icons,
body.page-authentication .authentication-header-right .btn-currency i.material-icons,
body#password .authentication-header-right .btn-currency i.material-icons,
body.page-password .authentication-header-right .btn-currency i.material-icons,
body#authentication .authentication-header-right .btn-lang i.material-icons,
body.page-authentication .authentication-header-right .btn-lang i.material-icons,
body#password .authentication-header-right .btn-lang i.material-icons,
body.page-password .authentication-header-right .btn-lang i.material-icons {
  font-size: 16px;
  color: inherit;
}

/* SVG strzałki dla currency i language selector */
.btn-currency svg,
.btn-lang svg,
#header .header-nav-wrapper .topbar-menu .btn-currency svg,
#header .header-nav-wrapper .topbar-menu .btn-lang svg {
  width: 10px;
  height: 6px;
  display: inline-block;
  margin-left: 4px;
  flex-shrink: 0;
}

body#authentication .authentication-header-right .dropdown-menu,
body.page-authentication .authentication-header-right .dropdown-menu,
body#password .authentication-header-right .dropdown-menu,
body.page-password .authentication-header-right .dropdown-menu {
  background: #000;
  border: 1px solid #333;
  border-radius: 10px;
  padding: 4px 0;
  min-width: unset;
}

body#authentication .authentication-header-right .dropdown-menu li,
body.page-authentication .authentication-header-right .dropdown-menu li,
body#password .authentication-header-right .dropdown-menu li,
body.page-password .authentication-header-right .dropdown-menu li {
  margin-right: 0;
  width: 100%;
}

body#authentication .authentication-header-right .dropdown-menu a.dropdown-item,
body.page-authentication .authentication-header-right .dropdown-menu a.dropdown-item,
body#password .authentication-header-right .dropdown-menu a.dropdown-item,
body.page-password .authentication-header-right .dropdown-menu a.dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  color: #ccc;
  font-size: 13px;
  transition: all 0.2s ease;
}

body#authentication .authentication-header-right .dropdown-menu a.dropdown-item:hover,
body.page-authentication .authentication-header-right .dropdown-menu a.dropdown-item:hover,
body#password .authentication-header-right .dropdown-menu a.dropdown-item:hover,
body.page-password .authentication-header-right .dropdown-menu a.dropdown-item:hover {
  background-color: rgba(228, 253, 113, 0.1);
  color: #e4fd71;
}

body#authentication .authentication-header-right .dropdown-menu a.dropdown-item.active,
body.page-authentication .authentication-header-right .dropdown-menu a.dropdown-item.active,
body#password .authentication-header-right .dropdown-menu a.dropdown-item.active,
body.page-password .authentication-header-right .dropdown-menu a.dropdown-item.active {
  background-color: rgba(228, 253, 113, 0.15);
  color: #e4fd71;
  font-weight: 500;
}

body#authentication .authentication-header-right .dropdown-menu .lang-flag,
body.page-authentication .authentication-header-right .dropdown-menu .lang-flag,
body#password .authentication-header-right .dropdown-menu .lang-flag,
body.page-password .authentication-header-right .dropdown-menu .lang-flag {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  object-fit: cover;
}

body#authentication .authentication-header-right .lang-flag,
body.page-authentication .authentication-header-right .lang-flag,
body#password .authentication-header-right .lang-flag,
body.page-password .authentication-header-right .lang-flag {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  object-fit: cover;
}

/* Ukryj dropdown-toggle::after na stronie logowania */
body#authentication .authentication-header-right .dropdown-toggle::after,
body.page-authentication .authentication-header-right .dropdown-toggle::after,
body#password .authentication-header-right .dropdown-toggle::after,
body.page-password .authentication-header-right .dropdown-toggle::after {
  display: none;
}

/* Ukryj walutę na stronie logowania */
body#authentication #_desktop_currency_selector,
body.page-authentication #_desktop_currency_selector,
body#authentication .authentication-header-wrapper #_desktop_currency_selector,
body.page-authentication .authentication-header-wrapper #_desktop_currency_selector,
body#password .authentication-header-wrapper #_desktop_currency_selector,
body.page-password .authentication-header-wrapper #_desktop_currency_selector,
body#authentication .authentication-header-right #_desktop_currency_selector,
body.page-authentication .authentication-header-right #_desktop_currency_selector,
body#authentication #header .authentication-header-wrapper #_desktop_currency_selector,
body.page-authentication #header .authentication-header-wrapper #_desktop_currency_selector,
body#password #header .authentication-header-wrapper #_desktop_currency_selector,
body.page-password #header .authentication-header-wrapper #_desktop_currency_selector,
body#authentication #header .authentication-header-right #_desktop_currency_selector,
body.page-authentication #header .authentication-header-right #_desktop_currency_selector {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  left: -9999px !important;
}

/* Wyświetl tylko selektor języka */
body#authentication .authentication-header-right #_desktop_language_selector,
body.page-authentication .authentication-header-right #_desktop_language_selector,
body#password .authentication-header-right #_desktop_language_selector,
body.page-password .authentication-header-right #_desktop_language_selector,
body#registration .authentication-header-right #_desktop_language_selector,
body.page-registration .authentication-header-right #_desktop_language_selector,
body#password .authentication-header-right #_desktop_language_selector,
body.page-password .authentication-header-right #_desktop_language_selector {
  display: block !important;
}

.authentication-page-wrapper {
  position: relative;
  width: 100%;
  display: block;
  min-height: 100vh;
  height: 100%;
  overflow: visible;
  /* Musi mieć pełną wysokość, aby prawa strona mogła się prawidłowo pozycjonować */
}

.authentication-left {
  width: 50%;
  max-width: 50%;
  background-color: transparent;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 0;
  position: relative;
  z-index: 2;
  min-height: 100vh;
  height: 100%;
  /* Lewa strona jest ograniczana przez container-fluid */
}

.authentication-content {
  width: 100%;
  margin: auto 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 476px;
  margin-top: 72px;
}

.back-to-home {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #000;
  text-decoration: none;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 0;
  transition: color 0.2s ease;
  padding-top: 20px;
}

.back-to-home:hover {
  color: #333;
  text-decoration: none;
}

.back-to-home svg {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.authentication-title {
  color: #000;

  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 54px;
  /* 135% */
  margin: 0 0 48px 0;
}

.login-form,
.register-form {
  margin-top: 0;
  margin-bottom: 32px;
}

.login-form .form-group.row,
.register-form .form-group.row {
  display: flex;
  flex-direction: column;
  margin-bottom: 10px;
  margin-left: 0;
  margin-right: 0;
}

.login-form .form-group .form-control-label,
.register-form .form-group .form-control-label {
  display: block;
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
  margin-bottom: 8px;
  padding: 0;
  text-align: left;
  order: 1;
}

.login-form .form-group .js-input-column,
.register-form .form-group .js-input-column {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
  padding: 0;
  order: 2;
}

.login-form .form-group .form-control-comment,
.register-form .form-group .form-control-comment {
  display: none;
}

.login-form label,
.register-form label {
  color: #000;



  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

.login-form input[type="email"],
.login-form input[type="password"],
.login-form .form-control,
.login-form input.form-control,
.register-form input[type="email"],
.register-form input[type="password"],
.register-form .form-control,
.register-form input.form-control {
  width: 100%;
  max-width: 476px;
  display: flex;
  padding: 12px 16px;
  align-items: center;
  gap: 8px;
  align-self: stretch;
  border-radius: 4px;
  color: #000;
  /* Text/Body II */
  font-family: Sora;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  background-color: #fff;
  box-sizing: border-box;
  border: 1px solid #E5E5E5;
}

.login-form input[type="email"]:focus,
.login-form input[type="password"]:focus,
.login-form .form-control:focus,
.login-form input.form-control:focus,
.login-form .input-group.js-parent-focus:focus-within .form-control,
.login-form .input-group.js-parent-focus:focus-within input.js-visible-password,
.login-form .input-group.js-parent-focus:focus-within .js-child-focus,
.register-form input[type="email"]:focus,
.register-form input[type="password"]:focus,
.register-form .form-control:focus,
.register-form input.form-control:focus,
.register-form .input-group.js-parent-focus:focus-within .form-control,
.register-form .input-group.js-parent-focus:focus-within input.js-visible-password,
.register-form .input-group.js-parent-focus:focus-within .js-child-focus {
  outline: none !important;
  display: flex !important;
  padding: 12px 16px !important;
  align-items: center !important;
  gap: 8px !important;
  align-self: stretch !important;
  border-radius: 4px !important;
  border: 1px solid #E5E5E5 !important;
  background: radial-gradient(381.13% 100% at 0% 100%, #E4FD71 0%, #FAFAFA 20.5%) !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

/* Globalne style focus dla wszystkich form-control */
.form-control:focus,
input.form-control:focus,
textarea.form-control:focus,
select.form-control:focus,
.input-group.js-parent-focus:focus-within .form-control,
.input-group.js-parent-focus:focus-within input.js-visible-password,
.input-group.js-parent-focus:focus-within .js-child-focus {
  outline: none !important;
  display: flex !important;
  padding: 12px 16px !important;
  align-items: center !important;
  gap: 8px !important;
  align-self: stretch !important;
  border-radius: 4px !important;
  border: 1px solid #E5E5E5 !important;
  background: radial-gradient(381.13% 100% at 0% 100%, #E4FD71 0%, #FAFAFA 20.5%) !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

.login-form .input-group,
.register-form .input-group {
  position: relative;
  max-width: 476px;
}

/* Usuń outline dla .input-group.focus */
.input-group.focus {
  outline: 0 !important;
}

/* Globalne style dla wszystkich checkboxów - mniejsza wersja (20px) */
input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
}

.custom-checkbox,
.form-check,
.form-group:has(input[type="checkbox"]) {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.custom-checkbox label,
.form-check label,
.form-group:has(input[type="checkbox"]) label,
label:has(input[type="checkbox"]) {
  position: relative;
  padding-left: 26px;
  cursor: pointer;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  /* Nie używać flex: inline <a> i tekst stają się osobnymi „kolumnami” (łamanie zgód GDPR). */
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.custom-checkbox label::before,
.form-check label::before,
.form-group input[type="checkbox"]+label::before,
.form-group label:has(input[type="checkbox"])::before,
label:has(input[type="checkbox"])::before {
  content: '';
  position: absolute;
  left: 0;
  top: 2px;
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-neutral-11, #F5F5F5);
  display: flex;
  width: 20px;
  height: 20px;
  padding: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
  aspect-ratio: 1/1;
  box-sizing: border-box;
  transition: all 0.2s ease;
}

/* Checked state */
input[type="checkbox"]:checked+label::before,
.custom-checkbox label:has(input[type="checkbox"]:checked)::before,
.form-check label:has(input[type="checkbox"]:checked)::before,
.form-group input[type="checkbox"]:checked+label::before,
.form-group label:has(input[type="checkbox"]:checked)::before,
label:has(input[type="checkbox"]:checked)::before {
  border-radius: 4px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9.4L0 5.4L1.4 4L4 6.6L10.6 0L12 1.4L4 9.4Z' fill='%23183030'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 10px;
}

/* Ukryj domyślne ikony checkboxów */


.custom-checkbox label .material-icons,
.form-check label .material-icons,
.form-group input[type="checkbox"]+label .material-icons,
.form-group label:has(input[type="checkbox"]) .material-icons,
label:has(input[type="checkbox"]) .material-icons {
  display: none !important;
}

.login-form .input-group-btn,
.login-form .input-group-append,
.register-form .input-group-btn,
.register-form .input-group-append {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.login-form .input-group-btn button,
.login-form .input-group-append button,
.register-form .input-group-btn button,
.register-form .input-group-append button {
  background: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
  color: #666;
}

.page-customer-account #content .forgot-password {
  color: #595959;
  text-align: right;
  margin-top: 0px;
  margin-bottom: 0;
  max-width: 476px;
  width: 100%;
  padding-bottom: 0;
  font-size: 14px;
}

.page-customer-account #content .forgot-password a {
  color: #595959;
  /* Text/Body II */
  font-family: Sora;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: 32%;
  /* 4.48px */
  text-underline-position: from-font;
}

.page-customer-account #content .forgot-password a:hover {
  color: #595959;
}

/* Style dla komunikatów błędów logowania */
body#authentication .login-form .alert-danger,
body.page-authentication .login-form .alert-danger,
.page-customer-account .login-form .alert-danger {
  border-radius: 4px;
  border: 1px solid #C41408;
  display: flex;
  width: 100%;
  max-width: 576px;
  padding: 10px 12px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  color: #C41408;
  font-family: Sora;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  margin-top: 14px;
  margin-bottom: 0;
  background-color: transparent;
}

body#authentication .login-form .alert-danger ul,
body.page-authentication .login-form .alert-danger ul,
.page-customer-account .login-form .alert-danger ul {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
}

body#authentication .login-form .alert-danger li,
body.page-authentication .login-form .alert-danger li,
.page-customer-account .login-form .alert-danger li {
  margin: 0;
  padding: 0;
  color: #C41408;
}

.form-footer {
  margin-top: 12px;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
}

.form-footer .login-submit-btn,
.form-footer button.login-submit-btn,
.form-footer #submit-login {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 240px !important;
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
}

.login-submit-btn {
  color: #000;
  /* Text/Body */
  font-family: Sora;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  text-transform: none;
  display: flex !important;
  width: 240px;
  padding: 16px 24px;
  justify-content: center;
  align-items: center;
  gap: 24px;
  border-radius: 4px;
  border: 1px solid #F2FEBD;
  background: #E4FD71;
  box-shadow: 0 0 44px 0 rgba(228, 253, 113, 0.30);
  cursor: pointer;
  transition: background-color 0.2s ease;
  visibility: visible !important;
  opacity: 1 !important;
}

.login-submit-btn:hover {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
  color: #000;
}

.login-submit-btn:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(228, 253, 113, 0.3);
}

.page-customer-account #content .no-account {
  margin-top: 40px;
  text-align: center;
  border-top: 1px solid #E5E5E5;
  padding-top: 32px;
  margin-bottom: 64px;
}

/* Na stronie rejestracji usuń górny margines, padding i border w bloku no-account */
body#registration #content .no-account,
body.page-registration #content .no-account {
  margin-top: 0;
  margin-bottom: 32px;
  padding-top: 0;
  border-top: none;
}

/* No-account blok na rejestracji wyrównany do lewej */
body#registration #content .no-account-registration,
body.page-registration #content .no-account-registration {
  text-align: left;
}

.page-customer-account #content .no-account p {
  color: #000;
  /* Text/Body */
  font-family: Sora;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 8px;
}

.page-customer-account #content .no-account a {
  color: #595959;
  text-align: center;
  font-family: Sora;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: 32%;
  /* 5.12px */
  text-underline-position: from-font;
}

.create-account-link {
  color: #000;
  text-decoration: underline;
  font-family: Sora;
  font-size: 16px;
  font-weight: 400;
}

.create-account-link:hover {
  color: #333;
  text-decoration: underline;
}

/* Prawa strona - obraz promocyjny - wykracza poza container-fluid */
/* Używa absolute positioning z viewport positioning, aby zajmować całą prawą połowę ekranu */
/* Positionuje względem viewport, nie względem container-fluid */
.authentication-right {
  position: absolute;
  top: 0;
  right: 0;
  left: 50%;
  width: 50vw;
  height: 100%;
  min-height: 100vh;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  /* margin-left: 50%; */
}

/* Na rozdzielczości 1000px-1200px - obrazek obok, ale bez ucinania */
@media (min-width: 1000px) and (max-width: 1200px) {
  .authentication-page-wrapper {
    flex-direction: row;
    display: flex;
    min-height: auto;
  }

  .authentication-left {
    width: 50%;
    max-width: 50%;
    min-height: auto;
    margin-top: 0px;
    order: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .authentication-content {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: 24px;
  }

  .authentication-title {
    margin-bottom: 24px;
  }

  .authentication-right {
    position: absolute;
    top: 0;
    right: 0;
    left: 50%;
    width: 50vw;
    height: auto;
    min-height: auto;
    order: 2;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

/* Na rozdzielczości poniżej 1000px - obrazek na dole, cała szerokość */
@media (max-width: 999.98px) {
  .authentication-page-wrapper {
    flex-direction: column;
    display: flex;
    min-height: auto;
  }

  .authentication-left {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    margin-top: 0;
    order: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .authentication-content {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-top: 12px;
  }

  .authentication-right {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    bottom: auto;
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: auto;
    margin-left: auto;
    margin-right: auto;
    order: 2;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}


.authentication-image-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.authentication-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  object-position: left center;
}

/* Na 1000px-1200px - obrazek obok bez ucinania (zachowanie proporcji) */
@media (min-width: 1000px) and (max-width: 1200px) {
  .authentication-image-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .authentication-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
  }
}

/* Na poniżej 1000px - obrazek w oryginalnym rozmiarze, wyśrodkowany, skalowany tylko gdy potrzeba */
@media (max-width: 999.98px) {
  .authentication-image-wrapper {
    width: auto;
    max-width: 100%;
    height: auto;
    min-height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .authentication-image {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
    object-position: center center;
  }
}

.authentication-overlay {
  position: absolute;
  bottom: 40px;
  left: 40px;
  z-index: 10;
  display: none;
}

.overlay-number {
  font-family: Sora;
  font-size: 120px;
  font-weight: 600;
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 2px #E4FD71;
  text-stroke: 2px #E4FD71;
  margin-bottom: 16px;
  display: block;
}

.overlay-sup {
  font-size: 48px;
  vertical-align: super;
}

.overlay-text {
  font-family: Sora;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  color: #fff;
  margin: 0;
  max-width: 300px;
}

/* Responsywność */
@media (max-width: 991.98px) {

  body#authentication .authentication-header-wrapper,
  body.page-authentication .authentication-header-wrapper,
  body#registration .authentication-header-wrapper,
  body.page-registration .authentication-header-wrapper,
  body#password .authentication-header-wrapper,
  body.page-password .authentication-header-wrapper {
    padding-top: 16px;
    padding-bottom: 16px;
  }

  body#authentication .authentication-header-wrapper .container-fluid,
  body.page-authentication .authentication-header-wrapper .container-fluid,
  body#registration .authentication-header-wrapper .container-fluid,
  body.page-registration .authentication-header-wrapper .container-fluid,
  body#password .authentication-header-wrapper .container-fluid,
  body.page-password .authentication-header-wrapper .container-fluid {
    padding-left: 20px;
    padding-right: 20px;
  }

  body#authentication .authentication-header-left .site-logo img,
  body.page-authentication .authentication-header-left .site-logo img,
  body#registration .authentication-header-left .site-logo img,
  body.page-registration .authentication-header-left .site-logo img {
    height: 28px;
  }

  body#authentication .authentication-header-right .btn-lang,
  body.page-authentication .authentication-header-right .btn-lang {
    padding: 6px 10px;
    font-size: 13px;
  }

  body#authentication .authentication-header-right .lang-flag,
  body.page-authentication .authentication-header-right .lang-flag {
    width: 18px;
    height: 18px;
  }

  body#authentication .authentication-header-right .lang-label,
  body.page-authentication .authentication-header-right .lang-label {
    font-size: 13px;
  }

  body#authentication .authentication-header-right .material-icons,
  body.page-authentication .authentication-header-right .material-icons {
    font-size: 16px;
    width: 16px;
    height: 16px;
  }

  .authentication-page-wrapper {
    flex-direction: column;
    display: flex;
  }

  .authentication-left {
    flex: 1;
    max-width: 100%;
    min-height: auto;
    margin-top: 0;
    padding: 0;
    width: 100%;
    order: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .back-to-home {
    padding-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .authentication-right {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    width: 100%;
    height: auto;
    min-height: auto;
    max-height: none;
    margin-left: 0;
    margin-right: 0;
    order: 2;
  }

  .authentication-title {
    font-size: 36px;
    margin-bottom: 32px;
  }

  .authentication-overlay {
    bottom: 20px;
    left: 20px;
  }

  .overlay-number {
    font-size: 80px;
  }

  .overlay-sup {
    font-size: 32px;
  }

  .overlay-text {
    font-size: 16px;
    max-width: 250px;
  }

  .login-form input[type="email"],
  .login-form input[type="password"],
  .login-form .form-control,
  .login-form input.form-control,
  .register-form input[type="email"],
  .register-form input[type="password"],
  .register-form .form-control,
  .register-form input.form-control {
    width: 100%;
    max-width: 100%;
  }

  .login-form .input-group,
  .register-form .input-group {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 575.98px) {

  body#authentication .authentication-header-wrapper,
  body.page-authentication .authentication-header-wrapper,
  body#registration .authentication-header-wrapper,
  body.page-registration .authentication-header-wrapper,
  body#password .authentication-header-wrapper,
  body.page-password .authentication-header-wrapper {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  body#authentication .authentication-header-wrapper .container-fluid,
  body.page-authentication .authentication-header-wrapper .container-fluid,
  body#registration .authentication-header-wrapper .container-fluid,
  body.page-registration .authentication-header-wrapper .container-fluid,
  body#password .authentication-header-wrapper .container-fluid,
  body.page-password .authentication-header-wrapper .container-fluid {
    padding-left: 16px;
    padding-right: 16px;
  }

  body#authentication .authentication-header-left .site-logo img,
  body.page-authentication .authentication-header-left .site-logo img,
  body#registration .authentication-header-left .site-logo img,
  body.page-registration .authentication-header-left .site-logo img {
    height: 24px;
  }

  body#authentication .authentication-header-right .btn-lang,
  body.page-authentication .authentication-header-right .btn-lang,
  body#registration .authentication-header-right .btn-lang,
  body.page-registration .authentication-header-right .btn-lang {
    padding: 5px 8px;
    font-size: 12px;
  }

  body#authentication .authentication-header-right .lang-flag,
  body.page-authentication .authentication-header-right .lang-flag,
  body#registration .authentication-header-right .lang-flag,
  body.page-registration .authentication-header-right .lang-flag {
    width: 16px;
    height: 16px;
  }

  body#authentication .authentication-header-right .lang-label,
  body.page-authentication .authentication-header-right .lang-label {
    font-size: 12px;
  }

  body#authentication .authentication-header-right .material-icons,
  body.page-authentication .authentication-header-right .material-icons {
    font-size: 14px;
    width: 14px;
    height: 14px;
  }

  .authentication-page-wrapper {
    padding-top: 12px;
    /* Wysokość headera na małym mobile */
  }

  .authentication-title {
    font-size: 28px;
    margin-bottom: 12px;
  }

  .overlay-number {
    font-size: 60px;
  }

  .overlay-sup {
    font-size: 24px;
  }

  .overlay-text {
    font-size: 14px;
    max-width: 200px;
  }
}

/* ============================================
 CART PAGE STYLES
 ============================================ */

/* Cart Progress Bar */
#cart .cart-progress-bar {
  margin-bottom: 50px;
  padding: 0;
}

#cart .cart-progress-steps {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-start;
}

#cart .cart-progress-step {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 315px;
  color: var(--text-color-base-secondary, #e5e5e5);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  position: relative;
  padding-bottom: 8px;
}

#cart .cart-progress-step.active {
  color: var(--text-color-base-primary, #000);
}

#cart .cart-progress-step.active .step-number {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

#cart .cart-progress-step.active .step-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

#cart .cart-progress-step::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 0;
  right: 0;
  height: 6px;
  border-radius: 13px;
  background: var(--border-primary, #E5E5E5);
}

#cart .cart-progress-step.active::after {
  bottom: -12px;
  height: 6px;
  border-radius: 13px;
  background: var(--color-brand-one-8-base, #E4FD71);
}

#cart .cart-progress-step .step-number {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  background-color: transparent;
}

#cart .cart-progress-step .step-label {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

/* Cart Page Layout */
#cart #wrapper {
  background: var(--color-neutral-12-base, #FAFAFA);
  padding-top: 0;
}

#cart .cart-page {
  padding-top: 48px;
  padding-bottom: 40px;
  background: var(--color-neutral-12-base, #FAFAFA);
}

#cart .cart-grid-body {
  flex: 1;

}

#cart .cart-grid-right .card {
  background: #fff;
  padding: 20px 16px;
}

#cart .cart-summary {
  background: #fff;
  border-radius: 8px;
}

#cart .cart-summary .cart-summary-title,
#cart .cart-summary h2.cart-summary-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 28px;
  /* 140% */
  margin: 0 0 24px 0;
  padding-bottom: 0;
}

#cart .cart-summary .cart-summary-title+*,
#cart .cart-summary h2.cart-summary-title+* {
  margin-bottom: 20px;
}

#cart .cart-summary .cart-summary-title span,
#cart .cart-summary h2.cart-summary-title span,
#cart .cart-summary .cart-summary-title .caption,
#cart .cart-summary h2.cart-summary-title .caption {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

#cart .cart-summary .cart-detailed-totals {
  margin-bottom: 24px;
}

#cart .cart-summary .cart-total-value {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

#cart .cart-summary .cart-total-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

#cart .cart-summary .cart-total-amount {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

#cart .cart-summary .cart-vat-info {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  margin-top: 4px;
  margin-bottom: 16px;
}

#cart .cart-summary .cart-shipping-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 16px;
}

#cart .cart-summary .shipping-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

#cart .cart-summary .shipping-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

#cart .cart-summary .cart-detailed-actions {
  margin-top: 24px;
}

#cart .cart-summary .btn-cart-checkout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 12px 24px;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--background-color-brand-1-normal, #E4FD71);
  background: var(--color-brand-one-8-base, #E4FD71);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration: none;
  transition: all 0.2s;
  cursor: pointer;
  box-sizing: border-box;
}

#cart .cart-summary .btn-cart-checkout:hover,
#cart .cart-summary .btn-cart-checkout:active,
#cart .cart-summary .btn-cart-checkout:focus {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
  color: var(--text-color-base-primary, #000);
  text-decoration: none;
}

#cart .cart-summary .btn-cart-checkout:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

#cart .cart-summary .btn-cart-checkout .material-icons {
  display: none;
}

#cart .cart-summary .btn-cart-checkout svg {
  width: 11px;
  height: 11px;
  flex-shrink: 0;
  display: block;
  margin: 0;
}

/* Discount Code Section */
#cart .cart-discount-code-card {
  background: #fff;
  border-radius: 8px;
  margin-top: 16px;
  padding: 16px;
}

#cart .cart-discount-code-card .block-promo {
  margin: 0;
  padding: 0;
}

#cart .cart-discount-code-card .cart-voucher {
  margin: 0;
  padding: 0;
}

#cart .cart-summary .cart-discount-code,
#cart .cart-discount-code-card .cart-discount-code {
  margin-bottom: 0;
}

#cart .cart-discount-code-card .discount-code-header {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  padding: 0;
  margin-bottom: 12px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  user-select: none;
}

#cart .cart-summary .discount-code-header,
#cart .cart-discount-code-card .discount-code-header {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  padding: 0;
  margin-bottom: 12px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  user-select: none;
}

#cart .cart-summary .discount-code-header:hover,
#cart .cart-discount-code-card .discount-code-header:hover {
  opacity: 0.8;
}

#cart .cart-summary .discount-icon,
#cart .cart-discount-code-card .discount-icon {
  width: 19px;
  height: 19px;
  flex-shrink: 0;
}

#cart .cart-summary .discount-code-title,
#cart .cart-discount-code-card .discount-code-title {
  flex: 1;
  margin-left: 8px;
}

#cart .cart-summary .discount-arrow,
#cart .cart-discount-code-card .discount-arrow {
  width: 11px;
  height: 11px;
  flex-shrink: 0;
  transition: transform 0.3s ease;
  margin-left: auto;
}

#cart .cart-summary .discount-code-header[aria-expanded="true"] .discount-arrow,
#cart .cart-discount-code-card .discount-code-header[aria-expanded="true"] .discount-arrow {
  transform: rotate(180deg);
}

#cart .cart-summary .discount-code-form,
#cart .cart-discount-code-card .discount-code-form {
  margin-top: 0;
}

#cart .cart-summary .discount-input-wrapper,
#cart .cart-discount-code-card .discount-input-wrapper {
  display: flex;
  gap: 8px;
  align-items: stretch;
}

#cart .cart-summary .discount-input,
#cart .cart-discount-code-card .discount-input {
  flex: 1;
  padding: 12px 16px;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  background: #fff;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  outline: none;
  box-sizing: border-box;
}

#cart .cart-summary .discount-input:focus,
#cart .cart-discount-code-card .discount-input:focus {
  border-color: var(--background-color-brand-1-normal, #E4FD71);
}

#cart .cart-summary .discount-input::placeholder,
#cart .cart-discount-code-card .discount-input::placeholder {
  color: var(--text-color-base-tetriary, #888);
}

#cart .cart-summary .btn-discount-apply,
#cart .cart-discount-code-card .btn-discount-apply {
  padding: 12px 24px;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid #000;
  background: #000;
  color: #fff;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
  box-sizing: border-box;
  flex-shrink: 0;
}

#cart .cart-summary .btn-discount-apply:hover,
#cart .cart-discount-code-card .btn-discount-apply:hover {
  background: #333;
  border-color: #333;
}

#cart .cart-summary .discount-code-form .alert,
#cart .cart-discount-code-card .discount-code-form .alert {
  margin-top: 8px;
  padding: 8px 12px;
  font-size: 12px;
}

#cart .cart-discount-code-card .promo-code {
  margin: 0;
  padding: 0;
}

/* Leasing Section */
#cart .cart-grid-right .cart-leasing-card {
  background: transparent;
  border-radius: 8px;
  margin-top: 16px;
  padding: 0;
}

#cart .cart-summary .cart-leasing-info,
#cart .cart-grid-right .cart-leasing-card .cart-leasing-info {
  padding: 0;
}

#cart .cart-summary .leasing-link,
#cart .cart-grid-right .cart-leasing-card .leasing-link {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  background: transparent;
  display: flex;
  padding: 12px 16px 12px 20px;
  align-items: center;
  gap: 16px;
  align-self: stretch;
  text-decoration: none;
  color: inherit;
  width: 100%;
  box-sizing: border-box;
}

#cart .cart-summary .leasing-icon,
#cart .cart-grid-right .cart-leasing-card .leasing-icon {
  width: 20px;
  height: 17px;
  flex-shrink: 0;
}

#cart .cart-summary .leasing-content,
#cart .cart-grid-right .cart-leasing-card .leasing-content {
  flex: 1;
}

#cart .cart-summary .leasing-title,
#cart .cart-grid-right .cart-leasing-card .leasing-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  margin-bottom: 4px;
}

#cart .cart-summary .leasing-subtitle,
#cart .cart-grid-right .cart-leasing-card .leasing-subtitle {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
}

#cart .cart-summary .leasing-arrow,
#cart .cart-grid-right .cart-leasing-card .leasing-arrow {
  width: 11px;
  height: 11px;
  flex-shrink: 0;
}

#cart .cart-container {
  background: #fff;
  border-radius: 8px;
  padding: 8px 16px;
  margin-bottom: 24px;
}

/* Cart Product Line */
#cart .cart-items {
  list-style: none;
  padding: 0;
  margin: 0;
}

#cart .cart-item {
  padding: 24px 0;
  border-bottom: none;
}

#cart .cart-item:last-child {
  border-bottom: none;
}

#cart .cart-product-line {
  display: grid;
  grid-template-columns: 160px 334px minmax(80px, auto) minmax(120px, auto) minmax(32px, auto);
  gap: 24px;
  align-items: start;
}

#cart .cart-product-image {
  width: 160px;
  height: 160px;
  flex-shrink: 0;
  border-radius: 4px;
  overflow: hidden;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

#cart .cart-product-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  background: transparent;
}

#cart .cart-product-info {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#cart .cart-product-name {
  font-family: Sora, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  color: #000;
}

#cart .cart-product-name a {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  text-decoration: none;
}

#cart .cart-product-name a:hover {
  text-decoration: underline;
}

#cart .btn-equipment {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-brand-two-8, #E3D9CF);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  border: none;
  cursor: pointer;
  transition: all 0.2s;
  width: fit-content;
}

#cart .btn-equipment:hover {
  opacity: 0.9;
}

#cart .btn-equipment svg {
  width: 8px;
  height: 8px;
  flex-shrink: 0;
}

#cart .cart-product-attributes {
  font-size: 14px;
  color: #595959;
}

#cart .cart-product-quantity {
  display: flex;
  align-items: center;
  position: relative;
  min-width: 80px;
  justify-content: flex-start;
}

#cart .cart-quantity-input,
#cart input.js-cart-line-product-quantity,
#cart input[name="product-quantity-spin"] {
  width: 80px;
  padding: 8px 32px 8px 12px;
  border: 1px solid #E5E5E5;
  border-radius: 4px;
  background: #fff;
  text-align: left;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: var(--text-color-base-primary, #000);
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: textfield;
  position: relative;
  cursor: default;
}

#cart input[name="product-quantity-spin"][readonly] {
  cursor: pointer;
  background-color: #fff;
}

/* Hide spinner arrows in Chrome, Safari, Edge */
#cart .cart-quantity-input::-webkit-inner-spin-button,
#cart .cart-quantity-input::-webkit-outer-spin-button,
#cart input.js-cart-line-product-quantity::-webkit-inner-spin-button,
#cart input.js-cart-line-product-quantity::-webkit-outer-spin-button,
#cart input[name="product-quantity-spin"]::-webkit-inner-spin-button,
#cart input[name="product-quantity-spin"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
  display: none;
}

/* Hide spinner arrows in Firefox */
#cart .cart-quantity-input[type="number"],
#cart input.js-cart-line-product-quantity[type="number"],
#cart input[name="product-quantity-spin"][type="number"] {
  -moz-appearance: textfield;
}

#cart .cart-quantity-input:focus,
#cart input.js-cart-line-product-quantity:focus,
#cart input[name="product-quantity-spin"]:focus {
  outline: none;
  border-color: #E5E5E5;
}

#cart .cart-product-quantity {
  position: relative;
}

#cart .cart-product-quantity .input-group.bootstrap-touchspin {
  position: relative;
}

#cart .quantity-input-wrapper {
  position: relative;
  display: inline-block;
}

#cart .quantity-dropdown-btn {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border: none;
  background: transparent;
  cursor: pointer !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  z-index: 999 !important;
  padding: 0;
  margin: 0;
  pointer-events: auto !important;
  opacity: 1 !important;
}

#cart .quantity-dropdown-btn:hover {
  opacity: 0.7;
}

#cart .quantity-dropdown-btn svg {
  width: 8px;
  height: 8px;
  display: block;
}

#cart .cart-product-quantity::after {
  display: none;
}

#cart .quantity-dropdown {
  position: absolute !important;
  top: calc(100% + 4px) !important;
  left: 0 !important;
  right: 0 !important;
  background: #fff !important;
  border: 1px solid #E5E5E5 !important;
  border-radius: 4px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
  z-index: 1000 !important;
  max-height: 200px !important;
  overflow-y: auto !important;
  padding: 4px 0 !important;
  min-width: 80px !important;
}

#cart .quantity-option {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 8px 12px !important;
  cursor: pointer !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  color: #000 !important;
  transition: background 0.2s !important;
  border: none !important;
  min-height: 36px;
}

#cart .quantity-option:hover {
  background: #E3D9CF !important;
}

#cart .quantity-option-text {
  flex: 1;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  color: #000 !important;
  text-align: left;
}

#cart .quantity-option-radio {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #E5E5E5;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.2s;
  position: relative;
  margin-left: 12px;
}

#cart .quantity-option-radio.selected {
  border-color: #4CAF50;
  background: #E8F5E9;
}

#cart .quantity-option-radio .radio-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #4CAF50;
  display: block;
}

/* Hide home categories block */
.home-categories,
.home-categories .block-categories.visible--desktop {
  display: none !important;
}

/* Hide TouchSpin buttons if they exist */
#cart .cart-product-quantity .input-group-btn,
#cart .cart-product-quantity .input-group-btn-vertical,
#cart .cart-product-quantity .input-group-append,
#cart .cart-product-quantity .bootstrap-touchspin-up,
#cart .cart-product-quantity .bootstrap-touchspin-down,
#cart .cart-product-quantity .touchspin-up,
#cart .cart-product-quantity .touchspin-down,
#cart .cart-product-quantity .js-increase-product-quantity,
#cart .cart-product-quantity .js-decrease-product-quantity,
#cart .cart-product-quantity .btn-touchspin,
#cart .cart-product-quantity .bootstrap-touchspin-prefix,
#cart .cart-product-quantity .bootstrap-touchspin-postfix {
  display: none !important;
}

#cart .cart-product-price {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  min-width: 120px;
}

#cart .product-price-discount {
  margin-bottom: 4px;
}

#cart .discount-badge {
  display: inline-block;
  padding: 2px 8px;
  background: #FF4444;
  color: #fff;
  border-radius: 4px;
  font-family: Sora, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
}

#cart .product-price-current {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

#cart .price-current {
  font-family: Sora, sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  color: #000;
}

#cart .price-regular {
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #999;
  text-decoration: line-through;
}

#cart .cart-product-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 32px;
  flex-shrink: 0;
}

#cart .remove-from-cart {
  color: #999;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 4px;
  transition: all 0.2s;
  flex-shrink: 0;
}

#cart .remove-from-cart:hover {
  background: #F5F5F5;
}

#cart .remove-from-cart:hover svg path {
  fill: #FF4444;
}

#cart .remove-from-cart svg {
  width: 16px;
  height: 18px;
  flex-shrink: 0;
  display: block;
}

#cart .remove-from-cart .material-icons {
  font-size: 20px;
  width: 20px;
  height: 20px;
}

/* Continue Shopping Link */
#cart .cart-continue-shopping {
  margin-top: 24px;
}

#cart .continue-shopping-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #000;
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-decoration: none;
  transition: all 0.2s;
}

#cart .continue-shopping-link:hover {
  color: #000;
  text-decoration: underline;
}

#cart .continue-shopping-link .material-icons {
  font-size: 16px;
  width: 16px;
  height: 16px;
}

/* Cart Summary Section */
#cart .cart-summary-section {
  background: #fff;
  border-radius: 8px;
  padding: 24px;
  position: sticky;
  top: 20px;
}




#cart .cart-detailed-totals {
  margin-bottom: 24px;
}

#cart .cart-total-value {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}

#cart .cart-total-label {
  font-family: Sora, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  color: #000;
}

#cart .cart-total-amount {
  font-family: Sora, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  color: #000;
}

#cart .cart-vat-info {
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #595959;
  margin-bottom: 16px;
}

#cart .cart-shipping-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #595959;
}

#cart .shipping-label {
  color: #595959;
}

#cart .shipping-value {
  color: #000;
  font-weight: 600;
}

/* Cart Actions */
#cart .cart-detailed-actions {
  margin-bottom: 24px;
}




#cart .btn-cart-checkout:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

#cart .btn-cart-checkout .material-icons {
  font-size: 20px;
  width: 20px;
  height: 20px;
}

/* Promo Code Link */
#cart .promo-code-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #000;
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-decoration: none;
  padding: 12px 0;
  border-top: 1px solid #E5E5E5;
  border-bottom: 1px solid #E5E5E5;
  margin: 24px 0;
  transition: all 0.2s;
}

#cart .promo-code-link:hover {
  color: #000;
  text-decoration: none;
}

#cart .promo-code-link .material-icons {
  font-size: 16px;
  width: 16px;
  height: 16px;
}

/* Leasing Link */
#cart .cart-summary-leasing {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #E5E5E5;
}

#cart .leasing-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #000;
  font-family: Sora, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-decoration: none;
  transition: all 0.2s;
}

#cart .leasing-link:hover {
  color: #000;
  text-decoration: none;
}

#cart .leasing-link-text {
  color: #595959;
  margin-left: 8px;
}

#cart .leasing-link .material-icons {
  font-size: 16px;
  width: 16px;
  height: 16px;
}

/* Responsive */
@media (max-width: 991.98px) {
  #cart .cart-grid {
    flex-direction: column;
  }

  #cart .cart-grid-right {
    flex: 1;
  }

  #cart .cart-summary-section {
    position: relative;
    top: 0;
  }

  #cart .cart-product-line {
    grid-template-columns: 100px 1fr;
    gap: 16px;
  }

  #cart .cart-product-quantity,
  #cart .cart-product-price,
  #cart .cart-product-actions {
    grid-column: 2;
  }

  #cart .cart-product-quantity {
    grid-row: 2;
  }

  #cart .cart-product-price {
    grid-row: 3;
    align-items: flex-start;
  }

  #cart .cart-product-actions {
    grid-row: 4;
  }
}

@media (max-width: 575.98px) {
  #cart .cart-progress-steps {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  #cart .cart-product-line {
    grid-template-columns: 80px 1fr;
  }

  #cart .cart-product-image {
    width: 80px;
    height: 80px;
    background: #fff;
    border: 1px solid #E5E5E5;
  }

  #cart .cart-product-image img {
    object-fit: contain;
    object-position: center center;
  }
}

/* Equipment Modal */
.equipment-modal .modal-dialog {
  max-width: 1200px;
}

.equipment-modal .modal-content {
  border-radius: 8px;
  border: none;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.equipment-modal .modal-header {
  border-bottom: 1px solid #E5E5E5;
  padding: 24px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.equipment-modal-title {
  flex: 1;
}

.equipment-modal-title .modal-title {
  font-family: var(--font-family-family-primary, Sora);
  font-size: 20px;
  font-weight: 600;
  line-height: 28px;
  color: var(--text-color-base-primary, #000);
  margin: 0 0 12px 0;
}

.equipment-modal-product {
  display: flex;
  align-items: center;
  gap: 12px;
}

.equipment-modal-product-image {
  width: 48px;
  height: 48px;
  object-fit: contain;
  border-radius: 4px;
  background: #fff;
  border: 1px solid #E5E5E5;
}

.equipment-modal-product-name {
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: var(--text-color-base-primary, #000);
}

.equipment-modal .btn-close {
  margin: 0;
  padding: 0;
  width: 24px;
  height: 24px;
  opacity: 1;
}

.equipment-modal .modal-body {
  padding: 24px;
}

.equipment-products-container {
  position: relative;
}

.equipment-products-scroll {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  padding-bottom: 8px;
  scrollbar-width: thin;
  scrollbar-color: #E5E5E5 transparent;
}

.equipment-products-scroll::-webkit-scrollbar {
  height: 6px;
}

.equipment-products-scroll::-webkit-scrollbar-track {
  background: transparent;
}

.equipment-products-scroll::-webkit-scrollbar-thumb {
  background: #E5E5E5;
  border-radius: 3px;
}

.equipment-product-card {
  flex: 0 0 280px;
  background: #fff;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.equipment-product-image {
  width: 100%;
  height: 200px;
  object-fit: contain;
  border-radius: 4px;
  background: #FAFAFA;
  border: 1px solid #E5E5E5;
}

.equipment-product-name {
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: var(--text-color-base-primary, #000);
  margin: 0;
  min-height: 40px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.equipment-product-price {
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  color: var(--text-color-base-primary, #000);
  margin: 0;
}

.equipment-product-btn {
  width: 100%;
  padding: 12px 16px;
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-brand-one-8-base, #E4FD71);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  border: none;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}

.equipment-product-btn:hover,
.equipment-product-btn:active,
.equipment-product-btn:focus {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
}

.equipment-loading {
  text-align: center;
  padding: 40px;
  color: #999;
}

.equipment-modal-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #E5E5E5;
}

.equipment-products-count {
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: var(--text-color-base-secondary, #595959);
}

.equipment-navigation {
  display: flex;
  gap: 8px;
}

.equipment-nav-btn {
  width: 40px;
  height: 40px;
  border: 1px solid #E5E5E5;
  border-radius: 4px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  padding: 0;
}

.equipment-nav-btn:hover:not(:disabled) {
  background: #F5F5F5;
  border-color: #000;
}

.equipment-nav-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.equipment-nav-btn svg {
  width: 24px;
  height: 24px;
}

/* ============================================
 Section Front1 - wszystkie style
 ============================================ */
.section-front1 {
  margin-top: 48px;
}

.section-front1 .single-left1-sz {
  padding-top: 6px;
}

/* Na mobilce (do 768px) usuń margin-top i padding-top */
@media (max-width: 767.98px) {
  .section-front1 {
    margin-top: 0;
  }

  .section-front1 .single-left1-sz {
    padding-top: 0;
    margin-top: 24px;
  }
}

.section-front1 .single-left1-sz h1 {
  font-weight: 400;
  font-size: 40px;
  color: #000;
  line-height: 54px;
  margin-bottom: 20px;
}

.section-front1 .single-left1-sz p {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #595959;
  margin-bottom: 14px;
}

.section-front1 .single-right1 .single-sz {
  padding: 4px;
}

.section-front1 .single-right1 .single-right1-sz section.container {
  padding: 0;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor {
  margin-bottom: 0;
  padding: 4px;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 12px;
  border: 1px solid #ececec;
  border-radius: 12px;
  background: #fff;
  box-shadow: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.05s ease;
  border-radius: 4px;
  border: 1px solid #e5e5e5;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard {
  box-shadow: none !important;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard:hover {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-two-9, #EBE4DC);
  background: var(--hover-neutral, #F3EFEA);
  border-color: #e2e2e2;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard__main {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1 1 auto;
  min-width: 0;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatars {
  display: flex;
  gap: 6px;
}

/* Stacked avatars - overlapping style like in Figma */
.section-front1 .single-right1 .single-right1-sz .single-counselor .avatars.avatars--stacked {
  gap: 6px;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatars.avatars--stacked .avatar {
  margin-left: 0;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatars.avatars--stacked .avatar:first-child {
  margin-left: 0;
  z-index: 3;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatars.avatars--stacked .avatar:nth-child(2) {
  z-index: 2;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatars.avatars--stacked .avatar:nth-child(3) {
  z-index: 1;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatar {
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 4px;
  overflow: hidden;
  background: #f3f3f3;
  box-shadow: inset 0 0 0 1px #e9e9e9;
  flex-shrink: 0;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatar p {
  margin-bottom: 0;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatar__badge {
  position: absolute;
  right: 2px;
  bottom: 2px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e4fd71;
  display: grid;
  place-items: center;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .avatar__badge img {
  width: 12px;
  height: 12px;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard__copy {
  margin-left: 12px;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard__copy p {
  margin-bottom: 0;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard__copy strong {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 100%;
  margin-bottom: 6px;
  display: block;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard__copy small,
.section-front1 .single-right1 .single-right1-sz .single-counselor .scard__copy .sub {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  color: #8b8f98;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard__arrow {
  margin-left: auto;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #fff;
  color: #000;
  display: grid;
  place-items: center;
  transition: transform 0.15s ease;
  margin-right: 12px;
}

.section-front1 .single-right1 .single-right1-sz .single-counselor .scard:hover .scard__arrow {
  transform: translateX(2px);
  background: transparent;
}

.section-front1 .single-right1 .single-right1-sz .card {
  box-shadow: none !important;
  border-radius: 4px;
  border: 1px solid var(--border-primary, #E5E5E5);
  padding: 16px 16px 12px 12px;
  background-color: #fff;
  transition: box-shadow 0.2s;
  height: 100%;
}

.section-front1 .single-right1 .single-right1-sz .card .d-flex.flex-column {
  width: 100%;
}

.section-front1 .single-right1 .single-right1-sz .card:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-two-9, #EBE4DC);
  background: var(--hover-neutral, #F3EFEA);
}

.section-front1 .single-right1 .single-right1-sz .card .fw-bold {
  font-size: 16px;
  color: #000;
}

.section-front1 .single-right1 .single-right1-sz .card small {
  font-size: 14px;
  color: #757575;
}

.section-front1 .single-right1 .single-right1-sz .card .text-warning {
  font-size: 18px;
  margin-bottom: 14px;
}

.section-front1 .single-right1 .single-right1-sz .card .btn-more {
  position: absolute;
  top: 8px;
  right: 8px;
}

.section-front1 .single-right1 .single-right1-sz .card .ico {
  margin-top: 6px;
  margin-bottom: 14px;
}

.section-front1 .single-right1 .single-right1-sz .card .ico img {
  margin: 0 auto;
}

.section-front1 .single-right1 .single-right1-sz .card .title1 {
  color: #000;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}

.section-front1 .single-right1 .single-right1-sz .card .title2 {
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

/* .section-front1 .single2 {
margin-top: 48px;
} */
.section-front1 .single-left2 img {
  display: block;
  position: relative;
  left: -60px;
  width: calc(100% + 60px);
  max-width: none;
  height: auto;
}

@media (min-width: 993px) and (max-width: 1380px) {
  .section-front1 .single-left2 img {
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}


.section-front1 .single1 {
  margin-bottom: 32px;
}

.section-front1 .single1 .single-left1 {
  margin-bottom: 0;
}

/* Slider strona główna - Moved from module */
.section-front1 .single-left1-sz .hero-subtitle {
  max-width: 561px;
}

.section-front1 .single-left1-sz .hero-heading {
  max-width: 561px;
}

@media (min-width: 993px) {
  .section-front1 .single-right1-sz {
    padding-right: 5px !important;
  }
}

@media (min-width: 993px) and (max-width: 1380px) {

  .section-front1 .section-product1 .owl-item .js-product,
  .section-front1 .section-product1 .owl-item .product-miniature {
    margin-left: 1px !important;
  }
}

.section-front1 .section-product1 {
  position: relative;
  padding-right: 4px;
}

/* Ustaw jednakową wysokość dla wszystkich owl-item */
.section-front1 .section-product1 .owl-stage {
  display: flex !important;
  align-items: stretch !important;
}

.section-front1 .section-product1 .owl-item {
  display: flex !important;
  align-items: stretch !important;
  height: auto !important;
  overflow: visible !important;
}

.section-front1 .section-product1 .owl-item>.item {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  flex: 1 !important;
  overflow: visible !important;
}

.section-front1 .section-product1 .owl-item .js-product,
.section-front1 .section-product1 .owl-item .product-miniature {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  flex: 1 !important;
  overflow: visible !important;
  padding: 0 !important;
  /* margin: 10px !important; */
  margin-left: 1px !important;
}

.section-front1 .section-product1 .product-miniature {
  text-align: left;
}

.section-front1 .section-product1 .thumbnail-container {
  border: 1px solid rgb(229, 229, 229);
  border-radius: 4px;
  padding-top: 2px;
  padding-left: 40px;
  padding-right: 40px;
  padding-bottom: 40px;
  margin-bottom: 0;
  background-color: transparent;
  width: 100%;
  background: radial-gradient(43.46% 27.81% at 0% 100%, rgba(228, 253, 113, 0.2) 0%, rgba(250, 250, 250, 0.2) 100%), #ffffff;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  min-height: 100% !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.section-front1 .section-product1 .thumbnail-container img {
  width: 100%;
  max-width: 240px;
  height: auto;
  margin: 0 auto;
  display: block;
}

.section-front1 .section-product1 .product-description {
  background-color: transparent;
}

.section-front1 .section-product1 .product-description .product-title {
  text-transform: none;
  text-align: left;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0px;
  color: rgb(0, 0, 0);
}

.section-front1 .section-product1 .product-description .product-title a {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0px;
  color: rgb(0, 0, 0);
}

.section-front1 .section-product1 .product-description .product-price {
  color: rgb(136, 136, 136);
  margin-top: 0;
  display: block;
  width: 100%;
}

.section-front1 .section-product1 .product-description .product-price .product-prices {
  margin-top: 4px;
}

.section-front1 .section-product1 .product-description .product-price .current-price {
  margin-bottom: 8px;
}

.section-front1 .section-product1 .product-description .product-price .single-price {
  margin-bottom: 0;
}

.section-front1 .section-product1 .product-description .product-price .vat-info {
  border-left: 1px solid rgb(229, 229, 229);
  color: rgb(136, 136, 136);
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 0px;
  padding-left: 10px;
  margin-left: 10px;
  margin-bottom: 4px;
}

.section-front1 .section-product1 .product-description .product-price .current-price-value {
  color: rgb(136, 136, 136);
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  margin-right: 8px;
}

.section-front1 .section-product1 .product-description .product-price .discount-percentage {
  background-color: rgb(254, 224, 224);
  color: rgb(196, 20, 8);
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 0px;
  padding: 2px 6px;
  border-radius: 4px;
}

.section-front1 .section-product1 .product-description .product-price .product-subprices {
  color: #777;
  margin-bottom: 0;
}

.section-front1 .section-product1 .product-description .product-price .product-subprices .old-price {
  color: rgb(136, 136, 136);
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 0px;
  margin-bottom: 4px;
}

.section-front1 .section-product1 .product-description .product-price .product-subprices .lowest-price {
  color: rgb(136, 136, 136);
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 0px;
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .section-front1 .section-product1 .product-description .product-price .product-subprices .lowest-price {
    flex-basis: auto;
    margin-top: 0;
  }
}

.section-front1 .section-product1 .product-description .product-price .product-view {
  position: absolute;
  right: 0;
  bottom: 0;
  margin-bottom: 0;
}

.section-front1 .section-product1 .product-description .product-price .product-view .btn {
  background-color: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
}

.section-front1 .section-product1 .product-description .product-price .product-view .btn img {
  width: 24px;
}

.section-front1 .section-product1 .wishlist-button-add {
  display: none;
}

.section-front1 .section-product1 .owl-theme .owl-nav {
  text-align: right;
  margin-top: 16px;
}

@media (max-width: 768px) {
  .section-front1 .section-product1 .owl-theme .owl-nav {
    margin-right: 14px;
  }
}

.section-front1 .section-product1 .owl-theme .owl-nav [class*=owl-]:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-two-9, #EBE4DC);
  background: var(--hover-neutral, #F3EFEA);
}

.section-front1 .section-product1 .owl-theme .owl-nav [class*=owl-] {
  margin: 2px;
  border: 1px solid rgba(24, 48, 48, 0.2);
  padding: 8px !important;
  border-radius: 4px;
  color: rgb(24, 48, 48);
  height: 32px;
  width: 32px;
}

.section-front1 .section-product1 .owl-theme .owl-nav [class*=owl-] i {
  width: auto;
  height: auto;
  font-size: 16px;
  line-height: 16px;
  text-align: center;
  margin: 0 auto;
  display: block;
}

.section-front1 .section-product1 .owl-dots {
  display: none;
}

.section-front1 .section-product1 .desc-under {
  background-color: rgb(228, 253, 113);
  padding: 4px 8px;
  color: rgb(0, 0, 0);
}

.section-front1 .section-product1 .desc-under p {
  margin-bottom: 0;
}

.section-front1 .section-product1 .product-category-badge2 {
  position: absolute;
  bottom: 25px;
  left: 10px;
  background: #e4ff5c;
  color: rgb(0, 0, 0);
  padding: 4px 10px;
  border-radius: 5px;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  z-index: 1;
}

@media (max-width: 785.98px) {
  .section-front1 .single-left1-sz h1 {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    /* 133.333% */
    margin-bottom: 10px;
  }

  .section-front1 .single-left1-sz p {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  /* Zmiana kolejności elementów na mobile */
  .section-front1 .single-right1 .single-right1-sz section.container .row {
    display: flex;
    flex-wrap: wrap;
  }

  .section-front1 .single-right1 .single-right1-sz .single-counselor {
    order: 4;
    width: 100%;
  }

  .section-front1 .single-right1 .single-right1-sz .single-sz {
    order: 0;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .section-front1 .single-right1 .single-right1-sz .card .text-warning span {
    width: 16px !important;
    height: 16px !important;
    display: inline-block;
    flex-shrink: 0;
  }

  .section-front1 .single-right1 .single-right1-sz .card .text-warning svg {
    width: 16px !important;
    height: 16px !important;
  }

  .section-front1 .single-right1 .single-right1-sz .card {
    padding: 10px;
  }

  .section-front1 .single-right1 .single-right1-sz .card .btn-more {
    right: 5px;
    top: 5px;
  }

  .section-front1 .single-right1 .single-right1-sz .card .title2 {
    color: var(--text-color-base-tetriary, #888);
    /* Text/Caption */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    /* 133.333% */
  }

  .section-front1 .section-product1 .product-category-badge2 {
    bottom: 25px;
  }

  .section-front1 .section-product1 .owl-item .js-product,
  .section-front1 .section-product1 .owl-item .product-miniature {
    margin: 0 10px !important;
    margin-top: 24px !important;
  }

  .section-front1 .single-left1-sz p img {
    width: 100vw;
    max-width: none;
    height: auto;
    position: relative;
    left: 0;
    margin-right: calc(-50vw + 50%);
    display: block;
  }
}

/* Style dla obrazu do 991px */
@media (max-width: 991.98px) {
  .section-front1 .single-left2 img {
    left: 0;
  }
}

/* Zmiana kolejności elementów na mobile - tylko dla mobile */
@media (max-width: 767.98px) {

  /* Wszystkie elementy w jednym kontenerze flexbox */
  .section-front1 .container-fluid {
    display: flex;
    flex-direction: column;
  }

  /* Rozbijamy rowy, aby wszystkie kolumny były na tym samym poziomie */
  .section-front1 .single1,
  .section-front1 .single2 {
    display: contents;
  }

  /* Kolejność: 1. single-left2 (obraz), 2. single-left1 (treść), 3. single-right1 (karty), 4. section-product1 (produkty) */
  .section-front1 .single2 .single-left2 {
    order: 1;
    padding-left: 0;
  }

  .section-front1 .single1 .single-left1 {
    order: 2;
    padding: 0;
  }

  .section-front1 .single1 .single-right1 {
    order: 3;
  }

  .section-front1 .single2 .section-product1 {
    order: 4;
  }

  /* Style dla obrazu na mobile */
  .section-front1 .single-left2 img {
    display: block;
    position: relative;
    width: auto;
    max-width: none;
    height: auto;
    left: 0;
  }

  /* Padding dla single-sz na mobile */
  .section-front1 .single-right1 .single-right1-sz .single-sz {
    padding: 2px;
  }

  /* Ukryj avatar 2 i 3 na mobile */
  .section-front1 .single-right1 .single-right1-sz .single-counselor .avatars.avatars--stacked .avatar:nth-child(2),
  .section-front1 .single-right1 .single-right1-sz .single-counselor .avatars.avatars--stacked .avatar:nth-child(3) {
    display: none;
  }
}

/*!****************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./css/custom.scss ***!
\****************************************************************************************************************************************************************************************************************************************/


.container-fluid {
  max-width: 1320px;
  margin: 0 auto;
  padding-left: 30px;
  padding-right: 30px;
}


body {
  font-family: "Sora", sans-serif;
}

p {
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: rgb(0, 0, 0);
}

a {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: rgb(0, 0, 0);
}

img {
  max-width: 100%;
  display: block;
  height: auto;
}

#main .page-footer {
  margin-bottom: 0;
}

.btn-dark-green {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 4px;
  border: 0 solid #ee8ef3;
  background-color: #000;
  background: radial-gradient(54.42% 200% at 0% 100%, rgba(228, 253, 113, 0.3) 0%, rgba(228, 253, 113, 0) 100%), #183030;
  /* ciemna zieleń tła */
  background-repeat: no-repeat;
  background-size: 100% 100%;
  color: #fcfcfc !important;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  padding-left: 8px;
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
}

.btn-dark-green i {
  font-size: 18px;
  color: rgb(228, 253, 113);
}

.btn-dark-green:hover {
  background-color: #183030;
  background-image: radial-gradient(54.42% 200% at 0% 100%, rgba(228, 253, 113, 0.5) 0%, rgba(228, 253, 113, 0) 100%);
  background-repeat: no-repeat;
}

.btn-yellow {
  border-radius: 4px;
  border: 1px solid #f2febd;
  background: #e4fd71;
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  padding: 16px 24px;
}

.btn-yellow:hover {
  border: 1px solid #c7e068;
  background: #ebfe97;
}

.btn-grey1 {
  border-radius: 4px;
  border: 1px solid rgb(178, 178, 178);
  background: rgb(178, 178, 178);
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  padding: 16px 24px;
}

.btn-grey1:hover {
  background: rgb(208, 208, 208);
}

.btn-grey2 {
  border-radius: 4px;
  border: 1px solid rgb(178, 178, 178);
  background: rgb(178, 178, 178);
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  padding: 16px 24px;
}

.btn-grey2:hover {
  background: rgb(208, 208, 208);
}

.form-control-select {
  height: auto;
  padding: 12px 16px;
  background: white url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAxOCAxMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMSAxLjI3MzQ0TDcuNDczODIgOC45MjM2OEM4LjI3Mjc1IDkuODY3OCA5LjcyODUgOS44Njc3NCAxMC41Mjc0IDguOTIzNTVMMTcgMS4yNzM0NCIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIxLjUiLz4KPC9zdmc+) no-repeat scroll right 0.5rem center/1.125rem 0.6875rem !important;
  /* stylelint-disable-next-line property-no-vendor-prefix */
  -moz-appearance: none;
  /* stylelint-disable-next-line property-no-vendor-prefix */
  -webkit-appearance: none;
  appearance: none;
}

.form-control,
textarea.form-control {
  height: auto;
  padding: 12px 16px;
}

.form-control:active {
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  background: radial-gradient(381.13% 100% at 0% 100%, #e4fd71 0%, #fafafa 20.5%);
}

.form-check-input[type=checkbox] {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  border: none;
  background-color: #f5f5f5;
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.form-check-input[type=checkbox]:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(228, 253, 113, 0.3);
}

.form-check-input[type=checkbox]:checked {
  background-color: #E4FD71 !important;
  border-color: #E4FD71 !important;
  background-image: none !important;
}

.form-check-input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 10px;
  background-image: url("data:image/svg+xml,%3Csvg width=%2712%27 height=%2710%27 viewBox=%270 0 12 10%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M4 9.4L0 5.4L1.4 4L4 6.6L10.6 0L12 1.4L4 9.4Z%27 fill=%27%23183030%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  display: block;
}

.form-check-input[type=checkbox]:not(:checked) {
  background-color: #f5f5f5;
  background-image: none;
}

.form-check-input[type=checkbox]:not(:checked)::after {
  display: none;
}

.form-check-input[type=checkbox].form-check-input-sm {
  width: 20px;
  height: 20px;
}

.form-check-input[type=checkbox].form-check-input-sm:checked::after {
  width: 10px;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg width=%2710%27 height=%278%27 viewBox=%270 0 10 8%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M3.33333 8L0 4.59575L1.16667 3.40426L3.33333 5.61702L8.83333 0L10 1.19149L3.33333 8Z%27 fill=%27%23183030%27/%3E%3C/svg%3E");
}

.form-check-label {
  cursor: pointer;
  user-select: none;
  margin-left: 8px;
}

.form-check-input:checked {
  background-color: #E4FD71 !important;
  border-color: #E4FD71 !important;
  background-image: none !important;
}

.form-check .form-check-input {
  margin-top: 0;
  margin-right: 8px;
  vertical-align: top;
}

.custom-checkbox-sm .form-check-input[type=checkbox] {
  width: 20px;
  height: 20px;
}

.custom-checkbox-sm .form-check-input[type=checkbox]:checked::after {
  width: 10px;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg width=%2710%27 height=%278%27 viewBox=%270 0 10 8%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M3.33333 8L0 4.59575L1.16667 3.40426L3.33333 5.61702L8.83333 0L10 1.19149L3.33333 8Z%27 fill=%27%23183030%27/%3E%3C/svg%3E");
}

#header {
  border-bottom: none;
  box-shadow: none;
}

#header .header-top {
  display: none;
}

#header .mobile-fairs-bar {
  padding-left: 20px;
  padding-right: 18px;
}

#header .mobile-fairs-bar .bar-caption p {
  color: #b2b2b2;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  margin-bottom: 0;
}

#header .mobile-fairs-bar .bar-link {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

#header .mobile-fairs-bar .bar-link svg {
  margin-right: 0.35rem;
}

#header .mobile-fairs-bar .bar-link p {
  color: #e4fd71;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

#header .mobile-fairs-bar .bar-link a {
  color: #e4fd71;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

#header .mobile-fairs-bar .calendar-link {
  color: #e6e6e6;
  text-decoration: none;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  color: #b2b2b2;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  padding-left: 10px;
  padding-right: 10px;
}

#header .mobile-fairs-bar .calendar-link svg {
  display: block;
}

#header .mobile-fairs-bar .calendar-link:hover {
  color: #fff;
}

#header .mobile-fairs-bar .bar-divider {
  width: 1px;
  height: 22px;
  background: #434343;
  display: inline-block;
}

#header .mobile-fairs-bar .bar-close {
  color: #e6e6e6;
  text-decoration: none;
}

#header .mobile-fairs-bar .bar-close:hover {
  color: #fff;
}

@media (min-width: 992px) {
  #header .mobile-fairs-bar {
    display: none !important;
  }
}

#header {
  /* Fallback: ukryj na desktopie nawet bez klas util Bootstrapa */
}

@media (min-width: 992px) {
  #header #mobile-cta-fixed {
    display: none !important;
  }
}

#header {
  /* ===== Mobile CTA (≤768px), wygląd jak na screenie — BEZ fixed ===== */
}

#header .header-nav-wrapper {
  position: relative;
  background-color: rgb(0, 0, 0);
  font-size: 14px;
  padding: 8px 0;
  color: rgb(255, 255, 255);
  z-index: 1;
}

#header .header-nav-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to top, rgba(228, 253, 113, 0.1) 0%, rgba(228, 253, 113, 0) 100%);
  pointer-events: none;
  z-index: 2;
}

#header .header-nav-wrapper .container-fluid {
  position: relative;
  z-index: 3;
}

#header .header-nav-wrapper .topbar-info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  color: rgb(178, 178, 178);
}

#header .header-nav-wrapper .topbar-info .cms-content p {
  margin-bottom: 0;
  color: rgb(178, 178, 178);
}

#header .header-nav-wrapper .topbar-info .cms-content a {
  color: rgb(228, 253, 113) !important;
  text-decoration: none;
}

#header .header-nav-wrapper .topbar-info .cms-content a:hover {
  color: #e4fd71;
}

#header .header-nav-wrapper .topbar-info .icon-arrow {
  color: #e4fd71;
  font-size: 14px;
}

#header .header-nav-wrapper .topbar-info .divider {
  color: #999;
  margin: 0 8px;
}

#header .header-nav-wrapper .topbar-info .calendar-link {
  display: flex;
  align-items: center;
  color: rgb(178, 178, 178);
  text-decoration: none;
  background-color: transparent;
  border: none;
}

#header .header-nav-wrapper .topbar-info .calendar-link svg {
  font-size: 16px;
  margin-right: 8px;
  vertical-align: middle;
}

#header .header-nav-wrapper .topbar-info .calendar-link:hover {
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-neutral-2, #2D2D2D);
  color: var(--text-color-dark-secondary, #B2B2B2);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#header .header-nav-wrapper .topbar-info .calendar-link {
  color: #b2b2b2;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  padding: 4px 8px;
  border-radius: 4px;
  color: rgb(178, 178, 178);
}

#header .header-nav-wrapper .topbar-info .calendar-link i {
  font-size: 16px;
  margin-right: 4px;
  vertical-align: middle;
}

#header .header-nav-wrapper .topbar-menu {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
}

#header .header-nav-wrapper .topbar-menu h3 {
  display: none;
}

#header .header-nav-wrapper .topbar-menu ul {
  margin-bottom: 0;
  padding: 0;
  list-style: none;
}

#header .header-nav-wrapper .topbar-menu ul li {
  display: inline-block;
  margin-right: 16px;
}

#header .header-nav-wrapper .topbar-menu ul li:last-child {
  margin-right: 32px;
}

#header .header-nav-wrapper .topbar-menu ul li a {
  display: flex;
  align-items: center;
  color: rgb(178, 178, 178);
  text-decoration: none;
  background-color: transparent;
  border: none;
  padding: 4px 8px;
  border-radius: 0px;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  transition: all 0.2s ease;
}

#header .header-nav-wrapper .topbar-menu a {
  color: rgb(178, 178, 178);
  text-decoration: none;
  transition: all 0.2s ease;
}

#header .header-nav-wrapper .topbar-menu ul li a:hover,
#header .header-nav-wrapper .topbar-menu a:hover {
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-neutral-2, #2D2D2D);
  color: var(--text-color-dark-secondary, #B2B2B2);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#header .header-nav-wrapper .topbar-menu a.highlight {
  color: #e4fd71;
  font-weight: 500;
}

#header .header-nav-wrapper .topbar-menu a.active {
  font-weight: 600;
  border-bottom: 1px solid #e4fd71;
}

#header .header-nav-wrapper .topbar-menu .icon-arrow {
  color: #e4fd71;
  font-size: 14px;
}

#header .header-nav-wrapper .topbar-menu .divider {
  color: #999;
  margin: 0 8px;
}

#header .header-nav-wrapper .topbar-menu .badge {
  background-color: #3c3;
  color: #000;
  padding: 2px 6px;
  border-radius: 8px;
  font-size: 12px;
}

#header .header-nav-wrapper .topbar-menu .lang-currency {
  display: flex;
  align-items: center;
  gap: 10px;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border: 1px solid #2d2d2d;
  border-radius: 4px;
  background: transparent;
  color: rgb(178, 178, 178);
  font-size: 13px;
  line-height: 1.4;
  transition: all 0.3s ease;
  padding: 4px 6px 4px 8px;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency:hover,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang:hover {
  border-color: #e4fd71;
  color: rgb(178, 178, 178);
  border-radius: 4px;
  border: 1px solid #2d2d2d;
  background: #2d2d2d;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency i.material-icons,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang i.material-icons {
  font-size: 16px;
  color: inherit;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency:active,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang:active {
  border-radius: 4px;
  border: 1px solid #2d2d2d;
  background: #2d2d2d;
}

/* Aktywny stan przycisku currency i language (gdy dropdown jest otwarty) */
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency.show,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency[aria-expanded="true"],
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang.show,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang[aria-expanded="true"] {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-neutral-2, #2D2D2D);
  background: var(--color-neutral-2, #2D2D2D);
}

/* Odwróć strzałkę gdy przycisk jest aktywny */
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency.show svg,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-currency[aria-expanded="true"] svg,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang.show svg,
#header .header-nav-wrapper .topbar-menu .lang-currency .btn-lang[aria-expanded="true"] svg {
  transform: rotate(180deg);
  transition: transform 0.2s ease;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .dropdown-menu {
  background: #000;
  border: 1px solid #333;
  border-radius: 10px;
  padding: 4px 0;
  min-width: 120px;
  right: 0 !important;
  left: auto !important;
  transform: none !important;
  top: 100% !important;
  inset: unset !important;
  position: absolute !important;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .dropdown-menu li {
  margin-right: 0;
  width: 100%;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .dropdown-menu a.dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  color: #ccc;
  font-size: 13px;
  transition: all 0.2s ease;
  white-space: nowrap;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .dropdown-menu a.dropdown-item:hover {
  background-color: rgba(228, 253, 113, 0.1);
  color: #e4fd71;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .dropdown-menu a.dropdown-item.active {
  background-color: rgba(228, 253, 113, 0.15);
  color: #e4fd71;
  font-weight: 500;
}

#header .header-nav-wrapper .topbar-menu .lang-currency .dropdown-menu a.dropdown-item .lang-flag {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  object-fit: cover;
}

/* Media query dla ekranów do 380px - zmniejszenie treści i padding */
@media (max-width: 380px) {
  #header .header-nav-wrapper {
    font-size: 12px;
  }

  #header .header-nav-wrapper .container-fluid {
    padding-left: 14px;
    padding-right: 14px;
  }

  #header .header-nav-wrapper .topbar-info,
  #header .header-nav-wrapper .topbar-menu {
    font-size: 12px;
  }

  #header .header-nav-wrapper .topbar-info .calendar-link,
  #header .header-nav-wrapper .topbar-menu ul li a {
    font-size: 12px;
  }

  #header #mobile-cta-fixed .container-fluid {
    padding-left: 14px;
    padding-right: 14px;
  }

  #header #mobile-cta-fixed .route-link,
  #header #mobile-cta-fixed .phone-link {
    font-size: 10px;
  }

  #header #mobile-cta-fixed .single1 {
    gap: 0;
  }
}

#header .header-nav-wrapper .topbar-menu .lang-currency .lang-flag {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  object-fit: cover;
}

#header .header-nav-wrapper .topbar-menu .dropdown-toggle::after {
  display: none;
}

#header .header-nav {
  background-color: #fff;
  border-bottom: 1px solid var(--border-primary, #E5E5E5);
  max-height: 100%;
}

#header .header-nav .container-fluid {
  display: flex;
  flex-direction: column;
}

#header .header-nav .container-fluid>.d-flex {
  padding: 16px 0;
  width: 100%;
}

#header .header-nav #_desktop_logo img {
  max-height: 48px;
  height: auto;
}

#header .header-nav #search_widget .custom-search-form {
  display: flex;
  align-items: center;
  border-radius: 32px;
  background: var(--color-neutral-11, #F5F5F5);
  padding: 6px 14px;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

#header .header-nav #search_widget .custom-search-form:hover {
  background: #e6e6e6;
}

#header .header-nav #search_widget .custom-search-form:hover .search-button svg path {
  fill: #6b6b6b;
}

#header .header-nav #search_widget .custom-search-form:focus-within {
  background: #fff;
  box-shadow: 0 0 0 2px #cfd1d4 inset;
}

#header .header-nav #search_widget .custom-search-form:focus-within .search-button svg path {
  fill: #1d1d1f;
}

#header .header-nav #search_widget .custom-search-form:focus-within .search-input::placeholder {
  color: #6b6b6b;
}

#header .header-nav #search_widget .search-input {
  flex: 1;
  border: 1px solid #e5e5e5;
  outline: 0;
  background: transparent;
  padding: 2px;
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

/* Border dla inputa w wyszukiwarce */
#search_widget form input,
.search-widget form input {
  border: 1px solid #e5e5e5 !important;
}

/* Border dla inputa w newsletter i wyszukiwarce - nadpisanie */
.block_newsletter form input[type="text"],
.search-widget form input[type="text"] {
  border: 1px solid #e5e5e5 !important;
}

#header .header-nav #search_widget .search-input::placeholder {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#header .header-nav #search_widget .search-input:hover {
  background: #e6e6e6;
}

#header .header-nav #search_widget .search-input:focus {
  background: #fff;
}

#header .header-nav #search_widget .search-button {
  background: transparent;
  border: 0;
  line-height: 0;
  padding: 6px;
  cursor: pointer;
}

#header .header-nav #search_widget .search-button svg path {
  fill: #595959;
  transition: fill 0.2s ease;
}

#header .header-nav .blockcart {
  background: #e4fd71;
  background: linear-gradient(90deg, rgba(228, 253, 113, 0.5) 0%, rgb(250, 250, 250) 100%);
  margin-left: 0;
  height: 32px;
  padding-left: 8px;
  padding-right: 12px;
  padding-top: 6px;
  padding-bottom: 6px;
  border-radius: 4px;
}

#header .header-nav .blockcart header {
  margin-top: 0;
}

#header .header-nav .blockcart .cart-icon-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}

#header .header-nav .blockcart .icon-cart {
  width: 15px;
  height: 15px;
  object-fit: contain;
}

#header .header-nav .blockcart .cart-products-count {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #000;
}

#header .header-nav .cart-preview.active {
  background-color: var(--color-neutral-12-base, #fafafa);
  background-image: linear-gradient(to left, rgba(228, 253, 113, 0) 0%, rgba(228, 253, 113, 0.3) 100%);
  background-repeat: no-repeat;
}

#header .header-nav #_desktop_user_info {
  display: flex;
  align-items: center;
  overflow: visible;
}

#header .header-nav #_desktop_user_info .account {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 10px;
  text-decoration: none;
  width: auto;
  min-width: 0;
  flex-shrink: 0;
  height: auto;
  min-height: 32px;
  overflow: visible;
}

#header .header-nav #_desktop_user_info .account svg {
  flex-shrink: 0;
  overflow: visible;
  display: block;
  width: 24px;
  height: 24px;
  min-width: 24px;
  min-height: 24px;
}

#header .header-nav #_desktop_user_info .user-name {
  white-space: nowrap;
  font-weight: 500;
  font-size: 16px;
  overflow: visible;
}

#header .header-nav #_desktop_user_info .icon-user {
  width: 20px;
  height: 20px;
}

#header .header-nav #_desktop_user_info .expand-icon {
  font-size: 20px;
  color: #666;
}

#header .header-nav #_desktop_user_info .dropdown-toggle::after {
  display: none;
}

#header .header-nav .wishlist-icon {
  display: flex;
  align-items: center;
  gap: 4px;
}

#header .header-nav .wishlist-icon a {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 6px;
  height: 32px;
}

#header .header-nav .wishlist-icon a .icon-heart {
  width: 24px;
  height: 24px;
  display: block;
}

#header .header-nav .wishlist-icon a .wishlist-count {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: rgb(136, 136, 136);
}

#header .header-nav #_desktop_top_menu {
  display: flex !important;
  justify-content: flex-start;
  gap: 0;
  align-items: center;
  flex-wrap: nowrap;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  max-width: none !important;
  width: 100% !important;
}

/* Override for new menu structure */
#header .header-nav #_desktop_top_menu .menu.js-top-menu,
#_desktop_top_menu .menu.js-top-menu {
  display: block !important;
  width: 100%;
  visibility: visible !important;
  opacity: 1 !important;
}

#header .header-nav #_desktop_top_menu .main-menu-list,
#_desktop_top_menu .main-menu-list {
  display: flex !important;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
  align-items: center;
  visibility: visible !important;
  opacity: 1 !important;
  flex-wrap: nowrap !important;
  overflow: visible !important;
  max-width: none !important;
  width: 100% !important;
}

/* Style dla licznika sklepów */
.stores-count {
  display: inline-block;
  border-radius: 24px;
  background: linear-gradient(270deg, rgba(228, 253, 113, 0.00) 0%, rgba(228, 253, 113, 0.30) 100%), var(--color-neutral-2, #2D2D2D);
  color: var(--color-brand-one-8-base, #E4FD71);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 10px;
  font-style: normal;
  font-weight: 400;
  line-height: 12px;
  /* 120% */
  letter-spacing: 0.3px;
  padding: 2px 6px;
  min-width: 16px;
  margin-left: 4px;
}

/* Ukryj mobile menu na komputerze */
@media (min-width: 768px) {

  #_mobile_top_menu,
  #mobile_top_menu_wrapper,
  #_mobile_top_menu.d-block,
  #_mobile_top_menu.d-block.d-md-none,
  #_mobile_top_menu.menu.js-top-menu,
  #_mobile_top_menu.menu.js-top-menu.d-block,
  #_mobile_top_menu.menu.js-top-menu.d-block.d-md-none {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    pointer-events: none !important;
  }
}

#header .header-nav #_desktop_top_menu .main-menu-item,
#_desktop_top_menu .main-menu-item {
  position: relative;
  display: list-item !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#header .header-nav #_desktop_top_menu .main-menu-link,
#_desktop_top_menu .main-menu-link {
  font-size: 14px;
  font-weight: 500;
  color: #222;
  text-decoration: none;
  padding: 12px 16px;
  display: flex !important;
  align-items: center;
  gap: 6px;
  transition: color 0.2s ease;
  visibility: visible !important;
  opacity: 1 !important;
}

#header .header-nav #_desktop_top_menu .main-menu-link:hover,
#_desktop_top_menu .main-menu-link:hover {
  color: #000;
}

#header .header-nav #_desktop_top_menu .main-menu-item.current .main-menu-link,
#header .header-nav #_desktop_top_menu .main-menu-link.active,
#_desktop_top_menu .main-menu-item.current .main-menu-link,
#_desktop_top_menu .main-menu-link.active {
  color: #e4002b;
}

/* Promocje highlight - use class or attribute selector for better browser support */
#header .header-nav #_desktop_top_menu .main-menu-item.promocje .main-menu-link,
#header .header-nav #_desktop_top_menu .main-menu-link[href*="promocje"],
#header .header-nav #_desktop_top_menu .main-menu-link[href*="Promocje"],
#_desktop_top_menu .main-menu-item.promocje .main-menu-link,
#_desktop_top_menu .main-menu-link[href*="promocje"],
#_desktop_top_menu .main-menu-link[href*="Promocje"] {
  color: #e4002b;
}

/* When mega menu is open, avoid highlighting an extra (second) top-level item. */
body.megamenu-open #header .header-nav #_desktop_top_menu .main-menu-item.promocje:not(.active):not(.current) .main-menu-link,
body.megamenu-open #_desktop_top_menu .main-menu-item.promocje:not(.active):not(.current) .main-menu-link,
body.megamenu-open #header .header-nav #_desktop_top_menu .main-menu-link[href*="promocje"]:not(.active),
body.megamenu-open #header .header-nav #_desktop_top_menu .main-menu-link[href*="Promocje"]:not(.active),
body.megamenu-open #_desktop_top_menu .main-menu-link[href*="promocje"]:not(.active),
body.megamenu-open #_desktop_top_menu .main-menu-link[href*="Promocje"]:not(.active) {
  color: #222;
}

#header .header-nav .right-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 16px;
  overflow: visible;
}

#header .header-nav .right-actions #_desktop_cart,
#header .header-nav .right-actions #_desktop_wishlist,
#header .header-nav .right-actions #_desktop_user_info {
  font-size: 14px;
  margin-top: 0;
  margin-left: 0;
}

#header .header-nav .right-actions #_desktop_cart .material-icons,
#header .header-nav .right-actions #_desktop_wishlist .material-icons,
#header .header-nav .right-actions #_desktop_user_info .material-icons {
  font-size: 20px;
  vertical-align: middle;
}

#header .header-nav .right-actions #_desktop_cart img,
#header .header-nav .right-actions #_desktop_wishlist img,
#header .header-nav .right-actions #_desktop_user_info img {
  max-height: 24px;
}

#wrapper {
  background-color: #fff;
  padding-top: 24px;
}


.section-front2 {
  background-color: #fafafa;
  padding-top: 64px;
}

.section-front2 .single1 {
  text-align: center;
}

.section-front2 .single1 h2 {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-XS */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  margin-bottom: 24px;
  letter-spacing: 0px;
}

.section-front2 .single1 h2 strong {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  /* Heading/Head-XS <str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 32px;
  /* 133.333% */
}

.section-front2 .single2 ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: flex;
  flex-wrap: nowrap;
  overflow-x: visible;
  gap: 8px;
  justify-content: center;
}

.section-front2 .single2 ul li {
  background-color: rgb(228, 253, 113);
  color: rgb(0, 0, 0);
  padding: 10px 16px;
  border-radius: 24px;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  flex-shrink: 0;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
}

@media (max-width: 785.98px) {
  .section-front2 .single2 ul {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scroll-margin-top: 16px;
  }

  .section-front2 .single2 ul::-webkit-scrollbar {
    height: 4px;
  }

  .section-front2 .single2 ul::-webkit-scrollbar-track {
    background: transparent;
  }

  .section-front2 .single2 ul::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .section-front2 .single2 ul li {
    color: var(--text-color-base-primary, #000);
    /* Text/Body II<str> */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    /* 142.857% */
  }
}

.section-front2-products {
  background-color: #fafafa;
  padding-top: 64px;
}

.section-front2-products .single-product {
  margin-bottom: 16px;
  padding-left: 8px;
  padding-right: 8px;
}

.section-front2-products .single-sz {
  background-color: #fff;
  padding: 40px 32px;
  border-radius: 16px;
  border: 1px solid #e5e7eb;
  height: 100%;
  border-radius: var(--radius-small, 8px);
  border: 1px solid var(--color-neutral-11, #F5F5F5);
  background: var(--background-color-base, #FFF);
}

.section-front2-products .single-sz .title-product {
  margin-bottom: 16px;
}

.section-front2-products .single-sz .title-product h3 {
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  color: #000;
  margin-bottom: 0;
}

.section-front2-products .single-sz .single-featured {
  margin-bottom: 8px;
}

.section-front2-products .single-sz .single-featured h4 {
  color: #888;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 6px;
}

.section-front2-products .single-sz .single-featured .feature-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.section-front2-products .single-sz .single-featured .feature-list li {
  margin-bottom: 8px;
}

.section-front2-products .single-sz .single-featured .feature-list li:last-child {
  margin-bottom: 0;
}

.section-front2-products .single-sz .single-featured .feature-list a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: #595959;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  padding: 6px 8px;
  border-radius: 8px;
  transition: background 0.2s ease, color 0.2s ease;
}

.section-front2-products .single-sz .single-featured .feature-list a:hover {
  background-color: #F3EFEA;
}

.section-front2-products .single-sz .single-featured .feature-list a.is-active {
  background: #F3EFEA;
  color: #0f172a;
}

.section-front2-products .single-sz .single-featured .feature-list a .bullet {
  width: 22px;
  height: 22px;
  min-width: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  background: #e7ff59;
}

.section-front2-products .single-sz .single-featured .feature-list a .bullet img {
  width: 14px;
  height: 14px;
  display: block;
}

.section-front2-products .single-sz .single-featured .feature-list a .label {
  line-height: 20px;
}

.section-front2-products .single-sz .single-button .see-all {
  text-align: center;
  margin: 12px 0 6px;
}

.section-front2-products .single-sz .single-button .see-all a {
  position: relative;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-color: var(--text-color-base-tetriary, #888);
  text-decoration-thickness: 7%;
  text-underline-offset: 60%;
  text-underline-position: from-font;
}

.section-front2-products .single-sz .sep {
  border: 0;
  border-top: 1px solid #e5e7eb;
  margin: 14px 0;
}

.section-front2-products .single-sz .single-info .chips {
  display: flex;
  gap: 8px;
  margin-bottom: 12px;
}

.section-front2-products .single-sz .single-info .chips .chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 8px;
  background: #eef2f7;
  color: #111827;
  font-size: 13px;
  background-color: #FAFAFA;
  /* kolor tła (fallback, gdy gradient niedostępny) */
  background-image: linear-gradient(to right, rgba(228, 253, 113, 0.4) 0%, rgba(228, 253, 113, 0) 50%);
}

.section-front2-products .single-sz .single-info .chips .chip.chip-dark {
  background: #0f2d1f;
  color: #fff;
}

.section-front2-products .single-sz .product-card {
  position: relative;
  background: #fff;
  border-radius: 12px;
  padding: 16px;
}

.section-front2-products .single-sz .product-card .product-link {
  text-decoration: none;
  color: inherit;
  display: block;
}

.section-front2-products .single-sz .product-card .product-link .product-photo {
  text-align: center;
  margin-bottom: 12px;
}

.section-front2-products .single-sz .product-card .product-link .product-photo img {
  max-width: 100%;
  height: auto;
}

.section-front2-products .single-sz .product-card .product-link .product-meta .product-name {
  margin: 4px 0 8px;
  font-weight: 600;
  font-size: 16px;
  line-height: 22px;
  color: #111827;
}

.section-front2-products .single-sz .product-card .product-link .product-meta .price-old {
  text-decoration: line-through;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

.section-front2-products .single-sz .product-card .product-link .product-meta .price-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.section-front2-products .single-sz .product-card .product-link .product-meta .price-row .price-now {
  color: rgb(136, 136, 136);
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.section-front2-products .single-sz .product-card .product-link .product-meta .price-sep {
  display: inline-block;
  width: 1px;
  height: 1em;
  background: #E5E5E5;
  margin: 0 12px;
  vertical-align: middle;
}

.section-front2-products .single-sz .product-card .product-link .product-meta .price-row .price-badge {
  background: #ffeceb;
  color: #b91c1c;
  border-radius: 6px;
  padding: 2px 6px;
  font-size: 12px;
}

.section-front2-products .single-sz .product-card .product-link .product-meta .price-note {
  color: #6b7280;
  font-size: 13px;
  margin-top: 4px;
}

.section-front2-products .single-sz .product-card .btn-fab {
  position: absolute;
  right: 12px;
  bottom: 12px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.section-front2-products .single-sz .product-card .btn-fab .fab-ic img {
  width: 16px;
  height: 16px;
  display: block;
}

@media (max-width: 785.98px) {
  .section-front2-products>.container-fluid>.row {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 6px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    padding-bottom: 8px;
  }

  .section-front2-products>.container-fluid>.row::-webkit-scrollbar {
    height: 4px;
  }

  .section-front2-products>.container-fluid>.row::-webkit-scrollbar-track {
    background: transparent;
  }

  .section-front2-products>.container-fluid>.row::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .section-front2-products>.container-fluid>.row>.single-product {
    flex: 0 0 85%;
    max-width: 85%;
    margin-bottom: 0;
    padding-left: 8px;
    padding-right: 8px;
  }

  .section-front2-products .single-sz {
    padding: 32px 20px 24px 20px;
  }

  .section-front2-products .single-sz .title-product h3 {
    color: var(--text-color-base-primary, #000);
    /* Text/Title <str> */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }

  .section-front2-products .single-sz .single-featured h4 {
    color: var(--text-color-base-tetriary, #888);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .section-front2-products .single-sz .single-featured .feature-list a .label {
    color: var(--text-color-base-primary, #000);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .section-front2-products .single-sz .single-featured .feature-list a {
    padding: 0;
  }

  .section-front2-products .single-sz .single-button .see-all a {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 125% */
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-color: var(--text-color-base-tetriary, #888);
    text-decoration-thickness: 7%;
    /* 1.12px */
    text-underline-offset: 60%;
    /* 9.6px */
    text-underline-position: from-font;
  }

  .section-front2-products .single-sz .single-info .chips .chip {
    color: var(--text-color-dark-primary, #FFF);
    /* Text/Caption */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    /* 133.333% */
  }

  .section-front2-products .single-sz .single-info .chips .chip,
  .section-front2-products .single-sz .single-info .chips .chip strong {
    color: var(--text-color-brand-1-secondary, #183030);
    /* Text/Caption */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    /* 133.333% */
  }

  .section-front2-products .single-sz .product-card .product-link .product-photo img {
    max-width: 211px;
    margin: 0 auto;
  }

  .section-front2-products .single-sz .product-card .product-link .product-meta .product-name {
    color: var(--text-color-base-primary, #000);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .section-front2-products .single-sz .product-card .product-link .product-meta .price-row .price-now {
    color: var(--text-color-base-tetriary, #888);
    text-align: right;
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .section-front2-products .single-sz .product-card .product-link .product-meta .price-row .price-badge {
    color: var(--text-semantic-distructive-secondary, #C41408);
    /* Text/Caption */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    /* 133.333% */
    border-radius: var(--radius-x-small, 4px);
    background: var(--background-semantic-distructive-light, #FEE0E0);
    padding: 2px 6px;
  }

  .section-front2-products .single-sz .product-card .product-link .product-meta .price-subrow {
    margin-top: 8px;
  }

  .section-front2-products .single-sz .product-card .product-link .product-meta .price-note {
    color: var(--text-color-base-tetriary, #888);
    /* Text/Caption */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    /* 133.333% */
  }

  .section-front2-products .single-sz .product-card .product-link .product-meta .price-sep {
    margin: 0 10px;
  }

  .section-front2-products .single-sz .product-card {
    padding: 0;
  }

  .section-front2-products .single-sz .product-card .btn-fab {
    right: 0;
    bottom: 0;
  }
}

.section-front3 {
  background-color: #fafafa;
  padding-bottom: 128px;
  /* Rama całej sekcji */
}

.section-front3 .single-row {
  margin: 0;
  /* bez bocznych odstępów rzędu */
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  /* zdjęcie ładnie w narożnikach */
  align-items: stretch;
  background-color: #fff;
}

.section-front3 {
  /* LEWY KADR */
}

.section-front3 .single1 {
  padding-left: 0;
}

.section-front3 .single1 .single1-sz {
  height: 100%;
}

.section-front3 .single1 .single1-sz p {
  margin-bottom: 0;
}

.section-front3 .single1 .single1-sz img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* ważne, żeby zdjęcie „wypełniało” */
}

.section-front3 {
  /* PRAWA KOLUMNA */
}

.section-front3 .single2 {
  padding-left: 48px;
  padding-right: 48px;
  /* zgodnie z Twoim układem */
  display: flex;
  align-items: center;
  /* pionowo środek */
}

.section-front3 .single2 .single1-sz {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.section-front3 .single2 .desc1 {
  max-width: 503px;
  margin-right: 12px;
  padding-top: 48px;
}

.section-front3 .single2 .desc1 h3 {
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
  color: #000;
  margin-bottom: 12px;
}

.section-front3 .single2 .desc1 h3 strong {
  font-weight: 600;
}

.section-front3 .single2 .desc1 p {
  color: #595959;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  max-width: 503px;
}

.section-front3 {
  /* LISTA UŻYWANYCH (prawa kolumna) */
}

.section-front3 .section-products-used {
  margin-top: 24px;
  padding-bottom: 40px;
}

.section-front3 .section-products-used .products-flex-container {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.section-front3 .section-products-used .products-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}

.section-front3 .section-products-used .product-item {
  width: 144px;
  padding: 0;
}

.section-products-used .product-miniature {
  padding: 4px;
  border-radius: 4px;
}

.section-front3 .section-products-used .products-button-wrapper {
  display: flex;
  align-items: end;
  justify-content: right;
}

.section-front3 .section-products-used .products-button-wrapper .btn {
  padding: 12px 24px;
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  border-radius: 4px;
  border: 1px solid #B2B2B2;
}

@media (min-width: 576px) {
  .section-front3 .section-products-used .products-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
  }

  .section-front3 .section-products-used .product-item {
    width: 144px;
    flex: 0 0 144px;
  }
}

@media (min-width: 768px) {
  .section-front3 .section-products-used .products-flex-container {
    flex-direction: row;
    align-items: stretch;
    gap: 2.5rem;
  }

  .section-front3 .section-products-used .products-grid {
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
  }

  .section-front3 .section-products-used .product-item {
    width: 144px;
    flex: 0 0 144px;
  }

  .section-front3 .section-products-used .products-button-wrapper {
    flex: 0 0 auto;
    width: auto;
    min-width: auto;
  }
}

@media (min-width: 1200px) {
  .section-front3 .section-products-used .products-flex-container {
    gap: 3rem;
  }

  .section-front3 .section-products-used .products-grid {
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
  }

  .section-front3 .section-products-used .product-item {
    width: 144px;
    flex: 0 0 144px;
  }

  .section-front3 .section-products-used .products-button-wrapper {
    flex: 0 0 auto;
    width: auto;
  }
}

.section-front3 .section-products-used .used-card {
  border: 1px solid #e5e7eb;
  border-radius: 4px;
  background: #fff;
  overflow: hidden;
  transition: box-shadow 0.2s, transform 0.2s;
  margin-bottom: 0;
}

.section-front3 .section-products-used .used-card:hover {}

.section-front3 .section-products-used .used-card .thumbnail-top {
  padding: 16px 16px 0;
}

.section-front3 .section-products-used .used-card .thumbnail-top .product-thumbnail {
  display: block;
  text-align: center;
  margin-bottom: 0;
}

.section-front3 .section-products-used .used-card .thumbnail-top img {
  max-width: 100%;
  height: auto;
  max-height: 95px;
  object-fit: contain;
}

.section-front3 .section-products-used .used-card .used-body {
  padding: 0 12px;
}

.section-front3 .section-products-used .used-card .used-body .used-title {
  font-size: 16px;
  line-height: 22px;
  font-weight: 600;
  margin: 0 0 8px;
}

.section-front3 .section-products-used .used-card .used-body .used-title a {
  color: #111827;
  text-decoration: none;
}

.section-front3 .section-products-used .used-card .used-body .used-meta .row-line {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 4px 0;
}

.section-front3 .section-products-used .used-card .used-body .used-meta .row-line .label {
  color: rgba(136, 136, 136, 0.6);
  font-size: 10px;
  line-height: 12px;
}

.section-front3 .section-products-used .used-card .used-body .used-meta .row-line .value {
  color: rgba(0, 0, 0, 0.6);
  font-size: 10px;
  line-height: 12px;
}

.section-front3 .section-products-used .used-card {
  /* pasek „Stan …" */
}

.section-front3 .section-products-used .used-card .used-condition {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 8px 6px;
  margin: 0 6px;
  margin-bottom: 8px;
}

.section-front3 .section-products-used .used-card .used-condition .cond-label {
  font-size: 10px;
  line-height: 12px;
  color: rgba(24, 48, 48, 0.6);
}

.section-front3 .section-products-used .used-card .used-condition .cond-value {
  font-size: 10px;
  line-height: 12px;
  color: rgba(24, 48, 48, 0.6);
}

.section-front3 .section-products-used .used-card .used-condition.cond--green {
  background: #eaf7ed;
}

.section-front3 .section-products-used .used-card .used-condition.cond--green .cond-value {
  color: #14532d;
}

.section-front3 .section-products-used .used-card .used-condition.cond--blue {
  background: #eaf2ff;
}

.section-front3 .section-products-used .used-card .used-condition.cond--blue .cond-value {
  color: #1e3a8a;
}

.section-front3 .section-products-used .used-card .used-condition.cond--gray {
  background: #f3f4f6;
}

.section-front3 .section-products-used .used-card .used-condition.cond--gray .cond-value {
  color: #111827;
}

.section-front3 .section-products-used .used-card {
  /* Presta potrafi dwa razy wstrzyknąć wishlist – chowamy na tej karcie */
}

.section-front3 .section-products-used .used-card .wishlist-button-add {
  display: none !important;
}

.section-front3 {
  /* RZĄD Z PRZYCISKIEM (na prawo jak na screenie) */
}

.section-front3 .section-products-used+.row.mt-3 .col-12 {
  text-align: right;
  padding: 0 16px 16px;
}

.section-front3 .section-products-used+.row.mt-3 .col-12 .btn {
  min-width: 240px;
}

.section-front3 {
  /* RESPONSYWNOŚĆ */
}

@media (max-width: 991.98px) {
  .section-front3 .single2 {
    padding-left: 16px;
  }

  .section-front3 .section-products-used .used-card .thumbnail-top img {
    max-height: 135px;
  }

  .section-front3 .section-products-used+.row.mt-3 .col-12 {
    text-align: left;
  }
}

@media (max-width: 785.98px) {
  .section-front3 {
    margin-top: 8px;
    padding-bottom: 64px;
  }

  .section-front3 .single1 .single1-sz img {
    display: none;
  }

  .section-front3 .single2 {
    padding-left: 20px;
    padding-right: 16px;
  }

  .section-front3 .single2 .desc1 {
    padding-top: 32px;
  }

  .section-front3 .single2 .desc1 h3 {
    color: var(--text-color-base-primary, #000);
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
  }

  .section-front3 .single2 .desc1 h3 strong {
    color: var(--text-color-base-primary, #000);
    /* Text/Title <str> */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }

  .section-front3 .single2 .desc1 p {
    color: var(--text-color-base-secondary, #595959);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }


  .section-front3 .section-products-used .products-button-wrapper {
    width: 100%;
  }

  .section-front3 .section-products-used .products-button-wrapper .btn {
    width: 100%;
    color: var(--text-color-base-primary, #000);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
    border-radius: var(--radius-x-small, 4px);
    border: 1px solid var(--color-neutral-8-base, #B2B2B2);
  }

  .section-front3 .section-products-used .used-card .thumbnail-top img {
    max-height: 135px;
  }

  .section-front3 .section-products-used .product-miniature.js-product-miniature {
    max-width: 180px;
    margin: 0 !important;
  }

  .mycategories .row.g-3 {
    margin-left: 0;
    margin-right: 0;
  }

  .tcp-two-cols .single-row {
    display: flex;
    flex-direction: column;
    margin-left: 0;
    margin-right: 0;
  }

  .tcp-two-cols .single-row>[class*=col-] {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 16px;
  }

  .tcp-two-cols .single-row>[class*=col-]:last-child {
    margin-bottom: 0;
  }

  .tcp-two-cols .tcp-card {
    padding: 32px 20px;
    height: 100%;
  }

  .tcp-two-cols .tcp-card>.row {
    flex-direction: column;
  }

  .mycategories .row.g-3:first-child>.col-12 {
    margin-bottom: 24px;
  }

  .mycategories .mycategories-scrollable {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    padding-bottom: 16px;
    margin-left: 0;
    margin-right: 0;
  }

  .mycategories .mycategories-scrollable::-webkit-scrollbar {
    height: 4px;
  }

  .mycategories .mycategories-scrollable::-webkit-scrollbar-track {
    background: transparent;
  }

  .mycategories .mycategories-scrollable::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .mycategories .mycategories-scrollable>.single-cat {
    flex: 0 0 auto;
    flex-shrink: 0;
    padding-left: 4px !important;
    padding-right: 4px !important;
    max-width: none;
    margin-bottom: 0;
    margin-right: 8px !important;
    min-width: 140px;
  }

  .mycategories .mycategories-scrollable>.single-cat:first-of-type {
    padding-left: 0 !important;
  }

  .mycategories .mycategories-scrollable>.single-cat:last-child {
    margin-right: 0 !important;
  }

  .mycategories .cat-tile {
    flex-direction: column;
    align-items: flex-start;
    padding: 16px;
    min-height: auto;
    height: 100%;
    gap: 12px;
  }

  .mycategories .cat-tile__icon {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    margin-bottom: 0;
  }

  .mycategories .cat-tile__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .mycategories .cat-tile__corner {
    top: 8px;
    right: 8px;
  }

  .mycategories .mycategories-button-wrapper {
    display: flex;
    width: 100%;
    margin-top: 16px;
  }

  .mycategories .mycategories-button-wrapper .btn {
    width: 100%;
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
    display: flex;
    padding: 12px 20px;
    align-items: center;
    gap: 24px;
    flex: 1 0 0;
    align-self: stretch;
    border-radius: var(--radius-x-small, 4px);
    background: var(--color-neutral-10, #E5E5E5);
    border: none;
    justify-content: center;
  }

  .mycategories .mycategories-button-wrapper .btn:hover {
    border-radius: 4px;
    border: 1px solid var(--color-neutral-8-base, #B2B2B2);
    color: var(--text-color-base-primary, #000);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }
}

/* Mycategories - Przycisk "Pokaż wszystkie" jako kafelek */
.mycategories .single-cat--show-all {
  display: flex !important;
}

/* Ukryj przycisk na całą szerokość na desktop */
.mycategories .single-cat--show-all-fullwidth {
  display: none !important;
}

.mycategories .single-cat--show-all .cat-tile.cat-tile--show-all {
  color: var(--text-color-base-primary, #000) !important;
  text-align: center !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  border-radius: var(--radius-x-small, 4px) !important;
  background: var(--color-neutral-10, #E5E5E5) !important;
  border: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 100% !important;
  text-decoration: none !important;
  transition: background 0.2s ease !important;
  padding: 24px 16px !important;
  width: 100% !important;
}

.mycategories .single-cat--show-all .cat-tile.cat-tile--show-all:hover {
  background: var(--color-neutral-10, #E5E5E5) !important;
  text-decoration: none !important;
  transform: none !important;
}

.mycategories .single-cat--show-all .cat-tile.cat-tile--show-all .cat-tile__name {
  color: var(--text-color-base-primary, #000) !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  text-align: center !important;
  margin: 0 !important;
  width: auto !important;
}

.mycategories .single-cat--show-all .cat-tile.cat-tile--show-all .cat-tile__corner {
  display: none !important;
}

.mycategories .single-cat--show-all .cat-tile.cat-tile--show-all .cat-tile__corner svg {
  display: none !important;
}

.mycategories .single-cat--show-all .cat-tile.cat-tile--show-all .cat-tile__corner svg path {
  display: none !important;
}

@media (max-width: 767.98px) {

  /* Ukryj przycisk "Show all" w siatce na mobile */
  .mycategories .single-cat--show-all-inline {
    display: none !important;
  }

  /* Pokaż przycisk "Show all" na całą szerokość pod kategoriami */
  .mycategories .single-cat--show-all-fullwidth {
    display: block !important;
    width: 100% !important;
    margin-top: 0 !important;
  }

  .mycategories .cat-tile--show-all-fullwidth {
    color: var(--text-color-base-primary, #000) !important;
    text-align: center !important;
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora) !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 20px !important;
    /* 142.857% */
    border-radius: var(--radius-x-small, 4px) !important;
    background: var(--color-neutral-10, #E5E5E5) !important;
    display: flex !important;
    padding: 12px 16px !important;
    align-items: center !important;
    gap: 24px !important;
    flex: 1 0 0 !important;
    align-self: stretch !important;
    width: 100% !important;
    border: none !important;
    text-decoration: none !important;
    transition: background 0.2s ease !important;
    min-height: auto !important;
  }

  .mycategories .cat-tile--show-all-fullwidth .cat-tile__name {
    color: var(--text-color-base-primary, #000) !important;
    font-family: var(--font-family-family-primary, Sora) !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 20px !important;
    text-align: center !important;
    margin: 0 !important;
  }

  .mycategories .cat-tile--show-all-fullwidth .cat-tile__corner {
    display: none !important;
  }

  .mycategories .single-cat--show-all .cat-tile.cat-tile--show-all {
    padding: 20px 16px !important;
    min-height: 120px !important;
  }

}

@media (max-width: 575.98px) {
  .section-front3 .section-products-used .row {
    margin-left: -6px;
    margin-right: -6px;
  }

  .section-front3 .section-products-used .product {
    padding-left: 6px;
    padding-right: 6px;
  }
}

.section-front3 .single-button {
  text-align: right;
}

.section-front3 .single-button a {
  border: 1px solid rgb(178, 178, 178);
  color: rgb(0, 0, 0);
  padding: 12px 24px;
  border-radius: 4px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  letter-spacing: 0;
}

.section-front4 {
  padding-top: 128px;
  padding-bottom: 96px;
}

.section-front4 .single1 {
  margin-bottom: 32px;
}

.section-front4 h3 {
  font-size: 40px;
  line-height: 54px;
  font-weight: 400;
  letter-spacing: 0;
  margin-bottom: 20px;
}

.section-front4 p {
  font-size: 18px;
  line-height: 165%;
  letter-spacing: -0.5;
}

.mycategories {
  background-color: rgb(250, 250, 250);
  padding-top: 30px;
  padding-bottom: 30px;
}

@media (max-width: 785.98px) {
  .mycategories {
    padding-bottom: 64px;
  }
}

.mycategories .single1 {
  max-width: 718px;
  margin: 0 auto;
  margin-bottom: 48px;
  text-align: center;
}

@media (max-width: 785.98px) {
  .mycategories .single1 {
    margin-bottom: 32px;
  }
}

.mycategories .single1 h4 {
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0;
  color: rgb(0, 0, 0);
  margin-bottom: 0;
}

@media (max-width: 785.98px) {
  .mycategories .single1 h4 {
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }
}

.mycategories .cat-tile {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0 16px;
  border-radius: 12px;
  background: #fff;
  position: relative;
  text-decoration: none;
  transition: all 0.2s ease;
  min-height: 92px;
}

.mycategories .cat-tile:hover {
  border-color: #ddd;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
  transform: translateY(-1px);
}

.mycategories .cat-tile:hover .cat-tile__corner {
  opacity: 1;
}

.mycategories .cat-tile__icon {
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mycategories .cat-tile__icon img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.mycategories .cat-tile__name {
  color: rgb(0, 0, 0);
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  margin-left: 24px;
}

.mycategories .cat-tile__name p {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  /* Heading/Head-XS */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  /* 133.333% */
  margin: 0;
  padding: 0;
}

@media (max-width: 785.98px) {
  .mycategories .cat-tile__name {
    margin-left: 0;
    width: 100%;
    text-align: left;
  }
}

.mycategories .cat-tile__name--all {
  font-weight: 700;
}

.mycategories .cat-tile__corner {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #eaeaea;
  border-radius: 6px;
  background: #fff;
  opacity: 0.85;
  background-color: #E3D9CF;
}

.mycategories .cat-tile__corner svg {
  fill: #9e9e9e;
}

.mycategories .cat-tile--all {
  justify-content: center;
  background: #f3f4f6;
  border-color: #f0f0f0;
  height: 100%;
}

.mycategories .cat-tile--all:hover {
  background: #eceff3;
}

.mycategories .row.g-3>[class*=col-] {
  padding-left: 4px;
  padding-right: 4px;
}

.mycategories .row.mycategories-scrollable {
  margin-left: -4px !important;
  margin-right: -4px !important;
}

.mycategories .row.mycategories-scrollable>.single-cat {
  padding-left: 4px !important;
  padding-right: 4px !important;
  margin-right: 0px !important;
}

.mycategories .row.mycategories-scrollable>.single-cat:last-child {
  margin-right: 0 !important;
}

.mycategories .single-cat {
  margin-bottom: 24px;
  margin-top: 0;
}

.tcp-two-cols {
  background-color: rgb(250, 250, 250);
  padding-bottom: 128px;
}

.tcp-two-cols .tcp-card {
  background: #fff;
  border: 1px solid rgb(245, 245, 245);
  border-radius: 8px;
  padding: 32px;
}

.tcp-two-cols .tcp-card>.row {
  align-items: stretch;
}

.tcp-two-cols .row.single-row>[class*="col-"]:not(:last-child) {
  margin-bottom: 16px;
}

.tcp-two-cols {
  /* --- LEWA KOLUMNA: produkt --- */
}

.tcp-two-cols .tcp-product {
  padding-right: 24px;
}

.tcp-two-cols .tcp-product__link {
  position: relative;
  /* dla strzałki */
  display: flex;
  flex-direction: column;
  /* META -> FOTO */
  gap: 10px;
  text-decoration: none;
  color: inherit;
}

.tcp-two-cols .tcp-product__meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tcp-two-cols .tcp-product__name {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.tcp-two-cols .tcp-product .tcp-price {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}

.tcp-two-cols .tcp-product .tcp-price__now {
  color: rgb(136, 136, 136);
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  font-weight: 400;
}

.tcp-two-cols .tcp-product .tcp-price__old {
  color: rgb(136, 136, 136);
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  font-weight: 400;
  display: none;
}

.tcp-two-cols .tcp-product .tcp-price__badge {
  position: relative;
  top: -2px;
  font-size: 12px;
  padding: 2px 6px;
  line-height: 16px;
  letter-spacing: 0;
  font-weight: 400;
  border-radius: 6px;
  background-color: rgb(254, 224, 224);
  color: rgb(196, 20, 8);
}

.tcp-two-cols .tcp-product .tcp-price__note {
  display: none !important;
}

.tcp-two-cols .tcp-product .tcp-price {
  /* chowamy VAT */
}

.tcp-two-cols .tcp-product__photo {
  overflow: hidden;
}

.tcp-two-cols .tcp-product__photo img {
  width: 100%;
  height: 100%;
  display: block;
}

.tcp-two-cols .tcp-product {
  /* strzałka w prawym dolnym rogu */
}

.tcp-two-cols .tcp-product__arrow {
  position: absolute;
  right: 6px;
  bottom: 6px;
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

@media (max-width: 785.98px) {
  .tcp-two-cols .tcp-product {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
    margin-top: 16px;
    order: 2;
  }

  .tcp-two-cols .tcp-product__arrow {
    right: 0;
    bottom: 0;
  }
}

.tcp-two-cols .tcp-product__link:hover .tcp-two-cols .tcp-product__arrow {
  transform: translate(1px, -1px);
}

.tcp-two-cols {
  /* --- PRAWA KOLUMNA: kategoria + podkategorie --- */
}

.tcp-two-cols .tcp-cat {
  border-left: 1px solid rgb(229, 229, 229);
  padding-left: 24px;
  display: flex;
  flex-direction: column;
}

.tcp-two-cols .tcp-cat__title {
  margin: 0 0 10px;
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0;
  color: rgb(0, 0, 0);
  margin-bottom: 24px;
}

@media (max-width: 785.98px) {
  .tcp-two-cols .tcp-cat__title {
    color: var(--text-color-base-primary, #000);
    /* Text/Title <str> */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }
}

.tcp-two-cols .tcp-cat__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tcp-two-cols .tcp-cat__list li a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  line-height: 24px;
  font-size: 16px;
  text-decoration: none;
  color: rgb(0, 0, 0);
  padding-left: 4px;
  padding-right: 6px;
  border-radius: 4px;
  transition: background 0.15s ease;
  margin-bottom: 8px;
}

.tcp-two-cols .tcp-cat__list li a .b {
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: rgb(228, 253, 113);
  border: 1px solid rgb(228, 253, 113);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 18px;
  transform: translateY(-1px);
}

.tcp-two-cols .tcp-cat__list li a .b img {
  width: 12px;
  height: 12px;
  display: block;
}

.tcp-two-cols .tcp-cat__list li a .l {
  padding: 0;
  background: transparent;
  border: 0;
  color: inherit;
}

.tcp-two-cols .tcp-cat__list li a:hover {
  background: rgb(243, 239, 234);
}

.tcp-two-cols .tcp-cat__list li a {
  /* tło na hover */
}

.tcp-two-cols .tcp-cat {
  /* see-all na samym dole kolumny */
}

.tcp-two-cols .tcp-cat .tcp-seeall {
  margin-top: auto;
  text-align: right;
  padding-top: 10px;
}

.tcp-two-cols .tcp-cat .tcp-seeall a {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 125% */
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-color: var(--text-color-base-tetriary, #888);
  text-decoration-thickness: 7%;
  /* 1.12px */
  text-underline-offset: 60%;
  /* 9.6px */
  text-underline-position: from-font;
}

.tcp-two-cols .tcp-cat .tcp-seeall a:hover {
  color: #111;
  text-decoration: underline;
}

.tcp-two-cols {
  /* RWD: separator pionowy -> poziomy */
}

@media (max-width: 991.98px) {
  .tcp-two-cols .tcp-cat {
    border-left: 0;
    border-top: 1px solid #ededed;
    padding-left: 0;
    padding-top: 12px;
    margin-top: 12px;
  }
}

@media (max-width: 785.98px) {
  .tcp-two-cols {
    padding-bottom: 64px;
  }

  .tcp-two-cols .tcp-cat {
    border-left: 0;
    border-top: none;
    border-bottom: 1px solid rgb(229, 229, 229);
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 32px;
    margin-bottom: 16px;
    margin-top: 0;
    order: 1;
  }

  .tcp-two-cols .tcp-cat__list {
    gap: 4px;
  }

  .tcp-two-cols .tcp-cat__list li a {
    color: var(--text-color-base-primary, #000);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .tcp-two-cols .tcp-cat .tcp-seeall {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 125% */
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-color: var(--text-color-base-tetriary, #888);
    text-decoration-thickness: 7%;
    /* 1.12px */
    text-underline-offset: 60%;
    /* 9.6px */
    text-underline-position: from-font;
    text-align: center;
    padding-top: 18px;
  }

  .tcp-two-cols .tcp-product__name {
    color: var(--text-color-base-primary, #000);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .tcp-two-cols .tcp-product .tcp-price__now {
    color: var(--text-color-base-tetriary, #888);
    text-align: right;
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }
}

.sec-advisor {
  position: relative;
  overflow: hidden;
  padding-top: 70px;
  padding-bottom: 70px;
}

.sec-advisor::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(1200px 700px at 18% 22%, rgb(252, 250, 248) 0%, rgba(252, 250, 248, 0) 60%);
  background-color: #ffffff;
  z-index: -1;
}

.sec-advisor .sa-number {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  height: 28px;
  padding: 0 10px;
  font-weight: 800;
  font-size: 14px;
  line-height: 20px;
  background: #eae4dd;
  border-radius: 0;
  padding: 4px 16px;
  margin-bottom: 36px;
}

.sec-advisor .sa-number::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 8px;
  height: 8px;
  left: -4px;
  bottom: -4px;
  background: #eae4dd;
  border-radius: 0;
}

@media (max-width: 576px) {
  .sec-advisor .sa-number {
    min-width: 40px;
    height: 26px;
    font-size: 13px;
  }

  .sec-advisor .sa-number::after {
    width: 16px;
    height: 16px;
    left: -9px;
    bottom: -6px;
  }
}

.sec-advisor .sa-title {
  margin-bottom: 36px;
}

.sec-advisor .sa-title h4 {
  margin-bottom: 0;
  font-size: 32px;
  letter-spacing: 0;
  color: rgb(0, 0, 0);
  font-weight: 400;
}

.sec-advisor .sa-text {
  color: rgb(0, 0, 0);
  font-size: 18px;
  line-height: 165%;
  letter-spacing: -0.5%;
  margin-bottom: 72px;
}

.sec-advisor .sa-text p {
  color: rgb(0, 0, 0);
  font-size: 18px;
  line-height: 165%;
  letter-spacing: -0.5%;
  margin-bottom: 12px;
}

.sec-advisor .sa-text strong,
.sec-advisor .sa-text b {
  font-weight: 600;
}

.sec-advisor .sa-btn {
  display: inline-block;
}

.sec-advisor .sa-btn a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border: 1px solid #dcd5cc;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.6);
  color: #111;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.sec-advisor .sa-btn a:hover {
  background: #f8f5f1;
  border-color: #cfc7bd;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transform: translateY(-1px);
}

.sec-advisor .sa-btn a:active {
  transform: translateY(0);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

.sec-advisor .sa-btn a:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.08), 0 0 0 6px rgba(234, 228, 221, 0.5);
}

.sec-advisor .sa-undertext {
  margin-bottom: 100px;
}

.sec-advisor .sa-undertext p {
  color: rgb(89, 89, 89);
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 0;
}

.sec-advisor .sa-cta {
  border: 1px solid rgb(211, 196, 180);
  border-radius: 12px;
  padding: 10px 14px;
  width: 100%;
  background: rgba(255, 255, 255, 0.6);
  transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
  gap: 14px;
  padding-left: 12px;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-right: 24px;
  min-height: 80px;
  max-width: 480px;
}

.sec-advisor .sa-cta:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
  transform: translateY(-1px);
}

.sec-advisor .sa-cta-avatars {
  display: flex;
  align-items: center;
  gap: 8px;
}

.sec-advisor .sa-ava {
  position: relative;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.06);
  background: #fff;
}

.sec-advisor .sa-ava img {
  width: 56px;
  object-fit: cover;
  display: block;
}

.sec-advisor .sa-ava p {
  margin-bottom: 0;
}

.sec-advisor .sa-ava::after {
  content: "T";
  position: absolute;
  right: -4px;
  bottom: -4px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #d7f2b9;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: #1a1f2e;
  display: none;
}

.sec-advisor .sa-cta-text p {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 100%;
  color: rgb(0, 0, 0);
  letter-spacing: 0;
  margin-bottom: 0;
}

.sec-advisor .sa-cta-text>*:first-child {
  font-weight: 400;
  margin-bottom: 6px;
}

.sec-advisor .sa-cta-text>*:last-child {
  font-size: 12px;
  color: rgb(136, 136, 136);
  line-height: 16px;
}

.sec-advisor .sa-cta-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  margin-left: auto;
  color: rgb(0, 0, 0);
}

@media (max-width: 576px) {
  .sec-advisor .sa-ava {
    width: 40px;
    height: 40px;
    border-radius: 9px;
  }
}

.sec-advisor .sa-media {
  border-radius: 14px;
  overflow: hidden;
  position: relative;
}

.sec-advisor .sa-media .sa-media-img img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
  max-width: 555px;
}

.sec-advisor .sa-badges {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.sec-advisor .sa-badge {
  background: rgba(255, 255, 255, 0.88);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 10px;
  padding: 10px 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  color: #111;
}

@media (max-width: 991.98px) {
  .sec-advisor .sa-badges {
    position: static;
    margin-top: 12px;
  }

  .sec-advisor .sa-media {
    overflow: visible;
  }
}

@media (max-width: 785.98px) {
  .sec-advisor-wrapper {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    gap: 0;
  }

  .sec-advisor-wrapper::-webkit-scrollbar {
    height: 4px;
  }

  .sec-advisor-wrapper::-webkit-scrollbar-track {
    background: transparent;
  }

  .sec-advisor-wrapper::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .sec-advisor {
    flex: 0 0 90%;
    max-width: 90%;
    min-width: 0;
    padding-left: 8px;
    padding-right: 8px;
    padding-top: 64px;
    padding-bottom: 32px;
    flex-shrink: 0;
    background: var(--color-brand-two-11, #F8F5F2);
    position: relative;
  }

  .sec-advisor .container-fluid {
    position: relative;
  }

  .sec-advisor .container-fluid::after {
    content: '';
    position: absolute;
    right: -8px;
    top: 0;
    bottom: 0;
    width: 1px;
    background: var(--color-brand-two-6-base, #D3C4B4);
  }

  .sec-advisor:last-of-type .container-fluid::after {
    display: none;
  }

  .sec-advisor .single {
    display: flex;
    flex-direction: column;
  }

  .sec-advisor .single>.col-12.col-lg-6:first-child {
    order: 2;
  }

  .sec-advisor .single>.col-12.col-lg-6:last-child {
    order: 1;
    margin-top: 0;
  }

  .sec-advisor .sa-media .sa-media-img img {
    aspect-ratio: 3 / 4;
    object-fit: cover;
  }

  .sec-advisor .sa-number {
    display: none;
  }

  .sec-advisor .sa-title {
    margin-bottom: 20px;
  }

  .sec-advisor .sa-title h4 {
    color: var(--text-color-base-primary, #000);
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    /* 140% */
  }

  .sec-advisor .sa-text {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 4px;
  }

  .sec-advisor .sa-text p {
    color: var(--text-color-base-primary, #000);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
    margin-bottom: 4px;
  }

  .sec-advisor .sa-text p strong {
    color: var(--text-color-base-primary, #000);
    /* Text/Body II<str> */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
  }

  .sec-advisor .sa-cta {
    background-color: transparent;
    padding-left: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .sec-advisor .sa-ava {
    width: 48px;
    height: 48px;
  }
}

/* ====== DUO SECTION (1:1) ====== */
.sec-duo, .ec-duo{
  padding-top: 128px;
  padding-bottom: 92px;
}

.sec-duo .single-title, .ec-duo .single-title{
  text-align: center;
  margin-bottom: 48px;
}

.sec-duo .single-title p, .ec-duo .single-title p{
  font-size: 28px;
  line-height: 35px;
  font-weight: 400;
  letter-spacing: 0;
  color: rgb(0, 0, 0);
  margin-bottom: 0;
}

@media (max-width: 785.98px) {
  .sec-duo, .ec-duo{
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .sec-duo .single-title, .ec-duo .single-title{
    margin-top: 0;
    margin-bottom: 32px;
  }

  .sec-duo .single-title p, .ec-duo .single-title p{
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    /* 140% */
  }
}

.sec-duo .duo-left, .ec-duo .duo-left{
  position: relative;
  background: rgb(228, 253, 113);
  color: #0c1609;
  border-radius: 4px;
  padding: 56px;
  overflow: visible;
}

.sec-duo .duo-left .duo-left-decoration-wrapper, .ec-duo .duo-left .duo-left-decoration-wrapper{
  display: block;
  position: absolute;
  left: -25px;
  bottom: -25px;
  z-index: 1;
  pointer-events: none;
}

.sec-duo .duo-left .duo-left-decoration-wrapper .duo-left-decoration-mobile, .ec-duo .duo-left .duo-left-decoration-wrapper .duo-left-decoration-mobile{
  display: none;
}

.sec-duo .duo-left .deco, .ec-duo .duo-left .deco{
  position: absolute;
  background: rgb(228, 253, 113);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
}

.sec-duo .duo-left, .ec-duo .duo-left{
  /* ↓ wszystko kotwiczone do dołu */
}

.sec-duo .duo-left .deco-col, .ec-duo .duo-left .deco-col{
  left: -12px;
  bottom: 96px;
  width: 26px;
  height: 140px;
}

.sec-duo .duo-left .deco-corner, .ec-duo .duo-left .deco-corner{
  left: -12px;
  bottom: 60px;
  width: 26px;
  height: 26px;
}

.sec-duo .duo-left .deco-foot, .ec-duo .duo-left .deco-foot{
  left: 18px;
  bottom: -12px;
  width: 26px;
  height: 26px;
}

.sec-duo .duo-left .deco-ledge, .ec-duo .duo-left .deco-ledge{
  left: 74px;
  bottom: -12px;
  width: 98px;
  height: 26px;
}

.sec-duo .duo-left .duo-text, .ec-duo .duo-left .duo-text{
  margin-bottom: 136px;
}

.sec-duo .duo-left .duo-text h5, .ec-duo .duo-left .duo-text h5{
  color: rgb(0, 0, 0);
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  margin-bottom: 24px;
  letter-spacing: 0;
}

.sec-duo .duo-left .duo-text p, .ec-duo .duo-left .duo-text p{
  color: rgb(89, 89, 89);
  font-weight: 400;
  font-size: 18px;
  line-height: 165%;
  letter-spacing: -0.5%;
}

.sec-duo .duo-left, .ec-duo .duo-left{
  /* LEFT BOTTOM: AVATARS + CTA + NOTE */
}

.sec-duo .duo-left .duo-bottom, .ec-duo .duo-left .duo-bottom{
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto;
  gap: 14px 24px;
  margin-top: 24px;
}

.sec-duo .duo-left .duo-bottom .avatars, .ec-duo .duo-left .duo-bottom .avatars{
  display: flex;
  gap: 6px;
}

.sec-duo .duo-left .duo-bottom .avatar, .ec-duo .duo-left .duo-bottom .avatar{
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 4px;
  overflow: hidden;
  background: #f3f3f3;
  box-shadow: inset 0 0 0 1px #e9e9e9;
}

.sec-duo .duo-left .duo-bottom .avatar p, .ec-duo .duo-left .duo-bottom .avatar p{
  margin-bottom: 0;
}

.sec-duo .duo-left .duo-bottom .avatar img, .ec-duo .duo-left .duo-bottom .avatar img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}

.sec-duo .duo-left .duo-bottom .avatar__badge, .ec-duo .duo-left .duo-bottom .avatar__badge{
  position: absolute;
  right: -2px;
  bottom: -2px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e4fd71;
  border: 1px solid #e6e6e6;
  display: grid;
  place-items: center;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.sec-duo .duo-left .duo-bottom .avatar__badge img, .ec-duo .duo-left .duo-bottom .avatar__badge img{
  width: 12px;
  height: 12px;
}

.sec-duo .duo-left .duo-bottom .duo-avatars, .ec-duo .duo-left .duo-bottom .duo-avatars{
  display: flex;
  gap: 10px;
}

.sec-duo .duo-left .duo-bottom .duo-ava, .ec-duo .duo-left .duo-bottom .duo-ava{
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.06);
  background: #fff;
}

.sec-duo .duo-left .duo-bottom .duo-ava img, .ec-duo .duo-left .duo-bottom .duo-ava img{
  width: 56px;
  object-fit: cover;
  display: block;
}

.sec-duo .duo-left .duo-bottom .duo-ava::after, .ec-duo .duo-left .duo-bottom .duo-ava::after{
  content: "";
  position: absolute;
  right: -3px;
  bottom: -3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #d7f2b9;
  border: 1px solid #97d26b;
}

.sec-duo .duo-left .btn-dark1, .ec-duo .duo-left .btn-dark1{
  text-align: center;
}

.sec-duo .duo-left .btn-dark1.btn-mobile, .ec-duo .duo-left .btn-dark1.btn-mobile{
  display: none;
}

.sec-duo .duo-left .btn-dark1 p, .ec-duo .duo-left .btn-dark1 p{
  margin-bottom: 0;
  color: rgb(255, 255, 255);
  font-size: 16px;
  line-height: 24px;
}

.sec-duo .duo-left .btn-dark1 a, .ec-duo .duo-left .btn-dark1 a{
  display: flex;
  align-items: center;
  margin: 0 auto;
  background: #162b2b;
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  text-decoration: none;
  font-weight: 400;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  padding-left: 24px;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-right: 24px;
  border-radius: 4px;
  max-width: 293px;
}

.sec-duo .duo-left .btn-dark1 .ne-arrow, .ec-duo .duo-left .btn-dark1 .ne-arrow{
  width: clamp(22px, 2.4vw, 34px);
  height: auto;
  color: #e6f86e;
  /* kolor strzałki */
  stroke: rgb(178, 178, 178);
  fill: none;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: 0 0 auto;
  height: 16px;
  width: 16px;
  margin-left: 13px;
}

.sec-duo .duo-left .btn-dark1 a:hover, .ec-duo .duo-left .btn-dark1 a:hover{
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
}

.sec-duo .duo-left .btn-dark1 a:active, .ec-duo .duo-left .btn-dark1 a:active{
  transform: translateY(0);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.18);
}

.sec-duo .duo-left .btn-dark1 a:focus-visible, .ec-duo .duo-left .btn-dark1 a:focus-visible{
  outline: none;
  box-shadow: 0 0 0 3px rgba(230, 248, 110, 0.55), 0 0 0 6px rgba(22, 43, 43, 0.7);
}

.sec-duo .duo-left .btn-dark1 .duo-note, .ec-duo .duo-left .btn-dark1 .duo-note{
  color: #727272;
  font-size: 12px;
  line-height: 16px;
  margin-top: 8px;
}

.sec-duo .duo-left .btn-dark1 .duo-note p, .ec-duo .duo-left .btn-dark1 .duo-note p{
  color: #727272;
  font-size: 12px;
  line-height: 16px;
  margin-top: 8px;
}

.sec-duo, .ec-duo{
  /* RIGHT CARD */
}

.sec-duo .duo-right, .ec-duo .duo-right{
  background: rgb(24, 48, 48);
  color: #eaf5f2;
  border: 1px solid rgb(24, 48, 48);
  border-radius: 4px;
  padding: 56px;
  height: 100%;
}

.sec-duo .duo-right .duo-text, .ec-duo .duo-right .duo-text{
  margin-bottom: 80px;
}

.sec-duo .duo-right .duo-text h5, .ec-duo .duo-right .duo-text h5{
  color: rgb(255, 255, 255);
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  margin-bottom: 24px;
  letter-spacing: 0;
}

.sec-duo .duo-right .duo-text p, .ec-duo .duo-right .duo-text p{
  color: rgb(178, 178, 178);
  font-weight: 400;
  font-size: 18px;
  line-height: 165%;
  letter-spacing: -0.5%;
}

/* Tytuł w kolumnie duo (finansowanie) — h3 zamiast h5 w szablonie */
.sec-duo .duo-right .duo-text.duo-text--light h3,
.ec-duo .duo-right .duo-text.duo-text--light h3 {
  color: #ffffff;
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  margin: 0 0 24px 0;
  letter-spacing: 0;
}

.sec-duo .right-grid, .ec-duo .right-grid{
  margin-top: 12px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 18px 32px;
  align-items: end;
}

.sec-duo .rank-list, .ec-duo .rank-list{
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.sec-duo .rank-item, .ec-duo .rank-item{
  display: grid;
  grid-template-columns: 28px 1fr;
  align-items: center;
  column-gap: 12px;
  text-decoration: none;
  color: rgb(255, 255, 255);
}

.sec-duo .rank-item:hover, .ec-duo .rank-item:hover{
  color: rgb(255, 255, 255);
  text-decoration: none;
}

.sec-duo .rank-item p, .ec-duo .rank-item p{
  color: rgb(255, 255, 255);
  margin-bottom: 0;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0;
}

.sec-duo .ri-ico, .ec-duo .ri-ico{
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: #e6f86e;
  border: 1px solid #97d26b;
  text-align: center;
  padding-top: 3px;
}

.sec-duo .ri-label, .ec-duo .ri-label{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  /* odstęp między tekstem a strzałką */
  font-weight: 600;
  color: rgb(255, 255, 255);
  font-size: 14px;
  line-height: 20px;
}

.sec-duo .ri-ne, .ec-duo .ri-ne{
  width: 16px;
  height: 16px;
  stroke: rgba(234, 245, 242, 0.8);
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 0.15s ease, stroke 0.15s ease;
}

.sec-duo .rank-item:hover .ri-ne, .ec-duo .rank-item:hover .ri-ne{
  transform: translate(1px, -1px);
  stroke: #eaf5f2;
}

.sec-duo .btn-ghost1 a, .ec-duo .btn-ghost1 a{
  display: inline-flex;
  align-items: center;
  gap: 16px;
  border-radius: 4px;
  color: rgb(255, 255, 255);
  background: transparent;
  border: 1px solid #fff;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  padding: 16px 24px;
  transition: background 0.15s ease, transform 0.15s ease, border-color 0.15s ease;
  text-decoration: none;
}

.sec-duo .btn-ghost1 a p, .ec-duo .btn-ghost1 a p{
  margin-bottom: 0;
  color: rgb(255, 255, 255);
  font-size: 16px;
  line-height: 24px;
}

.sec-duo .btn-ghost1 a:hover, .ec-duo .btn-ghost1 a:hover{
  background: rgba(255, 255, 255, 0.08);
  transform: translateY(-1px);
}

@media (max-width: 1369.98px) {

  .sec-duo .duo-left,
  .ec-duo .duo-left,
  .sec-duo .duo-right,
  .ec-duo .duo-right {
    padding: 25px;
  }
}

@media (max-width: 991.98px) {
  .sec-duo .single1, .ec-duo .single1{
    padding-left: 28px;
  }

  .sec-duo .duo-left .duo-left-decoration-wrapper, .ec-duo .duo-left .duo-left-decoration-wrapper{
    width: 48px;
    height: 48px;
  }

  .sec-duo .duo-left .duo-left-decoration-wrapper .duo-left-decoration-desktop, .ec-duo .duo-left .duo-left-decoration-wrapper .duo-left-decoration-desktop{
    display: none;
  }

  .sec-duo .duo-left .duo-left-decoration-wrapper .duo-left-decoration-mobile, .ec-duo .duo-left .duo-left-decoration-wrapper .duo-left-decoration-mobile{
    display: block;
    width: 48px;
    height: 48px;
  }

  .sec-duo .right-grid, .ec-duo .right-grid{
    grid-template-columns: 1fr;
  }

  .sec-duo .right-col--btn, .ec-duo .right-col--btn{
    align-self: start;
  }

  .sec-duo .duo-left .deco-col, .ec-duo .duo-left .deco-col{
    bottom: 88px;
    height: 118px;
  }

  .sec-duo .duo-left .deco-ledge, .ec-duo .duo-left .deco-ledge{
    left: 66px;
    width: 86px;
  }

  .sec-duo .rank-list, .ec-duo .rank-list{
    gap: 0;
  }

  .sec-duo .rank-item, .ec-duo .rank-item{
    border-top: none;
    border-bottom: 1px solid var(--color-brand-one-2, #354D39);
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .sec-duo .rank-item:first-child, .ec-duo .rank-item:first-child{
    border-top: 1px solid var(--color-brand-one-2, #354D39);
  }

  .sec-duo .rank-item:last-child, .ec-duo .rank-item:last-child{
    border-bottom: 1px solid var(--color-brand-one-2, #354D39);
  }

  .sec-duo > .container-fluid > .row,
  .ec-duo > .container-fluid > .row{
    row-gap: 24px;
  }

  .sec-duo .duo-left .duo-left-decoration-wrapper,
  .ec-duo .duo-left .duo-left-decoration-wrapper,
  .sec-duo .duo-left .deco,
  .ec-duo .duo-left .deco{
    display: none !important;
  }

  .sec-duo .duo-left .duo-text,
  .ec-duo .duo-left .duo-text{
    margin-bottom: clamp(32px, 8vw, 64px);
  }
}

@media (min-width: 576px) and (max-width: 991.98px){
  .sec-duo .duo-left .duo-bottom,
  .ec-duo .duo-left .duo-bottom{
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    grid-template-rows: auto;
    column-gap: 20px;
    row-gap: 10px;
    align-items: start;
    margin-top: 24px;
  }

  .sec-duo .duo-left .duo-bottom > .card__main,
  .sec-duo .duo-left .duo-bottom > .scard__main,
  .ec-duo .duo-left .duo-bottom > .card__main,
  .ec-duo .duo-left .duo-bottom > .scard__main{
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }

  .sec-duo .duo-left .duo-bottom > .btn-dark1.btn-mobile,
  .sec-duo .duo-left .duo-bottom > .btn-dark1.btn-desktop,
  .ec-duo .duo-left .duo-bottom > .btn-dark1.btn-mobile,
  .ec-duo .duo-left .duo-bottom > .btn-dark1.btn-desktop{
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    width: 100%;
    min-width: 0;
  }

  .sec-duo .duo-left .duo-bottom .card__main,
  .ec-duo .duo-left .duo-bottom .card__main{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-desktop,
  .ec-duo .duo-left .duo-bottom .btn-dark1.btn-desktop{
    display: none !important;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile,
  .ec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile{
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    justify-self: stretch;
    box-sizing: border-box;
    text-align: left;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile a,
  .ec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile a{
    margin: 0 !important;
    width: 100%;
    max-width: none;
    box-sizing: border-box;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile .duo-note,
  .ec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile .duo-note{
    text-align: center;
    width: 100%;
  }

  .sec-duo .right-grid,
  .ec-duo .right-grid{
    align-items: start;
    justify-items: stretch;
    width: 100%;
  }

  .sec-duo .rank-cta,
  .ec-duo .rank-cta{
    width: 100%;
  }

  .sec-duo .rank-cta .btn-ghost1 a,
  .ec-duo .rank-cta .btn-ghost1 a{
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}

@media (max-width: 575.98px) {
  .container-fluid {
    padding-left: 20px;
    padding-right: 20px;
  }

  .sec-duo .single-title p, .ec-duo .single-title p{
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    /* 140% */
  }

  .sec-duo .duo-left, .ec-duo .duo-left{
    position: relative;
    display: flex;
    flex-direction: column;
    background: rgb(228, 253, 113);
    padding: 22px;
    margin-bottom: 0;
  }

  .sec-duo .duo-left .duo-text, .ec-duo .duo-left .duo-text{
    order: -1;
    margin-top: 0;
    margin-bottom: 64px;
  }

  .sec-duo .duo-left .duo-text h5, .ec-duo .duo-left .duo-text h5{
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 12px;
    color: var(--text-color-base-primary, #000);
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }

  .sec-duo .duo-left .duo-text p, .ec-duo .duo-left .duo-text p{
    color: var(--text-color-base-secondary, #595959);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .sec-duo .duo-left .duo-bottom, .ec-duo .duo-left .duo-bottom{
    order: 0;
    margin-top: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    background: transparent;
    padding: 0;
    width: 100%;
    box-sizing: border-box;
  }

  .sec-duo .duo-left .duo-bottom .scard__main,
  .sec-duo .duo-left .duo-bottom .card__main,
  .ec-duo .duo-left .duo-bottom .scard__main,
  .ec-duo .duo-left .duo-bottom .card__main{
    order: -1;
    margin-bottom: 0;
    position: relative;
    left: auto;
    top: auto;
    align-self: stretch;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
  }

  .sec-duo .duo-left .duo-bottom .scard__main .avatars,
  .sec-duo .duo-left .duo-bottom .card__main .avatars,
  .ec-duo .duo-left .duo-bottom .scard__main .avatars,
  .ec-duo .duo-left .duo-bottom .card__main .avatars{
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 8px;
  }

  .sec-duo .duo-left .duo-bottom .scard__main .avatars .avatar:nth-child(1),
  .sec-duo .duo-left .duo-bottom .card__main .avatars .avatar:nth-child(1),
  .ec-duo .duo-left .duo-bottom .scard__main .avatars .avatar:nth-child(1),
  .ec-duo .duo-left .duo-bottom .card__main .avatars .avatar:nth-child(1){
    display: block;
  }

  .sec-duo .duo-left .duo-bottom .scard__main .avatars .avatar:nth-child(2),
  .sec-duo .duo-left .duo-bottom .scard__main .avatars .avatar:nth-child(3),
  .sec-duo .duo-left .duo-bottom .card__main .avatars .avatar:nth-child(2),
  .sec-duo .duo-left .duo-bottom .card__main .avatars .avatar:nth-child(3),
  .ec-duo .duo-left .duo-bottom .scard__main .avatars .avatar:nth-child(2),
  .ec-duo .duo-left .duo-bottom .scard__main .avatars .avatar:nth-child(3),
  .ec-duo .duo-left .duo-bottom .card__main .avatars .avatar:nth-child(2),
  .ec-duo .duo-left .duo-bottom .card__main .avatars .avatar:nth-child(3){
    display: none;
  }

  /* Finansowanie: awatary jako bezpośrednie dzieci .scard__main / .card__main — wyśrodkowany rząd, bez nachodzenia */
  .financing-hero-wrapper .ec-duo .duo-left .duo-bottom .scard__main > .avatar,
  .financing-hero-wrapper .ec-duo .duo-left .duo-bottom .card__main > .avatar{
    margin-left: 0 !important;
    margin-right: 0 !important;
    flex-shrink: 0;
  }

  .financing-hero-wrapper .ec-duo .duo-left .duo-bottom .scard__main,
  .financing-hero-wrapper .ec-duo .duo-left .duo-bottom .card__main{
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .sec-duo .duo-left .duo-text h5, .ec-duo .duo-left .duo-text h5{
    padding-left: 0;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-desktop, .ec-duo .duo-left .duo-bottom .btn-dark1.btn-desktop{
    display: none;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile, .ec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile{
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    align-self: stretch;
    order: 1;
    margin-top: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile a,
  .ec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile a{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .sec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile .duo-note,
  .ec-duo .duo-left .duo-bottom .btn-dark1.btn-mobile .duo-note{
    text-align: center;
  }


  .sec-duo .duo-left .btn-dark1 a, .ec-duo .duo-left .btn-dark1 a{
    border-radius: 4px;
    border: 1px solid var(--background-color-brand-1-dark, #183030);
    background: var(--background-color-brand-1-dark, #183030);
    justify-content: space-between;
    width: 100%;
    max-width: 100%;
  }

  .sec-duo .duo-left .btn-dark1 p, .ec-duo .duo-left .btn-dark1 p{
    color: var(--text-color-dark-primary, #FFF);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .sec-duo .duo-left,
  .ec-duo .duo-left,
  .sec-duo .duo-right, .ec-duo .duo-right{
    padding: 32px 24px;
  }

  .sec-duo .duo-right .duo-text h5, .ec-duo .duo-right .duo-text h5{
    color: var(--text-color-dark-primary, #FFF);
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }

  .sec-duo .duo-right .duo-text.duo-text--light h3,
  .ec-duo .duo-right .duo-text.duo-text--light h3 {
    color: var(--text-color-dark-primary, #fff);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    margin: 0 0 16px 0;
    letter-spacing: 0;
  }

  .sec-duo .duo-right .duo-text, .ec-duo .duo-right .duo-text{
    margin-bottom: 48px;
  }

  .sec-duo .duo-right .duo-text p, .ec-duo .duo-right .duo-text p{
    color: var(--text-color-dark-secondary, #B2B2B2);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .sec-duo .rank-cta, .ec-duo .rank-cta{
    margin-top: 12px;
  }

  .sec-duo .btn-ghost1 a, .ec-duo .btn-ghost1 a{
    display: flex;
    text-align: left;
    width: 100%;
    padding: 16px 24px;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    align-self: stretch;
    border-radius: var(--radius-x-small, 4px);
    border: 1px solid var(--background-color-base, #FFF);
    color: var(--text-color-dark-primary, #FFF);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .sec-duo .btn-ghost1 a p, .ec-duo .btn-ghost1 a p{
    color: var(--text-color-dark-primary, #FFF);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .sec-duo .rank-list, .ec-duo .rank-list{
    gap: 0;
  }

  .sec-duo .rank-item, .ec-duo .rank-item{
    border-top: none;
    border-bottom: 1px solid var(--color-brand-one-2, #354D39);
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .sec-duo .rank-item:first-child, .ec-duo .rank-item:first-child{
    border-top: 1px solid var(--color-brand-one-2, #354D39);
  }

  .sec-duo .rank-item:last-child, .ec-duo .rank-item:last-child{
    border-bottom: 1px solid var(--color-brand-one-2, #354D39);
  }

  .sec-duo .duo-ava, .ec-duo .duo-ava{
    width: 44px;
    height: 44px;
  }
}

.stats-sec {
  margin-top: 32px;
  margin-bottom: 64px;
}

.stats-sec .stat-card {
  background: #fff;
  border: 1px solid rgb(229, 229, 229);
  border-radius: 4px;
  padding: 48px;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.stats-sec .stat-head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
}

.stats-sec .stat-head p {
  color: rgb(0, 0, 0);
  font-size: 24px;
  line-height: 32px;
  font-weight: 400;
  margin-bottom: 0;
}

.stats-sec .stat-head p strong {
  font-weight: 400;
  font-size: 48px;
  line-height: 58px;
}

.stats-sec .stat-text p {
  color: rgb(89, 89, 89);
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 0;
}

.stats-sec .stat-cta {
  margin-top: 56px;
}

.stats-sec .stat-cta p {
  margin-bottom: 0;
}

.stats-sec .stat-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  text-decoration: none;
  background: #fff;
  border: 1px solid rgb(0, 0, 0);
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0;
  color: rgb(0, 0, 0);
  padding: 12px 24px;
}

.stats-sec .stat-cta a:hover {
  background: #f6f6f6;
  border-color: #cfcfcf;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
}

.stats-sec .stat-cta a:active {
  transform: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

@media (max-width: 575.98px) {
  .stats-sec {
    margin-top: 24px;
    margin-bottom: 48px;
  }

  .stats-sec .g-4,
  .stats-sec .gy-4 {
    --bs-gutter-y: 8px;
  }

  .stats-sec .stat-card {
    padding: 24px;
  }

  .stats-sec .stat-head {
    margin-bottom: 8px;
  }

  .stats-sec .stat-head p {
    color: var(--text-color-base-primary, #000);
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
  }

  .stats-sec .stat-head p strong {
    color: var(--text-color-base-primary, #000);
    /* Heading/Head-L */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: 54px;
    /* 135% */
  }

  .stats-sec .stat-text p {
    color: var(--text-color-base-secondary, #595959);
    /* Text/Body */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .stats-sec .stat-cta {
    margin-top: 40px;
  }

  .stats-sec .stat-cta a {
    color: var(--text-color-base-primary, #000);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }
}

.trust-sec {
  margin-top: 128px;
  margin-bottom: 48px;
}

.trust-sec .row {
  display: flex;
  align-items: center;
}

.trust-rating {
  width: 100%;
  margin: 0 auto;
  border: 1px solid #e9e9e9;
  border-radius: 10px;
  padding: 32px 22px;
  background: #fff;
  display: grid;
  justify-items: center;
  row-gap: 10px;
}

.rating-value {
  text-align: center;
  font-weight: 700;
  font-size: clamp(22px, 3vw, 28px);
  color: #0f141a;
  line-height: 1.1;
}

.rating-stars {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.rating-stars .star {
  width: 22px;
  height: 22px;
  display: inline-block;
}

.rating-stars .star svg {
  width: 100%;
  height: 100%;
  fill: #ffc436;
}

.rating-stars .star.half {
  width: 11px;
  overflow: hidden;
}

.rating-count {
  font-size: 14px;
  color: #6b7280;
}

.trust-title {
  margin-bottom: 0;
  text-align: center
}

.trust-title p {
  color: #000;
  text-align: center;
  font-size: 32px;
  font-weight: 400;
  line-height: 40px;
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}

.trust-title p strong {
  color: #000;
  font-size: 32px;
  font-weight: 600;
  line-height: 40px;
}

@media (max-width: 575.98px) {
  .trust-sec {
    margin-top: 64px;
    margin-bottom: 32px;
  }

  .trust-sec .row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  .trust-sec .col-12.col-md-4 {
    order: 2;
  }

  .trust-sec .col-12.col-md-8 {
    order: 1;
  }

  .trust-title {
    margin-bottom: 24px;
  }

  .trust-title p {
    text-align: center;
    color: var(--text-color-base-primary, #000);
    /* Heading/Head-XS */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    /* 133.333% */
    padding-top: 0;
    padding-bottom: 0;
  }

  .trust-title p strong {
    color: var(--text-color-base-primary, #000);
    /* Heading/Head-XS <str> */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 32px;
  }

  .rating-value {
    color: var(--text-color-base-primary, #000);
    /* Heading/Head-M */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 40px;
    /* 125% */
  }

  .rating-stars {
    margin-left: 10px;
    gap: 0;
  }

  .rating-stars .star {
    width: 26px;
    height: 26px;
  }

  .live-sec .container>.row {
    display: flex;
    flex-direction: column;
  }

  .live-sec .container>.row>[class*=col-]:first-child {
    order: 2;
  }

  .live-sec .container>.row>[class*=col-]:last-child {
    order: 1;
  }
}

/* Live section – wszystko zagnieżdżone w jednej klasie */
.live-sec {
  background: #d7c7b7;
  /* Równa wysokość kolumn i wypełnienie ich przez dzieci */
}

.live-sec .container>.row {
  align-items: stretch;
}

.live-sec .container>.row>[class*=col-] {
  display: flex;
}

.live-sec .container>.row>[class*=col-]>* {
  width: 100%;
}

.live-sec {
  /* Lewa kolumna – pionowe wyśrodkowanie względem wysokości zdjęcia */
}

.live-sec .ev-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* <<< centrum w pionie */
  height: 100%;
}

.live-sec {
  /* Prawa – zdjęcie na pełną wysokość wiersza */
}

.live-sec .ev-hero {
  height: 100%;
  min-height: 340px;
}

.live-sec .ev-hero p {
  margin-bottom: 0;
}

.live-sec .ev-hero img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  position: relative;
  bottom: -68px;
}

.live-sec {
  /* --- reszta Twoich styli bez zmian --- */
}

.live-sec .ev-panel {
  padding: 20px 28px 26px;
}

.live-sec .ev-panel .ev-head {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-bottom: 76px;
}

.live-sec .ev-panel .ev-head .ev-badge {
  position: relative;
  width: 36px !important;
  min-width: 36px;
  max-width: 36px;
  height: 36px !important;
  min-height: 36px;
  max-height: 36px;
  border-radius: 53.333px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 29.333px 0 var(--color-brand-one-8-base, #E4FD71);
  flex-shrink: 0;
}

.live-sec .ev-panel .ev-head .ev-badge svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.live-sec .ev-panel .ev-head .ev-badge>span {
  font-weight: 800;
  color: #1b1b1b;
}

.live-sec .ev-panel .ev-head .ev-title p {
  color: #000;
  font-size: 32px;
  line-height: 40px;
  margin-bottom: 0;
  font-weight: 600;
}

.live-sec .ev-panel .ev-list {
  list-style: none;
  margin: 18px 0 16px;
  padding: 0;
}

.live-sec .ev-panel .ev-list .ev-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px 0;
  border-top: 1px solid rgb(178, 165, 150);
}

.live-sec .ev-panel .ev-list .ev-item:last-child {
  border-bottom: 1px solid rgb(178, 165, 150);
}

.live-sec .ev-panel .ev-list .ev-item .ev-meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.live-sec .ev-panel .ev-list .ev-item .ev-meta .ev-line {
  display: flex;
  gap: 8px;
  align-items: baseline;
  color: rgb(0, 0, 0);
}

.live-sec .ev-panel .ev-list .ev-item .ev-meta .ev-line strong {
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
}

.live-sec .ev-panel .ev-list .ev-item .ev-meta .ev-line span {
  color: rgb(113, 102, 89);
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
}

.live-sec .ev-panel .ev-list .ev-item .ev-meta .ev-date {
  color: rgb(0, 0, 0);
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
}

.live-sec .ev-panel .ev-list .ev-item .ev-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 4px;
  background: #e4d7ca;
  border: none;
  color: rgb(0, 0, 0);
  text-decoration: none;
  font-size: 14px;
  line-height: 20px;
}

.live-sec .ev-panel .ev-list .ev-item .ev-btn .ne {
  width: 14px;
  height: 14px;
  stroke: #1f2727;
  stroke-width: 2;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.live-sec .ev-panel .ev-list .ev-item .ev-btn:hover {
  filter: brightness(0.98);
}

.live-sec .ev-panel .ev-calendar {
  display: inline-block;
  margin-top: 18px;
  color: #1b1b1b;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: 7%;
  text-underline-offset: 0.6em;
  text-align: center;
  color: rgb(0, 0, 0);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
}

@media (max-width: 991.98px) {
  .live-sec {
    /* na mobile wracamy do treści od góry */
    border-radius: 8px;
  }

  .live-sec .container-fluid {
    padding-left: 0;
    padding-right: 0;
  }

  .live-sec .container>.row,
  .live-sec .container-fluid>.row {
    display: flex;
    flex-direction: column;
  }

  .live-sec .ev-hero-wrapper {
    order: 1;
  }

  .live-sec .ev-panel-wrapper {
    order: 2;
  }

  .live-sec .container>.row>[class*=col-],
  .live-sec .container-fluid>.row>[class*=col-] {
    display: block;
  }

  .live-sec .ev-panel {
    display: block;
    padding: 32px 24px;
    padding-bottom: 40px;
  }

  .live-sec .ev-panel .ev-head {
    gap: 10px;
    margin-bottom: 32px;
  }

  .live-sec .ev-panel .ev-head .ev-title p {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }

  .live-sec .ev-panel .ev-list .ev-item:first-child {
    border-top: none;
  }

  .live-sec .ev-panel .ev-calendar {
    display: block;
    text-align: center;
  }

  .live-sec .ev-hero {
    border-left: 0;
    margin-top: 0;
    border-radius: 0;
    height: auto;
    min-height: auto;
  }

  .live-sec .ev-hero img {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    height: auto;
    object-fit: contain;
  }
}

.soc-sec {
  padding-top: 132px;
  padding-bottom: 128px;
  background-color: #FAFAFA;
}

#modules-aboutus-about .soc-sec {
  background-color: transparent;
}

.soc-sec .soc-card {
  background: #fff;
  border: 1px solid rgb(229, 229, 229);
  border-radius: 12px;
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.soc-sec .soc-card .soc-media {
  position: relative;
  margin-bottom: 32px;
}

.soc-sec .soc-card .soc-media p {
  margin-bottom: 0;
}

.soc-sec .soc-card .soc-media .soc-badge-hover {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(3px);
  border-radius: 12px;
  padding: 16px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.soc-sec .soc-card .soc-media .soc-badge {
  --halo: 140px;
  --icon: 128px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  pointer-events: none;
}

.soc-sec .soc-card .soc-media .soc-badge .soc-badge__icon {
  position: absolute;
  width: var(--icon);
  height: var(--icon);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
}

.soc-sec .soc-card .soc-media .soc-badge .soc-badge__icon svg {
  width: 40px;
  height: 40px;
}

.soc-sec .soc-card .soc-body {
  padding-bottom: 40px;
  padding-left: 24px;
  padding-right: 24px;
  padding-top: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
  height: 100%;
}

.soc-sec .soc-card .soc-body .soc-desc {
  display: grid;
  gap: 6px;
  color: #6b7280;
  margin-bottom: 73px;
}

.soc-sec .soc-card .soc-body .soc-desc__meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #595959;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

.soc-sec .soc-card .soc-body .soc-desc__meta p {
  color: rgb(89, 89, 89);
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  margin-bottom: 0;
}

.soc-sec .soc-card .soc-body .soc-desc__dot {
  color: rgb(208, 208, 208);
}

.soc-sec .soc-card .soc-body .soc-desc__text p {
  color: rgb(89, 89, 89);
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  margin-bottom: 0;
}

.soc-sec .soc-card .soc-body .soc-cta {
  margin-top: auto;
}

.soc-sec .soc-card .soc-body .soc-cta a {
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
  color: rgb(0, 0, 0);
}

.soc-sec .soc-card .soc-body .soc-cta a .soc-cta__label {
  max-width: 255px;
}

.soc-sec .soc-card .soc-body .soc-cta a .soc-cta__label p {
  color: rgb(0, 0, 0);
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 0;
  margin-bottom: 0;
}

.soc-sec .soc-card .soc-body .soc-cta a .soc-cta__ne {
  margin-left: auto;
  width: 24px;
  height: 24px;
  border-radius: 4px;
  background: #e6f86e;
  border: 1px solid #e6f86e;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  min-height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}


.soc-sec .soc-card .soc-body .soc-cta a:hover .soc-cta__label {
  text-decoration: underline;
}

@media (max-width: 991.98px) {
  .soc-sec {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .soc-sec .container {
    padding-left: 0;
    padding-right: 0;
  }

  .soc-sec .container-fluid .row {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    gap: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .soc-sec .container-fluid .row::-webkit-scrollbar {
    height: 4px;
  }

  .soc-sec .container-fluid .row::-webkit-scrollbar-track {
    background: transparent;
  }

  .soc-sec .container-fluid .row::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .soc-sec .container-fluid .row>.col-12,
  .soc-sec .container-fluid .row>.col-md-6,
  .soc-sec .container-fluid .row>.col-lg-4,
  .soc-sec .container-fluid .row>[class*="col-12"],
  .soc-sec .container-fluid .row>[class*="col-md-6"],
  .soc-sec .container-fluid .row>[class*="col-lg-4"] {
    flex: 0 0 95%;
    max-width: 95%;
    min-width: 0;
    flex-shrink: 0;
    padding-left: 8px;
    padding-right: 8px;
  }

  .soc-sec .soc-card {
    min-width: 100%;
  }

  .soc-sec .soc-card .soc-media {
    margin-bottom: 24px;
  }

  .soc-sec .soc-card .soc-body {
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 24px;
  }

  .soc-sec .soc-card .soc-body .soc-desc__meta {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .soc-sec .soc-card .soc-body .soc-desc__text p {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .soc-sec .soc-card .soc-body .soc-cta a .soc-cta__label p {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    /* 150% */
  }
}

.logos-sec {
  padding-block: 8px;
  background-color: rgb(250, 250, 250);
  padding-top: 32px;
  padding-bottom: 128px;
}

.logos-sec h2 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  /* Text/Title */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  /* 140% */
}

.logos-sec .title-single1 {
  margin-bottom: 32px;
}

.logos-sec .title-single1 p {
  color: rgb(0, 0, 0);
  font-size: 20px;
  line-height: 28px;
  margin-bottom: 0;
  letter-spacing: 0;
}

.logos-sec .logos-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  /* 7 jak na screenie */
  gap: 14px;
  width: min(1280px, 100%);
  margin-inline: auto;
}

.logos-sec .logo-card p {
  margin-bottom: 0;
}

.logos-sec .logo-card svg {
  object-fit: contain;
  display: block;
  transition: transform 0.15s ease;
}

logos-sec .logo-card:hover svg {
  transform: scale(1.03);
}

.logos-sec {
  /* Responsywne przełamania kolumn (bez Bootstrapa) */
}

@media (max-width: 1400px) {
  .logos-sec .logos-grid {
    grid-template-columns: repeat(6, 1fr);
  }
}

@media (max-width: 1200px) {
  .logos-sec .logos-grid {
    grid-template-columns: repeat(5, 1fr);
  }
}

@media (max-width: 992px) {
  .logos-sec .logos-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (max-width: 768px) {
  .logos-sec .logos-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 520px) {
  .logos-sec .logos-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}

@media (max-width: 991.98px) {
  .logos-sec {
    padding-bottom: 64px;
  }

  .logos-sec .container {
    padding-left: 0;
    padding-right: 0;
  }

  .logos-sec .logos-grid {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    gap: 0;
    width: 100%;
    margin-inline: 0;
  }

  .logos-sec .logos-grid::-webkit-scrollbar {
    height: 4px;
  }

  .logos-sec .logos-grid::-webkit-scrollbar-track {
    background: transparent;
  }

  .logos-sec .logos-grid::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .logos-sec .logo-card {
    flex: 0 0 104px;
    max-width: 104px;
    min-width: 0;
    flex-shrink: 0;
    padding-left: 2px;
    padding-right: 2px;
  }
}

.first-review-wrap .fr-photo {
  border-radius: 16px;
  border: 1px solid #e5e5e5;
  max-width: 330px;
}

.first-review-wrap .fr-photo__inner {
  padding: 18px;
  display: flex;
  justify-content: center;
}

.first-review-wrap .fr-photo__box {
  width: 100%;
  margin: 0 auto;
}

.first-review-wrap .fr-photo img,
.first-review-wrap .fr-photo picture {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.first-review-wrap .fr-panel {
  border-radius: 16px;
  border: 1px solid #e5e5e5;
  padding: 44px 44px;
  max-width: 570px;
  margin: 0 auto;
}

.first-review-wrap .fr-panel__text {
  color: #000;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  margin-bottom: 20px;
}

.first-review-wrap .fr-btn-lime {
  margin: 0 auto;
  border-radius: 4px;
  border: 1px solid #f2febd;
  background: #e4fd71;
  box-shadow: 0 0 44px 0 rgba(228, 253, 113, 0.3);
  display: flex;
  width: 205.333px;
  height: 44px;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

.first-review-wrap .fr-btn-lime:hover,
.first-review-wrap .fr-btn-lime:active,
.first-review-wrap .fr-btn-lime:focus {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
}

/* ===== FAQ — pixel perfect ===== */
.faq-sec {
  padding-top: 128px;
  padding-bottom: 64px;
}

.faq-sec .title-single {
  margin-bottom: 48px;
}

.faq-sec .title-single p {
  font-size: 32px;
  color: #000;
  line-height: 40px;
  margin-bottom: 0;
  letter-spacing: 0;
}

.faq-sec .single-left {
  padding-right: 48px;
}

.faq-sec .single-left .accordion {
  --bs-accordion-bg: transparent;
  --bs-accordion-border-color: transparent;
  --bs-accordion-btn-padding-x: 14px;
  --bs-accordion-btn-padding-y: 12px;
  --bs-accordion-body-padding-x: 14px;
  --bs-accordion-body-padding-y: 12px;
}

.faq-sec .single-left .accordion-item {
  border: 0;
  border-top: 1px solid rgb(229, 229, 229);
}

.faq-sec .single-left .accordion-item:last-child {
  border-bottom: 1px solid rgb(229, 229, 229);
}

.faq-sec .single-left .accordion-header {
  margin: 0;
}

.faq-sec .single-left {
  /* wiersz pytania */
}

.faq-sec .single-left .accordion-button {
  background: transparent;
  color: #1a1f25;
  font-weight: 600;
  font-size: 18px;
  line-height: 165%;
  letter-spacing: -0.5%;
  padding-right: 16px;
  box-shadow: none !important;
  padding-left: 0;
  padding-top: 24px;
  padding-bottom: 24px;
}

.faq-sec .single-left .accordion-button:hover {
  background: #fafbfc;
}

.faq-sec .single-left .accordion-button:focus {
  box-shadow: none;
}

.faq-sec .single-left .accordion-button::after {
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  border-radius: 4px;
  background-color: rgb(245, 245, 245);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px;
  transform: none;
  margin-left: auto;
  /* strzałka w dół (collapsed) */
  background-image: url("data:image/svg+xml,%3Csvg width=%2712%27 height=%2712%27 viewBox=%270 0 24 24%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M7.5 9.5l4.5 4.5 4.5-4.5%27 fill=%27none%27 stroke=%27%23848b96%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
}

.faq-sec .single-left .accordion-button:not(.collapsed)::after {
  /* strzałka w górę (expanded) */
  background-image: url("data:image/svg+xml,%3Csvg width=%2712%27 height=%2712%27 viewBox=%270 0 24 24%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M7.5 14.5l4.5-4.5 4.5 4.5%27 fill=%27none%27 stroke=%27%23848b96%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
}

.faq-sec .single-left {
  /* odpowiedź */
}

.faq-sec .single-left .accordion-body {
  padding: 8px;
  padding-left: 0;
}

.faq-sec .single-left .accordion-body p {
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  color: rgb(89, 89, 89);
  font-weight: 400;
}

.faq-sec .single-left .accordion-body ul {
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  color: rgb(89, 89, 89);
  font-weight: 400;
}

.faq-sec .single-left {
  /* link pod akordeonem */
}

.faq-sec .single-left .text-center a {
  display: inline-block;
  margin-top: 10px;
  color: #7c8490;
  font-size: 12.5px;
  text-decoration-line: underline;
  text-decoration-thickness: 7%;
  text-underline-offset: 0.6em;
}

.faq-sec .single-left .text-center a:hover {
  color: #1a1f25;
}

.faq-sec .single-right {
  padding-left: 48px;
  /* prawy box (biały + delikatny border) */
}

.faq-sec .single-right .card {
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  background: #fff;
  padding: 32px;
}

.faq-sec .single-right .card .desc {
  margin-bottom: 48px;
}

.faq-sec .single-right .card .desc h6 {
  font-size: 20px;
  line-height: 28px;
  font-weight: 600;
  color: rgb(0, 0, 0);
  letter-spacing: 0;
  margin-bottom: 12px;
}

.faq-sec .single-right .card .desc p {
  color: rgb(89, 89, 89);
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 0;
}

.faq-sec .single-right .btn-success {
  border: 1px solid rgb(228, 253, 113);
  border-radius: 4px;
  padding: 12px 24px;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0;
  background-color: rgb(228, 253, 113);
  color: rgb(0, 0, 0);
}

.faq-sec .single2 {
  margin-top: 48px;
}

.faq-sec .faq-more {
  display: inline-block;
  position: relative;
  padding-bottom: 10px;
  color: rgb(0, 0, 0);
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-color: currentColor;
  text-decoration-thickness: 7%;
  /* ≈ 7% wysokości fontu */
  text-underline-offset: 0.6em;
}

.faq-sec .faq-more p {
  color: rgb(0, 0, 0);
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
}

.faq-sec .faq-more:hover {
  color: rgb(0, 0, 0);
}

.faq-sec .faq-more:hover::after {
  background: #9aa3ad;
  transform: scaleX(1.02);
}

.faq-sec .faq-more:active::after {
  transform: scaleX(0.98);
}

@media (min-width: 768px) {
  .faq-sec .card.sticky-top {
    top: 12px !important;
  }
}

@media (max-width: 991.98px) {
  .faq-sec {
    padding-top: 64px;
    padding-bottom: 48px;
  }

  .faq-sec .col-12 {
    margin-top: 0;
  }

  .faq-sec .single1 {
    padding-left: 20px;
    padding-right: 20px;
  }

  .faq-sec .title-single {
    margin-bottom: 32px;
  }

  .faq-sec .title-single p {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    /* 133.333% */
  }

  .faq-sec .single-left {
    margin-top: 0;
    padding-left: 20px;
    padding-right: 20px;
  }

  .faq-sec .single-left .accordion-button {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
    padding-top: 16px;
    padding-bottom: 20px;
  }

  .faq-sec .single-left .accordion-body p {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    /* 150% */
  }

  .faq-sec .single-right {
    padding-left: 20px;
    padding-right: 20px;
  }

  .faq-sec .single-right .card {
    padding: 32px 20px;
  }

  .faq-sec .single-right .card .desc {
    margin-bottom: 40px;
  }

  .faq-sec .single-right .card .desc h6 {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
    /* 150% */
  }

  .faq-sec .single-right .card .desc p {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .faq-sec .single-right .btn-success {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .faq-sec .single2 {
    margin-top: 32px;
  }

  .faq-sec .faq-more {
    margin-bottom: 48px;
  }

  .faq-sec .faq-more p {}

  .faq-sec .row {
    display: flex;
    flex-direction: column;
  }

  .faq-sec .single-left {
    order: 1;
  }

  .faq-sec .single2 {
    order: 2;
  }

  .faq-sec .single-right {
    order: 3;
  }
}

.section-last-blog {
  padding-top: 128px;
  padding-bottom: 96px;
}

.section-last-blog .title-single {
  margin-bottom: 48px;
}

.section-last-blog .title-single h5 {
  color: rgb(0, 0, 0);
  font-size: 32px;
  line-height: 40px;
  letter-spacing: 0;
  font-weight: 400;
  margin-bottom: 0;
}

@media (max-width: 991.98px) {
  .section-last-blog {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .section-last-blog .title-single h5 {
    color: var(--text-color-base-primary, #000);
    text-align: center;
    font-family: var(--font-family-family-primary, Sora);
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    /* 133.333% */
  }
}

/* ===== Sell-first section (full-bleed background; avoids 99vw stripe + reduces horizontal scroll) ===== */
.sellfirst {
  background: rgb(243, 239, 234);
  padding: 128px 0;
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow-x: clip;
  overflow-y: visible;
}

.sellfirst .sf-title {
  margin-bottom: 24px;
}

.sellfirst .sf-title p {
  color: rgb(0, 0, 0);
  margin-bottom: 0;
  font-size: 32px;
  line-height: 40px;
  letter-spacing: 0;
}

.sellfirst .sf-lead p {
  color: rgb(0, 0, 0);
  font-size: 18px;
  line-height: 165%;
  letter-spacing: -0.5%;
  font-weight: 400;
  margin-bottom: 48px;
}

.sellfirst .sf-lead p strong {
  font-weight: 600;
}

.sellfirst .sf-list {
  list-style: none;
  margin-bottom: 0;
  padding: 0;
  border-top: 1px solid rgb(227, 217, 207);
  border-bottom: 1px solid rgb(227, 217, 207);
}

.sellfirst .sf-list .sf-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: start;
  padding: 24px 0;
  border-top: 1px solid rgb(227, 217, 207);
}

.sellfirst .sf-list .sf-item:first-child {
  border-top: 0;
}

.sellfirst .sf-list .sf-item .sf-badge {
  position: relative;
  border-radius: 0;
  background: rgb(235, 228, 220);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  color: #0f141a;
  font-size: 14px;
  padding: 4px 16px;
  color: rgb(0, 0, 0);
  margin-top: 4px;
}

.sellfirst .sf-list .sf-item .sf-badge::before {
  content: "";
  position: absolute;
  left: -4px;
  width: 10px;
  height: 10px;
  border-radius: 0;
  background: rgb(235, 228, 220);
  bottom: -4px;
}

.sellfirst .sf-list .sf-item .sf-text p {
  margin-bottom: 0;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  color: rgb(0, 0, 0);
}

.sellfirst .sf-list .sf-item .sf-text p strong {
  font-weight: 600;
}

.sellfirst .sf-cta {
  margin-top: 48px;
}

.sellfirst .sf-cta .sf-btn {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  height: 48px;
  padding: 16px 24px;
  background: rgb(24, 48, 48);
  color: #fff;
  border: 1px solid rgb(24, 48, 48);
  border-radius: 4px;
  font-weight: 400;
  text-decoration: none;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  font-size: 16px;
  line-height: 24px;
}

.sellfirst .sf-cta .sf-btn p {
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  color: rgb(255, 255, 255);
  margin-bottom: 0;
}

.sellfirst .sf-cta .sf-btn .sf-ne {
  display: inline-flex;
  width: 18px;
  height: 18px;
  position: relative;
  transition: top 0.3s ease, right 0.3s ease;
}

.sellfirst .sf-cta .sf-btn .sf-ne svg {
  width: 18px;
  height: 18px;
  display: block;
}

.sellfirst .sf-cta .sf-btn:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
}

.sellfirst .sf-cta .sf-btn:hover .sf-ne {
  position: relative;
  top: -7px;
  right: -14px;
}

.sellfirst .sf-cta .sf-btn:active {
  transform: translateY(0);
}

.sellfirst .sf-media {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  margin: 0;
}

.sellfirst .sf-media p {
  margin-bottom: 0;
}

.sellfirst .sf-media img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 991.98px) {
  .sellfirst {
    padding-top: 20px;
    padding-bottom: 64px;
  }

  .sellfirst .row {
    display: flex;
    flex-direction: column;
  }

  .sellfirst .col-12.col-lg-6:first-child {
    order: 2;
  }

  .sellfirst .col-12.col-lg-6:last-child {
    order: 1;
  }

  .sellfirst .sf-title {
    margin-bottom: 12px;
  }

  .sellfirst .sf-title p {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    /* 140% */
  }

  .sellfirst .sf-lead {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 32px;
  }

  .sellfirst .sf-lead p {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 0;
  }

  .sellfirst .sf-lead p strong {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    /* 142.857% */
  }

  .sellfirst .sf-list .sf-item {
    padding: 16px 0;
  }

  .sellfirst .sf-list .sf-item .sf-badge {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    /* 142.857% */
  }

  .sellfirst .sf-list .sf-item .sf-text p {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .sellfirst .sf-list .sf-item .sf-text p strong {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
  }

  .sellfirst .sf-cta {
    margin-top: 32px;
  }

  .sellfirst .sf-cta .sf-btn {
    padding: 16px 24px;
  }

  .sellfirst .sf-media {
    margin-top: 0;
    margin-bottom: 6px;
  }
}

.team-sec-owl {
  background: #123130;
  color: #eaf5f2;
  padding-top: 128px;
  padding-bottom: 96px;
}

.team-sec-owl .team-title {
  margin-bottom: 20px;
}

.team-sec-owl .team-title p {
  color: rgb(255, 255, 255);
  font-size: 40px;
  line-height: 54px;
  letter-spacing: 0;
  margin-bottom: 0;
}

.team-sec-owl .team-lead {
  margin-bottom: 48px;
}

.team-sec-owl .team-lead p {
  color: rgb(178, 178, 178);
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
  margin-bottom: 0;
}

.team-sec-owl .team-wrap {
  margin-top: clamp(16px, 2.6vw, 24px);
}

.team-sec-owl {
  /* Owl */
}

.team-sec-owl .owl-carousel .owl-stage-outer {
  padding-bottom: 6px;
}

.team-sec-owl .owl-carousel .owl-item {
  /* odstęp jest przez margin w init */
}

.team-sec-owl {
  /* Karta osoby */
}

.team-sec-owl .tcard {
  background: rgb(24, 48, 48);
  border: 1px solid rgb(24, 48, 48);
  border-radius: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.team-sec-owl .tcard__media {
  position: relative;
  overflow: hidden;
}

.team-sec-owl .tcard__media-image-wrapper {
  position: relative;
  width: 100%;
  margin-bottom: 16px;
}

.team-sec-owl .tcard__media-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.team-sec-owl .tcard__media-image-wrapper .t-badge {
  position: absolute;
  bottom: 24px;
  right: 24px;
  height: 32px;
  width: 32px;
  border-radius: 44.444px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 0 44px 0 #E4FD71;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

.team-sec-owl .tcard__media-name {
  color: var(--text-color-dark-primary, #FFF);
  /* Text/Subtitle */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin-bottom: 4px;
}

.team-sec-owl .tcard__media-role {
  color: var(--text-color-dark-secondary, #B2B2B2);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

.team-sec-owl .tcard__body {
  padding: 12px 12px 16px;
}

.team-sec-owl .tcard__name {
  margin-bottom: 4px;
}

.team-sec-owl {
  /* Pasek + strzałki (grid: bar | btns) */
}

.team-sec-owl .t-nav {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
}

.team-sec-owl .t-nav__bar {
  position: relative;
  height: 3px;
  border-radius: 3px;
  background-color: #e5e5e5;
  overflow: hidden;
}

.team-sec-owl .t-nav__bar .t-nav__bar-fill {
  position: absolute;
  inset: 0 100% 0 0;
  background: rgba(255, 255, 255, 0.65);
  transform-origin: left center;
  transform: scaleX(0);
}

.team-sec-owl .t-nav__btns {
  display: flex;
  gap: 8px;
}

.team-sec-owl .t-nav__btn {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.28);
  color: #eaf5f2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s, transform 0.15s, border-color 0.15s;
}

.team-sec-owl .t-nav__btn svg {
  width: 18px;
  height: 18px;
}

.team-sec-owl .t-nav__btn:hover {
  background: rgba(255, 255, 255, 0.08);
}

.team-sec-owl .t-nav__btn:active {
  transform: translateY(1px);
}

@media (max-width: 991.98px) {
  .team-sec-owl {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .team-sec-owl .team-title {
    margin-bottom: 12px;
  }

  .team-sec-owl .team-title p {
    color: var(--text-color-dark-primary, #FFF);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    /* 133.333% */
  }

  .team-sec-owl .team-lead p {
    color: var(--text-color-dark-secondary, #B2B2B2);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .team-sec-owl .tcard__media h6 {
    color: var(--text-color-dark-primary, #FFF);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 165%;
    /* 29.7px */
    letter-spacing: -0.09px;
  }

  .team-sec-owl .tcard__media p {
    color: var(--text-color-dark-secondary, #B2B2B2);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .team-sec-owl .owl-carousel .owl-stage-outer {
    padding-left: 24px;
    padding-right: 24px;
  }

  .team-sec-owl .owl-carousel .owl-item {
    width: calc(100vw - 48px) !important;
    max-width: 85% !important;
  }
}

.cms-grid48 {
  padding-top: 96px;
  padding-bottom: 96px;
}

.cms-grid48 .cg-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 32px;
  row-gap: 28px;
}

@media (min-width: 768px) {
  .cms-grid48 .cg-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1200px) {
  .cms-grid48 .cg-list {
    grid-template-columns: repeat(4, 1fr);
    row-gap: 32px;
  }
}

.cms-grid48 .cg-title {
  margin-bottom: 9px;
}

.cms-grid48 .cg-title p {
  color: rgb(89, 89, 89);
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 0;
}

.cms-grid48 .cg-text {
  color: #2b2f33;
  opacity: 0.95;
  font-size: 16px;
  line-height: 1.6;
}

.cms-grid48 .cg-text p {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  color: rgb(89, 89, 89);
}

.cms-grid48 .cg-text p:last-child {
  margin-bottom: 0;
}

.cms-grid48 .cg-sep {
  display: none;
}

@media (max-width: 991.98px) {
  .cms-grid48 {
    padding-top: 64px;
    padding-bottom: 16px;
  }

  .cms-grid48 .container {
    padding-left: 0;
    padding-right: 0;
  }

  .cms-grid48 .cg-list {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    gap: 0;
    margin: 0;
    padding: 0;
  }

  .cms-grid48 .cg-list::-webkit-scrollbar {
    height: 4px;
  }

  .cms-grid48 .cg-list::-webkit-scrollbar-track {
    background: transparent;
  }

  .cms-grid48 .cg-list::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .cms-grid48 .cg-item {
    flex: 0 0 90%;
    max-width: 90%;
    min-width: 0;
    flex-shrink: 0;
    padding-left: 8px;
    padding-right: 8px;
  }

  .cms-grid48 .cg-title p {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    /* 142.857% */
  }

  .cms-grid48 .cg-text p {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .cms-grid48 .cg-sep {
    display: none;
  }
}

@media (min-width: 1200px) {
  .cms-grid48 .cg-sep {
    display: block;
    height: 1px;
    background: #e9e9e9;
    grid-column: 1/-1;
    margin-top: 4px;
  }
}



#product #content {
  max-width: 100%;
}

#product .product-single1 #content {
  max-width: 100%;
}

#product .pg .pg-main {
  position: relative;
  border: 1px solid var(--border-primary, #E5E5E5);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  box-shadow: none;
}

#product .pg .pg-main .product-cover {
  padding: 18px 18px 0;
  margin-bottom: 0;
}

#product .pg .pg-main .product-cover img {
  display: block;
  width: 100%;
  height: auto;
}

#product .pg .pg-main .pg-meta {
  position: absolute;
  left: 16px;
  bottom: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: flex-start;
  padding: 0;
  background-color: transparent;
}

#product .pg .pg-main .pg-meta .pg-chip {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 13px;
  border-radius: 6px;
  background: linear-gradient(90deg, rgba(228, 253, 113, 0.40) 0%, rgba(228, 253, 113, 0.00) 50%), var(--color-neutral-12-base, #FAFAFA);
  color: #222;
  font-size: 13px;
  line-height: 1;
  border: none;
  height: auto;
}

/* Ogólne style dla .pg-chip--green (przed media queries) */
#product .pg .pg-main .pg-meta .pg-chip--green {
  /* position: absolute;
  bottom: 8px;
  left: 8px;
  right: 8px; */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 12px;
  padding-right: 32px;
  border-radius: 8px;
  background: linear-gradient(90deg, rgba(228, 253, 113, 0.40) 0%, rgba(228, 253, 113, 0.00) 50%), var(--color-neutral-12-base, #FAFAFA);
  border: none;
  text-decoration: none;
  color: inherit;
}

/* Tytuł wyśrodkowany - ogólne style (przed media queries) */
#product .pg .pg-main .pg-meta .pg-chip--green .pg-chip__text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, 'Sora', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  white-space: normal;
  text-align: center;
  width: 100%;
  margin-top: 0;
}

/* Ogólne style dla akcji produktu (przed media queries) */
#product .product-single2 .single-sz.product-actions.js-product-actions {
  margin-top: 16px;
}

/* Ogólne style dla product-container2 (PRZED media queries - ważne dla kolejności) */
#product .product-container2 {
  margin-top: 48px;
}

/* Ogólne style dla pdesc (PRZED media queries - ważne dla kolejności) */
#product .product-container2 .pdesc {
  padding: 0 16px;
}

/* Ogólne style dla pdesc__h2 (PRZED media queries - ważne dla kolejności) */
#product .product-container2 .pdesc .pdesc__h2 {
  color: #000;
  margin-top: 96px;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: 54px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 8px;
}

/* Ogólne style dla productSpy (PRZED media queries - ważne dla kolejności) */
#product .product-container2 .anchor-target {
  scroll-margin-top: var(--anchor-offset, 80px);
}

#product .product-container2 #productSpy.nav-full {
  --anchor-offset: 80px;
  position: sticky;
  top: 0;
  z-index: 10;
  background: #fff;
  border-bottom: 1px solid #eceff3;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 6px 0;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 0;
  margin-bottom: 32px;
}

#product .product-container2 #productSpy.nav-full::-webkit-scrollbar {
  height: 0;
}

#product .product-container2 #productSpy.nav-full .nav-link {
  position: relative;
  flex: 0 0 auto;
  color: #000;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  padding-top: 24px;
  padding-bottom: 24px;
}

#product .product-container2 #productSpy.nav-full .nav-link:hover {
  color: #1d2125;
}

#product .product-container2 #productSpy.nav-full .nav-link.active {
  color: #1d2125;
  font-weight: 600;
}

#product .pg .pg-main .pg-meta .pg-chip svg {
  width: 16px;
  height: 16px;
  opacity: 0.9;
}

#product .pg .pg-main .pg-meta .pg-chip--muted {
  display: flex;
  padding: 8px 12px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border-radius: 6px;
  background: #FAFAFA;
  border: none;
  height: auto;
  color: var(--text-color-base-tertiary, #888);
  font-family: var(--font-family-family-primary, 'Sora', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

/* Ikona widoczna domyślnie (na mobile) */
#product .pg .pg-main .product-cover {
  position: relative;
}

#product .pg .pg-main .product-cover .pg-mobile-icon {
  position: absolute;
  right: 8px;
  top: 8px;
  z-index: 10;
  display: block;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 4px;
  padding: 4px;
  transition: background 0.2s ease;
}

#product .pg .pg-main .product-cover .pg-mobile-icon:hover {
  background: rgba(255, 255, 255, 1);
}

/* Style mobile zostały przeniesione do custom-mobile.css */

/* Ukryj product-actions-header--mobile na desktopie */
@media (min-width: 768px) {
  body#product .product-actions-header--mobile {
    display: none;
  }

  /* Pokaż product-actions-header z breadcrumb na desktopie */
  body#product .product-actions-header:not(.product-actions-header--mobile) {
    display: flex;
  }
}

/* Style mobile zostały przeniesione do custom-mobile.css */

/* Ukryj ikonę na desktopie */
@media (min-width: 768px) {
  #product .pg .pg-main .pg-mobile-icon {
    display: none;
  }

  /* Ukryj mobile wersję strip na desktopie */
  #product .pg .pg-strip-mobile {
    display: none;
  }

  /* Pokaż desktopową wersję strip */
  #product .pg .pg-strip-desktop {
    display: flex;
  }
}

#product .pg .pg-main .pg-meta .pg-chip--muted strong {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, 'Sora', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

#product .pg .pg-main .pg-meta .pg-chip--muted span {
  color: var(--text-color-base-tertiary, #888);
  font-family: var(--font-family-family-primary, 'Sora', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
}

/* Górny rząd z ikoną trofeum i rankingiem */
#product .pg .pg-main .pg-meta .pg-chip--green .pg-chip__header {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
}

#product .pg .pg-main .pg-meta .pg-chip--green .pg-chip__icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

#product .pg .pg-main .pg-meta .pg-chip--green .pg-chip__rank {
  color: var(--color-brand-one-4, #6F884C);
  font-family: var(--font-family-family-primary, 'Sora', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  margin-right: 0;
}

/* Ikona strzałki z prawej strony */
#product .pg .pg-main .pg-meta .pg-chip--green .pg-chip__ne {
  margin-left: auto;
  width: auto;
  height: auto;
  flex-shrink: 0;
}

#product .pg .pg-main .pg-meta .pg-chip__icon {
  flex-shrink: 0;
  width: 10.533px;
  height: 10.533px;
}

#product .pg .pg-main .pg-meta .pg-chip svg {
  width: 10.533px;
  height: 10.533px;
}

#product .pg .pg-main .pg-meta .pg-chip__rank {
  color: var(--color-brand-one-4, #6F884C);
  font-family: var(--font-family-family-primary, 'Sora', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  margin-right: 0;
}

#product .pg .pg-main .pg-meta .pg-chip__text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, 'Sora', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  white-space: nowrap;
}

#product .pg .pg-main .pg-meta .pg-chip__ne {
  width: auto;
  height: auto;
  margin-left: 4px;
  flex-shrink: 0;
}

#product .pg .pg-main .pg-meta .pg-chip__ne svg {
  width: 8.396px;
  height: 8.396px;
}

#product .pg .pg-strip .pg-thumbs {
  display: flex;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  flex-wrap: nowrap;
  overflow: visible;
  border-right: 1px solid var(--border-primary, #E5E5E5);
  padding-right: 20px;
  margin-right: 10px;
}

#product .pg .pg-strip .pg-thumbs .thumb-container {
  position: relative;
  flex: 0 0 auto;
  width: 80px;
  height: 80px;
  overflow: hidden;
  background: #fff;
  display: block;
}

#product .pg .pg-strip .pg-thumbs .thumb-container .thumb {
  border-radius: 4.444px;
  border: 1.111px solid var(--border-primary, #E5E5E5);
  background: lightgray 8.94px 9.881px / 77.649% 77.649% no-repeat;
}

#product .pg .pg-strip .pg-thumbs .thumb-container .thumb.selected {
  border-radius: 4.444px;
  border: 1.111px solid var(--color-brand-one-1-base, #183030);
  background: url(<path-to-image>) lightgray 7.633px 7.305px / 84.203% 84.203% no-repeat, #FFF;
}

#product .pg .pg-strip .pg-thumbs .thumb-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#product .pg .pg-strip .pg-thumbs .pg-thumb-more-overlay {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.40);
  border-radius: 4.444px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
  box-shadow: 0 4.444px 4.444px 0 rgba(0, 0, 0, 0.25);
  pointer-events: auto;
  z-index: 1;
  cursor: pointer;
}

#product .pg .pg-strip .pg-thumbs .pg-thumb-more-overlay .pg-thumb-more__count {
  font-weight: 800;
  font-size: 18px;
  color: #fff;
  line-height: 1;
  text-align: center;
}

#product .pg .pg-strip .pg-thumbs .pg-thumb-more {
  flex: 0 0 auto;
  width: 64px;
  height: 64px;
  border: 1px dashed #d8d8d8;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: #222;
  background: #fff;
}

#product .pg .pg-strip .pg-thumbs .pg-thumb-more__count {
  font-weight: 800;
  font-size: 18px;
}

#product .pg .pg-strip .pg-videos {
  flex: 1 1 auto;
  min-width: 160px;
  border: 1px solid #ececec;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px;
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: #111;
  white-space: nowrap;
}

#product .pg .pg-strip .pg-videos__icon {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
}

#product .pg .pg-strip .pg-videos__count {
  font-weight: 800;
}

#product .pg .pg-strip .pg-videos__sub {
  color: #808791;
  font-size: 12px;
  margin-left: 4px;
}

#product .pg .pg-strip .pg-videos__text {
  font-weight: 400;
  color: #111;
}

#product .pg .pg-strip .pg-videos:hover {
  border-color: #ddd;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

/* Video card with thumbnail */
#product .pg .pg-strip .pg-videos-card {
  flex: 1 1 auto;
  min-width: 160px;
  max-height: 80px;
  border: 1px solid #ececec;
  border-radius: 12px;
  background: #fff;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 0;
  text-decoration: none;
  color: #111;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s ease;
  outline: none;
}

#product .pg .pg-strip .pg-videos-card:focus {
  outline: 2px solid var(--color-brand-one-1-base, #183030);
  outline-offset: 2px;
}

#product .pg .pg-strip .pg-videos-card:hover {
  border-color: #ddd;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

#product .pg .pg-strip .pg-videos-card__thumb {
  position: relative;
  display: flex;
  width: 96px;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  overflow: hidden;
  background: #f5f5f5;
  aspect-ratio: 4/3;
}

#product .pg .pg-strip .pg-videos-card__thumb img {
  width: 100%;
  height: 100%;
  max-height: 80px;
  object-fit: cover;
  display: block;
}

#product .pg .pg-strip .pg-videos-card__thumb .pg-videos-card__placeholder {
  width: 100%;
  height: 100%;
  background: #f5f5f5;
  display: flex;
  align-items: center;
  justify-content: center;
}

#product .pg .pg-strip .pg-videos-card__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 50%;
  z-index: 2;
}

#product .pg .pg-strip .pg-videos-card__play svg {
  width: 20px;
  height: 20px;
}

#product .pg .pg-strip .pg-videos-card__content {
  flex: 1;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#product .pg .pg-strip .pg-videos-card__count {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

#product .pg .pg-strip .pg-videos-card__sub {
  color: var(--text-color-dark-secondary, #B2B2B2);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

@media (max-width: 575.98px) {
  #product .pg .pg-main .product-cover {
    padding: 12px 12px 0;
  }

  #product .pg .pg-meta {
    padding: 8px;
  }
}

#product .product-single2 .product-title {
  margin-bottom: 16px;
}

#product .product-single2 .product-title h1 {
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0;
  margin-bottom: 0;
  font-weight: 400;
}

#product .product-single2 .p-meta {
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 14px;
  color: #6e737a;
}

#product .product-single2 .p-meta__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

#product .product-single2 .p-meta__item--rate {
  color: #111;
}

#product .product-single2 .p-meta {
  /* pionowy separator po "345 opinii" */
}

#product .product-single2 .p-meta__split {
  padding-right: 16px;
  margin-right: 4px;
  position: relative;
}

#product .product-single2 .p-meta__split::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 1px;
  height: 18px;
  background: #e8e8e8;
  transform: translateY(-50%);
}

#product .product-single2 .p-rate__val {
  font-weight: 700;
  color: #111;
}

#product .product-single2 {
  /* Gwiazdki */
}

#product .product-single2 .p-stars {
  display: inline-flex;
  align-items: center;
}

#product .product-single2 .star {
  width: 18px;
  height: 18px;
  display: inline-block;
  margin-right: 2px;
  background: #e6e6e6;
  /* empty */
  -webkit-mask: url("data:image/svg+xml;utf8,    <svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27>      <path d=%27M12 2.3l2.8 5.7 6.3.9-4.5 4.4 1.1 6.3L12 16.9 6.3 19.6 7.4 13.3 2.9 8.9l6.3-.9z%27/>    </svg>") center/contain no-repeat;
  mask: url("data:image/svg+xml;utf8,    <svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27>      <path d=%27M12 2.3l2.8 5.7 6.3.9-4.5 4.4 1.1 6.3L12 16.9 6.3 19.6 7.4 13.3 2.9 8.9l6.3-.9z%27/>    </svg>") center/contain no-repeat;
}

#product .product-single2 .star--full {
  background: #f5c048;
}

#product .product-single2 .star--empty {
  background: #e6e6e6;
}

#product .product-single2 .star--half {
  background: linear-gradient(90deg, #f5c048 0 50%, #e6e6e6 50% 100%);
}

#product .product-single2 {
  /* Linki (podkreślone) */
}

#product .product-single2 .p-head__link {
  color: #6e737a;
  text-decoration: underline;
  text-underline-offset: 0.45em;
  text-decoration-thickness: 1px;
}

#product .product-single2 .p-head__link:hover {
  color: #111;
}

#product .product-single2 {
  /* Kod produktu */
}

#product .product-single2 .p-head__ref {
  margin: 14px 0 20px;
  font-size: 14px;
  color: #6e737a;
}

#product .product-single2 {
  /* dolna cieniutka linia */
}

#product .product-single2 .p-head__rule {
  height: 1px;
  background: #ececec;
}

@media (max-width: 575.98px) {
  #product .product-single2 .p-head .p-meta {
    font-size: 13px;
    gap: 12px;
  }

  #product .product-single2 .p-head .star {
    width: 16px;
    height: 16px;
  }
}

#product .product-top-recomandation .reco {
  border-top: 1px solid rgb(229, 229, 229);
  border-bottom: 1px solid rgb(229, 229, 229);
  padding-top: 20px;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

#product .product-top-recomandation .reco__label {
  color: #595959;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

#product .product-top-recomandation .reco-badge {
  display: inline-block;
  border-radius: 4px;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 6px;
  padding-right: 8px;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

#product .product-top-recomandation .reco-badge svg {
  padding-right: 4px;
}

#product .product-top-recomandation .reco-badge--1 {
  background: rgb(235, 248, 235);
  color: rgb(89, 89, 89);
}

#product .product-top-recomandation .reco-badge--2 {
  background-color: rgb(230, 244, 254);
  color: rgb(89, 89, 89);
}

/* Ukryte elementy rekomendacji */
#product .product-top-recomandation .reco__item--hidden {
  display: none;
}

#product .product-top-recomandation .reco.reco--expanded .reco__item--hidden {
  display: list-item;
}

/* Chip "+X" dla rozwijania */
#product .product-top-recomandation .reco-badge--expand {
  background: #fff;
  border: 1px solid #e5e5e5;
  color: #595959;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

#product .product-top-recomandation .reco-badge--expand:hover {
  background: #f5f5f5;
  border-color: #d0d0d0;
}

#product .product-top-recomandation .reco.reco--expanded .reco__item--expand {
  display: none;
}

@media (max-width: 576px) {
  #product .product-top-recomandation .reco__label {
    width: 100%;
    margin-bottom: 0.25rem;
  }
}

#product .product-top-recomandation .warranty-row {
  border-top: 1px solid rgb(229, 229, 229);
  border-bottom: 1px solid rgb(229, 229, 229);
  font-size: 0.95rem;
}

#product .brand-card {
  align-items: flex-start;
  border: none;
  padding: 0;
}

#product .brand-card__logo {
  width: 80px;
  height: 80px;
  flex: 0 0 80px;
  padding: 0;
  border-radius: 4px;
  background: #ffffff;
  border: 1px solid rgb(229, 229, 229);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

#product .brand-card__logo-link {
  display: inline-flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  outline: none;
}

#product .brand-card__logo-link:focus-visible {
  outline: 2px solid #1e5bff;
  outline-offset: 2px;
}

#product .brand-card__logo img {
  width: 80px;
  height: 80px;
  padding: 0 4px;
  object-fit: contain;
  display: block;
}

#product .brand-card .link-name {
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

#product .brand-card .link-body-emphasis {
  color: #000;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  text-decoration: none;
}

#product .brand-card .brand-all {
  margin-top: 16px;
}

#product .brand-card .brand-all a {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

@media (min-width: 768px) {
  #product .pg.images-container.js-images-container {
    padding-right: 33px;
  }
}

#product .warranty-row {
  margin-top: 16px;
  margin-bottom: 16px;
  padding-top: 16px;
  padding-bottom: 16px;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}

#product .warranty-row .warranty_name {
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .warranty-row .warranty_value {
  color: #000;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
}

#product .product-spec-snippet {
  border-bottom: none;
  padding-bottom: 16px;
}

/* Hide product variants if empty */
#product .product-variants.js-product-variants:empty {
  display: none;
}

/* Product Variants Container - border top */
#product .product-variants.js-product-variants {
  border-top: 1px solid var(--border-primary, #E5E5E5);
  margin-top: 16px;
  padding-top: 16px;
}

/* Product Variants Custom Styling */
#product .product-customization .product-customization-item,
#product .product-variants>.product-variants-item {
  margin-top: 0;
  margin-bottom: 16px;
  border-top: 0;
  padding-top: 0;
}

#product .product-variants-label {
  display: block;
  margin-bottom: 6px;
  color: var(--text-color-base-tertiary, #888);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

/* Variant Buttons Container */
#product .product-variants-buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

/* Variant Button Wrapper */
#product .product-variant-button-wrapper {
  position: relative;
}

/* Hide default radio input */
#product .product-variant-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Variant Button */
#product .product-variant-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px 8px;
  min-width: 101px;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
  color: var(--text-color-base-primary, #000);
  text-align: center;
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  gap: 0;
}

#product .product-variant-button:hover {
  border-color: #999;
}

/* Selected variant button */
#product .product-variant-input:checked+.product-variant-button,
#product .product-variant-button.selected {
  border-radius: 4px;
  border: 1px solid var(--color-neutral-black, #000);
}

/* Variant Name */
#product .variant-name {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  margin-bottom: 0;
}

/* Variant Price - displayed below name */
#product .variant-price {
  color: var(--text-color-base-tertiary, #888);
  text-align: center;
  /* Text/Caption */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  margin-top: 4px;
}

/* Color Select Dropdown */
#product .product-variants-color {
  position: relative;
}

#product .product-variant-select-wrapper {
  position: relative;
}

/* Hide native select */
#product .product-variant-select {
  display: none;
}

/* Custom Select Trigger */
#product .product-variant-select-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 12px 16px;
  background: #ffffff;
  border-radius: 4px;
  border: 1px solid var(--color-neutral-black, #000);
  cursor: pointer;
  transition: border-color 0.2s ease;
}

#product .product-variant-select-trigger:hover {
  border-color: #999;
}

#product .product-variant-select-text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .product-variant-select-arrow {
  transition: transform 0.2s ease;
}

#product .product-variant-select-wrapper.open .product-variant-select-arrow {
  transform: rotate(180deg);
}

/* Custom Dropdown */
#product .product-variant-select-dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin-top: 4px;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  max-height: 300px;
  overflow-y: auto;
}

#product .product-variant-select-wrapper.open .product-variant-select-dropdown {
  display: block;
}

/* Dropdown Option */
#product .product-variant-select-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  border-bottom: 1px solid #f5f5f5;
  border-radius: 4px;
  background: #fff;
}

#product .product-variant-select-option:last-child {
  border-bottom: none;
}

#product .product-variant-select-option:hover,
#product .product-variant-select-option:active {
  background: var(--color-brand-two-10, #F3EFEA);
}

#product .product-variant-select-option.selected {
  background: var(--color-brand-two-10, #F3EFEA);
}

#product .product-variant-select-option-text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

/* Radio Button */
#product .product-variant-select-option-radio {
  width: 20px;
  height: 20px;
  border: 2px solid #e5e5e5;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.2s ease;
}

#product .product-variant-select-option.selected .product-variant-select-option-radio {
  border-color: #E4FD71;
  background-color: #E4FD71;
}

#product .product-variant-select-radio-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #000;
  display: none;
}

#product .product-variant-select-option.selected .product-variant-select-radio-dot {
  display: block;
}

#product .product-spec-snippet .spec-line {
  display: flex;
  gap: 4px;
  font-size: 14px;
  line-height: 1.4;
}

#product .product-spec-snippet .spec-line:not(:last-child) {
  margin-bottom: 4px;
}

#product .product-spec-snippet .spec-line .spec-label {
  color: var(--text-color-base-tertiary, #888);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  font-weight: 400;
  line-height: 20px;
}

#product .product-spec-snippet .spec-line .spec-value {
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  font-weight: 400;
  line-height: 20px;
}

#product .product-spec-snippet .spec-line .fw-semibold {
  font-weight: 600;
}

#product .product-spec-snippet .spec-line .text-body-secondary {
  color: #6c757d;
}

#product .product-spec-snippet .spec-scroll {
  color: var(--text-color-base-secondary, #595959);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: 32%;
  /* 4.48px */
  text-underline-position: from-font;
}

#product .product-spec-snippet .but-spec {
  margin-top: 16px;
}

#product .product-spec-snippet .spec-scroll:hover {
  color: #1d2125;
}

#product .product-spec-snippet .spec-scroll .spec-arrow {
  width: 12px;
  height: 12px;
  border-right: 2px solid #adb5bd;
  border-bottom: 2px solid #adb5bd;
  transform: rotate(45deg);
  transition: transform 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
  opacity: 0.8;
}

#product .product-spec-snippet .spec-scroll:hover .spec-arrow {
  border-color: #1d2125;
  transform: translateY(2px) rotate(45deg);
  opacity: 1;
}

#product .product-section-cart .single-sz {
  border: 1px solid rgb(229, 229, 229);
  border-radius: 4px;
}

#product .product-section-cart .single-sz .product-prices {
  background-color: rgb(250, 250, 250);
  padding: 16px 16px 12px;
  margin-top: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

#product .product-section-cart .single-sz .product-price {
  margin-bottom: 0;
}

#product .product-section-cart .single-sz .product-price .current-price {
  display: flex;
  align-items: center;
  gap: 12px;
  line-height: 1;
  margin-bottom: 0;
}

#product .product-section-cart .single-sz .product-price .current-price .current-price-value {
  line-height: 1;
  display: inline-block;
  color: #000;
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
}

#product .product-section-cart .single-sz .product-price .current-price .discount {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.875rem;
  line-height: 1;
  vertical-align: middle;
  position: static;
  border-radius: 4px;
  background-color: rgb(248, 204, 202);
  color: #c41408;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  border: 1px solid #f8ccca;
  margin-left: 0;
}

#product .product-section-cart .single-sz .product-price .product-discount {
  color: rgb(136, 136, 136);
}

#product .product-section-cart .single-sz .discount-and-vat {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
  margin-bottom: 4px;
}

#product .product-section-cart .single-sz .discount-and-vat .product-discount {
  margin-bottom: 0;
}

#product .product-section-cart .single-sz .discount-and-vat .product-discount .regular-price {
  color: rgb(136, 136, 136);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  text-decoration-line: line-through;
  margin-right: 0;
}

#product .product-section-cart .single-sz .discount-and-vat .price-sep {
  width: 2px;
  height: 12px;
  background: #e5e5e5;
  display: inline-block;
}

#product .product-section-cart .single-sz .discount-and-vat .price-vat {
  color: rgb(136, 136, 136);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

#product .product-section-cart .price-omnibus {
  margin-bottom: 0;
}

#product .product-section-cart .price-omnibus p {
  color: rgb(136, 136, 136);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  margin-bottom: 0;
}

#product .product-discounts {
  margin-bottom: 0;
}

#product .product-add-to-cart {
  padding: 0 20px;
  background-color: rgb(250, 250, 250);
}

#product .product-add-to-cart .product-quantity .addtocart-group {
  display: flex;
  align-items: stretch;
  width: 100%;
  gap: 8px;
}

#product .product-add-to-cart .product-quantity .qty-select {
  flex: 0 0 56px;
  width: 56px;
  min-width: 56px;
  max-width: 56px;
  height: 44px;
  border-radius: 4px;
  border: 1px solid rgb(229, 229, 229);
  text-align: center;
  text-align-last: center;
  line-height: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-right: 18px;
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 7px 6px;
  background-image: url("data:image/svg+xml;utf8,<svg width=%277%27 height=%276%27 viewBox=%270 0 7 6%27 xmlns=%27http://www.w3.org/2000/svg%27><path d=%27M4.3 4.93333C3.9 5.46667 3.1 5.46667 2.7 4.93333L0.2 1.6C-0.294427 0.940764 0.175955 0 1 0L6 0C6.82405 0 7.29443 0.940765 6.8 1.6L4.3 4.93333Z%27 fill=%27%23B2B2B2%27/></svg>");
}

#product .product-add-to-cart .product-quantity .qty-select:hover,
#product .product-add-to-cart .product-quantity .qty-select:focus {
  background-image: url("data:image/svg+xml;utf8,<svg width=%277%27 height=%276%27 viewBox=%270 0 7 6%27 xmlns=%27http://www.w3.org/2000/svg%27><path d=%27M4.3 4.93333C3.9 5.46667 3.1 5.46667 2.7 4.93333L0.2 1.6C-0.294427 0.940764 0.175955 0 1 0L6 0C6.82405 0 7.29443 0.940765 6.8 1.6L4.3 4.93333Z%27 fill=%27%231d2125%27/></svg>");
}

#product .product-add-to-cart .product-quantity .qty-select::-ms-expand {
  display: none;
}

#product .product-add-to-cart .product-quantity .btn-add-to-cart {
  flex: 1 1 auto;
  min-width: 0;
  height: 44px;
  padding: 12px 24px;
  font-weight: 600;
  border-radius: 4px;
  border: 1px solid #e4fd71;
  background: #e4fd71;
  color: #000;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  transition: all 0.2s;
}

#product .product-add-to-cart .product-quantity .btn-add-to-cart:hover,
#product .product-add-to-cart .product-quantity .btn-add-to-cart:active,
#product .product-add-to-cart .product-quantity .btn-add-to-cart:focus {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
}

#product .product-add-to-cart .add-ask {
  width: 100%;
  margin-bottom: 12px;
}

#product .product-add-to-cart .add-ask .single-counselor {
  margin-top: 8px;
}

#product .product-add-to-cart .add-ask .counselor-card {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 0;
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  background: radial-gradient(13.91% 70.54% at 19.63% 50%, rgba(228, 253, 113, 0.5) 0%, rgba(228, 253, 113, 0) 100%), #fff;
}

#product .product-add-to-cart .add-ask .counselor-card:hover {
  box-shadow: 0 2px 6px rgba(16, 24, 40, 0.08);
}

#product .product-add-to-cart .add-ask .counselor-card:focus-visible {
  outline: 2px solid #1e5bff;
  outline-offset: 2px;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-media {
  position: relative;
  flex: 0 0 auto;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-media .counselor-avatar {
  width: 56px;
  height: 56px;
  border-radius: 10px;
  overflow: hidden;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-media .counselor-avatar p {
  margin-bottom: 0;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-media .counselor-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-media .counselor-badge {
  position: absolute;
  right: -6px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e6ff63;
  /* limonkowy akcent */
  border: 1px solid #dfe3e8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  color: #2d2d2d;
  pointer-events: none;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-copy {
  min-width: 0;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-copy p {
  margin-bottom: 0;
  color: #888;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
}

#product .product-add-to-cart .add-ask .counselor-card .counselor-copy strong {
  color: #000;
  font-size: 13px;
  font-weight: 400;
  line-height: 100%;
  margin-bottom: 4px;
  display: block;
}

#product .product-minimal-quantity {
  margin-bottom: 0;
}

#product .single-c {
  padding-left: 4px;
  padding-right: 4px;
}

#product .single-c .product-availability {
  margin-top: 0;
  padding: 12px 8px;
  display: block;
  padding-bottom: 12px;
}

#product .single-c .product-availability .avail-inline {
  display: flex;
  align-items: flex-start;
  gap: 15px;
}

#product .single-c .product-availability .avail-inline__icon {
  color: #595959;
  line-height: 0;
  display: inline-flex;
  margin-top: 9px;
}

#product .single-c .product-availability .avail-inline__text {
  line-height: 1.2;
}

#product .single-c .product-availability .avail-inline__qty {
  margin-top: 2px;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

#product .single-c .product-availability .avail-inline--ok .avail-inline__status {
  color: rgb(1, 137, 44);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .single-c .product-availability {
  /* zielony */
}

#product .single-c .product-availability .avail-inline--no .avail-inline__status {
  color: #e03131;
  font-weight: 600;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .single-c .product-availability {
  /* czerwony */
}

#product .product-section-cart .product-quantity {
  display: block;
}

#product .single-c .info-links__item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 8px;
  text-decoration: none;
  color: #1d2125;
  border-top: 1px solid rgb(229, 229, 229);
  /* separator między wierszami */
}

#product .single-c .info-links__item+#product .single-c .info-links__item {
  border-top: 1px solid #f1f3f5;
}

#product .single-c .info-links__item:hover {
  background: #f8f9fa;
}

#product .single-c .info-links__item:focus-visible {
  outline: 2px solid #1e5bff;
  outline-offset: 2px;
}

#product .single-c .info-links__icon {
  flex: 0 0 auto;
  width: 24px;
  /* „slot” na ikonę */
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#product .single-c .info-links__icon svg {
  display: block;
}

#product .single-c .info-links__text {
  flex: 1 1 auto;
  min-width: 0;
}

#product .single-c .info-links__text .info-links__title {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .single-c .info-links__text .info-links__sub {
  display: block;
  margin-top: 1px;
  color: #888;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

#product .single-c .info-links__arrow {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
}

#product .single-c .info-links__arrow svg {
  display: block;
}

/* Ogólne style dla productSpy zostały przeniesione przed media queries (linia ~12055) */

/* Sticky state - smaller font and padding when navigation is pinned to top */
#product .product-container2 #productSpy.nav-full.is-sticky .nav-link,
#product .product-container2 #productSpy.nav-full[style*="position: sticky"] .nav-link {
  font-size: 14px;
  line-height: 21px;
  padding-top: 10px;
  padding-bottom: 10px;
}

@media (min-width: 768px) {
  #product .product-container2 #productSpy.nav-full {
    gap: 0;
    justify-content: space-between;
  }

  #product .product-container2 #productSpy.nav-full .nav-link {
    flex: 1 1 0;
    text-align: center;
  }
}

#product .product-container2 {
  /* chips */
}

#product .product-container2 .pdesc__inner {
  max-width: 952px;
  margin-inline: auto;
}

#product .product-container2 .pdesc .pdesc__video {
  position: relative;
  width: 100%;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
}

#product .product-container2 .pdesc .pdesc__video::before {
  content: "";
  display: block;
  padding-bottom: 62.5%;
}

#product .product-container2 .pdesc .pdesc__video iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@supports (aspect-ratio: 16/10) {
  #product .product-container2 .pdesc .pdesc__video {
    aspect-ratio: 16/10;
  }

  #product .product-container2 .pdesc .pdesc__video::before {
    padding-bottom: 0;
  }
}

#product .product-container2 .pdesc__hero {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  overflow: hidden;
}

#product .product-container2 .pdesc .pdesc__h2 span {
  color: #000;
  margin-top: 96px;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: 54px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 8px;
}

#product .product-container2 .pdesc .pdesc__h2 .pdesc__line {
  flex: 1 1 auto;
  height: 4px;
  display: block;
}

#product .product-container2 .pdesc .pdesc__h3 {
  margin-top: 80px;
  color: #000;
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  margin-bottom: 32px;
}

@media (max-width: 576px) {
  #product .product-container2 .pdesc .pdesc__h2 {
    font-size: 24px;
    gap: 12px;
  }

  #product .product-container2 .pdesc .pdesc__h2 .pdesc__line {
    height: 3px;
  }
}

@media (max-width: 576px) {
  #product .product-container2 .pdesc .pdesc__h2 {
    font-size: 24px;
    gap: 12px;
  }

  #product .product-container2 .pdesc .pdesc__h2::after {
    height: 2px;
  }
}

#product .product-container2 .pdesc .pdesc__text {
  margin-bottom: 40px;
}

#product .product-container2 .pdesc .pdesc__text p {
  color: #2d2d2d;
  font-size: 18px;
  font-weight: 400;
  line-height: 180%;
  /* 32.4px */
  letter-spacing: 0.18px;
  margin-bottom: 8px;
}

#product .product-container2 .pdesc .pdesc__subtle {
  color: #000;
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 16px;
  text-align: center;
}

#product .product-container2 .pdesc .pdesc__chips {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 0 0 8px;
}

#product .product-container2 .pdesc .pdesc-chip {
  width: 100%;
  min-height: 56px;
  padding: 24px 32px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 0;
  background: #f5f5f5;
  color: #2b2b2b;
}

#product .product-container2 .pdesc .pdesc-chip__icon {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
}

#product .product-container2 .pdesc .pdesc-chip__icon svg {
  width: 24px;
  height: 24px;
  color: #4b4b4b;
}

#product .product-container2 .pdesc .pdesc-chip__label {
  color: #000;
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  margin-left: 30px;
}

#product .product-container2 .pdesc .pdesc-chip--green {
  background: #eaf7e9;
  border-color: #ddefe3;
}

#product .product-container2 .pdesc .pdesc-chip--green .pdesc-chip__icon svg {
  color: #3f5140;
}

#product .product-container2 .pdesc .pdesc-chip--blue {
  background: #eaf3ff;
  border-color: #dce8f6;
}

#product .product-container2 .pdesc .pdesc-chip--blue .pdesc-chip__icon svg {
  color: #3c4757;
}

#product .product-container2 .pdesc {
  /* mobile: 1 kolumna */
}

@media (max-width: 576px) {
  #product .product-container2 .pdesc .pdesc__chips {
    grid-template-columns: 1fr;
  }

  #product .product-container2 .pdesc .pdesc-chip {
    min-height: 52px;
    padding: 12px 20px;
    gap: 12px;
  }
}

#product .product-container2 {
  /* ===== Konstrukcja (max 952px) ===== */
}

#product .product-container2 .pbuild {
  padding: 0 16px;
}

#product .product-container2 .pbuild .pbuild__inner {
  max-width: 952px;
  margin: 0 auto;
}

#product .product-container2 .pbuild {
  /* pojedynczy wiersz */
}

#product .product-container2 .pbuild .pbuild__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 50%;
  /* tekst | obraz */
  align-items: end;
  gap: 48px;
  padding: 32px 0;
}

#product .product-container2 .pbuild .pbuild__text {
  padding: 16px 0;
}

#product .product-container2 .pbuild .pbuild__no {
  margin: 6px 0 15%;
  color: #888;
  font-size: 28px;
  font-weight: 400;
  line-height: 36px;
}

#product .product-container2 .pbuild .pbuild__title {
  color: #000;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  letter-spacing: -0.09px;
  margin-bottom: 8px;
}

#product .product-container2 .pbuild .pbuild__desc {
  color: #595959;
  font-size: 18px;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
}

#product .product-container2 .pbuild {
  /* obraz po prawej */
}

#product .product-container2 .pbuild .pbuild__media {
  margin: 0;
  border-radius: 12px;
  overflow: hidden;
}

#product .product-container2 .pbuild .pbuild__media img {
  width: 100%;
  height: auto;
  aspect-ratio: 16/10;
  /* przycięcie podobne do zrzutu */
  object-fit: cover;
  display: block;
}

@media (max-width: 768px) {
  #product .product-container2 .pbuild .pbuild__item {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  #product .product-container2 .pbuild .pbuild__media {
    order: 2;
  }

  #product .product-container2 .pbuild .pbuild__text {
    order: 1;
  }
}

#product .product-container2 {
  /* Sekcja kart cech */
}

#product .product-container2 .pfeats {
  max-width: 952px;
  /* zgodnie z makietą */
  margin: 0 auto;
}

#product .product-container2 .pfeats__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

#product .product-container2 .pfeats__item {
  background: #f7f7f7;
  /* delikatne tło karty */
  border: 1px solid #eaeaea;
  /* subtelna ramka jak na podglądzie */
  border-radius: 12px;
  padding: 18px 20px;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.02);
  /* leciutki relief */
}

#product .product-container2 .pfeats__title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin-bottom: 64px;
}

#product .product-container2 .pfeats__desc p {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  line-height: 1.65;
  color: #5a5a5a;
  magin-bottom: 0;
}


/* 2 kolumny na szerokich ekranach */
@media (min-width: 768px) {
  #product .product-container2 .pfeats__inner {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  #product .product-container2 .pfeats__item {
    padding: 20px 22px;
  }
}

@media (min-width: 1200px) {
  #product .product-container2 .pfeats__inner {
    gap: 24px;
  }
}

#product .product-container2 .pduo {
  max-width: 952px;
  margin: 0 auto;
  margin-top: 36px;
}

#product .product-container2 .pduo__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

#product .product-container2 .pduo__item {
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #eaeaea;
  background: #f7f7f7;
  aspect-ratio: 16/9;
}

#product .product-container2 .pduo__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (min-width: 768px) {
  #product .product-container2 .pduo__grid {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
}



#product .product-container2 .pvid {
  max-width: 952px;
  margin: 0 auto;
  margin-top: 40px;
}

#product .product-container2 .pvid .pvid__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

@media (min-width: 680px) {
  #product .product-container2 .pvid .pvid__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Pokazuj wszystkie filmiki na desktop */
  #product .product-container2 .pvid-card.pvid-card--hidden-mobile {
    display: block;
  }

  /* Ukryj przycisk "Pokaż więcej filmików" na desktop */
  #product .product-container2 .pvid__show-more-mobile {
    display: none;
  }
}

#product .product-container2 .pvid-card {
  display: block;
  text-decoration: none;
  color: inherit;
}

#product .product-container2 .pvid-card__thumb {
  position: relative;
  display: block;
  padding-top: 56.25%;
  /* 16:9 */
  border-radius: 12px;
  overflow: hidden;
  background: #f3f3f3;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06) inset;
}

#product .product-container2 .pvid-card .js-yt-thumb {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateZ(0);
  transition: transform 0.35s ease;
}

#product .product-container2 .pvid-card .pvid-play {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  border: 1px solid rgba(255, 255, 255, 0.35);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
  pointer-events: none;
  /* klik obsługuje <a> */
  transition: transform 0.2s ease, background 0.2s ease;
}

#product .product-container2 .pvid-card .pvid-play svg {
  display: block;
}

#product .product-container2 .pvid-card__duration {
  position: absolute;
  right: 8px;
  bottom: 8px;
  padding: 2px 6px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.72);
  color: #fff;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.2px;
}

#product .product-container2 .pvid-card__title {
  margin-top: 10px;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 600;
  color: #121212;
}

#product .product-container2 .pvid-card {
  /* hover/focus */
}

#product .product-container2 .pvid-card:hover .js-yt-thumb {
  transform: scale(1.03);
}

#product .product-container2 .pvid-card:hover .pvid-play {
  transform: scale(1.06);
  background: rgba(0, 0, 0, 0.55);
}

#product .product-container2 {
  /* ========== Modal ========== */
}

#product .product-container2 .pvid-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

#product .product-container2 .pvid-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#product .product-container2 .pvid-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
}

#product .product-container2 .pvid-modal__dialog {
  position: relative;
  width: min(96vw, 1200px);
  height: min(92vh, 760px);
  margin: auto;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
}

#product .product-container2 .pvid-modal__close {
  position: absolute;
  top: 10px;
  right: 12px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.65);
  color: #fff;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  display: grid;
  place-items: center;
  z-index: 2;
  transition: transform 0.15s ease, background 0.2s ease;
}

#product .product-container2 .pvid-modal__close:hover {
  transform: scale(1.06);
  background: rgba(0, 0, 0, 0.8);
}

#product .product-container2 .pvid-modal__layout {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 0;
  height: 100%;
}

@media (max-width: 900px) {
  #product .product-container2 .pvid-modal__layout {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
  }
}

#product .product-container2 {
  /* Lista miniatur (lewa kolumna) */
}

#product .product-container2 .pvid-mlist {
  background: #fafafa;
  border-right: 1px solid #e9e9e9;
  overflow: auto;
  padding: 12px;
}

@media (max-width: 900px) {
  #product .product-container2 .pvid-mlist {
    border-right: 0;
    border-bottom: 1px solid #e9e9e9;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 260px;
    gap: 12px;
    padding: 10px 12px;
    overflow-x: auto;
  }
}

#product .product-container2 .pvid-mlist__item {
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

#product .product-container2 .pvid-mlist__item:hover {
  border-color: #e9e9e9;
  background: #fcfcfc;
}

#product .product-container2 .pvid-mlist__item.is-active {
  box-shadow: inset 0 0 0 2px #e4fd71;
  background: #fbffe8;
}

#product .product-container2 .pvid-mlist__thumb-wrap {
  position: relative;
  width: 120px;
  height: 68px;
  /* ~16:9 */
  border-radius: 10px;
  overflow: hidden;
  background: #eee;
}

#product .product-container2 .pvid-mlist__thumb {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#product .product-container2 .pvid-mlist__play {
  position: absolute;
  left: 8px;
  bottom: 8px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(0, 0, 0, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.35);
}

#product .product-container2 .pvid-mlist__duration {
  position: absolute;
  right: 8px;
  bottom: 8px;
  padding: 2px 6px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.72);
  color: #fff;
  font-size: 11px;
  line-height: 1;
}

#product .product-container2 .pvid-mlist__title {
  font-size: 14px;
  line-height: 1.35;
  font-weight: 600;
  color: #111;
}

#product .product-container2 {
  /* Player (prawa kolumna) */
}

#product .product-container2 .pvid-player {
  background: #000;
  display: grid;
  place-items: center;
}

#product .product-container2 .pvid-player__ratio {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  /* 16:9 */
  background: #000;
}

#product .product-container2 .pvid-player__ratio iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  background: #000;
}

#product .product-container2 .product-spec {
  max-width: 952px;
  margin: 0 auto;
}

#product .product-container2 .product-spec h2 svg {
  width: 50%;
}

#product .product-container2 .product-spec {
  /* Produkt – cechy (pf__) */
}

#product .product-container2 .product-spec .product-features .container {
  max-width: 952px;
}

#product .product-container2 .product-spec .product-features .pf__group-title {
  appearance: none;
  border: 0;
  background: transparent;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #000;
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 16px;
  padding-left: 16px;
  margin-bottom: 16px;
  margin-top: 48px;
}

#product .product-container2 .product-spec .product-features .pf__group-title .pf__group-label {
  pointer-events: none;
}

#product .product-container2 .product-spec .product-features .pf__group-title .pf__chev svg {
  transition: transform 0.2s ease;
}

#product .product-container2 .product-spec .product-features .pf__group-title[aria-expanded=false] .pf__chev svg {
  transform: rotate(180deg);
}

#product .product-container2 .product-spec .product-features .pf__panel {
  display: block;
}

#product .product-container2 .product-spec .product-features .pf__item {
  margin-bottom: 8px;
}

#product .product-container2 .product-spec .product-features {
  /* wiersz */
}

#product .product-container2 .product-spec .product-features .data-sheet {
  display: flex;
  margin: 0;
  flex-direction: column;
}

#product .product-container2 .product-spec .product-features .data-sheet dt.name {
  color: #595959;
  font-family: Sora;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  width: 50%;
  margin: 0;
  padding: 14px 24px;
}

#product .product-container2 .product-spec .product-features .data-sheet dd.value {
  color: #000;
  font-family: Sora;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  width: 50%;
  margin: 0;
  padding: 14px 24px;
}

#product .product-container2 .product-spec .product-features .data-sheet .figma-feature-row {
  display: flex;
  width: 100%;
}

#product .product-container2 .product-spec .product-features .data-sheet .figma-feature-row:nth-child(odd) {
  background: #F8F8F8;
  border-radius: 4px;
}

#product .product-container2 .product-spec .product-features .pf__group-title {
  padding: 24px 0;
  margin: 0;
  border-bottom: 2px solid transparent;
  transition: all 0.2s ease;
}

#product .product-container2 .product-spec .product-features .pf__group-label {
  font-family: Sora;
  font-size: 20px;
  font-weight: 600;
  line-height: 28px;
  color: #000;
}

#product .product-container2 .product-spec .product-features .pf__chev svg {
  transform: rotate(0deg);
}

#product .product-container2 .product-spec .product-features .pf__group-title[aria-expanded=false] .pf__chev svg {
  transform: rotate(180deg);
}

.technical-spec-header {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 32px;
}

.technical-spec-header h2 {
  font-family: Sora;
  font-size: 32px;
  font-weight: 600;
  line-height: 40px;
  color: #000;
  margin: 0;
  white-space: nowrap;
}

.technical-spec-header .header-line {
  height: 2px;
  background: linear-gradient(90deg, #E5E5E5 0%, #E4FD71 100%);
  flex-grow: 1;
}


#product .product-container2 .product-spec .product-features {
  /* zebra dla całych wierszy (delikatnie) */
}

#product .product-container2 .product-spec .product-features .pf__panel .pf__item {
  padding: 12px 16px;
  margin-bottom: 0;
}

#product .product-container2 .product-spec .product-features .pf__panel .pf__item .name,
#product .product-container2 .product-spec .product-features .pf__panel .pf__item .value {
  color: #888;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 0;
}

#product .product-container2 .product-spec .product-features .pf__panel .pf__item .value {
  color: rgb(0, 0, 0);
}

#product .product-container2 .product-spec .product-features .pf__panel .pf__item:nth-child(odd) {
  border-radius: 8px;
  background: #f5f5f5;
}

#product .product-container2 .product-spec .product-features {
  /* mobile */
}

@media (max-width: 576px) {
  #product .product-container2 .product-spec .product-features .data-sheet {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  #product .product-container2 .product-spec .product-features .data-sheet .name {
    border-radius: 8px 8px 0 0;
  }

  #product .product-container2 .product-spec .product-features .data-sheet .value {
    border-radius: 0 0 8px 8px;
  }
}

#product .tyres-related {
  margin-top: 80px;
}

#product .tyres-related .row {
  margin-left: 4px;
  margin-right: 4px;
}

#product .tyres-related .row>* {
  padding-left: 4px;
  padding-right: 4px;
}

#product .tyres-related .tyres-card {
  overflow: hidden;
  text-decoration: none;
  color: inherit;
}

#product .tyres-related {
  /* Zdjęcie */
}

#product .tyres-related .photos img {
  width: 100%;
  border: 1px solid #e5e5e5;
  border-radius: 16px;
  display: block;
}

#product .tyres-related .title1 {
  position: relative;
  margin-top: 12px;
  margin-bottom: 2px;
  padding-right: 20px;
  position: relative;
}

#product .tyres-related .title1 .title-product {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 2px;
}

#product .tyres-related .title1 h3 {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 0;
}

#product .tyres-related .title1 svg {
  position: absolute;
  top: 6px;
  right: 4px;
  fill: #b2b2b2;
  /* jeśli masz fill na <path>, możesz usunąć ten fill tutaj */
}

#product .tyres-related {
  /* Cena */
}

#product .tyres-related .price1 p {
  color: #595959;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
}

#product .tyres-related .discount {
  text-decoration: line-through;
  color: #888;
}

#product .tyres-related {
  /* Pasek postępu – 3 segmenty (dots) */
}

#product .tyres-related .tyres-progress {
  --seg-index: 0;
  /* 0,1,2 ustawiane w JS */
  position: relative;
  width: 100%;
  height: 4px;
}

#product .tyres-related .tyres-progress .track {
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background: #ececec;
  background-image: linear-gradient(#d0d0d0, #d0d0d0), linear-gradient(#d0d0d0, #d0d0d0), linear-gradient(#ececec, #ececec);
  background-size: 1px 100%, 1px 100%, 100% 100%;
  background-position: 33.333% 0, 66.666% 0, 0 0;
  background-repeat: no-repeat;
}

#product .tyres-related .tyres-progress .dot {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(var(--seg-index) * 33.333%);
  width: 33.333%;
  border-radius: 999px;
  background: #b5b5b5;
  transition: left 0.25s ease;
}

#product .tyres-related {
  /* Strzałki */
}

#product .tyres-related .tyres-nav .btn {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  margin: 0 2px;
}

#product .tyres-related {
  /* Ogranicz override do nawigacji sekcji, nie globalnie */
}

#product .tyres-related .tyres-nav .btn-dark {
  background-color: #000;
}

#product .tyres-related .tyres-controls {
  margin-top: 20px;
}

#product .tyres-related {
  /* RWD: na mobile ukryj pasek, użyj indicators */
}

@media (max-width: 991.98px) {
  #product .tyres-related .tyres-progress {
    display: none;
  }
}

#product .tyres-related2 {
  margin-top: 96px;
}

#product .aer-benefits {
  margin-top: 48px;
}

#product .aer-benefits .aer-benefits-card {
  border-radius: 16px;
  overflow: hidden;
}

/* Delivery service images - desktop */
@media (min-width: 768px) {
  #product .aer-benefits .aer-delivery-image-desktop {
    display: block !important;
    width: 100%;
    height: auto;
    margin-bottom: 24px;
  }

  #product .aer-benefits .aer-delivery-image-mobile {
    display: none !important;
  }
}

#product .aer-benefits .aer-benefits-card p {
  margin-bottom: 0;
}

#product .aer-benefits .aer-benefits-cover {
  display: block;
  width: 100%;
  /* zachowaj proporcję i ładne przycięcie */
  aspect-ratio: 16/6;
  object-fit: cover;
}

#product .aer-benefits .aer-benefits-grid {
  background: #fafafa;
  padding-left: 48px;
  padding-right: 48px;
}

#product .aer-benefits .aer-benefits-grid .aer-benefit {
  min-height: 140px;
}

#product .aer-benefits .aer-benefits-grid .aer-benefit .aer-num {
  color: #888;
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 32px;
}

#product .aer-benefits .aer-benefits-grid .aer-benefit h3 {
  margin: 0;
  color: #141414;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
  color: #000;
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 0;
}

#product .aer-benefits .aer-benefits-grid {
  /* separatory – mobile: tylko poziome między kolejnymi kartami */
}

@media (max-width: 767.98px) {
  #product .aer-benefits .aer-benefits-grid .aer-benefit+.aer-benefit {
    border-top: 1px solid #e5e5e5;
  }
}

#product .aer-benefits .aer-benefits-grid {
  /* separatory – desktop: pionowy między kolumnami + poziomy między wierszami */
}

@media (min-width: 768px) {

  #product .aer-benefits .aer-benefits-grid .aer-benefit:nth-child(1n) .aer-benefit-sz,
  #product .aer-benefits .aer-benefits-grid .aer-benefit:nth-child(3n) .aer-benefit-sz {
    padding-right: 56px;
  }

  #product .aer-benefits .aer-benefits-grid .aer-benefit:nth-child(2n) .aer-benefit-sz,
  #product .aer-benefits .aer-benefits-grid .aer-benefit:nth-child(4n) .aer-benefit-sz {
    padding-left: 56px;
  }

  #product .aer-benefits .aer-benefits-grid .aer-benefit:nth-child(2n) {
    /* prawa kolumna */
  }

  #product .aer-benefits .aer-benefits-grid .aer-benefit:nth-child(2n) .aer-benefit-sz {
    border-left: 1px solid #e5e5e5;
  }

  #product .aer-benefits .aer-benefits-grid .aer-benefit:nth-child(n+3) {
    border-top: 1px solid #e5e5e5;
  }

  #product .aer-benefits .aer-benefits-grid .aer-benefit .aer-benefit-sz {
    margin-bottom: 32px;
    margin-top: 32px;
  }
}

#product {
  /* CTA tiles */
}

#product .aer-cta {
  margin-top: 96px;
}

#product .aer-cta .row>* {
  padding-left: 4px;
  padding-right: 4px;
  margin-top: 8px;
}

#product .aer-cta .aer-cta-card {
  --aer-bg: #f5f7fa;
  --aer-fg: #111;
  display: block;
  position: relative;
  padding: 24px;
  min-height: 116px;
  border-radius: 12px;
  background: var(--aer-bg);
  color: var(--aer-fg);
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

#product .aer-cta .aer-cta-card:hover {}

#product .aer-cta .aer-cta-card:focus-visible {
  outline: 3px solid rgba(0, 0, 0, 0.2);
  outline-offset: 2px;
}

#product .aer-cta .aer-cta-card .aer-cta-icon {
  line-height: 0;
  margin-bottom: 20px;
  color: #000;
  /* kolor ikon */
  opacity: 0.9;
}

#product .aer-cta .aer-cta-card .aer-cta-title {
  color: #000;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 2px;
}

#product .aer-cta .aer-cta-card .aer-cta-sub {
  margin: 0;
  color: #6b6b6b;
  font-size: 13px;
  line-height: 1.4;
}

#product .aer-cta .aer-cta-card .aer-cta-arrow {
  right: 14px;
  bottom: 14px;
  color: #111;
  transform: translateX(0);
  transition: transform 0.2s ease;
  margin-top: 32px;
  text-align: right;
}

#product .aer-cta .aer-cta-card:hover .aer-cta-arrow {
  transform: translateX(4px);
}

#product .aer-cta {
  /* warianty kolorystyczne jak na screenie */
}

#product .aer-cta .aer-cta-sky {
  --aer-bg: #eaf6ff;
}

#product .aer-cta {
  /* jasny błękit */
}

#product .aer-cta .aer-cta-sand {
  --aer-bg: #d8cbbb;
}

#product .aer-cta {
  /* beż/piasek */
}

@media (min-width: 768px) {
  #product .aer-cta .aer-cta-card {
    min-height: 130px;
  }
}

#product .aer-cta {
  /* zaokrąglenie rogów identyczne z obrazkiem/screeenem */
}

.rounded-4 #product .aer-cta .aer-cta-card {
  border-radius: 16px;
}

#product .aer-attachments {
  display: grid;
  gap: 0.5rem;
}

#product .aer-attach {
  --bg: #f5f5f5;
  --fg: #111;
  display: grid;
  grid-template-columns: 24px 1fr 14px;
  align-items: center;
  gap: 14px;
  padding: 24px;
  border-radius: 12px;
  background: var(--bg);
  color: var(--fg);
  text-decoration: none;
  transition: background 0.15s ease, transform 0.1s ease;
}

#product .aer-attach:hover {
  background: #efefef;
  transform: translateY(-1px);
}

#product .aer-attach .aer-ic {
  line-height: 0;
  color: #000;
  opacity: 0.9;
}

#product .aer-attach .aer-text {
  min-width: 0;
}

#product .aer-attach .aer-title {
  display: block;
  margin: 0;
  color: #141414;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
}

#product .aer-attach .aer-sub {
  display: block;
  margin-top: 2px;
  color: #6b6b6b;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#product .aer-attach .aer-arrow {
  line-height: 0;
  color: #111;
}

#product {
  /* ===== Consult CTA ===== */
}

#product .aer-consult {
  --bg: #0b0b0b;
  --fg: #f5f5f5;
  --muted: #b7b7b7;
  --accent: #d9ff69;
  /* neon */
  --glow: rgba(217, 255, 105, 0.35);
  margin-top: 8px;
}

#product .aer-consult .aer-consult__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: var(--bg);
  color: var(--fg);
  padding: 16px 18px;
  border-radius: 14px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

#product .aer-consult .aer-consult__left {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

#product .aer-consult .aer-consult__avatar {
  position: relative;
  width: 80px;
  height: 80px;
  flex: 0 0 80px;
  display: inline-grid;
  place-items: center;
  margin-right: 40px;
}

#product .aer-consult .aer-consult__avatar p {
  margin-bottom: 0;
}

#product .aer-consult .aer-consult__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 4px;
  width: 80px;
}

#product .aer-consult .aer-consult__avatar .aer-consult__badge {
  position: absolute;
  right: -17px;
  bottom: 22px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--accent);
  color: #0b0b0b;
  display: grid;
  place-items: center;
  box-shadow: 0 0 16px var(--glow);
}

#product .aer-consult .aer-consult__avatar .aer-consult__badge svg img {
  width: 32px;
  height: 32px;
}

#product .aer-consult .aer-consult__text {
  min-width: 0;
  max-width: 520px;
}

#product .aer-consult .aer-consult__title {
  margin-bottom: 12px;
}

#product .aer-consult .aer-consult__title p {
  color: #e4fd71;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 0;
}

#product .aer-consult .aer-consult__desc p {
  color: #b2b2b2;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 0;
}

#product .aer-consult .aer-consult__desc p strong {
  color: #fff;
  font-weight: 400;
}

#product .aer-consult .aer-consult__right {
  flex: 0 0 auto;
}

#product .aer-consult {
  /* Neonowy przycisk */
}

#product .aer-consult .btn-aer-glow {
  border-radius: 4px;
  border: 1px solid #f2febd;
  background: #e4fd71;
  box-shadow: 0 0 44px 0 rgba(228, 253, 113, 0.3);
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

#product .aer-consult .btn-aer-glow:hover,
#product .aer-consult .btn-aer-glow:active,
#product .aer-consult .btn-aer-glow:focus {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
}

#product .aer-consult {
  /* Responsywnie: button pod tekstem na małych ekranach */
}

@media (max-width: 767.98px) {
  #product .aer-consult .aer-consult__inner {
    flex-direction: column;
    align-items: flex-start;
    padding: 14px;
    gap: 14px;
  }

  #product .aer-consult .aer-consult__right {
    width: 100%;
  }

  #product .aer-consult .btn-aer-glow {
    width: 100%;
    text-align: center;
  }
}

#product .category-same-other-products {
  margin-top: 80px;
}

#product .category-same-other-products .single-header {
  margin-bottom: 32px;
}

#product .category-same-other-products .single-header p {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  /* 128.571% */
  margin-bottom: 0;
}

#product {
  /* Live section – wszystko zagnieżdżone w jednej klasie */
}

#product .live-sec {
  border-radius: 12px;
}

#product .live-sec-product {
  background: #d7c7b7;
  margin-top: 96px;
  border-radius: 12px;
  background: #d3c4b4;
}

#product .live-sec-product .container>.row {
  align-items: stretch;
}

#product .live-sec-product .container>.row>[class*=col-] {
  display: flex;
}

#product .live-sec-product .container>.row>[class*=col-]>* {
  width: 100%;
}

#product .live-sec-product .ev-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  /* <<< centrum w pionie */
  height: 100%;
}

#product .live-sec-product {
  /* Prawa – zdjęcie na pełną wysokość wiersza */
}

#product .live-sec-product .ev-hero {
  height: 100%;
  min-height: 340px;
  overflow: hidden;
}

#product .live-sec-product .ev-hero p {
  margin-bottom: 0;
}

#product .live-sec-product .ev-hero img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-top-right-radius: 12px;
  border-bottom-right-radius: 12px;
}

#product .live-sec-product {
  /* --- reszta Twoich styli bez zmian --- */
}

#product .live-sec-product .ev-panel {
  padding-left: 48px;
  padding-right: 56px;
}

#product .live-sec-product .ev-panel .ev-head {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 56px;
}

#product .live-sec-product .ev-panel .ev-head .ev-badge {
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: 50%;
}

#product .live-sec-product .ev-panel .ev-head .ev-badge span {
  display: flex;
  width: 48px;
  height: 48px;
  padding: 16px;
  justify-content: space-between;
  align-items: center;
  border-radius: 80px;
  background: #e4fd71;
  box-shadow: 0 0 44px 0 #e4fd71;
}

#product .live-sec-product .ev-panel .ev-head .ev-title p {
  color: #000;
  margin-bottom: 0;
  font-weight: 600;
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 36px;
  /* 128.571% */
}

#product .live-sec-product .ev-panel .ev-list {
  list-style: none;
  margin: 18px 0 16px;
  padding: 0;
  margin-top: 0;
}

#product .live-sec-product .ev-panel .ev-list .ev-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px 0;
  border-top: 1px solid rgb(178, 165, 150);
}

#product .live-sec-product .ev-panel .ev-list .ev-item:last-child {
  border-bottom: 1px solid rgb(178, 165, 150);
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-meta .ev-line {
  display: flex;
  gap: 8px;
  align-items: baseline;
  color: rgb(0, 0, 0);
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-meta .ev-line strong {
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-meta .ev-line span {
  color: rgb(113, 102, 89);
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0;
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-meta .ev-date {
  color: rgb(0, 0, 0);
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 4px;
  background: #e4d7ca;
  border: none;
  color: rgb(0, 0, 0);
  text-decoration: none;
  font-size: 14px;
  line-height: 20px;
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-btn .ne {
  width: 14px;
  height: 14px;
  stroke: #1f2727;
  stroke-width: 2;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#product .live-sec-product .ev-panel .ev-list .ev-item .ev-btn:hover {
  filter: brightness(0.98);
}

#product .live-sec-product .ev-panel .ev-list .ev-item:first-child {
  border-top: none;
  padding-top: 0;
}

#product .live-sec-product .ev-panel .ev-calendar {
  display: inline-block;
  margin-top: 18px;
  color: #1b1b1b;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: 7%;
  text-underline-offset: 0.6em;
  text-align: center;
  color: rgb(0, 0, 0);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
}

@media (max-width: 991.98px) {
  #product .live-sec-product {
    /* na mobile wracamy do treści od góry */
  }

  #product .live-sec-product .container>.row>[class*=col-] {
    display: block;
  }

  #product .live-sec-product .ev-panel {
    display: block;
    padding: 16px 18px 22px;
  }

  #product .live-sec-product .ev-head .ev-title p {
    font-size: 24px;
    line-height: 32px;
  }

  #product .live-sec-product .ev-hero {
    border-left: 0;
    margin-top: 18px;
    border-radius: 12px;
    overflow: hidden;
  }
}

#product .faq-section {
  margin-top: 48px;
}

#product .faq-section .faq-card {
  border-radius: 16px;
  border: 1px solid #e5e5e5;
  padding: 32px;
  margin-bottom: 8px;
}

#product .faq-section .faq-card .card-body {
  padding: 0;
}

#product .faq-section .faq-card .card-body .faq-head {
  margin-bottom: 20px;
}

#product .faq-section .faq-card .card-body .faq-head .faq-q {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  margin-bottom: 6px;
}

#product .faq-section .faq-card .card-body .faq-head .faq-asker {
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap {
  margin-top: 6px;
  display: flex;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-reply-ico {
  width: 80px;
  min-width: 80px;
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 24px;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap {
  /* alias: obsłuż zarówno .faq-content jak i istniejącą .desc2123 */
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 {
  flex: 1 1 auto;
  border-radius: 12px;
  background: #fafafa;
  padding: 32px;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-answer-meta,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-answer-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 6px;
  margin-bottom: 18px;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-answer-meta .faq-author,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-answer-meta .faq-author {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-answer-meta .faq-author .faq-avatar,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-answer-meta .faq-author .faq-avatar {
  border-radius: 40px;
  background: #e4fd71;
  display: flex;
  width: 24px;
  height: 24px;
  padding: 8px;
  justify-content: space-between;
  align-items: center;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-answer-meta .faq-author .faq-author-line,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-answer-meta .faq-author .faq-author-line {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-answer-meta .faq-author .faq-author-line span,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-answer-meta .faq-author .faq-author-line span {
  color: #888;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 {
  /* bąbelek odpowiedzi */
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .collapse .answer-bubble,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .collapse .answer-bubble {
  color: rgb(89, 89, 89);
  font-size: 15px;
  line-height: 1.6;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 {
  /* przycisk: tylko "Rozwiń"; znika po otwarciu */
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-toggle,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  border-radius: 10px;
  border: 1px solid #d0d5dd;
  color: #344054;
  background: #ffffff;
  padding: 0.35rem 0.6rem;
}

/* Ukryj strzałkę na desktopie */
#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-toggle .faq-toggle-arrow,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-toggle .faq-toggle-arrow {
  display: none;
}

/* Ukryj duplikat avatara na desktopie */
@media (min-width: 768px) {
  #product .aer-consult .aer-consult__right .aer-consult__avatar-mobile {
    display: none !important;
  }

  #product .aer-consult-white .aer-consult__right .aer-consult__avatar-mobile {
    display: none !important;
  }
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-toggle .chev,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-toggle .chev {
  transition: transform 0.2s ease;
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-toggle[aria-expanded=true],
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-toggle[aria-expanded=true] {
  display: none;
  /* po otwarciu chowamy przycisk */
}

#product .faq-section .faq-card .card-body .faq-answer-wrap .faq-content .faq-toggle.collapsed,
#product .faq-section .faq-card .card-body .faq-answer-wrap .desc2123 .faq-toggle.collapsed {
  color: #667085;
  border-color: #eaecf0;
  background: #f9fafb;
}

#product .faq-section .more-btn {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  border-radius: 4px;
  border: 1px solid #b2b2b2;
  margin: 0 auto;
}

#product .faq-section {
  /* bezpiecznik na obce style */
}

#product .faq-section .collapse:not(.show) {
  display: none;
}

#product .faq-section .collapse.show {
  display: block;
}

@media (max-width: 576px) {
  #product .faq-section .faq-card .card-body .faq-head .faq-q {
    font-size: 16px;
  }

  #product .faq-section .faq-card .card-body .faq-answer-wrap .collapse .answer-bubble {
    font-size: 14px;
  }
}

#product {
  /* Gradient nałożony na OSTATNIĄ kartę FAQ */
}

#product .faq-section .faq-card:last-of-type {
  position: relative;
  overflow: hidden;
  /* żeby pseudo-element nie „wyciekał” poza zaokrąglenia */
  border-radius: 16px;
  /* jeśli masz inne zaokrąglenie – dopasuj */
  /* pełnoekranowy fade od góry (transparent) do białego na dole */
}

#product .faq-section .faq-card:last-of-type::after {
  content: "";
  position: absolute;
  inset: 0;
  /* pokryj całą kartę */
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 91.16%);
  border-radius: inherit;
  pointer-events: none;
  /* nie blokuj kliknięć (przycisk „Rozwiń”) */
  z-index: 1;
}

#product .aer-consult-white {
  --bg: #0b0b0b;
  --fg: #f5f5f5;
  --muted: #b7b7b7;
  --accent: #d9ff69;
  /* neon */
  --glow: rgba(217, 255, 105, 0.35);
  margin-top: 16px;
  padding-top: 24px;
  margin-bottom: 96px;
}

#product .aer-consult-white .aer-consult__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: var(--bg);
  color: var(--fg);
  padding: 16px 18px;
  border: 1px solid #e5e5e5;
  border-radius: 16px;
  background: radial-gradient(29.75% 100% at 0 100%, rgba(228, 253, 113, 0.1) 0%, rgba(228, 253, 113, 0) 100%), linear-gradient(#ffffff, #ffffff);
  background-clip: padding-box, border-box;
  -webkit-background-clip: padding-box, border-box;
  box-shadow: 0 0 28px rgba(228, 253, 113, 0.3);
  overflow: hidden;
  /* żeby szanować border-radius */
}

#product .aer-consult-white .aer-consult__left {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

#product .aer-consult-white .aer-consult__avatar {
  position: relative;
  width: 80px;
  height: 80px;
  flex: 0 0 80px;
  display: inline-grid;
  place-items: center;
  margin-right: 40px;
}

#product .aer-consult-white .aer-consult__avatar p {
  margin-bottom: 0;
}

#product .aer-consult-white .aer-consult__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 4px;
  width: 80px;
}

#product .aer-consult-white .aer-consult__avatar .aer-consult__badge {
  position: absolute;
  right: -17px;
  bottom: 22px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--accent);
  color: #0b0b0b;
  display: grid;
  place-items: center;
  box-shadow: 0 0 16px var(--glow);
}

#product .aer-consult-white .aer-consult__avatar .aer-consult__badge svg img {
  width: 32px;
  height: 32px;
}

#product .aer-consult-white .aer-consult__text {
  min-width: 0;
  max-width: 520px;
}

#product .aer-consult-white .aer-consult__title {
  margin-bottom: 8px;
}

#product .aer-consult-white .aer-consult__title p {
  color: rgb(0, 0, 0);
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 0;
}

#product .aer-consult-white .aer-consult__desc p {
  color: rgb(89, 89, 89);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 0;
}

#product .aer-consult-white .aer-consult__desc p strong {
  color: #fff;
  font-weight: 400;
}

#product .aer-consult-white .aer-consult__right {
  flex: 0 0 auto;
}

#product .aer-consult-white {
  /* Neonowy przycisk */
}

#product .aer-consult-white .btn-aer-glow {
  border-radius: 4px;
  border: 1px solid #f2febd;
  background: #e4fd71;
  box-shadow: 0 0 44px 0 rgba(228, 253, 113, 0.3);
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

#product .aer-consult-white .btn-aer-glow:hover {
  transform: translateY(-1px);
}

#product .aer-consult-white {
  /* Responsywnie: button pod tekstem na małych ekranach */
}

@media (max-width: 767.98px) {
  #product .aer-consult-white .aer-consult__inner {
    flex-direction: column;
    align-items: flex-start;
    padding: 14px;
    gap: 14px;
  }

  #product .aer-consult-white .aer-consult__right {
    width: 100%;
  }

  #product .aer-consult-white .btn-aer-glow {
    width: 100%;
    text-align: center;
  }
}

#product .brand-desc {
  position: relative;
  margin-bottom: 56px;
}

#product .brand-desc__content h2,
#product .brand-desc__content h3,
#product .brand-desc__content h4,
#product .brand-desc__content h5,
#product .brand-desc__content h6 {
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}

#product .brand-desc__content p {
  color: #595959;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#product .brand-desc__content.collapse:not(.show) {
  display: block;
  max-height: 380px;
  overflow: hidden;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
}

#product .brand-desc__content.collapse:not(.show)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 188px;
  /* grubość fade'u */
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 91.16%);
  pointer-events: none;
}

#product .brand-desc__toggle {
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 7%;
  text-underline-offset: 70%;
  text-underline-position: from-font;
  background-color: transparent;
  border: none;
  margin: 0 auto;
  margin-top: 20px;
  display: block;
}

#product .brand-desc__toggle[aria-expanded=true] {
  display: none;
}

#product .brand-desc__toggle {
  /* po rozwinięciu chowamy przycisk */
}

#product .brand-desc__content.collapse:not(.show) {
  display: block;
  /* domyślnie bootstrap ukrywa, my pokazujemy fragment */
  max-height: 180px;
  overflow: hidden;
  position: relative;
}

#product .brand-desc__content.collapse:not(.show)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 120px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 91.16%);
  pointer-events: none;
}

#product .brand-desc {
  /* chowamy przycisk po rozwinięciu (Bootstrap sam zmienia aria-expanded) */
}

#product .brand-desc__toggle[aria-expanded=true] {
  display: none;
}

.section-accessories-all {
  /* background: #fafafa; */
}

.section-accessories-all .product-spec {
  max-width: 952px;
  margin: 0 auto;
}

#product .section-accessories {
  /* background: #fafafa; */
  padding-top: 96px;
  padding-bottom: 96px;
  position: relative;
  z-index: 0;
}

#product .section-accessories .container-fluid {
  max-width: 952px;
  margin: 0 auto;
}

#product .section-accessories .pdesc__h2 {
  color: #000;
  margin-bottom: 32px;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: 54px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 8px;
}

#product .section-accessories .pdesc__h2 span {
  color: #000;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
}

#product .section-accessories .pdesc__h2 .pdesc__line {
  flex: 1 1 auto;
  height: 4px;
  display: block;
}


#product .section-accessories .product-miniature .thumbnail-container {
  background-color: transparent;
}

#product .section-accessories .js-tyres-bs {
  margin-top: 32px;
}

#product .section-accessories .tyres-related {
  margin-top: 0;
}

#product .section-accessories .tyres-related .tyres-card {
  background-color: transparent;
}

#product .section-accessories .wishlist-button-add {
  display: none;
}

/* ==========================================================================
 CAROUSEL PEEK EFFECT - All product carousels
 - tyres-related, section-accessories, personalization-related, category-same-other-products
 Desktop: 3 items | Tablet: 2 items + peek | Mobile: 1 item + peek
 ========================================================================== */

/* Height auto for all carousels */
#product .tyres-related .carousel .carousel-inner,
#product .section-accessories .carousel .carousel-inner,
#product .personalization-related .carousel .carousel-inner,
#product .category-same-other-products .carousel .carousel-inner {
  height: auto !important;
}

/* ==========================================================================
 ALL PRODUCT CAROUSELS - Unified Owl-style carousel
 Applies to: tyres-related, tyres-related2, personalization-related, 
             category-same-other-products, product-accessories (section-accessories)
 Each product = own carousel-item with .single1
 Desktop: 3 visible | Tablet: 2 + peek | Mobile: 1 + peek
 ========================================================================== */

#product .tyres-related .carousel .carousel-inner,
#product .personalization-related .carousel .carousel-inner,
#product .category-same-other-products .carousel .carousel-inner,
#product .section-accessories .carousel .carousel-inner {
  display: flex !important;
  flex-wrap: nowrap !important;
  height: auto !important;
}

/* Base: hidden (inactive) */
#product .tyres-related .carousel .carousel-item,
#product .personalization-related .carousel .carousel-item,
#product .category-same-other-products .carousel .carousel-item,
#product .section-accessories .carousel .carousel-item {
  display: none;
  flex: 0 0 33.333%;
  margin-right: 0 !important;
  opacity: 0;
  position: relative;
  transform: none !important;
  padding: 0 8px;
}

/* Active (visible) */
#product .tyres-related .carousel .carousel-item.active,
#product .personalization-related .carousel .carousel-item.active,
#product .category-same-other-products .carousel .carousel-item.active,
#product .section-accessories .carousel .carousel-item.active {
  display: block;
  opacity: 1;
}

/* Desktop: 3 elements (active + 2 next) */
@media (min-width: 768px) {

  #product .tyres-related .carousel .carousel-item.active,
  #product .tyres-related .carousel .carousel-item.active+.carousel-item,
  #product .tyres-related .carousel .carousel-item.active+.carousel-item+.carousel-item,
  #product .personalization-related .carousel .carousel-item.active,
  #product .personalization-related .carousel .carousel-item.active+.carousel-item,
  #product .personalization-related .carousel .carousel-item.active+.carousel-item+.carousel-item,
  #product .category-same-other-products .carousel .carousel-item.active,
  #product .category-same-other-products .carousel .carousel-item.active+.carousel-item,
  #product .category-same-other-products .carousel .carousel-item.active+.carousel-item+.carousel-item,
  #product .section-accessories .carousel .carousel-item.active,
  #product .section-accessories .carousel .carousel-item.active+.carousel-item,
  #product .section-accessories .carousel .carousel-item.active+.carousel-item+.carousel-item {
    display: block;
    opacity: 1;
  }
}

/* Mobile & Tablet: peek effect */
@media (max-width: 991.98px) {

  #product .tyres-related .carousel,
  #product .personalization-related .carousel,
  #product .category-same-other-products .carousel,
  #product .section-accessories .carousel {
    overflow: visible !important;
  }

  #product .tyres-related .carousel .carousel-inner,
  #product .personalization-related .carousel .carousel-inner,
  #product .category-same-other-products .carousel .carousel-inner,
  #product .section-accessories .carousel .carousel-inner {
    overflow: visible !important;
  }
}

/* Mobile: 1 active + peek next */
@media (max-width: 575.98px) {

  #product .tyres-related .carousel .carousel-inner,
  #product .personalization-related .carousel .carousel-inner,
  #product .category-same-other-products .carousel .carousel-inner,
  #product .section-accessories .carousel .carousel-inner {
    margin-right: -15% !important;
  }

  #product .tyres-related .carousel .carousel-item,
  #product .personalization-related .carousel .carousel-item,
  #product .category-same-other-products .carousel .carousel-item,
  #product .section-accessories .carousel .carousel-item {
    flex: 0 0 85% !important;
  }

  /* Peek: next after active */
  #product .tyres-related .carousel .carousel-item.active+.carousel-item,
  #product .personalization-related .carousel .carousel-item.active+.carousel-item,
  #product .category-same-other-products .carousel .carousel-item.active+.carousel-item,
  #product .section-accessories .carousel .carousel-item.active+.carousel-item {
    display: block !important;
    opacity: 0.5 !important;
  }
}

/* Tablet: 2 active + peek third */
@media (min-width: 576px) and (max-width: 991.98px) {

  #product .tyres-related .carousel .carousel-inner,
  #product .personalization-related .carousel .carousel-inner,
  #product .category-same-other-products .carousel .carousel-inner,
  #product .section-accessories .carousel .carousel-inner {
    margin-right: -10% !important;
  }

  #product .tyres-related .carousel .carousel-item,
  #product .personalization-related .carousel .carousel-item,
  #product .category-same-other-products .carousel .carousel-item,
  #product .section-accessories .carousel .carousel-item {
    flex: 0 0 48% !important;
  }

  /* Second element: full visibility */
  #product .tyres-related .carousel .carousel-item.active+.carousel-item,
  #product .personalization-related .carousel .carousel-item.active+.carousel-item,
  #product .category-same-other-products .carousel .carousel-item.active+.carousel-item,
  #product .section-accessories .carousel .carousel-item.active+.carousel-item {
    display: block !important;
    opacity: 1 !important;
  }

  /* Peek: third element */
  #product .tyres-related .carousel .carousel-item.active+.carousel-item+.carousel-item,
  #product .personalization-related .carousel .carousel-item.active+.carousel-item+.carousel-item,
  #product .category-same-other-products .carousel .carousel-item.active+.carousel-item+.carousel-item,
  #product .section-accessories .carousel .carousel-item.active+.carousel-item+.carousel-item {
    display: block !important;
    opacity: 0.5 !important;
  }
}

/* tyres-related2 uses the same unified carousel styles above */

.modal-dialog {
  margin: 16px;
}

@media (max-width: 991.98px) {
  .modal-dialog-centered {
    align-items: start;
  }
}

/* modal calendar */
#liveEventsModal {
  z-index: 1055;
}

#liveEventsModal .modal-dialog.modal-xl {
  max-width: 1080px;
  margin: 0 auto;
}

#liveEventsModal .live-events-modal {
  position: relative;
  border: 0;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.45);
}

#liveEventsModal .live-events-modal .live-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  padding: 0;
  border-radius: 10px;
  background-color: #fff;
  border: 1px solid #e6e6e6;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
  opacity: 1;
  z-index: 3;
}

#liveEventsModal .live-events-modal .live-close:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(32, 132, 255, 0.25);
}

#liveEventsModal .live-events-modal .live-pane {
  background: #decbb9;
  padding: 0 40px;
  color: #111;
  border-right: 1px solid rgba(0, 0, 0, 0.08);
  height: 100%;
  /* >>> scroll tylko w lewej kolumnie do 500px */
  max-height: 500px;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  /* HIDE SCROLLBAR (FF/IE/Edge/Chromium/WebKit) */
  scrollbar-width: none;
  /* Firefox */
  -ms-overflow-style: none;
  /* IE/Edge (legacy) */
}

#liveEventsModal .live-events-modal .live-pane::-webkit-scrollbar {
  /* Chrome/Safari/Edge (Chromium) */
  width: 0 !important;
  height: 0 !important;
}

#liveEventsModal .live-events-modal .live-pane::-webkit-scrollbar-thumb {
  background: transparent;
}

#liveEventsModal .live-events-modal .live-pane {
  /* przyklejony nagłówek, żeby nie znikał przy scrollu */
}

#liveEventsModal .live-events-modal .live-pane .header-title {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #decbb9;
  padding-top: 80px;
  padding-bottom: 8px;
  margin-bottom: 88px;
}

#liveEventsModal .live-events-modal .live-pane .live-title {
  color: #000;
  font-size: 32px;
  font-weight: 600;
  line-height: 40px;
  /* 125% */
  margin-bottom: 0;
}

#liveEventsModal .live-events-modal .live-pane .live-badge {
  min-width: 48px;
  height: 48px;
  padding: 0;
  border-radius: 9999px;
  background: #e4fd71;
  box-shadow: 0 0 44px 0 #e4fd71;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#liveEventsModal .live-events-modal .live-pane {
  /* === fairs-block wygląd w modalu === */
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-block__head {
  display: none;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #b2a596;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px 0;
  border-bottom: 1px solid #b2a596;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item:last-child {
  border-bottom: 0;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item .fairs-left {
  min-width: 0;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item .fairs-left .fairs-title .fair-city {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item .fairs-left .fairs-title .fairs-sub {
  color: #716659;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item .fairs-left .fairs-date {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item .fairs-right .fairs-more {
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-brand-two-8, #e3d9cf);
  display: flex;
  padding: 8px 12px;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

#liveEventsModal .live-events-modal .live-pane .fairs-block--in-modal .fairs-items .fairs-item .fairs-right .fairs-more:hover {
  background: #e8dfd5;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(20, 20, 20, 0.12);
}

#liveEventsModal .live-events-modal {
  /* PRAWA KOLUMNA – zdjęcie */
}

#liveEventsModal .live-events-modal .live-photo {
  min-height: 500px;
  /* spójne z lewą kolumną */
  background-size: cover;
  background-position: center;
  border-left: 1px solid rgba(0, 0, 0, 0.08);
}

#liveEventsModal {
  /* RWD */
}

@media (max-width: 991.98px) {
  #liveEventsModal .live-events-modal {
    border-radius: 12px;
  }

  #liveEventsModal .live-events-modal .live-pane {
    border-right: 0;
    padding-left: 24px;
    padding-right: 24px;
  }

  #liveEventsModal .live-events-modal .live-pane .live-badge {
    min-width: 32px;
    min-height: 32px;
    height: 32px;
  }

  #liveEventsModal .live-events-modal .live-pane .live-badge svg {
    width: 16px;
    height: 16px;
  }

  #liveEventsModal .live-events-modal .live-pane .header-title {
    padding-top: 34px;
    margin-bottom: 32px;
    padding-bottom: 0;
  }

  #liveEventsModal .live-events-modal .live-pane .header-title .live-title {
    color: #000;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
  }

  #liveEventsModal .live-events-modal .live-title {
    font-size: 24px;
  }

  #liveEventsModal .live-events-modal .live-photo {
    min-height: 320px;
  }
}

.backcolor1 {}

#contact #wrapper {
  padding-top: 0;
}

#contact #wrapper>.container-fluid {
  max-width: 100%;
  padding: 0;
}

.advice-hero {
  overflow: hidden;
  background: linear-gradient(180deg, rgba(228, 253, 113, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), linear-gradient(180deg, var(--color-neutral-12-base, #fafafa) 0%, #fff 100%);
  padding-top: 128px;
  padding-bottom: 128px;
}

.advice-hero .container {
  max-width: 800px;
}

.advice-hero .ah-title {
  color: #000;
  text-align: center;
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 54px;
  /* 135% */
  max-width: 600px;
  margin: 0 auto;
  margin-bottom: 80px;
}

.advice-hero .div-btn-section {
  margin-top: 8px;
}

.advice-hero .section-ah-note {
  margin-top: 8px;
}

.advice-hero .ah-note {
  color: #727272;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

.advice-hero-scroller {
  width: 100%;
  overflow: hidden;
  position: relative;
  margin-bottom: 32px;
  mask: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
  -webkit-mask: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
}

.advice-hero-track {
  display: flex;
  gap: 4px;
  animation: scroll-left 60s linear infinite;
  will-change: transform;
}

.advice-hero-track:hover {
  animation-play-state: paused;
}

.advice-hero-track .ah-photo {
  flex-shrink: 0;
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.advice-hero-track .ah-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.advice-hero-track .ah-photo .ah-avatar-placeholder {
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
}

.advice-hero-track .ah-photo .ah-avatar-placeholder:hover {
  transform: scale(1.1);
}

.advice-hero-track .ah-photo .ah-avatar-placeholder svg {
  fill: #fff;
  opacity: 0.9;
}

.ah-cta {
  border-radius: 4px;
  border: 1px solid #183030;
  background: #183030;
  display: flex;
  padding: 16px 48px 16px 24px;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  width: 289px;
  height: 48px;
  position: relative;
  margin: 0 auto;
}

.ah-cta span {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
}

.ah-cta:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: #fff;
}

@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-6.25%);
  }
}

@media (min-width: 768px) {
  .advice-hero-scroller-second {
    display: none;
  }
}

@media (max-width: 767px) {
  .advice-hero-track {
    gap: 3px;
  }

  .advice-hero-track .ah-photo,
  .advice-hero-track .ah-avatar-placeholder {
    width: 72px;
    height: 72px;
  }

  .advice-hero .advice-hero-scroller {
    margin-bottom: 16px;
  }

  .advice-hero .advice-hero-scroller:first-of-type {
    margin-bottom: 8px;
  }

  .advice-hero .advice-hero-scroller.advice-hero-scroller-second .advice-hero-track {
    animation: scroll-left-reverse 60s linear infinite;
  }

  .advice-hero .advice-hero-scroller-second {
    margin-bottom: 48px;
  }

  .advice-hero .ah-note {
    margin-bottom: 0;
  }
}

.ah-shops-section {
  background: #fff;
  padding: 64px 0;
}

.ah-shops-section .ah-shop-section {
  margin-bottom: 48px;
  padding-bottom: 48px;
  border-bottom: 1px solid #e5e5e5;
}

.ah-shops-section .ah-shop-section:last-child {
  border-bottom: none;
  margin-bottom: 0;
}

.ah-shops-section .ah-shop-section .ah-shop-header {
  margin-bottom: 4px;
}

.ah-shops-section .ah-shop-section .ah-shop-header .ah-shop-title {
  color: #000;
  font-size: 28px;
  font-weight: 400;
  line-height: 36px;
  margin-bottom: 0;
}

.ah-shops-section .ah-shop-section .ah-shop-header .ah-shop-title .ah-city-name {
  color: #000;
  font-size: 28px;
  font-weight: 600;
  line-height: 36px;
}

.ah-shops-section .ah-shop-section .ah-shop-address-hours {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20px;
}

.ah-shops-section .ah-shop-section .ah-shop-address-hours .ah-shop-address {
  color: #595959;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  flex: 1;
}

.ah-shops-section .ah-shop-section .ah-shop-address-hours .ah-shop-hours {
  text-align: right;
  color: #000;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  white-space: nowrap;
  margin-left: 2rem;
}

.ah-shops-section .ah-shop-section .ah-shop-address-hours .ah-shop-hours .ah-hours-weekdays,
.ah-shops-section .ah-shop-section .ah-shop-address-hours .ah-shop-hours .ah-hours-saturday {
  display: inline;
}

.ah-shops-section .ah-shop-section .ah-shop-address-hours .ah-shop-hours .ah-hours-separator {
  display: inline;
  color: #333;
  font-weight: 400;
  margin: 0 0.5rem;
}

.ah-shops-section .ah-shop-section .ah-contact-cards {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.ah-shops-section .ah-shop-section .ah-contact-cards .ah-contact-card {
  flex: 1;
  min-width: 260px;
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  transition: all 0.2s ease;
  text-decoration: none;
  color: inherit;
  display: block;
  padding: 20px 24px;
}

.ah-shops-section .ah-shop-section .ah-contact-cards .ah-contact-card:hover {
  text-decoration: none;
  color: inherit;
}

.ah-shops-section .ah-shop-section .ah-contact-cards .ah-contact-card .ah-card-content {
  display: flex;
  justify-content: space-between;
}

.ah-shops-section .ah-shop-section .ah-contact-cards .ah-contact-card .ah-card-content .ah-card-text {
  flex: 1;
}

.ah-shops-section .ah-shop-section .ah-contact-cards .ah-contact-card .ah-card-content .ah-card-text .ah-card-main {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  /* 150% */
  margin-bottom: 12px;
}

.ah-shops-section .ah-shop-section .ah-contact-cards .ah-contact-card .ah-card-content .ah-card-text .ah-card-sub {
  color: #595959;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

.ah-shops-section .ah-shop-section .ah-contact-cards .ah-contact-card .ah-card-content .ah-card-icon {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 1rem;
  flex-shrink: 0;
  border-radius: 4px;
  background: #e4fd71;
}

.ah-contact-cards-mobile {
  display: none !important;
}

@media (min-width: 768px) {
  .ah-shops-mobile {
    display: none;
  }
}



.service-map-section {
  padding: 128px 0;
  background: #f8f9fa;
}

.service-map-section .service-map-text .service-map-title {
  margin-bottom: 32px;
}

.service-map-section .service-map-text .service-map-title p {
  color: #000;
  font-size: 32px;
  font-weight: 400;
  line-height: 40px;
  margin-bottom: 0;
}

.service-map-section .service-map-text .service-map-title p strong {
  color: #000;
  font-size: 32px;
  font-weight: 600;
  line-height: 40px;
  margin-bottom: 0;
}

.service-map-section .service-map-text .service-map-description {
  color: #595959;
  font-size: 18px;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.service-map-section .service-map-text .service-map-description p {
  color: #595959;
  font-size: 18px;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.service-map-section .service-map-text .service-map-cta-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 160px;
}

@media (max-width: 768px) {
  .service-map-section .service-map-text .service-map-cta-container {
    flex-direction: column;
    align-items: flex-start;
  }
}

.service-map-section .service-map-text .service-map-cta {
  border-radius: 4px;
  border: 1px solid #183030;
  background: #183030;
  display: inline-flex;
  padding: 16px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  width: 250px;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  text-decoration: none;
  transition: all 0.3s ease;
  flex-shrink: 0;
}

.service-map-section .service-map-text .service-map-cta:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: #fff;
  text-decoration: none;
}


.service-map-section .service-map-text .service-map-note {
  margin: 0;
  flex: 1;
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  max-width: 370px;
}

.service-map-section .service-map-container {
  min-height: 500px;
  position: relative;
}

.service-map-section .service-map-container .service-map {
  width: 100%;
  height: 500px;
  background: #f8f9fa;
  position: relative;
  overflow: hidden;
  border: 1px solid #dee2e6;
}

@media (max-width: 768px) {
  .service-map-section .service-map-container .service-map {
    height: 400px;
  }
}

.service-map-section .service-map-container .service-marker {
  position: absolute;
  width: 40px;
  height: 40px;
  background: #ffd700;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  z-index: 10;
}

.service-map-section .service-map-container .service-marker:hover {
  transform: scale(1.1);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
}

.service-map-section .service-map-container .service-marker.active {
  transform: scale(1.2);
  background: #198754;
}

.service-map-section .service-map-container .service-marker .service-marker-icon {
  width: 20px;
  height: 20px;
  background: #333;
  border-radius: 2px;
  position: relative;
}

.service-map-section .service-map-container .service-marker .service-marker-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background: #fff;
  border-radius: 1px;
}

.service-map-section .service-map-container .location-popup {
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  transition: all 0.3s ease;
  z-index: 100;
}

.service-map-section .service-map-container .location-popup.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.service-map-section .service-map-container .location-popup .popup-content .popup-close:hover {
  opacity: 0.7;
}

.service-map-section .service-map-container .location-popup .popup-content .popup-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #000;
  margin-bottom: 0.5rem;
}

.service-map-section .service-map-container .location-popup .popup-content .popup-address {
  font-size: 0.9rem;
  color: #000;
  margin-bottom: 1rem;
  line-height: 1.4;
}

.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-email,
.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-phone {
  font-size: 0.9rem;
  transition: opacity 0.2s ease;
}

.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-email:hover,
.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-phone:hover {
  opacity: 0.8;
}

.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-email .popup-icon,
.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-phone .popup-icon {
  flex-shrink: 0;
}

.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-email .popup-icon svg,
.service-map-section .service-map-container .location-popup .popup-content .popup-contact .popup-phone .popup-icon svg {
  stroke: #333;
}

@media (max-width: 768px) {
  .service-map-section .service-map-container .location-popup {
    position: fixed !important;
    bottom: 20px !important;
    left: 20px !important;
    right: 20px !important;
    max-width: none !important;
  }

  .service-map-section .service-map-container .service-marker {
    width: 32px;
    height: 32px;
  }

  .service-map-section .service-map-container .service-marker .service-marker-icon {
    width: 16px;
    height: 16px;
  }

  .service-map-section .service-map-container .service-marker .service-marker-icon::before {
    width: 6px;
    height: 6px;
  }
}

.contact-form-section {
  padding: 128px 0;
  background: #fff;
}

.contact-form-section .contact-form-header {
  margin-bottom: 64px;
}

.contact-form-section .contact-form-header .contact-form-title {
  font-size: 48px;
  font-weight: 700;
  color: #000;
  line-height: 1.1;
  margin-bottom: 24px;
}

@media (max-width: 768px) {
  .contact-form-section .contact-form-header .contact-form-title {
    font-size: 36px;
  }
}

.contact-form-section .contact-form-header .contact-form-subtitle {
  font-size: 18px;
  color: #000;
  line-height: 1.5;
  margin: 0;
}

.contact-form-section .contact-form-container {
  background: #f8f9fa;
  border-radius: 16px;
  padding: 48px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
}

@media (max-width: 768px) {
  .contact-form-section .contact-form-container {
    padding: 32px 24px;
  }
}

.contact-form-section .contact-form .form-group {
  margin-bottom: 32px;
}

.contact-form-section .contact-form .form-group:last-child {
  margin-bottom: 0;
}

.contact-form-section .contact-form .form-label {
  display: block;
  font-size: 16px;
  font-weight: 600;
  color: #000;
  margin-bottom: 12px;
}

.contact-form-section .contact-form .form-select,
.contact-form-section .contact-form .form-control {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #E5E5E5;
  border-radius: 4px;
  font-size: 14px;
  font-family: var(--font-family-family-primary, Sora);
  font-weight: 400;
  line-height: 20px;
  color: #000;
  background: #fff;
  transition: all 0.2s ease;
}

.contact-form-section .contact-form .form-select:focus,
.contact-form-section .contact-form .form-control:focus {
  outline: none;
  border: 1px solid #E5E5E5;
  background: radial-gradient(381.13% 100% at 0% 100%, #E4FD71 0%, #FAFAFA 20.5%);
  box-shadow: none;
}

.contact-form-section .contact-form .form-select::placeholder,
.contact-form-section .contact-form .form-control::placeholder {
  color: #6c757d;
}

.contact-form-section .contact-form .form-select {
  background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 fill=%27none%27 viewBox=%270 0 20 20%27%3e%3cpath stroke=%27%236b7280%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%271.5%27 d=%27m6 8 4 4 4-4%27/%3e%3c/svg%3e");
  background-position: right 12px center;
  background-repeat: no-repeat;
  background-size: 16px 12px;
  padding-right: 48px;
}

.contact-form-section .contact-form .file-upload-area .file-input {
  display: none;
}

.contact-form-section .contact-form .file-upload-area .file-upload-label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  border: 2px dashed #dee2e6;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 20px;
}

.contact-form-section .contact-form .file-upload-area .file-upload-label:hover {
  border-color: #28a745;
  background: #f8fff9;
}

.contact-form-section .contact-form .file-upload-area .file-upload-label .file-upload-icon {
  margin-bottom: 12px;
  color: #6c757d;
  transition: color 0.3s ease;
}

.contact-form-section .contact-form .file-upload-area .file-upload-label .file-upload-text {
  font-size: 16px;
  font-weight: 600;
  color: #000;
  text-align: center;
}

.contact-form-section .contact-form .file-upload-area .file-upload-info {
  margin-top: 12px;
  font-size: 14px;
  color: #6c757d;
  text-align: center;
  margin-bottom: 0;
}

.contact-form-section .contact-form .privacy-consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.contact-form-section .contact-form .privacy-consent .privacy-checkbox {
  width: 20px;
  height: 20px;
  margin: 0;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: none;
  border-radius: 4px;
  background: #F5F5F5;
  position: relative;
  flex-shrink: 0;
  margin-top: 2px;
  transition: all 0.2s ease;
}

.contact-form-section .contact-form .privacy-consent .privacy-checkbox:checked {
  background: var(--background-color-brand-1-normal, #E4FD71);
  border-color: #E4FD71;
}

.contact-form-section .contact-form .privacy-consent .privacy-checkbox:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 10px;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9.4L0 5.4L1.4 4L4 6.6L10.6 0L12 1.4L4 9.4Z' fill='%23183030'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.contact-form-section .contact-form .privacy-consent .privacy-checkbox:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(228, 253, 113, 0.3);
}

.contact-form-section .contact-form .privacy-consent .privacy-label {
  font-size: 14px;
  color: #000;
  line-height: 1.5;
  cursor: pointer;
  margin: 0;
}

.contact-form-section .contact-form .privacy-consent .privacy-label a {
  color: #28a745;
  text-decoration: none;
}

.contact-form-section .contact-form .privacy-consent .privacy-label a:hover {
  text-decoration: underline;
}

.contact-form-section .contact-form .contact-form-submit {
  width: 100%;
  padding: 20px 32px;
  background: #28a745;
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.contact-form-section .contact-form .contact-form-submit:hover {
  background: #218838;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(40, 167, 69, 0.3);
}

.contact-form-section .contact-form .contact-form-submit:active {
  transform: translateY(0);
}

.contact-form-section .contact-form .contact-form-submit svg {
  transition: transform 0.3s ease;
}

.contact-form-section .contact-form .contact-form-submit:hover svg {
  transform: translateX(4px);
}

@media (max-width: 768px) {
  .contact-form-section {
    padding: 64px 0;
  }

  .contact-form-section .contact-form-header {
    margin-bottom: 48px;
  }

  .contact-form-section .contact-form-header .contact-form-title {
    font-size: 32px;
  }

  .contact-form-section .contact-form-header .contact-form-subtitle {
    font-size: 16px;
  }

  .contact-form-section .contact-form-container {
    padding: 24px 16px;
  }

  .contact-form-section .contact-form .form-group {
    margin-bottom: 24px;
  }

  .contact-form-section .contact-form .form-label {
    font-size: 14px;
    margin-bottom: 8px;
  }

  .contact-form-section .contact-form .form-select,
  .contact-form-section .contact-form .form-control {
    padding: 14px 16px;
    font-size: 14px;
  }

  .contact-form-section .contact-form .contact-form-submit {
    padding: 16px 24px;
    font-size: 14px;
  }
}

.cms-content-section-contact {
  padding: 128px 0;
}

.cms-content-section-contact .container {
  max-width: 650px;
}

.cms-content-section-contact .title1 {
  padding-top: 30px;
  padding-bottom: 16px;
}

.cms-content-section-contact .title1 p {
  color: #000;
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  line-height: 40px;
  /* 125% */
  margin-bottom: 0;
}

.cms-content-section-contact .desc1 p {
  color: #595959;
  text-align: center;
  font-size: 18px;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.cms-content-section-contact .form-container .contact-form {
  border-radius: 8px;
  border: 1px solid #e5e5e5;
  background: #fff;
  box-shadow: 0 4px 108px 0 rgba(228, 253, 113, 0.2);
  padding: 48px;
}

.cms-content-section-contact .form-container .contact-form .form-group {
  margin-bottom: 32px;
}

.cms-content-section-contact .form-container .contact-form label {
  text-align: left;
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 8px;
}

.cms-content-section-contact .form-container .contact-form textarea.form-control {
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  background: #fff;
  resize: none;
}

.cms-content-section-contact .form-container .contact-form .form-control {
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  background: #fff;
}

.cms-content-section-contact .form-container .contact-form .form-control:active,
.cms-content-section-contact .form-container .contact-form .form-control:focus {
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  background: radial-gradient(381.13% 100% at 0% 100%, #e4fd71 0%, #fafafa 20.5%);
  outline: none;
  box-shadow: none;
}

.cms-content-section-contact .form-container .contact-form .form-control-comment {
  color: #888;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.cms-content-section-contact .form-container .contact-form .form-control-add-files {
  border-radius: 4px;
  border: 1px dashed #e5e5e5;
  padding-top: 32px;
  padding-bottom: 12px;
  text-align: center;
}

.cms-content-section-contact .form-container .contact-form .form-control-add-files .form-control {
  display: none;
}

.cms-content-section-contact .form-container .contact-form .form-control-add-files .input-group .input-group-btn {
  margin: 0 auto !important;
}

.cms-content-section-contact .form-container .contact-form .form-control-add-files .btn.btn-default {
  border-radius: 4px;
  border: 1px solid #b2b2b2;
  background-color: #fff;
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.cms-content-section-contact .form-container .contact-form .form-control-add-files .form-text {
  margin-top: 32px;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

.cms-content-section-contact .form-container .contact-form .btn-primary {
  border-radius: 4px;
  border: 1px solid #f2febd;
  background: #e4fd71;
  box-shadow: 0 0 44px 0 rgba(228, 253, 113, 0.3);
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  text-transform: none;
  padding: 16px 24px;
}

.cms-content-section-contact .form-container .contact-form .btn-primary svg {
  margin-left: 24px;
}

.gdpr_consent .custom-checkbox input[type=checkbox] {
  display: none;
}

.gdpr_consent .custom-checkbox input[type=checkbox]+span {
  display: flex;
  width: 24px;
  height: 24px;
  padding: 7px 6px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  aspect-ratio: 1/1;
  border-radius: 4px;
  background: #F5F5F5;
  /* niezaznaczone */
  margin-right: 12px;
  vertical-align: top;
  position: relative;
  transition: all 0.3s ease;
}

.gdpr_consent .custom-checkbox input[type=checkbox]:checked+span {
  background: #E4FD71;
  /* zaznaczone */
  border-color: #E4FD71;
}

.gdpr_consent .custom-checkbox input[type=checkbox]:checked+span .psgdpr_consent_icon {
  display: block;
  color: rgb(24, 48, 48);
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
}

.gdpr_consent .custom-checkbox input[type=checkbox]+span .psgdpr_consent_icon {
  display: none;
}

.gdpr_consent .psgdpr_consent_message {
  display: flex;
  align-items: flex-start;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.4;
  color: #333;
}

.gdpr_consent .psgdpr_consent_message span:last-child {
  flex: 1;
  margin-top: 2px;
}

/* CMS używa też klasy .payment-info-block (bez „s”) — te same reguły co .payment-info-blocks */
.payment-info-blocks,
.payment-info-block {
  margin-top: 40px;
}

.payment-info-blocks .row,
.payment-info-block .row {
  margin: 0 -10px;
}

.payment-info-blocks .col-12,
.payment-info-blocks .col-md-4,
.payment-info-blocks .col-md-6,
.payment-info-blocks .col-lg-6,
.payment-info-block .col-12,
.payment-info-block .col-md-4,
.payment-info-block .col-md-6,
.payment-info-block .col-lg-6 {
  padding: 0 10px;
  margin-bottom: 20px;
}

.payment-info-blocks .payment-block,
.payment-info-block .payment-block {
  background-color: #f8f8f8;
  border-radius: 8px;
  padding: 24px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
}

.payment-info-blocks .payment-block h3,
.payment-info-block .payment-block h3 {
  font-size: 18px;
  font-weight: 600;
  color: #000;
  margin: 0 0 20px 0;
  line-height: 165%;
  letter-spacing: -0.09px;
}

.payment-info-blocks .payment-block .payment-block-content,
.payment-info-block .payment-block .payment-block-content {
  margin-top: 0;
  width: 100%;
  min-height: 0;
}

.payment-info-blocks .payment-line,
.payment-info-block .payment-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 12px;
  gap: 8px;
}

.payment-info-blocks .payment-line .label,
.payment-info-block .payment-line .label {
  flex: 0 0 100%;
  min-width: fit-content;
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.payment-info-blocks .payment-line .value,
.payment-info-block .payment-line .value {
  flex: 1 1 auto;
  min-width: 0;
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.payment-info-blocks .payment-line-row,
.payment-info-block .payment-line-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  margin-bottom: 12px;
}

.payment-info-blocks .payment-line-row > .payment-line,
.payment-info-block .payment-line-row > .payment-line {
  flex: 1 1 calc(50% - 8px);
  min-width: min(100%, 160px);
  margin-bottom: 0;
}

.payment-info-blocks .payment-line2,
.payment-info-block .payment-line2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  margin-bottom: 12px;
  gap: 8px;
}

.payment-info-blocks .payment-line2 .label,
.payment-info-block .payment-line2 .label {
  min-width: fit-content;
  color: #888;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.payment-info-blocks .payment-line2 .value,
.payment-info-block .payment-line2 .value {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.payment-info-blocks .payment-line21,
.payment-info-blocks .payment-line22,
.payment-info-block .payment-line21,
.payment-info-block .payment-line22 {
  display: flex;
  align-items: center;
  gap: 8px;
}

.payment-info-blocks .payment-line2 .copy-btn,
.payment-info-block .payment-line2 .copy-btn {
  display: inline-flex;
}

.payment-info-blocks .copy-btn,
.payment-info-block .copy-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  color: #333;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  flex-shrink: 0;
  line-height: 0;
  border-radius: 32px;
  transition: background-color 0.2s;
  background: #e5e5e5;
}

.payment-info-blocks .copy-btn:hover,
.payment-info-block .copy-btn:hover {
  background-color: #e0e0e0;
}

.payment-info-blocks .copy-btn svg,
.payment-info-block .copy-btn svg {
  display: block;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

@media (max-width: 768px) {
  .payment-info-blocks .payment-block,
  .payment-info-block .payment-block {
    margin-bottom: 20px;
  }

  .payment-info-blocks .payment-line21,
  .payment-info-blocks .payment-line22,
  .payment-info-block .payment-line21,
  .payment-info-block .payment-line22 {
    display: block;
  }

  .payment-info-blocks .payment-line-row > .payment-line,
  .payment-info-block .payment-line-row > .payment-line {
    flex: 1 1 100%;
    min-width: 0;
  }
}

/* Finansowanie / karty kont: spójny układ (desktop, tablet, mob.) */
.financing-hero-wrapper .payment-info-block .row {
  align-items: stretch;
}

.financing-hero-wrapper .payment-info-block .payment-block h3,
.financing-hero-wrapper .payment-info-block .payment-block .payment-block-title h3 {
  margin: 0 0 16px 0;
}

.financing-hero-wrapper .payment-info-block .payment-block-long .payment-block-content .payment-line[style*="display"] {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px 16px !important;
  align-items: start !important;
  margin-bottom: 0 !important;
}

@media (max-width: 991.98px) {
  .financing-hero-wrapper .payment-info-block .payment-block-long .payment-block-content .payment-line[style*="display"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575.98px) {
  .financing-hero-wrapper .payment-info-block .payment-block-long .payment-block-content .payment-line[style*="display"] {
    grid-template-columns: 1fr !important;
  }

  .financing-hero-wrapper .payment-info-block .container {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* Department phones on contact — same visual language as advicehero .ah-contact-card */
.contact-phone-departments .contact-phone-departments-cards.ah-contact-cards {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card {
  flex: 1;
  min-width: 260px;
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
  color: inherit;
  display: block;
  padding: 20px 24px;
  background: #fff;
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card:hover {
  border-color: #d0d0d0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card .ah-card-content {
  display: flex;
  justify-content: space-between;
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card .ah-card-content .ah-card-text {
  flex: 1;
  min-width: 0;
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card .ah-card-content .ah-card-text .ah-card-main {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  margin-bottom: 12px;
  word-break: break-word;
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card .ah-card-content .ah-card-text .ah-card-sub {
  color: #595959;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.contact-phone-departments .contact-dept-phone-lines {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.contact-phone-departments .contact-dept-phone-lines a {
  color: inherit;
  text-decoration: none;
  transition: color 0.15s ease;
}

.contact-phone-departments .contact-dept-phone-lines a:hover {
  color: #000;
  text-decoration: underline;
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card .ah-card-content .ah-card-icon {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 1rem;
  flex-shrink: 0;
  border-radius: 4px;
  background: #e4fd71;
}

.contact-phone-departments .contact-phone-departments-cards .ah-contact-card .ah-card-content .ah-card-icon svg {
  display: block;
}

.contact-phone-departments--embedded {
  margin-top: 2rem;
}

@media (max-width: 767px) {
  .contact-phone-departments--embedded {
    margin-top: 1.5rem;
  }
}

@media screen and (max-width: 768px) {
  .advice-hero {
    background: linear-gradient(180deg, rgba(228, 253, 113, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), linear-gradient(180deg, var(--color-neutral-12-base, #fafafa) 0%, #fff 100%);
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .advice-hero .ah-title {
    color: #000;
    font-size: 32px;
    font-weight: 400;
    line-height: 40px;
    /* 125% */
  }
}

/* About Page */
#about #wrapper {
  padding-top: 0;
}

#about #wrapper .container-fluid {
  max-width: 100%;
  padding: 0;
}

#about #wrapper .bc {
  display: none;
}

/* ============================================
 About Page Styles (about.tpl)
 Styling for the about page hero section,
 badge, content section and text elements
 ============================================ */
#module-aboutus-about #wrapper {
  background: linear-gradient(180deg, var(--background-color-brand-2-light, #F8F5F2) 0%, #FFF 100%);
  padding-top: 0;
}

#module-aboutus-about #wrapper .page-content.card.card-block {
  background-color: transparent;
  padding: 0;
}

#module-aboutus-about .breadcrumb-wrapper {
  display: none;
}

#module-aboutus-about #wrapper .section-front1 .single-right1 .single-right1-sz .card {
  background-color: #fff;
}

.about-hero-section .container-fluid {
  padding-left: 0;
  padding-right: 0;
}

.about-hero-section {
  padding: 0;
  background-color: transparent;
}

.about-hero-section .about-badge {
  margin-bottom: 32px;
  display: flex;
  align-items: center;
  gap: 16px;
}

.about-hero-section .about-badge .badge-circle {
  border-radius: 58.333px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 0 57.75px 0 #E4FD71;
  display: flex;
  width: 42px;
  height: 42px;
  padding: 11.667px;
  justify-content: space-between;
  align-items: center;
}

.about-hero-section .about-badge .badge-circle .badge-letter {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.about-hero-section .about-badge .badge-circle .badge-letter svg {
  width: 100%;
  height: 100%;
}

.about-hero-section .about-subtitle p {
  font-size: 16px;
  color: #6c757d;
  margin-bottom: 0;
  line-height: 1.4;
  max-width: 370px;
}

.about-hero-section .about-main-heading h1 {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-L */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 54px;
  /* 135% */
}

.about-hero-section .about-main-heading h2 {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-L */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 54px;
  /* 135% */
}

.about-hero-section .section-front1 {
  max-width: 480px;
}

.about-hero-section .stats-cards {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.about-hero-section .stats-cards .stat-card {
  background: #fff;
  border: 1px solid #dbdbdb;
  border-radius: 8px;
  padding: 20px;
  min-width: 140px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  position: relative;
}

.about-hero-section .stats-cards .stat-card::after {
  content: "";
  position: absolute;
  top: 8px;
  right: 8px;
  width: 12px;
  height: 12px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 fill=%27none%27 viewBox=%270 0 24 24%27 stroke=%27%236b7280%27%3E%3Cpath stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14%27/%3E%3C/svg%3E");
  background-size: contain;
}

.about-hero-section .stats-cards .stat-card .stat-icon {
  margin-bottom: 10px;
}

.about-hero-section .stats-cards .stat-card .stat-rating {
  text-align: left;
}

.about-hero-section .stats-cards .stat-card .stat-rating .stars {
  margin-bottom: 8px;
}

.about-hero-section .stats-cards .stat-card .stat-rating .stars .star {
  font-size: 16px;
  margin-right: 2px;
}

.about-hero-section .stats-cards .stat-card .stat-rating .stars .star.filled {
  color: #ffa500;
}

.about-hero-section .stats-cards .stat-card .stat-rating .stars .star.partial {
  color: #ffa500;
  opacity: 0.7;
}

.about-hero-section .stats-cards .stat-card .stat-number {
  font-size: 18px;
  font-weight: bold;
  color: #232323;
  margin-bottom: 4px;
}

.about-hero-section .stats-cards .stat-card .stat-label {
  font-size: 12px;
  color: #7a7a7a;
}

.about-hero-section .about-image {
  position: relative;
}

.about-hero-section .about-image img {
  width: 100%;
}

.about-hero-section .about-image .image-overlay {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100px;
  height: 100px;
  background: linear-gradient(45deg, #ffd700, #90ee90);
  border-radius: 8px 0 8px 0;
  opacity: 0.8;
}

@media (max-width: 768px) {
  .about-hero-section .about-content {
    padding-right: 0;
    margin-bottom: 40px;
  }

  .about-hero-section .about-main-heading {
    font-size: 2rem;
  }

  .about-hero-section .about-main-heading h2 {
    color: var(--text-color-base-primary, #000);
    /* Heading/Head-XS */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    /* 133.333% */
  }

  .about-hero-section .stats-cards {
    justify-content: center;
  }

  .about-hero-section .about-badge {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .about-hero-section .about-badge .badge-circle {
    background: var(--background-color-brand-1-normal, #90EE90);
    box-shadow: 0 0 57.75px 0 #90EE90;
  }

  .about-hero-section .about-badge .badge-circle .badge-letter svg path {
    fill: #2d5a2d;
  }

  .about-hero-section .about-subtitle {
    margin-bottom: 20px;
  }
}

@media (max-width: 370px) {
  .about-hero-section .about-subtitle {
    margin-bottom: 20px;
  }
}

@media (max-width: 768px) {
  .about-story-content {
    padding-left: 0;
    margin-top: 40px;
  }

  .about-story-heading {
    font-size: 28px;
    line-height: 38px;
  }
}

.about-story-section {
  padding-top: 128px;
  padding-bottom: 144px;
}

.about-story-image {
  position: relative;
}

.about-story-image img {
  width: 100%;
  border-radius: 8px
}

.about-story-image .story-image-overlay {
  position: absolute;
  bottom: 32px;
  right: 0;
  padding: 20px 24px;
  max-width: 311px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  backdrop-filter: blur(2px);
}

.about-story-image .story-image-overlay:before {
  content: '';
  position: absolute;
  left: -4px;
  bottom: -4px;
  width: 8px;
  height: 8px;
  flex-shrink: 0;
  background: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 4px 48px 0 var(--color-brand-one-8-base, #E4FD71);
}

.about-story-image .story-image-overlay p {
  color: var(--text-color-base-primary, #000);

  /* Text/Caption */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  margin-bottom: 0;
}

.about-story-image .story-image-overlay p strong {
  color: var(--text-color-base-primary, #000);

  /* Text/Caption <str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  line-height: 16px;
  /* 133.333% */
}

.about-story-content {
  padding-left: 90px;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.about-story-content .about-story-heading {
  margin-top: 56px;
}

.about-story-text-wrapper {
  margin-top: auto;
  margin-bottom: 0;
}

.about-story-heading h2 {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-M */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
}

.about-story-text {
  margin-bottom: 52px;
}

.about-story-text p {
  color: var(--text-color-base-primary, #000);
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 20px;
}

.about-story-text strong {
  color: var(--text-color-base-primary, #000);
  /* Text/Body <str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  /* 150% */
}

.about-content-section {
  padding: 60px 0;
}

.about-content-section .about-text h2 {
  color: #232323;
  margin-bottom: 20px;
}

.about-content-section .about-text h3 {
  color: #232323;
  margin-top: 30px;
  margin-bottom: 15px;
}

.about-content-section .about-text p {
  color: #7a7a7a;
  line-height: 1.6;
  margin-bottom: 20px;
}

.about-content-section .about-text ul {
  color: #7a7a7a;
}

.about-content-section .about-text ul li {
  margin-bottom: 8px;
}

/* Ukrycie zduplikowanych przycisków wishlist - zostawiamy tylko pierwszy */
.thumbnail-container button.wishlist-button-add+button.wishlist-button-add {
  display: none !important;
}

/* Ukrycie wszystkich przycisków wishlist na stronie kategorii */
#category .products article .wishlist-button-add {
  display: none;
}

@media (min-width: 768px) {
  #category .js-product:nth-child(n+4) {
    border-top: none;
    padding-top: 0;
    margin-bottom: 0;
    margin-top: 0;
  }
}

#category .product-miniature {
  height: 100%;
  padding: 8px;
  border: 1px solid transparent;
  position: relative;
}

#category .product-miniature:hover {
  border: 1px solid #E5E5E5;
}

#category .product-miniature:hover .product-hover-link {
  opacity: 1;
  visibility: visible;
}

#category .product-miniature .thumbnail-container {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin-bottom: 0;
  position: relative;
}

#category .product-miniature .product-price {
  margin-top: 4px;
}

#category .product-hover-link {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(228, 253, 113);
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 1;
}

#category .product-hover-link:hover {
  background: #ebfe97;
}

#category .product-hover-link svg {
  width: 12px;
  height: 12px;
}

#category .product-flags-top .flag-low-quantity {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  display: flex;
  z-index: 1;
  border-radius: 4px;
  background: rgb(247, 195, 68);
  color: rgb(0, 0, 0);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  padding: 4px 8px;
  white-space: nowrap;
}

#category .product-flags-top .flag-popular {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  display: flex;
  z-index: 1;
  border-radius: 4px;
  background: #183030;
  color: rgb(255, 255, 255);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  padding: 4px 8px;
}

#category .product-description {
  padding: 0;
  padding-top: 10px;
}

#category .product-description .title-product {
  color: rgb(0, 0, 0);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 0;
}

#category .product-description .title-product a {
  color: rgb(0, 0, 0);
}

#category .product-price .price {
  color: rgb(136, 136, 136);
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

#category .discount-percentage {
  border-radius: 4px;
  background: #FEE0E0;
  padding: 2px 6px;
  color: #C41408;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

.modal-backdrop {
  background: rgba(0, 0, 0, 0.6);
  z-index: 1040;
}

/* Blockcart Modal - overlay styling (jak counselor-modal-overlay) */
#blockcart-modal.show~.modal-backdrop,
body:has(#blockcart-modal.show) .modal-backdrop.show {
  background: rgba(0, 0, 0, 0.6) !important;
  opacity: 1 !important;
  z-index: 1040;
}

/* Live Events Modal - overlay styling (jak counselor-modal-overlay) */
#liveEventsModal.show~.modal-backdrop,
body:has(#liveEventsModal.show) .modal-backdrop.show {
  background: rgba(0, 0, 0, 0.6) !important;
  opacity: 1 !important;
  z-index: 1040;
}

.modal-content {
  border: none;
  border-radius: 8px;
}

.modal-header {
  border-bottom: 1px solid var(--border-primary, #E5E5E5);
}

.modal-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

/* ============================================
 CHECKOUT STYLES
 ============================================ */

/* Login Options - trzy opcje obok siebie jako osobne karty */
.checkout-login-options {
  display: flex;
  gap: 12px;
  margin-bottom: 24px;
}

.login-option-wrapper {
  flex: 1;
  position: relative;
}



#module-supercheckout-supercheckout .checkout-option-label.active .login-option-card {
  background: var(--color-brand-one-8-base, #E4FD71) !important;
  border-color: var(--color-brand-one-8-base, #E4FD71) !important;
}

#module-supercheckout-supercheckout .checkout-option-radio {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

#module-supercheckout-supercheckout .checkout-option-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  cursor: pointer;
  margin-bottom: 0;
}

#module-supercheckout-supercheckout .checkout-option-label.active .checkout-option-text {
  font-weight: 600;
}

#module-supercheckout-supercheckout .option-arrow {
  flex-shrink: 0;
  margin-left: 12px;
  transition: all 0.3s ease;
}

#module-supercheckout-supercheckout .option-arrow-active {
  width: 24px;
  height: 24px;
  display: none;
}

#module-supercheckout-supercheckout .option-arrow-inactive {
  width: 24px;
  height: 24px;
  display: block;
}

#module-supercheckout-supercheckout .checkout-option-label.active .option-arrow-active {
  display: block;
  width: 24px;
  height: 24px;
}

#module-supercheckout-supercheckout .checkout-option-label.active .option-arrow-inactive {
  display: none;
}

#module-supercheckout-supercheckout .checkout-option-label:not(.active) .option-arrow-active {
  display: none;
}

#module-supercheckout-supercheckout .checkout-option-label:not(.active) .option-arrow-inactive {
  display: block;
}

/* Supercheckout - Tło dla wrappera */
#module-supercheckout-supercheckout #wrapper {
  background: var(--color-neutral-12-base, #FAFAFA);
}

/* Supercheckout - Login Options jako karty */
#velsof_supercheckout_form .checkout-login-options {
  display: flex;
  gap: 4px;
  margin-bottom: 24px;
}


#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-option-radio {
  display: none !important;
}

/* Napraw radio buttony w supercheckout - niech nie wchodzą na całość */
#module-supercheckout-supercheckout .opc-container [type="radio"]:checked,
#module-supercheckout-supercheckout .opc-container [type="radio"]:not(:checked) {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}

/* Ukryj ::before i ::after pseudo-elementy dla radio buttonów */
#module-supercheckout-supercheckout .opc-container [type="radio"]:checked+label::before,
#module-supercheckout-supercheckout .opc-container [type="radio"]:not(:checked)+label::before,
#module-supercheckout-supercheckout .opc-container [type="radio"]:checked+label::after,
#module-supercheckout-supercheckout .opc-container [type="radio"]:not(:checked)+label::after {
  display: none !important;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-option-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  cursor: pointer;
  margin-bottom: 0;
  padding-left: 0;
  position: relative;
  display: flex;
  height: 104px;
  padding: 40px 20px 20px 20px;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  background: #fff;
  cursor: pointer;
  transition: all 0.2s;
  user-select: none;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-option-label.active {
  background: var(--background-color-brand-1-normal, #E4FD71) !important;
  border: none !important;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-option-label.active .checkout-option-text {
  font-weight: 600;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .option-arrow {
  position: absolute;
  top: 16px;
  right: 20px;
  width: 24px;
  height: 24px;
  display: none;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-option-label.active .option-arrow-active {
  display: block;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-option-label:not(.active) .option-arrow-inactive {
  display: block;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-option-label:not(.active) .option-arrow-active {
  display: none;
}

/* Supercheckout - Formularze w panele */
#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-form-content {
  margin-top: 24px;
}

/* Supercheckout - Stylowanie sekcji logowania */
#module-supercheckout-supercheckout #checkoutLogin.section-body {
  border-radius: var(--radius-x-small, 4px);
  background: #FFF;
  padding: 8px;
  padding-bottom: 32px;
}

/* Supercheckout - LoginBtn margin-top */
#module-supercheckout-supercheckout .loginBtn {
  margin-top: 24px;
}

/* Supercheckout - "Pole wymagane" - wyrównanie do lewej */
#module-supercheckout-supercheckout #checkoutLogin .errorsmall,
#module-supercheckout-supercheckout #checkoutLogin .errorsmall_custom,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .errorsmall,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .errorsmall_custom {
  text-align: left !important;
  align-self: flex-start !important;
  width: 100% !important;
  display: block;
}

/* Supercheckout - Margines formularza logowania i rejestracji */
#module-supercheckout-supercheckout #checkoutLogin .login-form,
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane {
  margin-top: 24px;
}

/* Supercheckout - Ograniczenie szerokości formularza logowania */
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane .login-form {
  max-width: 440px;
  margin: 24px auto 0;
  width: 100%;
}

/* Supercheckout - Ograniczenie szerokości sekcji logowania */
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-box {
  max-width: 440px;
  margin: 0 auto;
  width: 100%;
}

/* Supercheckout - Ograniczenie szerokości dla form-group.supercheckout-extra-wrap */
#module-supercheckout-supercheckout #velsof_supercheckout_form .form-group.supercheckout-extra-wrap,
#module-supercheckout-supercheckout #checkoutLogin .form-group.supercheckout-extra-wrap,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .form-group.supercheckout-extra-wrap {
  max-width: 440px;
  margin: 0 auto;
  width: 100%;
}

/* Supercheckout - Ograniczenie szerokości tabeli z danymi klienta */
#module-supercheckout-supercheckout #supercheckout-new-customer-form #customer_person_information_table,
#module-supercheckout-supercheckout #supercheckout-new-customer-form #customer_person_information_table.supercheckout-form {
  max-width: 440px;
  margin: 0 auto;
  width: 100%;
}

/* Supercheckout - Usunięcie obramowań tabel */
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered> :not(caption)>*,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered> :not(caption)>*>*,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered>thead>tr>th,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered>tbody>tr>td,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered>tfoot>tr>td,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered>thead>tr>td,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered>tbody>tr>th,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-bordered>tfoot>tr>th,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered> :not(caption)>*,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered> :not(caption)>*>*,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered>thead>tr>th,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered>tbody>tr>td,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered>tfoot>tr>td,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered>thead>tr>td,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered>tbody>tr>th,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-bordered>tfoot>tr>th {
  border: none !important;
  border-width: 0 !important;
  border-style: none !important;
}

/* Supercheckout - Usunięcie paddingu z elementów tabeli */
#module-supercheckout-supercheckout #velsof_supercheckout_form .table>thead>tr>th,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table>tbody>tr>th,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table>tfoot>tr>th,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table>thead>tr>td,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table>tbody>tr>td,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table>tfoot>tr>td,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table>thead>tr>th,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table>tbody>tr>th,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table>tfoot>tr>th,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table>thead>tr>td,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table>tbody>tr>td,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table>tfoot>tr>td {
  padding: 0 !important;
}

/* Supercheckout - Usunięcie efektu hover z tabeli */
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-hover>tbody>tr:hover>*,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-hover>tbody>tr:hover>td,
#module-supercheckout-supercheckout #velsof_supercheckout_form .table-hover>tbody>tr:hover>th,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-hover>tbody>tr:hover>*,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-hover>tbody>tr:hover>td,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .table-hover>tbody>tr:hover>th {
  background-color: transparent !important;
  color: inherit !important;
}

/* Supercheckout - Inputy w formularzu logowania - szerokość 206px, wyśrodkowane, z labelami nad nimi */
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane .form-group,
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane .form-group.supercheckout-extra-wrap,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .form-group,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .form-group.supercheckout-extra-wrap,
#module-supercheckout-supercheckout #supercheckout-new-customer-form td .form-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 24px;
}

#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane .form-group label,
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane .form-group .form-control-label,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .form-group label,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .form-group .form-control-label,
#module-supercheckout-supercheckout #supercheckout-new-customer-form td .form-group label {
  display: block;
  width: 100%;
  margin-bottom: 8px;
  text-align: left;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane input[type="text"],
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane input[type="email"],
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane input[type="password"],
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane .form-control,
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane .supercheckout-large-field,
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-password-box input,
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-box input,
#module-supercheckout-supercheckout #supercheckout-new-customer-form input[type="text"],
#module-supercheckout-supercheckout #supercheckout-new-customer-form input[type="email"],
#module-supercheckout-supercheckout #supercheckout-new-customer-form input[type="password"],
#module-supercheckout-supercheckout #supercheckout-new-customer-form .form-control,
#module-supercheckout-supercheckout #supercheckout-new-customer-form .supercheckout-large-field {
  width: 100% !important;
  margin: 0 auto;
  display: flex;
  padding: 12px 16px;
  align-items: center;
  gap: 8px;
  align-self: stretch;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
}

/* Supercheckout - Labelki w sekcji hasła */
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-password-box label,
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-box label {
  display: block;
  width: 100%;
  margin-bottom: 8px;
  text-align: left;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

/* Supercheckout - Form-group w sekcji hasła */
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-box .form-group,
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-password-box {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 24px;
  width: 100%;
  max-width: 440px;
}

/* Supercheckout - Margin-bottom dla sekcji hasła */
#module-supercheckout-supercheckout #checkoutLogin #supercheckout-login-password-box {
  margin-bottom: 10px;
}

/* Supercheckout - Link "Zapomniałeś hasła" */
#module-supercheckout-supercheckout #checkoutLogin #forgotpasswordlink,
#module-supercheckout-supercheckout #checkoutLogin #forgotpasswordlink a {
  color: var(--text-color-base-secondary, #595959);
  text-align: right;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration: none;
  width: 100%;
  max-width: 440px;
  margin: 0 auto;
}

#module-supercheckout-supercheckout #checkoutLogin #forgotpasswordlink {
  margin-bottom: 2px;
}

/* Supercheckout - Przycisk "Zaloguj się" */
#module-supercheckout-supercheckout #checkoutLogin #button-login,
#module-supercheckout-supercheckout #velsof_supercheckout_form #button-login {
  border-radius: 4px !important;
  border: 1px solid rgb(92, 184, 92) !important;
  background: #E4FD71 !important;
  box-shadow: 0 0 44px 0 rgba(228, 253, 113, 0.30) !important;
  display: flex !important;
  padding: 16px 24px !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 24px !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 440px !important;
  margin: 0 auto !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  color: #000 !important;
  font-family: Sora !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 24px !important;
}

#module-supercheckout-supercheckout #checkoutLogin #button-login:hover,
#module-supercheckout-supercheckout #velsof_supercheckout_form #button-login:hover {
  border-radius: 4px !important;
  border: 1px solid #C7E068 !important;
  background: #EBFE97 !important;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-form-pane {
  display: none;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .checkout-form-pane.active {
  display: block;
}

/* Supercheckout - Zmiana wizualnego układu: formularze po lewej (szeroka), koszyk po prawej (wąska) */
/* Proste podejście: ustawiamy bezpośrednio szerokości kolumn */
#module-supercheckout-supercheckout #velsof_supercheckout_form #supercheckout-columnleft.supercheckout-threecolumns>.row {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form #supercheckout-columnleft.supercheckout-threecolumns>.row>.col-lg-4 {
  display: flex;
  gap: 24px;
  width: 100%;
}

/* Supercheckout - Lewa kolumna (formularze) - SZEROKA - zajmuje resztę przestrzeni */
#module-supercheckout-supercheckout #velsof_supercheckout_form #columnleft-1 {
  width: calc(100% - 424px) !important;
  /* 100% minus szerokość prawej kolumny (400px) + gap (24px) */
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* Supercheckout - Prawa kolumna (koszyk) - WĄSKA - stała szerokość */

/* Supercheckout - Prawa kolumna z podsumowaniem (sticky) */
#module-supercheckout-supercheckout #velsof_supercheckout_form #columnleft-3 {
  position: sticky !important;
  top: 20px !important;
  max-height: calc(100vh - 40px);
  overflow-y: auto;
}

/* Supercheckout - Panel - transparentne tło i brak cienia */
#module-supercheckout-supercheckout .opc-container .panel {
  background-color: transparent !important;
  box-shadow: none !important;
}

/* Supercheckout - Podsumowanie zamówienia */
#module-supercheckout-supercheckout #velsof_supercheckout_form .confirmCheckoutBack {
  width: 100%;
  display: block;
  background: #fff;
  border-radius: 8px;
  padding: 20px 16px;
  margin-bottom: 0;
}

#module-supercheckout-supercheckout #velsof_supercheckout_form .opc_shoppingcart h2 {
  color: var(--text-color-base-primary, #000);

  /* Text/Title <str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 28px;
  /* 140% */
  margin-top: 0;
  margin-left: 0;
}

/* Form Content */
.checkout-form-content {
  position: relative;
}

.checkout-form-pane {
  display: none;
}

.checkout-form-pane.active {
  display: block;
}

/* Supercheckout - Panele formularzy w #checkoutLogin - minimalne style, tylko widoczność */
#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane {
  display: none !important;
}

#module-supercheckout-supercheckout #checkoutLogin .checkout-form-pane.active {
  display: block !important;
}

/* Checkout Page - tło dla całego checkoutu */
#checkout #wrapper {
  background: var(--color-neutral-12-base, #FAFAFA) !important;
}

/* Checkout Steps - ONE PAGE CHECKOUT - wszystkie kroki widoczne */
/* Klasa checkout-step--always-open wymusza widoczność contentu niezależnie od flag backendowych */

/* Wymuś widoczność WSZYSTKICH kroków checkoutu - niezależnie od klas */
/* Tylko sekcja (biały blok) ma tło, tytuł jest poza nią */
.checkout-step,
.checkout-step--always-open,
section[id^="checkout-"],
section[id*="checkout"] {
  background: #fff;
  border-radius: 8px;
  padding: 24px;
  margin-bottom: 24px;
  border: none;
  display: block;
  opacity: 1;
  visibility: visible;
  height: auto;
  max-height: none;
  overflow: visible;
}

/* Tytuł kroku - poza białym blokiem */
body#checkout .step-title {
  background: transparent;
  padding: 0;
  margin-bottom: 20px;
  margin-top: 0;
}

/* Wymuś widoczność contentu WSZYSTKICH kroków */
.checkout-step .content,
.checkout-step--always-open .content,
section[id^="checkout-"] .content,
section[id*="checkout"] .content {
  display: block;
  opacity: 1;
  visibility: visible;
  height: auto;
  max-height: none;
}

/* Wymuś display: block dla content, done i step-edit */
body#checkout section.checkout-step .content,
body#checkout section.checkout-step .done,
body#checkout section.checkout-step .step-edit,
body#checkout section.checkout-step.-current.-reachable.-complete .done,
body#checkout section.checkout-step.-current.-reachable.-complete .step-edit {
  display: block;
}

/* Nadpisz wszystkie style, które mogą ukrywać kroki */
.checkout-step.js-hidden,
.checkout-step .content.js-hidden,
.checkout-step.-unreachable,
.checkout-step.-unreachable .content,
.checkout-step:not(.-current) .content,
.checkout-step:not(.-reachable) .content {
  display: block;
  opacity: 1;
  visibility: visible;
  height: auto;
  max-height: none;
}

/* Wszystkie pola formularza zawsze edytowalne */
.checkout-step input,
.checkout-step select,
.checkout-step textarea,
.checkout-step button:not(.continue) {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
}

.checkout-step input[disabled],
.checkout-step select[disabled],
.checkout-step textarea[disabled] {
  pointer-events: auto !important;
  opacity: 1 !important;
}

/* Usuń disabled z pól w krokach 2-4 */
#checkout-addresses-step input,
#checkout-addresses-step select,
#checkout-addresses-step textarea,
#checkout-delivery-step input,
#checkout-delivery-step select,
#checkout-delivery-step textarea,
#checkout-payment-step input,
#checkout-payment-step select,
#checkout-payment-step textarea {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
}

.checkout-step.-current {
  border-color: var(--color-brand-one-8-base, #E4FD71);
}

/* Ukryj ikony edycji i done - nie są potrzebne gdy wszystko jest widoczne */
.checkout-step .step-title .material-icons.done,
.checkout-step .step-title .step-edit {
  display: none;
}

/* Numeracja kroków */
.checkout-step .step-title .step-number {
  display: inline-block;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  background: var(--color-brand-one-8-base, #E4FD71);
  color: var(--text-color-base-primary, #000);
  border-radius: 50%;
  font-size: 14px;
  font-weight: 600;
  margin-right: 12px;
}

/* Tytuł kroku - poza białym blokiem */
body#checkout .step-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 32px;
  /* 133.333% */
  margin-bottom: 20px;
  margin-top: 0;
  padding: 0;
  padding-bottom: 16px;
  border-bottom: none;
  background: transparent;
}

/* Form Fields */
.checkout-step .form-group label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 8px;
}

.checkout-step .form-control {
  padding: 12px 16px;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  background: #fff;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  line-height: 20px;
}

.checkout-step .form-control:focus {
  border-color: var(--color-brand-one-8-base, #E4FD71);
  outline: none;
  box-shadow: 0 0 0 3px rgba(228, 253, 113, 0.1);
}

/* Address Form - Two Column Layout */
.checkout-step .form-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.checkout-step .form-group {
  margin-bottom: 16px;
}

.checkout-step .form-group.row {
  display: contents;
}

.checkout-step .form-group label.col-md-3 {
  grid-column: span 1;
  margin-bottom: 8px;
  padding: 0;
}

.checkout-step .form-group .col-md-6 {
  grid-column: span 1;
  width: 100%;
  padding: 0;
}

.checkout-step .form-group .col-md-3.form-control-comment {
  grid-column: span 2;
  margin-top: 4px;
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  padding: 0;
}

/* Full width fields (address, etc.) */
.checkout-step .form-group[data-field-name="address1"],
.checkout-step .form-group[data-field-name="address2"] {
  grid-column: 1 / -1;
}

.checkout-step .form-group[data-field-name="address1"] .col-md-6,
.checkout-step .form-group[data-field-name="address2"] .col-md-6 {
  grid-column: span 2;
}

/* Checkbox - full width */
.checkout-step .form-group:has(.custom-checkbox) {
  grid-column: 1 / -1;
}

/* Checkbox z zgodą RODO */
.checkout-step .form-group .custom-checkbox label {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  cursor: pointer;
}

.checkout-step .form-group .custom-checkbox input[type="checkbox"] {
  margin-top: 2px;
  flex-shrink: 0;
}

/* Delivery Options */
.delivery-option {
  padding: 16px;
  border: 1px solid var(--border-primary, #E5E5E5);
  border-radius: var(--radius-x-small, 4px);
  margin-bottom: 12px;
  cursor: pointer;
  transition: all 0.2s;
}

.delivery-option:hover {
  border-color: var(--color-brand-one-8-base, #E4FD71);
  background: rgba(228, 253, 113, 0.05);
}

.delivery-option input[type="radio"]:checked~label,
.delivery-option:has(input[type="radio"]:checked) {
  border-color: var(--color-brand-one-8-base, #E4FD71);
  background: rgba(228, 253, 113, 0.1);
}

/* Payment Options */
.payment-option {
  padding: 16px;
  border: 1px solid var(--border-primary, #E5E5E5);
  border-radius: var(--radius-x-small, 4px);
  margin-bottom: 12px;
  cursor: pointer;
  transition: all 0.2s;
}

.payment-option:hover {
  border-color: var(--color-brand-one-8-base, #E4FD71);
  background: rgba(228, 253, 113, 0.05);
}

.payment-option input[type="radio"]:checked~label,
.payment-option:has(input[type="radio"]:checked) {
  border-color: var(--color-brand-one-8-base, #E4FD71);
  background: rgba(228, 253, 113, 0.1);
  background-color: transparent;
  border-color: #E5E5E5;
}

/* Buttons - ukryj przyciski Continue */
.checkout-step .btn-primary.continue,
.checkout-step .continue,
.checkout-step button[name="confirm-addresses"],
.checkout-step button[name="confirmDeliveryOption"],
.checkout-step button[name="continue"],
.checkout-step button[value="order"],
button.continue,
.btn.continue,
button[name="continue"],
button[data-link-action="register-new-customer"],
button[data-link-action="sign-in"]:not(.login-submit-btn):not(#submit-login) {
  display: none !important;
}

/* Wyjątek dla przycisku logowania na stronie logowania */
body#authentication button[data-link-action="sign-in"].login-submit-btn,
body.page-authentication button[data-link-action="sign-in"].login-submit-btn,
body#authentication #submit-login,
body.page-authentication #submit-login,
.login-form button[data-link-action="sign-in"],
.login-form #submit-login {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Logowanie — tekst wyśrodkowany także przy klasach Bootstrap (.btn1 / .form-control-submit) */
button#submit-login.btn1,
button#submit-login.form-control-submit {
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

/* Przycisk finalny "Kupuję i płacę" pozostaje widoczny */
#payment-confirmation .btn-primary,
.checkout-step button[type="submit"]:not(.continue):not([name="confirm-addresses"]):not([name="confirmDeliveryOption"]) {
  background: var(--color-brand-one-8-base, #E4FD71);
  border: 1px solid var(--color-brand-one-8-base, #E4FD71);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  padding: 12px 24px;
  border-radius: var(--radius-x-small, 4px);
  transition: all 0.2s;
  display: block !important;
}

#payment-confirmation .btn-primary:hover,
#payment-confirmation .btn-primary:active,
#payment-confirmation .btn-primary:focus {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
}

/* Cart Summary (Right Side) */
.cart-grid-right {
  position: sticky;
  top: 20px;
  height: fit-content;
}

.cart-summary {
  background: #fff;
  border-radius: 8px;
  padding: 24px;
  border: 1px solid var(--border-primary, #E5E5E5);
}

/* Additional Information Textarea */
#delivery_message,
#supercheckout-comment_order {
  width: 100%;
  min-height: 120px;
  padding: 12px 16px;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  line-height: 20px;
  resize: vertical;
}

#delivery_message:focus,
#supercheckout-comment_order:focus {
  border-color: var(--color-brand-one-8-base, #E4FD71);
  outline: none;
  box-shadow: 0 0 0 3px rgba(228, 253, 113, 0.1);
}

/* Checkout Progress Bar - takie same style jak w cart */
.checkout-page .cart-progress-bar,
#content.checkout-page .cart-progress-bar {
  margin-bottom: 50px;
  padding: 0;
}

.checkout-page .cart-progress-steps,
#content.checkout-page .cart-progress-steps {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-start;
}

.checkout-page .cart-progress-step,
#content.checkout-page .cart-progress-step {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 315px;
  color: var(--text-color-base-secondary, #e5e5e5);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  position: relative;
  padding-bottom: 8px;
}

.checkout-page .cart-progress-step.active,
#content.checkout-page .cart-progress-step.active {
  color: var(--text-color-base-primary, #000);
}

.checkout-page .cart-progress-step.active .step-number,
#content.checkout-page .cart-progress-step.active .step-number {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

.checkout-page .cart-progress-step.active .step-label,
#content.checkout-page .cart-progress-step.active .step-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

.checkout-page .cart-progress-step::after,
#content.checkout-page .cart-progress-step::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 0;
  right: 0;
  height: 6px;
  border-radius: 13px;
  background: var(--border-primary, #E5E5E5);
}

.checkout-page .cart-progress-step.active::after,
#content.checkout-page .cart-progress-step.active::after {
  bottom: -12px;
  height: 6px;
  border-radius: 13px;
  background: var(--color-brand-one-8-base, #E4FD71);
}

.checkout-page .cart-progress-step .step-number,
#content.checkout-page .cart-progress-step .step-number {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  background-color: transparent;
}

/* Supercheckout Progress Bar - linki */
/* Progress bar jest poza formularzem, więc używamy selektora bazującego na body */
body#module-supercheckout-supercheckout .cart-progress-bar,
#module-supercheckout-supercheckout .cart-progress-bar {
  margin-bottom: 50px;
  padding: 0;
}

body#module-supercheckout-supercheckout .cart-progress-steps,
#module-supercheckout-supercheckout .cart-progress-steps {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-start;
}

body#module-supercheckout-supercheckout .cart-progress-step,
#module-supercheckout-supercheckout .cart-progress-step {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 315px;
  color: var(--text-color-base-secondary, #e5e5e5);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  position: relative;
  padding-bottom: 8px;
  text-decoration: none;
  cursor: pointer;
}

body#module-supercheckout-supercheckout .cart-progress-step:hover,
#module-supercheckout-supercheckout .cart-progress-step:hover {
  color: var(--text-color-base-primary, #000);
}

body#module-supercheckout-supercheckout .cart-progress-step:hover .step-number,
#module-supercheckout-supercheckout .cart-progress-step:hover .step-number {
  color: var(--text-color-base-primary, #000);
}

body#module-supercheckout-supercheckout .cart-progress-step:hover .step-label,
#module-supercheckout-supercheckout .cart-progress-step:hover .step-label {
  color: var(--text-color-base-primary, #000);
}

body#module-supercheckout-supercheckout .cart-progress-step.active,
#module-supercheckout-supercheckout .cart-progress-step.active {
  color: var(--text-color-base-primary, #000);
}

body#module-supercheckout-supercheckout .cart-progress-step.active .step-number,
#module-supercheckout-supercheckout .cart-progress-step.active .step-number {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

body#module-supercheckout-supercheckout .cart-progress-step.active .step-label,
#module-supercheckout-supercheckout .cart-progress-step.active .step-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

body#module-supercheckout-supercheckout .cart-progress-step::after,
#module-supercheckout-supercheckout .cart-progress-step::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 0;
  right: 0;
  height: 6px;
  border-radius: 13px;
  background: var(--border-primary, #E5E5E5);
}

body#module-supercheckout-supercheckout .cart-progress-step.active::after,
#module-supercheckout-supercheckout .cart-progress-step.active::after {
  bottom: -12px;
  height: 6px;
  border-radius: 13px;
  background: var(--color-brand-one-8-base, #E4FD71);
}

body#module-supercheckout-supercheckout .cart-progress-step .step-number,
#module-supercheckout-supercheckout .cart-progress-step .step-number {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  background-color: transparent;
}

body#module-supercheckout-supercheckout .cart-progress-step .step-label,
#module-supercheckout-supercheckout .cart-progress-step .step-label {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

/* Supercheckout - Stylowanie nagłówków h2 w custom-panel */
#module-supercheckout-supercheckout .opc-container .custom-panel h2 {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-XS <str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 32px;
  /* 133.333% */
  margin: 0;
  margin-bottom: 20px;
  padding: 0;
  border: none;
  background: none;
  text-transform: none;
  letter-spacing: normal;
}

/* Supercheckout - Usunięcie pseudo-elementu ::after z h2 */
#module-supercheckout-supercheckout .opc-container .custom-panel h2::after {
  display: none !important;
  content: none !important;
}

/* Supercheckout - Customer Type Selection (Osoba prywatna / Firma) */
#module-supercheckout-supercheckout .customer-type-selection-main {
  margin-bottom: 24px;
}

#module-supercheckout-supercheckout .customer-type-label-main {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 12px;
  display: block;
}

#module-supercheckout-supercheckout .customer-type-options-main {
  display: flex;
  gap: 12px;
}

#module-supercheckout-supercheckout .customer-type-option-main {
  position: relative;
  display: flex;
  height: 104px;
  padding: 40px 20px 20px 20px;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  border-radius: var(--radius-x-small, 4px);
  cursor: pointer;
  border: 1px solid var(--border-primary, #E5E5E5);
  background: #fff;
  cursor: pointer;
  transition: all 0.2s;
  user-select: none;
}

#module-supercheckout-supercheckout .customer-type-option-main:hover {
  border-color: var(--color-brand-one-8-base, #E4FD71);
}

#module-supercheckout-supercheckout .customer-type-option-main.active {
  background: var(--background-color-brand-1-normal, #E4FD71) !important;
  border: none !important;
}

#module-supercheckout-supercheckout .customer-type-option-main input[type="radio"] {
  display: none !important;
}

#module-supercheckout-supercheckout .customer-type-option-main .customer-type-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  cursor: pointer;
  margin-bottom: 0;
  padding-left: 0;
}

#module-supercheckout-supercheckout .customer-type-option-main.active .customer-type-label {
  font-weight: 600;
}

#module-supercheckout-supercheckout .customer-type-option-main .option-arrow {
  position: absolute;
  top: 16px;
  right: 20px;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  margin-left: 0;
}

#module-supercheckout-supercheckout .customer-type-option-main .option-arrow-active {
  display: none !important;
}

#module-supercheckout-supercheckout .customer-type-option-main .option-arrow-inactive {
  display: block !important;
}

#module-supercheckout-supercheckout .customer-type-option-main.active .option-arrow-active {
  display: block !important;
}

#module-supercheckout-supercheckout .customer-type-option-main.active .option-arrow-inactive {
  display: none !important;
}

#module-supercheckout-supercheckout .customer-type-option-main:not(.active) .option-arrow-active {
  display: none !important;
}

#module-supercheckout-supercheckout .customer-type-option-main:not(.active) .option-arrow-inactive {
  display: block !important;
}

/* Ukrywanie pól company i vat_number dla osoby prywatnej */
#module-supercheckout-supercheckout .shipping-box input[name="shipping_address[company]"],
#module-supercheckout-supercheckout .shipping-box input[name="shipping_address[vat_number]"],
#module-supercheckout-supercheckout .shipping-box #shipping_vat_number {
  transition: all 0.3s ease;
}

/* Pola company i vat_number będą ukrywane/pokazywane przez JavaScript */


/* Supercheckout - Przycisk "Pobierz dane" GUS */
#module-supercheckout-supercheckout .gus-fetch-btn {
  border-radius: 4px;
  border: 1px solid rgb(92, 184, 92);
  background: #E4FD71;
  color: #000;
  font-family: Sora;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  transition: all 0.2s;
}

#module-supercheckout-supercheckout .gus-fetch-btn:hover {
  background: #EBFE97;
  border-color: #C7E068;
}

#module-supercheckout-supercheckout .gus-fetch-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Supercheckout - Przycisk "Sprawdź NIP" i VIES (ten sam wygląd) */
#module-supercheckout-supercheckout .btn-check-nip,
#module-supercheckout-supercheckout .btn-check-vies {
  border-radius: 4px;
  border: 1px solid var(--background-color-brand-1-dark, #183030);
  background: var(--background-color-brand-1-dark, #183030);
  color: #fff;
  transition: all 0.2s;
}

#module-supercheckout-supercheckout .btn-check-nip:hover,
#module-supercheckout-supercheckout .btn-check-vies:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: #fff;
}

/* Modal wyboru firmy GUS */
#gus-company-selection-modal h3 {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 16px;
}

#gus-company-selection-modal #gus-companies-list>div:hover {
  border-color: #E4FD71;
  background: #F9FEF0;
}

/* Supercheckout - Zielone okienko informacyjne o zwalidowanym numerze VAT */
#module-supercheckout-supercheckout #vat-validation-success,
#module-supercheckout-supercheckout .sc-vat-validation-success-block {
  background-color: #d4edda !important;
  border: 1px solid #c3e6cb !important;
  color: #155724 !important;
  padding: 8px 12px !important;
  border-radius: 4px !important;
  margin: 8px 0 !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-family: Sora, sans-serif !important;
}

/* VIES obok NIP w .input-group — ten sam rozmiar co btn-check-nip */
#module-supercheckout-supercheckout .input-group .input-group-btn.sc-vies-btn-wrap .btn-check-vies,
#module-supercheckout-supercheckout .input-group .input-group-btn .btn-check-nip {
  height: 34px;
}

/* Supercheckout login options styles */
.checkout-login-options {
  display: flex;
  gap: 16px;
  justify-content: center;
  align-items: stretch;
  flex-wrap: nowrap;
}

.checkout-option-label {
  flex: 1;
  flex-basis: calc(33.333% - 11px);
  max-width: calc(33.333% - 11px);
  cursor: pointer;
  display: block;
}



.checkout-option-radio {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.checkout-option-text {
  display: block;
  font-weight: 500;
}

@media (max-width: 768px) {
  .checkout-login-options {
    flex-wrap: wrap;
  }

  .checkout-option-label {
    flex-basis: 100%;
    max-width: 100%;
  }
}

#module-supercheckout-supercheckout .title.section-title {
  margin-top: 48px;
}

#module-supercheckout-supercheckout .opc-container .custom-panel h2 {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 32px;
  /* 133.333% */
  margin-bottom: 16px;
  margin-top: 48px;
  margin-left: 8px;
}

/* Wyjątek dla sekcji logowania - bez margin-top */

#module-supercheckout-supercheckout .section-login h2.title.section-title-login {
  margin-top: 0;
}

#module-supercheckout-supercheckout .shipping-box {
  display: block;
  padding: 48px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 32px;
  align-self: stretch;
  border-radius: var(--radius-x-small, 4px);
  background: #FFF;
}

/* Adres rozliczeniowy — ten sam „biały panel” co .shipping-box powyżej */
#module-supercheckout-supercheckout #checkoutBillingAddress {
  display: block;
  padding: 48px;
  padding-top: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 32px;
  align-self: stretch;
  border-radius: var(--radius-x-small, 4px);
  background: #FFF;
}

#module-supercheckout-supercheckout #checkoutBillingAddress h2 {
  margin-top: 0;
}

/* Faktura imienna — nad pierwszymi polami adresu, w białym bloku shipping-box */
#module-supercheckout-supercheckout .shipping-box #private_named_invoice_wrap {
  margin-bottom: 8px;
}

/* Ukryj gwiazdki wymaganych pól w module supercheckout */
#module-supercheckout-supercheckout .supercheckout-required {
  display: none !important;
}

/* Margin-top dla input-box input-different-shipping */
#module-supercheckout-supercheckout .input-box.input-different-shipping {
  margin-top: 16px;
}

/* Shipping-box ul - usunięcie marginesu i paddingu na dole */
#module-supercheckout-supercheckout .shipping-box ul {
  margin-bottom: 0;
  padding-bottom: 0;
}

/* Shipping method styling */
#module-supercheckout-supercheckout #shipping-method {
  display: block;
  padding: 48px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 32px;
  align-self: stretch;
  border-radius: var(--radius-x-small, 4px);
  background: #FFF;
}

#module-supercheckout-supercheckout #payment-method {
  display: block;
  padding: 48px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 32px;
  align-self: stretch;
  border-radius: var(--radius-x-small, 4px);
  background: #FFF;
}

/* Styling dla li w shipping i payment method */
#module-supercheckout-supercheckout .opc_shipping_method li,
#module-supercheckout-supercheckout .opc_payment_method li {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  cursor: pointer;
  padding: 24px;
  align-items: center;
  gap: 24px;
  align-self: stretch;
  margin-bottom: 16px;
  transition: all 0.2s ease;
}

#module-supercheckout-supercheckout .opc_shipping_method li:hover,
#module-supercheckout-supercheckout .opc_payment_method li:hover {
  border-color: var(--color-brand-one-7, #C7E068);
  background-color: rgba(228, 253, 113, 0.05);
  border-color: #e5e5e5;
  background-color: transparent;
}

#module-supercheckout-supercheckout .opc_shipping_method li:last-child,
#module-supercheckout-supercheckout .opc_payment_method li:last-child {
  margin-bottom: 0;
}

/* Radio button container w li */
#module-supercheckout-supercheckout .opc_shipping_method li .radio,
#module-supercheckout-supercheckout .opc_payment_method li .radio {
  display: flex;
  align-items: center;
  gap: 24px;
  width: 100%;
  flex: 1;
  position: relative;
}

/* Label w radio button */
#module-supercheckout-supercheckout .opc_shipping_method li .radio label,
#module-supercheckout-supercheckout .opc_payment_method li .radio label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex: 1;
  cursor: pointer;
  margin: 0;
  width: 100%;
  position: relative;
  padding-left: 40px;
}

/* Obrazek w label */
#module-supercheckout-supercheckout .opc_shipping_method li .radio label img,
#module-supercheckout-supercheckout .opc_payment_method li .radio label img {
  flex-shrink: 0;
  width: 50px;
  height: auto;
}

/* Cena w label */
#module-supercheckout-supercheckout .opc_shipping_method li .radio label .shippingPrice,
#module-supercheckout-supercheckout .opc_payment_method li .radio label .shippingPrice {
  margin-left: auto;
  font-weight: 600;
  white-space: nowrap;
}

/* Informacja o dostawie (p.shippingInfo) */
#module-supercheckout-supercheckout .opc_shipping_method li .shippingInfo {
  position: absolute;
  right: 0;
  bottom: -20px;
  color: #666;
  font-size: 14px;
  margin: 0;
}

/* Ukryj domyślne style radio button */
#module-supercheckout-supercheckout .opc_shipping_method li .radio input[type="radio"],
#module-supercheckout-supercheckout .opc_payment_method li .radio input[type="radio"] {
  margin: 0;
  flex-shrink: 0;
}

/* Padding-left dla label w radio buttons */
#module-supercheckout-supercheckout .opc-container [type="radio"]:checked+label,
#module-supercheckout-supercheckout .opc-container [type="radio"]:not(:checked)+label {
  padding-left: 35px;
  width: 100%;
}

/* Radio button styling dla shipping i payment method - aktywny (checked) */
#module-supercheckout-supercheckout .opc_shipping_method [type="radio"]:checked+label::before,
#module-supercheckout-supercheckout .opc_payment_method [type="radio"]:checked+label::before {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 18px !important;
  border: 1px solid var(--color-brand-one-7, #C7E068) !important;
  background: var(--background-color-brand-1-normal, #E4FD71) !important;
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Wewnętrzne kółko dla checked radio button */
#module-supercheckout-supercheckout .opc_shipping_method [type="radio"]:checked+label::after,
#module-supercheckout-supercheckout .opc_payment_method [type="radio"]:checked+label::after {
  display: block !important;
  content: '' !important;
  position: absolute !important;
  left: 6px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 12px !important;
  height: 12px !important;
  border-radius: 50% !important;
  background: #183030 !important;
  box-sizing: border-box !important;
  opacity: 1 !important;
}

/* Radio button styling dla shipping i payment method - nieaktywny (unchecked) */
#module-supercheckout-supercheckout .opc_shipping_method [type="radio"]:not(:checked)+label::before,
#module-supercheckout-supercheckout .opc_payment_method [type="radio"]:not(:checked)+label::before {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 18px !important;
  background: var(--color-neutral-11, #F5F5F5) !important;
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  border: none !important;
}

/* Paynow PBL — ::before tylko w .paynow-payment-option-container (checked i unchecked) */
#module-supercheckout-supercheckout .paynow-payment-option-container [type="radio"]:checked + label::before,
#module-supercheckout-supercheckout .paynow-payment-option-container [type="radio"]:not(:checked) + label::before {
  left: 8px !important;
}

/* Ukryj :after dla unchecked radio button */
#module-supercheckout-supercheckout .opc_shipping_method [type="radio"]:not(:checked)+label::after,
#module-supercheckout-supercheckout .opc_payment_method [type="radio"]:not(:checked)+label::after {
  display: none !important;
}

/* Custom checkbox dla use_for_invoice */
#module-supercheckout-supercheckout .custom-checkbox-input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

#module-supercheckout-supercheckout .custom-checkbox-label {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  padding-left: 0 !important;
}

#module-supercheckout-supercheckout .custom-checkbox-icon {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-neutral-11, #F5F5F5);
  width: 20px;
  height: 20px;
  padding: 7px 6px;
  gap: 8px;
  transition: all 0.2s ease;
}

#module-supercheckout-supercheckout .custom-checkbox-check {
  display: none;
  width: 12px;
  height: 10px;
}

/* Checked state */
#module-supercheckout-supercheckout .custom-checkbox-input:checked+.custom-checkbox-label .custom-checkbox-icon {
  border-radius: 4px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  width: 20px;
  height: 20px;
  padding: 7px 6px;
  justify-content: center;
  align-items: center;
}

#module-supercheckout-supercheckout .custom-checkbox-input:checked+.custom-checkbox-label .custom-checkbox-check {
  display: block;
}

/* Styling dla sekcji podsumowania zamówienia */
#module-supercheckout-supercheckout .opc_shoppingcart h2 {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin-bottom: 24px;
}

#module-supercheckout-supercheckout .opc_shoppingcart h2 i {
  display: none;
}

/* Tabela z podsumowaniem */
#module-supercheckout-supercheckout .supercheckout-totals.totalTable {
  width: 100%;
  border: none;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
}

#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr {
  border: none;
}

#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr td {
  border: none;
  padding: 12px 0;
  vertical-align: top;
}

#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr td.title {
  text-align: left;
  padding-left: 0;
}

#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr td.value {
  text-align: right;
  padding-right: 0;
  font-weight: 600;
}

#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr td.title strong {
  font-weight: 600;
  color: #000;
  font-size: 16px;
  line-height: 24px;
}

#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr td.value .price {
  font-weight: 600;
  color: #000;
  font-size: 16px;
  line-height: 24px;
}

/* Sekcja "Łączna wartość" z VAT */
#module-supercheckout-supercheckout #supercehckout_summary_total_products td.title {
  position: relative;
}

#module-supercheckout-supercheckout #supercehckout_summary_total_products td.title strong::after {
  content: "Zawiera VAT 23%";
  display: block;
  font-weight: 400;
  font-size: 14px;
  color: #666;
  margin-top: 4px;
}

/* Linia oddzielająca */
#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr#supercehckout_summary_total_shipping {
  border-top: 1px solid #E5E5E5;
  margin-top: 8px;
  padding-top: 16px;
}

#module-supercheckout-supercheckout .supercheckout-totals.totalTable tfoot tr#supercehckout_summary_total_shipping td {
  padding-top: 16px;
}

/* Sekcja "Suma" */
#module-supercheckout-supercheckout .totalAmount {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #E5E5E5;
}

#module-supercheckout-supercheckout .totalAmount h3 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 18px;
  font-weight: 700;
  color: #000;
  margin: 0;
  padding: 0;
}

#module-supercheckout-supercheckout .totalAmount h3 .price {
  font-weight: 700;
  font-size: 18px;
  color: #000;
}

/* Przycisk "Kupuję i płacę" */
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton,
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn-success,
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn {
  display: flex !important;
  padding: 12px 24px !important;
  justify-content: space-between !important;
  align-items: center !important;
  align-self: stretch;
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--background-color-brand-1-normal, #E4FD71) !important;
  background: var(--color-brand-one-8-base, #E4FD71) !important;
  background-color: var(--color-brand-one-8-base, #E4FD71) !important;
  color: var(--text-color-base-primary, #000) !important;
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 20px !important;
  /* 142.857% */
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
}

#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton:hover,
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn-success:hover,
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn:hover {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-7, #C7E068) !important;
  background: var(--color-brand-one-9, #EBFE97) !important;
  color: var(--text-color-base-primary, #000) !important;
}

/* Nadpisz style .btn-success z Bootstrapa */
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn-success,
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn-success:focus,
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn-success:active,
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton.btn-success.active {
  background: var(--color-brand-one-8-base, #E4FD71) !important;
  border-color: var(--background-color-brand-1-normal, #E4FD71) !important;
  color: var(--text-color-base-primary, #000) !important;
}

#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton:hover svg path {
  fill: #000 !important;
}

/* Supercheckout - Styl tytułu produktu w koszyku */
.shopping-cart-description .product-title a {
  font-size: 14px;
  margin: 0;
  color: #232323;
  line-height: 1.2;
  margin-bottom: 5px;
}

.shopping-cart-description .product-title a:hover {
  opacity: 0.7;
}

#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton svg {
  margin-right: 0;
  margin-left: auto;
  flex-shrink: 0;
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton #progressbar {
  display: none !important;
  visibility: hidden !important;
}

/* Ukryj progressbar jeśli jest dodawany przez JS */
#module-supercheckout-supercheckout #supercheckout_confirm_order.orangebutton div#progressbar {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

#module-supercheckout-supercheckout #supercheckout-comments {
  display: block;
  padding: 48px;
  border-radius: var(--radius-x-small, 4px);
  background: #FFF;
}

#module-supercheckout-supercheckout .supercheckout-terms-text {
  max-width: 580px;
  margin: 24px auto 0;
  color: var(--text-color-base-secondary, #595959);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#module-supercheckout-supercheckout .supercheckout-terms-link {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

/* Nowy layout podsumowania bez tabeli */
#module-supercheckout-supercheckout .supercheckout-totals-summary {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 16px;
}

#module-supercheckout-supercheckout .supercheckout-summary-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0;
}

#module-supercheckout-supercheckout .supercheckout-summary-label {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#module-supercheckout-supercheckout .supercheckout-summary-label strong {
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#module-supercheckout-supercheckout #supercehckout_total_products_value {
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#module-supercheckout-supercheckout .supercheckout-vat-info {
  color: var(--text-color-base-tetriary, #888);
  /* Text/Caption */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  margin-top: 3px;
}

#module-supercheckout-supercheckout .supercheckout-summary-value {
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  color: #000;
  text-align: right;
}

#module-supercheckout-supercheckout .supercheckout-summary-separator {
  height: 1px;
  background: #E5E5E5;
  margin: 0;
  width: 100%;
}

#module-supercheckout-supercheckout .supercheckout-total-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  margin-top: 0;
  border-top: 1px solid #E5E5E5;
  padding-top: 16px;
}

#module-supercheckout-supercheckout .supercheckout-total-row .supercheckout-summary-label strong {
  color: var(--text-color-base-primary, #000);

  /* Text/Body II<str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  /* 142.857% */
}

#module-supercheckout-supercheckout .supercheckout-total-row .supercheckout-summary-value {
  color: var(--text-color-base-primary, #000);

  /* Text/Body II<str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  /* 142.857% */
}

/* Sticky position dla prawej kolumny z podsumowaniem */
#module-supercheckout-supercheckout .col-lg-8.col-md-8.col-sm-12.custom-panel.kb_mobile_sc_respo,
#module-supercheckout-supercheckout .parent-three-column.custom-panel.kb_mobile_sc_respo {
  position: sticky;
  top: 20px;
  align-self: flex-start;
  max-height: calc(100vh - 40px);
  overflow-y: auto;
}

/* Na małych ekranach wyłącz sticky */
@media (max-width: 768px) {

  #module-supercheckout-supercheckout .col-lg-8.col-md-8.col-sm-12.custom-panel.kb_mobile_sc_respo,
  #module-supercheckout-supercheckout .parent-three-column.custom-panel.kb_mobile_sc_respo {
    position: relative;
    top: 0;
    max-height: none;
    overflow-y: visible;
  }
}

/* Margin-top dla kolumny środkowej */
#module-supercheckout-supercheckout .supercheckout-column-middle.columnleftsort.col-lg-12.col-md-12.col-sm-12.colxs-12.kb_mobile_sc_respo {
  margin-top: 48px;
}

/* Style dla sekcji dostawy */
#module-supercheckout-supercheckout #supercehckout_summary_total_shipping {
  margin-top: 6px;
}

#module-supercheckout-supercheckout #supercehckout_summary_total_shipping .supercheckout-summary-label strong {
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#module-supercheckout-supercheckout #supercehckout_summary_total_shipping #supercehckout_total_shipping_value {
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#module-supercheckout-supercheckout #placeorderButton {
  margin-top: 12px;
}

#module-supercheckout-supercheckout #supercheckout-columnleft {
  padding: 0;
}

/* Order Confirmation Page Styles */
.order-confirmation-wrapper {
  margin-top: 36px;
  margin-bottom: 80px;
}

.order-confirmation-left {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 500px;
}

#order-confirmation #wrapper {
  background: var(--color-neutral-12-base, #FAFAFA);
}

.order-confirmation-content {
  text-align: center;
  max-width: 500px;
}

.order-confirmation-icon {
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
}

.order-confirmation-icon-wrapper {
  border-radius: 99px;
  border: 2px solid var(--background-semantic-success-light, #EBF8EB);
  background: var(--background-semantic-success-light, #EBF8EB);
  display: flex;
  width: 56px;
  height: 56px;
  padding: 12px 7px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  aspect-ratio: 1/1;
}

.order-confirmation-title {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 32px;
  /* 133.333% */
  margin-bottom: 24px;
}

.order-confirmation-message {
  color: var(--text-color-base-secondary, #595959);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 40px;
}

.order-confirmation-message strong {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

.btn-homepage {
  border-radius: 4px;
  border: 1px solid var(--background-color-dark, #000);
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  text-decoration: none;
  transition: all 0.2s ease;
  background: #FFF;
  width: 224px;
}

.btn-homepage:hover {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--background-color-brand-1-dark, #183030);
  background: rgba(24, 48, 48, 0.12);
  text-decoration: none;
}

.order-confirmation-right {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  min-height: 500px;
}

.create-account-card {
  border-radius: var(--radius-small, 8px);
  background: var(--color-neutral-white, #FFF);
  padding: 48px;
  max-width: 580px;
  width: 100%;
}

.create-account-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  margin-bottom: 32px;
}

.create-account-title strong {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 36px;
  /* 128.571% */
}

.create-account-benefits {
  list-style: none;
  padding: 0;
  margin: 0 0 32px 0;
}

.create-account-benefits li {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  color: var(--text-color-base-primary, #000);
}

.create-account-benefits li:last-child {
  margin-bottom: 0;
}

.create-account-benefits li svg {
  flex-shrink: 0;
}

.create-account-form .form-row {
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
}

.create-account-form .form-group {
  flex: 1;
  margin-bottom: 32px;
}

.create-account-form .form-group label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 8px;
  text-align: left;
  display: block;
}

.create-account-form .form-group input {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  display: flex;
  padding: 12px 16px;
  align-items: center;
  gap: 8px;
  align-self: stretch;
  width: 100%;
  background: #FFF;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

.create-account-form .form-group input:focus,
.create-account-form .form-control:focus,
.create-account-form input.form-control:focus,
.create-account-form .input-group.js-parent-focus:focus-within .form-control,
.create-account-form .input-group.js-parent-focus:focus-within input.js-visible-password,
.create-account-form .input-group.js-parent-focus:focus-within .js-child-focus {
  outline: none !important;
  display: flex !important;
  padding: 12px 16px !important;
  align-items: center !important;
  gap: 8px !important;
  align-self: stretch !important;
  border-radius: 4px !important;
  border: 1px solid #E5E5E5 !important;
  background: radial-gradient(381.13% 100% at 0% 100%, #E4FD71 0%, #FAFAFA 20.5%) !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

.create-account-terms {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 24px;
}

.create-account-terms input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.create-account-terms label {
  position: relative;
  padding-left: 32px;
  cursor: pointer;
}

.create-account-terms label::before {
  content: '';
  position: absolute;
  left: 0;
  top: 2px;
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-neutral-11, #F5F5F5);
  display: flex;
  width: 20px;
  height: 20px;
  padding: 7px 6px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  aspect-ratio: 1/1;
  box-sizing: border-box;
  transition: all 0.2s ease;
}

.create-account-terms input[type="checkbox"]:checked+label::before {
  border-radius: 4px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9.4L0 5.4L1.4 4L4 6.6L10.6 0L12 1.4L4 9.4Z' fill='%23183030'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 10px;
}

.create-account-terms label,
.accept-terms {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  cursor: pointer;
  margin: 0;
}

.create-account-terms a {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.create-account-terms a:hover {
  color: var(--text-color-base-primary, #000);
}

/* Registration page - checkbox styles matching supercheckout */
body#registration .custom-checkbox,
body.page-registration .custom-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

body#registration .custom-checkbox input[type="checkbox"],
body.page-registration .custom-checkbox input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
}

body#registration .custom-checkbox label,
body.page-registration .custom-checkbox label {
  position: relative;
  padding-left: 32px;
  cursor: pointer;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

body#registration .custom-checkbox label::before,
body.page-registration .custom-checkbox label::before {
  content: '';
  position: absolute;
  left: 0;
  top: 2px;
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-neutral-11, #F5F5F5);
  display: flex;
  width: 20px;
  height: 20px;
  padding: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
  aspect-ratio: 1/1;
  box-sizing: border-box;
  transition: all 0.2s ease;
}

/* Checked state using :has() selector for modern browsers */
body#registration .custom-checkbox label:has(input[type="checkbox"]:checked)::before,
body.page-registration .custom-checkbox label:has(input[type="checkbox"]:checked)::before {
  border-radius: 4px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9.4L0 5.4L1.4 4L4 6.6L10.6 0L12 1.4L4 9.4Z' fill='%23183030'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 10px;
}

/* 
body#registration .custom-checkbox label span,
body.page-registration .custom-checkbox label span {
  display: none !important;
} */
/* 
body#registration .custom-checkbox label .material-icons,
body.page-registration .custom-checkbox label .material-icons {
  display: none !important;
} */

body#registration .custom-checkbox a,
body.page-registration .custom-checkbox a {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

body#registration .custom-checkbox a:hover,
body.page-registration .custom-checkbox a:hover {
  color: var(--text-color-base-primary, #000);
}

/* Registration form - error styles */
body#registration .form-group.has-error input,
body#registration .form-group.has-error .form-control,
body#registration .form-group.has-error select,
body#registration .form-group.has-error textarea,
body.page-registration .form-group.has-error input,
body.page-registration .form-group.has-error .form-control,
body.page-registration .form-group.has-error select,
body.page-registration .form-group.has-error textarea {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--background-semantic-distructive-base, #C41408) !important;
  outline: none !important;
  box-shadow: none !important;
}

body#registration .form-group.has-error .alert-danger,
body.page-registration .form-group.has-error .alert-danger,
body#registration .form-group .alert-danger,
body.page-registration .form-group .alert-danger,
body#registration .form-group .invalid-feedback,
body.page-registration .form-group .invalid-feedback,
body#registration .form-group .text-danger,
body.page-registration .form-group .text-danger {
  background-color: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  color: var(--text-semantic-distructive-secondary, #C41408) !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  /* 133.333% */
  display: block !important;
}

body#registration .form-group.has-error .alert-danger ul,
body.page-registration .form-group.has-error .alert-danger ul,
body#registration .form-group .alert-danger ul,
body.page-registration .form-group .alert-danger ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body#registration .form-group.has-error .alert-danger li,
body.page-registration .form-group.has-error .alert-danger li,
body#registration .form-group .alert-danger li,
body.page-registration .form-group .alert-danger li {
  color: var(--text-semantic-distructive-secondary, #C41408) !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  /* 133.333% */
  margin: 0 !important;
  padding: 0 !important;
}

/* Input and textarea hover styles - yellow-green gradient on right part of bottom border */
.form-group:hover input[type="text"],
.form-group:hover input[type="email"],
.form-group:hover input[type="password"],
.form-group:hover input[type="tel"],
.form-group:hover input[type="number"],
.form-group:hover input[type="search"],
.form-group:hover input.form-control,
.form-group:hover .form-control,
.form-group:hover textarea,
.form-group:hover select.form-control,
input[type="text"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="tel"]:hover,
input[type="number"]:hover,
input[type="search"]:hover,
input.form-control:hover,
.form-control:hover,
textarea:hover,
select.form-control:hover {
  position: relative;
}

/* Create gradient line on bottom left using background-image - gradient from left (#E4FD71) to right (transparent) */
.form-group:hover input[type="text"],
.form-group:hover input[type="email"],
.form-group:hover input[type="password"],
.form-group:hover input[type="tel"],
.form-group:hover input[type="number"],
.form-group:hover input[type="search"],
.form-group:hover input.form-control,
.form-group:hover .form-control,
.form-group:hover textarea,
.form-group:hover select.form-control,
input[type="text"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="tel"]:hover,
input[type="number"]:hover,
input[type="search"]:hover,
input.form-control:hover,
.form-control:hover,
textarea:hover,
select.form-control:hover {
  background-image:
    linear-gradient(to right, #E4FD71 0%, transparent 100%) !important;
  background-position: bottom left !important;
  background-size: 50% 1px !important;
  background-repeat: no-repeat !important;
}

/* Password toggle button styles */
.btn-password-toggle {
  border-radius: 4px;
  border: none;
  background: var(--color-brand-one-2, #354D39) !important;
  color: #fff !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  padding: 12px 24px !important;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-right: 0 !important;
}

.btn-password-toggle:hover {
  background: var(--color-brand-one-3, #4A6B4F) !important;
  color: #fff !important;
}

.btn-password-toggle {
  border-radius: 4px;
  border: none;
  background: var(--color-brand-one-2, #354D39) !important;
  color: #fff !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  padding: 12px 24px !important;
  cursor: pointer;
  transition: all 0.2s ease;
}

.btn-password-toggle:hover {
  background: var(--color-brand-one-3, #4A6B4F) !important;
  color: #fff !important;
}

/* Forgotten password form styles */
.forgotten-password {
  padding: 0;
}

.forgotten-password .form-fields label.required,
.forgotten-password .form-fields .form-control-label.required {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 8px;
  width: auto;
}

/* Alerts between email input and button */
.forgotten-password .form-fields .alert-danger {
  margin-top: 16px;
  margin-bottom: 16px;
}

/* Send renew password link */
.send-renew-password-link {
  padding-left: 0px;
  padding-right: 0px;
}

/* Password page - remove padding */
body#password #main .page-content,
body#password #main .page-footer,
body#password #main .page-header,
body.page-password #main .page-content,
body.page-password #main .page-footer,
body.page-password #main .page-header {
  padding: 0;
  margin-bottom: 0;
}

body#password .authentication-page-wrapper,
body.page-password .authentication-page-wrapper {
  padding-top: 0;
}

body#password .page-customer-account #content,
body.page-password .page-customer-account #content {
  padding: 0;
}

body#password #wrapper,
body.page-password #wrapper {
  padding-top: 0;
}

/* No account password section - two lines */
.no-account-password {
  margin-top: 24px;
}

.no-account-password p {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0;
}

.no-account-password p a {
  display: block;
  margin-top: 8px;
  color: var(--text-color-base-secondary, #595959);
  text-align: right;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: 32%;
  /* 5.12px */
  text-underline-position: from-font;
}

.btn-create-account {
  width: 100%;
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-8-base, #E4FD71);
  background: var(--color-brand-one-8-base, #E4FD71);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.btn-create-account:hover {
  background: var(--color-brand-one-2, #354D39);
  border-color: var(--color-brand-one-2, #354D39);
  color: #FFF;
}

/* Progress bar for order confirmation page */
.page-order-confirmation .cart-progress-bar,
.order-confirmation-wrapper .cart-progress-bar {
  margin-bottom: 50px;
  padding: 0;
}

.page-order-confirmation .cart-progress-steps,
.order-confirmation-wrapper .cart-progress-steps {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-start;
}

.page-order-confirmation .cart-progress-step,
.order-confirmation-wrapper .cart-progress-step {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 315px;
  color: var(--text-color-base-secondary, #e5e5e5);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  position: relative;
  text-decoration: none;
}

.page-order-confirmation .cart-progress-step:hover,
.order-confirmation-wrapper .cart-progress-step:hover {
  color: var(--text-color-base-primary, #000);
  text-decoration: none;
}

.page-order-confirmation .cart-progress-step.active,
.order-confirmation-wrapper .cart-progress-step.active {
  color: var(--text-color-base-primary, #000);
}

.page-order-confirmation .cart-progress-step.active .step-number,
.order-confirmation-wrapper .cart-progress-step.active .step-number {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

.page-order-confirmation .cart-progress-step.active .step-label,
.order-confirmation-wrapper .cart-progress-step.active .step-label {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

.page-order-confirmation .cart-progress-step::after,
.order-confirmation-wrapper .cart-progress-step::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 0;
  right: 0;
  height: 6px;
  border-radius: 13px;
  background: var(--border-primary, #E5E5E5);
}

.page-order-confirmation .cart-progress-step.active::after,
.order-confirmation-wrapper .cart-progress-step.active::after {
  bottom: -12px;
  height: 6px;
  border-radius: 13px;
  background: var(--color-brand-one-8-base, #E4FD71);
}

.page-order-confirmation .cart-progress-step .step-number,
.order-confirmation-wrapper .cart-progress-step .step-number {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  background-color: transparent;
}

.page-order-confirmation .cart-progress-step .step-label,
.order-confirmation-wrapper .cart-progress-step .step-label {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

/* Responsive styles for order confirmation */
@media (max-width: 768px) {

  .order-confirmation-left,
  .order-confirmation-right {
    min-height: auto;
    margin-bottom: 32px;
  }

  .create-account-card {
    padding: 32px 24px;
  }

  .create-account-form .form-row {
    flex-direction: column;
    gap: 0;
  }

  .create-account-form .form-group {
    margin-bottom: 16px;
  }
}

/* Mobile styles for cart progress bar on order confirmation */
@media (max-width: 768px) {

  .page-order-confirmation .cart-progress-steps,
  .order-confirmation-wrapper .cart-progress-steps {
    gap: 8px;
  }

  .page-order-confirmation .cart-progress-step,
  .order-confirmation-wrapper .cart-progress-step {
    width: auto;
    flex: 1;
    min-width: 0;
    gap: 4px;
  }

  /* Step 1 and 3 - smaller width on mobile */
  .page-order-confirmation .cart-progress-step:nth-child(1),
  .page-order-confirmation .cart-progress-step:nth-child(3),
  .order-confirmation-wrapper .cart-progress-step:nth-child(1),
  .order-confirmation-wrapper .cart-progress-step:nth-child(3) {
    flex: 0 0 auto;
    min-width: 80px;
  }

  /* Step 2 - larger width on mobile */
  .page-order-confirmation .cart-progress-step:nth-child(2),
  .order-confirmation-wrapper .cart-progress-step:nth-child(2) {
    flex: 1 1 auto;
    min-width: 160px;
  }

  .page-order-confirmation .cart-progress-step .step-number,
  .order-confirmation-wrapper .cart-progress-step .step-number {
    font-size: 12px;
    line-height: 16px;
  }

  .page-order-confirmation .cart-progress-step .step-label,
  .order-confirmation-wrapper .cart-progress-step .step-label {
    font-size: 12px;
    line-height: 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .page-order-confirmation .cart-progress-step.active .step-number,
  .order-confirmation-wrapper .cart-progress-step.active .step-number {
    font-size: 12px;
    line-height: 16px;
  }

  .page-order-confirmation .cart-progress-step.active .step-label,
  .order-confirmation-wrapper .cart-progress-step.active .step-label {
    font-size: 12px;
    line-height: 16px;
  }

  /* Reduce headings by 20% on mobile */
  .order-confirmation-title {
    font-size: 19px;
    /* 24px * 0.8 */
    line-height: 26px;
    /* 32px * 0.8 */
  }

  .create-account-title {
    font-size: 22px;
    /* 28px * 0.8 */
    line-height: 29px;
    /* 36px * 0.8 */
  }

  .create-account-title strong {
    font-size: 22px;
    /* 28px * 0.8 */
    line-height: 29px;
    /* 36px * 0.8 */
  }

  /* Mobile styles for cart progress bar on checkout/order page */
  .checkout-page .cart-progress-steps,
  #content.checkout-page .cart-progress-steps {
    gap: 8px;
  }

  .checkout-page .cart-progress-step,
  #content.checkout-page .cart-progress-step {
    width: auto;
    flex: 1;
    min-width: 0;
    gap: 4px;
  }

  /* Step 1 and 3 - smaller width on mobile */
  .checkout-page .cart-progress-step:nth-child(1),
  .checkout-page .cart-progress-step:nth-child(3),
  #content.checkout-page .cart-progress-step:nth-child(1),
  #content.checkout-page .cart-progress-step:nth-child(3) {
    flex: 0 0 auto;
    min-width: 80px;
  }

  /* Step 2 - larger width on mobile */
  .checkout-page .cart-progress-step:nth-child(2),
  #content.checkout-page .cart-progress-step:nth-child(2) {
    flex: 1 1 auto;
    min-width: 160px;
  }

  .checkout-page .cart-progress-step .step-number,
  #content.checkout-page .cart-progress-step .step-number {
    font-size: 12px;
    line-height: 16px;
  }

  .checkout-page .cart-progress-step .step-label,
  #content.checkout-page .cart-progress-step .step-label {
    font-size: 12px;
    line-height: 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .checkout-page .cart-progress-step.active .step-number,
  #content.checkout-page .cart-progress-step.active .step-number {
    font-size: 12px;
    line-height: 16px;
  }

  .checkout-page .cart-progress-step.active .step-label,
  #content.checkout-page .cart-progress-step.active .step-label {
    font-size: 12px;
    line-height: 16px;
  }

  /* Reduce headings by 20% on mobile for checkout page */
  .checkout-page h1,
  .checkout-page h2,
  #content.checkout-page h1,
  #content.checkout-page h2 {
    font-size: calc(var(--base-font-size, 1em) * 0.8);
    line-height: calc(var(--base-line-height, 1.5em) * 0.8);
  }

  /* Specific heading sizes for supercheckout - reduce by 20% */
  #module-supercheckout-supercheckout .opc-container .custom-panel h2 {
    font-size: 19px;
    /* 24px * 0.8 */
    line-height: 26px;
    /* 32px * 0.8 */
  }

  #module-supercheckout-supercheckout .title.section-title {
    font-size: 19px;
    /* 24px * 0.8 */
    line-height: 26px;
    /* 32px * 0.8 */
  }

  #module-supercheckout-supercheckout .section-login h2.title.section-title-login {
    font-size: 19px;
    /* 24px * 0.8 */
    line-height: 26px;
    /* 32px * 0.8 */
  }

  /* Mobile styles for cart progress bar on supercheckout page */
  body#module-supercheckout-supercheckout .cart-progress-steps,
  #module-supercheckout-supercheckout .cart-progress-steps {
    gap: 8px;
  }

  body#module-supercheckout-supercheckout .cart-progress-step,
  #module-supercheckout-supercheckout .cart-progress-step {
    width: auto;
    flex: 1;
    min-width: 0;
    gap: 4px;
  }

  /* Step 1 and 3 - smaller width on mobile */
  body#module-supercheckout-supercheckout .cart-progress-step:nth-child(1),
  body#module-supercheckout-supercheckout .cart-progress-step:nth-child(3),
  #module-supercheckout-supercheckout .cart-progress-step:nth-child(1),
  #module-supercheckout-supercheckout .cart-progress-step:nth-child(3) {
    flex: 0 0 auto;
    min-width: 80px;
  }

  /* Step 2 - larger width on mobile */
  body#module-supercheckout-supercheckout .cart-progress-step:nth-child(2),
  #module-supercheckout-supercheckout .cart-progress-step:nth-child(2) {
    flex: 1 1 auto;
    min-width: 160px;
  }

  body#module-supercheckout-supercheckout .cart-progress-step .step-number,
  #module-supercheckout-supercheckout .cart-progress-step .step-number {
    font-size: 12px;
    line-height: 16px;
  }

  body#module-supercheckout-supercheckout .cart-progress-step .step-label,
  #module-supercheckout-supercheckout .cart-progress-step .step-label {
    font-size: 12px;
    line-height: 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  body#module-supercheckout-supercheckout .cart-progress-step.active .step-number,
  #module-supercheckout-supercheckout .cart-progress-step.active .step-number {
    font-size: 12px;
    line-height: 16px;
  }

  body#module-supercheckout-supercheckout .cart-progress-step.active .step-label,
  #module-supercheckout-supercheckout .cart-progress-step.active .step-label {
    font-size: 12px;
    line-height: 16px;
  }

  /* Display block on mobile for supercheckout three columns row */
  #module-supercheckout-supercheckout #velsof_supercheckout_form #supercheckout-columnleft.supercheckout-threecolumns>.row {
    display: block;
  }

  /* Width 100% on mobile for col-lg-4 col-md-4 col-sm-12 kb_mobile_sc_respo */
  #module-supercheckout-supercheckout .col-lg-4.col-md-4.col-sm-12.kb_mobile_sc_respo {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* Hide default footer on order confirmation page */
.page-order-confirmation .js-footer.footer-home,
.page-order-confirmation #footer.js-footer.footer-home {
  display: none !important;
}

/* Order Confirmation Footer Bar - Full Width */
.order-confirmation-footer-bar {
  background: #000;
  padding: 32px 0;
  width: 100%;
}

.order-confirmation-footer-content {
  display: flex;
  justify-content: space-between;

}

.order-confirmation-footer-text {
  color: var(--text-color-dark-tetriary, #727272);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

.order-confirmation-footer-logo .site-logo {
  display: inline-flex;
  align-items: center;
}

.order-confirmation-footer-logo .site-logo img {
  height: auto;
  max-height: 40px;
  width: auto;
}

@media (max-width: 768px) {
  .order-confirmation-footer-content {
    flex-direction: column;
    text-align: center;
    gap: 16px;
  }
}

.product-images>li.thumb-container .thumb.selected,
.product-images>li.thumb-container .thumb:hover {
  border-radius: 4.444px;
  border: 1.111px solid var(--color-brand-one-1-base, #183030);
}

/* Breadcrumbs na stronie produktu */

body#product .product-actions-header {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
  margin-left: auto;
}

/* Stylowanie standardowego przycisku wishlist z PrestaShop */
body#product .product-actions-header .wishlist-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

body#product .product-actions-header .wishlist-button-add {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  background: none;
  border: none;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.15s ease;
  font-family: var(--font-family-family-primary, Sora);
}

body#product .product-actions-header .wishlist-button-add:hover {
  color: #222;
  text-decoration: none;
}

body#product .product-actions-header .wishlist-button-add .material-icons,
body#product .product-actions-header .wishlist-button-add i {
  display: none;
}

body#product .product-actions-header .wishlist-button-add .wishlist-svg-icon {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: inherit;
}

body#product .product-actions-header .wishlist-button-add span,
body#product .product-actions-header .wishlist-button-add .wishlist-text {
  white-space: nowrap;
}

body#product .product-actions-header .wishlist-button-product {
  margin-left: 0;
}

body#product .product-actions-header .btn-price-history {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  background: none;
  border: none;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.15s ease;
}

body#product .product-actions-header .btn-price-history:hover {
  color: #222;
  text-decoration: none;
}

body#product .product-actions-header .btn-price-history svg {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

body#product .product-actions-header .btn-price-history span {
  white-space: nowrap;
}

/* Modal z historią ceny */
.price-history-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.price-history-modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
}

.price-history-modal-content {
  position: relative;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
  max-width: 800px;
  width: 100%;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  z-index: 1;
}

.price-history-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  border-bottom: 1px solid #ececec;
}

.price-history-modal-header h3 {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: #222;
}

.price-history-modal-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  background: none;
  border: none;
  color: #888;
  cursor: pointer;
  border-radius: 6px;
  transition: background 0.15s ease, color 0.15s ease;
}

.price-history-modal-close:hover {
  background: #f5f5f5;
  color: #222;
}

.price-history-modal-close svg {
  width: 20px;
  height: 20px;
}

.price-history-modal-body {
  padding: 24px;
  overflow: visible;
  flex: 1;
}

.price-history-loading {
  text-align: center;
  padding: 40px 20px;
  color: #888;
  font-size: 14px;
}

.price-history-empty {
  text-align: center;
  padding: 40px 20px;
  color: #888;
}

.price-history-empty p {
  margin: 8px 0;
  font-size: 14px;
}

.price-history-list {
  /* Style dla listy historii ceny */
}

/* Price History Chart Styles */
.price-history-chart-container {
  padding: 0;
}

.price-history-canvas-container {
  width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
}

#price-history-canvas {
  display: block;
  cursor: crosshair;
  max-width: 100%;
  height: auto;
}

.price-history-lowest {
  margin-bottom: 20px;
  padding: 12px;
  background: #f8f9fa;
  border-radius: 8px;
  font-size: 14px;
  color: #333;
  text-align: center;
}

.price-history-bars {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  position: relative;
  min-height: 250px;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 40px;
  overflow-x: auto;
  overflow-y: visible;
  width: 100%;
}

.price-history-bars-wrapper {
  position: relative;
  width: 100%;
  overflow: visible;
}

.price-history-y-axis {
  position: absolute;
  top: 0;
  bottom: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 25px;
  z-index: 10;
}

.price-history-y-axis.y-axis-left {
  left: 0;
}

.price-history-y-axis.y-axis-right {
  position: sticky;
  right: 0;
  align-self: flex-end;
  margin-left: auto;
  flex-shrink: 0;
  background: #fff;
  z-index: 15;
}

.price-history-y-axis .y-axis-label {
  font-size: 11px;
  color: #666;
  text-align: center;
  white-space: nowrap;
  line-height: 1.2;
  transform: rotate(-90deg);
  transform-origin: center;
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.price-history-y-axis.y-axis-left .y-axis-label {
  text-align: right;
}

.price-history-y-axis.y-axis-right .y-axis-label {
  text-align: left;
}

.price-history-bars-container {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  flex: 1;
  position: relative;
  overflow: visible;
  flex-wrap: nowrap;
  min-width: fit-content;
}

.price-history-bar-wrapper {
  flex: 0 0 auto;
  min-width: 20px;
  max-width: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.price-history-bar {
  width: 100%;
  background: linear-gradient(180deg, #4A90E2 0%, #357ABD 100%);
  border-radius: 4px 4px 0 0;
  min-height: 4px;
  cursor: pointer;
  transition: opacity 0.2s;
  position: relative;
}

.price-history-bar:hover {
  opacity: 0.8;
}

.price-history-bar-lowest {
  background: linear-gradient(180deg, #E74C3C 0%, #C0392B 100%);
}

.price-history-bar-date {
  margin-top: 8px;
  font-size: 10px;
  color: #666;
  text-align: center;
  white-space: nowrap;
  transform: rotate(-45deg);
  transform-origin: center top;
  height: 40px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  line-height: 1.2;
  width: 40px;
  margin-left: -10px;
}

@media (max-width: 768px) {
  .price-history-bars {
    padding-left: 25px;
    padding-right: 25px;
    gap: 2px;
  }

  .price-history-y-axis {
    width: 20px;
  }

  .price-history-y-axis .y-axis-label {
    font-size: 10px;
    width: 20px;
    height: 20px;
  }

  .price-history-bar-wrapper {
    min-width: 12px;
    max-width: 20px;
  }

  .price-history-bar-wrapper {
    max-width: calc((100% - 1px * 29) / 30);
  }

  .price-history-bar-date {
    font-size: 9px;
    height: 35px;
    width: 35px;
    margin-left: -8px;
  }
}

@media (max-width: 768px) {
  .price-history-modal {
    padding: 0;
  }

  .price-history-modal-content {
    max-height: 100vh;
    border-radius: 0;
  }

  body#product .product-actions-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  body#product .product-actions-header .wishlist-button-add span,
  body#product .product-actions-header .btn-price-history span {
    font-size: 11px;
  }
}


/* ============================================
 BREADCRUMBS - Wszystkie style w jednym miejscu
 ============================================ */

/* Główne style breadcrumbs */
#wrapper .bc {
  margin-bottom: 16px;
}

#wrapper .bc .breadcrumb {
  margin: 0;
  padding: 0;
  background: transparent;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  color: #888;
  font-family: var(--font-family-family-primary, Sora);
}

#wrapper .bc .breadcrumb li::after {
  display: none;
}

#wrapper .bc .breadcrumb .breadcrumb-item {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

/* Linki w breadcrumbs */
#wrapper .bc .breadcrumb .breadcrumb-item a {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
  text-decoration: none;
  transition: color 0.15s ease, opacity 0.15s ease;
}

#wrapper .bc .breadcrumb .breadcrumb-item a:hover {
  text-decoration: underline;
}

#wrapper .bc .breadcrumb .breadcrumb-item span {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

/* Separator między elementami */
#wrapper .bc .breadcrumb .breadcrumb-item+.breadcrumb-item {
  position: relative;
  padding-left: 8px;
}

#wrapper .bc .breadcrumb .breadcrumb-item+.breadcrumb-item::before {
  content: "";
  display: inline-block;
  width: 6.459px;
  height: 11.263px;
  margin: 0 8px 0 0;
  transform: translateY(1px);
  background: url("data:image/svg+xml;utf8,<svg width=%277%27 height=%2712%27 viewBox=%270 0 7 12%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27><path d=%27M0.827896 11.2627L0 10.4348L4.80346 5.63135L0 0.827896L0.827896 0L6.45925 5.63135L0.827896 11.2627Z%27 fill=%27%23B2B2B2%27/></svg>") no-repeat center/contain;
  padding-right: 0;
}

/* Ikona domu dla pierwszego elementu */
#wrapper .bc .breadcrumb .breadcrumb-item:first-child a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

#wrapper .bc .breadcrumb .breadcrumb-item:first-child a::before {
  content: "";
  width: 10px;
  height: 12px;
  display: inline-block;
  background: url("data:image/svg+xml;utf8,<svg width=%2710%27 height=%2712%27 viewBox=%270 0 10 12%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27><path d=%27M1 10.2628H3.23083V6.30133H6.76917V10.2628H9V4.26283L5 1.25L1 4.26283V10.2628ZM0 11.2628V3.76283L5 0L10 3.76283V11.2628H5.76917V7.30133H4.23083V11.2628H0Z%27 fill=%27%23B2B2B2%27/></svg>") no-repeat center/contain;
  margin-right: 4px;
}

#wrapper .bc .breadcrumb .breadcrumb-item:first-child a span {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

#wrapper .bc .breadcrumb .breadcrumb-item:first-child span {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

/* Aktywny/ostatni element */
#wrapper .bc .breadcrumb .breadcrumb-item.active,
#wrapper .bc .breadcrumb .breadcrumb-item:last-child {
  color: #a1a5ab;
  pointer-events: none;
}

#wrapper .bc .breadcrumb .breadcrumb-item.active span,
#wrapper .bc .breadcrumb .breadcrumb-item.active a,
#wrapper .bc .breadcrumb .breadcrumb-item.active a span,
#wrapper .bc .breadcrumb .breadcrumb-item:last-child span,
#wrapper .bc .breadcrumb .breadcrumb-item:last-child a,
#wrapper .bc .breadcrumb .breadcrumb-item:last-child a span {
  display: inline-block;
  max-width: none;
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
  vertical-align: top;
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

/* Ukrycie breadcrumbs na niektórych stronach */
#contact #wrapper .bc,
#about #wrapper .bc {
  display: none;
}

body#authentication .breadcrumb,
body.page-authentication .breadcrumb {
  display: none;
}

body#registration .breadcrumb,
body.page-registration .breadcrumb {
  display: none;
}

/* Breadcrumbs na stronie produktu */
body#product .container-fluid:has(.breadcrumb-wrapper) {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 16px;
  margin-bottom: 0;
}

body#product .breadcrumb-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  gap: 20px;
}

.breadcrumb-wrapper {
  width: 100%;
}

body#product .bc {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 70%;
  margin-bottom: 0;
}

body#product .bc .breadcrumb {
  display: flex;
  flex-wrap: nowrap;
  overflow: hidden;
  white-space: nowrap;
  max-width: 100%;
}

body#product .bc .breadcrumb .breadcrumb-item {
  flex-shrink: 0;
  white-space: nowrap;
  overflow: visible;
}

body#product .bc .breadcrumb .breadcrumb-item:not(.active) span,
body#product .bc .breadcrumb .breadcrumb-item:not(.active) a {
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
  display: inline-block;
}

body#product .bc .breadcrumb .breadcrumb-item.active {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
}

body#product .bc .breadcrumb .breadcrumb-item.active span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-block;
  max-width: 100%;
}

body#product .bc .breadcrumb .breadcrumb-ellipsis {
  display: inline-flex;
  align-items: center;
  margin: 0 4px;
  color: #888;
  flex-shrink: 0;
}

body#product .bc .breadcrumb .breadcrumb-ellipsis span {
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

/* Responsive - Mobile */
@media (max-width: 575.98px) {
  #wrapper .bc {
    margin-bottom: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  #wrapper .bc::-webkit-scrollbar {
    display: none;
  }

  #wrapper .bc .breadcrumb {
    flex-wrap: nowrap;
    white-space: nowrap;
  }

  #wrapper .bc .breadcrumb .breadcrumb-item:last-child span {
    max-width: none;
    overflow: visible;
    text-overflow: clip;
    color: var(--text-color-base-tetriary, #888);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    /* 133.333% */
  }
}

/* ============================================
 JOBS PAGE STYLES
 ============================================ */

/* Hero Section */
#module-joboffers-list #wrapper {
  background: linear-gradient(180deg, var(--background-color-brand-2-light, #F8F5F2) 0%, #FFF 43.35%);
  padding-top: 0;
}

#module-joboffers-list .breadcrumb-wrapper {
  display: none;
}

#module-joboffers-list #wrapper>.container-fluid {
  padding-left: 0;
  padding-right: 0;
}

#module-joboffers-list .jobs-list-section {
  background: var(--background-color-brand-2-light, #F8F5F2);
  padding-left: 0;
  padding-right: 0;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%);
  padding-top: 96px;
  padding-bottom: 128px;

}

#module-joboffers-list .jobs-list-section-list2 {
  background-color: transparent;
  padding-top: 0;
}

#module-joboffers-list .jobs-list-section .jobs-title-wrapper {
  margin-bottom: 40px;
}

#module-joboffers-list .jobs-list-section .jobs-title-wrapper h1 {
  margin-bottom: 8px;
}

#offerJobs #wrapper {
  background: var(--background-color-brand-2-light, #F8F5F2);
  padding-top: 0;
}

#offerJobs .breadcrumb-wrapper {
  display: none;
}

#offerJobs .container-fluid {
  padding-left: calc(var(--bs-gutter-x)*.5);
  padding-right: calc(var(--bs-gutter-x)*.5);

}

.jobs-hero-section {
  position: relative;
  margin-bottom: 96px;
}

/* Jobs Hero Section - Desktop: pokaż desktop, ukryj mobile */
.jobs-hero-desktop {
  display: block;
}

.jobs-hero-mobile {
  display: none;
}

/* Job Details Icon */
.job-details-ico {
  display: flex;
  width: 112px;
  height: 112px;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 99px;
  border: 4px solid #F9F7F4;
  background: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 0 72px 0 rgba(228, 253, 113, 0.60);
}

.job-details-ico svg {
  width: 47px;
  height: 47px;
}

/* Job Details Boxes */
.jobs-content-section .container-fluid {
  max-width: 800px;
}

.jobs-content-section .jobs-title-wrapper h1 {
  color: var(--text-color-base-primary, #000);
  text-align: center;

  /* Heading/Headi-XXL */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 64px;
  font-style: normal;
  font-weight: 400;
  line-height: 72px;
  /* 112.5% */
  margin-bottom: 8px
}

.jobs-content-section .jobs-title-wrapper {
  color: var(--text-color-base-secondary, #595959);
  text-align: center;

  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 94px;
}

.jobs-content-section .jobs-title-wrapper p {
  color: var(--text-color-base-secondary, #595959);
  text-align: center;

  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

.job-details-boxes {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-bottom: 24px;
}

.job-detail-box {
  background: #FFF;
  border: 1px solid var(--border-primary, #E5E5E5);
  border-radius: var(--radius-x-small, 4px);
  padding: 16px;
  text-align: left;
  min-height: 144px;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.box-label {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  margin-bottom: 0;
  align-self: flex-start;
}

.box-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  word-wrap: break-word;
  align-self: flex-start;
  margin-top: auto;
}

/* Apply Button */
.apply-button-wrapper {
  text-align: center;
  margin-bottom: 40px;
}

.apply-button-wrapper .btn-apply {
  border-radius: 4px;
  border: 1px solid var(--background-color-brand-1-dark, #183030);
  background: var(--background-color-brand-1-dark, #183030);
  display: flex;
  width: 192px;
  padding: 12px 24px;
  justify-content: space-between;
  align-items: center;
  color: var(--text-color-dark-primary, #FFF);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  text-decoration: none;
  transition: background-color 0.3s;
  margin: 0 auto;
}

.apply-button-wrapper .btn-apply:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: var(--text-color-dark-primary, #FFF);
}

.apply-button-wrapper .btn-apply svg {
  width: 16px;
  height: 16px;
  fill: var(--background-color-brand-1-normal, #E4FD71);
}

/* Job Tabs */
.job-tabs-wrapper {
  margin-bottom: 40px;
}

.job-tabs {
  border-bottom: 2px solid #dee2e6;
}

.job-tabs .nav-link {
  color: #6c757d;
  border: none;
  border-bottom: 3px solid transparent;
  padding: 12px 24px;
  font-weight: 500;
  transition: all 0.3s;
}

.job-tabs .nav-link:hover {
  color: #343a40;
  border-bottom-color: #dee2e6;
}

.job-tabs .nav-link.active {
  color: #343a40;
  border-bottom-color: #E4FD71;
  background-color: transparent;
}

.job-tab-content {
  margin-bottom: 60px;
}



.jobs-content-section2 {
  padding-bottom: 64px;
}

.jobs-content-section2 .container-fluid {
  max-width: 700px;
}

.jobs-content-section2 .section-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
}

.jobs-content-section2 .section-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  background: #FFF;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.jobs-content-section2 .section-icon svg {
  width: 28px;
  height: 28px;
}

.jobs-content-section2 .section-title {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 36px;
  /* 128.571% */
  margin: 0;
}

.jobs-content-section2 .job-section {
  margin-bottom: 80px;
}

.jobs-content-section2 .job-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.jobs-content-section2 .job-list li {
  padding: 0;
  padding-left: 24px;
  position: relative;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin-bottom: 8px;
}

.jobs-content-section2 .job-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 12px;
  border-radius: 2px;
  background: var(--color-neutral-9, #D0D0D0);
  width: 8px;
  height: 8px;
}

.jobs-content-section2 .job-content {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.jobs-content-section2 .job-content p {
  margin-bottom: 16px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
}

.jobs-content-section2 .job-content p:last-child {
  margin-bottom: 0;
}

.jobs-content-section2 .job-content ul,
.jobs-content-section2 .job-content ol {
  list-style: none;
  padding: 0;
  margin: 0 0 16px 0;
}

.jobs-content-section2 .job-content ul li,
.jobs-content-section2 .job-content ol li {
  padding: 0;
  padding-left: 24px;
  position: relative;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
  margin-bottom: 8px;
}

.jobs-content-section2 .job-content ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  border-radius: 2px;
  background: var(--color-neutral-9, #D0D0D0);
  width: 8px;
  height: 8px;
}

.jobs-content-section2 .job-content ul li:last-child,
.jobs-content-section2 .job-content ol li:last-child {
  margin-bottom: 0;
}

.jobs-content-section2 .job-content strong,
.jobs-content-section2 .job-content b {
  font-weight: 600;
}

.jobs-content-section2 .job-content h1,
.jobs-content-section2 .job-content h2,
.jobs-content-section2 .job-content h3,
.jobs-content-section2 .job-content h4,
.jobs-content-section2 .job-content h5,
.jobs-content-section2 .job-content h6 {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-weight: 600;
  margin-top: 24px;
  margin-bottom: 16px;
}

.jobs-content-section2 .job-content h1:first-child,
.jobs-content-section2 .job-content h2:first-child,
.jobs-content-section2 .job-content h3:first-child,
.jobs-content-section2 .job-content h4:first-child,
.jobs-content-section2 .job-content h5:first-child,
.jobs-content-section2 .job-content h6:first-child {
  margin-top: 0;
}

/* Recruitment Process */
.recruitment-process {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.process-step {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.step-number {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  background-color: #E4FD71;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: bold;
  color: #2d5a2d;
}

.step-content h3 {
  font-size: 20px;
  font-weight: bold;
  color: #343a40;
  margin-bottom: 8px;
}

.step-content p {
  color: #495057;
  margin: 0;
  line-height: 1.6;
}

/* Image Gallery */
.jobs-gallery {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  overflow: hidden;
  margin-bottom: 48px;
}

.jobs-gallery .container-fluid {
  padding-left: 0;
  padding-right: 0;
  width: 100%;
  max-width: none;
}

.gallery-row {
  width: 100%;
  overflow: hidden;
  margin-bottom: 20px;
}

.gallery-row:last-child {
  margin-bottom: 0;
}

.gallery-scroll-wrapper {
  display: flex;
  width: max-content;
  gap: 20px;
}

.gallery-scroll-even {
  animation: scroll-gallery-even 90s linear infinite;
}

.gallery-scroll-odd {
  animation: scroll-gallery-odd 90s linear infinite;
  margin-left: -125px;
  /* Przesunięcie całej galerii o połowę szerokości zdjęcia */
}

.jobs-gallery:hover .gallery-scroll-even,
.jobs-gallery:hover .gallery-scroll-odd {
  animation-play-state: paused;
}

@keyframes scroll-gallery-even {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(calc(-1330px - 20px));
    /* Szerokość rzędu + gap */
  }
}

@keyframes scroll-gallery-odd {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(calc(-1330px - 20px));
    /* Szerokość rzędu + gap */
  }
}

.gallery-items-row {
  display: flex;
  gap: 20px;
  flex-shrink: 0;
}

.gallery-items-offset {
  margin-left: 0;
  /* Usunięto margin-left z rzędu, bo przesuwamy całą galerię */
}

.gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  width: 250px;
  height: 250px;
  flex-shrink: 0;
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100%);
  transition: filter 0.3s;
}

.gallery-item:hover img {
  filter: grayscale(0%);
}

/* Recruitment Process Section */
.recruitment-process-section {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #FFFFFF;
}

.recruitment-process-section .container-fluid {
  max-width: 1200px;
}

.recruitment-process-section .recruitment-process-wrapper {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 80px;
  align-items: start;
}

.recruitment-process-section .section-title {
  color: var(--text-color-base-primary, #000);
  text-align: left;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 36px;
  margin: 0;
  white-space: nowrap;
}

.recruitment-process-section .process-steps {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.recruitment-process-section .process-step {
  position: relative;
  display: flex;
  gap: 16px;
  padding: 24px;
  background: transparent;
  border-radius: var(--radius-small, 8px);
  border: none;
}

.recruitment-process-section .recruitment-process-content {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
}

.recruitment-process-section .recruitment-process-content p {
  margin-bottom: 16px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
}

.recruitment-process-section .recruitment-process-content p:last-child {
  margin-bottom: 0;
}

.recruitment-process-section .recruitment-process-content strong {
  font-weight: 600;
}

.recruitment-process-section .step-number {
  flex-shrink: 0;
  position: relative;
  display: flex;
  width: 48px;
  height: 48px;
  padding: 0;
  justify-content: center;
  align-items: center;
  background: var(--color-neutral-11, #F5F5F5);
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  border-radius: var(--radius-x-small, 4px);
}

.recruitment-process-section .step-number::after {
  content: '';
  position: absolute;
  left: -4px;
  bottom: -4px;
  width: 8px;
  height: 8px;
  background: var(--color-neutral-11, #F5F5F5);
  box-shadow: 0 4px 48px 0 var(--color-brand-one-8-base, #E4FD71);
  border-radius: 50%;
}

.recruitment-process-section .step-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.recruitment-process-section .step-content .step-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  letter-spacing: -0.09px;
  margin: 0;
}

.recruitment-process-section .step-content .step-title strong {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  letter-spacing: -0.09px;
}

.recruitment-process-section .step-content .step-description {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
  margin: 0;
}

.recruitment-process-section .step-content p {
  margin: 0;
}

@media (max-width: 768px) {
  .recruitment-process-section .recruitment-process-wrapper {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .recruitment-process-section .section-title {
    text-align: left;
    white-space: normal;
  }
}

/* Application Form */
.application-form-section {
  margin-top: 0;
  margin-bottom: 160px;
}

.application-form-section .container-fluid {
  max-width: 800px;
}

.application-form-section .form-section-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 36px;
  text-align: center;
  margin-bottom: 40px;
}

.application-form-section .job-application-form {
  max-width: 100%;
  margin: 0 auto;
  border-radius: var(--radius-small, 8px);
  border: 1px solid var(--border-primary, #E5E5E5);
  background: #FFF;
  padding: 40px;
  position: relative;
}

.application-form-section .form-decoration-svg {
  position: absolute;
  left: -34px;
  bottom: -51px;
  z-index: 1;
  pointer-events: none;
}

.application-form-section .form-decoration-svg svg {
  width: 122px;
  height: 122px;
}

.application-form-section .job-application-form>*:not(.form-decoration-svg) {
  position: relative;
  z-index: 1;
}

.application-form-section .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 0;
}

.application-form-section .form-group {
  margin-bottom: 32px;
}

.application-form-section .form-group label {
  display: block;
  margin-bottom: 8px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  text-align: left;
}

.application-form-section .job-application-form .form-control {
  width: 100%;
  padding: 12px;
  border: 1px solid #dee2e6;
  border-radius: 6px;
  font-size: 16px;
  transition: border-color 0.3s;
  background-color: #fff;
}

.application-form-section .job-application-form .form-control:focus {
  outline: none;
  border-color: #E4FD71;
  box-shadow: 0 0 0 3px rgba(228, 253, 113, 0.1);
}

.application-form-section .file-upload-wrapper {
  position: relative;
  border: 1px dashed var(--border-primary, #E5E5E5);
  border-radius: 8px;
  padding: 40px 20px;
  text-align: center;
  background-color: #fff;
  transition: all 0.3s;
  border-radius: var(--radius-x-small, 4px);
}

.application-form-section .file-upload-wrapper:hover {

  border: 1px dashed var(--border-primary, #E5E5E5);
}

.application-form-section .form-control-file {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.application-form-section .file-upload-label {
  display: flex;
  padding: 12px 24px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  max-width: 246px;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-neutral-8-base, #B2B2B2);
  cursor: pointer;
  transition: all 0.3s;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  margin: 0 auto;
  width: auto;
  text-align: center;
}

.application-form-section .file-upload-label:hover {
  background-color: var(--background-color-brand-1-normal, #E4FD71);
  color: var(--text-color-base-primary, #000);
  border-color: var(--background-color-brand-1-normal, #E4FD71);
}

.application-form-section .file-info {
  margin-top: 16px;
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 0;
}

.application-form-section .job-application-form .form-check {
  margin-bottom: 16px;
  padding-left: 0;
}

.application-form-section .job-application-form .form-check-input {
  margin-top: 4px;
  display: none;
}

.application-form-section .job-application-form .form-check-label {
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

.application-form-section .form-submit {
  text-align: left;
  margin-top: 32px;
}

.application-form-section .btn-submit {
  background-color: var(--background-color-brand-1-normal, #E4FD71);
  color: var(--text-color-base-primary, #000);
  padding: 12px 24px;
  border: none;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 400;
  font-family: var(--font-family-family-primary, Sora);
  line-height: 20px;
  cursor: pointer;
  transition: background-color 0.3s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.application-form-section .btn-submit:hover {
  background-color: #d4ed71;
}

.application-form-section .btn-submit svg {
  width: 16px;
  height: 16px;
}

/* Jobs List Section */
.jobs-list-section {
  padding: 60px 0;
}

#offerJobDetail .jobs-list-section {
  background: var(--background-color-brand-2-light, #F8F5F2);
}

.jobs-list-section .jobs-title-wrapper h1 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  /* Text/Title */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 34px;
  font-style: normal;
  font-weight: 400;
  line-height: 44px;
  /* 140% */
  margin-bottom: 4px;
}

.jobs-list-section .jobs-title-wrapper p {
  color: var(--text-color-base-secondary, #595959);
  text-align: center;
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

.jobs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-top: 40px;
}

#module-joboffers-list .jobs-list-section-list2 .jobs-grid {
  margin-top: 0;
}

.job-offer-card {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-two-8, #E3D9CF);
  background: radial-gradient(64.21% 50% at 0% 100%, rgba(228, 253, 113, 0.60) 0%, rgba(228, 253, 113, 0.00) 100%), var(--background-color-brand-2-light, #F8F5F2);
  padding: 32px;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  min-height: 300px;
}


.job-card-content {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
  z-index: 1;
  flex-grow: 1;
  height: 100%;
}

.job-card-field {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 0;
  padding: 16px 0;
  padding-bottom: 48px;
  position: relative;
}

.job-card-field:first-child {
  flex-direction: column;
  gap: 4px;
  padding-top: 0;
}

.job-card-field-row {
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 24px 0;
}

.job-card-field.job-card-field-row:last-child {
  margin-bottom: 48px;
}

.job-card-field:not(:first-child)::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.job-card-field:not(:last-child)::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.job-card-field:last-of-type {
  margin-bottom: 48px;
}

.job-details-fields {
  margin-bottom: 32px;
}

.job-details-fields .row {
  margin: 0;
}

.job-details-fields .col-md-4 {
  padding: 0;
  position: relative;
}

.job-details-fields .col-md-4:not(:first-child)::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.job-details-fields .col-md-4:not(:last-child)::after {
  content: '';
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.job-details-fields .job-card-field {
  padding: 0 24px;
  padding-bottom: 48px;
  margin-bottom: 0;
  min-height: 100px;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  justify-content: flex-start;
  position: relative;
}

.job-details-fields .job-card-field::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.job-details-fields .job-card-field::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

/* Detail Field Labels and Values */
.job-details-fields .detail-field-label {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  flex-shrink: 0;
  min-width: 140px;
}

.job-details-fields .detail-field-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0;
  flex: 1;
}

/* Jobs Content Section Other - White Cards Style */
.jobs-content-section-other {
  margin-bottom: 94px;

}

.jobs-content-section-other .container-fluid {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.jobs-content-section-other .jobs-title-wrapper {
  margin-bottom: 80px;
}


.jobs-content-section-other h1 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 64px;
  font-style: normal;
  font-weight: 400;
  line-height: 72px;
  /* 112.5% */
}

.jobs-content-section-other p,
.jobs-content-section-other .job-subtitle {
  color: var(--text-color-base-secondary, #595959);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin-bottom: 0;
}

.jobs-content-section-other .job-subtitle p {
  margin-bottom: 0;
}

.job-details-fields2 {
  margin-bottom: 0;
}

.job-details-fields2 .row {
  margin: 0;
}

.job-details-fields2 .col-md-3 {
  padding-left: 12px;
  padding-right: 4px;
  margin-bottom: 24px;
  padding-left: 4px;
}

.job-details-fields2 .col-md-3:first-child {
  padding-left: 0;
}

.job-details-fields2 .col-md-3:last-child {
  padding-right: 0;
}

.job-details-fields2 .col-md-4 {
  padding-left: 12px;
  padding-right: 4px;
  margin-bottom: 24px;
  padding-left: 4px;
}

.job-details-fields2 .col-md-4:first-child {
  padding-left: 0;
}

.job-details-fields2 .col-md-4:last-child {
  padding-right: 0;
}

.job-card-field2 {
  background: #FFFFFF;
  border: 1px solid #E3D9CF;
  border-radius: 4px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 100%;
  min-height: 144px;
  position: relative;
}

.job-card-field-row2 {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  background-color: transparent;
}

.job-card-field2 .detail-field-label {
  color: #888;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  display: block;
}

.job-card-field2 .detail-field-value {
  color: var(--text-color-base-primary, #000);

  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  margin: 0;
  display: block;
  margin-top: auto;
  text-align: left;
}

.job-card-field .field-label {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  flex-shrink: 0;
  min-width: 140px;
}

.job-card-field:first-child .field-label {
  min-width: auto;
}

.job-card-field .field-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0;
  flex: 1;
}

.job-card-field h3.field-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
  flex: 1;
}

.job-card-field:first-child h3.field-value {
  flex: none;
}

.job-card-field p.field-value {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  color: var(--text-color-base-primary, #000);
}

.salary-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.salary-details .field-value {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  color: var(--text-color-base-primary, #000);
}

.job-offer-card .btn-view-offer {
  margin-top: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 16px 24px;
  background: var(--background-color-brand-1-dark, #183030);
  color: var(--text-color-dark-primary, #FFF);
  border-radius: 4px;
  border: 1px solid var(--background-color-brand-1-dark, #183030);
  text-decoration: none;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  transition: all 0.3s ease;
  width: auto;

}

.job-offer-card .btn-view-offer:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: var(--text-color-dark-primary, #FFF);
  text-decoration: none;
}

.job-offer-card .btn-view-offer svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}

.job-offer-card .btn-view-offer:hover svg {
  transform: translateX(4px);
}

.no-jobs-message {
  text-align: center;
  padding: 60px 20px;
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
}

/* Other Jobs Section */
.other-jobs-section {
  margin-top: 60px;
}

.other-jobs-section .section-title {
  font-size: 32px;
  font-weight: bold;
  color: #343a40;
  margin-bottom: 40px;
  text-align: center;
}

.other-jobs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
}

/* Other Job Offer Cards Styles */
.other-job-offer-card {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-two-8, #E3D9CF);
  background: radial-gradient(64.21% 50% at 0% 100%, rgba(228, 253, 113, 0.60) 0%, rgba(228, 253, 113, 0.00) 100%), var(--background-color-brand-2-light, #F8F5F2);
  padding: 32px;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  min-height: 300px;
}

.other-job-card-content {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
  z-index: 1;
  flex-grow: 1;
  height: 100%;
}

.other-job-card-field {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 0;
  padding: 16px 0;
  padding-bottom: 48px;
  position: relative;
}

.other-job-card-field:first-child {
  flex-direction: column;
  gap: 4px;
  padding-top: 0;
}

.other-job-card-field-row {
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 24px 0;
}

.other-job-card-field.other-job-card-field-row:last-child {
  margin-bottom: 48px;
}

.other-job-card-field:not(:first-child)::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.other-job-card-field:not(:last-child)::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: var(--color-brand-two-8, #E3D9CF);
  opacity: 0.5;
  mix-blend-mode: multiply;
}

.other-job-card-field:last-of-type {
  margin-bottom: 48px;
}

.other-field-label {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  flex-shrink: 0;
  min-width: 140px;
}

.other-job-card-field:first-child .other-field-label {
  min-width: auto;
}

.other-field-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0;
  flex: 1;
}

.other-job-card-field h3.other-field-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
  flex: 1;
}

.other-job-card-field:first-child h3.other-field-value {
  flex: none;
}

.other-job-card-field p.other-field-value {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  color: var(--text-color-base-primary, #000);
}

.other-salary-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.other-salary-details .other-field-value {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  color: var(--text-color-base-primary, #000);
}

.other-btn-view-offer {
  margin-top: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 16px 24px;
  background: var(--background-color-brand-1-dark, #183030);
  color: var(--text-color-dark-primary, #FFF);
  border-radius: 4px;
  border: 1px solid var(--background-color-brand-1-dark, #183030);
  text-decoration: none;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  transition: all 0.3s ease;
  width: auto;
}

.other-btn-view-offer:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: var(--text-color-dark-primary, #FFF);
  text-decoration: none;
}

.other-btn-view-offer svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}

.other-btn-view-offer:hover svg {
  transform: translateX(4px);
}

/* Responsive */
@media (max-width: 768px) {
  .jobs-list-section {
    padding-top: 30px;
  }

  #module-joboffers-list .jobs-list-section {
    padding-bottom: 64px;
  }

  .job-offer-card {
    padding: 32px 24px;
  }

  .job-title {
    font-size: 2rem;
  }

  .job-details-boxes {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    gap: 8px;
    margin-bottom: 40px;
    padding-bottom: 10px;
  }

  .job-details-boxes::-webkit-scrollbar {
    height: 6px;
  }

  .job-details-boxes::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
  }

  .job-details-boxes::-webkit-scrollbar-thumb {
    background: #dee2e6;
    border-radius: 10px;
  }

  .job-details-boxes::-webkit-scrollbar-thumb:hover {
    background: #adb5bd;
  }

  .job-details-fields .col-md-4::before,
  .job-details-fields .col-md-4::after {
    display: none;
  }

  .job-details-fields .col-md-4 {
    margin-bottom: 16px;
    padding-left: 15px;
    padding-right: 15px;
  }

  .job-details-fields .col-md-4:last-child {
    margin-bottom: 0;
  }

  .job-details-fields .job-card-field {
    padding-left: 16px;
    padding-right: 16px;
  }

  .job-details-fields .job-card-field::before,
  .job-details-fields .job-card-field::after {
    background-color: var(--color-brand-two-8, #E3D9CF);
    opacity: 0.5;
    mix-blend-mode: multiply;
  }

  .job-detail-box {
    flex: 0 0 calc(100% - 32px);
    min-width: calc(100% - 32px);
    max-width: calc(100% - 32px);
  }

  .application-form-section .job-application-form .form-row {
    grid-template-columns: 1fr;
  }

  .application-form-section {
    padding: 30px 20px;
  }

  .gallery-grid {
    grid-template-columns: repeat(9, calc(100vw - 80px));
    grid-template-rows: repeat(2, calc(100vw - 80px));
    padding: 0 20px;
  }

  .gallery-item {
    width: calc(100vw - 80px);
    height: calc(100vw - 80px);
  }

  .other-jobs-grid {
    grid-template-columns: 1fr;
  }

  .jobs-grid {
    grid-template-columns: 1fr;
    margin-top: 30px;
  }

  .job-card-field .field-label {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
    margin-bottom: 0;
  }

  .job-card-field.job-card-field-row .field-label {
    margin-bottom: 4px;
  }

  .job-card-field h3.field-value {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    /* 140% */
  }

  .job-card-field:first-child {
    padding-bottom: 32px;
    margin-bottom: 0;
  }

  .job-card-field:last-of-type {
    margin-bottom: 32px;
  }

  .job-card-field-row {
    display: block;
  }

  .job-card-field.job-card-field-row:last-child::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background-color: var(--color-brand-two-8, #E3D9CF);
    opacity: 0.5;
    mix-blend-mode: multiply;
  }

  .salary-details {
    flex: none;
  }

  .jobs-list-section .jobs-title-wrapper p {
    font-size: 14px;
    margin-bottom: 0;
  }

  .jobs-list-section .jobs-title-wrapper h1 {
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    /* 140% */
  }

  .job-offer-card .btn-view-offer {
    display: flex;
    padding: 12px 24px;
    justify-content: center;
    align-items: center;
    gap: 16px;
    color: var(--text-color-dark-primary, #FFF);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  /* Other Job Offer Cards Mobile Styles */
  .other-job-offer-card {
    padding: 32px 24px;
  }

  .other-job-card-field .other-field-label {
    color: var(--text-color-base-secondary, #595959);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
    margin-bottom: 0;
  }

  .other-job-card-field.other-job-card-field-row .other-field-label {
    margin-bottom: 4px;
  }

  .other-job-card-field h3.other-field-value {
    color: var(--text-color-base-primary, #000);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    /* 140% */
  }

  .other-job-card-field:first-child {
    padding-bottom: 32px;
    margin-bottom: 0;
  }

  .other-job-card-field:last-of-type {
    margin-bottom: 32px;
  }

  .other-job-card-field-row {
    display: block;
  }

  .other-job-card-field.other-job-card-field-row:last-child::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background-color: var(--color-brand-two-8, #E3D9CF);
    opacity: 0.5;
    mix-blend-mode: multiply;
  }

  .other-salary-details {
    flex: none;
  }

  .other-btn-view-offer {
    display: flex;
    padding: 12px 24px;
    justify-content: center;
    align-items: center;
    gap: 16px;
    color: var(--text-color-dark-primary, #FFF);
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .job-tabs .nav-link {
    padding: 10px 16px;
    font-size: 14px;
  }

  /* Jobs Content Section Other Mobile Styles */
  .job-details-fields2 .col-md-3,
  .job-details-fields2 .col-md-4 {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 6px;
  }

  .job-details-fields2 .col-md-3:last-child,
  .job-details-fields2 .col-md-4:last-child {
    margin-bottom: 0;
  }

  .job-card-field2 {
    border-radius: var(--radius-x-small, 4px);
    border: 1px solid var(--border-primary, #E5E5E5);
    background: transparent;
    padding: 16px;
    min-height: auto;
    gap: 6px;
  }

  .job-card-field2 .detail-field-label {
    font-size: 12px;
    line-height: 18px;
  }

  .job-card-field2 .detail-field-value {
    font-size: 14px;
    line-height: 20px;
  }

  /* Jobs Hero Section Mobile - pokaż mobile, ukryj desktop */
  .jobs-hero-desktop {
    display: none;
  }

  .jobs-hero-mobile {
    display: block;
    margin-bottom: 72px;
  }

  /* Jobs Content Section Other Mobile Styles */
  .jobs-content-section-other .jobs-title-wrapper {
    margin-bottom: 40px;
  }

  .jobs-content-section-other h1 {
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Heading/Head-L */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: 54px;
    /* 135% */
  }

  .jobs-content-section-other p,
  .jobs-content-section-other .job-subtitle {
    color: var(--text-color-base-secondary, #595959);
    text-align: center;
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .apply-button-wrapper {
    margin-top: 24px;
  }

  .jobs-content-section-other {
    margin-bottom: 128px;
  }

  /* Jobs Content Section 2 Mobile Styles */
  .jobs-content-section2 .section-title {
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }

  .jobs-content-section2 .section-icon svg {
    height: 24px;
    width: 24px;
  }

  .jobs-content-section2 .section-header {
    margin-bottom: 26px;
  }

  .jobs-content-section2 .job-content ul li,
  .jobs-content-section2 .job-content ol li {
    color: var(--text-color-base-primary, #000);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .jobs-content-section2 {
    margin-bottom: 0;
    padding-bottom: 48px;
  }

  /* Recruitment Process Section Mobile Styles */
  .recruitment-process-section .section-title {
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Text/Title */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    /* 140% */
  }

  .recruitment-process-section .section-icon svg {
    width: 24px;
    height: 24px;
  }

  .recruitment-process-section .section-header {
    margin-bottom: 24px;
  }

  .recruitment-process-section .step-content p {
    color: var(--text-color-base-tetriary, #888);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
  }

  .recruitment-process-section .step-content p strong {
    color: var(--text-color-base-primary, #000);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    /* 142.857% */
  }

  /* Application Form Section Mobile Styles */
  .application-form-section {
    padding: 0;
    margin-bottom: 64px;
  }

  .application-form-section .form-section-title {
    color: var(--text-color-base-primary, #000);
    text-align: center;
    /* Heading/Head-S */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 28px;
    font-style: normal;
    font-weight: 600;
    line-height: 36px;
    /* 128.571% */
    margin-bottom: 32px;
  }

  .application-form-section .job-application-form {
    padding: 40px 20px;
  }

  .application-form-section .form-group {
    margin-bottom: 20px;
  }

  .application-form-section .form-row {
    gap: 0;
  }

  .application-form-section .form-group label {
    width: 100%;
    color: var(--text-color-base-primary, #000);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
    margin-bottom: 6px;
  }

  .application-form-section .form-decoration-svg {
    display: none;
  }

  .application-form-section .job-application-form .form-control {
    color: var(--text-color-base-primary, #000);
    /* Text/Body II */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    /* 142.857% */
  }

  .application-form-section .file-info {
    color: var(--text-color-base-tetriary, #888);
    text-align: center;
    /* Text/Caption */
    font-family: var(--font-family-family-primary, Sora);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
    /* 133.333% */
  }

  .application-form-section .file-upload-wrapper {
    padding: 32px 32px 12px 32px;
  }

  .application-form-section .btn-submit {
    width: 100%;
    padding: 16px 24px;
    text-align: left;
    display: block;
  }

  .application-form-section .btn-submit svg {
    width: 16px;
    height: 16px;
    float: right;
    display: block;
    position: relative;
  }
}

/* Scrollable Sections Styles - About Us Page */
.about-scrollable-sections {
  position: relative;
  width: 99vw !important;
  max-width: 99vw !important;
  padding: 0;
  margin-left: calc(-49.5vw + 50%) !important;
  margin-right: calc(-49.5vw + 50%) !important;
  overflow: visible;
  background: var(--background-color-brand-2-light, #F8F5F2);
}

.about-scrollable-sections .scrollable-sections-inner {
  position: relative;
  padding: 0;
  overflow: visible;
  height: 500vh;
  /* Total scroll height: 5 sections * 100vh - THIS IS THE ONLY HEIGHT */
}

.about-scrollable-sections .scrollable-sticky-container {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 10;
  padding: 80px 0;
  background-color: transparent;
  height: auto;
  max-height: 100vh;
}

.about-scrollable-sections .container,
.about-scrollable-sections .container-fluid {
  position: relative;
  z-index: 10;
  overflow: visible;
  max-width: 1320px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.about-scrollable-sections .row {
  overflow: visible;
  margin-left: -15px;
  margin-right: -15px;
}

.about-scrollable-sections .col-lg-6 {
  overflow: visible;
}

.about-scrollable-sections .scrollable-content-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  z-index: 2;
  padding: 0;
  min-height: calc(100vh - 160px);
  /* 100vh minus padding (80px top + 80px bottom) */
  overflow: visible;
  will-change: transform;
  background-color: transparent;
}

.about-scrollable-sections .scrollable-content-container {
  width: 100%;
  position: relative;
}

.about-scrollable-sections .scrollable-content-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition: opacity 0.8s ease, transform 0.8s ease, visibility 0.8s ease;
  pointer-events: none;
}

.about-scrollable-sections .scrollable-content-item.active {
  position: relative;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0);
  pointer-events: auto;
  z-index: 10;
}

.about-scrollable-sections .scrollable-image-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  z-index: 1;
  padding: 0;
  height: calc(100vh - 160px);
  /* 100vh minus padding (80px top + 80px bottom) */
  min-height: calc(100vh - 160px);
  overflow: visible;
  will-change: transform;
  background-color: transparent;
}

.about-scrollable-sections .scrollable-image-container {
  width: 100%;
  position: relative !important;
  height: 100%;
  min-height: 100%;
}

.about-scrollable-sections .scrollable-image-item {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: scale(1.1);
  transition: opacity 0.8s ease, transform 0.8s ease, visibility 0.8s ease;
  pointer-events: none;
  z-index: 1;
}

.about-scrollable-sections .scrollable-image-item.active {
  position: absolute;
  opacity: 1 !important;
  visibility: visible !important;
  transform: scale(1);
  pointer-events: auto;
  z-index: 10;
}

.about-scrollable-sections .scrollable-image-item .scrollable-image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 20px;
}

.about-scrollable-sections .scrollable-image-item .scrollable-image img {
  width: 100%;
  height: auto;
  max-height: calc(100vh - 200px);
  max-width: 100%;
  object-fit: contain;
  display: block;
}

.about-scrollable-sections .scrollable-spacers {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 500vh;
  /* Match scrollable-sections-inner height */
  pointer-events: none;
  z-index: 0;
  display: flex;
  flex-direction: column;
}

.about-scrollable-sections .scrollable-spacer {
  height: 100vh;
  width: 100%;
  flex-shrink: 0;
  display: block;
  position: relative;
}

.about-scrollable-sections .scrollable-content {
  padding: 40px;
  border-radius: var(--radius-small, 8px);
  border: 1px solid var(--color-brand-two-10, #F3EFEA);
  background: var(--color-brand-two-12, #FCFAF8);
}

.about-scrollable-sections .section-badge {
  background: var(--background-color-brand-1-normal, #E4FD71);
  display: flex;
  padding: 4px 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  align-self: stretch;
  color: var(--text-color-brand-1-secondary, #183030);
  text-align: right;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  /* 142.857% */
  margin-bottom: 24px;
  position: relative;
  max-width: 58px;
}

.about-scrollable-sections .section-badge::before {
  content: '';
  position: absolute;
  left: -4px;
  bottom: -4px;
  width: 8px;
  height: 8px;
  flex-shrink: 0;
  background: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 4px 48px 0 var(--color-brand-one-8-base, #E4FD71);
}

.about-scrollable-sections .scrollable-content .section-heading {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin-top: 96px;
  margin-bottom: 24px;
}

.about-scrollable-sections .scrollable-content .section-text {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.about-scrollable-sections .scrollable-content .section-text p {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin-bottom: 16px;
}

.about-scrollable-sections .scrollable-content .section-list {
  margin-top: 24px;
}

.about-scrollable-sections .scrollable-content .section-list ul {
  list-style: none;
  padding: 0;
}

.about-scrollable-sections .scrollable-content .section-list li {
  padding: 8px 0;
  font-size: 16px;
  line-height: 24px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
}

.about-scrollable-sections .scrollable-image {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  width: 100%;
}

.about-scrollable-sections .scrollable-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

.about-scrollable-sections .scrollable-image-item img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

@media (max-width: 768px) {
  .about-scrollable-sections {
    min-height: auto;
  }

  .about-scrollable-sections .scrollable-content-wrapper,
  .about-scrollable-sections .scrollable-image-wrapper {
    position: relative;
    min-height: auto;
    padding: 40px 0;
  }

  .about-scrollable-sections .scrollable-content-item {
    position: relative;
  }

  .about-scrollable-sections .scrollable-image-item {
    position: absolute !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }

  .about-scrollable-sections .scrollable-image-item.active {
    position: absolute !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  .about-scrollable-sections .scrollable-content {
    padding: 20px;
    margin-bottom: 30px;
  }

  .about-scrollable-sections .scrollable-content .section-heading {
    font-size: 24px;
    line-height: 32px;
  }

  .about-scrollable-sections .scrollable-spacers {
    display: none;
  }
}

/* Benefits Section */
#module-aboutus-about .about-benefits-section {
  background-color: transparent;
}

.about-benefits-section {
  padding-top: 144px;
  padding-bottom: 96px;

}

.about-benefits-section .benefits-heading,
.about-benefits-section .benefits-heading h2 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
}

.about-benefits-section .benefits-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 48px;
}

.about-benefits-section .benefits-card {
  background: #fff;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  padding: 48px 48px 56px 48px;
  min-height: 316px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  transition: transform 0.3s ease;
}

.about-benefits-section .benefits-card-icon {
  display: flex;
  width: 56px;
  height: 56px;
  padding: 6px 2px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  aspect-ratio: 1/1;
  border-radius: 6px;
  background: var(--color-brand-one-8-base, #E4FD71);
  box-shadow: 0 0 64px 0 rgba(228, 253, 113, 0.80);
  margin-bottom: 128px;
  position: relative;
}

.about-benefits-section .benefits-card-icon svg {
  width: 32px;
  height: auto;
}

.about-benefits-section .benefits-card-title,
.about-benefits-section .benefits-card-title h3,
.about-benefits-section .benefits-card-title h3 strong,
.about-benefits-section .benefits-card-title h4,
.about-benefits-section .benefits-card-title h4 strong {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 28px;
  margin-bottom: 24px;
}

.about-benefits-section .benefits-card-title h3 strong,
.about-benefits-section .benefits-card-title h4 strong {
  margin-bottom: 0;
}

.about-benefits-section .benefits-card-text,
.about-benefits-section .benefits-card-text p {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
}

@media (max-width: 768px) {
  .about-benefits-section .benefits-cards {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .about-benefits-section .benefits-heading {
    font-size: 28px;
  }
}

/* Network Section */
.about-network-section {
  padding-top: 96px;
  padding-bottom: 144px
}

.about-network-section .row {
  align-items: stretch;
}

.about-network-section .network-content {
  padding-right: 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
}

.about-network-section .network-heading h2 {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  margin-top: 80px;
  margin-bottom: 24px;
}

.about-network-section .network-text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin: 0;
  margin-top: auto;
}

.about-network-section .network-image {
  position: relative;
  height: 100%;
  display: flex;
  align-items: flex-end;
}

.about-network-section .network-image img {
  width: 100%;
  height: auto;
  border-radius: var(--radius-small, 8px);
}

@media (max-width: 768px) {
  .about-network-section {
    padding: 60px 0;
  }

  .about-network-section .row {
    align-items: flex-start;
  }

  .about-network-section .network-content {
    padding-right: 0;
    margin-bottom: 40px;
    height: auto;
    justify-content: flex-start;
  }

  .about-network-section .network-heading h2 {
    font-size: 28px;
    margin-top: 0;
  }

  .about-network-section .network-text {
    margin-top: 0;
  }

  .about-network-section .network-image {
    height: auto;
  }
}

/* Live Section - Full Width */
#module-aboutus-about .live-sec {
  width: 99vw !important;
  max-width: 99vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  background: var(--background-color-brand-2-light, #F8F5F2);
}

#module-aboutus-about .live-sec .container-fluid {
  padding-left: 15px;
  padding-right: 15px;
}

/* Live Section About - Full Width (osobne reguły do ewentualnych różnic) */
#module-aboutus-about .live-sec-about {
  width: 99vw !important;
  max-width: 99vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  background: var(--background-color-brand-2-light, #F8F5F2);
}

#module-aboutus-about .live-sec-about .container-fluid {
  padding-left: 15px;
  padding-right: 15px;
}

#module-aboutus-about .stats-sec {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 144px;
  margin-bottom: 96px;
}

#module-aboutus-about .stat-text {
  margin-top: auto;
}

/* Certificates Section */
.certificates-section {
  padding: 80px 0;
  background-color: transparent;
}

.certificates-heading,
.certificates-heading h2,
.certificates-heading p {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
  margin-bottom: 0;
}

.certificates-wrapper {
  position: relative;
  overflow: hidden;
}

.certificates-gradient {
  position: absolute;
  top: -6px;
  bottom: -6px;
  width: 280px;
  height: 260px;
  z-index: 10;
  pointer-events: none;
}

.certificates-gradient-left {
  left: 0;
  top: -6px;
  background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.05) 5%, rgba(255, 255, 255, 0.15) 15%, rgba(255, 255, 255, 0.3) 25%, rgba(255, 255, 255, 0.5) 40%, rgba(255, 255, 255, 0.7) 55%, rgba(255, 255, 255, 0.85) 70%, rgba(255, 255, 255, 0.95) 85%, rgba(255, 255, 255, 1) 100%);
}

.certificates-gradient-right {
  right: 0;
  top: -6px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.05) 5%, rgba(255, 255, 255, 0.15) 15%, rgba(255, 255, 255, 0.3) 25%, rgba(255, 255, 255, 0.5) 40%, rgba(255, 255, 255, 0.7) 55%, rgba(255, 255, 255, 0.85) 70%, rgba(255, 255, 255, 0.95) 85%, rgba(255, 255, 255, 1) 100%);
}

.certificates-carousel {
  margin-top: 38px;
  position: relative;
  padding: 0 40px;
}

.certificates-carousel .owl-stage {
  display: flex;
  align-items: center;
}

.certificates-carousel .owl-item {
  display: flex;
  justify-content: center;
  width: auto !important;
}

.certificate-item {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: auto;
}

.certificate-image-wrapper {
  background: #fff;
  border-radius: var(--radius-small, 8px);
  padding: 0;
  margin-bottom: 16px;
  height: 228px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: auto;
  min-width: 0;
}

.certificate-image-wrapper img,
.certificate-image {
  height: 228px;
  width: auto;
  object-fit: contain;
  display: block;
  flex-shrink: 0;
}

.certificate-title {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin-top: 8px;
  text-align: center;
}

/* Owl Carousel navigation for certificates */
.certificates-carousel .owl-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
  padding: 0 20px;
}

.certificates-carousel .owl-nav button {
  pointer-events: all;
  background: rgba(255, 255, 255, 0.9) !important;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.certificates-carousel .owl-nav button:hover {
  background: rgba(255, 255, 255, 1) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.certificates-carousel .owl-nav button.owl-prev {
  left: -60px;
}

.certificates-carousel .owl-nav button.owl-next {
  right: -60px;
}

@media (max-width: 768px) {
  .certificates-section {
    padding: 60px 0;
  }

  .certificates-heading {
    font-size: 28px;
    margin-bottom: 32px;
  }

  .certificate-image-wrapper {
    height: 200px;
    padding: 15px;
  }

  .certificate-image-wrapper img,
  .certificate-image {
    height: 200px;
  }

  .certificates-gradient {
    width: 120px;
    top: 0;
    bottom: 0;
    height: auto;
  }

  .certificates-gradient-left {
    background: linear-gradient(270deg, #FFF 0%, rgba(255, 255, 255, 0.95) 20%, rgba(255, 255, 255, 0.8) 40%, rgba(255, 255, 255, 0.55) 60%, rgba(255, 255, 255, 0.3) 75%, rgba(255, 255, 255, 0.1) 90%, rgba(255, 255, 255, 0.00) 100%);
  }

  .certificates-gradient-right {
    background: linear-gradient(90deg, #FFF 0%, rgba(255, 255, 255, 0.95) 20%, rgba(255, 255, 255, 0.8) 40%, rgba(255, 255, 255, 0.55) 60%, rgba(255, 255, 255, 0.3) 75%, rgba(255, 255, 255, 0.1) 90%, rgba(255, 255, 255, 0.00) 100%);
  }

  .certificates-carousel {
    padding: 0 20px;
  }

  .certificates-carousel .owl-nav {
    padding: 0 10px;
  }

  .certificates-carousel .owl-nav button.owl-prev {
    left: -40px;
  }

  .certificates-carousel .owl-nav button.owl-next {
    right: -40px;
  }
}

/* History Section */
.about-history-section {
  padding-top: 96px;
  padding-bottom: 144px;
  background-color: transparent;
}

.history-heading,
.history-heading h2 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
  margin-bottom: 48px;
}

.history-timeline-wrapper {
  position: relative;
  margin-top: 0;
  padding-bottom: 40px;
}

.history-progress-wrapper {
  position: absolute;
  bottom: 0;
  left: 40px;
  right: 130px;
  height: 2px;
  z-index: 10;
  display: none;
}

.history-timeline-wrapper:has(.history-carousel.owl-loaded) .history-progress-wrapper {
  display: block;
}

.history-progress-bar {
  width: 100%;
  height: 2px;
  background: var(--border-primary, #E5E5E5);
  position: relative;
  overflow: hidden;
  border-radius: 20px;
}

.history-progress-fill {
  height: 100%;
  background: #B2B2B2;
  width: 33%;
  transition: width 0.3s ease;
  border-radius: 20px;
}

.history-timeline-line {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--color-brand-one-8-base, #E4FD71);
  z-index: 1;
}

.history-carousel {
  position: relative;
  z-index: 2;
}

.about-history-section .owl-item {
  margin-right: 0;
  display: flex;
  height: 100%;
}

.about-history-section .owl-stage {
  display: flex;
  align-items: stretch;
}

.history-item {
  border-radius: var(--radius-small, 8px);
  background: var(--color-neutral-12-base, #FAFAFA);
  display: flex;
  padding: 48px;
  flex-direction: column;
  align-items: flex-start;
  gap: 184px;
  flex: 1 0 0;
  align-self: stretch;
  border: none;
  position: relative;
  margin-top: 0;
  min-height: 200px;
}


.history-year {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 64px;
  font-style: normal;
  font-weight: 400;
  line-height: 72px;
  /* 112.5% */
}

.history-text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  flex: 1;
}

.history-text p {
  margin: 0;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.history-carousel .owl-nav {
  position: absolute;
  bottom: -54px;
  right: 40px;
  display: none !important;
  gap: 4px;
  pointer-events: none;
  padding: 0;
  z-index: 10;
}

.about-history-section .history-carousel .owl-nav {
  display: flex !important;
  margin-top: -8px !important;
}

.about-history-section .history-carousel .owl-nav button,
.about-history-section .history-carousel .owl-nav button.owl-prev,
.about-history-section .history-carousel .owl-nav button.owl-next,
.about-history-section .history-carousel .owl-nav button.disabled {
  display: flex !important;
  width: 32px !important;
  height: 32px !important;
  padding: 8px !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  border-radius: var(--radius-x-small, 4px) !important;
  background: var(--background-color-dark, #000) !important;
  border: none !important;
  cursor: pointer !important;
  pointer-events: all !important;
  transition: all 0.3s ease !important;
  margin: 0 !important;
  color: transparent !important;
  font-size: 0 !important;
  opacity: 1 !important;
}

.about-history-section .history-carousel .owl-nav button:hover,
.about-history-section .history-carousel .owl-nav button.owl-prev:hover,
.about-history-section .history-carousel .owl-nav button.owl-next:hover {
  background: var(--color-brand-one-8-base, #E4FD71) !important;
}

.about-history-section .history-carousel .owl-nav button:hover svg path,
.about-history-section .history-carousel .owl-nav button.owl-prev:hover svg path,
.about-history-section .history-carousel .owl-nav button.owl-next:hover svg path {
  fill: #000 !important;
}

.about-history-section .history-carousel .owl-nav button.disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}

.about-history-section .history-carousel .owl-nav button svg,
.about-history-section .history-carousel .owl-nav button.owl-prev svg,
.about-history-section .history-carousel .owl-nav button.owl-next svg {
  width: 8px !important;
  height: 8px !important;
  display: block !important;
  flex-shrink: 0 !important;
}

.history-carousel .owl-nav button.owl-prev {
  position: static;
}

.history-carousel .owl-nav button.owl-next {
  position: static;
}

.history-carousel .owl-nav button svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* Responsive History Section */
@media (max-width: 768px) {
  .about-history-section {
    padding: 60px 0;
  }

  .history-heading {
    font-size: 28px;
    line-height: 36px;
    margin-bottom: 32px;
  }

  .history-timeline-wrapper {
    margin-top: 0;
  }

  .history-carousel {
    padding: 0 20px;
  }

  .history-item {
    padding: 24px 20px;
    min-height: 180px;
    margin-top: 0;
  }

  .history-year {
    font-size: 48px;
    line-height: 56px;
  }

  .history-text {
    font-size: 16px;
    line-height: 150%;
  }

  .history-carousel .owl-nav {
    bottom: 0;
    right: 0;
    gap: 6px;
  }

  .history-carousel .owl-nav button {
    width: 32px;
    height: 32px;
    padding: 8px;
  }

  .history-carousel .owl-nav button.owl-prev {
    position: static;
  }

  .history-carousel .owl-nav button.owl-next {
    position: static;
  }

  .history-carousel .owl-nav button svg {
    width: 8px;
    height: 8px;
  }
}

/* Founders Section */
.about-founders-section {
  padding: 96px 0;
  background-color: transparent;
}

/* Team Section */
.about-team-section {
  padding-top: 144px;
  padding-bottom: 96px;
  background: var(--background-color-brand-1-dark, #183030);
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%);
  box-sizing: border-box;
}

.team-section-header {
  margin-bottom: 48px;
  text-align: left;
}

.team-section-title {
  color: var(--text-color-dark-primary, #FFF);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 54px;
  /* 135% */
  margin-bottom: 20px;
}

.team-section-description,
.team-section-description p {
  max-width: 600px;
  color: var(--text-color-dark-secondary, #B2B2B2);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0;
}

.team-timeline-wrapper {
  position: relative;
  margin-top: 60px;
  padding-bottom: 0;
}

.team-member:last-child {
  margin-bottom: 0;
}

.team-member-divider {
  width: 100%;
  height: 1px;
  background: var(--color-brand-two-8, #E3D9CF);
  margin: 48px 15px;
}

.team-member-image-wrapper {
  position: relative;
  width: 100%;
  max-width: 415px;
  height: 100%;
}

.team-member-badge {
  position: absolute;
  bottom: 32px;
  right: 32px;
  z-index: 2;
}

.team-badge-text {
  border-radius: 44.444px;
  background: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 0 44px 0 #E4FD71;
  display: flex;
  width: 32px;
  height: 32px;
  padding: 8.889px;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
}

.team-badge-text svg {
  width: 13.333px;
  height: 13.333px;
  flex-shrink: 0;
}

.team-member-content {
  max-width: 620px;
  margin: 48px 0 48px 48px;
}

.team-member-info {
  margin-bottom: 148px;
}

.team-member-name {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

.team-member-role {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

.team-member-heading {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 32px;
  margin-bottom: 16px;
}

.team-member-text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  margin-bottom: 32px;
}

.team-member-text p {
  margin: 0 0 16px 0;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
}

.team-member-text p:last-child {
  margin-bottom: 0;
}

.team-member-text strong,
.team-member-text b {
  font-weight: 600;
}

.team-member-text2 {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
}

.team-member-text2 p {
  margin: 0 0 16px 0;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
}

.team-member-text2 p:last-child {
  margin-bottom: 0;
}

.team-member-text2 strong,
.team-member-text2 b {
  font-weight: 600;
}

.team-carousel-item {
  text-align: center;
  padding: 0 15px;
}

.team-carousel-item .team-member-image-wrapper {
  margin: 0 auto;
  max-width: 415px;
  width: 100%;
  position: relative;
}

.team-carousel-item .team-member-image {
  width: 100%;
  max-width: 415px;
  height: auto;
  object-fit: cover;
  border-radius: 4px;
  display: block;
}

.team-carousel-item .team-member-info {
  background-color: transparent;
  padding-top: 18px;
  padding-bottom: 24px;
  padding-left: 0;
  padding-right: 0;
  margin-top: 0;
  margin-bottom: 0;
  position: relative;
  z-index: 1;
  max-width: 415px;
  margin-left: auto;
  margin-right: auto;
}

.team-carousel-item .team-member-name {
  margin-bottom: 4px;
  text-align: left;
  color: var(--text-color-dark-primary, #FFF);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.team-carousel-item .team-member-role {
  text-align: left;
  color: var(--text-color-dark-secondary, #B2B2B2);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

.team-carousel .owl-nav {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 4px;
  position: absolute;
  right: auto;
  left: 68%;
  bottom: 0;
  z-index: 10;
  align-items: center;
  transform: translateY(50%);
  margin-bottom: -1px;
}

.team-carousel .owl-nav button {
  width: 32px;
  height: 32px;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.4);
  color: #FFFFFF;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s;
  position: relative;
  z-index: 2;
  padding: 8px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.team-carousel .owl-nav button:hover {
  background: rgba(0, 0, 0, 0.6);
}

.team-carousel .owl-nav button.owl-prev,
.team-carousel .owl-nav button.owl-next {
  border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.20);
  width: 32px;
  height: 32px
}

.team-carousel .owl-nav button svg {
  width: 8px;
  height: 8px;
  display: block;
  flex-shrink: 0;
  margin: 0 auto;
}

.team-carousel .owl-nav button svg path {
  stroke: #FFFFFF;
  transition: stroke 0.3s;
}

.team-progress-wrapper {
  position: absolute;
  bottom: -2px;
  left: 15px;
  width: 65%;
  height: 2px;
  z-index: 10;
  display: none;
}

.team-timeline-wrapper:has(.team-carousel.owl-loaded) .team-progress-wrapper {
  display: block !important;
}

.team-progress-wrapper.team-progress-visible {
  display: block !important;
}

.team-progress-bar {
  width: 100%;
  height: 2px;
  background: rgba(255, 255, 255, 0.3);
  position: relative;
  border-radius: 1px;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
  overflow: hidden;
  background: #B2B2B2;
}

.team-progress-fill {
  height: 100%;
  background: var(--background-color-brand-1-normal, #E4FD71);
  border-radius: 1px;
  transition: width 0.3s ease;
}

/* Responsive Team Section */
@media (max-width: 768px) {
  .about-team-section {
    padding: 60px 0;
  }

  .team-member {
    margin-bottom: 60px;
  }

  .team-member-image-wrapper {
    min-height: 300px;
    margin-bottom: 32px;
  }

  .team-member-image {
    max-width: 415px;
  }

  .team-member-content {
    padding: 0;
  }

  .team-member-heading {
    font-size: 20px;
    line-height: 28px;
  }

  .team-member-text {
    font-size: 14px;
    line-height: 20px;
  }
}

/* Brands Section Styles */
/* About Brands Section */
.about-brands-section {
  padding-top: 144px;
  padding-bottom: 96px;
  background: #FFFFFF;
}

.about-brands-section .brands-section-title,
.about-brands-section .brands-section-title h2 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
  margin-bottom: 48px;
}

.about-brands-section .brands-timeline-wrapper {
  position: relative;
  margin-top: 48px;
  padding-bottom: 0;
}

.about-brands-section .brands-carousel {
  margin-bottom: 0;
}

.about-brands-section .brand-carousel-item {
  padding: 0 sortowć;
}

.about-brands-section .brand-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 5px;
  background: #FFFFFF;
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--border-primary, #E5E5E5);
  transition: all 0.3s ease;
  min-height: 120px;
}

.about-brands-section .brand-item:hover {
  border-color: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}

.about-brands-section .brand-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.about-brands-section .brand-logo {
  max-width: 100%;
  max-height: 136px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.about-brands-section .brand-name-only {
  text-align: center;
}

.about-brands-section .brand-name {
  font-size: 16px;
  font-weight: 600;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
}

@media (max-width: 768px) {
  .about-brands-section .brand-item {
    height: 100px;
    padding: 15px;
  }

  .about-brands-section .brands-section-title {
    font-size: 24px;
    margin-bottom: 32px;
  }
}

/* About Values Section */
.about-values-section {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #FFFFFF;
}

.about-values-section .values-section-title,
.about-values-section .values-section-title h2 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
  margin-bottom: 48px;
}

.about-values-section .values-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  align-items: start;
}

.about-values-section .value-item {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-right: 32px;
  border-right: 1px solid var(--border-primary, #E5E5E5);
}

.about-values-section .value-item:nth-child(3n) {
  border-right: none;
  padding-right: 0;
}

/* Use section-badge style from scrollable-sections */
.about-values-section .section-badge {
  background: var(--background-color-brand-1-normal, #E4FD71);
  display: flex;
  padding: 4px 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 48px;
  color: var(--text-color-brand-1-secondary, #183030);
  text-align: right;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  /* 142.857% */
  margin-bottom: 0;
  position: relative;
}

.about-values-section .section-badge::before {
  content: '';
  position: absolute;
  left: -4px;
  bottom: -4px;
  width: 8px;
  height: 8px;
  flex-shrink: 0;
  background: var(--background-color-brand-1-normal, #E4FD71);
  box-shadow: 0 4px 48px 0 var(--color-brand-one-8-base, #E4FD71);
}

.about-values-section .value-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.about-values-section .value-text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 16px;
  min-height: 72px;
  /* 3 lines of text (3 * 24px) */
  display: flex;
  flex-direction: column;
}

.about-values-section .value-text p {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin: 0 0 16px 0;
}

.about-values-section .value-text p:last-child {
  margin-bottom: 0;
}

.about-values-section .value-text p strong {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  /* 150% */
}

.about-values-section .value-image-wrapper {
  width: 100%;
  overflow: hidden;
  border-radius: var(--radius-x-small, 4px);
}

.about-values-section .value-image {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

@media (max-width: 992px) {
  .about-values-section .values-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }

  .about-values-section .value-item {
    padding-right: 24px;
  }

  .about-values-section .value-item:nth-child(3n) {
    border-right: 1px solid var(--border-primary, #E5E5E5);
    padding-right: 24px;
  }

  .about-values-section .value-item:nth-child(2n) {
    border-right: none;
    padding-right: 0;
  }
}

@media (max-width: 768px) {
  .about-values-section {
    padding-top: 96px;
    padding-bottom: 64px;
  }

  .about-values-section .values-section-title {
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 48px;
  }

  .about-values-section .values-grid {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 24px;
    padding-bottom: 16px;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: var(--border-primary, #E5E5E5) transparent;
  }

  .about-values-section .values-grid::-webkit-scrollbar {
    height: 4px;
  }

  .about-values-section .values-grid::-webkit-scrollbar-track {
    background: transparent;
  }

  .about-values-section .values-grid::-webkit-scrollbar-thumb {
    background: var(--border-primary, #E5E5E5);
    border-radius: 2px;
  }

  .about-values-section .value-item {
    flex: 0 0 calc(100% - 48px);
    min-width: calc(100% - 48px);
    max-width: calc(100% - 48px);
    border-right: 1px solid var(--border-primary, #E5E5E5);
    padding-right: 24px;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .about-values-section .value-item:last-child {
    border-right: none;
    padding-right: 0;
  }

  .about-values-section .value-item:nth-child(2n) {
    border-right: 1px solid var(--border-primary, #E5E5E5);
    padding-right: 24px;
  }
}

/* Join Team Section */
.about-join-team-section {
  margin-top: 96px;
  margin-bottom: 96px;
  padding-top: 96px;
  padding-bottom: 96px;
  background: var(--background-color-brand-2-light, #F8F5F2);
  text-align: center;
}

.about-join-team-section .container {
  max-width: 800px;
  margin: 0 auto;
}

.about-join-team-section .join-team-heading {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 54px;
  /* 135% */
  margin-bottom: 20px;
}

.about-join-team-section .join-team-text {
  color: var(--text-color-base-secondary, #595959);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin-bottom: 72px;
}

.about-join-team-section .join-team-text p {
  margin: 0 0 16px 0;
  color: var(--text-color-base-secondary, #595959);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.about-join-team-section .join-team-text p:last-child {
  margin-bottom: 0;
}

.about-join-team-section .join-team-cta-text {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin-bottom: 24px;
}

.about-join-team-section .join-team-cta-text p {
  margin: 0;
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.about-join-team-section .join-team-button {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  padding: 16px 32px;
  background: var(--background-color-brand-1-dark, #183030);
  color: #FFFFFF;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  text-decoration: none;
  border-radius: var(--radius-small, 8px);
  transition: background-color 0.3s ease;
}

.about-join-team-section .join-team-button:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: #FFFFFF;
  text-decoration: none;
}

.about-join-team-section .join-team-button svg {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

@media (max-width: 768px) {
  .about-join-team-section {
    padding-top: 96px;
    padding-bottom: 96px;
  }

  .about-join-team-section .join-team-heading {
    font-size: 32px;
    line-height: 44px;
    margin-bottom: 20px;
  }

  .about-join-team-section .join-team-text {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 24px;
  }

  .about-join-team-section .join-team-text p {
    font-size: 16px;
    line-height: 24px;
  }

  .about-join-team-section .join-team-cta-text {
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 24px;
  }

  .about-join-team-section .join-team-cta-text p {
    font-size: 18px;
    line-height: 26px;
  }

  .about-join-team-section .join-team-button {
    padding: 14px 24px;
    font-size: 14px;
  }
}

/* Locations Section */
.about-locations-section {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #FFFFFF;
}

.about-locations-section .container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

.about-locations-section .locations-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.about-locations-section .locations-heading h2 {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: 64px;
  margin: 0;
}

.about-locations-section .locations-text {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
}

.about-locations-section .locations-text p {
  margin: 0 0 16px 0;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
}

.about-locations-section .locations-text p:last-child {
  margin-bottom: 0;
}

.about-locations-section .locations-map-wrapper {
  width: 100%;
}

.about-locations-section .locations-map {
  width: 100%;
}

.about-locations-section .locations-map-image {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--radius-small, 8px);
}

@media (max-width: 992px) {
  .about-locations-section .container {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .about-locations-section .locations-heading h2 {
    font-size: 32px;
    line-height: 44px;
  }

  .about-locations-section .locations-text {
    font-size: 16px;
    line-height: 24px;
  }

  .about-locations-section .locations-text p {
    font-size: 16px;
    line-height: 24px;
  }
}

/* About Job Offers Section */
.about-job-offers-section {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #FFFFFF;
}

.about-job-offers-section .container-fluid {
  max-width: 1200px;
}

.about-job-offers-section .section-title,
.about-job-offers-section .section-title p {
  color: var(--text-color-base-primary, #000);
  text-align: left;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 36px;
  margin: 0 0 48px 0;
}

.about-job-offers-section .job-offers-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

.about-job-offers-section .job-offer-card {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-two-8, #E3D9CF);
  background: radial-gradient(64.21% 50% at 0% 100%, rgba(228, 253, 113, 0.60) 0%, rgba(228, 253, 113, 0.00) 100%), var(--background-color-brand-2-light, #F8F5F2);
  padding: 32px;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  min-height: 300px;
}

.about-job-offers-section .job-card-content {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
  z-index: 1;
  flex-grow: 1;
  height: 100%;
}

.about-job-offers-section .job-card-field {
  margin-bottom: 16px;
}

.about-job-offers-section .job-card-field:last-child {
  margin-bottom: 0;
}

.about-job-offers-section .job-card-field .field-label {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  display: block;
  margin-bottom: 4px;
}

.about-job-offers-section .job-card-field .field-value {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  margin: 0;
}

.about-job-offers-section .job-card-field-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.about-job-offers-section .job-card-field-row .field-label {
  flex-shrink: 0;
}

.about-job-offers-section .job-card-field-row .field-value {
  text-align: right;
  font-weight: 400;
  font-size: 16px;
}

.about-job-offers-section .salary-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: flex-end;
}

.about-job-offers-section .salary-details .field-value {
  margin: 0;
}

.about-job-offers-section .btn-view-offer {
  margin-top: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 16px 24px;
  background: var(--background-color-brand-1-dark, #183030);
  color: var(--text-color-dark-primary, #FFF);
  border-radius: 4px;
  text-decoration: none;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
}

.about-job-offers-section .btn-view-offer:hover {
  border-radius: 4px;
  border: 1px solid var(--color-brand-one-1-base, #183030);
  background: var(--color-brand-one-2, #354D39);
  color: var(--text-color-dark-primary, #FFF);
  text-decoration: none;
}

.about-job-offers-section .btn-view-offer svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}

.about-job-offers-section .btn-view-offer:hover svg {
  transform: translateX(4px);
}

@media (max-width: 768px) {
  .about-job-offers-section .job-offers-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .about-job-offers-section .job-offer-card {
    padding: 24px;
    min-height: auto;
  }
}

/* Product Images Modal - Fullscreen */
#product-modal.modal {
  padding: 0 !important;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
}

#product-modal .modal-dialog.modal-fullscreen-custom {
  max-width: 100% !important;
  width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#product-modal .modal-content {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  border: none;
  border-radius: 0;
  background: #fff;
}

#product-modal .modal-content .modal-body {
  margin-left: 0 !important;
}

#product-modal .modal-body {
  width: 100% !important;
  height: 100% !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  padding: 60px 20px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-left: 0 !important;
}

#product-modal .modal-body figure {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  margin: 0;
  width: 100%;
}

#product-modal .modal-body figure picture,
#product-modal .modal-body figure img {
  display: block;
  margin: 0 auto;
}

#product-modal .btn-autoplay {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.6);
  border: none;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  z-index: 9999;
  transition: all 0.3s ease;
  padding: 0;
}

#product-modal .btn-autoplay:hover {
  background: rgba(0, 0, 0, 0.8);
  transform: scale(1.1);
}

#product-modal .btn-autoplay.active {
  background: rgba(24, 48, 48, 0.8);
}

#product-modal .btn-autoplay svg {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  color: #fff;
}

#product-modal .modal-body #thumbnails {
  flex-shrink: 0;
  margin-top: auto;
  width: 100%;
  position: relative;
  overflow: hidden;
}

#product-modal .modal-body #thumbnails .js-modal-mask {
  overflow: hidden;
  width: 100%;
  position: relative;
  touch-action: pan-x;
  -webkit-overflow-scrolling: touch;
}

#product-modal .modal-body #thumbnails .js-modal-product-images {
  flex-wrap: nowrap !important;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: max-content;
  margin-left: 0 !important;
  transition: transform 0.3s ease;
  touch-action: pan-x;
  -webkit-user-select: none;
  user-select: none;
}

#product-modal .modal-body #thumbnails .js-modal-arrows {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
  z-index: 10;
  right: 0;
}

#product-modal .modal-body #thumbnails .js-modal-arrows button {
  pointer-events: auto;
  display: flex;
  width: 32px;
  height: 32px;
  padding: 8px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: var(--radius-x-small, 4px);
  background: var(--background-color-dark, #000);
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}

#product-modal .modal-body #thumbnails .js-modal-arrows button:hover:not(:disabled) {
  opacity: 0.8;
}

#product-modal .modal-body #thumbnails .js-modal-arrows button:disabled {
  cursor: not-allowed;
  opacity: 0.2;
}

#product-modal .modal-body #thumbnails .js-modal-arrows button.arrow-left {
  left: 10px;
}

#product-modal .modal-body #thumbnails .js-modal-arrows button.arrow-right {
  right: 10px;
}

#product-modal .modal-body #thumbnails .js-modal-arrows button svg {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}

#product-modal .modal-body #thumbnails .js-modal-arrows button.arrow-left svg {
  width: 11px;
  height: 11px;
}

#product-modal .modal-body figure {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0;
}

#product-modal .modal-body figure picture {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

#product-modal .modal-body .js-modal-product-cover,
#product-modal .modal-body .product-cover-modal {
  display: block;
  margin: 0 auto;
  max-height: 80vh;
  object-fit: contain;
  background: #fff;
}


#product-modal .modal-content .modal-body .product-images img {
  width: 80px;
}

#product-modal .modal-content .modal-body .product-images img:hover {
  border-radius: 4.444px;
  border: 1.111px solid var(--color-brand-one-1-base, #183030);
}

/* Zmniejsz miniatury o połowę gdy wysokość ekranu < 800px */
@media (max-height: 800px) {
  #product-modal .modal-body #thumbnails .js-modal-product-images li.thumb-container {
    width: auto !important;
    height: auto !important;
    margin: 0.25rem !important;
    flex-shrink: 0;
  }

  #product-modal .modal-body #thumbnails .js-modal-product-images li.thumb-container img,
  #product-modal .modal-body #thumbnails .js-modal-product-images li.thumb-container .thumb {
    width: auto !important;
    height: 74px !important;
    max-width: 100%;
    object-fit: cover;
  }

  #product-modal .modal-body #thumbnails .js-modal-product-images li.thumb-container picture {
    width: auto;
    height: 74px;
    display: block;
  }
}

/* Modal na mniejszych urządzeniach - pełna szerokość i wysokość */
@media (max-width: 768px) {
  #product-modal.modal {
    width: 99vw !important;
    max-width: 99vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
  }

  #product-modal .modal-dialog.modal-fullscreen-custom {
    width: 99vw !important;
    max-width: 99vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #product-modal .modal-content {
    width: 99vw !important;
    max-width: 99vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }

  #product-modal .modal-content .modal-body {
    width: 99vw !important;
    max-width: 99vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    margin: 0 !important;
    padding: 50px 10px 10px !important;
    display: flex !important;
    flex-direction: column !important;
  }

  #product-modal .modal-body figure {
    flex: 1 !important;
    min-height: 0 !important;
    margin-bottom: 10px !important;
  }

  #product-modal .modal-body #thumbnails {
    flex-shrink: 0 !important;
    width: 100% !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin-top: auto !important;
    padding: 10px 0 !important;
  }

  #product-modal .modal-body #thumbnails .js-modal-mask {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  #product-modal .modal-body #thumbnails .js-modal-product-images {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: max-content !important;
  }

  #product-modal .modal-body #thumbnails .js-modal-product-images li {
    display: list-item !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex-shrink: 0 !important;
  }

  #product-modal .modal-body #thumbnails .js-modal-product-images li img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

.scroll-box-arrows.scroll {
  display: none;
}

/* Product Purchase Count */
#product .product-purchase-count {
  margin-bottom: 16px;
}

#product .product-purchase-count .purchase-count-text {
  color: var(--text-color-base-tertiary, #888);
  /* Text/Caption */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
  /* 133.333% */
}

/* Global label text alignment */
.label,
label {
  text-align: left;
}

/* Product page section headers - text and line in one row */
#product .product-container2 .pdesc .pdesc__h2,
#product .product-container2 .product-spec .pdesc__h2 {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

#product .product-container2 .pdesc .pdesc__h2>span,
#product .product-container2 .product-spec .pdesc__h2>span {
  white-space: nowrap;
  display: flex;
  align-items: center;
  margin-top: 0;
}

#product .product-container2 .pdesc .pdesc__h2 .pdesc__line,
#product .product-container2 .pdesc .pdesc__h2 svg,
#product .product-container2 .product-spec .pdesc__h2 .pdesc__line,
#product .product-container2 .product-spec .pdesc__h2 svg {
  flex: 1;
  min-width: 200px;
  height: 4px;
  display: block;
  align-self: center;
}

#product .product-container2 .pdesc .pdesc__h2 svg[height="5"],
#product .product-container2 .product-spec .pdesc__h2 svg[height="5"] {
  height: 5px;
}

/* Center product content module output - separate classes for video and image */
#product .product-container2 .pdesc .pdesc__video,
#product .product-container2 .pdesc .pdesc__image {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

/* Product Content Image - separate independent styles */
#product .product-container2 .pdesc .pdesc__image .product-content-image-wrapper,
#product .product-container2 .pdesc .pdesc__video .product-content-image-wrapper {
  text-align: center;
  margin: 20px auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100%;
}

#product .product-container2 .pdesc .pdesc__image .product-content-image,
#product .product-container2 .pdesc .pdesc__video .product-content-image {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  display: block;
  margin: 0 auto;
}

/* Product Content Video - separate independent styles */
#product .product-container2 .pdesc .pdesc__video .product-content-video-wrapper,
#product .product-container2 .pdesc .pdesc__image .product-content-video-wrapper {
  text-align: center;
  margin: 20px auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

#product .product-container2 .pdesc .pdesc__video .product-content-video-thumbnail {
  display: inline-block;
  position: relative;
  cursor: pointer;
}

#product .product-container2 .pdesc .pdesc__video .product-content-video-thumbnail img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  display: block;
}

#product .product-container2 .pdesc .pdesc__video .video-play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
  background: rgba(255, 0, 0, 0.9);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s;
}

#product .product-container2 .pdesc .pdesc__video .product-content-video-thumbnail:hover .video-play-button {
  background: rgba(255, 0, 0, 1) !important;
  transform: translate(-50%, -50%) scale(1.1);
}

#product .product-container2 .pdesc .pdesc__video .video-play-button svg {
  margin-left: 4px;
}

/* Product Content Video Modal */
#product .product-container2 .pdesc .pdesc__video .product-content-video-modal {
  display: none;
  position: fixed;
  z-index: 10000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
}

#product .product-container2 .pdesc .pdesc__video .product-content-video-modal .modal-content {
  position: relative;
  margin: 2% auto;
  padding: 0;
  width: 90%;
  max-width: 1200px;
  background-color: transparent;
}

#product .product-container2 .pdesc .pdesc__video .product-content-video-modal .close-modal {
  position: absolute;
  top: -40px;
  right: 0;
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
  z-index: 10001;
}

#product .product-container2 .pdesc .pdesc__video .product-content-video-modal .video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

#product .product-container2 .pdesc .pdesc__video .product-content-video-modal .video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Product Construction Items Styles */
.product-construction-items {
  margin: 40px 0;
}

.construction-item-front {
  margin-bottom: 40px;
}

.construction-item-content {
  display: flex;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap;
}

.construction-item-number {
  font-size: 48px;
  font-weight: 300;
  color: #E5E5E5;
  line-height: 1;
  min-width: 60px;
  flex-shrink: 0;
}

.construction-item-details {
  flex: 1;
  min-width: 300px;
}

.construction-item-title {
  font-size: 24px;
  font-weight: 600;
  color: #000;
  margin: 0 0 15px 0;
}

.construction-item-description {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}

.construction-item-description p {
  margin: 0 0 10px 0;
}

.construction-item-image {
  flex: 0 0 auto;
  max-width: 400px;
  width: 100%;
}

.construction-item-image img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  object-fit: cover;
}

@media (max-width: 768px) {
  .construction-item-content {
    flex-direction: column;
  }

  .construction-item-number {
    font-size: 36px;
  }

  .construction-item-image {
    max-width: 100%;
  }
}

/* Product Features Items Styles */
.product-features-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  margin: 40px 0;
}

.feature-item-front {
  background-color: #f5f5f5;
  border-radius: 8px;
  padding: 30px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.feature-item-front:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.feature-item-content {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.feature-item-title {
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 0 0 10px 0;
  line-height: 1.3;
}

.feature-item-text {
  font-size: 16px;
  line-height: 1.6;
  color: #666;
}

.feature-item-text p {
  margin: 0 0 10px 0;
}

.feature-item-text p:last-child {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .product-features-items {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .feature-item-front {
    padding: 20px;
  }

  .feature-item-title {
    font-size: 18px;
  }

  .feature-item-text {
    font-size: 14px;
  }
}

/* Product Interior Items Styles */
.product-interior-items {
  margin: 40px 0;
}

.interior-item-front {
  margin-bottom: 40px;
}

/* Content + Image layout */
.interior-item-content-image {
  display: flex;
  align-items: flex-start;
  gap: 30px;
  flex-wrap: wrap;
}

.interior-item-number {
  font-size: 48px;
  font-weight: 300;
  color: #E5E5E5;
  line-height: 1;
  min-width: 60px;
  flex-shrink: 0;
}

.interior-item-details {
  flex: 1;
  min-width: 300px;
}

.interior-item-title {
  font-size: 24px;
  font-weight: 600;
  color: #000;
  margin: 0 0 15px 0;
}

.interior-item-description {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}

.interior-item-description p {
  margin: 0 0 10px 0;
}

.interior-item-image {
  flex: 0 0 auto;
  max-width: 400px;
  width: 100%;
}

.interior-item-image img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  object-fit: cover;
}

/* Image only layout */
.interior-item-image-only {
  position: relative;
  width: 100%;
}

.interior-item-image-only .interior-item-number {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 1;
  color: #fff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.interior-item-image-only img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  object-fit: cover;
  display: block;
}

@media (max-width: 768px) {
  .interior-item-content-image {
    flex-direction: column;
  }

  .interior-item-number {
    font-size: 36px;
  }

  .interior-item-image {
    max-width: 100%;
  }

  .interior-item-image-only .interior-item-number {
    font-size: 32px;
    top: 10px;
    left: 10px;
  }
}

/* Purpose Recommendations Styles - Desktop */
.purpose-recommendations {
  margin: 24px 0;
}

.purpose-recommendations__title {
  font-size: 14px;
  font-weight: 500;
  color: #6c757d;
  margin: 0 0 12px 0;
  text-align: center;
}

.purpose-recommendations__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* 1 item: 100% width */
.purpose-recommendations__grid--1 .purpose-recommendation {
  width: 100%;
}

/* 2 items: 50% / 50% */
.purpose-recommendations__grid--2 .purpose-recommendation {
  width: calc(50% - 6px);
}

/* 3 items: first 2 are 50% / 50%, 3rd is 100% */
.purpose-recommendations__grid--3 .purpose-recommendation:nth-child(1),
.purpose-recommendations__grid--3 .purpose-recommendation:nth-child(2) {
  width: calc(50% - 6px);
}

.purpose-recommendations__grid--3 .purpose-recommendation:nth-child(3) {
  width: 100%;
}

/* 4+ items: 50% / 50% */
.purpose-recommendations__grid--4 .purpose-recommendation,
.purpose-recommendations__grid--5 .purpose-recommendation,
.purpose-recommendations__grid--6 .purpose-recommendation {
  width: calc(50% - 6px);
}

.purpose-recommendation {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  border-radius: 8px;
  box-sizing: border-box;
  background-color: #f5f5f5;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.purpose-recommendation:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.purpose-recommendation--green {
  background-color: #E8F5E9;
}

.purpose-recommendation--blue {
  background-color: #E3F2FD;
}

.purpose-recommendation--gray {
  background-color: #F5F5F5;
}

.purpose-recommendation__icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.purpose-recommendation__icon span {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.purpose-recommendation__icon img {
  width: 24px;
  height: 24px;
}

.purpose-recommendation__icon svg {
  width: 100%;
  height: 100%;
}

.purpose-recommendation__text {
  font-size: 14px;
  font-weight: 500;
  color: #333;
  flex: 1;
}

/* ============================================
 NO REVIEWS / FIRST REVIEW SECTION
 ============================================ */

.no-reviews-section {
  margin-top: 30px;
}

.first-review-wrap {
  padding: 0;
}

.first-review-inner {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
}

.fr-photo-col {
  flex: 0 0 auto;
  max-width: 330px;
}

.fr-photo {
  background: #fff;
  border-radius: 16px;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fr-photo img {
  width: auto;
  height: auto;
  object-fit: contain;
}

.fr-panel-col {
  flex: 1;
  min-width: 280px;
}

.fr-panel {
  background: #fff;
  border-radius: 16px;
  padding: 40px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 150px;
}

.fr-panel__text {
  font-size: 16px;
  color: #333;
  margin-bottom: 20px;
  font-weight: 500;
}

.fr-btn-lime {
  background-color: #E4FD71;
  color: #1a1a1a;
  border: none;
  border-radius: 8px;
  padding: 12px 30px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-block;
}

.fr-btn-lime:hover {
  background-color: #d4ed61;
  color: #1a1a1a;
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(228, 253, 113, 0.4);
}

/* Responsive */
@media (max-width: 768px) {
  .first-review-inner {
    flex-direction: column;
    gap: 20px;
  }

  .fr-photo-col {
    max-width: 100%;
    width: 100%;
  }

  .fr-photo {
    max-width: 200px;
    margin: 0 auto;
  }

  .fr-panel-col {
    width: 100%;
    min-width: unset;
  }

  .fr-panel {
    padding: 30px 20px;
  }

  .fr-panel__text {
    font-size: 14px;
  }
}

/* Ukryj sekcję "brak opinii" gdy są opinie */
.reviews-list-container:not(:empty)~.no-reviews-section,
.reviews-list-container .product-comments:not(:empty)~.no-reviews-section {
  display: none;
}

/* ============================================
 REVIEW MODAL FIX
 ============================================ */

#post-product-comment-modal {
  background: rgba(0, 0, 0, 0.5);
}

#post-product-comment-modal .modal-dialog {
  max-width: 500px;
  margin: 100px auto;
}

#post-product-comment-modal .modal-content {
  border-radius: 16px;
  border: none;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

#post-product-comment-modal .modal-header {
  border-bottom: 1px solid #eee;
  padding: 20px 25px;
}

#post-product-comment-modal .modal-title {
  font-size: 18px;
  font-weight: 600;
}

#post-product-comment-modal .modal-header .close {
  font-size: 24px;
  opacity: 0.5;
}

#post-product-comment-modal .modal-body {
  padding: 25px;
}

#post-product-comment-modal .modal-footer {
  border-top: 1px solid #eee;
  padding: 15px 25px;
}

/* Fix modal positioning */
#post-product-comment-modal.show {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* Full modal fix */
#post-product-comment-modal {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 9999 !important;
}

#post-product-comment-modal .modal-dialog {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
}

/* ============================================
 HEADER LINK HOVER
 ============================================ */
#header a:hover {
  color: #1e1e1e;
  text-decoration: none;
}

/* ============================================
 TRUST SECTION - CUSTOMER OPINIONS CAROUSEL
 ============================================ */
.trust-customer-opinions {
  margin-top: 48px;
}

.trust-opinion-card {
  border-radius: var(--radius-small, 8px);
  background: var(--color-neutral-12-base, #FAFAFA);
  padding: 32px 16px 16px 16px;
  cursor: pointer;
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
}

.trust-opinion-card:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  border-color: #d0d0d0;
}

.trust-opinion-header {
  padding: 0 32px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.trust-opinion-name {
  color: var(--text-color-base-secondary, #595959);
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
  margin: 0;
}

.trust-opinion-rating {
  display: flex;
  gap: 4px;
  align-items: center;
  margin: 0;
  margin-left: auto;
}

.trust-opinion-rating svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.trust-opinion-stars {
  display: flex;
  gap: 4px;
  align-items: center;
}

.trust-opinion-stars .star {
  width: 16px;
  height: 16px;
  display: inline-block;
  flex-shrink: 0;
}

.trust-opinion-stars .star svg {
  width: 100%;
  height: 100%;
}

.trust-opinion-text {
  padding: 0 32px;
  margin-top: 48px;
  margin-bottom: 48px;
  flex-grow: 1;
  min-height: 120px;
  /* Ensure consistent starting position for videos */
}

.trust-opinion-text p {
  color: var(--text-color-base-primary, #000);
  /* Text/Subtitle */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
  margin: 0;
}

.trust-opinion-video-thumb {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  /* 16:9 Aspect Ratio */
  background-color: #000;
  border-radius: 4px;
  overflow: hidden;
  margin-top: auto;
}

.trust-opinion-video-thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.trust-opinion-video-thumb .play-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.trust-opinion-card:hover .trust-opinion-video-thumb .play-icon {
  transform: translate(-50%, -50%) scale(1.1);
}

.trust-opinion-video-thumb .play-icon svg {
  width: 24px;
  height: 24px;
  fill: #FFFFFF;
}

.trust-opinion-video-thumb .play-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.trust-opinion-video {
  margin-top: auto;
}

.trust-video-thumbnail {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  /* 16:9 */
  border-radius: 12px;
  overflow: hidden;
  background: #eee;
  cursor: pointer;
}

.trust-video-thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.trust-video-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 56px;
  height: 56px;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.trust-opinion-card:hover .trust-video-play {
  background: rgba(228, 253, 113, 0.9);
  transform: translate(-50%, -50%) scale(1.1);
}

.trust-video-play svg {
  width: 20px;
  height: 20px;
  margin-left: 2px;
}

.trust-video-duration {
  position: absolute;
  right: 12px;
  bottom: 12px;
  padding: 4px 8px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.72);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
}

/* Trust Customer Opinions - Owl Carousel (jak rankingi) */
.trust-opinions-carousel-wrapper {
  position: relative;
  margin-bottom: 40px;
  overflow: hidden;
  width: 100%;
}

.trust-opinions-carousel-wrapper .trust-opinions-owl-carousel {
  margin-top: 32px;
  width: 100%;
}

.trust-opinions-carousel-wrapper .trust-opinions-owl-carousel .item {
  padding: 0;
}

.trust-opinions-carousel-wrapper .trust-opinions-owl-carousel .owl-stage-outer {
  overflow: hidden;
  width: 100%;
}

.trust-opinions-carousel-wrapper .trust-opinions-owl-carousel .owl-stage {
  display: flex;
  width: 100%;
}

.trust-opinions-carousel-wrapper .trust-opinions-owl-carousel .owl-item {
  opacity: 1;
  width: 100%;
}

/* Progress bar and navigation */
.trust-opinions-carousel-wrapper .tyres-progress {
  --seg-index: 0;
  position: relative;
  width: 100%;
  height: 2px;
}

.trust-opinions-carousel-wrapper .tyres-controls {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 32px;
}

.trust-opinions-carousel-wrapper .tyres-progress .track {
  position: absolute;
  inset: 0;
  background: var(--border-primary, #E5E5E5);
  background-image: linear-gradient(to right, var(--border-primary, #E5E5E5) 33.33%, var(--color-neutral-8-base, #B2B2B2) 33.33%, var(--color-neutral-8-base, #B2B2B2) 33.63%, var(--border-primary, #E5E5E5) 33.63%, var(--border-primary, #E5E5E5) 66.66%, var(--color-neutral-8-base, #B2B2B2) 66.66%, var(--color-neutral-8-base, #B2B2B2) 66.96%, var(--border-primary, #E5E5E5) 66.96%);
}

.trust-opinions-carousel-wrapper .tyres-progress .dot {
  position: absolute;
  top: 2px;
  left: calc(var(--seg-index, 0) * 33.33%);
  transform: translateX(-50%);
  width: 8px;
  height: 4px;
  border-radius: 50%;
  background: var(--color-neutral-8-base, #B2B2B2);
  transition: left 0.3s ease;
}

.trust-opinions-carousel-wrapper .tyres-nav .btn {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.trust-opinions-carousel-wrapper .tyres-nav .btn svg {
  width: 11px;
  height: 11px;
}

.trust-opinions-carousel-wrapper .tyres-nav .btn:hover {
  background: var(--color-brand-two-6-base, #D3C4B4);
}

.trust-opinions-carousel-wrapper .tyres-nav .btn:hover svg path {
  fill: #000;
}

/* Desktop: 2 elementy */
@media (min-width: 768px) {

  .trust-customer-opinions.tyres-related .carousel .carousel-item.active,
  .trust-customer-opinions.tyres-related .carousel .carousel-item.active+.carousel-item {
    display: block;
    opacity: 1;
  }
}

/* Tablet: 2 elementy */
@media (min-width: 576px) and (max-width: 991.98px) {

  .trust-customer-opinions.tyres-related .carousel .carousel-item.active,
  .trust-customer-opinions.tyres-related .carousel .carousel-item.active+.carousel-item {
    display: block;
    opacity: 1;
  }
}

/* Mobile: 1 element */
@media (max-width: 575.98px) {
  .trust-customer-opinions.tyres-related .carousel .carousel-item {
    flex: 0 0 100%;
  }

  .trust-customer-opinions.tyres-related .carousel .carousel-item.active {
    display: block;
    opacity: 1;
  }
}

.trust-customer-opinions.tyres-related .tyres-progress {
  --seg-index: 0;
  position: relative;
  width: 100%;
  height: 4px;
}

.trust-customer-opinions.tyres-related .tyres-progress .track {
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background: #ececec;
  background-image: linear-gradient(#d0d0d0, #d0d0d0), linear-gradient(#d0d0d0, #d0d0d0), linear-gradient(#ececec, #ececec);
  background-size: 1px 100%, 1px 100%, 100% 100%;
  background-position: 33.333% 0, 66.666% 0, 0 0;
  background-repeat: no-repeat;
}

.trust-customer-opinions.tyres-related .tyres-progress .dot {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(var(--seg-index) * 33.333%);
  width: 33.333%;
  border-radius: 999px;
  background: #b5b5b5;
  transition: left 0.25s ease;
}

.trust-customer-opinions.tyres-related .tyres-nav .btn {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  margin: 0 2px;
}

.trust-customer-opinions.tyres-related .tyres-nav .btn-dark {
  background-color: #000;
}

.trust-customer-opinions.tyres-related .tyres-controls {
  margin-top: 20px;
}

@media (max-width: 991.98px) {
  .trust-customer-opinions.tyres-related .tyres-progress {
    display: none;
  }
}

/* Blog Home Posts - Owl Carousel (jak trust-opinions) */
.blog-home-posts-section.tyres-related .blog-home-posts-owl-carousel .owl-stage {
  display: flex !important;
  align-items: stretch !important;
}

.blog-home-posts-section.tyres-related .blog-home-posts-owl-carousel .owl-item {
  display: flex !important;
  align-items: stretch !important;
  height: auto !important;
}

.blog-home-posts-section.tyres-related .blog-home-posts-owl-carousel .owl-item>.item {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  flex: 1 !important;
}

.blog-home-posts-section.tyres-related .blog-home-posts-owl-carousel .owl-item>.item>.single1 {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  flex: 1 !important;
}

/* Desktop: 3 elementy + peek (stagePadding) */
@media (min-width: 768px) {
  .blog-home-posts-section.tyres-related .blog-home-posts-owl-carousel .owl-item {
    width: calc(33.333% - 10.67px) !important;
  }
}

/* Mobile: 3 elementy */
@media (max-width: 991.98px) {
  .blog-home-posts-section.tyres-related .blog-home-posts-owl-carousel .owl-item {
    width: calc(33.333% - 10.67px) !important;
  }
}

.blog-home-posts-section.tyres-related .tyres-progress {
  --seg-index: 0;
  position: relative;
  width: 100%;
  height: 2px;
  gap: 8px;
}

.blog-home-posts-section.tyres-related .tyres-progress .track {
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background: #ececec;
  background-image: linear-gradient(#d0d0d0, #d0d0d0), linear-gradient(#d0d0d0, #d0d0d0), linear-gradient(#ececec, #ececec);
  background-size: 1px 100%, 1px 100%, 100% 100%;
  background-position: 33.333% 0, 66.666% 0, 0 0;
  background-repeat: no-repeat;
}

.blog-home-posts-section.tyres-related .tyres-progress .dot {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(var(--seg-index) * 33.333%);
  width: 33.333%;
  border-radius: 999px;
  height: 2px;
  opacity: 0.4;
  background: var(--color-brand-one-6, #AAC25E);
  transition: left 0.25s ease;
}

.blog-home-posts-section.tyres-related .tyres-nav .btn {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  margin: 0 2px;
}

.blog-home-posts-section.tyres-related .tyres-nav .btn-dark {
  background-color: #000;
}

.blog-home-posts-section.tyres-related .tyres-nav .btn-white {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid rgba(24, 48, 48, 0.20);
  background-color: #fff;
}

.blog-home-posts-section.tyres-related .tyres-controls {
  margin-top: 20px;
  gap: 8px;
}

@media (max-width: 991.98px) {
  .blog-home-posts-section.tyres-related .tyres-progress {
    display: none;
  }
}

.blog-home-posts-section.tyres-related .pdesc__h2 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  /* Heading/Head-M */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 40px;
  /* 125% */
  max-width: 608px;
  margin: 0 auto;
  margin-bottom: 48px;
}

.blog-home-post-card {
  border-radius: var(--radius-small, 8px);
  border: 1px solid var(--border-primary, #E5E5E5);
  background: var(--background-color-base, #FFF);
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  flex: 1 !important;
  position: relative;
}

.blog-home-post-link {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  flex: 1 !important;
}

.blog-home-post-content {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  padding: 20px;
}

.blog-home-post-title {
  color: var(--text-color-base-primary, #000);
  /* Text/Subtitle */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  /* 29.7px */
  letter-spacing: -0.09px;
}

.blog-home-post-meta {
  margin-top: auto;
}

.blog-home-post-arrow {
  opacity: 1 !important;
  transform: translateY(0) !important;
  border-radius: var(--radius-x-small, 4px);
  background: var(--color-brand-one-8-base, #E4FD71);
  height: 24px;
  width: 24px;
  position: absolute;
  bottom: 32px;
  right: 20px;
}

.blog-home-post-arrow svg {
  width: auto !important;
  height: auto !important;
}

.blog-home-post-card:hover {
  box-shadow: none !important;
  border-color: inherit !important;
}

#module-rankingi-list .rankingi-badge {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid #FFF;
  background: var(--background-color-brand-1-dark, #183030);
  box-shadow: 0 4px 60px 0 rgba(228, 253, 113, 0.72);
}

.rankingi-home-carousel-title {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  margin-right: 24px;
  flex-shrink: 0;
}

/* Trust Video Modal - podobny do produktu */
.trust-video-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.trust-video-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.trust-video-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}

.trust-video-modal__dialog {
  position: relative;
  width: min(96vw, 1200px);
  height: min(92vh, 760px);
  margin: auto;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
}

.trust-video-modal__close {
  position: absolute;
  top: 10px;
  right: 12px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.65);
  color: #fff;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  display: grid;
  place-items: center;
  z-index: 2;
  transition: transform 0.15s ease, background 0.2s ease;
}

.trust-video-modal__close:hover {
  transform: scale(1.06);
  background: rgba(0, 0, 0, 0.8);
}

.trust-video-modal__layout {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 0;
  height: 100%;
}

@media (max-width: 900px) {
  .trust-video-modal__layout {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
  }
}

.trust-video-mlist {
  background: #fafafa;
  border-right: 1px solid #e9e9e9;
  overflow: auto;
  padding: 12px;
}

@media (max-width: 900px) {
  .trust-video-mlist {
    border-right: 0;
    border-bottom: 1px solid #e9e9e9;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 260px;
    gap: 12px;
    padding: 10px 12px;
    overflow-x: auto;
  }
}

.trust-video-mlist__item {
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
  margin-bottom: 8px;
}

.trust-video-mlist__item:hover {
  border-color: #e9e9e9;
  background: #fcfcfc;
}

.trust-video-mlist__item.is-active {
  box-shadow: inset 0 0 0 2px #e4fd71;
  background: #fbffe8;
}

.trust-video-mlist__thumb-wrap {
  position: relative;
  width: 120px;
  height: 68px;
  border-radius: 10px;
  overflow: hidden;
  background: #eee;
}

.trust-video-mlist__thumb {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.trust-video-mlist__play {
  position: absolute;
  left: 8px;
  bottom: 8px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(0, 0, 0, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.35);
}

.trust-video-mlist__duration {
  position: absolute;
  right: 8px;
  bottom: 8px;
  padding: 2px 6px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.72);
  color: #fff;
  font-size: 11px;
  line-height: 1;
}

.trust-video-mlist__title {
  font-size: 14px;
  line-height: 1.35;
  font-weight: 600;
  color: #111;
}

.trust-video-player {
  background: #000;
  display: grid;
  place-items: center;
}

.trust-video-player__ratio {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  background: #000;
}

.trust-video-player__ratio iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  background: #000;
}

/* Responsive */
@media (max-width: 767px) {
  .trust-customer-opinions {
    margin-top: 32px;
  }

  .trust-customer-opinions .owl-nav {
    top: -50px;
  }

  .trust-opinion-card {
    padding: 16px;
  }

  .trust-opinion-header {
    padding: 0;
  }

  .trust-opinion-text {
    padding: 0;
  }
}

/* Help step wrapper - QuickContact hook styling */
.help-steps-container .single-counselor .scard,
.help-step-section .single-counselor .scard {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 12px;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  background: #fff;
  box-shadow: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.05s ease;
}

.help-steps-container .single-counselor .scard:hover,
.help-step-section .single-counselor .scard:hover {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-two-9, #EBE4DC);
  background: var(--hover-neutral, #F3EFEA);
  border-color: #e2e2e2;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
}

.help-steps-container .single-counselor .scard__main,
.help-step-section .single-counselor .scard__main {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1 1 auto;
  min-width: 0;
}

.help-steps-container .single-counselor .avatars,
.help-step-section .single-counselor .avatars {
  display: flex;
  gap: 6px;
}

.help-steps-container .single-counselor .avatars.avatars--stacked,
.help-step-section .single-counselor .avatars.avatars--stacked {
  gap: 6px;
}

.help-steps-container .single-counselor .avatars.avatars--stacked .avatar,
.help-step-section .single-counselor .avatars.avatars--stacked .avatar {
  margin-left: 0;
}

.help-steps-container .single-counselor .avatars.avatars--stacked .avatar:first-child,
.help-step-section .single-counselor .avatars.avatars--stacked .avatar:first-child {
  margin-left: 0;
  z-index: 3;
}

.help-steps-container .single-counselor .avatars.avatars--stacked .avatar:nth-child(2),
.help-step-section .single-counselor .avatars.avatars--stacked .avatar:nth-child(2) {
  z-index: 2;
}

.help-steps-container .single-counselor .avatars.avatars--stacked .avatar:nth-child(3),
.help-step-section .single-counselor .avatars.avatars--stacked .avatar:nth-child(3) {
  z-index: 1;
}

.help-steps-container .single-counselor .avatar,
.help-step-section .single-counselor .avatar {
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 4px;
  overflow: hidden;
  background: #f3f3f3;
  box-shadow: inset 0 0 0 1px #e9e9e9;
  flex-shrink: 0;
}

.help-steps-container .single-counselor .avatar p,
.help-step-section .single-counselor .avatar p {
  margin-bottom: 0;
}

.help-steps-container .single-counselor .avatar img,
.help-step-section .single-counselor .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}

.help-steps-container .single-counselor .avatar__badge,
.help-step-section .single-counselor .avatar__badge {
  position: absolute;
  right: 2px;
  bottom: 2px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #e4fd71;
  display: grid;
  place-items: center;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.help-steps-container .single-counselor .avatar__badge img,
.help-step-section .single-counselor .avatar__badge img {
  width: 12px;
  height: 12px;
}

.help-steps-container .single-counselor .scard__copy,
.help-step-section .single-counselor .scard__copy {
  margin-left: 12px;
}

.help-steps-container .single-counselor .scard__copy p,
.help-step-section .single-counselor .scard__copy p {
  margin-bottom: 0;
  color: #888;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

.help-steps-container .single-counselor .scard__copy strong,
.help-step-section .single-counselor .scard__copy strong {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 100%;
  margin-bottom: 6px;
  display: block;
}

.help-steps-container .single-counselor .scard__copy small,
.help-step-section .single-counselor .scard__copy small,
.help-steps-container .single-counselor .scard__copy .sub,
.help-step-section .single-counselor .scard__copy .sub {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  color: #8b8f98;
}

.help-steps-container .single-counselor .scard__arrow,
.help-step-section .single-counselor .scard__arrow {
  margin-left: auto;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #fff;
  color: #000;
  display: grid;
  place-items: center;
  transition: transform 0.15s ease;
  margin-right: 12px;
}

.help-steps-container .single-counselor .scard:hover .scard__arrow,
.help-step-section .single-counselor .scard:hover .scard__arrow {
  transform: translateX(2px);
  background: transparent;
}

/* Checkout Footer - Minimalist Design */
.checkout-footer {
  background-color: #000;
  padding: 32px 0;
  width: 100%;
}

.checkout-footer-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}

.checkout-footer-left {
  flex: 1;
  min-width: 0;
}

.checkout-footer-text {
  color: #fff;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  white-space: nowrap;
}

.checkout-footer-right {
  flex-shrink: 0;
}

.checkout-footer-brand {
  color: #fff;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  white-space: nowrap;
}

@media (max-width: 767.98px) {
  .checkout-footer-content {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .checkout-footer-text {
    font-size: 12px;
    line-height: 16px;
    white-space: normal;
  }

  .checkout-footer-brand {
    font-size: 16px;
    line-height: 20px;
  }
}

#product .product-spec-snippet {
  margin-top: 20px;
}

/* Products grid scroll on mobile */
@media (max-width: 785.98px) {
  .section-front3 {
    margin-top: 0 !important;
    padding-top: 8px !important;
  }

  .section-products-used,
  .section-front3 .section-products-used {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: visible !important;
    padding-bottom: 24px !important;
  }

  .section-front3 .container-fluid,
  .section-front3 .section-products-used .container-fluid {
    overflow-x: visible !important;
    overflow: visible !important;
  }

  .section-products-used .row,
  .section-front3 .section-products-used .row,
  .section-products-used .single-row,
  .section-front3 .section-products-used .single-row {
    overflow-x: visible !important;
    overflow: visible !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .section-products-used .col-12,
  .section-front3 .section-products-used .col-12,
  .section-products-used .single2,
  .section-front3 .section-products-used .single2 {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: visible !important;
    overflow: visible !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .section-products-used .single1-sz,
  .section-front3 .section-products-used .single1-sz {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: visible !important;
    overflow: visible !important;
  }

  .products-flex-container,
  .section-products-used .products-flex-container,
  .section-front3 .section-products-used .products-flex-container {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: visible !important;
    overflow: visible !important;
    flex-direction: column !important;
    gap: 24px !important;
  }

  .products-button-wrapper,
  .section-products-used .products-button-wrapper,
  .section-front3 .section-products-used .products-button-wrapper {
    width: 100% !important;
    margin-top: 0 !important;
    flex-shrink: 0 !important;
  }

  .products-grid::-webkit-scrollbar,
  .section-products-used .products-grid::-webkit-scrollbar,
  .section-front3 .section-products-used .products-grid::-webkit-scrollbar {
    height: 4px;
  }

  .products-grid::-webkit-scrollbar-track,
  .section-products-used .products-grid::-webkit-scrollbar-track,
  .section-front3 .section-products-used .products-grid::-webkit-scrollbar-track {
    background: transparent;
  }

  .products-grid::-webkit-scrollbar-thumb,
  .section-products-used .products-grid::-webkit-scrollbar-thumb,
  .section-front3 .section-products-used .products-grid::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
  }

  .products-grid .product-item,
  .section-products-used .products-grid .product-item,
  .section-front3 .section-products-used .products-grid .product-item {
    flex: 0 0 180px !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    min-width: 180px !important;
    max-width: 180px !important;
    width: 180px !important;
  }

  .products-grid .product,
  .section-products-used .products-grid .product,
  .section-front3 .section-products-used .products-grid .product {
    width: 180px !important;
    max-width: 180px !important;
    flex-shrink: 0 !important;
    padding-left: 0 !important;
  }

  .section-front3 .section-products-used .product {
    padding-left: 0 !important;
    padding-right: 4px !important;
  }

  .section-front3 .section-products-used .product-miniature.js-product-miniature {
    padding: 0 !important;
  }

  .section-front3 .section-products-used .used-card .thumbnail-top {
    width: 175px !important;
  }

  .section-front3 .single2 .desc1 p {
    margin-bottom: 0 !important;
  }
}

#product .live-sec .ev-hero img {
  bottom: 0;
  border-top-right-radius: 12px;
  border-bottom-right-radius: 12px;
}

#product .container-fluid {
  /* overflow-x: hidden;     */
  /* max-width: 100%; */
  /* width: 100%; */
}

/* Prevent horizontal scroll on product page while keeping sticky nav */
#product .backcolor1,
#product .product-container {
  overflow-x: hidden;
  max-width: 100%;
}

/* But allow overflow for sticky navigation container */
#product .product-container2 {
  overflow-x: visible !important;
  overflow-y: visible !important;
  max-width: 100%;
}

#product .live-sec .ev-panel .ev-head .ev-title p {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-S <str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 600;
  line-height: 36px;
  /* 128.571% */
}

.product-description-toggle-wrapper {
  text-align: center;
  margin-top: 16px;
}

.product-description-toggle {
  color: #6c757d;
  text-decoration: none;
  cursor: pointer;
  font-size: 14px;
  transition: color 0.2s ease;
}

.product-description-toggle:hover {
  color: #495057;
  text-decoration: underline;
}

#product .product-descriptions-wrapper {
  position: relative;
}

#product .product-descriptions-wrapper h1,
#product .product-descriptions-wrapper h2,
#product .product-descriptions-wrapper h3,
#product .product-descriptions-wrapper h4,
#product .product-descriptions-wrapper h5,
#product .product-descriptions-wrapper h6 {
  color: var(--text-color-base-primary, #000);
  /* Text/Body II<str> */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  /* 142.857% */
}

#product .product-descriptions-wrapper p,
#product .product-descriptions-wrapper ul,
#product .product-descriptions-wrapper li {
  color: var(--text-color-base-secondary, #595959);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#product .product-descriptions-wrapper a {
  color: var(--text-color-base-primary, #000);
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

#product .product-descriptions-wrapper .product-description-toggle {
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 7%;
  text-underline-offset: 70%;
  text-underline-position: from-font;
}

#product .product-descriptions-wrapper .product-description.product-description-short {
  position: relative;
  padding-bottom: 40px;
  margin-bottom: -40px;
  overflow: hidden;
}

/* Gradient widoczny tylko gdy opis jest zwinięty - nałożony od dołu */
#product .product-descriptions-wrapper:not(.expanded) .product-description.product-description-short::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 91.16%);
  border-radius: inherit;
  pointer-events: none;
  z-index: 1;
}

#product .product-descriptions-wrapper .product-description-toggle-wrapper {
  position: relative;
  padding-top: 20px;
  margin-top: -40px;
  margin-bottom: 20px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 0%, #FFF 91.16%);
}

/* Usuń gradient gdy opis jest rozwinięty */
#product .product-descriptions-wrapper.expanded .product-description-toggle-wrapper {
  background: none;
}

#product .product-descriptions-wrapper {
  margin-bottom: 76px;
}

/* Review Modal Styles - Similar to leasing modal */
.review-modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 10000;
  opacity: 0;
  transition: opacity 0.3s ease;
  overflow-y: auto;
}

.review-modal-overlay.review-modal-active {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}

body.review-modal-open {
  overflow: hidden;
}

.review-modal-container {
  position: relative;
  background: #fff;
  border-radius: 8px;
  max-width: 90%;
  width: 600px;
  max-height: 90vh;
  margin: 20px auto;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  transform: scale(0.9);
  transition: transform 0.3s ease;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.review-modal-overlay.review-modal-active .review-modal-container {
  transform: scale(1);
}

.review-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  z-index: 10001;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

.review-modal-close:hover {
  background-color: rgba(0, 0, 0, 0.1);
}

.review-modal-close svg {
  width: 20px;
  height: 20px;
}

.review-modal-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}

.review-modal-header {
  padding: 24px 24px 16px;
  border-bottom: 1px solid #E5E5E5;
  flex-shrink: 0;
}

.review-modal-title {
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  color: #000;
  line-height: 1.4;
}

.review-modal-content {
  padding: 24px;
  overflow-y: auto;
  flex: 1;
  min-height: 0;
}

/* Responsive */
@media (max-width: 767px) {
  .review-modal-container {
    width: 95%;
    max-height: 95vh;
    margin: 10px auto;
  }

  .review-modal-header {
    padding: 20px 20px 16px;
  }

  .review-modal-title {
    font-size: 20px;
  }

  .review-modal-content {
    padding: 20px;
  }
}

#amazzing_filter form {
  padding-top: 0;
}

#amazzing_filter .amazzing-filter-title {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-S */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  /* 128.571% */
}

#amazzing_filter .slider-bar .back-bar {
  height: 1px;
}

#amazzing_filter .af_filter .toggle-cut-off {
  margin-top: 0;
}

/* Ensure count is right next to text in filter items */
#amazzing_filter .af_filter_content ul li label span.name .count {
  margin-left: 4px;
  display: inline;
}

#amazzing_filter .af_filter_content ul li label {
  padding: 0;
  padding-left: 26px;
}

#amazzing_filter .af_filter_content ul li {
  padding: 0;
}

#amazzing_filter .af_filter_content ul li label span.name {
  color: var(--text-color-base-primary, #000);
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

#amazzing_filter .af_filter_content ul li label span.name .count {
  color: var(--text-color-base-tetriary, #888);
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  /* 150% */
}

#amazzing_filter .af_subtitle {
  border-bottom: 0;
  padding: 0 16px;
}

#amazzing_filter .af_filter {
  padding-bottom: 32px;
  margin-bottom: 32px;
  border-bottom: 1px solid #e5e5e5;
}

#amazzing_filter .af_filter_content {
  padding-bottom: 0;
}

/* Ensure cut-off functionality works - hide .cut items when .af_filter has .cut-off class */
#amazzing_filter .af_filter.cut-off .af_filter_content ul li.cut {
  display: none !important;
}

/* Show .cut items when .af_filter does NOT have .cut-off class */
#amazzing_filter .af_filter:not(.cut-off) .af_filter_content ul li.cut {
  display: list-item !important;
}

/* Ensure toggle-cut-off button is clickable and visible when expandable */
#amazzing_filter .af_filter.expandable .toggle-cut-off {
  display: flex !important;
  cursor: pointer;
}

#amazzing_filter .p_slider,
#amazzing_filter .af-slider {
  margin-bottom: 0;
}

.category-listing-page .selectedFilters.clearfix.inline.af {
  display: none !important;
}

#category-footer h1,
#category-footer h2,
#category-footer h3,
#category-footer h4,
#category-footer h5,
#category-footer h6 {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
}

#category-footer p,
#category-footer li,
#category-footer ul,
#category-footer ol {
  color: var(--text-color-base-secondary, #595959);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
}

#category-footer a {
  color: var(--text-color-base-primary, #000);
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-style: normal;
}

#category-footer .category-title-footer {
  display: none !important;
}

#category-footer {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  display: block;
  padding-left: 16px;
  padding-right: 16px;
  box-sizing: border-box;
}

/* Category description expand/collapse */
#category-footer #category-description-footer {
  position: relative;
  max-height: 200px;
  overflow: hidden;
  transition: max-height 0.5s ease, height 0.5s ease;
  display: block;
  box-sizing: border-box;
}

#category-footer #category-description-footer.category-description-collapsed {
  max-height: 200px;
  overflow: hidden;
}

#category-footer #category-description-footer.category-description-expanded {
  /* max-height and height will be set dynamically by JavaScript for smooth animation */
  overflow: visible;
}

#category-footer .category-description-content {
  position: relative;
  display: block;
  box-sizing: border-box;
}

#category-footer .category-description-gradient {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 80px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
  pointer-events: none;
  transition: opacity 0.5s ease;
  z-index: 2;
  opacity: 1;
}

#category-footer #category-description-footer.category-description-expanded .category-description-gradient {
  opacity: 0;
}

#category-footer .category-description-toggle {
  display: block !important;
  margin: 16px auto 56px auto;
  padding: 8px 16px;
  background: transparent;
  border: none;
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 7%;
  text-underline-offset: 70%;
  text-underline-position: from-font;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  z-index: 10;
  width: auto;
  text-align: center;
}

#category-footer .category-description-toggle .toggle-text-expand {
  display: inline;
}

#category-footer .category-description-toggle .toggle-text-collapse {
  display: none;
}

#category-footer #category-description-footer.category-description-expanded~.category-description-toggle .toggle-text-expand {
  display: none;
}

#category-footer #category-description-footer.category-description-expanded~.category-description-toggle .toggle-text-collapse {
  display: inline;
}

#category-footer .category-description-toggle:hover {
  color: var(--text-color-base-primary, #000);
}

/* Price histogram styles */
#amazzing_filter .price-histogram {
  position: relative;
  width: 100%;
  height: 50px;
  margin-bottom: 12px;
  padding: 0;
  overflow: visible;
}

#amazzing_filter .histogram-bars {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  gap: 0;
  padding: 0;
  position: relative;
}

#amazzing_filter .histogram-bar {
  flex: 1;
  background-color: #e5e5e5;
  min-width: 1px;
  max-width: 2px;
  width: 100%;
  border-radius: 0;
  transition: background-color 0.2s ease;
  position: relative;
  min-height: 2px;
  /* Ensure minimum visibility */
}

#amazzing_filter .histogram-bar:hover {
  background-color: #C7C7C7;
}

/* Products grid - 1 product per row on mobile (0 - 575px) */
@media (max-width: 575px) {

  #js-product-list.products-grid,
  section#products #js-product-list.products-grid {
    grid-template-columns: 1fr !important;
    display: grid !important;
    gap: 8px !important;
  }

  #js-product-list.products-grid .js-product.product,
  #js-product-list.products-grid .product {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    margin: 0 !important;
  }

  /* Separatory mobile - pokazuj po każdym produkcie */
  #js-product-list.products-grid .product-row-separator.d-sm-none {
    display: flex !important;
    grid-column: 1 / -1 !important;
  }

  /* Ukryj separatory tablet i desktop */
  #js-product-list.products-grid .product-row-separator.d-none.d-sm-block.d-lg-none,
  #js-product-list.products-grid .product-row-separator.d-none.d-lg-block {
    display: none !important;
  }

  .section-products-used .products-grid,
  .section-front3 .section-products-used .products-grid {
    grid-template-columns: 1fr !important;
    display: grid !important;
  }

  .products-grid .product,
  .section-products-used .products-grid .product,
  .section-front3 .section-products-used .products-grid .product {
    max-width: 100% !important;
    flex: none !important;
  }
}

/* Products grid - 2 products side by side on tablets (576px - 991px) */
@media (min-width: 576px) and (max-width: 991px) {

  #js-product-list.products-grid,
  section#products #js-product-list.products-grid {
    grid-template-columns: repeat(2, 1fr);
    display: grid;
    gap: 8px;
  }

  #js-product-list.products-grid .js-product.product,
  #js-product-list.products-grid .product {
    width: 100%;
    max-width: 100%;
    flex: none;
    margin: 0;
  }

  /* Separatory - ukryj mobile i desktop, pokazuj tylko tablet */
  #js-product-list.products-grid .product-row-separator.d-sm-none {
    display: none;
  }

  #js-product-list.products-grid .product-row-separator.d-none.d-lg-block {
    display: none;
  }

  /* Separatory tablet - pokazuj co 2 produkty (co rząd) */
  #js-product-list.products-grid .product-row-separator.d-none.d-sm-block.d-lg-none {
    display: flex;
    grid-column: 1 / -1;
  }

  .section-products-used .products-grid,
  .section-front3 .section-products-used .products-grid {
    grid-template-columns: repeat(2, 1fr);
    display: grid;
  }

  .section-products-used .products-grid .product,
  .section-front3 .section-products-used .products-grid .product {
    max-width: 100%;
    flex: none;
  }
}

/* Products grid - 3 products per row on desktop (992px+) */
@media (min-width: 992px) {

  #js-product-list.products-grid,
  section#products #js-product-list.products-grid {
    grid-template-columns: repeat(3, 1fr);
    display: grid;
    gap: 8px;
  }

  #js-product-list.products-grid .js-product.product,
  #js-product-list.products-grid .product {
    width: 100%;
    max-width: 100%;
    flex: none;
    margin: 0;
  }

  /* Separatory desktop - pokazuj co 3 produkty */
  #js-product-list.products-grid .product-row-separator.d-none.d-lg-block {
    display: flex;
    grid-column: 1 / -1;
  }

  /* Ukryj separatory mobile i tablet */
  #js-product-list.products-grid .product-row-separator.d-sm-none,
  #js-product-list.products-grid .product-row-separator.d-none.d-sm-block.d-lg-none {
    display: none;
  }
}

/* Ukryj przycisk filtrowania */
/* Mobile category toggle button - styled like mobile-filters-toggle */
.mobile-filters-toggle-compact.btn-primary.compact-toggle,
a.mobile-filters-toggle-compact.btn-primary.compact-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  padding: 12px 16px;
  background: #fff;
  border: 1px solid var(--border-primary, #e5e5e5);
  border-radius: var(--radius-x-small, 4px);
  cursor: pointer;
  transition: border-color 0.2s ease;
  font-family: inherit;
  text-align: left;
  margin-bottom: 8px;
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
}

.mobile-filters-toggle-compact.btn-primary.compact-toggle:hover,
a.mobile-filters-toggle-compact.btn-primary.compact-toggle:hover {
  border-color: var(--color-brand-one-7, #C7E068);
}

/* Hide other compact-toggle buttons (not our mobile one) */
.btn-primary.compact-toggle:not(.mobile-filters-toggle-compact),
a.btn-primary.compact-toggle:not(.mobile-filters-toggle-compact),
.compact-toggle:not(.mobile-filters-toggle-compact) {
  display: none;
}

/* Ukryj filtr kategorii - szczegółowe selektory dla wszystkich kontekstów */
#amazzing_filter .af_filter[data-url="kategorie"],
#mobile-filters-placeholder #amazzing_filter .af_filter[data-url="kategorie"],
#mobile-filters-placeholder>#amazzing_filter .af_filter[data-url="kategorie"],
.mobile-filters-modal #mobile-filters-placeholder #amazzing_filter .af_filter[data-url="kategorie"],
.has-compact-filter .mobile-filters-modal #mobile-filters-placeholder #amazzing_filter .af_filter[data-url="kategorie"],
.mobile-filters-modal.has-compact-filter #mobile-filters-placeholder #amazzing_filter .af_filter[data-url="kategorie"] {
  display: none;
  visibility: hidden;
}

/* Ukryj sekcję producentów na stronie kategorii */

.selectedFilters.clearfix.inline.af {
  display: none;
}

#left-column {
  padding-bottom: 128px;
}

#left-column .block-categories .category-top-menu>li>a.text-uppercase {
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-S */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  /* 128.571% */
}

#left-column .block-categories {
  padding: 0 16px;
  border-bottom: 1px solid #e5e5e5;
}

#left-column .block-categories .subcategory-nav {
  margin-bottom: 24px;
}

#left-column .block-categories .block-categories-title {
  margin-bottom: 16px;
  color: var(--text-color-base-primary, #000);
  /* Heading/Head-S */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  /* 128.571% */
}

#left-column .block-categories .subcategory-nav-back {
  padding: 0;
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#left-column .block-categories .category-main-title {
  padding-top: 12px;
  padding-bottom: 12px;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px;
  /* 142.857% */
  margin: 0;
}

#left-column .block-categories .category-main-title span {
  color: var(--text-color-base-tetriary, #888);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
}

#left-column .block-categories .category-sub-menu>li>a,
#left-column .block-categories .category-sub-menu>li>a.category-sub-link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: var(--text-color-base-primary, #000);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
  padding: 8px 0;
}

#left-column .block-categories .category-sub-menu>li>a svg,
#left-column .block-categories .category-sub-menu>li>a.category-sub-link svg {
  flex-shrink: 0;
  margin-right: 4px;
}

#left-column .block-categories .category-sub-menu>li>a .product-count,
#left-column .block-categories .category-sub-menu>li>a.category-sub-link .product-count {
  color: var(--text-color-base-tetriary, #888);
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

#left-column .block-categories .category-top-menu>li>.category-sub-menu {
  padding-left: 16px;
  margin-top: 8px;
}

#left-column .block-categories .category-sub-menu>li:last-child {
  border-bottom: none;
}

#amazzing_filter .af_subtitle-text {
  color: var(--text-color-base-primary, #000);
  /* Text/Body */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  /* 150% */
}

#amazzing_filter .af-clear-section-btn {
  background: none;
  border: none;
  color: var(--text-color-base-secondary, #595959);
  text-align: right;
  text-decoration: none;
  /* Text/Body II */
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  /* 142.857% */
}

/* Hide toggleMoreFilters if there are no more filters to show - handled by JavaScript */

#amazzing_filter .toggleMoreFilters,
#amazzing_filter .toggleMoreFilters:focus {
  background-color: transparent;
  border: none;
  color: var(--text-color-base-tetriary, #888);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  text-decoration-skip-ink: none;
  text-underline-offset: 70%;
  text-underline-position: from-font;
  cursor: pointer;
  text-align: center;
}

#amazzing_filter .btn {
  text-transform: none;
}

/* Mobile filters - remove padding from subtitle */
#mobile-filters-placeholder #amazzing_filter .af_subtitle,
#mobile-filters-placeholder>#amazzing_filter .af_subtitle {
  padding: 0;
}

/* Fix language selector z-index to be above mega menu */
#_desktop_language_selector .dropdown-menu {
  z-index: 1200 !important;
}

#my-account #main .page-footer {
  margin-bottom: 1.6rem;
}

#my-account .page-header h1 {
  color: var(--text-color-base-primary, #000);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: 40px;
}

.page-my-account #content .links a {
  color: var(--text-color-base-secondary, #595959);
  text-align: center;
  font-family: var(--font-family-family-primary, Sora);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 165%;
  letter-spacing: -0.09px;
  text-transform: none;
}

.page-my-account #content .links a:hover {
  color: rgb(0, 0, 0);
  text-decoration: none;
}

.carousel .carousel-control .icon-next:hover i,
.carousel .carousel-control .icon-prev:hover i,
.dropdown:hover .expand-more,
.page-my-account #content .links a:hover i,
.search-widget form button[type="submit"] .search:hover,
.top-menu .sub-menu a:hover {
  color: #000;
}

#product .pg .pg-strip-desktop {
  margin-top: 12px;
}

#product .pg .pg-strip-desktop {
  margin-top: 12px;
}

/* Product Page Chips */
.pg-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
  margin-bottom: 16px;
}

.pg-chip {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 8px;
  font-family: 'Sora', sans-serif;
  font-size: 13px;
  line-height: 1.4;
  text-decoration: none !important;
  transition: all 0.2s ease;
  min-height: 48px;
}

.pg-chip--muted {
  background-color: #F5F5F5;
  color: #000;
  flex-direction: row !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 4px 12px !important;
  min-height: 32px !important;
}

.pg-chip--green {
  background-color: #F2F9E8;
  /* Light green background */
  color: #000;
  border: 1px solid transparent;
}

.pg-chip--green:hover {
  background-color: #E6F2D6;
  border-color: #6F884C;
}

.pg-chip__header {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 2px;
}

.pg-chip__icon {
  flex-shrink: 0;
}

.pg-chip__rank {
  color: #6F884C;
  font-weight: 600;
  font-size: 12px;
}

.pg-chip__ne {
  margin-left: auto;
  opacity: 0.6;
}

.pg-chip__text {
  font-weight: 500;
  color: #000;
  font-size: 13px;
}

.pg-chip strong {
  font-weight: 600;
}

/* ============================================
   FIGMA MATCHING STYLES (Product Page)
   ============================================ */

/* --- Manufacturer Box (.brand-card) --- */
.brand-card {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  transition: box-shadow 0.2s ease;
}

.brand-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.brand-card__logo {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #f0f0f0;
  border-radius: 8px;
  padding: 4px;
  background: #fff;
}

.brand-card__logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.brand-card__row {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 4px;
  color: #595959;
}

.brand-card__row strong,
.brand-card__row a {
  font-weight: 600;
  color: #000;
  margin-left: 4px;
}

.brand-all a {
  font-size: 13px;
  color: #595959;
  text-decoration: underline;
}

.brand-all a:hover {
  color: #000;
}

/* --- Variant Selectors (Boxes) --- */
.product-variants-item {
  margin-bottom: 20px;
}

.product-variants-label {
  font-size: 14px;
  font-weight: 500;
  /* Regular/Medium per design */
  color: #595959;
  margin-bottom: 8px;
  display: block;
}

/* Radio Buttons Wrapper used as cards */
.product-variants-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.product-variant-button-wrapper {
  position: relative;
}

/* Hide actual radio/checkbox */
.product-variant-input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  width: 100%;
  height: 100%;
  z-index: 2;
}

/* The Label styled as a Card */
.product-variant-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 80px;
  padding: 10px 16px;
  background: #fff;
  border: 1px solid #E5E5E5;
  border-radius: 4px;
  /* Slightly rounded */
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
  text-align: center;
}

.product-variant-button:hover {
  border-color: #b2b2b2;
}

/* Selected State */
.product-variant-input:checked+.product-variant-button,
.product-variant-button.selected {
  border-color: #000;
  background-color: #fff;
  /* Keep white or slight OFF-white if design demands */
  box-shadow: 0 0 0 1px #000;
  /* Double border effect */
}

.product-variant-button .variant-name {
  font-size: 14px;
  font-weight: 600;
  color: #000;
  margin-bottom: 2px;
}

.product-variant-button .variant-price {
  font-size: 12px;
  color: #595959;
}

/* --- Warranty Box (if separate) --- */
.warranty-row {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #f0f0f0;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}

.warranty_name {
  color: #595959;
}

.warranty_value {
  color: #000;
  font-weight: 600;
}

/* --- Specification Snippet --- */
.product-spec-snippet {
  margin-top: 24px;
  margin-bottom: 24px;
}

.spec-line {
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
  border-bottom: 1px solid #f0f0f0;
  font-size: 14px;
}

.spec-line:first-child {
  border-top: 1px solid #f0f0f0;
}

.spec-label {
  color: #595959;
}

.spec-value {
  color: #000;
  font-weight: 500;
  text-align: right;
}

.but-spec {
  margin-top: 12px;
  text-align: right;
}

.spec-scroll {
  font-size: 13px;
  color: #595959;
  text-decoration: underline;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.spec-scroll svg {
  margin-top: 2px;
}

/* ============================================
   FIGMA IMPLEMENTATION PHASE 1
   ============================================ */

/* 1. Global Typography & Variables */
:root {
  --font-primary: 'Sora', sans-serif;
  --color-brand-red: #E4002B;
  --color-brand-red-hover: #c40026;
  --border-radius-base: 4px;
}

/* Enforce Sora globally if not already */
body,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--font-primary);
}

/* 2. Global Buttons */
.btn-primary,
.btn-secondary,
.btn-tertiary {
  border-radius: var(--border-radius-base);
  font-weight: 600;
  text-transform: none;
  /* Figma uses Title Case usually, not uppercase */
  padding: 10px 24px;
  /* Adjust based on current padding */
  transition: all 0.2s ease;
}

.btn-primary {
  background-color: var(--color-brand-red);
  border-color: var(--color-brand-red);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  border-radius: var(--radius-x-small, 4px);
  border: 1px solid var(--color-brand-one-7, #C7E068);
  background: var(--color-brand-one-9, #EBFE97);
}

/* Navigation Links */
#_desktop_top_menu .top-menu>.category>a {
  font-weight: 600 !important;
  font-size: 15px;
  /* Adjust to match Figma */
}

/* 3. Product Page - Visual Grid Specs */
/* This transforms the DL/DT/DD definition list into a grid */
.product-features dl.data-sheet {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important;
  gap: 16px !important;
  margin: 0 !important;
}

.product-features dl.data-sheet dt.name {
  display: none;
  /* Hide the label if we want icon-only or specialized cards, 
                      BUT Figma usually shows "Power: 24KM". 
                      Let's style it as a card. */
}

/* Better Card Approach for DL */
.product-features dl.data-sheet div.feature-item {
  /* We might need to wrap dt/dd in a div via JS or Template edit. 
       If standard PrestaShop output is <dt>...</dt><dd>...</dd> flat list, 
       CSS Grid cannot easily card-ify pairs without subgrid or wrapper. 
       
       Standard Presta 1.7 output in product-details.tpl:
       <dl class="data-sheet">
         {foreach from=$product.features item=feature}
           <dt class="name">{$feature.name}</dt>
           <dd class="value">{$feature.value}</dd>
         {/foreach}
       </dl>
       
       We MUST edit the TPL to wrap pairs in a generic container for Grid to work nicely.
    */
}

/* 4. Footer Newsletter */
.block_newsletter form input[type="text"] {
  border-radius: var(--border-radius-base) 0 0 var(--border-radius-base);
  border: 1px solid #e5e5e5;
  height: 48px;
}

.block_newsletter form button[type="submit"] {
  border-radius: 0 var(--border-radius-base) var(--border-radius-base) 0;
  background-color: var(--color-brand-red);
  height: 48px;
}

/* ============================================
   FIGMA IMPLEMENTATION PHASE 1 - CORRECTION
   ============================================ */

/* Reset the DL style because it is now an item inside a column, not the grid container */
.product-features div[class*="col-"] dl.data-sheet.figma-feature-card {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  padding: 16px;
  height: 100%;
  /* Fill the column height */
  min-height: 100px;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.product-features div[class*="col-"] dl.data-sheet.figma-feature-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  border-color: #d0d0d0;
}

.product-features div[class*="col-"] dl.data-sheet.figma-feature-card dt.name {
  font-size: 13px;
  color: #595959;
  font-weight: 400;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  width: 100%;
  /* Ensure it doesn't word-break weirdly */
}

.product-features div[class*="col-"] dl.data-sheet.figma-feature-card dd.value {
  font-size: 16px;
  color: #000;
  font-weight: 600;
  margin-bottom: 0;
  width: 100%;
}

/* Icons for specific features (Optional Enhancement based on checking actual content) */
/* Example: .figma-feature-card dt.name:contains("Moc") { ... } - CSS :contains doesn't exist.
   We would need JS or Smarty class addition for icons. For now, text-only card is a huge improvement. */
/* ============================================
   FIGMA footer STYLES
   ============================================ */

/* Newsletter Section */
#newsletter .newsletter-form {
  max-width: 600px;
}

#newsletter .newsletter-form .input-group input.form-control {
  height: 48px;
  border: 1px solid #e5e5e5;
  border-right: none;
  border-radius: 4px 0 0 4px;
  font-size: 14px;
  padding-left: 16px;
  box-shadow: none;
}

#newsletter .newsletter-form .input-group input.form-control:focus {
  border-color: #e4002b;
  outline: none;
}

#newsletter .newsletter-form button[name="submitNewsletter"] {
  height: 48px;
  background-color: #E4002B;
  /* Brand Red */
  border-color: #E4002B;
  border-radius: 0 4px 4px 0;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  padding: 0 24px;
  color: #fff;
  transition: background-color 0.2s ease;
}

#newsletter .newsletter-form button[name="submitNewsletter"]:hover {
  background-color: #c40026;
  border-color: #c40026;
}

@media (min-width: 993px) {
  .footer-menu-arrow {
    display: none !important;
  }
}

/* Heading styles for product description */
#product .product-container2 .pdesc .product-description h1 {
  margin-top: 80px;
  color: #000;
  font-size: 34px;
  font-style: normal;
  font-weight: 400;
  line-height: 42px;
  margin-bottom: 32px;
}

#product .product-container2 .pdesc .product-description h2 {
  margin-top: 80px;
  color: #000;
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  margin-bottom: 32px;
}

#product .product-container2 .pdesc .product-description h3 {
  margin-top: 40px;
  color: #000;
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  margin-bottom: 24px;
}

#product .product-container2 .pdesc .product-description h4 {
  margin-top: 32px;
  color: #000;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  margin-bottom: 20px;
}

#product .product-container2 .pdesc .product-description h5 {
  margin-top: 24px;
  color: #000;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 16px;
}

#product .product-container2 .pdesc .product-description h6 {
  margin-top: 24px;
  color: #000;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 16px;
}

/* Related products section title */
.category-products-title {
  color: var(--text-color-base-primary, #000);
  font-family: var(--font-family-family-primary, Sora);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 36px;
  margin-bottom: 24px;
}

/* ========================================
   BUTTON DESIGN SYSTEM — btn1 do btn13
   Na podstawie Figma: node-id=65-12016
   13 przycisków × 2 stany = 26 reguł
   ======================================== */

/* --- Wspólne style dla przycisków z tłem/obramówką --- */
.btn1,
.btn2,
.btn3,
.btn4,
.btn5,
.btn6,
.btn7,
.btn10,
.btn11,
.btn12,
.btn13 {
  display: inline-flex !important;
  gap: 16px !important;
  padding: 12px 24px !important;
  border-radius: var(--radius-x-small, 4px) !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  border: 1px solid transparent !important;
}

/* =============================================
   GRUPA 1 — LIME GREEN
   ============================================= */

/* btn1 — Lime Solid (Primary CTA) */
.btn1 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-10, #F2FEBD) !important;
  background: var(--color-brand-one-8-base, #E4FD71) !important;
  color: var(--text-color-base-primary, #000) !important;
}

.btn1:hover,
.btn1:active,
.btn1:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-7, #C7E068) !important;
  background: var(--color-brand-one-9, #EBFE97) !important;
  color: var(--text-color-base-primary, #000) !important;
}

/* btn2 — Lime Outline (Secondary CTA) */
.btn2 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-8-base, #E4FD71) !important;
  background: transparent !important;
  color: var(--text-color-base-primary, #000) !important;
}

.btn2:hover,
.btn2:active,
.btn2:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-7, #C7E068) !important;
  background: var(--color-brand-one-9, #EBFE97) !important;
  color: var(--text-color-base-primary, #000) !important;
}

/* btn3 — Dark Green ze strzałką */
.btn3 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-1-base, #183030) !important;
  background: var(--color-brand-one-1-base, #183030) !important;
  color: var(--text-color-dark-primary, #FFF) !important;
  justify-content: space-between !important;
}

.btn3:hover,
.btn3:active,
.btn3:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-1-base, #183030) !important;
  background: var(--color-brand-one-2, #354D39) !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

/* =============================================
   GRUPA 2 — GREY
   ============================================= */

/* btn4 — Grey Solid */
.btn4 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-neutral-7, #B2B2B2) !important;
  background: var(--color-neutral-7, #B2B2B2) !important;
  color: var(--text-color-base-primary, #000) !important;
}

.btn4:hover,
.btn4:active,
.btn4:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #999 !important;
  background: #999 !important;
  color: var(--text-color-base-primary, #000) !important;
}

/* btn5 — Grey Outline */
.btn5 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-neutral-7, #B2B2B2) !important;
  background: transparent !important;
  color: var(--text-color-base-primary, #000) !important;
}

.btn5:hover,
.btn5:active,
.btn5:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #999 !important;
  background: var(--color-neutral-7, #B2B2B2) !important;
  color: var(--text-color-base-primary, #000) !important;
}

/* =============================================
   GRUPA 3 — BLACK
   ============================================= */

/* btn6 — Black Solid */
.btn6 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #1D1D1B !important;
  background: #1D1D1B !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

.btn6:hover,
.btn6:active,
.btn6:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #333 !important;
  background: #333 !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

/* btn7 — Black Outline */
.btn7 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #1D1D1B !important;
  background: transparent !important;
  color: #1D1D1B !important;
}

.btn7:hover,
.btn7:active,
.btn7:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #1D1D1B !important;
  background: #1D1D1B !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

/* =============================================
   GRUPA 4 — TEXT LINKS
   ============================================= */

/* btn8 — Text Link (ciemny) */
.btn8 {
  display: inline !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  color: var(--text-color-base-primary, #000) !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  transition: color 0.2s ease !important;
}

.btn8:hover,
.btn8:active,
.btn8:focus {
  color: var(--color-brand-one-2, #354D39) !important;
  text-decoration: underline !important;
}

/* btn9 — Text Link (szary/subtelny) */
.btn9 {
  display: inline !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  color: var(--text-color-base-tetriary, #888) !important;
  font-family: var(--font-family-family-primary, Sora) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  transition: color 0.2s ease !important;
}

.btn9:hover,
.btn9:active,
.btn9:focus {
  color: var(--text-color-base-primary, #000) !important;
  text-decoration: underline !important;
}

/* =============================================
   GRUPA 5 — BEIGE
   ============================================= */

/* btn10 — Beige Solid */
.btn10 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #D9C5B2 !important;
  background: #D9C5B2 !important;
  color: var(--text-color-base-primary, #000) !important;
}

.btn10:hover,
.btn10:active,
.btn10:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #C4AD98 !important;
  background: #C4AD98 !important;
  color: var(--text-color-base-primary, #000) !important;
}

/* btn11 — Beige Outline */
.btn11 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #D9C5B2 !important;
  background: transparent !important;
  color: var(--text-color-base-primary, #000) !important;
}

.btn11:hover,
.btn11:active,
.btn11:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid #C4AD98 !important;
  background: #D9C5B2 !important;
  color: var(--text-color-base-primary, #000) !important;
}

/* =============================================
   GRUPA 6 — DARK GREEN
   ============================================= */

/* btn12 — Dark Green Solid */
.btn12 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-1-base, #183030) !important;
  background: var(--color-brand-one-1-base, #183030) !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

.btn12:hover,
.btn12:active,
.btn12:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-1-base, #183030) !important;
  background: var(--color-brand-one-2, #354D39) !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

/* btn13 — Dark Green Outline */
.btn13 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-1-base, #183030) !important;
  background: transparent !important;
  color: var(--color-brand-one-1-base, #183030) !important;
}

.btn13:hover,
.btn13:active,
.btn13:focus {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-1-base, #183030) !important;
  background: var(--color-brand-one-1-base, #183030) !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

/* btn13 — Dark Green Outline */
.btn14 {
  border-radius: var(--radius-x-small, 4px) !important;
  border: 1px solid var(--color-brand-one-1-base, #fff) !important;
  background: transparent !important;
  color: var(--color-brand-one-1-base, #fff) !important;
}

.btn14:hover,
.btn14:active,
.btn14:focus {
  border-radius: 4px !important;
  border: 1px solid var(--color-brand-one-1-base, #183030) !important;
  background: var(--color-brand-one-2, #354D39) !important;
  color: var(--text-color-dark-primary, #FFF) !important;
}

.page-content.page-cms {
  padding: 0;
}

.page-content.page-cms ul {
  padding-left: 8px;
}

/* Legal pages (terms, privacy, returns) */
.page-content.page-cms.page-cms-187,
.page-content.page-cms.page-cms-188,
.page-content.page-cms.page-cms-189,
.page-content.page-cms.page-cms-190,
.page-content.page-cms.page-cms-191 {
  max-width: 1060px;
  margin: 28px auto 56px;
  padding: 36px 40px;
  background: #fff;
  border-radius: 14px;
  color: #2b2b2b;
}

body.cms-id-187 #main .page-header h1,
body.cms-id-188 #main .page-header h1,
body.cms-id-189 #main .page-header h1,
body.cms-id-190 #main .page-header h1,
body.cms-id-191 #main .page-header h1 {
  text-align: center;
}

.page-content.page-cms.page-cms-187 p,
.page-content.page-cms.page-cms-187 li,
.page-content.page-cms.page-cms-188 p,
.page-content.page-cms.page-cms-188 li,
.page-content.page-cms.page-cms-189 p,
.page-content.page-cms.page-cms-189 li,
.page-content.page-cms.page-cms-190 p,
.page-content.page-cms.page-cms-190 li,
.page-content.page-cms.page-cms-191 p,
.page-content.page-cms.page-cms-191 li {
  font-size: 16px;
  line-height: 1.72;
  letter-spacing: 0.01em;
  color: #323232;
}

.page-content.page-cms.page-cms-187 h2,
.page-content.page-cms.page-cms-188 h2,
.page-content.page-cms.page-cms-189 h2,
.page-content.page-cms.page-cms-190 h2,
.page-content.page-cms.page-cms-191 h2 {
  margin: 28px 0 14px;
  padding: 10px 14px;
  border-left: 4px solid #183030;
  background: linear-gradient(90deg, rgba(219, 207, 193, 0.28) 0%, rgba(219, 207, 193, 0) 100%);
  font-size: 24px;
  line-height: 1.35;
  font-weight: 700;
  color: #183030;
}

.page-content.page-cms.page-cms-187 section,
.page-content.page-cms.page-cms-188 section,
.page-content.page-cms.page-cms-189 section,
.page-content.page-cms.page-cms-190 section,
.page-content.page-cms.page-cms-191 section {
  margin-top: 18px;
}

.page-content.page-cms.page-cms-187 ol,
.page-content.page-cms.page-cms-188 ol,
.page-content.page-cms.page-cms-189 ol,
.page-content.page-cms.page-cms-190 ol,
.page-content.page-cms.page-cms-191 ol {
  margin: 12px 0 18px;
  padding-left: 22px;
}

.page-content.page-cms.page-cms-187 ol ol,
.page-content.page-cms.page-cms-188 ol ol,
.page-content.page-cms.page-cms-189 ol ol,
.page-content.page-cms.page-cms-190 ol ol,
.page-content.page-cms.page-cms-191 ol ol {
  margin-top: 10px;
}

.page-content.page-cms.page-cms-187 li,
.page-content.page-cms.page-cms-188 li,
.page-content.page-cms.page-cms-189 li,
.page-content.page-cms.page-cms-190 li,
.page-content.page-cms.page-cms-191 li {
  margin-bottom: 8px;
}

.page-content.page-cms.page-cms-187 a,
.page-content.page-cms.page-cms-188 a,
.page-content.page-cms.page-cms-189 a,
.page-content.page-cms.page-cms-190 a,
.page-content.page-cms.page-cms-191 a {
  color: #183030;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  word-break: break-word;
}

.page-content.page-cms.page-cms-187 a:hover,
.page-content.page-cms.page-cms-188 a:hover,
.page-content.page-cms.page-cms-189 a:hover,
.page-content.page-cms.page-cms-190 a:hover,
.page-content.page-cms.page-cms-191 a:hover {
  color: #354d39;
}

.page-content.page-cms.page-cms-187 strong,
.page-content.page-cms.page-cms-188 strong,
.page-content.page-cms.page-cms-189 strong,
.page-content.page-cms.page-cms-190 strong,
.page-content.page-cms.page-cms-191 strong {
  color: #111;
}

@media (max-width: 991px) {
  .page-content.page-cms.page-cms-187,
  .page-content.page-cms.page-cms-188,
  .page-content.page-cms.page-cms-189,
  .page-content.page-cms.page-cms-190,
  .page-content.page-cms.page-cms-191 {
    margin: 18px 14px 34px;
    padding: 24px 18px;
    border-radius: 10px;
  }

  .page-content.page-cms.page-cms-187 h2,
  .page-content.page-cms.page-cms-188 h2,
  .page-content.page-cms.page-cms-189 h2,
  .page-content.page-cms.page-cms-190 h2,
  .page-content.page-cms.page-cms-191 h2 {
    font-size: 20px;
    margin-top: 22px;
  }

  .page-content.page-cms.page-cms-187 p,
  .page-content.page-cms.page-cms-187 li,
  .page-content.page-cms.page-cms-188 p,
  .page-content.page-cms.page-cms-188 li,
  .page-content.page-cms.page-cms-189 p,
  .page-content.page-cms.page-cms-189 li,
  .page-content.page-cms.page-cms-190 p,
  .page-content.page-cms.page-cms-190 li,
  .page-content.page-cms.page-cms-191 p,
  .page-content.page-cms.page-cms-191 li {
    font-size: 15px;
  }
}

/* Traktorserwis: akceptacja regulaminu — odsunięcie etykiety od lewej */
.traktor-serwis-page .form-container section.contact-form.traktor-serwis-form .form-group.row.traktor-serwis-gdpr.traktor-serwis-terms label,
#traktor-serwis .form-container section.contact-form.traktor-serwis-form .form-group.row.traktor-serwis-gdpr.traktor-serwis-terms label {
  padding-left: 32px;
}

/* Finansowanie — dotacje: karty obok siebie, check po lewej (grid unika „pasków” z flex-shrink) */
.financing-grants-section .grants-testimonials,
.financing-grants-section .grants-testimonial,
#module-finansowanie-financing .financing-grants-section .grants-testimonials,
#module-finansowanie-financing .financing-grants-section .grants-testimonial {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.financing-grants-section .grants-testimonial-card,
#module-finansowanie-financing .financing-grants-section .grants-testimonial-card {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  grid-auto-rows: auto !important;
  align-items: start !important;
  column-gap: 12px !important;
  row-gap: 6px !important;
  flex: none !important;
  width: calc(50% - 12px) !important;
  max-width: calc(50% - 12px) !important;
  min-width: 200px !important;
  position: relative !important;
  padding: 14px 16px 16px 14px !important;
  box-sizing: border-box !important;
}

.financing-grants-section .grants-testimonial-card .grants-testimonial-checkmark,
#module-finansowanie-financing .financing-grants-section .grants-testimonial-card .grants-testimonial-checkmark {
  position: static !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  grid-column: 1 !important;
  grid-row: 1 / -1 !important;
  justify-self: start !important;
  align-self: start !important;
  margin: 2px 0 0 !important;
  flex-shrink: 0 !important;
}

.financing-grants-section .grants-testimonial-card .grants-testimonial-value,
#module-finansowanie-financing .financing-grants-section .grants-testimonial-card .grants-testimonial-value {
  grid-column: 2 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-self: stretch !important;
  align-self: start !important;
  line-height: 1.35 !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

.financing-grants-section .grants-testimonial-card .grants-testimonial-text,
#module-finansowanie-financing .financing-grants-section .grants-testimonial-card .grants-testimonial-text {
  grid-column: 2 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-self: stretch !important;
  align-self: start !important;
  text-align: left !important;
  line-height: 1.45 !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

.financing-grants-section .grants-testimonial-card .grants-testimonial-value p,
.financing-grants-section .grants-testimonial-card .grants-testimonial-text p,
#module-finansowanie-financing .financing-grants-section .grants-testimonial-card .grants-testimonial-value p,
#module-finansowanie-financing .financing-grants-section .grants-testimonial-card .grants-testimonial-text p {
  margin: 0 !important;
  padding: 0 !important;
  text-indent: 0 !important;
}

@media (max-width: 767.98px) {
  .financing-grants-section .grants-testimonials,
  .financing-grants-section .grants-testimonial,
  #module-finansowanie-financing .financing-grants-section .grants-testimonials,
  #module-finansowanie-financing .financing-grants-section .grants-testimonial {
    flex-direction: column !important;
  }

  .financing-grants-section .grants-testimonial-card,
  #module-finansowanie-financing .financing-grants-section .grants-testimonial-card {
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* =========================================================
   Sekcja "Opinie o ..." (eKomi widget) - design Figma
   page-product4-opinions
   ========================================================= */
.page-product4-opinions {
  --opinions-lime: #D4F542;
  --opinions-lime-2: #CFE65E;
  --opinions-card-bg: #F4F4F4;
  --opinions-verified: #2BA84A;
  --opinions-star: #F5C048;
  --opinions-star-empty: #E6E6E6;
  --opinions-text: #111;
  --opinions-muted: #6E737A;
  --opinions-border: #E5E5E5;
}

.page-product4-opinions .page-product4-opinions__inner {
  padding: 8px 0 24px;
}

.page-product4-opinions .page-product4-opinions__title {
  margin: 0 0 24px;
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}

/* Override istniejącego white-space:nowrap z .pdesc__h2>span (linia ~27205).
   Wyższa specificity dzięki #product + .product-container2 + .product-spec. */
#product .product-container2 .product-spec .page-product4-opinions__title > span,
#product .product-container2 .pdesc .page-product4-opinions__title > span,
.page-product4-opinions .page-product4-opinions__title > span {
  white-space: normal;
  display: inline;
  flex: 0 1 auto;
  min-width: 0;
  max-width: 100%;
  word-break: break-word;
  overflow-wrap: anywhere;
  hyphens: auto;
}

/* Override flex:1; min-width:200px; height:4px na svg (linia ~27214) */
#product .product-container2 .product-spec .page-product4-opinions__title > svg,
#product .product-container2 .pdesc .page-product4-opinions__title > svg,
.page-product4-opinions .page-product4-opinions__title > svg {
  flex: 0 1 200px;
  width: 200px;
  max-width: 100%;
  min-width: 80px;
  height: auto;
  display: inline-block;
}

@media (max-width: 575.98px) {
  #product .product-container2 .product-spec .page-product4-opinions__title > svg,
  #product .product-container2 .pdesc .page-product4-opinions__title > svg,
  .page-product4-opinions .page-product4-opinions__title > svg {
    display: none;
  }
}

.page-product4-opinions__grid {
  display: grid;
  grid-template-columns: minmax(0, 280px) minmax(0, 1fr);
  gap: 32px;
  align-items: start;
}

@media (max-width: 991.98px) {
  .page-product4-opinions__grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

/* Stan pusty (brak opinii): sidebar widoczny ale tylko ze zdjęciem (bez banera oceny
   i licznika kupujących), prawa kolumna pokazuje minimalne CTA. */
.page-product4-opinions__grid.is-empty .opinions-card__rating,
.page-product4-opinions__grid.is-empty .opinions-card__buyers {
  display: none;
}

/* --- Sidebar (lewa kolumna) --- */
.page-product4-opinions__sidebar {
  display: flex;
  flex-direction: column;
  gap: 14px;
  position: sticky;
  top: 90px;
}

@media (max-width: 991.98px) {
  .page-product4-opinions__sidebar {
    position: static;
  }
}

.page-product4-opinions .opinions-card {
  background: #fff;
  border: 1px solid var(--opinions-border);
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.page-product4-opinions .opinions-card__photo {
  padding: 18px 18px 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 180px;
}

.page-product4-opinions .opinions-card__photo img {
  max-width: 100%;
  max-height: 200px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.page-product4-opinions .opinions-card__rating {
  background: var(--opinions-lime);
  background: linear-gradient(180deg, var(--opinions-lime) 0%, var(--opinions-lime-2) 100%);
  padding: 14px 18px 16px;
  text-align: center;
}

.page-product4-opinions .opinions-card__rating-line {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
}

.page-product4-opinions .opinions-card__score {
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  color: var(--opinions-text);
  letter-spacing: -0.01em;
}

.page-product4-opinions .opinions-card__score-max {
  font-size: 14px;
  font-weight: 500;
  color: var(--opinions-text);
  opacity: 0.8;
  margin-left: -4px;
}

.page-product4-opinions .opinions-card__stars {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-left: 4px;
}

.page-product4-opinions .opinions-card__stars .star,
.page-product4-opinions .star {
  width: 16px;
  height: 16px;
  display: inline-block;
  background: var(--opinions-star-empty);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.3l2.8 5.7 6.3.9-4.5 4.4 1.1 6.3L12 16.9 6.3 19.6 7.4 13.3 2.9 8.9l6.3-.9z'/></svg>") center/contain no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.3l2.8 5.7 6.3.9-4.5 4.4 1.1 6.3L12 16.9 6.3 19.6 7.4 13.3 2.9 8.9l6.3-.9z'/></svg>") center/contain no-repeat;
}

.page-product4-opinions .opinions-card__stars .star--full,
.page-product4-opinions .star--full {
  background: var(--opinions-star);
}

.page-product4-opinions .opinions-card__stars .star--empty,
.page-product4-opinions .star--empty {
  background: var(--opinions-star-empty);
}

.page-product4-opinions .opinions-card__stars .star--half,
.page-product4-opinions .star--half {
  background: linear-gradient(90deg, var(--opinions-star) 0 50%, var(--opinions-star-empty) 50% 100%);
}

.page-product4-opinions .opinions-card__count {
  margin-top: 6px;
  font-size: 14px;
  font-weight: 500;
  color: var(--opinions-text);
}

.page-product4-opinions .opinions-card__buyers {
  text-align: center;
  font-size: 13px;
  color: var(--opinions-muted);
  padding: 0 4px;
}

.page-product4-opinions .opinions-card__buyers strong {
  color: var(--opinions-text);
  font-weight: 700;
}

/* --- Prawa kolumna: widget eKomi --- */
.page-product4-opinions__widget {
  min-width: 0;
}

/* Wymuszamy widoczność kontenera widgetu - eKomi domyślnie ustawia
   display:none przy 0 opiniach. Chcemy mieć zawsze prawą kolumnę. */
.page-product4-opinions__widget .ekomi-widget-container,
.page-product4-opinions__widget #widget-container {
  display: block !important;
}

/* Ukrywamy szablon eKomi <repeat_10> z pustą opinią-wzorcem (jest w DOM,
   ale nie zawiera danych - eKomi używa go tylko jako template). */
.page-product4-opinions__widget #widget-container repeat_10,
.page-product4-opinions__widget #widget-container repeat_10 .review {
  display: none !important;
}

/* Placeholder "Brak opinii" - prosty CTA zgodny z designem Figmy: tekst + przycisk lime. */
.page-product4-opinions__placeholder {
  background: transparent;
  border: none;
  padding: 40px 24px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: var(--opinions-text);
  min-height: 240px;
}

.page-product4-opinions__placeholder-title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.005em;
  color: var(--opinions-text);
  line-height: 1.4;
  max-width: 380px;
}

.page-product4-opinions__placeholder-text {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  color: var(--opinions-muted);
  line-height: 1.5;
  max-width: 420px;
}

@media (max-width: 575.98px) {
  .page-product4-opinions__placeholder {
    padding: 32px 16px;
    min-height: 200px;
  }

  .page-product4-opinions__placeholder-title {
    font-size: 15px;
  }
}

/* Reset box-sizing i typografii wewnątrz widgetu eKomi */
.page-product4-opinions__widget #widget-container,
.page-product4-opinions__widget #widget-container * {
  box-sizing: border-box;
  font-family: inherit;
}

.page-product4-opinions__widget #widget-container {
  font-size: 14px;
  color: var(--opinions-text);
  line-height: 1.5;
}

/* Reset bootstrap-grid eKomi w obrębie widgetu (kolizja z gridem motywu) */
.page-product4-opinions__widget #widget-container .container-fluid,
.page-product4-opinions__widget #widget-container .row,
.page-product4-opinions__widget #widget-container [class*="col-"] {
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  max-width: 100%;
  flex: none;
}

/* --- Ukrycie domyślnego nagłówka i sekcji rating eKomi (mamy własny sidebar) --- */
.page-product4-opinions__widget #widget-container .inscription,
.page-product4-opinions__widget #widget-container .info-zau,
.page-product4-opinions__widget #widget-container .rating-details,
.page-product4-opinions__widget #widget-container .latest-reviews-section {
  display: none !important;
}

/* --- Lista opinii --- */
.page-product4-opinions__widget #widget-container .reviews-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
}

/* --- Pojedyncza karta opinii --- */
.page-product4-opinions__widget #widget-container .review {
  background: var(--opinions-card-bg);
  border-radius: 14px;
  padding: 18px 20px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  cursor: pointer;
  transition: background 0.15s ease;
}

.page-product4-opinions__widget #widget-container .review:hover {
  background: #EEEEEE;
}

/* Gwiazdki w pojedynczej opinii (sprite eKomi) — nadpisanie kolorów */
.page-product4-opinions__widget #widget-container .review .stars-blank {
  position: relative;
  width: 137px;
  height: 22px;
  background: none;
  display: inline-block;
  order: -2;
}

.page-product4-opinions__widget #widget-container .review .stars-blank::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--opinions-star-empty);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") center/contain no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") center/contain no-repeat;
}

.page-product4-opinions__widget #widget-container .review .stars-selected {
  position: absolute;
  top: 0;
  left: 0;
  height: 22px;
  background: var(--opinions-star);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") left center/137px 22px no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") left center/137px 22px no-repeat;
}

/* Data opinii */
.page-product4-opinions__widget #widget-container .review .review_date,
.page-product4-opinions__widget #widget-container .review .date {
  color: var(--opinions-muted);
  font-size: 13px;
  font-weight: 500;
  display: block;
  margin: 0;
  order: -1;
}

/* Treść opinii */
.page-product4-opinions__widget #widget-container .review .review-text {
  color: var(--opinions-text);
  font-size: 14px;
  line-height: 1.55;
  margin: 0;
}

/* Sztuczny badge "Zweryfikowany zakup" — eKomi nie zwraca go w markupie,
   więc dodajemy w prawym górnym rogu karty (zgodnie z designem). */
.page-product4-opinions__widget #widget-container .review {
  position: relative;
  padding-right: 170px;
}

.page-product4-opinions__widget #widget-container .review::after {
  content: "Zweryfikowany zakup";
  position: absolute;
  top: 18px;
  right: 18px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--opinions-verified);
  background: rgba(43, 168, 74, 0.10);
  padding: 5px 11px 5px 26px;
  border-radius: 999px;
  white-space: nowrap;
}

.page-product4-opinions__widget #widget-container .review::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 154px;
  transform: translateY(-50%);
  margin-top: -22px;
  width: 14px;
  height: 14px;
  background: var(--opinions-verified);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19l12-12-1.4-1.4z'/></svg>") center/contain no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19l12-12-1.4-1.4z'/></svg>") center/contain no-repeat;
  z-index: 1;
}

.page-product4-opinions__widget #widget-container .review img,
.page-product4-opinions__widget #widget-container .review iframe,
.page-product4-opinions__widget #widget-container .review video {
  max-width: 100%;
  border-radius: 10px;
  display: block;
  margin-top: 6px;
}

/* "Pokaż więcej opinii" - przycisk pod listą */
.page-product4-opinions__widget #widget-container .readall {
  display: flex;
  justify-content: center;
  margin: 18px 0 0;
  padding: 0;
}

.page-product4-opinions__widget #widget-container .read-more-reviews {
  margin: 0;
  padding: 0;
  text-align: center;
}

.page-product4-opinions__widget #widget-container .read-more-reviews a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 26px;
  background: #fff;
  border: 1px solid var(--opinions-border);
  border-radius: 999px;
  color: var(--opinions-text);
  font-weight: 600;
  font-size: 14px;
  text-transform: none;
  text-decoration: none;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.page-product4-opinions__widget #widget-container .read-more-reviews a:hover {
  border-color: var(--opinions-text);
  background: #fafafa;
  text-decoration: none;
}

.page-product4-opinions__widget #widget-container .read-more-reviews a:active {
  transform: translateY(1px);
}

/* Loader przy "Pokaż więcej" */
.page-product4-opinions__widget #widget-container .read-more-reviews img {
  width: 18px;
  height: 18px;
  margin-left: 8px;
}

/* Ukrycie loga i atrybucji eKomi (mamy własny layout) */
.page-product4-opinions__widget .ekomi-credit,
.page-product4-opinions__widget #widget-container ~ a[href*="ekomi"] {
  display: none !important;
}

/* Responsywność */
@media (max-width: 991.98px) {
  .page-product4-opinions__widget #widget-container .review {
    padding-right: 18px;
  }

  .page-product4-opinions__widget #widget-container .review::after {
    position: static;
    align-self: flex-start;
    margin-top: 4px;
  }

  .page-product4-opinions__widget #widget-container .review::before {
    position: static;
    transform: none;
    margin: 0;
    align-self: flex-start;
    /* Ukryty na mobile - badge ma własną ikonę */
    display: none;
  }

  .page-product4-opinions__widget #widget-container .review::after {
    padding-left: 26px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232BA84A'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19l12-12-1.4-1.4z'/></svg>");
    background-repeat: no-repeat;
    background-position: 8px center;
    background-size: 14px 14px;
    background-color: rgba(43, 168, 74, 0.10);
  }
}

@media (max-width: 575.98px) {
  .page-product4-opinions .opinions-card__photo {
    min-height: 150px;
    padding: 14px 14px 6px;
  }

  .page-product4-opinions .opinions-card__photo img {
    max-height: 160px;
  }

  .page-product4-opinions .opinions-card__score {
    font-size: 24px;
  }

  .page-product4-opinions__widget #widget-container .review {
    padding: 14px 16px;
  }
}
/* === koniec sekcji opinii === */

/* =========================================================
   Sekcja "Opinie naszego sklepu" - eKomi shop-reviews widget
   Renderowana na dole każdej strony kategorii.
   Token widgetu: sf15117062ff49f460325 (smart-feedback shop reviews).
   Layout zgodny z designem Figma: lewa karta podsumowania (Świetnie!,
   gwiazdki, liczba opinii) + pozioma karuzela kart opinii ze strzałkami.
   ========================================================= */
.category-reviews {
  --crv-card-bg: #FFFFFF;
  --crv-card-bg-alt: #F4F4F4;
  --crv-text: #111111;
  --crv-muted: #6E737A;
  --crv-border: #E5E5E5;
  --crv-star: #F5C048;
  --crv-star-empty: #E6E6E6;
  --crv-link: #2BA84A;
  --crv-arrow-bg: #FFFFFF;

  width: 100%;
  margin: 56px 0 64px;
  padding: 0;
  font-family: inherit;
  color: var(--crv-text);
}

.category-reviews .container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 16px;
}

/* Wariant "inline" - sekcja przeniesiona przez JS do miejsca placeholdera
   ("miejsce na opinie") wewnątrz opisu kategorii / bloku CMS. Resetujemy
   wewnętrzny `.container`, bo jesteśmy już w treści szerszego kontenera
   z własnym paddingiem, oraz dziedziczone kolory `text-muted`. */
.category-reviews--inline {
  margin: 24px 0 28px;
  color: var(--crv-text);
}

.category-reviews--inline .container {
  padding: 0;
  max-width: none;
}

/* Cienki separator (1 px, #E5E5E5) bezpośrednio nad sekcją opinii.
   16 px odstępu nad linią i 16 px pod linią - przed `.category-reviews__block`. */
.category-reviews__divider {
  display: block;
  width: 100%;
  height: 1px;
  margin: 16px 0;
  border: 0;
  overflow: visible;
}

.category-reviews__header {
  margin: 0 0 22px;
  text-align: left;
}

.category-reviews__title {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--crv-text);
  line-height: 1.25;
}

/* Wrapper for the eKomi widget output. Resets float from legacy markup. */
.category-reviews__block {
  width: 100%;
  float: none;
  position: relative;
  background: transparent;
}

/* Force the eKomi container visible (eKomi sometimes ships display:none until ready). */
.category-reviews__widget,
.category-reviews #widget-container.ekomi-widget-container {
  display: block !important;
  width: 100%;
  min-height: 220px;
  font-size: 14px;
  color: var(--crv-text);
  line-height: 1.5;
}

.category-reviews__widget *,
.category-reviews #widget-container * {
  box-sizing: border-box;
  font-family: inherit;
}

/* Reset Bootstrap-like grid that eKomi injects (kolizja z gridem motywu). */
.category-reviews #widget-container .container-fluid,
.category-reviews #widget-container .row,
.category-reviews #widget-container [class*="col-"] {
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
}

/* Ukrycie szablonu repeat eKomi (template-only nodes bez danych). */
.category-reviews #widget-container repeat_10,
.category-reviews #widget-container repeat_10 .review {
  display: none !important;
}

/* Ukrycie domyślnego, dolnego linka "atrybucji" eKomi - mamy własny layout. */
.category-reviews .category-reviews__credit,
.category-reviews #widget-container ~ a[href*="ekomi"] {
  display: none !important;
}

/* ---- Lewa karta podsumowania ("Świetnie! / 5 gwiazdek / Na podstawie X opinii") ---- */
.category-reviews #widget-container .info-zau,
.category-reviews #widget-container .rating-details,
.category-reviews #widget-container .latest-reviews-section,
.category-reviews #widget-container .summary,
.category-reviews #widget-container .summary-block,
.category-reviews #widget-container .ekomi-summary {
  background: var(--crv-card-bg);
  border: 1px solid var(--crv-border);
  border-radius: 16px;
  padding: 22px 22px 18px;
  color: var(--crv-text);
}

.category-reviews #widget-container .inscription,
.category-reviews #widget-container .rating-title,
.category-reviews #widget-container .summary-title {
  font-size: 22px;
  font-weight: 700;
  margin: 0 0 12px;
  letter-spacing: -0.01em;
  color: var(--crv-text);
}

.category-reviews #widget-container .summary-text,
.category-reviews #widget-container .rating-description,
.category-reviews #widget-container .based-on,
.category-reviews #widget-container .reviews-count-text {
  font-size: 14px;
  color: var(--crv-muted);
  line-height: 1.5;
  margin: 12px 0 0;
}

.category-reviews #widget-container a.read-all,
.category-reviews #widget-container .read-all,
.category-reviews #widget-container .summary-link,
.category-reviews #widget-container .summary a {
  color: var(--crv-link);
  text-decoration: underline;
  font-weight: 500;
}

.category-reviews #widget-container a.read-all:hover,
.category-reviews #widget-container .read-all:hover,
.category-reviews #widget-container .summary a:hover {
  text-decoration: none;
}

/* ---- Karty opinii w karuzeli ---- */
.category-reviews #widget-container .reviews-stack,
.category-reviews #widget-container .latest-reviews,
.category-reviews #widget-container .reviews-carousel {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 16px;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.category-reviews #widget-container .reviews-stack::-webkit-scrollbar,
.category-reviews #widget-container .latest-reviews::-webkit-scrollbar,
.category-reviews #widget-container .reviews-carousel::-webkit-scrollbar {
  display: none;
}

.category-reviews #widget-container .review {
  background: var(--crv-card-bg);
  border: 1px solid var(--crv-border);
  border-radius: 14px;
  padding: 18px 20px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 0 0 240px;
  min-width: 220px;
  max-width: 280px;
  scroll-snap-align: start;
}

.category-reviews #widget-container .review .review_date,
.category-reviews #widget-container .review .date {
  color: var(--crv-muted);
  font-size: 13px;
  font-weight: 500;
  margin: 0;
  order: -2;
}

/* Gwiazdki w karcie opinii (sprite eKomi -> mask na żółto). */
.category-reviews #widget-container .review .stars-blank {
  position: relative;
  width: 110px;
  height: 18px;
  display: inline-block;
  background: none;
  order: -1;
}

.category-reviews #widget-container .review .stars-blank::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--crv-star-empty);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") center/contain no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") center/contain no-repeat;
}

.category-reviews #widget-container .review .stars-selected {
  position: absolute;
  top: 0;
  left: 0;
  height: 18px;
  background: var(--crv-star);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") left center/110px 18px no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 137 22'><g fill='black'><path d='M11 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L11 15.3 5.6 18.2l1.1-6.1L2.3 7.9l6-.9z'/><path d='M38.4 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L38.4 15.3 33 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M65.8 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L65.8 15.3 60.4 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M93.2 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L93.2 15.3 87.8 18.2l1.1-6.1-4.4-4.2 6-.9z'/><path d='M120.6 1.5l2.7 5.5 6 .9-4.4 4.2 1.1 6.1L120.6 15.3 115.2 18.2l1.1-6.1-4.4-4.2 6-.9z'/></g></svg>") left center/110px 18px no-repeat;
}

/* Treść opinii i podpis klienta */
.category-reviews #widget-container .review .review-text {
  color: var(--crv-text);
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.category-reviews #widget-container .review .author,
.category-reviews #widget-container .review .reviewer-name,
.category-reviews #widget-container .review .review-author,
.category-reviews #widget-container .review .signature {
  margin-top: auto;
  font-size: 13px;
  font-weight: 500;
  color: var(--crv-text);
}

/* Strzałki nawigacji karuzeli (jeśli eKomi je renderuje) */
.category-reviews #widget-container .carousel-arrow,
.category-reviews #widget-container .arrow-prev,
.category-reviews #widget-container .arrow-next,
.category-reviews #widget-container .nav-prev,
.category-reviews #widget-container .nav-next {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--crv-arrow-bg);
  border: 1px solid var(--crv-border);
  color: var(--crv-text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.category-reviews #widget-container .carousel-arrow:hover,
.category-reviews #widget-container .arrow-prev:hover,
.category-reviews #widget-container .arrow-next:hover {
  border-color: var(--crv-text);
  background: #fafafa;
}

.category-reviews #widget-container .carousel-arrow:active,
.category-reviews #widget-container .arrow-prev:active,
.category-reviews #widget-container .arrow-next:active {
  transform: translateY(1px);
}

/* "Pokaż więcej / czytaj wszystkie" - przycisk pod listą (jeśli widget go zwraca) */
.category-reviews #widget-container .readall {
  display: flex;
  justify-content: center;
  margin: 18px 0 0;
}

.category-reviews #widget-container .read-more-reviews a,
.category-reviews #widget-container .readall a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 26px;
  background: #fff;
  border: 1px solid var(--crv-border);
  border-radius: 999px;
  color: var(--crv-text);
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.category-reviews #widget-container .read-more-reviews a:hover,
.category-reviews #widget-container .readall a:hover {
  border-color: var(--crv-text);
  background: #fafafa;
  text-decoration: none;
}

/* Responsywność */
@media (max-width: 991.98px) {
  .category-reviews {
    margin: 40px 0 48px;
  }

  .category-reviews__title {
    font-size: 20px;
  }

  .category-reviews #widget-container .review {
    flex: 0 0 220px;
    min-width: 200px;
  }
}

@media (max-width: 575.98px) {
  .category-reviews {
    margin: 32px 0 40px;
  }

  .category-reviews .container {
    padding: 0 12px;
  }

  .category-reviews #widget-container .review {
    flex: 0 0 78%;
    min-width: 78%;
    padding: 14px 16px;
  }
}
/* === koniec sekcji opinii sklepu na kategoriach === */

/* === chwilowe ukrycie kolumny "Usługi" w stopce (displayFooterMenu2) === */
#footer .footer-menu-item.displayFooterMenu2,
.footer-menu-item.displayFooterMenu2 {
  display: none !important;
}
/* === koniec ukrycia kolumny "Usługi" === */

