/*!
Theme Name: Laszlo
Theme URI: https://preview.naapothemes.net/laszlo/
Author: Naapo
Author URI: https://naapothemes.net/
Description: Laszlo is a WordPress theme bundled with premium plugins to build a modern and functional website.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: laszlo
Text Domain: laszlo-child
Tested up to: 6.7
Requires PHP: 7.0
*/

/* === GLOBALNE === */
#main > div.fullwidth-container {
  margin-top: 200px !important;
}

#main > div.fullwidth-container .container {
  padding: 32px 32px !important;
}

.present-container.center h1.page_title {
  margin: 0 !important;
  font-size: 36px !important;
  max-width: 100% !important;
}

.vc_column_container > .vc_column-inner {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

#main .master_container {
  padding-top: 50px !important;
  padding-right: 0 !important;
}

.master_container p {
  margin-bottom: 8px !important;
}

.master_container ul {
  margin-bottom: 24px !important;
}

.master_container ul li {
	list-style: none;
	margin-left: 0 !important;
}

.body-lines {
  display: none !important;
}

html .pagetitle_overlay {
  background-color: rgba(252, 252, 252, 0.9) !important;
}

.contact-form input,
.contact-form textarea,
.forminator-custom-form input,
.forminator-custom-form textarea {
  border-radius: 4px !important;
  border: 1px solid #cacaca;
}

@media (max-width: 1023px) {
  #main > div.fullwidth-container {
    margin-top: 135px !important;
  }
}

@media (max-width: 767px) {
  #main > div.fullwidth-container {
    margin-top: 90px !important;
  }

  #main > div.fullwidth-container .container {
    padding: 30px 16px !important;
  }

  .page_content
    > .container
    > .wpb-content-wrapper
    > .vc_row
    > .vc_column_container
    > .vc_column-inner {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* === HEADER === */
header {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.025),
    0px 1px 1px 0px rgba(0, 0, 0, 0.01), 0px 0px 50px 0px rgba(0, 0, 0, 0.07);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.top-bar-bg .container {
  max-width: 1320px !important;
  width: 100% !important;
  padding: 0 32px !important;
}

.top-bar-bg ul li {
  position: relative !important;
}

.top-bar-bg ul li i {
  position: absolute !important;
  left: 0 !important;
  top: 5px !important;
  z-index: -1 !important;
}

.top-bar-bg ul li i.fa-envelope {
  top: 7px !important;
}

header .top-bar a,
header .top-bar ul.phone-mail li a {
  padding-left: 30px !important;
}

.top-bar .phone-mail li {
  margin: 5px !important;
}

header .top-bar li {
  top: 0 !important;
}

header.style3 .nav-container .navbar-header .navbar-brand img {
  max-height: 50px !important;
}

#menu-main_menu_pl > li:nth-last-child(2),
#menu-main_menu_en > li:nth-last-child(2) {
  position: absolute;
  right: 56px;
  margin: 0 !important;
}

.navbar-collapse ul.navbar-nav > li > a {
  color: #757575 !important;
}

.navbar-collapse ul.navbar-nav > li > a:hover,
.navbar-collapse ul.menu-depth-1 li:not(.laszlo_mega_hide_link) > a:hover,
.dl-menu li:not(.laszlo_mega_hide_link):hover > a,
.dl-menu li:not(.laszlo_mega_hide_link):hover .ion-chevron-right:before,
.dl-menuwrapper li.dl-back:hover:after {
  color: #f59d24 !important;
}

header.navbar-default .navbar-collapse ul.navbar-nav > li:before {
  background: #f59d24 !important;
}

#menu-main_menu_pl > li:last-child,
#menu-main_menu_en > li:last-child {
  position: absolute;
  right: 0;
  margin: 0 !important;
  margin-right: 16px !important;
}

#menu-main_menu_pl > li:nth-last-child(2) a,
#menu-main_menu_pl > li:last-child a,
#menu-main_menu_en > li:nth-last-child(2) a,
#menu-main_menu_en > li:last-child a {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

#menu-main_menu_pl > li:nth-last-child(2) a:hover,
#menu-main_menu_pl > li:last-child a:hover,
#menu-main_menu_en > li:nth-last-child(2) a:hover,
#menu-main_menu_en > li:last-child a:hover {
  transform: scale(1.1);
}

header.navbar-default.laszlo-underlining
  .navbar-nav
  > li:nth-last-child(2)::before,
header.navbar-default.laszlo-underlining .navbar-nav > li:last-child::before {
  display: none !important;
}

.dl-menuopen li.dl-subviewopen > ul {
  overflow-y: auto !important;
}

@media (max-width: 1023px) {
  header.style3 .nav-container .navbar-collapse {
    display: none !important;
  }

  header.style3 .dl-menuwrapper button {
    float: left !important;
    right: -5px !important;
    margin-left: 0 !important;
  }
}

@media (min-width: 1024px) {
  header.style3 .nav-container .navbar-header {
    margin-bottom: 0 !important;
  }

  header.style3 .nav-container .navbar-collapse {
    position: relative;
    max-width: 1320px !important;
    display: flex !important;
    margin: 0 auto !important;
    float: none !important;
  }
}

@media only screen and (max-width: 1023px) {
  body header.header_after_scroll .nav-container .navbar-header {
    height: 50px !important;
  }

  header.style3 .nav-container .dl-menuwrapper {
    margin-top: 30px !important;
  }

  .dl-menuwrapper .dl-menu {
    top: calc(100% + 49px) !important;
    overflow-y: auto !important;
  }

  header.header_after_scroll .dl-menuwrapper .dl-menu {
    top: calc(100% + 42px) !important;
  }

  #menu-main_menu_pl-1 > li:nth-last-child(2),
  #menu-main_menu_pl-1 > li:last-child,
  #menu-main_menu_en-1 > li:nth-last-child(2),
  #menu-main_menu_en-1 > li:last-child {
    width: fit-content !important;
    display: inline-block !important;
  }

  #menu-main_menu_pl-1 > li:nth-last-child(2) a,
  #menu-main_menu_pl-1 > li:last-child a,
  #menu-main_menu_en-1 > li:nth-last-child(2) a,
  #menu-main_menu_en-1 > li:last-child a {
    padding: 15px !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  header.style3 .nav-container .dl-menuwrapper {
    display: flex !important;
    left: 0 !important;
    width: 100vw !important;
    z-index: 9999 !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  header .top-bar-bg > .container {
    padding: 0 32px !important;
  }

  header.style3 .nav-container .dl-menuwrapper {
    margin-top: 40px !important;
  }
}

/* === HOME === */
.home #main .page_content > .container {
  width: 100% !important;
  max-width: 1920px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.home
  #main
  .container
  .wpb-content-wrapper
  > .vc_row:not(:first-child):not(.cta-container) {
  max-width: 1320px !important;
  margin: 0 auto !important;
}

.home #main .container .wpb-content-wrapper > .vc_row:not(:first-child) {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

.home-slider .vc_column_container > .vc_column-inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.home-slider {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

@media (max-width: 1365px) {
  .home-slider .vc_column_container > .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

#metaslider-id-8404 {
  max-height: 800px !important;
  overflow: hidden !important;
}

#metaslider-id-8404 img {
  max-height: 800px !important;
  object-fit: cover !important;
}

.flex-direction-nav a.flex-prev:hover:after,
.flex-direction-nav a.flex-next:hover:after,
.flex-direction-nav.movies-nav a:hover:after {
  background-color: rgba(10, 10, 10, 0.7) !important;
}

.home #main > div.fullwidth-container {
  display: none !important;
}

.home #main .master_container {
  padding-top: 167px !important;
}

.home-slider {
  padding-top: 200px !important;
  margin-bottom: 50px !important;
}

.gama-home .vc_column_container > .vc_column-inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

html
  h2.gama-heading:not(.the_title h2):not(.woocommerce-loop-product__title):not(
    .cart_totals h2
  ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
    .uvc-main-heading h2
  ):not(h2.ult-responsive):not(h2.titlelabel):not(
    .section-title-repeat-left
  ):not(.section-title-repeat-right):not(.wc-block-components-title) {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 40px !important;
  font-weight: bold !important;
}

.gama-heading.h2 {
  color: #010101 !important;
}

@media (max-width: 768px) {
  .container .gama-heading.h2 {
    margin-bottom: 0 !important;
  }
}

/* @media only screen and (min-width: 1025px) and (max-width: 1350px) {
  h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.wc-block-components-title):not(
      .sr7-layer h2
    ),
  .woocommerce #content div.product .product_title,
  .woocommerce div.product .product_title,
  .woocommerce-page #content div.product .product_title,
  .woocommerce-page div.product .product_title {
    font-size: inherit !important;
  }
} */

.gama-cards {
  display: flex !important;
  gap: 24px !important;
  justify-content: space-between !important;
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.gama-cards::before,
.gama-cards::after {
  display: none !important;
}

.gama-cards .ult-just-icon-wrapper {
  display: flex !important;
  justify-content: center !important;
}

.gama-cards .top-icon .aio-icon-header h3.aio-icon-title {
  text-align: center !important;
  font-size: 24px !important;
  margin: 0 !important;
}

.aio-icon-box,
.wpb_column > .wpb_wrapper .aio-icon-component .aio-icon-box {
  margin: 0 !important;
}

.gama-cards .ult-content-box {
  padding: 36px 24px !important;
  border-radius: 12px !important;
}

.text-img-container {
  padding-top: 50px !important;
  padding-bottom: 100px !important;
}

.text-img-wrapper > .vc_column-inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.text-img-wrapper > .vc_column-inner > .wpb_wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 50px !important;
}

.text-img-wrapper > .vc_column-inner > .wpb_wrapper > div {
  width: 100% !important;
}

.text-img-wrapper p {
  color: #010101 !important;
  line-height: 1.5 !important;
}

.text-img-wrapper p strong {
  display: block !important;
  margin-bottom: 10px !important;
  font-size: 18px !important;
}

.text-img-wrapper p br {
  display: none !important;
}

.text-img-wrapper img {
  border-radius: 12px !important;
}

@media (max-width: 1279px) {
  .gama-cards {
    flex-wrap: wrap !important;
  }

  .gama-cards > div {
    flex: 1 1 calc(50% - 12px) !important;
    max-width: calc(50% - 12px) !important;
  }
}

@media (max-width: 1023px) {
  .home-slider {
    padding-top: 134px !important;
  }

  .text-img-wrapper > .vc_column-inner > .wpb_wrapper {
    gap: 32px !important;
  }
}

@media (max-width: 767px) {
  .home #main .container .wpb-content-wrapper > .vc_row:not(:first-child) {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .home-slider {
    padding-top: 89px !important;
  }

  .page_content
    > .container
    > .wpb-content-wrapper
    > .vc_row.home-slider
    > .vc_column_container
    > .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .gama-cards > div {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }

  .text-img-container {
    padding-top: 30px !important;
    padding-bottom: 50px !important;
  }

  .text-img-wrapper > .vc_column-inner > .wpb_wrapper {
    flex-direction: column !important;
  }

  .page_content
    > .container
    > .wpb-content-wrapper
    > .vc_row
    > .vc_column_container.text-img-wrapper
    > .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.products-carousel-container {
  padding-top: 80px !important;
  padding-bottom: 100px !important;
}

.products-carousel-container
  h2:not(.secondaryTitle):not(.section-title-repeat-left):not(
    .section-title-repeat-right
  ):not(.section-title-repeat h2):not(.uvc-heading h2):not(
    .ult-team-member-name
  ) {
  margin-bottom: 32px !important;
}

.products-carousel-container
  .products
  h2:not(.secondaryTitle):not(.section-title-repeat-left):not(
    .section-title-repeat-right
  ):not(.section-title-repeat h2):not(.uvc-heading h2):not(
    .ult-team-member-name
  ) {
  margin-bottom: 20px !important;
  margin-top: 20px !important;
}

.products-carousel-container .ult-carousel-wrapper .slick-dots {
  bottom: 0 !important;
}

.products-carousel-container .slick-track {
  display: flex !important;
}

.products-carousel-container .slick-slide {
  height: auto !important;
}

.products-carousel-container .slick-slide .products {
  height: 100% !important;
}

.products-carousel-container ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  margin: 0 !important;
}

.products-carousel-container
  ul.products
  li.product
  h2.woocommerce-loop-product__title {
  flex-shrink: 0 !important;
  margin-bottom: 0 !important;
}

.products-carousel-container
  ul.products
  li.product
  a.button.product_type_simple {
  margin-top: auto !important;
}

.ult-carousel-wrapper.ult_horizontal .slick-prev,
.ult-carousel-wrapper.ult_horizontal .slick-next {
  font-size: 24px !important;
}

@media only screen and (min-width: 993px) and (max-width: 1270px) {
  .ult-carousel-wrapper.ult_horizontal .slick-prev,
  .ult-carousel-wrapper.ult_horizontal .slick-next {
    font-size: 24px !important;
  }
}

@media (max-width: 575px) {
}

/* === KONTAKT === */
.contact-container > .vc_column-inner > .wpb_wrapper > .vc_row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 32px !important;
}

.contact-container > .vc_column-inner > .wpb_wrapper > .vc_row > div {
  padding: 0 !important;
  width: 100% !important;
}

.contact-container > .vc_column-inner > .wpb_wrapper > .vc_row::before,
.contact-container > .vc_column-inner > .wpb_wrapper > .vc_row::after {
  display: none !important;
}

.contact-left .wpb_single_image {
  margin-bottom: 30px !important;
}

.contact-left a:hover {
  color: #f59d24 !important;
}

.contact-left a i {
  margin-right: 8px;
}

.contact-left > .vc_column-inner,
.contact-form > .vc_column-inner {
  padding: 0 !important;
}

.contact-form form {
  border-radius: 12px !important;
  box-shadow: 0px 40px 80px 0px
    rgba(51.00000000000001, 65.00000000000013, 140, 0.06);
  /* box-shadow: 20px 20px 0px 0px rgba(245, 157, 36, 1); */
  border: 1px solid #121212 !important;
  padding: 16px 16px !important;
}

.contact-form button {
  background-color: #f59d24 !important;
  color: #fff !important;
  border-radius: 32px !important;
  transition: all 0.3s ease-in-out !important;
}

.contact-form .forminator-row-last {
  margin-bottom: 0 !important;
}

.contact-form button:hover {
  opacity: 0.8;
  box-shadow: none !important;
}

.forminator-ui.forminator-custom-form[data-design='default']
  .forminator-checkbox
  .forminator-checkbox-box:before {
  color: #f59d24 !important;
}

.forminator-ui#forminator-module-8370.forminator-design--default
  .forminator-consent
  input:checked
  + .forminator-checkbox-box,
.forminator-ui#forminator-module-8370.forminator-design--default
  .forminator-checkbox
  .forminator-checkbox-box:hover,
.forminator-select-dropdown-container--open
  .forminator-custom-form-8370.forminator-dropdown--default
  .forminator-checkbox
  .forminator-checkbox-box:hover {
  border-color: #f59d24 !important;
}

.forminator-checkbox__wrapper {
  align-items: center !important;
}

.forminator-consent__label a {
  font-size: 14px !important;
}

.forminator-consent__label a:hover {
  color: #f59d24 !important;
}

.forminator-consent__label p {
  margin: 0 !important;
}

.forminator-field-textarea label,
.forminator-field-textarea span {
  display: inline !important;
}

.forminator-field-textarea span span {
  margin-top: 5px !important;
}

@media (max-width: 782px) {
  .forminator-checkbox__wrapper {
    width: 100% !important;
    padding-top: 10px !important;
  }

  .contact-form
    form
    > .forminator-row:not(:nth-child(2))
    label:not(.forminator-consent),
  #textarea-1 {
    margin-top: 60px !important;
  }
}

@media (max-width: 767px) {
  .contact-container > .vc_column-inner > .wpb_wrapper > .vc_row {
    flex-direction: column !important;
  }

  .contact-container > .vc_column-inner > .wpb_wrapper > .vc_row > div {
    padding: 0 16px !important;
  }
}

/* === O NAS === */
.page-id-8309 #main .master_container,
.page-id-8584 #main .master_container {
  padding-bottom: 0 !important;
}

.o-nas-cards::before,
.o-nas-cards::after {
  display: none !important;
}

.o-nas-cards .ult-content-box {
  margin: 0 !important;
}

.wspolpracujemy-left > .vc_column-inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.wspolpracujemy-left h2,
.zaufali-left h2 {
  font-size: 36px !important;
  line-height: 1.5 !important;
  margin-bottom: 10px !important;
}

.wspolpracujemy-left .ult-content-box {
  margin: 0 !important;
}

@media (max-width: 1350px) {
  .wspolpracujemy-left
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.wc-block-components-title):not(
      .sr7-layer h2
    ),
  .zaufali-left
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.wc-block-components-title):not(
      .sr7-layer h2
    ) {
    font-size: 24px !important;
  }

  .wspolpracujemy-left h5,
  .zaufali-left h5 {
    font-size: 16px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .wspolpracujemy-left
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.section-title-repeat h2):not(
      .ult-team-member-name
    ):not(.sr7-layer h2),
  .zaufali-left
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.section-title-repeat h2):not(
      .ult-team-member-name
    ):not(.sr7-layer h2),
  .textwidget h2 {
    font-size: 24px !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 767px) {
  .wspolpracujemy-left
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.section-title-repeat h2):not(
      .ult-team-member-name
    ):not(.sr7-layer h2),
  .zaufali-left
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.section-title-repeat h2):not(
      .ult-team-member-name
    ):not(.sr7-layer h2),
  .textwidget h2 {
    font-size: 24px !important;
    margin-bottom: 10px !important;
    line-height: 1.5 !important;
  }

  .zaufali-left > .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.zaufali-container {
  padding-bottom: 200px !important;
}

.zaufali-left .ult-content-box {
  margin-right: 0 !important;
}

.zaufali-left .vc_progress_bar {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

@media (max-width: 767px) {
  .zaufali-container {
    padding-bottom: 100px !important;
  }
}

/* === SKLEP === */
.archive .page_content.left:not(.sidebar) {
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

div.fullwidth-container[data-background-alignment='bottom'] {
  background-position: center !important;
}

/* div.fullwidth-container[data-background-alignment='bottom'] .secondaryTitle, */
.woocommerce ul.products:before,
.woocommerce ul.products:after,
.woocommerce-page .woocommerce-ordering,
.woocommerce .woocommerce-result-count {
  display: none !important;
}

body:not(.home).woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 32px !important;
}

.woocommerce-page.woocommerce ul.products li.product,
.woocommerce-page.woocommerce-page ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: unset !important;
}

.woocommerce ul.products .h2-related-products {
  font-size: 18px !important;
  margin-top: 20px !important;
}

.woocommerce ul.products li.product a.button.product_type_simple {
  height: auto !important;
  align-self: end !important;
  margin-bottom: 0 !important;
  border-radius: 32px !important;
  background-color: transparent !important;
  border: 1px solid #f59d24 !important;
  color: #f59d24 !important;
}

#wps-slider-section
  .wpsf-cart-button
  a:not(.sp-wqvpro-view-button):not(.sp-wqv-view-button) {
  background-color: transparent !important;
  border: 1px solid #f59d24 !important;
  color: #f59d24 !important;
}

.woocommerce ul.products li.product a.button.product_type_simple:hover,
#wps-slider-section
  .wpsf-cart-button
  a:not(.sp-wqvpro-view-button):not(.sp-wqv-view-button):hover {
  background-color: #f59d24 !important;
  color: #fff !important;
}

@media screen and (min-width: 1270px) {
  .woocommerce-page.woocommerce ul.products li.product,
  .woocommerce-page.woocommerce-page ul.products li.product {
    min-height: unset !important;
  }
}

@media (max-width: 1199px) {
  body:not(.home).woocommerce ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (max-width: 767px) {
  body:not(.home).woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
  }

  .woocommerce
    ul.products
    h2:not(.secondaryTitle):not(.section-title-repeat-left):not(
      .section-title-repeat-right
    ):not(.section-title-repeat h2) {
    margin-top: 20px !important;
  }
}

@media (max-width: 575px) {
  body:not(.home).woocommerce ul.products {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
}

/* === PRODUKT === */
.single-product .container {
  max-width: calc(1320px + 64px) !important;
  width: 100% !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
}

.fullwidth-container .center .pageTitle .pageTitle__row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 24px !important;
  flex-wrap: wrap !important;
}

.fullwidth-container .center .pageTitle .pageTitle__row .laszlo_breadcrumbs {
  margin: 0 !important;
}

.fullwidth-container .center .pageTitle .pageTitle__row .laszlo_breadcrumbs a,
.fullwidth-container
  .center
  .pageTitle
  .pageTitle__row
  .laszlo_breadcrumbs
  .product-path-sep {
  color: #757575 !important;
}

.fullwidth-container .center .pageTitle .pageTitle__row .laszlo_breadcrumbs a,
.fullwidth-container
  .center
  .pageTitle
  .pageTitle__row
  .laszlo_breadcrumbs
  span {
  font-size: 14px !important;
}

.fullwidth-container
  .center
  .pageTitle
  .pageTitle__row
  .laszlo_breadcrumbs
  a:hover {
  color: #f59d24 !important;
}

.single-product #main .master_container {
  padding: 50px 0 !important;
}

.single-product .page_content.left {
  display: flex !important;
  gap: 50px !important;
}

/* .woocommerce div.product,
.single-product .page_content.left > div {
  width: 100% !important;
} */

.woocommerce div.product div.images,
.woocommerce-page div.product div.images {
  width: 62% !important;
}

.single-product .page_content.left > div:last-child {
  width: 35% !important;
}

.woocommerce-page.single-product .master_container .page_content:not(.sidebar),
.woocommerce-page.single-product .master_container .page_content:not(.right) {
  padding: 0 !important;
  width: 100% !important;
  margin-top: 0 !important;
}

.woocommerce #content div.product .product_title,
.woocommerce div.product .product_title,
.woocommerce-page #content div.product .product_title,
.woocommerce-page div.product .product_title {
  border-bottom: none !important;
}

.woocommerce div.product .product_title {
  font-size: 28px !important;
  padding-bottom: 0 !important;
  margin-bottom: 24px !important;
}

.woocommerce-product-details__short-description {
  border-top: none !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  float: unset !important;
}

.woocommerce-product-details__short-description p:first-child,
.woocommerce-tabs
  .entry-content
  ul
  li:not(.ticker li):not(.ult_tab_li):not(.top-bar-menu li):not(
    .select2-results li
  ):not(.dl-back) {
  color: #121212;
}

.woocommerce div.product .entry-summary p.price {
  display: none !important;
}

.single-product .forminator-custom-form .forminator-button-submit,
.scroll-to-description-btn {
  background-color: #f59d24 !important;
  color: #fff !important;
  border-radius: 32px !important;
  border: none !important;
  padding: 10px !important;
  min-width: 100px !important;
  max-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.3s ease-in-out !important;
}

.scroll-to-description-btn {
  margin-bottom: 12px !important;
  padding: 12px 24px !important;
  background-color: transparent !important;
  border: 1px solid #f59d24 !important;
  color: #f59d24 !important;
}

.single-product .forminator-custom-form .forminator-button-submit:hover {
  opacity: 0.8;
  box-shadow: none !important;
}

.scroll-to-description-btn:hover {
  background-color: #f59d24 !important;
  color: #fff !important;
}

html
  .wc-product-enquiry
  .forminator-ui.forminator-design--default
  .forminator-consent
  input:checked
  + .forminator-checkbox-box,
html
  .wc-product-enquiry
  .forminator-ui.forminator-design--default
  .forminator-checkbox
  .forminator-checkbox-box:hover {
  border-color: #f59d24 !important;
}

.wc-product-enquiry form {
  border-radius: 12px !important;
  box-shadow: 0px 40px 80px 0px
    rgba(51.00000000000001, 65.00000000000013, 140, 0.06);
  /* box-shadow: 20px 20px 0px 0px rgba(245, 157, 36, 1); */
  border: 1px solid #121212 !important;
  padding: 0 15px 15px !important;
  /* border: 1px solid #e6e6e6 !important; */
}

.wc-product-enquiry form #html-1 {
  margin-bottom: 10px !important;
  background-color: #000 !important;
  border-top-left-radius: 12px !important;
  border-top-right-radius: 12px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.wc-product-enquiry form #html-1 div,
.wc-product-enquiry form #html-1 div p {
  font-size: 20px !important;
  font-weight: 700 !important;
  text-align: center !important;
  color: #fff !important;
}

.wc-product-enquiry form label {
  font-size: 14px !important;
  line-height: 1 !important;
}

.wc-product-enquiry form .forminator-row {
  margin-bottom: 10px !important;
}

.wc-product-enquiry form textarea {
  resize: vertical !important;
  overflow: auto !important;
}

.wc-product-enquiry form .forminator-row-last,
.woocommerce div.product div.summary,
.woocommerce div.product div.images,
.single-product .page_content.left {
  margin-bottom: 0 !important;
}

.single-product .page_content.right {
  display: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  margin-bottom: 1px !important;
}

.related.products .woocommerce-loop-product__title,
.woocommerce-loop-product__title {
  color: #010101 !important;
  text-align: center !important;
  font-size: 22px !important;
  font-weight: 600 !important;
}

.related-products-title {
  color: #010101 !important;
  text-align: center !important;
  font-size: 32px !important;
  font-weight: 600 !important;
}

.summary.entry-summary .product_meta {
  margin-top: 0 !important;
}

@media (max-width: 1024px) {
  .single-product .page_content.left {
    flex-direction: column !important;
    gap: 24px !important;
  }

  .single-product .page_content.left > div.images,
  .single-product .page_content.left > div:last-child {
    width: 100% !important;
  }
}

.wc-product-enquiry form .forminator-row:nth-child(4) {
  margin-left: -15px !important;
  margin-right: -15px !important;
}

@media (max-width: 767px) {
  .single-product .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* AUTOMATY BHP */
.archive .term-description {
  text-align: center !important;
  margin-bottom: 50px !important;
}

/* === FOOTER === */
#secondary_footer {
  padding-top: 50px !important;
}

#secondary_footer .container {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

#secondary_footer .footer_logo.align-left {
  margin: 0 !important;
  width: 171px !important;
}

.footer-main {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 50px;
}

.footer-main a {
  color: #fff !important;
}

.footer-catalog {
  border: 2px solid #f59d24;
  padding: 8px 16px;
  border-radius: 32px !important;
  transition: all 0.3s ease-in-out;
}

.footer-catalog:hover {
  background-color: #f59d24;
}

.footer-contact {
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: 5px;
}

.footer-contact a i {
  margin-right: 8px;
}

#big_footer {
  background-color: #121212 !important;
}

#big_footer
  a:not(.submit):not(.tag-cloud-link):not(.social-network):not(
    .social-icons-fa a
  ):not(.footer_custom_text a):not(.vc_btn3):not(.footer-catalog):hover:hover {
  color: #f59d24 !important;
}

#secondary_footer .footer_custom_text.center {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
  border-top: 1px solid #747679 !important;
}

#secondary_footer .footer_custom_text.center p {
  margin: 0 !important;
}

@media (max-width: 767px) {
  #secondary_footer .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .footer-main {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 40px;
  }

  .footer-contact {
    align-items: center;
  }
}

/* === CTA === */
.container .h2 {
  font-size: 40px !important;
  margin-bottom: 32px !important;
  position: relative !important;
  z-index: 2 !important;
  font-family: 'Plus Jakarta Sans', 'Arial', 'sans-serif' !important;
  font-weight: 700 !important;
}

@media only screen and (max-width: 767px) {
  .container .h2 {
    font-size: 34px !important;
  }
}

.cta-container {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 80px 0 !important;
  position: relative !important;
  z-index: 0 !important;
}

.cta-container::before {
  display: block !important;
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}

.cta-container
  h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
    .cart_totals h2
  ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
    .uvc-main-heading h2
  ):not(h2.ult-responsive):not(h2.titlelabel):not(
    .section-title-repeat-left
  ):not(.section-title-repeat-right):not(.wc-block-components-title) {
  font-size: 40px !important;
  margin-bottom: 32px !important;
  position: relative !important;
  z-index: 2 !important;
}

@media only screen and (min-width: 1025px) and (max-width: 1350px) {
  .cta-container
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.wc-block-components-title):not(
      .sr7-layer h2
    ),
  .products-carousel-container
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.wc-block-components-title):not(
      .sr7-layer h2
    ) {
    font-size: 40px !important;
  }
}

.cta-container a {
  top: 0 !important;
}

.cta-container button {
  font-size: 18px !important;
  border-radius: 32px !important;
}

@media (min-width: 1670px) {
  .cta-container {
    margin-left: -30px !important;
    margin-right: -30px !important;
  }
}

.cta-2 .upb_row_bg {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 100vw !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center !important;
  z-index: 0 !important;
}

.cta-2 {
  position: relative !important;
  overflow: hidden;
}

.cta-2 {
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
}

.cta-2 .ubtn-ctn-center {
  display: flex !important;
  justify-content: center !important;
  position: relative !important;
  z-index: 2 !important;
}

.cta-2 .h2 {
  position: relative !important;
  z-index: 2 !important;
}

body.single-product
  .cta-2
  .ubtn-ctn-center
  button.ubtn-normal.ubtn-sep-icon-at-left
  .btn-animate-y-1,
body.single-product
  .cta-2
  .ubtn-ctn-center
  button.ubtn-normal.ubtn-sep-icon-at-left
  .btn-animate-y-2,
body.archive
  .cta-2
  .ubtn-ctn-center
  button.ubtn-normal.ubtn-sep-icon-at-left
  .btn-animate-y-1,
body.archive
  .cta-2
  .ubtn-ctn-center
  button.ubtn-normal.ubtn-sep-icon-at-left
  .btn-animate-y-2 {
  padding-left: 0 !important;
}

.cta-2 .ubtn-ctn-center .btn-animate-y-1,
.cta-2 .ubtn-ctn-center .btn-animate-y-2 {
  display: flex !important;
  flex-direction: row-reverse !important;
  gap: 6px !important;
}

.product_meta .posted_in:last-of-type {
  display: none !important;
}

.pswp__bg {
  opacity: 0.7 !important;
}

.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-consent
  input:checked
  + .forminator-checkbox-box,
.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-checkbox
  .forminator-checkbox-box:hover,
.forminator-ui#forminator-module-8370.forminator-design--default
  .forminator-is_active
  .forminator-input,
.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-is_active
  .forminator-input,
.forminator-ui#forminator-module-8370.forminator-design--default
  .forminator-is_hover
  .forminator-textarea,
.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-is_hover
  .forminator-textarea {
  border-color: #f59d24 !important;
}

.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-input,
.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-textarea {
  background-color: #ededed !important;
  border-color: #777771 !important;
}

.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-checkbox__label
  p {
  color: #121212 !important;
}

.forminator-ui#forminator-module-8370.forminator-design--default
  .forminator-consent__label
  p
  a,
.forminator-ui#forminator-module-8580.forminator-design--default
  .forminator-checkbox__label
  p
  a {
  color: #f59d24 !important;
}

.forminator-ui#forminator-module-8370.forminator-design--default
  .forminator-textarea:focus {
  outline: none !important;
}

.forminator-ui#forminator-module-8370.forminator-design--default
  .forminator-label
  .forminator-required {
  color: #e51919 !important;
}

#wps-slider-section
  #sp-woo-product-slider-8615
  .wpsf-cart-button
  a:not(.sp-wqvpro-view-button):not(.sp-wqv-view-button) {
  border-radius: 32px !important;
}

#wps-slider-section #sp-woo-product-slider-8615 .wpsf-product-title a {
  transition: color 0.3s ease-in-out;
}

#wps-slider-section #sp-woo-product-slider-8615 .wpsf-product-title a:hover {
  color: #f59d24;
}

/* wrapper dla wszystkich slajdów */
.swiper-wrapper {
  display: flex !important;
  align-items: stretch !important;
}

.wpsf-product {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
}

.wps-product-data {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

.sp-wps-product-details {
  display: flex !important;
  flex: 1 !important;
}

.sp-wps-product-details-inner {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  flex: 1 !important;
}
.wpsf-product-title {
  margin-bottom: 10px !important;
}

.wpsf-cart-button {
  margin-top: auto !important;
}

#wps-slider-section
  .wpsf-cart-button
  a:not(.sp-wqvpro-view-button):not(.sp-wqv-view-button) {
  margin-top: 0 !important;
}
/* --- Woo gallery: stabilny mobile bez znikających slajdów i bez nakładania miniaturek --- */
@media (max-width: 767px) {
  /* 1) Rezerwacja miejsca TYLKO dla okna slajdów */
  .single-product .woocommerce-product-gallery .flex-viewport {
    aspect-ratio: 1 / 1; /* zmień na 4 / 5 jeśli zdjęcia są pionowe */
    width: 100%;
    overflow: hidden; /* przycinamy tylko viewport (nie cały slider) */
  }

  /* 2) Pozostałe kontenery nie wymuszają wysokości */
  .single-product .woocommerce-product-gallery,
  .single-product .woocommerce-product-gallery__wrapper,
  .single-product .woocommerce-product-gallery .flexslider {
    aspect-ratio: auto;
    overflow: visible;
  }

  /* 3) Obraz: nie na 100% wysokości – pozwól mu zachować proporcje */
  .single-product .woocommerce-product-gallery__image a,
  .single-product .woocommerce-product-gallery__image img {
    display: block !important;
    width: 100% !important;
    height: auto !important; /* ← kluczowe: zamiast height:100% */
    object-fit: contain !important;
  }

  /* 4) Wyrównanie listy slajdów, żeby nic nie „uciekało” */
  .single-product .woocommerce-product-gallery .slides {
    margin: 0 !important;
    padding: 0 !important;
  }
  .single-product .woocommerce-product-gallery .slides > li {
    margin: 0 !important;
    list-style: none !important;
  }

  /* 5) Zerowanie transform/left TYLKO PRZED inicjalizacją (żeby nie było pustego pierwszego kadru) */
  .single-product
    .woocommerce-product-gallery:not(.woocommerce-product-gallery--initialized)
    .flex-viewport,
  .single-product
    .woocommerce-product-gallery:not(.woocommerce-product-gallery--initialized)
    .slides {
    transform: none !important;
    left: 0 !important;
  }

  /* 6) Miniatury zawsze widoczne i nie nachodzą na tekst */
  .single-product
    .woocommerce-product-gallery
    .flex-control-nav.flex-control-thumbs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 12px !important;
    position: static !important;
    clear: both !important; /* ← żeby nie wpadły na opis */
    z-index: 1;
  }
  .single-product .woocommerce-product-gallery .flex-control-thumbs li {
    float: none !important;
    width: 64px !important; /* możesz zmienić np. na 20% */
    margin: 0 !important;
  }
  .single-product .woocommerce-product-gallery .flex-control-thumbs img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover;
    border-radius: 4px;
  }
}

.page-id-8309 #main .master_container,
.page-id-8306 #main .master_container,
.page-id-8578 #main .master_container,
.page-id-8584 #main .master_container,
.error404 #main .error-c {
  margin-top: 200px !important;
}

@media (max-width: 767px) {
  .page-id-8309 #main .master_container,
  .page-id-8306 #main .master_container,
  .page-id-8578 #main .master_container,
  .page-id-8584 #main .master_container,
  .error404 #main .error-c {
    margin-top: 100px !important;
  }
}

.opis-home {
  padding-bottom: 100px !important;
}

.opis-home h2 {
  font-size: 26px !important;
  margin-top: 30px !important;
  margin-bottom: 15px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.opis-home p,
.opis-home > text {
  font-size: 16px !important;
  margin-bottom: 20px !important;
  line-height: 1.6 !important;
}

.woocommerce-page .page_content.right,
.woocommerce-page .page_content.right.sidebar {
  display: none !important;
}

.archive .page_content.left:not(.sidebar) {
  width: 100% !important;
}

@media (max-width: 767px) {
  .opis-home
    h2:not(.the_title h2):not(.woocommerce-loop-product__title):not(
      .cart_totals h2
    ):not(.woocommerce-tabs h2):not(.related h2):not(h2.secondaryTitle):not(
      .uvc-main-heading h2
    ):not(h2.ult-responsive):not(h2.titlelabel):not(
      .section-title-repeat-left
    ):not(.section-title-repeat-right):not(.section-title-repeat h2):not(
      .ult-team-member-name
    ):not(.sr7-layer h2) {
    margin-bottom: 12px !important;
    line-height: 1.4 !important;
  }
}

/* Przypięty przycisk kontaktu */
.side-flag {
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 30vh;
  right: 0;
  z-index: 100;
  background-color: #f59d24;
  overflow: hidden;
  border-radius: 5px 0 0 5px;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.212);
}

.side-flag__link {
  padding: 12px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  font-weight: bold;
  text-align: center;
  transition: background-color 0.3s ease;
}

.side-flag__link:hover {
  background-color: #e08d15;
}

.side-flag__icon {
  font-size: 12px;
  line-height: 1.4;
  display: block;
}

.footer-implementation-en {
  display: none;
}

html[lang^='en'] .footer-implementation-pl {
  display: none;
}

html[lang^='en'] .footer-implementation-en {
  display: inline;
}

/* przycisk zobacz opis */

/* PROMOCJA */
.w24h-promo {
  --w24h-accent: #f59d24;
  --w24h-accent-dark: #e08d15;
  --w24h-text: #121212;
  --w24h-muted: #757575;
  --w24h-border: #e8e8e8;
  --w24h-bg: #ffffff;
  --w24h-bg-soft: #f7f7f7;
  --w24h-radius-sm: 12px;
  --w24h-radius-md: 20px;
  --w24h-radius-lg: 32px;
  --w24h-shadow: 0 20px 50px rgba(0, 0, 0, 0.06);

  color: var(--w24h-text);
  font-family: "Plus Jakarta Sans", Arial, sans-serif;
}

.w24h-promo,
.w24h-promo * {
  box-sizing: border-box;
}

.w24h-promo img {
  display: block;
  width: 100%;
  height: auto;
}

.w24h-promo__container {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 32px;
}

.w24h-promo__section {
  padding: 80px 0;
}

.w24h-promo__section--products {
  background: linear-gradient(180deg, #ffffff 0%, #fbfbfb 100%);
}

.w24h-promo__section--cta {
  padding-top: 40px;
  padding-bottom: 100px;
}

.w24h-promo__hero {
  padding: 30px 0 50px;
}

.w24h-promo__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 32px;
  align-items: center;
}

.w24h-promo__eyebrow,
.w24h-promo__section-label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(245, 157, 36, 0.12);
  color: var(--w24h-accent-dark);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.w24h-promo h1,
.w24h-promo h2,
.w24h-promo h3 {
  margin: 0 !important;
  color: var(--w24h-text) !important;
  line-height: 1.2 !important;
}

.w24h-promo h1 {
  font-size: 48px !important;
  font-weight: 700 !important;
  margin-bottom: 18px !important;
}

.w24h-promo h2 {
  font-size: 36px !important;
  font-weight: 700 !important;
  margin-bottom: 16px !important;
}

.w24h-promo h3 {
  font-size: 24px !important;
  font-weight: 700 !important;
  margin-bottom: 14px !important;
}

.w24h-promo p {
  margin: 0 0 16px;
  line-height: 1.7;
  color: var(--w24h-text);
  font-size: 16px;
}

.w24h-promo__lead {
  font-size: 18px;
  color: var(--w24h-muted);
  max-width: 720px;
}

.w24h-promo__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 24px 0 28px;
}

.w24h-promo__badges span {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 16px;
  border: 1px solid var(--w24h-border);
  border-radius: 999px;
  background: #fff;
  font-size: 14px;
  font-weight: 600;
}

.w24h-promo__hero-actions,
.w24h-promo__cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.w24h-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 24px;
  border-radius: var(--w24h-radius-lg);
  border: 1px solid var(--w24h-accent);
  text-decoration: none;
  font-weight: 700;
  transition: all 0.25s ease;
}

.w24h-btn--primary {
  background: var(--w24h-accent);
  color: #fff;
}

.w24h-btn--primary:hover {
  background: var(--w24h-accent-dark);
  border-color: var(--w24h-accent-dark);
  color: #fff;
}

.w24h-btn--secondary {
  background: transparent;
  color: var(--w24h-accent);
}

.w24h-btn--secondary:hover {
  background: var(--w24h-accent);
  color: #fff;
}

.w24h-promo__hero-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.w24h-promo__hero-figure,
.w24h-promo__benefit-card,
.w24h-promo__product-card,
.w24h-promo__media-card,
.w24h-promo__cta-box {
  margin: 0;
  background: var(--w24h-bg);
  border: 1px solid var(--w24h-border);
  border-radius: var(--w24h-radius-md);
  box-shadow: var(--w24h-shadow);
  overflow: hidden;
}

.w24h-promo__hero-figure img {
  aspect-ratio: 4 / 4;
  object-fit: cover;
}

.w24h-promo__hero-figure figcaption {
  padding: 14px 16px 18px;
  font-size: 15px;
  font-weight: 700;
  text-align: center;
}

.w24h-promo__section-head {
  margin-bottom: 34px;
}

.w24h-promo__benefits {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 24px;
}

.w24h-promo__benefit-card {
  position: relative;
  grid-column: span 4;
  padding: 28px 28px 28px 32px;
  border: 1px solid #f1e3d2;
  border-radius: 20px;
  background: linear-gradient(180deg, #fffaf4 0%, #ffffff 100%);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.w24h-promo__benefit-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18px;
  bottom: 18px;
  width: 6px;
  border-radius: 0 8px 8px 0;
  background: linear-gradient(180deg, #f59d24 0%, #e08d15 100%);
}

.w24h-promo__benefit-card h3 {
  position: relative;
  z-index: 1;
  margin-bottom: 14px;
  font-size: 22px;
  line-height: 1.3;
}

.w24h-promo__benefit-card p {
  position: relative;
  z-index: 1;
  margin-bottom: 10px;
  color: #333;
  line-height: 1.7;
}

.w24h-promo__benefit-card p:last-child {
  margin-bottom: 0;
}

.w24h-promo__benefit-card strong {
  color: #121212;
}

.w24h-promo__products {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.w24h-promo__product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.w24h-promo__product-image {
  background: var(--w24h-bg-soft);
  padding: 0 36px;
}

.w24h-promo__product-image img {
  aspect-ratio: 4 / 4;
  object-fit: contain;
}

.w24h-promo__product-body {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 28px;
  height: 100%;
}

.w24h-promo__product-top {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.w24h-promo__product-top h3 {
	margin-top: 10px !important;
}

.w24h-promo__product-tag {
  display: inline-flex;
  width: fit-content;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(245, 157, 36, 0.12);
  color: var(--w24h-accent-dark);
  font-size: 13px;
  font-weight: 700;
}

.w24h-promo__price {
  font-size: 30px;
  font-weight: 800;
  line-height: 1.5 !important;
  color: var(--w24h-text);
}

.w24h-promo__spec-list {
  padding: 0;
  list-style: none;
}

.w24h-promo__spec-list li {
  position: relative;
  padding-left: 18px;
  margin-bottom: 12px;
  line-height: 1.6;
}

.w24h-promo__spec-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--w24h-accent);
}

.w24h-promo__feature-media {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.w24h-promo__media-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.w24h-promo__media-card img {
  aspect-ratio: 16 / 9;
}

.w24h-promo__media-copy {
  padding: 22px 24px 24px;
}

.w24h-promo__media-copy p:last-child {
  margin-bottom: 0;
}

.w24h-promo__cta-box {
  padding: 40px;
  text-align: center;
  background: linear-gradient(180deg, #fff 0%, #fafafa 100%);
}

.w24h-promo__cta-box p {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.w24h-promo__cta-actions {
  justify-content: center;
  margin-top: 24px;
  justify-content: center;
}

.w24h-promo__product-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: auto;
}

@media (max-width: 1199px) {
  .w24h-promo h1 {
    font-size: 42px !important;
  }

  .w24h-promo h2 {
    font-size: 32px !important;
  }

  .w24h-promo__benefit-card {
    grid-column: span 6;
  }

  .w24h-promo__benefit-card:nth-child(4),
  .w24h-promo__benefit-card:nth-child(5) {
    grid-column: span 6;
  }
}

@media (max-width: 1023px) {
  .w24h-promo__hero-grid,
  .w24h-promo__products,
  .w24h-promo__feature-media {
    grid-template-columns: 1fr;
  }

  .w24h-promo__hero-gallery {
    grid-template-columns: 1fr 1fr;
  }

  .w24h-promo__section {
    padding: 64px 0;
  }

  .w24h-promo__section--cta {
    padding-top: 24px;
    padding-bottom: 80px;
  }
}

@media (max-width: 767px) {
  .w24h-promo__container {
    padding: 0;
  }

  .w24h-promo__hero {
    padding: 16px 0 34px;
  }

  .w24h-promo h1 {
    font-size: 34px !important;
  }

  .w24h-promo h2 {
    font-size: 28px !important;
  }

  .w24h-promo h3 {
    font-size: 22px !important;
  }

  .w24h-promo__lead {
    font-size: 16px;
  }

  .w24h-promo__hero-gallery {
    grid-template-columns: 1fr;
  }

  .w24h-promo__benefits {
    grid-template-columns: 1fr;
  }

  .w24h-promo__benefit-card,
  .w24h-promo__benefit-card:nth-child(4),
  .w24h-promo__benefit-card:nth-child(5) {
    grid-column: auto;
  }

  .w24h-promo__benefit-card,
  .w24h-promo__product-body,
  .w24h-promo__media-copy,
  .w24h-promo__cta-box {
    padding: 24px;
  }

  .w24h-promo__hero-actions,
  .w24h-promo__cta-actions {
    flex-direction: column;
  }

  .w24h-btn {
    width: 100%;
  }
	
	.w24h-promo__product-image {
		padding: 0 20px;
	}
}
/* PROMOCJA */

.woocommerce-product-gallery .woocommerce-product-gallery__image img {
    max-height: 500px !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
}
