/* Static-site repair layer: keep the exported pages close to the live GVP layout. */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('./uploads/elementor/google-fonts/fonts/roboto-kfo5cnqeu92fr1mu53zec9_vu3r1gihoszmkbnka.woff2') format('woff2');
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('./uploads/elementor/google-fonts/fonts/roboto-kfo7cnqeu92fr1me7ksn66agldtyluama3iubgee.woff2') format('woff2');
}
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url('./uploads/elementor/google-fonts/fonts/robotoslab-bngmuxzytxpivibgjjsb6ufn5qu.woff2') format('woff2');
}
:root {
  --bodyfontfamily: 'Roboto';
  --headingsfontfamily: 'Roboto Slab';
  --nv-fallback-ff: Arial, sans-serif;
}
body,
button,
input,
select,
textarea,
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor,
.elementor-button,
.nav-ul li > a,
.site-footer {
  font-family: 'Roboto', Arial, sans-serif;
}
h1, h2, h3, h4, h5, h6,
.bdt-ep-advanced-heading-title,
.wp-block-heading {
  font-family: 'Roboto Slab', Georgia, serif;
}
body:not(.home) .pre-header {
  display: none !important;
}
body:not(.home) .header,
body:not(.home) #header-grid,
body:not(.home) .header-main,
body:not(.home) .header-main-inner,
body:not(.home) .header--row-inner,
body:not(.home) .site-header {
  background: #202020 !important;
}
body:not(.home) .header {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  z-index: 50 !important;
}
body:not(.home) #content {
  margin-top: 0 !important;
}
.codex-static-product-banner {
  position: relative;
  overflow: hidden;
  min-height: clamp(260px, 38vw, 520px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: #111;
}
.codex-static-product-banner video,
.codex-static-product-banner img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.codex-static-product-banner::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .34);
}
.codex-static-product-banner__text {
  position: relative;
  z-index: 1;
  color: #fff;
  text-align: center;
  font-family: 'Roboto Slab', Georgia, serif;
  font-size: clamp(28px, 4vw, 58px);
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
  text-shadow: 0 2px 16px rgba(0,0,0,.35);
}
@media (max-width: 767px) {
  .codex-static-product-banner { min-height: 300px; }
  .codex-static-product-banner__text { font-size: 30px; }
}

/* In the WordPress theme these empty top spacers sit behind an absolute header.
   In the static export the header is normal-flow, so the spacer must disappear. */
body:not(.home) .elementor-section.elementor-element-2394907,
body:not(.home) .elementor-section.elementor-element-5d77132,
body:not(.home) .elementor-section.elementor-element-78ceb68 {
  display: none !important;
}

/* Element Pack animated-gradient and particles fall back for the static export. */
.element-pack-agbg-yes {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #fff 0%, #fff4f4 48%, #ffd5d5 100%) !important;
}
.element-pack-agbg-yes > .elementor-container {
  position: relative !important;
  z-index: 2 !important;
}
.element-pack-agbg-yes > div:not(.elementor-container),
.element-pack-agbg-yes canvas,
.element-pack-agbg-yes .particles-js-canvas-el {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.elementor-2552 .elementor-element.elementor-element-54a2cd3,
.elementor-2558 .elementor-element.elementor-element-9d974c9 {
  background: linear-gradient(135deg, #fff 0%, #fff3f3 42%, #ffd1d1 100%) !important;
}

/* Match Elementor icon-box alignment from the live WordPress pages. */
.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-wrapper,
.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-content,
.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-title,
.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-description {
  text-align: center !important;
}
.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-icon {
  display: flex !important;
  justify-content: center !important;
}
.elementor-widget-icon-box.elementor-position-top .elementor-icon {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Image Compare fallback: the WordPress plugin normally overlays the two images.
   In the static export the plugin markup loads, but without this layout the
   second image stacks below the first and stretches the whole product page. */
.bdt-image-compare .icv {
  position: relative !important;
  overflow: hidden !important;
  display: inline-block !important;
  vertical-align: top !important;
  max-width: 100% !important;
  line-height: 0 !important;
}
.bdt-image-compare .icv > .icv__img-a {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}
.bdt-image-compare .icv__wrapper {
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 50% !important;
  height: 100% !important;
  overflow: hidden !important;
  z-index: 1 !important;
}
.bdt-image-compare .icv__wrapper .icv__img-b {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  height: 100% !important;
}
.bdt-image-compare .icv__control {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  height: 100% !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
}
.bdt-image-compare .icv__control-line {
  flex: 1 1 auto !important;
}

/* Contact page: mirror the original PL red-overlay photo panel, using a local
   copy of the image so the exported site does not depend on the PL server. */
.elementor-2584 .elementor-element.elementor-element-f32f091 > .elementor-element-populated {
  position: relative !important;
  overflow: hidden !important;
  background-color: var(--e-global-color-e7eb657, #b61617) !important;
  background-image: url("./uploads/2022/11/nowy-potencjal-1536x532.webp") !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}
.elementor-2584 .elementor-element.elementor-element-f32f091 > .elementor-element-populated::after {
  content: none !important;
}
.elementor-2584 .elementor-element.elementor-element-f32f091 > .elementor-element-populated > .elementor-background-overlay {
  display: block !important;
  background-color: var(--e-global-color-e7eb657, #b61617) !important;
  opacity: .8 !important;
}
.elementor-2584 .elementor-element.elementor-element-f32f091 .elementor-widget {
  position: relative !important;
  z-index: 1 !important;
}
.elementor-2584 .elementor-element.elementor-element-f32f091 a,
.elementor-2584 .elementor-element.elementor-element-f32f091 .elementor-heading-title {
  color: #fff !important;
}
