:root {
  --color-primary: #f58936;
  --color-primary-active: color-mix(in srgb, var(--color-primary), black 10%);
  --color-primary-inactive: color-mix(in srgb, var(--color-primary), white 50%);
  --color-secondary: #333;
  --color-secondary-active: #000;
  --color-background-primary: #fff;
  --color-background-secondary: #f5f5f5;
  --color-light: #eee;
  --color-light-active: #fff;
  --color-dark: #333;
  --color-danger: #dc3545;
}
:root[data-theme="dark"] {
  --color-background-primary: #37393b;
  --color-secondary: #eeeeee;
  --color-secondary-active: #fff;
  --color-background-secondary: #333;
  --color-light: #333;
  --color-light-active: #000;
  --color-dark: #f5f5f5;
}
[data-theme="dark"] body {
  color: var(--color-secondary);
  background-color: var(--color-background-primary);
}
@view-transition {
  navigation: auto;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
  text-wrap: balance;
  -webkit-font-smoothing: antialiased;
}
.page-box {
  padding: 40px 0;
}
.background-primary {
  background-color: var(--color-background-primary);
  padding: 10px 20px;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
  margin-bottom: 30px;
}
.background-secondary {
  background-color: var(--color-background-secondary);
}
.display-1 {
  font-size: 2.5rem;
  margin-bottom: 1.5rem;
}
.display-2 {
  font-size: 2rem;
  margin-bottom: 1.2rem;
}
.display-3 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  font-weight: 400;
}
.display-4 {
  font-size: 1.1rem;
  font-weight: 500;
}
.btn,
.form-control,
.form-select {
  border-radius: 3px;
}
.btn-primary {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: #333;
}
.btn-primary:hover {
  background-color: var(--color-primary-active);
  border-color: var(--color-primary-active);
  color: #000;
}
.btn-primary:not(:disabled):not(.disabled):focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(245, 137, 54, 0.5);
  background-color: var(--color-primary-active);
  border-color: var(--color-primary-active);
}
.btn-primary:not(:disabled):not(.disabled):active {
  background-color: var(--color-primary-active);
  border-color: var(--color-primary-active);
}
.btn-primary.disabled,
.btn-primary:disabled {
  background-color: var(--color-primary-inactive);
  border-color: var(--color-primary-inactive);
}
.btn-secondary {
  background-color: #222;
  border-color: #000;
}
.btn-secondary:hover {
  background-color: #000;
  border-color: #000;
}
.btn-secondary:not(:disabled):not(.disabled):focus {
  box-shadow: 0 0 0 0.2rem rgba(34, 34, 34, 0.5);
  background-color: #000;
  border-color: #000;
}
.btn-secondary:not(:disabled):not(.disabled):active {
  background-color: #4a4a4a;
  border-color: #4a4a4a;
}
.btn-link {
  color: var(--color-primary);
}
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  color: var(--color-primary-active) !important;
}
.btn-link:focus {
  box-shadow: none;
}
.btn-fb {
  background-color: #4267b2;
  color: #fff;
}
.btn-fb:hover,
.btn-fb:focus,
.btn-fb:active {
  background-color: rgb(46, 83, 156);
  color: #fff;
  box-shadow: 0 0 0 0.2rem rgba(46, 83, 156, 0.5);
}
.button-search-sticky-bottom {
  bottom: 10px;
}
.color-primary {
  color: var(--color-primary);
}
a.color-primary:hover {
  color: var(--color-primary-active);
}
.color-secondary {
  color: var(--color-secondary);
}
a.color-secondary:hover {
  color: var(--color-secondary-active);
}
.form-control:focus {
  box-shadow: 0 0 0 0.2rem rgba(245, 137, 54, 0.5);
  border-color: var(--color-primary);
}
.pagination {
  overflow-y: auto;
}
.page-link {
  color: var(--color-secondary);
  background-color: var(--color-background-primary);
}
.page-link:focus,
.page-link:hover {
  color: var(--color-secondary-active);
  background-color: var(--color-background-secondary);
}
.page-item.active .page-link {
  color: var(--color-secondary);
  background-color: var(--color-background-secondary);
  border-color: var(--color-secondary);
}
.disabled > .page-link,
.page-link.disabled {
  color: var(--color-secondary);
  background-color: var(--color-background-third);
}
.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--color-secondary);
  color: var(--color-light);
}
.social-share i {
  color: var(--color-secondary);
  font-size: 1.25rem;
  padding: 0 14px 7px 0;
}
.social-share i:hover {
  color: var(--color-secondary-active);
}
.content img {
  max-width: 100%;
  height: auto !important;
}
.is-loading {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.5);
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  font-size: 1.8rem;
  padding: 10px;
}
.mb--1px {
  margin-bottom: -1px;
}
.grecaptcha-badge {
  visibility: hidden;
}
.breadcrumb {
  overflow-y: auto;
}
.breadcrumb-item {
  white-space: nowrap;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: none;
}
[v-cloak] {
  visibility: hidden;
}
a {
  text-decoration: none;
}
.ads * {
  max-width: 100%;
}
.ads img {
  max-width: 100%;
  height: auto !important;
}
.content-auto {
  content-visibility: auto;
}
.order-6 {
  order: 6 !important;
}
.order-7 {
  order: 7 !important;
}
.order-8 {
  order: 8 !important;
}
.order-10 {
  order: 10 !important;
}
.order-11 {
  order: 11 !important;
}
@media (min-width: 768px) {
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-7 {
    order: 7 !important;
  }
  .order-md-11 {
    order: 11 !important;
  }
}
@media (min-width: 992px) {
  .order-lg-12 {
    order: 12 !important;
  }
}
@media (max-width: 992px) {
  .breadcrumb {
    flex-wrap: nowrap;
  }
  .background-primary {
    padding-inline: 10px;
  }
}
@media (max-width: 768px) {
  .display-1 {
    font-size: 1.8rem;
    margin-bottom: 0.9rem;
  }
  .display-2 {
    font-size: 1.6rem;
  }
  .display-3 {
    font-size: 1.4rem;
  }
  .display-4 {
    font-size: 1rem;
  }
  .page-box {
    padding: 20px 0;
  }
}
/* navbar */
.navbar {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
}
.navbar-brand {
  max-width: calc(100% - 80px);
  color: var(--color-secondary);
}
.navbar-brand img {
  max-height: 50px;
  margin-top: -2px;
  margin-bottom: -2px;
}
.nav-link {
  margin: 0 5px;
  color: var(--color-secondary);
}
.nav-link .fas,
.dropdown-item .fas,
.zoom-scale {
  transition: transform 0.15s;
}
.nav-link:hover .fas,
.dropdown-item:hover .fas,
.zoom-scale:hover {
  transform: scale(1.15);
}
.nav-link-avatar {
  height: 32px;
  margin-top: -8px;
  max-width: 100px;
}
.nav-link:hover,
.nav-link:active .nav-link:focus {
  color: var(--color-dark);
}
.navbar-nav .fas {
  width: 20px;
  text-align: center;
}
.custom-toggler {
  border: none;
  background: transparent;
  box-shadow: none !important;
  height: 22px;
}
.custom-toggler-icon {
  width: 30px;
  height: 2px;
  background-color: var(--color-secondary);
  display: block;
  position: relative;
  transition: all 0.3s ease;
}
.custom-toggler-icon::before,
.custom-toggler-icon::after {
  content: "";
  width: 30px;
  height: 2px;
  background-color: var(--color-secondary);
  position: absolute;
  left: 0;
  transition: all 0.3s ease;
}
.custom-toggler-icon::before {
  top: -8px;
}
.custom-toggler-icon::after {
  top: 8px;
}
.navbar-toggler:not(.collapsed) .custom-toggler-icon {
  transform: rotate(45deg);
}
.navbar-toggler:not(.collapsed) .custom-toggler-icon::before {
  transform: rotate(90deg);
  top: 0;
}
.navbar-toggler:not(.collapsed) .custom-toggler-icon::after {
  transform: rotate(90deg);
  top: 0;
}
@media (max-width: 768px) {
  #navbar .navbar-nav {
    padding-top: 0;
  }
  #navbar .dropdown-toggle {
    display: none;
  }
  #navbar .dropdown-menu {
    display: block;
    border: none;
    padding: 0;
  }
  #navbar .dropdown-item,
  .navbar .navbar-nav .nav-link {
    margin: 0 5px;
    padding: 10px;
    color: var(--color-secondary);
    width: 100%;
    text-align: left;
    transition:
      color 0.15s ease-in-out,
      background-color 0.15s ease-in-out,
      border-color 0.15s ease-in-out;
  }
  #navbar .dropdown-item:hover,
  .navbar .navbar-nav .nav-link:hover {
    background-color: var(--color-light-active);
  }
  #navbar .dropdown-item.active,
  .navbar .navbar-nav .active .nav-link {
    background-color: var(--color-secondary);
    color: var(--color-light);
  }
  .navbar .navbar-nav .active .nav-link .color-secondary {
    color: var(--color-light);
  }
}
/* home */
.home__search .input-group > .form-control:last-of-type {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.home__categories.active {
  background-color: var(--color-background-secondary);
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
  border: solid 1px rgba(0, 0, 0, 0.2);
  border-bottom: none;
}
.home__categories img {
  max-height: 90px;
  transition: transform 0.1s;
}
.home__categories img:hover {
  transform: scale(1.1);
}
.home__categories a {
  color: var(--color-secondary);
  font-weight: 500;
}
.home__subcategories {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
  border: solid 1px rgba(0, 0, 0, 0.2);
  background-color: var(--color-background-secondary);
}
.home__subcategories__list a:hover {
  text-decoration: none;
  background-color: var(--color-secondary);
  color: var(--color-light-active);
}
.classified-small {
  background-color: var(--color-background-primary);
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  border: solid 1px transparent;
  transition: box-shadow 0.15s;
}
.classified-small--promoted {
  border-color: var(--color-primary);
  box-shadow: 2px 2px 3px rgba(245, 137, 54, 0.5);
}
.classified-small:hover {
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
}
.classified-small--promoted:hover {
  box-shadow: 3px 3px 3px rgba(245, 137, 54, 0.6);
}
.classified-small .bar-promoted {
  position: absolute;
  background-color: var(--color-primary);
  color: #000;
  text-align: center;
  transform: rotate(-45deg);
  z-index: 20;
  font-size: 0.75rem;
  width: 115px;
  left: -28px;
  top: 20px;
  font-weight: bold;
}
.classified-small__photo {
  height: auto;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  transition: transform 0.15s;
}
.classified-small__photo:hover {
  transform: scale(1.05);
}
.classified-small .carousel-indicators {
  margin-bottom: 0.4rem;
}
@media (max-width: 768px) {
  .home__categories {
    font-size: 0.9em;
  }
  .home__categories img {
    max-height: 40px;
  }
}
/* add / edit classified */
#add_classified label:not(.form-check-label).required:after,
#add_classified legend.required:after {
  content: "*";
  color: var(--color-danger);
  margin-left: 5px;
}
#add_classified label,
#add_classified legend {
  font-size: 1.05rem;
}
#add_classified hr {
  margin: 30px 0;
}
#add_classified #classified_description {
  height: 150px;
}
.add_classified__photo {
  width: 170px;
  height: 170px;
  border-radius: 3px;
  overflow: hidden;
}
.add_classified__photo:first-child {
  border: solid 1px var(--color-danger);
}
.add_classified__photo img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.add_classified__photo__buttons {
  visibility: hidden;
  transition: all 0.15s;
  background-color: rgba(0, 0, 0, 0.6);
}
.add_classified__photo__buttons .btn {
  background-color: #fff;
  border-radius: 50%;
  opacity: 0.7;
  width: 40px;
  height: 40px;
}
.add_classified__photo__buttons .btn:hover {
  opacity: 1;
}
.add_classified__photo:hover .add_classified__photo__buttons,
.add_classified__photo:active .add_classified__photo__buttons,
.add_classified__photo:focus .add_classified__photo__buttons {
  visibility: visible;
}
@media (max-width: 768px) {
  .add_classified__photo {
    width: 130px;
    height: 130px;
  }
}
/* classified */
.classified__name {
  max-width: calc(100% - 50px);
}
#classified__photos__slider_bottom .swiper-slide {
  height: 80px;
  width: auto;
}
#classified__photos__slider .swiper-button-prev,
#classified__photos__slider .swiper-button-next {
  color: #fff;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
}
#classified__photos__slider img {
  height: auto;
  width: auto;
  margin: auto;
  display: block;
}
#classified__photos__slider_bottom img:hover {
  cursor: pointer;
}
.classified__panel .table tr td:first-child {
  width: 130px;
}
.classified__panel .table tr td {
  word-break: break-word;
}
.classified__avatar {
  max-height: 100px;
}
.classified__filters .table tr th:first-child {
  min-width: 180px;
}
.classified__filters .table tr td:last-child {
  width: 100%;
}
#classified__favourite {
  width: 50px;
  height: 50px;
}
#classified .background-primary .display-3 {
  border-left: 3px solid var(--color-primary);
  padding-left: 10px;
}
.classified__comment {
  background-color: var(--color-background-secondary);
  border-radius: 4px;
  padding: 10px 14px;
  margin-bottom: 10px;
}
.classified__comment p:last-of-type {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  #classified__panel,
  .classified__filters .table,
  #classified .background-primary p,
  #classified .background-primary .table {
    font-size: 0.95rem;
  }
  .classified__filters .table tr th:first-child {
    min-width: 130px;
  }
}
@media (max-width: 576px) {
  #classified {
    padding: 0;
  }
  #classified__photos__slider_bottom .swiper-slide {
    height: 50px;
  }
  #classified__photos__slider_bottom .swiper-slide img {
    height: 100%;
  }
  .classified__filters .table tr td:first-child {
    min-width: 120px;
  }
}
/* classifieds */
.search-classified__categories {
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
}
.search-classified__categories--top {
  color: #eee;
  background-color: #333;
}
.search-classified__categories__top__icons a {
  color: #eee;
  font-size: 1.2rem;
  margin: 0 5px;
}
.search-classified__categories li a {
  display: block;
  padding: 5px;
  color: var(--color-secondary);
  background-color: var(--color-background-primary);
  font-size: 0.95rem;
}
.search-classified__categories li a:hover,
.search-classified__categories li a.active {
  color: var(--color-light-active);
  background-color: var(--color-secondary);
  text-decoration: none;
}
.search-classified__categories li a img {
  margin-right: 5px;
  max-height: 32px;
}
.classifieds {
  background-color: var(--color-background-primary);
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  transition: box-shadow 0.15s;
}
.classifieds:hover {
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
}
.classifieds__name {
  font-size: 1.4rem;
  line-height: 1.2;
}
.classifieds__photo {
  object-fit: cover;
  height: 100%;
}
.classifieds__price {
  font-size: 1.25rem;
  line-height: 17px;
  text-align: right;
  font-weight: 400;
  margin: 5px;
}
.classifieds--promoted {
  border: solid 1px var(--color-primary);
  box-shadow: 2px 2px 3px rgba(245, 137, 54, 0.5);
}
.classifieds--promoted:hover {
  box-shadow: 3px 3px 3px rgba(245, 137, 54, 0.6);
}
.classifieds .bar-promoted {
  position: absolute;
  background-color: var(--color-primary);
  color: #000;
  text-align: center;
  transform: rotate(-45deg);
  z-index: 20;
  font-size: 0.75rem;
  width: 115px;
  left: -28px;
  top: 20px;
  font-weight: bold;
}
.classifieds-breadcrumb {
  background-color: var(--color-background-primary);
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
}
@media (max-width: 768px) {
  .classifieds__search label {
    margin-bottom: 0.1rem;
  }
  .classifieds__price {
    font-size: 1rem;
    margin: 0 0 8px;
  }
  .classifieds__name {
    font-size: 1.1rem;
  }
  .classifieds .small {
    font-size: 0.75rem;
  }
}
@media (max-width: 576px) {
  .classifieds__description__top {
    flex-direction: column;
  }
  .classifieds__price {
    text-align: left;
  }
}
/* register */
.register {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
  background-color: var(--color-background-primary);
  border-radius: 0;
}
.register--header a {
  padding: 10px;
  text-align: center;
  flex: 1 100%;
  background-color: var(--color-background-secondary);
}
.register--header a.active {
  background-color: var(--color-background-primary);
}
.register__preview-password {
  position: absolute;
  right: 10px;
  top: 30px;
  opacity: 0.6;
}
.register__preview-password:hover,
.register__preview-password:focus,
.register__preview-password.active {
  opacity: 1;
}
/* account settings */
.account-settings__avatar {
  max-height: 100px;
}
#user_data_description {
  height: 150px;
}
/* blog */
.blog_thumb {
  height: 200px;
  width: 100%;
  object-fit: cover;
}
/* contact */
#contact_message {
  height: 150px;
}
/* footer */
.footer {
  background-color: #333;
  color: #ddd;
}
.footer a {
  color: #eee;
}
.footer a:hover {
  color: #fff;
}
/* back to top */
#back_to_top {
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 100;
  opacity: 0.5;
  transition: all 0.4s;
  font-size: 1.5rem;
  background-color: var(--color-primary);
  color: #fff !important;
  width: 38px;
  height: 38px;
}
#back_to_top:hover {
  opacity: 0.9;
}
#back_to_top.back_to_top_hidden {
  visibility: hidden;
  opacity: 0;
}
#back_to_top i {
  position: relative;
  top: -5px;
  left: -6px;
}
/* dark mode */
[data-theme="dark"] .footer {
  background-color: #222;
}
[data-theme="dark"] .table > :not(caption) > * > * {
  color: var(--color-secondary);
  background-color: transparent;
}
[data-theme="dark"] .list-group-item {
  color: var(--color-secondary);
  background-color: var(--color-background-secondary);
}
[data-theme="dark"] .dropdown-menu {
  background-color: var(--color-background-primary);
}
[data-theme="dark"] .text-danger {
  color: #f88682 !important;
}
[data-theme="dark"] .is-loading {
  background-color: rgba(0, 0, 0, 0.5);
}
.home-search-combined{display:flex;flex-wrap:nowrap;margin:0;border:1px solid #ced4da;border-radius:8px;background:#fff;overflow:hidden}
.home-search-combined>.home-search-keywords{flex:1 1 35%;min-width:0;margin:0;padding:0;border-right:1px solid #ddd}
.home-search-keywords .input-group{flex-direction:row-reverse}
.home-search-keywords .form-control,.home-search-keywords .input-group-text{border:0;box-shadow:none}
.home-search-combined>.home-search-region{flex:2 1 50%;min-width:0;margin:0;padding:0}
.home-search-region .input-group{height:100%;display:flex;flex-wrap:nowrap}
.home-search-region select{flex:1 1 0;min-width:0;width:auto;border:0;border-radius:0}
.home-location-button{white-space:nowrap;border:0;border-left:1px solid #ddd;border-radius:0}
.home-search-combined>.home-search-submit-wrap{flex:0 0 125px;margin:0;padding:0}
.home-search-submit-wrap .btn{width:100%;height:100%;border-radius:0}
@media(max-width:767.98px){
.home-search-combined{flex-direction:column}
.home-search-combined>.home-search-keywords,.home-search-combined>.home-search-region,.home-search-combined>.home-search-submit-wrap{flex:auto;width:100%;border-right:0;border-bottom:1px solid #ddd}
.home-search-region .input-group{flex-wrap:wrap}
.home-search-region select,.home-location-button{width:100%;min-height:44px}
.home-search-region select{flex:auto;border-bottom:1px solid #eee}
.home-location-button{border:0}
.home-search-submit-wrap .btn{min-height:46px}
}

/* Nowoczesna, autorska wyszukiwarka ogloszen */
.home-search-combined {
  border: 1px solid #d4dadd;
  border-radius: 12px;
  box-shadow: 0 5px 20px rgba(0,0,0,.09);
  background: #fff;
}
.home-search-keywords .form-control {
  font-size: 16px;
  padding: 14px 12px;
  background: transparent;
}
.home-search-keywords .input-group-text {
  background: transparent;
  color: var(--color-secondary);
  padding: 0 16px;
  cursor: pointer;
}
.home-search-region select,
.home-location-button {
  background-color: #fff;
  color: var(--color-secondary);
}
.home-search-region select:focus {
  box-shadow: none;
}
.home-location-button {
  padding: 0 14px;
}
.home-search-submit-wrap .btn {
  font-weight: 700;
  letter-spacing: .3px;
}
.home-search-combined:focus-within {
  border-color: var(--color-secondary);
  box-shadow: 0 0 0 3px rgba(0,0,0,.06);
}
@media(max-width:767.98px) {
  .home-search-combined {
    border-radius: 10px;
  }
  .home-search-keywords .form-control {
    min-height: 48px;
  }
}

.home-search-region { position: relative; }
.home-location-message {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 20;
  margin: 0;
  padding: 5px 8px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,.08);
}
.home-location-button { min-width: 165px; }
.home-search-region { min-height: 50px; }
.home-search-region .input-group,
.home-search-region select { min-height: 50px; }
.home-location-button { min-width: 165px; }





/* Autorski wyglad strony ogloszenia */
.classified-show-layout {
  align-items: start;
  row-gap: 22px;
}
.classified-show-layout > .col-md-6 { min-width: 0; }
#classified__photos__slider {
  padding: 8px;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  box-shadow: 0 5px 20px rgba(0,0,0,.06);
  overflow: hidden;
}
#classified__photos__slider .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(280px, 38vw, 500px);
  overflow: hidden;
  border-radius: 10px;
  background: #f7f8fa;
}
#classified__photos__slider .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#classified__photos__slider_bottom { margin-top: 12px; }
#classified__photos__slider_bottom img {
  width: 100%;
  height: 80px;
  object-fit: cover;
  border-radius: 8px;
}
#classified__panel {
  padding: 22px;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  box-shadow: 0 5px 20px rgba(0,0,0,.06);
}
#classified__panel .btn {
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  font-weight: 600;
}
#classified__panel .table-responsive {
  margin-top: 18px;
  padding-top: 8px;
  border-top: 1px solid #e5e7eb;
}
#classified__panel .table th {
  width: 34%;
  color: #626b75;
  font-weight: 600;
  vertical-align: top;
}
#classified__panel .table td { overflow-wrap: anywhere; }
@media(max-width:767.98px) {
  #classified__panel { margin-top: 8px; padding: 16px; }
  #classified__photos__slider .swiper-slide { height: 68vw; max-height: 420px; }
}

.classified-show-title {
  font-size: clamp(1.35rem, 2.2vw, 1.9rem);
  line-height: 1.3;
  font-weight: 750;
  color: var(--color-secondary);
  margin-bottom: 16px;
  overflow-wrap: anywhere;
}
.classified-show-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 0;background:#fff;border:1px solid #e5e7eb;border-bottom:0;border-radius:16px 16px 0 0;box-shadow:0 5px 20px rgba(0,0,0,.06)}
.classified-show-heading .classified-show-title{flex:1;min-width:0;margin:0;font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.3;overflow-wrap:anywhere}
.classified-show-heading #classified__favourite{flex:0 0 auto}
.classified-show-heading #classified__favourite button{display:flex;align-items:center;gap:5px;border:1px solid #e5e7eb;border-radius:10px;padding:8px 10px;margin:0;white-space:nowrap}
#classified__panel{border-top:0!important;border-radius:0 0 16px 16px;margin-top:0}
@media(max-width:480px){.classified-show-heading{padding:14px 12px 0;gap:6px}.classified-show-heading #classified__favourite button{padding:7px}}

@media (max-width: 767.98px) {
  .classified-show-heading {
    display: flex !important;
    align-items: flex-start;
    flex-wrap: nowrap;
  }
  .classified-show-heading #classified__favourite {
    display: block !important;
    visibility: visible !important;
    flex: 0 0 auto;
    position: relative;
    z-index: 5;
  }
  .classified-show-heading #classified__favourite button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
  }
}

.classified-show-heading #classified__favourite button {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 0 !important;
  padding: 8px !important;
}
.classified-show-heading #classified__favourite button i {
  font-size: 24px !important;
}

.classified-show-heading {
  align-items: center !important;
}
.classified-show-heading #classified__favourite {
  align-self: center;
  margin: 0;
}
.classified-show-heading #classified__favourite button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 4px !important;
}

/* Wyrownanie ikon udostepniania obok WhatsApp */
.social-share {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.social-share > a,
.social-share > button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  vertical-align: middle;
}
.social-share > a i,
.social-share > button i {
  display: block;
  line-height: 1;
  font-size: 18px;
}

/* Zaokraglone sekcje ogloszenia */
.classified-section-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 20px;
  margin-bottom: 18px;
  box-shadow: 0 4px 16px rgba(0,0,0,.04);
}
.classified-section-card > h3 {
  margin-top: 0;
  font-size: 1.35rem;
}
.classified-description-card p:last-child {
  margin-bottom: 0;
  line-height: 1.75;
  overflow-wrap: anywhere;
}
.classified-map-card iframe {
  display: block;
  border-radius: 12px;
}
#classified__panel .table-responsive {
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 10px;
  background: #fff;
}
#classified__panel .table-responsive .table {
  margin-bottom: 0;
}
#classified__panel .table-responsive tr + tr {
  border-top: 1px solid #eef0f2;
}
@media(max-width:767.98px) {
  .classified-section-card { padding: 15px; border-radius: 13px; }
}

/* Formularze kontaktowe i podobne ogloszenia */
.classified-contact-card form {
  margin-bottom: 0;
}
.classified-contact-card .form-control,
.classified-contact-card .form-select {
  border-radius: 10px;
}
.classified-contact-card textarea.form-control {
  min-height: 120px;
}
.classified-contact-card button[type="submit"],
.classified-contact-card input[type="submit"] {
  border-radius: 10px;
  min-height: 44px;
}
.classified-similar-card > h3 {
  margin-top: 0;
  margin-bottom: 18px;
}
.classified-similar-card {
  overflow: hidden;
}

/* Tabela szczegolow ogloszenia */
.classified__filters {
  overflow: hidden;
}
.classified__filters > h3 {
  margin-top: 0;
  margin-bottom: 16px;
}
.classified__filters table {
  margin-bottom: 0;
  border-collapse: separate;
  border-spacing: 0;
}
.classified__filters table th,
.classified__filters table td {
  padding: 12px 14px;
  vertical-align: top;
  overflow-wrap: anywhere;
}
.classified__filters table tr + tr th,
.classified__filters table tr + tr td {
  border-top: 1px solid #eef0f2;
}

/* Responsywny uklad sekcji ogloszenia */
.classified-content-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
  margin-top: 18px;
}
.classified-content-grid > .classified-section-card {
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  align-self: stretch;
}
.classified-content-grid .classified__filters {
  grid-column: 1;
  grid-row: 1;
}
.classified-content-grid .classified-video-card {
  grid-column: 2;
  grid-row: 1;
}
.classified-content-grid .classified-description-card {
  grid-column: 1;
  grid-row: 2;
}
.classified-content-grid .classified-map-card {
  grid-column: 2;
  grid-row: 2;
}
.classified-content-grid .classified-contact-card {
  grid-row: 3;
}
.classified-content-grid .classified-comments-card {
  grid-column: 1 / -1;
}
.classified-content-grid:not(:has(.classified-video-card)) .classified-description-card {
  grid-column: 2;
  grid-row: 1;
}
.classified-content-grid:not(:has(.classified-video-card)) .classified-map-card {
  grid-column: 1;
  grid-row: 2;
}
.classified-content-grid:not(:has(.classified-video-card)) .classified-contact-card {
  grid-row: 2;
}
.classified-content-grid:has(.classified-video-card):not(:has(.classified-map-card)) .classified-contact-card {
  grid-row: 2;
}
@media (max-width: 767.98px) {
  .classified-content-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }
  .classified-content-grid > .classified-section-card,
  .classified-content-grid .classified__filters,
  .classified-content-grid .classified-video-card,
  .classified-content-grid .classified-description-card,
  .classified-content-grid .classified-map-card,
  .classified-content-grid .classified-contact-card,
  .classified-content-grid .classified-comments-card {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }
}

/* Rowny uklad i odstepy kart ogloszenia */
.classified-content-grid {
  gap: 20px;
}
.classified-content-grid > .classified-section-card {
  margin: 0 !important;
  min-width: 0;
}

/* Zamiana miejscami: opis i szczegoly na komputerze */
.classified-content-grid .classified-description-card {
  grid-column: 1;
  grid-row: 1;
}
.classified-content-grid .classified__filters {
  grid-column: 1;
  grid-row: 2;
}

/* Podobne oferty z takim samym odstepem */
.classified-similar-card {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
  padding: 20px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  box-shadow: 0 4px 16px rgba(0,0,0,.04);
}

/* Rowny rytm odstepow na telefonach */
@media (max-width: 767.98px) {
  .classified-content-grid {
    gap: 16px;
  }
  .classified-similar-card {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    padding: 15px;
    border-radius: 13px;
  }
}

/* Poprawa nakladania kart, gdy ogloszenie nie ma filmu */
@media (min-width: 768px) {
  .classified-content-grid:not(:has(.classified-video-card)) .classified-description-card {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  .classified-content-grid:not(:has(.classified-video-card)) .classified__filters {
    display: block !important;
    visibility: visible !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .classified-content-grid:not(:has(.classified-video-card)) .classified-map-card {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
  .classified-content-grid:not(:has(.classified-video-card)) .classified-contact-card {
    grid-column: 2 !important;
    grid-row: 2 !important;
  }
}

/* Nawigacja i linki zarzadzania ogloszeniem */
.classified-topline {
  width: 100%;
  row-gap: 8px !important;
  column-gap: 16px !important;
}
.classified-breadcrumb-nav {
  min-width: 0;
  flex: 1 1 auto;
}
.classified-topline .breadcrumb {
  margin-bottom: 0;
  flex-wrap: wrap;
}
.classified-management-links {
  flex: 0 0 auto;
  margin-left: auto;
  white-space: nowrap;
  font-size: .9rem;
}
@media (max-width: 767.98px) {
  .classified-topline {
    align-items: flex-start !important;
  }
  .classified-management-links {
    margin-left: auto;
  }
}

/* Mobilny uklad zarzadzania ogloszeniem jak poprzednio */
@media (max-width: 767.98px) {
  .classified-topline {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  .classified-management-links {
    order: -1;
    display: block !important;
    flex: 0 0 auto !important;
    width: 100%;
    margin: 0 !important;
    white-space: normal;
    text-align: left;
  }

  .classified-breadcrumb-nav {
    order: 0;
    width: 100%;
    flex: 0 0 auto !important;
  }
}

@media (max-width: 767.98px) {
  .classified-topline {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    height: auto !important;
    overflow: visible !important;
  }
  .classified-topline .classified-management-links {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 5;
    order: -1 !important;
    width: 100% !important;
    max-width: 100%;
    flex: 0 0 auto !important;
    margin: 0 0 8px !important;
    white-space: normal !important;
    flex-wrap: wrap;
    gap: 5px;
  }
  .classified-management-links a {
    display: inline-block !important;
    visibility: visible !important;
    color: var(--color-primary) !important;
    padding: 4px 0;
  }
}

/* Stabilne polozenie ikony ulubionych podczas ladowania */
.classified-show-heading {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 12px;
  min-height: 58px;
}
.classified-show-heading .classified-show-title {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0 !important;
}
.classified-show-heading #classified__favourite {
  display: flex !important;
  flex: 0 0 40px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px;
  margin: 0 !important;
}
.classified-show-heading #classified__favourite[v-cloak] {
  visibility: hidden !important;
}
.classified-show-heading #classified__favourite button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 40px;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px;
  min-height: 40px;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Zaokraglenie istniejacego glownego okna ogloszenia */
#classified > .background-primary:first-child {
  border-radius: 18px;
  overflow: hidden;
}

@media (max-width: 767.98px) {
  #classified > .background-primary:first-child {
    border-radius: 15px;
  }
}

/* Profile firm — Panorama Firm */
.company-card__title-link {
  color: inherit;
  text-decoration: none;
}
.company-card__title-link:hover {
  color: var(--color-primary);
}
.company-profile-back a {
  color: var(--color-secondary);
  text-decoration: none;
}
.company-profile-hero,
.company-profile-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 5px 20px rgba(0,0,0,.04);
}
.company-profile-brand {
  display: flex;
  align-items: center;
  gap: 22px;
}
.company-profile-logo {
  width: 120px;
  height: 120px;
  flex: 0 0 120px;
  object-fit: contain;
  border-radius: 12px;
  background: #f7f8fa;
  padding: 8px;
}
.company-profile-logo--empty {
  display: grid;
  place-items: center;
  font-size: 38px;
  color: #8b95a1;
}
.company-profile-eyebrow {
  color: var(--color-primary);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .1em;
}
.company-profile-hero h1 {
  margin: 5px 0 8px;
  font-size: clamp(1.6rem, 3vw, 2.5rem);
  overflow-wrap: anywhere;
}
.company-profile-hero p {
  margin: 0;
  color: #65707c;
}
.company-profile-card h2 {
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0 0 18px;
}
.company-profile-card h2 i {
  margin-right: 8px;
  color: var(--color-primary);
}
.company-profile-description {
  line-height: 1.8;
  overflow-wrap: anywhere;
}
.company-profile-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.company-profile-gallery a {
  display: block;
  border-radius: 12px;
  overflow: hidden;
  background: #f3f5f7;
}
.company-profile-gallery img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform .2s ease;
}
.company-profile-gallery a:hover img {
  transform: scale(1.03);
}
.company-profile-contact-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 0;
  border-bottom: 1px solid #eef0f2;
  overflow-wrap: anywhere;
}
.company-profile-contact-row i {
  width: 18px;
  margin-top: 4px;
  color: var(--color-primary);
}
.company-profile-contact-row a {
  overflow-wrap: anywhere;
}
@media(max-width:575.98px) {
  .company-profile-hero, .company-profile-card { padding: 16px; border-radius: 13px; }
  .company-profile-brand { align-items: flex-start; gap: 14px; }
  .company-profile-logo { width: 84px; height: 84px; flex-basis: 84px; }
  .company-profile-gallery { grid-template-columns: minmax(0, 1fr); }
}

/* Uporzadkowana stopka Zrywkarze.pl */
.site-footer {
  margin-top: 32px;
  background: #202a36;
  color: #d7e0e9;
  border-top: 3px solid var(--color-primary);
}
.site-footer .site-footer__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 30px;
  align-items: start;
}
.site-footer .site-footer__column {
  min-width: 0;
}
.site-footer .site-footer__heading {
  position: relative;
  margin: 0 0 18px;
  padding-bottom: 12px;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.4;
}
.site-footer .site-footer__heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2px;
  background: var(--color-primary);
  border-radius: 2px;
}
.site-footer .site-footer__links {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer .site-footer__links li {
  margin: 0;
  padding: 0;
  line-height: 1.5;
}
.site-footer .site-footer__links a {
  display: inline-block;
  max-width: 100%;
  color: #c5d0dc;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: color .15s ease, transform .15s ease;
}
.site-footer .site-footer__links a:hover {
  color: #fff;
  transform: translateX(3px);
}
.site-footer .site-footer__muted {
  margin: 0 0 14px;
  color: #aebbc9;
  font-size: .9rem;
  line-height: 1.6;
}
.site-footer .site-footer__newsletter form {
  max-width: 100%;
}
.site-footer .site-footer__newsletter .form-control,
.site-footer .site-footer__newsletter .form-select {
  min-height: 42px;
  border-radius: 8px;
}
.site-footer .site-footer__newsletter button,
.site-footer .site-footer__newsletter input[type="submit"] {
  min-height: 42px;
  border-radius: 8px;
}
.site-footer .site-footer__bottom {
  padding: 20px 0;
  border-top: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.12);
}
.site-footer .site-footer__bottom img {
  max-width: 100%;
  height: auto;
}
@media (max-width: 767.98px) {
  .site-footer {
    margin-top: 22px;
  }
  .site-footer .container.py-5 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .site-footer .site-footer__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px;
  }
  .site-footer .site-footer__heading {
    margin-bottom: 13px;
    font-size: 1rem;
  }
  .site-footer .site-footer__links {
    gap: 12px;
  }
  .site-footer .site-footer__links a {
    padding: 2px 0;
  }
}

/* Dopieszczona stopka serwisu */
.site-footer {
  margin-top: 36px;
  background: linear-gradient(135deg, #172330 0%, #243344 100%);
  color: #d8e1ea;
  border-top: 3px solid var(--color-primary);
}

.site-footer .container {
  min-width: 0;
}

.site-footer__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 36px;
  align-items: start;
}

.site-footer__grid--with-sidebar {
  grid-template-columns: minmax(230px, .85fr) minmax(0, 1.8fr);
  gap: clamp(28px, 4vw, 60px);
}

.site-footer__sidebar {
  display: flex;
  flex-direction: column;
  gap: 28px;
  min-width: 0;
}

.site-footer__advert,
.site-footer__newsletter {
  min-width: 0;
}

.site-footer__newsletter {
  padding: 22px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 14px;
  background: rgba(255,255,255,.045);
}

.site-footer__navigation {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2.5vw, 36px);
  min-width: 0;
}

.site-footer__column {
  min-width: 0;
}

.site-footer .site-footer__heading {
  margin: 0 0 20px;
  padding-bottom: 13px;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .015em;
  border-bottom: 1px solid rgba(255,255,255,.13);
  position: relative;
}

.site-footer .site-footer__heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 38px;
  height: 2px;
  border-radius: 2px;
  background: var(--color-primary);
}

.site-footer .site-footer__links {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer .site-footer__links li {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgba(255,255,255,.055);
}

.site-footer .site-footer__links li:last-child {
  border-bottom: 0;
}

.site-footer .site-footer__links a {
  display: block;
  padding: 9px 0;
  color: #c4d0dc;
  line-height: 1.5;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: color .18s ease, padding-left .18s ease;
}

.site-footer .site-footer__links a:hover {
  color: #fff;
  padding-left: 4px;
}

.site-footer .site-footer__muted {
  color: #adbdcc;
  font-size: .9rem;
  line-height: 1.65;
  margin: 0 0 16px;
}

.site-footer__newsletter .form-control,
.site-footer__newsletter .form-select {
  min-height: 44px;
  width: 100%;
  border-radius: 9px;
}

.site-footer__newsletter button,
.site-footer__newsletter input[type="submit"] {
  min-height: 43px;
  border-radius: 9px;
}

.site-footer__advert img {
  max-width: 100%;
  height: auto;
}

.site-footer__bottom {
  padding: 22px 0;
  border-top: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.15);
}

.site-footer__bottom img {
  max-width: 100%;
  height: auto;
}

[data-theme="dark"] .site-footer {
  background: linear-gradient(135deg, #151d27 0%, #202b38 100%);
}

@media (max-width: 991.98px) {
  .site-footer__grid--with-sidebar {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
  }

  .site-footer__sidebar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 22px;
  }

  .site-footer__navigation {
    gap: 24px;
  }
}

@media (max-width: 767.98px) {
  .site-footer {
    margin-top: 24px;
  }

  .site-footer .container.py-5 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }

  .site-footer__sidebar {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  .site-footer__navigation {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 20px;
  }

  .site-footer .site-footer__heading {
    margin-bottom: 13px;
    font-size: .98rem;
  }

  .site-footer .site-footer__links a {
    padding: 10px 0;
  }

  .site-footer__newsletter {
    padding: 18px;
  }
}

@media (max-width: 420px) {
  .site-footer__navigation {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}

/* Finalny wyglad stopki — lesna kolorystyka */
.site-footer {
  background: linear-gradient(135deg, #172b22 0%, #243d30 100%) !important;
  color: #e0e9df;
  border-top: 3px solid #91ad62;
  text-transform: uppercase;
}

.site-footer .site-footer__heading {
  color: #fff;
  font-size: .92rem;
  letter-spacing: .045em;
  margin-bottom: 15px;
  padding-bottom: 11px;
  border-bottom-color: rgba(220, 235, 213, .16);
}

.site-footer .site-footer__heading::after {
  background: #a8c66a;
  width: 32px;
  height: 3px;
}

.site-footer .site-footer__links a {
  color: #d0ddcf;
  font-size: .79rem;
  letter-spacing: .025em;
  padding: 8px 0;
}

.site-footer .site-footer__links a:hover {
  color: #c3df8b;
  padding-left: 4px;
}

.site-footer .site-footer__links li {
  border-bottom-color: rgba(220, 235, 213, .075);
}

.site-footer .site-footer__muted {
  color: #bacbbb;
  font-size: .75rem;
  line-height: 1.5;
}

/* Mniejszy, mniej dominujacy newsletter */
.site-footer__newsletter {
  max-width: 310px;
  padding: 16px 17px !important;
  border: 1px solid rgba(220, 235, 213, .15);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.site-footer__newsletter .site-footer__heading {
  font-size: .88rem;
  margin-bottom: 10px;
}

.site-footer__newsletter .site-footer__muted {
  margin-bottom: 10px;
}

.site-footer__newsletter form {
  font-size: .8rem;
}

.site-footer__newsletter .form-control,
.site-footer__newsletter .form-select {
  min-height: 36px !important;
  padding: 7px 10px;
  border-radius: 7px;
  font-size: .85rem;
}

.site-footer__newsletter button,
.site-footer__newsletter input[type="submit"] {
  min-height: 36px !important;
  padding: 7px 12px;
  border-radius: 7px;
  font-size: .76rem;
}

.site-footer__grid--with-sidebar {
  grid-template-columns: minmax(210px, .65fr) minmax(0, 2.35fr);
  gap: clamp(24px, 3vw, 42px);
}

.site-footer__navigation {
  gap: clamp(18px, 2vw, 30px);
}

.site-footer__bottom {
  border-top-color: rgba(220, 235, 213, .13);
  background: rgba(0,0,0,.12);
}

/* Wielkie litery w stopce, ale normalne wpisywanie danych */
.site-footer input,
.site-footer textarea,
.site-footer select {
  text-transform: none;
}

.site-footer input::placeholder,
.site-footer textarea::placeholder {
  text-transform: none;
  opacity: .75;
}

@media (max-width: 991.98px) {
  .site-footer__grid--with-sidebar {
    grid-template-columns: minmax(0, 1fr);
  }

  .site-footer__newsletter {
    max-width: 360px;
  }
}

@media (max-width: 767.98px) {
  .site-footer .container.py-5 {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }

  .site-footer__grid {
    gap: 25px;
  }

  .site-footer__navigation {
    gap: 22px 16px;
  }

  .site-footer__newsletter {
    max-width: 100%;
    padding: 14px !important;
  }
}

/* Neutralna, szara stopka */
.site-footer {
  background: linear-gradient(135deg, #343a40 0%, #484e54 100%) !important;
  color: #e1e4e7;
  border-top: 3px solid #92989e;
}

.site-footer .site-footer__heading {
  color: #fff;
  border-bottom-color: rgba(255,255,255,.16);
}

.site-footer .site-footer__heading::after {
  background: #aeb4ba;
}

.site-footer .site-footer__links a {
  color: #d0d5d9;
}

.site-footer .site-footer__links a:hover {
  color: #fff;
}

.site-footer .site-footer__links li {
  border-bottom-color: rgba(255,255,255,.07);
}

.site-footer .site-footer__muted {
  color: #c2c7cc;
}

.site-footer__navigation {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 4vw, 55px);
  width: 100%;
}

.site-footer__newsletter--horizontal {
  display: grid;
  grid-template-columns: minmax(220px, .8fr) minmax(0, 1.6fr);
  align-items: center;
  gap: 28px;
  width: 100%;
  max-width: none !important;
  margin-top: 34px;
  padding: 22px 26px;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 12px;
  background: rgba(255,255,255,.055);
}

.site-footer__newsletter--horizontal .site-footer__heading {
  margin-bottom: 10px;
}

.site-footer__newsletter--horizontal .site-footer__muted {
  margin-bottom: 0;
}

.site-footer__newsletter-form {
  min-width: 0;
  width: 100%;
}

.site-footer__newsletter-form form {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  width: 100%;
  margin: 0;
}

.site-footer__newsletter-form form > div {
  min-width: 0;
}

.site-footer__newsletter-form form .form-control,
.site-footer__newsletter-form form input[type="email"] {
  min-width: 0;
  width: 100%;
  min-height: 44px;
  border-radius: 8px;
  text-transform: none;
}

.site-footer__newsletter-form form button,
.site-footer__newsletter-form form input[type="submit"] {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 9px 18px;
  border-radius: 8px;
  white-space: nowrap;
}

.site-footer__newsletter-form form .input-group {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
}

.site-footer__newsletter-form form .input-group > .form-control {
  min-width: 0;
}

.site-footer__advert {
  margin-bottom: 28px;
}

.site-footer__bottom {
  border-top-color: rgba(255,255,255,.15);
  background: rgba(0,0,0,.12);
}

/* Zachowaj normalne litery podczas wpisywania */
.site-footer input,
.site-footer textarea,
.site-footer select {
  text-transform: none;
}

@media (max-width: 767.98px) {
  .site-footer__navigation {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 18px;
  }

  .site-footer__newsletter--horizontal {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    margin-top: 26px;
    padding: 18px;
  }

  .site-footer__newsletter-form form {
    flex-wrap: nowrap;
    gap: 8px;
  }

  .site-footer__newsletter-form form button,
  .site-footer__newsletter-form form input[type="submit"] {
    padding: 8px 12px;
  }
}

@media (max-width: 420px) {
  .site-footer__navigation {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
  }

  .site-footer__newsletter--horizontal {
    padding: 14px;
  }

  .site-footer__newsletter-form form button,
  .site-footer__newsletter-form form input[type="submit"] {
    padding: 8px 10px;
    font-size: .8rem;
  }
}

/* Opis serwisu i newsletter obok siebie */
.site-footer .site-footer__intro-newsletter {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 36px;
  margin-bottom: 32px;
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.site-footer .site-footer__intro {
  min-width: 0;
  color: #d0d5d9;
  font-size: .9rem;
  line-height: 1.8;
  text-transform: lowercase !important;
  overflow-wrap: anywhere;
}

.site-footer .site-footer__intro * {
  text-transform: lowercase !important;
}

.site-footer .site-footer__intro p:last-child {
  margin-bottom: 0;
}

.site-footer .site-footer__newsletter--horizontal {
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  min-width: 0;
  box-sizing: border-box;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 12px;
  padding: 22px;
}

.site-footer .site-footer__newsletter-form,
.site-footer .site-footer__newsletter-form form {
  min-width: 0;
  max-width: 100%;
}

.site-footer .site-footer__navigation {
  margin-top: 8px;
}

@media (max-width: 767.98px) {
  .site-footer .site-footer__intro-newsletter {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    margin-bottom: 26px;
    padding-bottom: 24px;
  }

  .site-footer .site-footer__newsletter--horizontal {
    padding: 16px;
  }
}

/* Opis Zrywkarze.pl i newsletter obok siebie */
.site-footer .site-footer__intro-newsletter {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 32px;
  width: 100%;
  margin: 0 0 34px;
  padding: 0 0 30px;
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.site-footer .site-footer__intro,
.site-footer .site-footer__intro p {
  color: #d0d5d9 !important;
  font-size: .9rem;
  line-height: 1.8;
  text-transform: lowercase !important;
  overflow-wrap: anywhere;
}

.site-footer .site-footer__intro p {
  margin: 0;
}

.site-footer .site-footer__newsletter--horizontal {
  display: grid !important;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  align-items: center;
  gap: 18px;
  width: 100%;
  max-width: none !important;
  min-width: 0;
  margin: 0 !important;
  padding: 20px;
  box-sizing: border-box;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 12px;
}

.site-footer .site-footer__newsletter-copy,
.site-footer .site-footer__newsletter-form {
  min-width: 0;
}

.site-footer .site-footer__newsletter-form form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.site-footer .site-footer__newsletter-form form input[type="email"],
.site-footer .site-footer__newsletter-form form .form-control {
  min-width: 0;
  max-width: 100%;
  text-transform: none !important;
  border-radius: 8px;
}

.site-footer .site-footer__newsletter-form form button,
.site-footer .site-footer__newsletter-form form input[type="submit"] {
  border-radius: 8px;
}

.site-footer .site-footer__intro-newsletter:not(.has-newsletter) {
  grid-template-columns: minmax(0, 1fr);
}

@media (max-width: 767.98px) {
  .site-footer .site-footer__intro-newsletter,
  .site-footer .site-footer__intro-newsletter.has-newsletter {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    margin-bottom: 26px;
    padding-bottom: 24px;
  }

  .site-footer .site-footer__newsletter--horizontal {
    grid-template-columns: minmax(0, 1fr);
    padding: 16px;
  }
}

.site-footer .site-footer__intro-newsletter {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 32px;
  margin: 0 0 32px;
  padding: 0 0 28px;
  border-bottom: 1px solid rgba(255,255,255,.16);
}
.site-footer .site-footer__intro {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  min-width: 0;
}
.site-footer .site-footer__brand-logo {
  flex: 0 0 86px;
  width: 86px;
}
.site-footer .site-footer__brand-logo img {
  display: block;
  width: 100%;
  max-height: 86px;
  object-fit: contain;
}
.site-footer .site-footer__intro p {
  margin: 0;
  color: #d0d5d9;
  font-size: .88rem;
  line-height: 1.8;
  text-transform: lowercase !important;
  overflow-wrap: anywhere;
}
.site-footer .site-footer__newsletter--horizontal {
  min-width: 0;
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 12px;
  background: rgba(255,255,255,.055);
}
.site-footer .site-footer__newsletter-form form {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.site-footer .site-footer__newsletter-form input[type="email"],
.site-footer .site-footer__newsletter-form .form-control {
  min-width: 0;
  max-width: 100%;
  text-transform: none !important;
}
@media(max-width:767.98px) {
  .site-footer .site-footer__intro-newsletter {
    grid-template-columns: minmax(0,1fr);
    gap: 22px;
  }
  .site-footer .site-footer__brand-logo {
    flex-basis: 68px;
    width: 68px;
  }
  .site-footer .site-footer__brand-logo img {
    max-height: 68px;
  }
}

/* Opis po lewej, newsletter po prawej */
.site-footer .site-footer__intro-newsletter {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 36px !important;
  width: 100%;
}

.site-footer .site-footer__intro {
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-width: 0;
}

.site-footer .site-footer__newsletter--horizontal {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  margin: 0 !important;
  box-sizing: border-box;
}

@media (min-width: 768px) {
  .site-footer .site-footer__intro-newsletter {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }
}

@media (max-width: 767.98px) {
  .site-footer .site-footer__intro-newsletter {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  .site-footer .site-footer__intro,
  .site-footer .site-footer__newsletter--horizontal {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}

/* Lepsze proporcje opisu i newslettera */
.site-footer .site-footer__intro-newsletter {
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr) !important;
  gap: 32px !important;
  align-items: center !important;
}

/* Logo wyrownane pionowo wzgledem opisu */
.site-footer .site-footer__intro {
  align-items: center !important;
  gap: 20px !important;
}

.site-footer .site-footer__brand-logo {
  flex: 0 0 76px !important;
  width: 76px !important;
  margin: 0 !important;
}

.site-footer .site-footer__brand-logo img {
  display: block;
  width: 76px;
  max-height: 76px;
  object-fit: contain;
}

/* Mniejszy i bardziej zwarty panel newslettera */
.site-footer .site-footer__newsletter--horizontal {
  padding: 17px 19px !important;
  border-radius: 11px;
}

.site-footer .site-footer__newsletter--horizontal .site-footer__heading {
  margin-bottom: 7px;
  font-size: .9rem;
}

.site-footer .site-footer__newsletter--horizontal .site-footer__muted {
  margin-bottom: 12px;
  font-size: .8rem;
  line-height: 1.5;
}

.site-footer .site-footer__newsletter-form form {
  gap: 7px;
}

.site-footer .site-footer__newsletter-form input[type="email"],
.site-footer .site-footer__newsletter-form .form-control {
  min-height: 39px !important;
  padding: 8px 10px;
  font-size: .85rem;
}

.site-footer .site-footer__newsletter-form button,
.site-footer .site-footer__newsletter-form input[type="submit"] {
  min-height: 39px !important;
  padding: 7px 12px;
  font-size: .8rem;
  white-space: nowrap;
}

@media (max-width: 767.98px) {
  .site-footer .site-footer__intro-newsletter {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  .site-footer .site-footer__intro {
    align-items: center !important;
    gap: 14px !important;
  }

  .site-footer .site-footer__brand-logo,
  .site-footer .site-footer__brand-logo img {
    flex-basis: 64px !important;
    width: 64px !important;
    max-height: 64px;
  }

  .site-footer .site-footer__newsletter--horizontal {
    padding: 15px !important;
  }
}

/* Mniejsza ramka newslettera */
@media (min-width: 768px) {
  .site-footer .site-footer__newsletter--horizontal {
    width: 70% !important;
    justify-self: end;
    padding: 14px 16px !important;
  }

  .site-footer .site-footer__newsletter--horizontal .site-footer__heading {
    font-size: .85rem;
    margin-bottom: 5px;
  }

  .site-footer .site-footer__newsletter--horizontal .site-footer__muted {
    font-size: .75rem;
    margin-bottom: 8px;
  }
}

@media (max-width: 767.98px) {
  .site-footer .site-footer__newsletter--horizontal {
    width: 100% !important;
  }
}

/* Stopka: dwie rowne polowy w jednym rzedzie */
@media (min-width: 768px) {
  .site-footer .site-footer__intro-newsletter {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 28px !important;
  }

  .site-footer .site-footer__intro {
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0;
    align-self: center !important;
  }

  .site-footer .site-footer__newsletter--horizontal {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    justify-self: stretch !important;
    align-self: center !important;
    margin: 0 !important;
    box-sizing: border-box;
    padding: 18px !important;
  }

  .site-footer .site-footer__newsletter-form form {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center;
    gap: 8px;
    width: 100%;
  }

  .site-footer .site-footer__newsletter-form form input[type="email"],
  .site-footer .site-footer__newsletter-form form .form-control {
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
  }

  .site-footer .site-footer__newsletter-form form button,
  .site-footer .site-footer__newsletter-form form input[type="submit"] {
    flex: 0 0 auto;
    white-space: nowrap;
  }
}

@media (max-width: 767.98px) {
  .site-footer .site-footer__intro-newsletter {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  .site-footer .site-footer__intro,
  .site-footer .site-footer__newsletter--horizontal {
    grid-column: 1 !important;
    width: 100% !important;
  }
}

/* Poprawiony formularz newslettera w stopce */
.site-footer .site-footer__newsletter-form {
  width: 100%;
  min-width: 0;
}

.site-footer .site-footer__newsletter-form form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end;
  column-gap: 10px;
  row-gap: 12px;
  width: 100%;
  margin: 0;
}

.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(1) {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  margin: 0 !important;
}

.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(1) label {
  display: block;
  margin-bottom: 6px;
  font-size: .8rem;
  color: #e1e4e7;
}

.site-footer .site-footer__newsletter-form form input[type="email"] {
  display: block;
  width: 100%;
  min-width: 0;
  height: 42px;
  padding: 8px 10px;
  box-sizing: border-box;
  border-radius: 8px;
  text-transform: none !important;
}

.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(2) {
  grid-column: 1 / -1;
  grid-row: 2;
  margin: 0 !important;
  min-width: 0;
}

.site-footer .site-footer__newsletter-form form .form-check {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding-left: 0;
}

.site-footer .site-footer__newsletter-form form .form-check-input {
  flex: 0 0 auto;
  margin: 4px 0 0;
}

.site-footer .site-footer__newsletter-form form .form-check-label {
  font-size: .75rem;
  line-height: 1.5;
  color: #d0d5d9;
}

.site-footer .site-footer__newsletter-form form > p {
  grid-column: 1 / -1;
  grid-row: 3;
  margin: 0 !important;
  font-size: .7rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  margin: 0 !important;
}

.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) button {
  min-height: 42px;
  padding: 8px 13px;
  border-radius: 8px;
  white-space: nowrap;
  font-size: .8rem;
}

.site-footer .site-footer__newsletter-form form a {
  color: #fff;
  text-decoration: underline;
}

@media (max-width: 420px) {
  .site-footer .site-footer__newsletter-form form {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(1),
  .site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(2),
  .site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3),
  .site-footer .site-footer__newsletter-form form > p {
    grid-column: 1;
  }

  .site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) {
    grid-row: 4;
  }

  .site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) button {
    width: 100%;
  }
}

/* Logo na poczatku opisu */
.site-footer .site-footer__intro {
  display: block !important;
  min-width: 0;
}
.site-footer .site-footer__intro-text {
  margin: 0;
  color: #d0d5d9;
  font-size: .88rem;
  line-height: 1.8;
  text-transform: lowercase !important;
  overflow-wrap: anywhere;
}
.site-footer .site-footer__brand-logo {
  display: inline-flex !important;
  vertical-align: middle;
  align-items: center;
  justify-content: center;
  width: 48px !important;
  margin: 0 10px 4px 0;
}
.site-footer .site-footer__brand-logo img {
  display: block;
  width: 48px;
  max-height: 44px;
  object-fit: contain;
}

/* Newsletter — rowne odstepy i czytelny formularz */
.site-footer .site-footer__newsletter--horizontal {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  align-self: center;
  min-width: 0;
  padding: 20px 22px !important;
  border-radius: 12px;
  box-sizing: border-box;
}
.site-footer .site-footer__newsletter--horizontal .site-footer__heading {
  margin: 0 0 7px;
  font-size: .9rem;
}
.site-footer .site-footer__newsletter--horizontal .site-footer__muted {
  margin: 0 0 14px;
  font-size: .8rem;
  line-height: 1.55;
}
.site-footer .site-footer__newsletter-form {
  width: 100%;
  min-width: 0;
}
.site-footer .site-footer__newsletter-form form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px;
  align-items: end;
  width: 100%;
  margin: 0;
}
.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(1) {
  min-width: 0;
  margin: 0 !important;
}
.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(1) label {
  display: block;
  margin-bottom: 6px;
  font-size: .78rem;
}
.site-footer .site-footer__newsletter-form form input[type="email"] {
  width: 100%;
  min-width: 0;
  height: 42px;
  box-sizing: border-box;
  text-transform: none !important;
  border-radius: 8px;
}
.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(2) {
  grid-column: 1 / -1;
  margin: 0 !important;
}
.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) {
  margin: 0 !important;
  align-self: end;
}
.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) button,
.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) input[type="submit"] {
  min-height: 42px;
  white-space: nowrap;
  border-radius: 8px;
  padding: 8px 14px;
}
.site-footer .site-footer__newsletter-form form .form-check-label {
  font-size: .74rem;
  line-height: 1.5;
}
@media(max-width:767.98px) {
  .site-footer .site-footer__intro-newsletter {
    gap: 22px !important;
  }
  .site-footer .site-footer__newsletter--horizontal {
    align-self: stretch;
    width: 100% !important;
    padding: 16px !important;
  }
}
@media(max-width:420px) {
  .site-footer .site-footer__newsletter-form form {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) {
    grid-column: 1;
  }
  .site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) button {
    width: 100%;
  }
}

/* Ostateczne dopracowanie stopki */
.site-footer {
  background: linear-gradient(135deg, #50565d 0%, #626970 100%) !important;
  color: #f0f2f4;
  border-top-color: #8d949a;
}

.site-footer .site-footer__intro {
  line-height: 1.8;
}

.site-footer .site-footer__intro-text {
  color: #f0f2f4 !important;
}

/* Logo wieksze i wyrownane z tekstem */
.site-footer .site-footer__brand-logo {
  display: inline-flex !important;
  width: auto !important;
  height: auto !important;
  flex: 0 0 auto !important;
  vertical-align: middle;
  align-items: center;
  justify-content: center;
  margin: 0 10px 3px 0 !important;
}

.site-footer .site-footer__brand-logo img {
  display: block;
  width: auto !important;
  height: 1.8em !important;
  max-width: 120px;
  max-height: none !important;
  object-fit: contain;
}

/* Czytelne linki na jasniejszym tle */
.site-footer .site-footer__heading {
  color: #fff;
  border-bottom-color: rgba(255,255,255,.22);
}

.site-footer .site-footer__links a {
  color: #edf0f2;
}

.site-footer .site-footer__links a:hover {
  color: #fff;
}

.site-footer .site-footer__muted {
  color: #e0e4e7;
}

.site-footer .site-footer__newsletter--horizontal {
  background: rgba(255,255,255,.09);
  border-color: rgba(255,255,255,.22);
}

.site-footer .site-footer__bottom {
  background: rgba(0,0,0,.08);
  border-top-color: rgba(255,255,255,.2);
}

/* Ostateczne dopracowanie stopki */
.site-footer {
  background: linear-gradient(135deg, #50565d 0%, #626970 100%) !important;
  color: #f0f2f4;
  border-top-color: #8d949a;
}

.site-footer .site-footer__intro {
  line-height: 1.8;
}

.site-footer .site-footer__intro-text {
  color: #f0f2f4 !important;
}

/* Logo wieksze i wyrownane z tekstem */
.site-footer .site-footer__brand-logo {
  display: inline-flex !important;
  width: auto !important;
  height: auto !important;
  flex: 0 0 auto !important;
  vertical-align: middle;
  align-items: center;
  justify-content: center;
  margin: 0 10px 3px 0 !important;
}

.site-footer .site-footer__brand-logo img {
  display: block;
  width: auto !important;
  height: 1.8em !important;
  max-width: 120px;
  max-height: none !important;
  object-fit: contain;
}

/* Czytelne linki na jasniejszym tle */
.site-footer .site-footer__heading {
  color: #fff;
  border-bottom-color: rgba(255,255,255,.22);
}

.site-footer .site-footer__links a {
  color: #edf0f2;
}

.site-footer .site-footer__links a:hover {
  color: #fff;
}

.site-footer .site-footer__muted {
  color: #e0e4e7;
}

.site-footer .site-footer__newsletter--horizontal {
  background: rgba(255,255,255,.09);
  border-color: rgba(255,255,255,.22);
}

.site-footer .site-footer__bottom {
  background: rgba(0,0,0,.08);
  border-top-color: rgba(255,255,255,.2);
}

/* Kompaktowy newsletter w stopce */
.site-footer .site-footer__newsletter--horizontal {
  padding: 13px 15px !important;
  border-radius: 10px;
}

.site-footer .site-footer__newsletter--horizontal .site-footer__heading {
  font-size: .8rem !important;
  margin-bottom: 5px !important;
  padding-bottom: 8px;
}

.site-footer .site-footer__newsletter--horizontal .site-footer__muted {
  font-size: .72rem !important;
  line-height: 1.4 !important;
  margin-bottom: 9px !important;
}

.site-footer .site-footer__newsletter-form form {
  gap: 7px !important;
  row-gap: 8px !important;
}

.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(1) label {
  font-size: .7rem !important;
  margin-bottom: 4px !important;
}

.site-footer .site-footer__newsletter-form form input[type="email"] {
  height: 35px !important;
  min-height: 35px !important;
  padding: 6px 9px !important;
  font-size: .78rem !important;
}

.site-footer .site-footer__newsletter-form form .form-check-label {
  font-size: .67rem !important;
  line-height: 1.4 !important;
}

.site-footer .site-footer__newsletter-form form .form-check-input {
  transform: scale(.9);
  transform-origin: top left;
}

.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) button,
.site-footer .site-footer__newsletter-form form > div.mb-3:nth-of-type(3) input[type="submit"] {
  min-height: 35px !important;
  padding: 6px 10px !important;
  font-size: .72rem !important;
  border-radius: 7px !important;
}

@media (max-width: 767.98px) {
  .site-footer .site-footer__newsletter--horizontal {
    padding: 12px !important;
  }
}

/* Reklama tla — boczne, klikalne marginesy */
.site-background-ad-link {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: calc((100vw - 1320px) / 2);
  background-repeat: no-repeat;
  background-size: 100vw auto;
  cursor: pointer;
}

.site-background-ad-link--left {
  left: 0;
  background-position: left top;
}

.site-background-ad-link--right {
  right: 0;
  background-position: right top;
}

@media (min-width: 1500px) {
  .site-background-ad-link {
    display: block;
  }
}

@media (max-width: 1499.98px) {
  .site-background-ad-link {
    display: none !important;
  }
}


/* ADMIN_MANAGED_ADSENSE_STYLES */
.adsense-managed-unit { width: 100%; max-width: 100%; margin: 1.25rem auto; text-align: center; }
.adsense-managed-unit ins.adsbygoogle { max-width: 100%; }

/* AUTO_CLASSIFIEDS_HOME_SLIDER */
.classifieds-home-slider { margin: 1.75rem 0 2.25rem; min-width: 0; }
.classifieds-home-slider__heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:0 0 1rem; }
.classifieds-home-slider__title { margin:0; font-size:clamp(1.25rem, 2vw, 1.7rem); font-weight:750; line-height:1.25; }
.classifieds-home-slider__subtitle { margin:.35rem 0 0; color:#707782; font-size:.92rem; }
.classifieds-home-slider__controls { display:flex; gap:.5rem; flex-shrink:0; }
.classifieds-home-slider__button { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; padding:0; border:1px solid #d8dde4; border-radius:50%; background:#fff; color:#202630; font-size:1.35rem; line-height:1; cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.06); transition:background .15s ease, border-color .15s ease; }
.classifieds-home-slider__button:hover { background:#f2f5f8; border-color:#aeb8c4; }
.classifieds-home-slider__button:focus-visible { outline:2px solid #2777d4; outline-offset:3px; }
.classifieds-home-slider__viewport { overflow:hidden; min-width:0; }
.classifieds-home-slider__viewport .row.classifieds-home-slider__track { display:flex !important; flex-wrap:nowrap !important; align-items:stretch; gap:1rem; overflow-x:auto !important; overflow-y:hidden; margin:0 !important; padding:0 0 12px !important; scroll-snap-type:x mandatory; scroll-behavior:smooth; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#c3cbd5 transparent; }
.classifieds-home-slider__viewport .classifieds-home-slider__track > [class*="col-"] { flex:0 0 286px !important; width:286px !important; max-width:286px !important; margin:0 !important; padding:0 !important; scroll-snap-align:start; }
.classifieds-home-slider__viewport .classifieds-home-slider__track > [class*="col-"] > * { height:100%; }
.classifieds-home-slider__viewport .classifieds-home-slider__track img { max-width:100%; }
@media (max-width:575.98px) {
  .classifieds-home-slider { margin:1.3rem 0 1.7rem; }
  .classifieds-home-slider__subtitle { font-size:.84rem; }
  .classifieds-home-slider__button { width:38px; height:38px; }
  .classifieds-home-slider__viewport .classifieds-home-slider__track > [class*="col-"] { flex-basis:78vw !important; width:78vw !important; max-width:310px !important; }
}

/* AUTO_CLASSIFIEDS_HOME_SLIDER_ADMIN_V2 */
.classifieds-home-slider { display:block !important; position:relative; width:100%; min-width:0; margin:1.75rem 0 2.25rem; clear:both; }
.classifieds-home-slider__heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:0 0 1rem; }
.classifieds-home-slider__copy { min-width:0; }
.classifieds-home-slider__title { margin:0; font-size:clamp(1.25rem,2vw,1.7rem); font-weight:750; line-height:1.25; }
.classifieds-home-slider__subtitle { margin:.35rem 0 0; color:#707782; font-size:.92rem; }
.classifieds-home-slider__controls { display:flex; gap:.5rem; flex-shrink:0; }
.classifieds-home-slider__button { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; padding:0; border:1px solid #d8dde4; border-radius:50%; background:#fff; color:#202630; font-size:1.35rem; line-height:1; cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.06); }
.classifieds-home-slider__button:hover { background:#f2f5f8; border-color:#aeb8c4; }
.classifieds-home-slider__button:focus-visible { outline:2px solid #2777d4; outline-offset:3px; }
.classifieds-home-slider__viewport { display:block; overflow:hidden; min-width:0; width:100%; }
.classifieds-home-slider__viewport .classifieds-home-slider__track { display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; align-items:stretch; gap:1rem; width:100%; overflow-x:auto !important; overflow-y:hidden; margin:0 !important; padding:0 0 12px !important; scroll-snap-type:x mandatory; scroll-behavior:smooth; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#c3cbd5 transparent; }
.classifieds-home-slider__viewport .classifieds-home-slider__track > [class*="col-"] { box-sizing:border-box; flex:0 0 var(--classifieds-slider-card-width,286px) !important; width:var(--classifieds-slider-card-width,286px) !important; max-width:var(--classifieds-slider-card-width,286px) !important; min-width:0; margin:0 !important; padding:0 !important; scroll-snap-align:start; }
.classifieds-home-slider__viewport .classifieds-home-slider__track > :not([class*="col-"]) { box-sizing:border-box; flex:0 0 var(--classifieds-slider-card-width,286px); max-width:var(--classifieds-slider-card-width,286px); scroll-snap-align:start; }
.classifieds-home-slider__viewport .classifieds-home-slider__track > [class*="col-"] > * { height:100%; }
.classifieds-home-slider__viewport .classifieds-home-slider__track img { max-width:100%; }
@media(max-width:575.98px) {
 .classifieds-home-slider { margin:1.3rem 0 1.7rem; }
 .classifieds-home-slider__subtitle { font-size:.84rem; }
 .classifieds-home-slider__button { width:38px; height:38px; }
 .classifieds-home-slider__viewport .classifieds-home-slider__track > [class*="col-"], .classifieds-home-slider__viewport .classifieds-home-slider__track > :not([class*="col-"]) { flex-basis:78vw !important; width:78vw !important; max-width:310px !important; }
}

/* AUTO_CLASSIFIEDS_HOME_SLIDER_MANUAL_V3 */
.classifieds-home-slider__viewport { overflow:hidden; width:100%; min-width:0; }
.classifieds-home-slider__viewport .classifieds-home-slider__track { display:flex !important; flex-direction:row; flex-wrap:nowrap; align-items:stretch; gap:1rem; width:100%; overflow-x:auto; overflow-y:hidden; margin:0; padding:0 0 12px; scroll-snap-type:x mandatory; scroll-behavior:smooth; overscroll-behavior-inline:contain; scrollbar-width:thin; }
.classifieds-home-slider__card { flex:0 0 var(--classifieds-slider-card-width,286px); width:var(--classifieds-slider-card-width,286px); max-width:var(--classifieds-slider-card-width,286px); min-width:0; overflow:hidden; display:flex; flex-direction:column; border:1px solid #e2e6eb; border-radius:14px; background:#fff; box-shadow:0 3px 12px rgba(25,35,45,.07); scroll-snap-align:start; }
.classifieds-home-slider__image-link { display:block; height:185px; overflow:hidden; background:#f1f3f5; }
.classifieds-home-slider__image { display:block; width:100%; height:185px; object-fit:cover; }
.classifieds-home-slider__card-body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:14px; min-width:0; }
.classifieds-home-slider__card-title { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin:0 0 8px; font-size:1.02rem; font-weight:700; line-height:1.35; }
.classifieds-home-slider__price { margin-bottom:6px; font-size:1.08rem; font-weight:750; color:#182b3c; }
.classifieds-home-slider__location { margin-bottom:8px; color:#687482; font-size:.85rem; }
.classifieds-home-slider__description { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; margin:0 0 12px; color:#48525e; font-size:.9rem; line-height:1.45; }
.classifieds-home-slider__link { display:inline-flex; gap:6px; align-items:center; margin-top:auto; padding-top:8px; color:#1769aa; font-weight:650; text-decoration:none; }
.classifieds-home-slider__link:hover { text-decoration:underline; }
.classifieds-home-slider__controls { display:flex; gap:.5rem; flex-shrink:0; }
.classifieds-home-slider__button { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border:1px solid #d8dde4; border-radius:50%; background:#fff; color:#202630; font-size:1.35rem; cursor:pointer; }
.classifieds-home-slider__button:hover { background:#f2f5f8; }
@media(max-width:575.98px) { .classifieds-home-slider__card { flex-basis:78vw; width:78vw; max-width:310px; } .classifieds-home-slider__image-link,.classifieds-home-slider__image { height:165px; } }


/* HOMEPAGE_PROMO_CSS_START */
/* Homepage partner promotion — isolated classes to avoid changing existing components. */
.homepage-promo-wrap{width:100%;max-width:1320px;margin:28px auto 34px;padding:0 18px;position:relative;z-index:1;font-family:inherit;color:#18233b}
.homepage-promo-wrap[hidden]{display:none!important}
.homepage-promo-card{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);min-height:350px;overflow:hidden;border:1px solid #e4e9f2;border-radius:24px;background:#fff;box-shadow:0 16px 44px rgba(23,42,84,.09)}
.homepage-promo-visual{position:relative;min-height:350px;overflow:hidden;background:linear-gradient(135deg,#17294b,#3b5595)}
.homepage-promo-visual:after{content:"";position:absolute;inset:40% 0 0;pointer-events:none;background:linear-gradient(0deg,rgba(12,22,44,.48),transparent)}
.homepage-promo-visual img{display:block;width:100%;height:100%;min-height:350px;max-height:470px;object-fit:cover;object-position:center;transition:transform .45s ease}
.homepage-promo-card:hover .homepage-promo-visual img{transform:scale(1.025)}
.homepage-promo-visual-badge{position:absolute;top:18px;left:18px;z-index:1;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(13,26,52,.58);backdrop-filter:blur(12px);color:#fff;font-size:11px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.homepage-promo-pulse{width:7px;height:7px;border-radius:50%;background:#69e4b1;box-shadow:0 0 0 4px rgba(105,228,177,.18)}
.homepage-promo-discount{position:absolute;bottom:18px;left:18px;z-index:1;max-width:calc(100% - 36px);display:inline-block;padding:10px 14px;border:1px solid rgba(255,255,255,.7);border-radius:12px;background:#f3fff8;color:#126b50;font-size:13px;font-weight:850;box-shadow:0 8px 24px rgba(0,0,0,.14)}
.homepage-promo-content{min-width:0;padding:27px clamp(20px,3vw,40px) 24px;display:flex;flex-direction:column;align-items:flex-start}
.homepage-promo-eyebrow{display:flex;align-items:center;gap:8px;color:#3754bd;font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}
.homepage-promo-sparkle{font-size:16px;color:#f2a542;letter-spacing:0}
.homepage-promo-partner{margin-top:12px;color:#778197;font-size:13px;font-weight:700}
.homepage-promo-title{font-size:clamp(24px,2.25vw,34px);line-height:1.14;letter-spacing:-.045em;font-weight:850;color:#16223c;margin:5px 0 0;overflow-wrap:anywhere}
.homepage-promo-description{font-size:14px;line-height:1.62;color:#626e83;margin:11px 0 0;max-width:62ch}
.homepage-promo-validity{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:17px;color:#68758b;font-size:12px;line-height:1.4}
.homepage-promo-clock{font-size:17px;color:#4965c8;margin-right:2px}
.homepage-promo-validity strong{color:#34435f;font-weight:800}
.homepage-promo-countdown{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:9px;padding:9px 12px;border:1px solid #e7ebf6;border-radius:10px;background:#f7f9ff;max-width:100%}
.homepage-promo-countdown-label{color:#66728a;font-size:11px;font-weight:750}
.homepage-promo-countdown-value{color:#2e4ba8;font-size:12px;font-variant-numeric:tabular-nums;font-weight:850;letter-spacing:.01em}
.homepage-promo-code-row{display:flex;align-items:stretch;gap:8px;width:100%;margin-top:17px}
.homepage-promo-code-box{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:10px 13px;border:1px dashed #aab7e8;border-radius:12px;background:linear-gradient(135deg,#f7f8ff,#fff);overflow:hidden}
.homepage-promo-code-label{display:block;color:#7b86a7;font-size:9px;font-weight:850;letter-spacing:.13em}
.homepage-promo-code{display:block;margin-top:4px;color:#263f9c;font-size:clamp(17px,1.6vw,22px);font-weight:900;letter-spacing:.07em;line-height:1.3;overflow-wrap:anywhere;word-break:break-word}
.homepage-promo-copy{flex:0 0 auto;min-width:116px;align-self:stretch;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid #d5defc;border-radius:12px;background:#edf1ff;color:#2e4db6;font:inherit;font-size:12px;font-weight:850;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.homepage-promo-copy:hover{background:#dfe6ff;border-color:#b5c4fa}
.homepage-promo-copy.is-copied{background:#e9f9ef;border-color:#a9e5bf;color:#147447}
.homepage-promo-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;margin-top:13px;padding:11px 17px;border-radius:12px;background:#294cc4;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:850;box-shadow:0 7px 18px rgba(41,76,196,.2);transition:transform .2s,background .2s}
.homepage-promo-cta:hover{background:#1e3eaa;transform:translateY(-1px)}
.homepage-promo-terms{width:100%;margin-top:12px;padding-top:10px;border-top:1px solid #eef0f5;color:#69758a;font-size:12px}
.homepage-promo-terms summary{cursor:pointer;font-weight:750;color:#53617a}
.homepage-promo-terms p{line-height:1.6;margin:8px 0 0;white-space:pre-line}
.homepage-promo-note{font-size:10px;line-height:1.45;color:#929bad;margin:9px 0 0}
@media(max-width:920px){.homepage-promo-card{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.homepage-promo-content{padding:22px 22px 20px}.homepage-promo-visual,.homepage-promo-visual img{min-height:320px}}
@media(max-width:680px){.homepage-promo-wrap{margin:20px auto 24px;padding:0 12px}.homepage-promo-card{grid-template-columns:1fr;border-radius:19px}.homepage-promo-visual{min-height:225px;max-height:270px}.homepage-promo-visual img{min-height:225px;max-height:270px}.homepage-promo-content{padding:22px 18px 19px}.homepage-promo-title{font-size:27px}.homepage-promo-code-row{gap:7px}.homepage-promo-copy{min-width:98px;padding:10px}.homepage-promo-countdown{gap:7px}}
@media(max-width:390px){.homepage-promo-code-row{flex-direction:column}.homepage-promo-copy{width:100%;min-height:40px}.homepage-promo-countdown-value{font-size:11px}}
@media(prefers-reduced-motion:reduce){.homepage-promo-visual img,.homepage-promo-cta{transition:none}}

/* HOMEPAGE_PROMO_CSS_END */

/* HOMEPAGE_PROMO_CAROUSEL_UPDATE_START */
/* Homepage partner promotion carousel update — neutral image canvas, brand-aligned accents. */
.homepage-promo-wrap{width:100%;max-width:1320px;margin:28px auto 34px;padding:0 18px;position:relative;z-index:1;font-family:inherit;color:#1f2937}
.homepage-promo-wrap[hidden]{display:none!important}
.homepage-promo-card{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:350px;overflow:hidden;border:1px solid #e2e8e5;border-radius:20px;background:#fff;box-shadow:0 12px 36px rgba(25,45,38,.08)}
.homepage-promo-visual{position:relative;min-height:360px;overflow:hidden;background:#f4f6f4;isolation:isolate}
.homepage-promo-visual:after{display:none!important;content:none!important}
.homepage-promo-slides{position:absolute;inset:0;overflow:hidden;background:#f4f6f4}
.homepage-promo-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;z-index:0;transition:opacity .38s ease,visibility .38s ease;background:#f4f6f4}
.homepage-promo-slide.is-active{opacity:1;visibility:visible;z-index:1}
.homepage-promo-slide img,.homepage-promo-visual img{display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:contain;object-position:center center;padding:8px;background:#f4f6f4;transition:none}
.homepage-promo-card:hover .homepage-promo-visual img{transform:none}
.homepage-promo-visual-badge{position:absolute;top:17px;left:17px;z-index:4;display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid rgba(255,255,255,.85);border-radius:999px;background:rgba(255,255,255,.94);color:#34433d;font-size:10px;font-weight:850;letter-spacing:.055em;text-transform:uppercase;box-shadow:0 3px 12px rgba(25,45,38,.07)}
.homepage-promo-pulse{width:7px;height:7px;border-radius:50%;background:#21966b;box-shadow:0 0 0 4px rgba(33,150,107,.12)}
.homepage-promo-discount{position:absolute;bottom:18px;left:18px;z-index:4;max-width:calc(100% - 36px);display:inline-block;padding:9px 13px;border:1px solid #cfe8d9;border-radius:11px;background:#eaf7ef;color:#176844;font-size:13px;font-weight:850;box-shadow:0 6px 16px rgba(20,70,48,.08)}
.homepage-promo-arrow{position:absolute;top:50%;z-index:5;display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-top:-20px;border:1px solid rgba(226,232,229,.95);border-radius:50%;background:rgba(255,255,255,.94);color:#253a31;font:inherit;font-size:27px;line-height:1;box-shadow:0 5px 16px rgba(25,45,38,.15);cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.homepage-promo-arrow:hover{background:#1f7651;color:#fff;transform:scale(1.05)}
.homepage-promo-prev{left:12px}.homepage-promo-next{right:12px}
.homepage-promo-dots{position:absolute;left:50%;bottom:18px;z-index:5;display:flex;align-items:center;gap:7px;transform:translateX(-50%);padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 3px 12px rgba(25,45,38,.1)}
.homepage-promo-dot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#c5cec8;cursor:pointer;transition:width .2s ease,background .2s ease}
.homepage-promo-dot.is-active{width:20px;border-radius:999px;background:#25865e}
.homepage-promo-slide-count{position:absolute;right:15px;bottom:18px;z-index:4;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.9);color:#526158;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}
.homepage-promo-content{min-width:0;padding:27px clamp(20px,3vw,40px) 24px;display:flex;flex-direction:column;align-items:flex-start}
.homepage-promo-eyebrow{display:flex;align-items:center;gap:8px;color:#267750;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.homepage-promo-sparkle{font-size:16px;color:#db9b3d;letter-spacing:0}
.homepage-promo-partner{display:flex;align-items:center;gap:7px;margin-top:12px;color:#65736b;font-size:13px;font-weight:750}
.homepage-promo-partner-mark{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:#e7f5ec;color:#207349;font-size:11px;font-weight:900}
.homepage-promo-title{font-size:clamp(24px,2.25vw,34px);line-height:1.14;letter-spacing:-.04em;font-weight:850;color:#1d2b24;margin:5px 0 0;overflow-wrap:anywhere}
.homepage-promo-description{font-size:14px;line-height:1.62;color:#59665f;margin:11px 0 0;max-width:62ch}
.homepage-promo-validity{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:17px;color:#66736c;font-size:12px;line-height:1.4}
.homepage-promo-clock{font-size:17px;color:#28835c;margin-right:2px}
.homepage-promo-validity strong{color:#35463c;font-weight:800}
.homepage-promo-countdown{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:9px;padding:9px 12px;border:1px solid #e2ece5;border-radius:10px;background:#f6faf7;max-width:100%}
.homepage-promo-countdown-label{color:#66756b;font-size:11px;font-weight:750}
.homepage-promo-countdown-value{color:#1e774e;font-size:12px;font-variant-numeric:tabular-nums;font-weight:850;letter-spacing:.01em}
.homepage-promo-code-row{display:flex;align-items:stretch;gap:8px;width:100%;margin-top:17px}
.homepage-promo-code-box{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:10px 13px;border:1px dashed #97c8ab;border-radius:12px;background:linear-gradient(135deg,#f4fbf6,#fff);overflow:hidden}
.homepage-promo-code-label{display:block;color:#688775;font-size:9px;font-weight:850;letter-spacing:.13em}
.homepage-promo-code{display:block;margin-top:4px;color:#1f754c;font-size:clamp(17px,1.6vw,22px);font-weight:900;letter-spacing:.07em;line-height:1.3;overflow-wrap:anywhere;word-break:break-word}
.homepage-promo-copy{flex:0 0 auto;min-width:116px;align-self:stretch;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid #cee5d5;border-radius:12px;background:#eaf6ee;color:#1e7049;font:inherit;font-size:12px;font-weight:850;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.homepage-promo-copy:hover{background:#d9efe1;border-color:#a9d5b7}
.homepage-promo-copy.is-copied{background:#e0f7e7;border-color:#8fd0a2;color:#146b3d}
.homepage-promo-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;margin-top:13px;padding:11px 17px;border-radius:11px;background:#24764f;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:850;box-shadow:0 7px 18px rgba(36,118,79,.17);transition:transform .2s,background .2s}
.homepage-promo-cta:hover{background:#195e3e;transform:translateY(-1px)}
.homepage-promo-terms{width:100%;margin-top:12px;padding-top:10px;border-top:1px solid #edf1ee;color:#69766e;font-size:12px}
.homepage-promo-terms summary{cursor:pointer;font-weight:750;color:#4e6156}
.homepage-promo-terms p{line-height:1.6;margin:8px 0 0;white-space:pre-line}
.homepage-promo-note{font-size:10px;line-height:1.45;color:#8a958e;margin:9px 0 0}
@media(max-width:920px){.homepage-promo-card{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.homepage-promo-content{padding:22px 22px 20px}.homepage-promo-visual{min-height:320px}}
@media(max-width:680px){.homepage-promo-wrap{margin:20px auto 24px;padding:0 12px}.homepage-promo-card{grid-template-columns:1fr;border-radius:17px}.homepage-promo-visual{min-height:225px;max-height:270px}.homepage-promo-slides,.homepage-promo-slide{min-height:225px;max-height:270px}.homepage-promo-content{padding:22px 18px 19px}.homepage-promo-title{font-size:27px}.homepage-promo-code-row{gap:7px}.homepage-promo-copy{min-width:98px;padding:10px}.homepage-promo-countdown{gap:7px}.homepage-promo-slide-count{bottom:15px;right:12px}.homepage-promo-dots{bottom:15px}.homepage-promo-arrow{width:36px;height:36px;font-size:24px}}
@media(max-width:390px){.homepage-promo-code-row{flex-direction:column}.homepage-promo-copy{width:100%;min-height:40px}.homepage-promo-countdown-value{font-size:11px}.homepage-promo-visual{min-height:205px}.homepage-promo-slides,.homepage-promo-slide{min-height:205px}}
@media(prefers-reduced-motion:reduce){.homepage-promo-slide,.homepage-promo-arrow,.homepage-promo-dot,.homepage-promo-cta{transition:none}}
/* HOMEPAGE_PROMO_CAROUSEL_UPDATE_END */


/* PROMOCJA_TLO_PIERWOTNE_START */
.homepage-promo-visual,
.homepage-promo-slides,
.homepage-promo-slide {
  background: linear-gradient(135deg, #082f55 0%, #0b4f83 50%, #087eb5 100%) !important;
}
.homepage-promo-visual img,
.homepage-promo-slide img {
  object-fit: cover !important;
  background: transparent !important;
}
/* PROMOCJA_TLO_PIERWOTNE_END */

/* PROMO_STABLE_TERMS_LAYOUT_START */
.homepage-promo-card {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: 0 12px 30px rgba(24,35,59,.10) !important;
  align-items: start !important;
}

.homepage-promo-visual,
.homepage-promo-slides,
.homepage-promo-slide {
  box-sizing: border-box !important;
  height: clamp(350px, 31vw, 470px) !important;
  min-height: 0 !important;
  max-height: 470px !important;
  align-self: start !important;
  overflow: hidden !important;
}

.homepage-promo-visual > img,
.homepage-promo-slides img,
.homepage-promo-slide img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  object-fit: cover !important;
  border: 0 !important;
  outline: 0 !important;
}

.homepage-promo-terms {
  position: relative !important;
}

.homepage-promo-terms[open] {
  position: relative !important;
  z-index: 20 !important;
}

.homepage-promo-terms[open] > p {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: calc(100% + 8px) !important;
  z-index: 30 !important;
  box-sizing: border-box !important;
  max-height: 150px !important;
  overflow-y: auto !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  background: #fff !important;
  color: #4b5563 !important;
  border: 1px solid #dce2ea !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 28px rgba(24,35,59,.16) !important;
  white-space: normal !important;
}

.homepage-promo-terms summary {
  cursor: pointer;
}

.homepage-promo-terms summary:focus-visible {
  outline: 2px solid #9ca3af !important;
  outline-offset: 2px !important;
}

@media (max-width: 680px) {
  .homepage-promo-visual,
  .homepage-promo-slides,
  .homepage-promo-slide {
    height: 250px !important;
    min-height: 250px !important;
    max-height: 250px !important;
  }
}
/* PROMO_STABLE_TERMS_LAYOUT_END */

/* PROMO_AUTUMN_REVEAL_UPDATE_START */
.homepage-promo-wrap {
  box-sizing:border-box!important; padding:22px!important;
  border-radius:26px!important; overflow:visible!important;
  position:relative!important; z-index:80!important;
  background-color:#6b7545!important;
  background-image:linear-gradient(120deg,rgba(25,45,29,.25),rgba(105,52,20,.24)),url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201200%20360'%3E%3Cdefs%3E%3ClinearGradient%20id='sky'%20x1='0'%20y1='0'%20x2='0'%20y2='1'%3E%3Cstop%20stop-color='%23c87931'/%3E%3Cstop%20offset='1'%20stop-color='%23f3d6a2'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect%20width='1200'%20height='360'%20fill='url(%23sky)'/%3E%3Ccircle%20cx='930'%20cy='75'%20r='45'%20fill='%23ffe8b0'%20opacity='.8'/%3E%3Cpath%20d='M0%20210%20Q150%20105%20300%20210%20T600%20205%20T900%20190%20T1200%20210%20V360%20H0Z'%20fill='%23b96e32'/%3E%3Cpath%20d='M0%20270%20Q180%20175%20360%20260%20T720%20245%20T1200%20265%20V360%20H0Z'%20fill='%236a7545'/%3E%3Cpath%20d='M0%20310%20Q220%20240%20440%20300%20T880%20285%20T1200%20305%20V360%20H0Z'%20fill='%23365339'/%3E%3Cg%20fill='%23213e2b'%3E%3Cpath%20d='M20%20360%20L80%20170%20L140%20360Z%20M45%20360%20L80%20220%20L115%20360Z'/%3E%3Cpath%20d='M160%20360%20L220%20135%20L280%20360Z%20M187%20360%20L220%20190%20L253%20360Z'/%3E%3Cpath%20d='M930%20360%20L990%20120%20L1050%20360Z%20M956%20360%20L990%20190%20L1024%20360Z'/%3E%3Cpath%20d='M1060%20360%20L1120%20160%20L1180%20360Z%20M1087%20360%20L1120%20215%20L1153%20360Z'/%3E%3C/g%3E%3Cg%20fill='%23ad4925'%3E%3Ccircle%20cx='335'%20cy='218'%20r='31'/%3E%3Ccircle%20cx='370'%20cy='226'%20r='25'/%3E%3Ccircle%20cx='830'%20cy='205'%20r='34'/%3E%3Ccircle%20cx='865'%20cy='215'%20r='25'/%3E%3C/g%3E%3Cg%20fill='%23e8a03d'%3E%3Ccircle%20cx='327'%20cy='205'%20r='22'/%3E%3Ccircle%20cx='818'%20cy='194'%20r='22'/%3E%3Ccircle%20cx='500'%20cy='233'%20r='13'/%3E%3Ccircle%20cx='700'%20cy='219'%20r='15'/%3E%3C/g%3E%3C/svg%3E")!important;
  background-size:cover!important; background-position:center!important;
  background-repeat:no-repeat!important;
}
.homepage-promo-card {
  overflow:visible!important; border:0!important; outline:0!important;
  border-radius:22px!important; background:#fffdf8!important;
  box-shadow:0 14px 34px rgba(33,49,32,.20)!important;
}
.homepage-promo-visual {
  position:relative!important; padding:0!important;
  border:0!important; outline:0!important; box-shadow:none!important;
  background:linear-gradient(140deg,#c5a16a,#728058,#a85d32)!important;
  border-radius:22px 0 0 22px!important; overflow:hidden!important;
}
.homepage-promo-visual:before,.homepage-promo-visual:after,
.homepage-promo-slides,.homepage-promo-slide {
  border:0!important; outline:0!important; box-shadow:none!important;
}
.homepage-promo-slides,.homepage-promo-slide {
  background:transparent!important; padding:0!important;
}
.homepage-promo-slide img,.homepage-promo-visual > img {
  display:block!important; width:100%!important; height:100%!important;
  min-height:0!important; max-height:none!important; padding:0!important;
  border:0!important; outline:0!important; box-shadow:none!important;
  background:transparent!important; object-fit:cover!important;
  object-position:center!important;
}
.homepage-promo-content {
  position:relative!important; z-index:2!important; overflow:visible!important;
  background:#fffdf8!important; border-radius:0 22px 22px 0!important;
}
.homepage-promo-eyebrow,.homepage-promo-clock {color:#54713f!important}
.homepage-promo-countdown {border-color:#e3e8d8!important;background:#f7f7ef!important}
.homepage-promo-countdown-value,.homepage-promo-code {color:#315b38!important}
.homepage-promo-code-box {border-color:#9bb28b!important;background:#f9faf4!important}
.homepage-promo-copy {border-color:#c7d6bb!important;background:#edf3e6!important;color:#315b38!important}
.homepage-promo-cta {background:#365f3a!important;box-shadow:0 7px 18px rgba(54,95,58,.18)!important}
.homepage-promo-cta:hover {background:#284b2e!important}
.homepage-promo-reveal {
  display:inline-flex!important; align-items:center!important; justify-content:center!important;
  gap:9px!important; margin-top:16px!important; padding:11px 15px!important;
  border:1px solid #c9d6bd!important; border-radius:11px!important;
  background:linear-gradient(135deg,#f8f9f1,#e9f0df)!important;
  color:#315b38!important; font:inherit!important; font-size:13px!important;
  font-weight:800!important; cursor:pointer!important;
}
.homepage-promo-reveal:hover {background:#e4ecd9!important}
.homepage-promo-reveal[hidden],.homepage-promo-code-row[hidden] {display:none!important}
.homepage-promo-terms {
  position:relative!important; z-index:20!important; width:100%!important;
  margin-top:12px!important; padding:0!important; border:0!important;
  color:#5c6859!important;
}
.homepage-promo-terms summary {
  display:inline-flex!important; align-items:center!important; gap:7px!important;
  padding:7px 0!important; color:#42613e!important; font-weight:800!important;
  cursor:pointer!important;
}
.homepage-promo-terms[open] > p {
  position:absolute!important; top:calc(100% + 7px)!important; bottom:auto!important;
  left:0!important; right:auto!important; z-index:100!important;
  box-sizing:border-box!important; width:min(100%,430px)!important;
  max-height:190px!important; overflow-y:auto!important; margin:0!important;
  padding:13px 15px!important; border:1px solid #e3d4bc!important;
  border-radius:12px!important; background:#fffdf7!important; color:#4e594b!important;
  box-shadow:0 12px 30px rgba(35,42,28,.22)!important; line-height:1.6!important;
  white-space:pre-line!important;
}
.homepage-promo-terms summary:focus-visible,.homepage-promo-reveal:focus-visible {
  outline:2px solid #65864f!important; outline-offset:3px!important;
}
@media(max-width:680px) {
  .homepage-promo-wrap {padding:12px!important;border-radius:20px!important}
  .homepage-promo-card {border-radius:17px!important}
  .homepage-promo-visual {border-radius:17px 17px 0 0!important}
  .homepage-promo-content {border-radius:0 0 17px 17px!important}
}
/* PROMO_AUTUMN_REVEAL_UPDATE_END */
.homepage-promo-visual,.homepage-promo-slides,.homepage-promo-slide{border:0!important;outline:0!important;box-shadow:none!important;background:linear-gradient(135deg,#294832,#a66535,#e0bd79)!important}
.homepage-promo-visual img,.homepage-promo-slide img{border:0!important;outline:0!important;object-fit:cover!important}
.homepage-promo-wrap{background:radial-gradient(ellipse at 10% 20%,#bd8047 0,transparent 35%),linear-gradient(120deg,#203e2c,#7d633c,#c38a4d)!important;border-radius:22px!important;padding:16px!important}
.homepage-promo-code-row[hidden],.homepage-promo-reveal[hidden]{display:none!important}
.homepage-promo-reveal{margin:12px 0;padding:10px 14px;border:1px solid #d5dfca;border-radius:10px;background:#eef3e7;color:#315b38;font-weight:700;cursor:pointer}
.homepage-promo-terms{position:relative!important}
.homepage-promo-terms[open]>p{position:absolute!important;top:calc(100% + 6px)!important;bottom:auto!important;left:0!important;right:auto!important;z-index:100!important;width:min(380px,85vw)!important;max-height:180px!important;overflow:auto!important;margin:0!important;padding:13px!important;background:#fffdf7!important;border:1px solid #e1d4bd!important;border-radius:12px!important;box-shadow:0 10px 25px #26362633!important}
/* Aktualny wyglad promocji */
.homepage-promo-wrap {
  width:100vw!important; max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  border-radius:0!important; border:0!important;
  background:
    radial-gradient(ellipse at 15% 90%,#a65e2e 0,transparent 45%),
    radial-gradient(ellipse at 75% 10%,#bd914d 0,transparent 40%),
    linear-gradient(110deg,#233e2c,#745334 52%,#344e35)!important;
  padding:24px max(14px,calc((100vw - 1320px)/2))!important;
}
.homepage-promo-card,.homepage-promo-visual,
.homepage-promo-slides,.homepage-promo-slide,
.homepage-promo-visual img,.homepage-promo-slide img {
  border-radius:0!important; border:0!important;
  outline:0!important; box-shadow:none!important;
}
.homepage-promo-visual img,.homepage-promo-slide img {
  width:100%!important; height:100%!important;
  object-fit:cover!important;
}
.homepage-promo-reveal,[data-reveal-promo-code] {display:none!important}
.homepage-promo-code-row[hidden] {display:flex!important}
.homepage-promo-terms {position:relative!important}
.homepage-promo-terms[open]>p {
  position:absolute!important; top:calc(100% + 6px)!important;
  bottom:auto!important; left:0!important; right:auto!important;
  z-index:100!important; width:min(380px,85vw)!important;
  background:#fffdf7!important; border-radius:8px!important;
  box-shadow:0 10px 25px #26362633!important;
}
/* PROMOCJA_PROSTOKATNA_JESIEN */
.homepage-promo-wrap {
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  padding:24px max(14px,calc((100vw - 1320px)/2))!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(110deg,#243e2c,#795536 52%,#aa7540,#344c32)!important;
}
.homepage-promo-card,
.homepage-promo-visual,
.homepage-promo-slides,
.homepage-promo-slide,
.homepage-promo-visual img,
.homepage-promo-slide img {
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.homepage-promo-visual img,
.homepage-promo-slide img {
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.homepage-promo-code-row[hidden] {display:flex!important}
.homepage-promo-reveal,
[data-reveal-promo-code] {display:none!important}
.homepage-promo-terms {position:relative!important}
.homepage-promo-terms[open]>p {
  position:absolute!important;
  top:calc(100% + 8px)!important;
  bottom:auto!important;
  left:0!important;
  right:auto!important;
  z-index:100!important;
  width:min(380px,85vw)!important;
  background:#fffdf7!important;
  border-radius:8px!important;
  box-shadow:0 10px 25px #26362633!important;
}
/* ZRYWKARZE_AUTUMN_FOREST_SYNC */
html,body{overflow-x:clip!important}
.homepage-promo-wrap{
 position:relative!important;isolation:isolate!important;
 width:100%!important;max-width:1320px!important;
 margin:28px auto!important;padding:24px 18px!important;
 box-sizing:border-box!important;background:transparent!important;
 border:0!important;border-radius:0!important;overflow:visible!important
}
.homepage-promo-wrap:before{
 content:"";position:absolute;z-index:-1;top:0;bottom:0;
 left:50%;transform:translateX(-50%);width:100vw;
 background-image:linear-gradient(90deg,rgba(18,35,20,.20),rgba(18,35,20,.12)),
 url("https://thumb.wikimedia.org/wikipedia/commons/thumb/c/ce/Sunrays_in_an_autumn_forest_%28Unsplash%29.jpg/1280px-Sunrays_in_an_autumn_forest_%28Unsplash%29.jpg");
 background-size:cover;background-position:center 52%;
 background-repeat:no-repeat;pointer-events:none
}
.homepage-promo-card{
 border:0!important;border-radius:22px!important;
 overflow:visible!important;box-shadow:0 12px 30px #14281838!important
}
.homepage-promo-visual{
 border:0!important;outline:0!important;
 border-radius:22px 0 0 22px!important;overflow:hidden!important;
 box-shadow:none!important
}
.homepage-promo-slides{border-radius:inherit!important;overflow:hidden!important}
.homepage-promo-slide{border:0!important;outline:0!important;overflow:hidden!important}
.homepage-promo-visual img,.homepage-promo-slide img{
 display:block!important;border:0!important;outline:0!important;
 box-shadow:none!important;max-width:100%!important;object-fit:cover!important
}
.homepage-promo-content{
 border-radius:0 22px 22px 0!important;overflow:visible!important
}
.homepage-promo-terms[open]>p{
 z-index:100!important;border-radius:12px!important
}
@media(max-width:680px){
 .homepage-promo-wrap{padding:14px 12px!important}
 .homepage-promo-visual{border-radius:18px 18px 0 0!important}
 .homepage-promo-slides{border-radius:inherit!important}
 .homepage-promo-content{border-radius:0 0 18px 18px!important}
}

/* Zdjęcie produktu wyrównane do dolnej krawędzi */
.homepage-promo-visual,
.homepage-promo-slides,
.homepage-promo-slide {
  overflow: hidden !important;
}

.homepage-promo-slide img,
.homepage-promo-visual > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center bottom !important;
}

/* PROMO_IMAGE_FILL_FIX_START */
.homepage-promo-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
}
.homepage-promo-visual {
  position: relative !important;
  min-width: 0 !important;
  min-height: 420px !important;
  align-self: stretch !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.homepage-promo-slides {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.homepage-promo-slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}
.homepage-promo-slide img,
.homepage-promo-visual > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center bottom !important;
  background: transparent !important;
  border: 0 !important;
}
@media (max-width: 680px) {
  .homepage-promo-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .homepage-promo-visual {
    height: 280px !important;
    min-height: 280px !important;
  }
}
/* PROMO_IMAGE_FILL_FIX_END */

/* POPRAWKA: zdjęcie produktu wypełnia całą ramkę */
.homepage-promo-card {
  align-items: stretch !important;
}

.homepage-promo-visual {
  position: relative !important;
  min-height: 460px !important;
  height: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.homepage-promo-slides,
.homepage-promo-slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.homepage-promo-slide img,
.homepage-promo-visual > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  padding: 0 !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center bottom !important;
  transform: scale(1.18) !important;
  transform-origin: center bottom !important;
  background: transparent !important;
}

@media (max-width: 680px) {
  .homepage-promo-visual {
    height: 280px !important;
    min-height: 280px !important;
  }
}

/* KONIEC POPRAWKI ZDJĘCIA */\n\n/* PROMO_IMAGE_FILL_HOVER_START */
.homepage-promo-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
}
.homepage-promo-visual {
  position: relative !important;
  display: block !important;
  min-width: 0 !important;
  min-height: 460px !important;
  height: 100% !important;
  align-self: stretch !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
}
.homepage-promo-slides,
.homepage-promo-slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.homepage-promo-slide img,
.homepage-promo-visual > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center bottom !important;
  transform: scale(1.03) !important;
  transform-origin: center bottom !important;
  transition: transform .45s ease !important;
}
.homepage-promo-visual:hover .homepage-promo-slide.is-active img,
.homepage-promo-visual:focus-within .homepage-promo-slide.is-active img {
  transform: scale(1.16) !important;
}
@media (max-width: 680px) {
  .homepage-promo-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .homepage-promo-visual {
    height: 280px !important;
    min-height: 280px !important;
  }
}
/* PROMO_IMAGE_FILL_HOVER_END */\n
/* DESKTOP: zdjęcie wypełnia kartę do samego dołu */
@media (min-width: 681px) {
  .homepage-promo-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
  }

  .homepage-promo-visual {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    align-self: stretch !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  .homepage-promo-slides {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .homepage-promo-slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .homepage-promo-slide img,
  .homepage-promo-visual > img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center bottom !important;
  }
}


/* FINALNA POPRAWKA: zdjęcie do wszystkich krawędzi ramki */
.homepage-promo-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

.homepage-promo-visual {
  position: relative !important;
  display: block !important;
  align-self: stretch !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  line-height: 0 !important;
  border-radius: 22px 0 0 22px !important;
}

.homepage-promo-slides {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: inherit !important;
}

.homepage-promo-slide,
.homepage-promo-slide.is-active {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: inherit !important;
}

.homepage-promo-slide img,
.homepage-promo-visual > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border: 0 !important;
  border-radius: inherit !important;
  box-shadow: none !important;
  transition: transform .4s ease !important;
}

.homepage-promo-visual:hover .homepage-promo-slide.is-active img {
  transform: scale(1.08) !important;
}

@media (max-width: 680px) {
  .homepage-promo-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .homepage-promo-visual {
    height: 280px !important;
    min-height: 280px !important;
    border-radius: 18px 18px 0 0 !important;
  }
}


/* Wyrownanie dolnej krawedzi zdjecia i karty promocji */
.homepage-promo-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-template-rows: minmax(460px, auto) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

.homepage-promo-visual {
  position: relative !important;
  grid-row: 1 !important;
  align-self: stretch !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.homepage-promo-slides,
.homepage-promo-slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.homepage-promo-slide img,
.homepage-promo-visual > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center bottom !important;
}

@media (max-width: 680px) {
  .homepage-promo-card {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
  }

  .homepage-promo-visual {
    grid-row: auto !important;
    height: 280px !important;
    min-height: 280px !important;
  }
}


/* Wypelnienie calej wysokosci karty promocji */
.homepage-promo-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  height: auto !important;
  overflow: hidden !important;
}

.homepage-promo-visual {
  position: relative !important;
  align-self: stretch !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.homepage-promo-slides,
.homepage-promo-slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.homepage-promo-slide img,
.homepage-promo-visual > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center bottom !important;
}

@media (max-width: 680px) {
  .homepage-promo-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .homepage-promo-visual {
    height: 280px !important;
    min-height: 280px !important;
  }
}


/* FIX: przywrócenie zdjęcia i wypełnienie całej wysokości karty */
.homepage-promo-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-template-rows: minmax(500px, auto) !important;
  align-items: stretch !important;
}

.homepage-promo-visual {
  display: block !important;
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  height: auto !important;
  min-height: 500px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  line-height: 0 !important;
}

.homepage-promo-slides {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.homepage-promo-slide,
.homepage-promo-slide.is-active {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.homepage-promo-slide img,
.homepage-promo-visual > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center bottom !important;
  visibility: visible !important;
}

@media (max-width: 680px) {
  .homepage-promo-card {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
  }

  .homepage-promo-visual {
    height: 280px !important;
    min-height: 280px !important;
  }
}


/* Kolory promocji - styl FAO FAR */
.homepage-promo-wrap {
  --promo-green: #26713f;
  --promo-green-dark: #19552f;
  --promo-green-light: #edf5eb;
}

.homepage-promo-eyebrow,
.homepage-promo-partner-mark,
.homepage-promo-clock,
.homepage-promo-terms summary {
  color: #26713f !important;
}

.homepage-promo-discount,
.homepage-promo-cta,
.homepage-promo-copy {
  background-color: #26713f !important;
  border-color: #26713f !important;
  color: #fff !important;
}

.homepage-promo-cta:hover,
.homepage-promo-copy:hover {
  background-color: #19552f !important;
  border-color: #19552f !important;
}

.homepage-promo-countdown,
.homepage-promo-code-box {
  background-color: #edf5eb !important;
  border-color: #9cbea2 !important;
}

.homepage-promo-code,
.homepage-promo-countdown-value {
  color: #19552f !important;
}

.homepage-promo-visual-badge .homepage-promo-pulse,
.homepage-promo-dot.is-active {
  background-color: #26713f !important;
}

.homepage-promo-arrow:hover {
  background-color: #26713f !important;
  color: #fff !important;
}


/* Kolor promocyjny Zrywkarze: #30A61E */
.homepage-promo-wrap {
  --promo-green: #30A61E !important;
  --promo-green-dark: #30A61E !important;
}

.homepage-promo-eyebrow,
.homepage-promo-partner-mark,
.homepage-promo-clock,
.homepage-promo-terms summary,
.homepage-promo-code,
.homepage-promo-countdown-value {
  color: #30A61E !important;
}

.homepage-promo-discount,
.homepage-promo-cta,
.homepage-promo-copy,
.homepage-promo-cta:hover,
.homepage-promo-copy:hover {
  background-color: #30A61E !important;
  border-color: #30A61E !important;
  color: #fff !important;
}

.homepage-promo-dot.is-active,
.homepage-promo-arrow:hover,
.homepage-promo-pulse {
  background-color: #30A61E !important;
}

.homepage-promo-countdown,
.homepage-promo-code-box {
  border-color: #30A61E !important;
}

.homepage-promo-reveal {
  color: #30A61E !important;
  border-color: #30A61E !important;
}


/* Przyciski promocji obok siebie */
.homepage-promo-cta,
.homepage-promo-terms summary {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 11px 17px !important;
  border: 1px solid #30A61E !important;
  border-radius: 11px !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.4 !important;
  vertical-align: middle !important;
  cursor: pointer !important;
  text-decoration: none !important;
}

.homepage-promo-cta {
  background: #30A61E !important;
  color: #fff !important;
  margin: 13px 0 0 !important;
}

.homepage-promo-terms {
  display: inline-flex !important;
  position: relative !important;
  width: auto !important;
  margin: 13px 0 0 10px !important;
  padding: 0 !important;
  vertical-align: middle !important;
}

.homepage-promo-terms summary {
  background: #fff !important;
  color: #30A61E !important;
  list-style: none !important;
  margin: 0 !important;
  transition: background .2s ease, color .2s ease !important;
}

.homepage-promo-terms summary::-webkit-details-marker {
  display: none !important;
}

.homepage-promo-terms summary:hover {
  background: #edf8e9 !important;
}

.homepage-promo-terms[open] > p {
  position: absolute !important;
  top: calc(100% + 8px) !important;
  bottom: auto !important;
  left: 0 !important;
  right: auto !important;
  z-index: 100 !important;
  width: min(380px, 85vw) !important;
  box-sizing: border-box !important;
  padding: 14px !important;
  margin: 0 !important;
  border: 1px solid #30A61E !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: #374151 !important;
  box-shadow: 0 10px 25px #26362633 !important;
  line-height: 1.6 !important;
}

@media (max-width: 480px) {
  .homepage-promo-cta,
  .homepage-promo-terms {
    margin-top: 12px !important;
  }

  .homepage-promo-terms {
    margin-left: 6px !important;
  }
}


/* Oba przyciski promocji: ten sam styl i jeden rząd */
.homepage-promo-cta,
.homepage-promo-terms summary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  min-height: 42px !important;
  padding: 11px 17px !important;
  margin: 13px 0 0 !important;
  border: 1px solid #30A61E !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: #30A61E !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  vertical-align: middle !important;
  text-decoration: none !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: background .2s ease, color .2s ease !important;
}

.homepage-promo-cta:hover,
.homepage-promo-terms summary:hover {
  background: #edf8e9 !important;
  color: #258218 !important;
  border-color: #30A61E !important;
  transform: none !important;
}

.homepage-promo-terms {
  display: inline-flex !important;
  vertical-align: middle !important;
  margin: 13px 0 0 10px !important;
  padding: 0 !important;
}

.homepage-promo-terms summary::-webkit-details-marker {
  display: none !important;
}


/* Przyciski promocji zawsze obok siebie na szerokich ekranach */
.homepage-promo-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 10px !important;
}
.homepage-promo-actions > .homepage-promo-cta,
.homepage-promo-actions > .homepage-promo-terms {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 13px 0 0 !important;
}
.homepage-promo-actions > .homepage-promo-terms summary {
  white-space: nowrap !important;
}
@media (max-width: 480px) {
  .homepage-promo-actions {
    flex-wrap: wrap !important;
  }
}

/* Przyciski promocji — idealnie jedna linia */
.homepage-promo-actions {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 10px !important;
}

.homepage-promo-actions > .homepage-promo-cta,
.homepage-promo-actions > .homepage-promo-terms {
  display: flex !important;
  align-self: center !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
  top: 0 !important;
  transform: none !important;
}

.homepage-promo-actions > .homepage-promo-cta,
.homepage-promo-actions > .homepage-promo-terms > summary {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 17px !important;
  border: 1px solid #30A61E !important;
  border-radius: 11px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  transform: none !important;
}

.homepage-promo-actions > .homepage-promo-terms > summary {
  white-space: nowrap !important;
  list-style: none !important;
}

.homepage-promo-actions > .homepage-promo-terms > summary::-webkit-details-marker {
  display: none !important;
}


/* Równe odstępy w karcie promocji */
.homepage-promo-content {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.homepage-promo-content > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.homepage-promo-code-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
}

.homepage-promo-code-box {
  display: flex !important;
  flex-direction: column !important;
  gap: 7px !important;
  margin: 0 !important;
}

.homepage-promo-code-label {
  display: block !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

.homepage-promo-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 !important;
}

.homepage-promo-actions > .homepage-promo-cta,
.homepage-promo-actions > .homepage-promo-terms {
  margin: 0 !important;
}

.homepage-promo-terms {
  padding: 0 !important;
}

@media (max-width: 480px) {
  .homepage-promo-content {
    gap: 12px !important;
  }

  .homepage-promo-code-row {
    gap: 8px !important;
  }
}


/* Delikatne zielone tło sekcji nazwy i opisu produktu */
.homepage-promo-content {
  background: linear-gradient(
    110deg,
    #eaf4e5 0%,
    #f1f7ed 38%,
    #f7faf4 72%,
    #fbfcf9 100%
  ) !important;
  color: #263d2b !important;
  position: relative !important;
  border-radius: 0 22px 22px 0 !important;
}

/* Nazwa promowanego produktu */
.homepage-promo-title {
  color: #24462d !important;
  font-weight: 850 !important;
  letter-spacing: -0.025em !important;
}

/* Subtelny akcent przy nazwie firmy */
.homepage-promo-partner {
  color: #267a35 !important;
  font-weight: 750 !important;
}

/* Spójny wygląd opisu */
.homepage-promo-description {
  color: #526653 !important;
  line-height: 1.65 !important;
}

@media (max-width: 680px) {
  .homepage-promo-content {
    border-radius: 0 0 18px 18px !important;
  }
}


/* Szare tło części z nazwą i szczegółami promocji */
.homepage-promo-content {
  background: #f1f2f3 !important;
  color: #26352b !important;
  border-radius: 0 22px 22px 0 !important;
  padding: 26px !important;
}

/* Nazwa produktu i opis na szarym tle */
.homepage-promo-title {
  color: #26352b !important;
}

.homepage-promo-description {
  color: #58615b !important;
}

/* Jasne pola zachowują kontrast z szarym panelem */
.homepage-promo-code-box,
.homepage-promo-countdown {
  background: #fff !important;
  border-color: #d9ded9 !important;
}

@media (max-width: 680px) {
  .homepage-promo-content {
    border-radius: 0 0 18px 18px !important;
    padding: 20px !important;
  }
}


/* Tlo tylko pod tytulem produktu */
.homepage-promo-content {
  background: #fffdf8 !important;
  color: #26352b !important;
  padding: 26px !important;
}

.homepage-promo-title {
  display: block !important;
  box-sizing: border-box !important;
  margin: 0 -26px 14px !important;
  padding: 17px 26px !important;
  background: linear-gradient(90deg, #eaf4e5, #f5f8f1) !important;
  border-left: 4px solid #30A61E !important;
  color: #23452b !important;
  font-weight: 850 !important;
  line-height: 1.3 !important;
}

@media (max-width: 680px) {
  .homepage-promo-content {
    padding: 20px !important;
  }
  .homepage-promo-title {
    margin: 0 -20px 12px !important;
    padding: 15px 20px !important;
  }
}

/* Odwrócone kolory tytułu promocji */
.homepage-promo-title {
  background: #30A61E !important;
  color: #ffffff !important;
  border-left-color: #ffffff !important;
}


/* Tytuł szary, pozostała część zielono-biała */
.homepage-promo-content {
  background: linear-gradient(
    110deg,
    #edf5e9 0%,
    #f5f8f1 50%,
    #fffdf8 100%
  ) !important;
  color: #26352b !important;
}

.homepage-promo-title {
  background: #e5e7e9 !important;
  color: #26352b !important;
  border-left: 4px solid #30A61E !important;
  font-weight: 850 !important;
}


/* Tytuł produktu bez zielonego paska, wyśrodkowany */
.homepage-promo-title {
  border-left: 0 !important;
  text-align: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
  color: #26352b !important;
  background: #e5e7e9 !important;
}


/* Przywrócenie wyrównania tytułu bez zielonego paska */
.homepage-promo-title {
  text-align: left !important;
  border-left: 0 !important;
  background: #e5e7e9 !important;
  color: #26352b !important;
}


/* Pasek tytułu od krawędzi zdjęcia do końca ramki */
.homepage-promo-title {
  display: block !important;
  box-sizing: border-box !important;
  width: calc(100% + 52px) !important;
  margin-left: -26px !important;
  margin-right: -26px !important;
  padding: 17px 26px !important;
  background: linear-gradient(
    90deg,
    #e1e3e5 0%,
    #eceeef 48%,
    #f8f9f7 80%,
    #fffdf8 100%
  ) !important;
  border: 0 !important;
  color: #26352b !important;
  text-align: left !important;
}

@media (max-width: 680px) {
  .homepage-promo-title {
    width: calc(100% + 40px) !important;
    margin-left: -20px !important;
    margin-right: -20px !important;
    padding: 15px 20px !important;
  }
}


/* Podstrona szczegółów oferty promocyjnej */
.homepage-promo-title-link { color:inherit!important;text-decoration:none!important; }
.homepage-promo-title-link:hover { color:#30A61E!important; }
.promo-detail-page { max-width:1180px; }
.promo-detail-back { display:inline-block;margin-bottom:20px;color:#30A61E;text-decoration:none;font-weight:700; }
.promo-detail-heading { padding:24px;border-radius:16px;background:linear-gradient(110deg,#edf5e9,#fff); }
.promo-detail-eyebrow { color:#30A61E;font-size:12px;font-weight:800;letter-spacing:.12em; }
.promo-detail-heading h1 { margin:8px 0;font-size:clamp(26px,4vw,40px);font-weight:850;color:#26352b; }
.promo-detail-company { margin:6px 0;color:#657065; }
.promo-detail-discount { display:inline-block;padding:6px 12px;border-radius:8px;background:#30A61E;color:#fff;font-weight:800; }
.promo-detail-gallery { display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px; }
.promo-detail-gallery img { width:100%;aspect-ratio:4/3;object-fit:contain;background:#f1f2f3;border-radius:12px; }
.promo-detail-panel,.promo-detail-section { margin-bottom:22px;padding:22px;border:1px solid #e2e7e1;border-radius:14px;background:#fff; }
.promo-detail-panel h2,.promo-detail-section h2 { font-size:21px;font-weight:800;color:#26352b;margin-bottom:16px; }
.promo-detail-code { display:grid;gap:8px;margin:18px 0;padding:16px;border-radius:12px;background:#edf5e9; }
.promo-detail-code strong { font-size:22px;color:#26713f;overflow-wrap:anywhere; }
.promo-detail-copy,.promo-detail-cta { display:inline-block;padding:11px 16px;border:1px solid #30A61E;border-radius:9px;background:#30A61E;color:white;text-decoration:none;font-weight:800;cursor:pointer; }
.promo-detail-section { line-height:1.7; }
.promo-detail-specification { white-space:pre-line; }


/* PROMO_DETAIL_PAGE_STYLES_V1 */
.homepage-promo-title-link { color:inherit!important;text-decoration:none!important; }
.homepage-promo-title-link:hover { color:#30A61E!important; }
.promo-detail-page { max-width:1180px; }
.promo-detail-back { display:inline-block;margin-bottom:20px;color:#30A61E;text-decoration:none;font-weight:700; }
.promo-detail-heading { padding:24px;border-radius:16px;background:linear-gradient(110deg,#edf5e9,#fff); }
.promo-detail-eyebrow { color:#30A61E;font-size:12px;font-weight:800;letter-spacing:.12em; }
.promo-detail-heading h1 { margin:8px 0;font-size:clamp(26px,4vw,40px);font-weight:850;color:#26352b; }
.promo-detail-company { margin:6px 0;color:#657065; }
.promo-detail-discount { display:inline-block;padding:6px 12px;border-radius:8px;background:#30A61E;color:#fff;font-weight:800; }
.promo-detail-gallery { display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px; }
.promo-detail-gallery img { width:100%;aspect-ratio:4/3;object-fit:contain;background:#f1f2f3;border-radius:12px; }
.promo-detail-panel,.promo-detail-section { margin-bottom:22px;padding:22px;border:1px solid #e2e7e1;border-radius:14px;background:#fff; }
.promo-detail-panel h2,.promo-detail-section h2 { font-size:21px;font-weight:800;color:#26352b;margin-bottom:16px; }
.promo-detail-code { display:grid;gap:8px;margin:18px 0;padding:16px;border-radius:12px;background:#edf5e9; }
.promo-detail-code strong { font-size:22px;color:#26713f;overflow-wrap:anywhere; }
.promo-detail-copy,.promo-detail-cta { display:inline-block;padding:11px 16px;border:1px solid #30A61E;border-radius:9px;background:#30A61E;color:#fff;text-decoration:none;font-weight:800;cursor:pointer; }
.promo-detail-section { line-height:1.7; }
.promo-detail-specification { white-space:pre-line; }


/* PROMO_SPEC_TABLE_PUBLIC_V1 */
.homepage-promo-title-link{color:inherit!important;text-decoration:none!important}
.homepage-promo-title-link:hover{color:#30A61E!important}
.promo-spec-table-wrap{width:100%;overflow-x:auto;border:1px solid #dce4d9;border-radius:12px;background:#fff}
.promo-spec-table{width:100%;border-collapse:collapse;margin:0;color:#2b382d}
.promo-spec-table th{padding:13px 14px;background:#edf5e9;color:#285d2e;text-align:left;font-weight:800}
.promo-spec-table td{padding:12px 14px;border-top:1px solid #e6ebe4;vertical-align:top}
.promo-spec-table tbody tr:nth-child(even){background:#f8faf6}
.promo-detail-page{max-width:1180px}
.promo-detail-back{display:inline-block;margin-bottom:20px;color:#30A61E;text-decoration:none;font-weight:700}
.promo-detail-heading{padding:24px;border-radius:16px;background:linear-gradient(110deg,#edf5e9,#fff)}
.promo-detail-eyebrow{color:#30A61E;font-size:12px;font-weight:800;letter-spacing:.12em}
.promo-detail-heading h1{margin:8px 0;font-size:clamp(26px,4vw,40px);font-weight:850;color:#26352b}
.promo-detail-company{margin:6px 0;color:#657065}
.promo-detail-discount{display:inline-block;padding:6px 12px;border-radius:8px;background:#30A61E;color:#fff;font-weight:800}
.promo-detail-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.promo-detail-gallery img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f1f2f3;border-radius:12px}
.promo-detail-panel,.promo-detail-section{margin-bottom:22px;padding:22px;border:1px solid #e2e7e1;border-radius:14px;background:#fff}
.promo-detail-panel h2,.promo-detail-section h2{font-size:21px;font-weight:800;color:#26352b;margin-bottom:16px}
.promo-detail-code{display:grid;gap:8px;margin:18px 0;padding:16px;border-radius:12px;background:#edf5e9}
.promo-detail-code strong{font-size:22px;color:#26713f;overflow-wrap:anywhere}
.promo-detail-copy,.promo-detail-cta{display:inline-block;padding:11px 16px;border:1px solid #30A61E;border-radius:9px;background:#30A61E;color:#fff;text-decoration:none;font-weight:800;cursor:pointer}
.promo-detail-section{line-height:1.7}

/* Nowoczesna tabela specyfikacji produktu */
.promo-spec-table-wrap {
  width: 100% !important;
  overflow-x: auto !important;
  border: 1px solid #dce8d8 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 7px 22px rgba(38, 75, 38, .07) !important;
}

.promo-spec-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 0 !important;
  color: #28392b !important;
}

.promo-spec-table thead th {
  padding: 15px 16px !important;
  background: #30A61E !important;
  color: #fff !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  text-align: left !important;
  border: 0 !important;
}

.promo-spec-table tbody td {
  padding: 14px 16px !important;
  border-bottom: 1px solid #e9eee6 !important;
  vertical-align: middle !important;
  background: #fff !important;
}

.promo-spec-table tbody tr:nth-child(even) td {
  background: #f7faf5 !important;
}

.promo-spec-table tbody td:first-child {
  background: #edf6e9 !important;
  color: #34752b !important;
  font-weight: 750 !important;
}

.promo-spec-table tbody tr:nth-child(even) td:first-child {
  background: #e5f1df !important;
}

.promo-spec-table tbody td:nth-child(2) {
  font-weight: 650 !important;
  color: #273a2b !important;
}

.promo-spec-table tbody td:nth-child(3) {
  color: #69766a !important;
  white-space: nowrap !important;
}

.promo-spec-table tbody td:last-child {
  color: #236c20 !important;
  font-weight: 800 !important;
  background: #f0f8ec !important;
}

.promo-spec-table tbody tr:hover td {
  background: #eaf5e5 !important;
}

.promo-spec-table tbody tr:last-child td {
  border-bottom: 0 !important;
}

@media (max-width: 680px) {
  .promo-spec-table {
    min-width: 580px !important;
  }

  .promo-spec-table thead th,
  .promo-spec-table tbody td {
    padding: 11px 12px !important;
  }
}


/* Opis produktu i specyfikacja obok siebie */
.promo-detail-info-row {
  align-items: stretch !important;
  margin-top: 22px !important;
}

.promo-detail-info-col {
  display: flex !important;
  align-items: stretch !important;
}

.promo-detail-info-col .promo-detail-section {
  width: 100% !important;
  height: 100% !important;
  margin-bottom: 0 !important;
  box-sizing: border-box !important;
  border: 1px solid #e2e7e1 !important;
  border-radius: 14px !important;
  background: #fff !important;
}

.promo-detail-info-col .promo-detail-section h2 {
  padding-bottom: 12px !important;
  border-bottom: 2px solid #30A61E !important;
}

.promo-detail-info-col .promo-spec-table-wrap {
  max-width: 100% !important;
}


/* Mapa firmy na podstronie promocji */
.promo-detail-map-section {
  margin: 24px 0;
  padding: 24px;
  background: #fff;
  border: 1px solid #e2e7e1;
  border-radius: 14px;
  box-shadow: 0 7px 22px rgba(38,75,38,.07);
}
.promo-detail-map-section h2 {
  margin-bottom: 12px;
  color: #26352b;
  font-weight: 800;
}
.promo-detail-map {
  width: 100%;
  height: 360px;
  overflow: hidden;
  border-radius: 12px;
  background: #f1f2f3;
}
.promo-detail-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}
.promo-detail-map-link {
  display: inline-block;
  margin-top: 12px;
  color: #30A61E;
  font-weight: 750;
  text-decoration: none;
}
@media(max-width:680px) {
  .promo-detail-map-section { padding: 16px; }
  .promo-detail-map { height: 280px; }
}

.homepage-promo-title { background: linear-gradient(to right, #ffffff 0%, #e5e7e9 100%) !important; }

/* Dopasowanie kolumn w szczegolach oferty promocyjnej */
.promo-detail-info-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 16px !important;
    margin-top: 18px !important;
}
.promo-detail-info-row > .promo-detail-info-col {
    flex: 1 1 calc(50% - 16px) !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}
.promo-detail-info-col .promo-detail-section {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
}
.promo-detail-info-col .promo-spec-table-wrap {
    max-width: 100% !important;
    overflow-x: auto !important;
}
@media (max-width: 767px) {
    .promo-detail-info-row > .promo-detail-info-col {
        flex-basis: 100% !important;
    }
}

/* PROMO: dwie kolumny obok siebie, wyrownane od gory */
.promo-detail-info-row.row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: start !important;
    gap: 16px !important;
    margin: 18px 0 0 !important;
}
.promo-detail-info-row.row::before,
.promo-detail-info-row.row::after {
    display: none !important;
}
.promo-detail-info-row.row > .promo-detail-info-col {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
    align-self: start !important;
}
.promo-detail-info-col .promo-detail-section {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
}
.promo-detail-info-col .promo-spec-table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 0 !important;
    overflow-x: auto !important;
}
