.elementor-widget-section .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-section .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-eael-wpforms .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-eael-wpforms .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-eael-wpforms .eael-contact-form-description, .elementor-widget-eael-wpforms .wpforms-description{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-wpforms .eael-wpforms .wpforms-field label, .elementor-widget-eael-wpforms .eael-wpforms .wpforms-field legend{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-wpforms .eael-wpforms .wpforms-field input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .elementor-widget-eael-wpforms .eael-wpforms .wpforms-field textarea, .elementor-widget-eael-wpforms .eael-wpforms .wpforms-field select{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-wpforms .eael-wpforms .wpforms-submit-container .wpforms-submit{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-197 .elementor-element.elementor-element-5959add .eael-wpforms label.wpforms-error{display:block !important;}.elementor-197 .elementor-element.elementor-element-5959add .eael-wpforms .wpforms-field input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .elementor-197 .elementor-element.elementor-element-5959add .eael-wpforms .wpforms-field select{height:30px;}.elementor-197 .elementor-element.elementor-element-5959add .eael-wpforms .wpforms-submit-container .wpforms-submit:hover, 
                    .elementor-197 .elementor-element.elementor-element-5959add .eael-wpforms .wpforms-container-full .wpforms-submit-container .wpforms-form button[type=submit]:hover{background:#065689 !important;}.elementor-197 .elementor-element.elementor-element-5959add .eael-wpforms input.wpforms-error{border-width:1px;}.elementor-197 .elementor-element.elementor-element-5959add .eael-wpforms textarea.wpforms-error{border-width:1px;}:root{--page-title-display:none;}/* Start custom CSS for section, class: .elementor-element-0e8c1ef *//* ============================================================
   AP 2026 — WEB+ HERO
   Custom CSS zewnętrznej sekcji Elementora
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-0e8c1ef {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: #070707 !important;
}

/* Reset starej Sekcji/Kolumny Elementora — usuwa 10 px dookoła HTML */
.elementor-197 .elementor-element.elementor-element-0e8c1ef,
.elementor-197 .elementor-element.elementor-element-0e8c1ef > .elementor-container,
.elementor-197 .elementor-element.elementor-element-0e8c1ef > .elementor-container > .elementor-column,
.elementor-197 .elementor-element.elementor-element-0e8c1ef > .elementor-container > .elementor-column > .elementor-element-populated,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .elementor-widget-html > .elementor-widget-container,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-section-shell {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  margin-block: 0 !important;
  margin-inline: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef > .elementor-container {
  display: flex !important;
  align-items: stretch !important;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef > .elementor-container > .elementor-column {
  display: flex !important;
  align-self: stretch !important;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef > .elementor-container > .elementor-column > .elementor-element-populated {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  row-gap: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .elementor-widget-html > .elementor-widget-container,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-section-shell {
  display: block !important;
  flex: 0 0 auto !important;
  align-self: stretch !important;
  height: auto !important;
  min-height: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-section-shell {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero *,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero *::before,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero *::after {
  box-sizing: border-box;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero {
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-white: #fff;
  --ap-text: rgba(255, 255, 255, .77);
  --ap-border: rgba(255, 255, 255, .12);
  --ap-ease: cubic-bezier(.22, .61, .36, 1);

  position: relative;
  isolation: isolate;
  display: flex;
  width: 100%;
  min-height: min(850px, calc(100vh - 74px));
  margin: 0;
  padding: clamp(82px, 7vw, 112px) 24px clamp(88px, 7.5vw, 120px);
  overflow: clip;
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  background:
    radial-gradient(circle at 91% 24%, rgba(255, 122, 26, .13), transparent 29%),
    radial-gradient(circle at 8% 87%, rgba(255, 154, 60, .065), transparent 25%),
    linear-gradient(135deg, #070707 0%, #090807 52%, #080808 100%);
  border-top: 1px solid rgba(255, 255, 255, .06);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__ambient {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(90deg, transparent, #000 62%, #000);
  opacity: .32;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(430px, 510px);
  align-items: center;
  gap: clamp(54px, 6.5vw, 92px);
  width: 100%;
  max-width: 1210px;
  margin: auto;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__content {
  min-width: 0;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 25px;
  color: var(--ap-orange-2);
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__eyebrow span {
  display: block;
  width: 30px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow: 0 0 16px rgba(255, 122, 26, .4);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef h1.ap-webplus-hero__title {
  max-width: 680px;
  margin: 0;
  padding: 0;
  color: var(--ap-white);
  font-family: inherit;
  font-size: clamp(52px, 4.65vw, 74px);
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.057em;
  text-wrap: balance;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef p.ap-webplus-hero__lead {
  max-width: 620px;
  margin: 27px 0 0;
  padding: 0;
  color: var(--ap-text);
  font-family: inherit;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.72;
  letter-spacing: -.01em;
  text-wrap: pretty;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  margin-top: 34px;
  padding: 0 26px;
  overflow: hidden;
  border: 1px solid rgba(255, 154, 60, .7);
  border-radius: 999px;
  color: #120700 !important;
  background: linear-gradient(135deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow:
    0 18px 46px -20px rgba(255, 122, 26, .9),
    inset 0 1px 0 rgba(255, 255, 255, .38);
  font-family: inherit;
  font-size: 13px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: -.01em;
  text-decoration: none !important;
  white-space: nowrap;
  transition: transform .3s var(--ap-ease), box-shadow .3s var(--ap-ease), filter .3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button::after {
  content: "";
  position: absolute;
  top: -45%;
  left: -135%;
  width: 42%;
  height: 190%;
  transform: rotate(22deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.52), transparent);
  transition: left .72s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button span {
  display: inline-block;
  color: inherit;
  transition: transform .3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:hover,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible {
  color: #120700 !important;
  transform: translateY(-2px);
  filter: saturate(1.08) brightness(1.04);
  box-shadow:
    0 24px 56px -18px rgba(255, 122, 26, .94),
    0 0 0 1px rgba(255, 154, 60, .18),
    inset 0 1px 0 rgba(255,255,255,.45);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:hover::after,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible::after {
  left: 150%;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:hover span,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible span {
  transform: translateX(4px);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible {
  outline: 2px solid var(--ap-orange-2);
  outline-offset: 4px;
}

/* Prawa kolumna — jasne i kontrastowe zdjęcie */
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__visual {
  position: relative;
  isolation: isolate;
  width: 100%;
  height: 590px;
  min-width: 0;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__visual-glow {
  position: absolute;
  inset: 7% -13% 5% 12%;
  z-index: -1;
  border-radius: 50%;
  background:
    radial-gradient(circle at 70% 22%, rgba(255, 154, 60, .3), transparent 34%),
    radial-gradient(circle at 35% 78%, rgba(255, 122, 26, .18), transparent 42%);
  filter: blur(55px);
  opacity: .72;
  pointer-events: none;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef figure.ap-webplus-hero__main-card {
  position: absolute;
  top: 0;
  right: 0;
  width: 455px;
  height: 570px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 22px;
  background: #151515;
  box-shadow:
    0 42px 100px -44px rgba(0, 0, 0, .98),
    0 32px 82px -52px rgba(255, 122, 26, .72),
    inset 0 1px 0 rgba(255,255,255,.08);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef figure.ap-webplus-hero__main-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(8,8,8,.02) 0%, transparent 55%, rgba(5,5,5,.38) 100%),
    linear-gradient(90deg, rgba(5,5,5,.08), transparent 18%, transparent 82%, rgba(5,5,5,.08));
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef figure.ap-webplus-hero__main-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.035);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__main-card > img {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  object-fit: cover;
  object-position: 50% 47%;
  opacity: 1;
  filter: brightness(1.07) contrast(1.08) saturate(1.12);
  transform: scale(1.012);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__photo-label {
  position: absolute;
  right: 18px;
  bottom: 17px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 999px;
  color: rgba(255,255,255,.86);
  background: rgba(7,7,7,.57);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-size: 9px;
  font-weight: 750;
  line-height: 1;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__photo-label span {
  color: var(--ap-orange-2);
}

/* Czytelny mockup realizacji */
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-card {
  position: absolute;
  left: -76px;
  bottom: -18px;
  z-index: 6;
  width: 292px;
  height: 184px;
  padding: 12px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 20px;
  background: rgba(10,10,10,.91);
  box-shadow:
    0 30px 75px -28px rgba(0,0,0,.98),
    0 22px 62px -38px rgba(255,122,26,.72),
    inset 0 1px 0 rgba(255,255,255,.07);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-bar {
  display: flex;
  align-items: center;
  gap: 5px;
  height: 14px;
  padding: 0 3px;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-bar span {
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255,255,255,.23);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-bar span:first-child {
  background: var(--ap-orange);
  box-shadow: 0 0 8px rgba(255,122,26,.55);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-inner {
  position: relative;
  width: 100%;
  height: calc(100% - 14px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 13px;
  background: #0d0d0d;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-inner img {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  object-fit: cover;
  object-position: center top;
  opacity: .96;
  filter: brightness(1.02) contrast(1.06) saturate(1.06);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 48%, rgba(5,5,5,.66) 100%);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-label {
  position: absolute;
  left: 14px;
  bottom: 12px;
  z-index: 3;
  color: rgba(255,255,255,.9);
  font-size: 9px;
  font-weight: 750;
  line-height: 1;
  letter-spacing: .05em;
}

/* Animacje wejścia */
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-reveal,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-reveal-right {
  opacity: 0;
  will-change: transform, opacity;
  animation: ap-webplus-hero-enter .76s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-reveal {
  transform: translateY(22px);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-reveal-right {
  transform: translate3d(22px, 20px, 0) scale(.985);
}

@keyframes ap-webplus-hero-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

@media (max-width: 1120px) {
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(400px, 470px);
    gap: 50px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef figure.ap-webplus-hero__main-card {
    width: 425px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-card {
    left: -42px;
  }
}

@media (max-width: 960px) {
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero {
    min-height: 0;
    padding: 82px 22px 104px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 62px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef h1.ap-webplus-hero__title,
  .elementor-197 .elementor-element.elementor-element-0e8c1ef p.ap-webplus-hero__lead {
    max-width: 760px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__visual {
    width: 100%;
    max-width: 610px;
    height: 590px;
    margin: 0 auto;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef figure.ap-webplus-hero__main-card {
    width: min(455px, 82%);
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-card {
    left: 0;
    bottom: -14px;
  }
}

@media (max-width: 640px) {
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero {
    padding: 68px 18px 96px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__inner {
    gap: 46px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__eyebrow {
    margin-bottom: 21px;
    font-size: 10px;
    letter-spacing: .19em;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef h1.ap-webplus-hero__title {
    font-size: clamp(39px, 11.7vw, 56px);
    line-height: 1;
    letter-spacing: -.055em;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef p.ap-webplus-hero__lead {
    margin-top: 22px;
    font-size: 15px;
    line-height: 1.7;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button {
    width: 100%;
    min-height: 52px;
    margin-top: 29px;
    padding: 0 18px;
    font-size: 12px;
    white-space: normal;
    text-align: center;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__visual {
    height: 500px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef figure.ap-webplus-hero__main-card {
    width: 100%;
    height: 455px;
    border-radius: 19px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__main-card > img {
    object-position: 50% 46%;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__photo-label {
    display: none;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-card {
    left: 50%;
    bottom: -20px;
    width: min(310px, 92%);
    height: 180px;
    transform: translateX(-50%);
  }
}

@media (max-width: 420px) {
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero {
    padding-right: 16px;
    padding-left: 16px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__visual {
    height: 455px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef figure.ap-webplus-hero__main-card {
    height: 415px;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__mockup-card {
    height: 164px;
  }
}

@media (scripting: none), (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-reveal,
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-reveal-right {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
  }

  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button,
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button::after,
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button span {
    transition: none !important;
  }
}

/* ============================================================
   FINALNY FIX CTA - identyczny standard jak w sekcji Problem
   ============================================================ */
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  margin-top: 34px;
  padding: 0 26px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c);
  color: #ffffff !important;
  text-decoration: none !important;
  font-family: inherit;
  font-size: 14px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.01em;
  white-space: nowrap;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38);
  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    filter 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0)),
    linear-gradient(135deg, #ff7a1a, #ff9a3c);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button::after {
  content: "";
  position: absolute;
  top: -40%;
  left: -55%;
  width: 42%;
  height: 180%;
  transform: rotate(22deg);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.42),
    transparent
  );
  opacity: 0;
  transition:
    left 0.72s var(--ap-ease),
    opacity 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button span {
  position: relative;
  z-index: 2;
  display: inline-block;
  color: #ffffff !important;
  transition: transform 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:visited,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:hover,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible {
  color: #ffffff !important;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:hover,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible {
  transform: translateY(-2px) scale(1.018);
  filter: saturate(1.08) brightness(1.04);
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    18px 8px 46px -18px rgba(255, 122, 26, 0.72),
    0 0 0 1px rgba(255, 154, 60, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:hover::after,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible::after {
  left: 120%;
  opacity: 1;
}

.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:hover span,
.elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button:focus-visible span {
  transform: translateX(4px);
}

@media (max-width: 640px) {
  .elementor-197 .elementor-element.elementor-element-0e8c1ef .ap-webplus-hero__button {
    width: 100%;
    min-height: 48px;
    margin-top: 29px;
    padding: 0 18px;
    font-size: 13px;
    text-align: center;
    white-space: normal;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-b7198d3 */.elementor-197 .elementor-element.elementor-element-b7198d3 {
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 > .elementor-container,
.elementor-197 .elementor-element.elementor-element-b7198d3 .elementor-container,
.elementor-197 .elementor-element.elementor-element-b7198d3 > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-b7198d3 .e-con-inner,
.elementor-197 .elementor-element.elementor-element-b7198d3 .elementor-column,
.elementor-197 .elementor-element.elementor-element-b7198d3 .elementor-widget-wrap,
.elementor-197 .elementor-element.elementor-element-b7198d3 .elementor-widget,
.elementor-197 .elementor-element.elementor-element-b7198d3 .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-b7198d3 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem,
.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem *,
.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem *::before,
.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem *::after {
  box-sizing: border-box;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem {
  --ap-black: #050505;
  --ap-card: #0a0a0a;
  --ap-card-strong: #0d0d0d;
  --ap-white: #ffffff;
  --ap-text: rgba(255, 255, 255, 0.84);
  --ap-muted: rgba(255, 255, 255, 0.72);
  --ap-border: rgba(255, 255, 255, 0.10);
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 118px 24px 120px;
  background:
    radial-gradient(circle at 82% 20%, rgba(255, 122, 26, 0.06) 0, transparent 34%),
    linear-gradient(180deg, #050505 0%, #070707 48%, #050505 100%);
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__inner {
  width: 100%;
  max-width: 1210px;
  margin: 0 auto;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__head {
  position: relative;
  margin-bottom: 48px;
  padding-left: 24px;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  bottom: 2px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.38);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ap-orange-2);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__title {
  max-width: 940px;
  margin: 18px 0 0;
  color: var(--ap-white);
  font-size: clamp(22px, 1.55vw, 29px);
  font-weight: 750;
  line-height: 1.4;
  letter-spacing: -0.025em;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__card {
  min-height: 112px;
  display: flex;
  align-items: center;
  padding: 29px 31px;
  border: 1px solid var(--ap-border);
  border-radius: 20px;
  background:
    radial-gradient(circle at 90% 0%, rgba(255, 122, 26, 0.035) 0, transparent 32%),
    var(--ap-card);
  box-shadow:
    0 12px 34px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
  transition:
    transform 0.28s var(--ap-ease),
    border-color 0.28s var(--ap-ease),
    background 0.28s var(--ap-ease),
    box-shadow 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__card p {
  margin: 0;
  color: var(--ap-text);
  font-size: 17px;
  font-weight: 650;
  line-height: 1.55;
  letter-spacing: -0.015em;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 122, 26, 0.34);
  background:
    radial-gradient(circle at 90% 0%, rgba(255, 122, 26, 0.065) 0, transparent 34%),
    #0c0c0c;
  box-shadow:
    0 20px 48px rgba(0, 0, 0, 0.52),
    0 0 34px rgba(255, 122, 26, 0.11),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 38px;
  padding: 30px 34px 30px 32px;
  border: 1px solid var(--ap-border);
  border-left: 3px solid var(--ap-orange);
  border-radius: 20px;
  background:
    radial-gradient(circle at 86% 30%, rgba(255, 122, 26, 0.055) 0, transparent 30%),
    var(--ap-card-strong);
  box-shadow:
    0 14px 38px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__cta p {
  max-width: 680px;
  margin: 0;
  color: var(--ap-text);
  font-size: 17px;
  font-weight: 650;
  line-height: 1.55;
  letter-spacing: -0.015em;
}

/* CTA - ten sam standard co header / hero */
.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 26px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c);
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.01em;
  white-space: nowrap;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38);
  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    filter 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0)),
    linear-gradient(135deg, #ff7a1a, #ff9a3c);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button::after {
  content: "";
  position: absolute;
  top: -40%;
  left: -55%;
  width: 42%;
  height: 180%;
  transform: rotate(22deg);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.42),
    transparent
  );
  opacity: 0;
  transition:
    left 0.72s var(--ap-ease),
    opacity 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button span {
  position: relative;
  z-index: 2;
  display: inline-block;
  color: #ffffff !important;
  transition: transform 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button:hover,
.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button:focus-visible {
  transform: translateY(-2px) scale(1.018);
  filter: saturate(1.08) brightness(1.04);
  color: #ffffff !important;
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    18px 8px 46px -18px rgba(255, 122, 26, 0.72),
    0 0 0 1px rgba(255, 154, 60, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button:hover::after,
.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button:focus-visible::after {
  left: 120%;
  opacity: 1;
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button:hover span,
.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button:focus-visible span {
  transform: translateX(4px);
}

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button:visited {
  color: #ffffff !important;
}

@media (max-width: 1024px) {
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem {
    padding: 92px 22px 96px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__grid {
    gap: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__card {
    padding: 27px 26px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__cta {
    padding: 28px;
  }
}

@media (max-width: 820px) {
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__grid {
    grid-template-columns: 1fr;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__cta {
    flex-direction: column;
    align-items: flex-start;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem {
    padding: 70px 18px 74px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__head {
    margin-bottom: 36px;
    padding-left: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__eyebrow {
    font-size: 11px;
    letter-spacing: 0.18em;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__title {
    margin-top: 16px;
    font-size: 21px;
    line-height: 1.42;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__grid {
    gap: 14px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__card {
    min-height: auto;
    padding: 23px 22px;
    border-radius: 17px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__card p {
    font-size: 15.5px;
    line-height: 1.58;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__cta {
    margin-top: 26px;
    padding: 25px 22px;
    border-radius: 18px;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__cta p {
    font-size: 15.5px;
    line-height: 1.58;
  }

  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button {
    min-height: 48px;
    padding: 0 18px;
    font-size: 13px;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__card,
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button,
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button::after,
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-problem__button span {
    transition: none !important;
  }
}
/* ============================================================
   WEB+ PROBLEM - ANIMACJE WEJŚCIA
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-reveal {
  opacity: 0;
  transform: translateY(22px);
  will-change: transform, opacity;
  animation: ap-webplus-problem-enter 0.72s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

@keyframes ap-webplus-problem-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-b7198d3 .ap-webplus-reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-b31533a */.elementor-197 .elementor-element.elementor-element-b31533a {
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.elementor-197 .elementor-element.elementor-element-b31533a > .elementor-container,
.elementor-197 .elementor-element.elementor-element-b31533a .elementor-container,
.elementor-197 .elementor-element.elementor-element-b31533a > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-b31533a .e-con-inner,
.elementor-197 .elementor-element.elementor-element-b31533a .elementor-column,
.elementor-197 .elementor-element.elementor-element-b31533a .elementor-widget-wrap,
.elementor-197 .elementor-element.elementor-element-b31533a .elementor-widget,
.elementor-197 .elementor-element.elementor-element-b31533a .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-b31533a .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition,
.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition *,
.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition *::before,
.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition *::after {
  box-sizing: border-box;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition {
  --ap-black: #050505;
  --ap-card: #0a0a0a;
  --ap-card-strong: #0d0d0d;
  --ap-white: #ffffff;
  --ap-text: rgba(255, 255, 255, 0.78);
  --ap-muted: rgba(255, 255, 255, 0.62);
  --ap-border: rgba(255, 255, 255, 0.10);
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 112px 24px 120px;
  background:
    radial-gradient(circle at 82% 18%, rgba(255, 122, 26, 0.055) 0, transparent 34%),
    linear-gradient(180deg, #050505 0%, #060606 50%, #050505 100%);
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__inner {
  width: 100%;
  max-width: 1210px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: 82px;
  align-items: start;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__left {
  min-width: 0;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__head {
  position: relative;
  padding-left: 24px;
  margin-bottom: 26px;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  bottom: 2px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.38);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ap-orange-2);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__title {
  max-width: 560px;
  margin: 18px 0 0;
  color: var(--ap-white);
  font-size: 23px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.025em;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__desc {
  max-width: 570px;
  margin: 0;
  padding-left: 24px;
  color: var(--ap-text);
  font-size: 19px;
  font-weight: 500;
  line-height: 33px;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  padding: 34px;
  border: 1px solid var(--ap-border);
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% 8%, rgba(255, 122, 26, 0.075) 0, transparent 32%),
    var(--ap-card);
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card-glow {
  position: absolute;
  top: -110px;
  right: -120px;
  width: 360px;
  height: 360px;
  pointer-events: none;
  background: radial-gradient(circle, rgba(255, 122, 26, 0.16) 0, rgba(255, 122, 26, 0.055) 34%, transparent 66%);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card-content {
  position: relative;
  z-index: 2;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__eyebrow--card {
  margin-bottom: 18px;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card-title {
  max-width: 560px;
  margin: 0;
  color: var(--ap-white);
  font-size: clamp(28px, 2vw, 34px);
  font-weight: 850;
  line-height: 1.13;
  letter-spacing: -0.055em;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card-desc {
  max-width: 560px;
  margin: 18px 0 30px;
  color: var(--ap-muted);
  font-size: 15.5px;
  font-weight: 500;
  line-height: 1.62;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__item {
  min-height: 86px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 16px;
  background:
    radial-gradient(circle at 90% 0%, rgba(255, 122, 26, 0.035) 0, transparent 34%),
    rgba(255, 255, 255, 0.03);
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
  transition:
    transform 0.28s var(--ap-ease),
    border-color 0.28s var(--ap-ease),
    background 0.28s var(--ap-ease),
    box-shadow 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__item:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 122, 26, 0.40);
  background:
    radial-gradient(circle at 90% 0%, rgba(255, 122, 26, 0.075) 0, transparent 36%),
    rgba(255, 122, 26, 0.045);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.44),
    0 0 28px rgba(255, 122, 26, 0.11),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ap-orange);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__icon svg {
  display: block;
  width: 19px;
  height: 19px;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__item span:last-child {
  min-width: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.28;
  letter-spacing: -0.02em;
}

@media (max-width: 1080px) {
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition {
    padding: 94px 22px 98px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__inner {
    grid-template-columns: 1fr;
    gap: 52px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__left,
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__desc,
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__title {
    max-width: 760px;
  }
}

@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition {
    padding: 72px 18px 76px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__head {
    padding-left: 20px;
    margin-bottom: 22px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__eyebrow {
    font-size: 11px;
    letter-spacing: 0.18em;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__title {
    font-size: 21px;
    line-height: 1.38;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__desc {
    padding-left: 20px;
    font-size: 16px;
    line-height: 28px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card {
    padding: 24px;
    border-radius: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card-title {
    font-size: 26px;
    line-height: 1.16;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__card-desc {
    margin: 16px 0 24px;
    font-size: 14.5px;
    line-height: 1.62;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__item {
    min-height: 82px;
    padding: 16px;
    border-radius: 15px;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__item span:last-child {
    font-size: 13.5px;
  }
}

@media (max-width: 460px) {
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__grid {
    grid-template-columns: 1fr;
  }

  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__item {
    min-height: 72px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-definition__item {
    transition: none !important;
  }
}
/* ============================================================
   WEB+ DEFINITION - ANIMACJE WEJŚCIA
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-reveal,
.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-reveal-right {
  opacity: 0;
  will-change: transform, opacity;
  animation: ap-webplus-definition-enter 0.72s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-reveal {
  transform: translateY(22px);
}

.elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-reveal-right {
  transform: translateY(28px) translateX(18px) scale(0.985);
}

@keyframes ap-webplus-definition-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-reveal,
  .elementor-197 .elementor-element.elementor-element-b31533a .ap-webplus-reveal-right {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-b7497b2 */.elementor-197 .elementor-element.elementor-element-b7497b2 {
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 > .elementor-container,
.elementor-197 .elementor-element.elementor-element-b7497b2 .elementor-container,
.elementor-197 .elementor-element.elementor-element-b7497b2 > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-b7497b2 .e-con-inner,
.elementor-197 .elementor-element.elementor-element-b7497b2 .elementor-column,
.elementor-197 .elementor-element.elementor-element-b7497b2 .elementor-widget-wrap,
.elementor-197 .elementor-element.elementor-element-b7497b2 .elementor-widget,
.elementor-197 .elementor-element.elementor-element-b7497b2 .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-b7497b2 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages,
.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages *,
.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages *::before,
.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages *::after {
  box-sizing: border-box;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages {
  --ap-black: #050505;
  --ap-card: #0a0a0a;
  --ap-card-strong: #0d0d0d;
  --ap-white: #ffffff;
  --ap-text: rgba(255, 255, 255, 0.78);
  --ap-muted: rgba(255, 255, 255, 0.62);
  --ap-border: rgba(255, 255, 255, 0.10);
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 112px 24px 120px;
  background:
    radial-gradient(circle at 82% 18%, rgba(255, 122, 26, 0.055) 0, transparent 34%),
    linear-gradient(180deg, #050505 0%, #060606 50%, #050505 100%);
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__inner {
  width: 100%;
  max-width: 1210px;
  margin: 0 auto;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__head {
  position: relative;
  max-width: 760px;
  padding-left: 24px;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  bottom: 2px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.38);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ap-orange-2);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__title {
  max-width: 760px;
  margin: 18px 0 0;
  color: var(--ap-white);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.025em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__lead {
  max-width: 760px;
  margin: 24px 0 0;
  color: var(--ap-text);
  font-size: 19px;
  font-weight: 500;
  line-height: 33px;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
  margin-top: 60px;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--ap-border);
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% 8%, rgba(255, 122, 26, 0.055) 0, transparent 32%),
    var(--ap-card);
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.03);
  transition:
    transform 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 122, 26, 0.34);
  box-shadow:
    0 32px 86px rgba(0, 0, 0, 0.56),
    0 0 38px rgba(255, 122, 26, 0.10),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card--featured {
  border-color: rgba(255, 122, 26, 0.54);
  box-shadow:
    0 28px 86px rgba(0, 0, 0, 0.58),
    0 0 46px rgba(255, 122, 26, 0.15),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__glow {
  position: absolute;
  top: -110px;
  right: -120px;
  width: 360px;
  height: 360px;
  pointer-events: none;
  background: radial-gradient(circle, rgba(255, 122, 26, 0.15) 0, rgba(255, 122, 26, 0.05) 34%, transparent 66%);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card-inner {
  position: relative;
  z-index: 2;
  height: 100%;
  min-height: 700px;
  display: flex;
  flex-direction: column;
  padding: 32px;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__badge {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  min-height: 28px;
  margin-bottom: 18px;
  padding: 0 14px;
  border: 1px solid rgba(255, 122, 26, 0.55);
  border-radius: 999px;
  color: var(--ap-orange-2);
  background: rgba(255, 122, 26, 0.06);
  font-size: 10.5px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__top h3 {
  margin: 0;
  color: var(--ap-white);
  font-size: 30px;
  font-weight: 850;
  line-height: 1.15;
  letter-spacing: -0.055em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__top p {
  margin: 16px 0 0;
  color: var(--ap-muted);
  font-size: 15.5px;
  font-weight: 500;
  line-height: 1.58;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__list {
  list-style: none;
  margin: 28px 0 0;
  padding: 26px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__list li {
  position: relative;
  margin: 0 0 14px;
  padding-left: 22px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 15px;
  font-weight: 650;
  line-height: 1.45;
  letter-spacing: -0.02em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__list li:last-child {
  margin-bottom: 0;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__list li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 9px;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 12px rgba(255, 122, 26, 0.54);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__bottom {
  margin-top: auto;
  padding-top: 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__price {
  margin-bottom: 24px;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__price span {
  display: block;
  margin-bottom: 10px;
  color: rgba(255, 255, 255, 0.56);
  font-size: 11px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__price strong {
  display: block;
  color: var(--ap-white);
  font-size: clamp(26px, 1.9vw, 32px);
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.055em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__price-accent {
  color: var(--ap-orange) !important;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c);
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.01em;
  white-space: nowrap;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38);
  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    filter 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0)),
    linear-gradient(135deg, #ff7a1a, #ff9a3c);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button::after {
  content: "";
  position: absolute;
  top: -40%;
  left: -55%;
  width: 42%;
  height: 180%;
  transform: rotate(22deg);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.42),
    transparent
  );
  opacity: 0;
  transition:
    left 0.72s var(--ap-ease),
    opacity 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button span {
  position: relative;
  z-index: 2;
  display: inline-block;
  color: #ffffff !important;
  transition: transform 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button:hover,
.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button:focus-visible {
  transform: translateY(-2px) scale(1.018);
  filter: saturate(1.08) brightness(1.04);
  color: #ffffff !important;
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    18px 8px 46px -18px rgba(255, 122, 26, 0.72),
    0 0 0 1px rgba(255, 154, 60, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button:hover::after,
.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button:focus-visible::after {
  left: 120%;
  opacity: 1;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button:hover span,
.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button:focus-visible span {
  transform: translateX(4px);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button:visited {
  color: #ffffff !important;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__note {
  max-width: 820px;
  margin: 42px auto 0;
  color: rgba(255, 255, 255, 0.56);
  text-align: center;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 52px;
  padding: 30px 34px 30px 32px;
  border: 1px solid var(--ap-border);
  border-left: 3px solid var(--ap-orange);
  border-radius: 22px;
  background:
    radial-gradient(circle at 86% 30%, rgba(255, 122, 26, 0.055) 0, transparent 30%),
    var(--ap-card-strong);
  box-shadow:
    0 18px 54px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__cta p {
  max-width: 740px;
  margin: 0;
  color: rgba(255, 255, 255, 0.90);
  font-size: 17px;
  font-weight: 650;
  line-height: 1.55;
  letter-spacing: -0.015em;
}

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button--small {
  width: auto;
  flex: 0 0 auto;
  min-width: 190px;
}

@media (min-width: 1025px) {
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card--featured {
    transform: translateY(-14px);
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card--featured:hover {
    transform: translateY(-20px);
  }
}

@media (max-width: 1080px) {
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages {
    padding: 94px 22px 98px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__grid {
    grid-template-columns: 1fr;
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
    gap: 24px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card-inner {
    min-height: auto;
  }
}

@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages {
    padding: 72px 18px 78px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__head {
    padding-left: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__eyebrow {
    font-size: 11px;
    letter-spacing: 0.18em;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__title {
    font-size: 21px;
    line-height: 1.38;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__lead {
    margin-top: 20px;
    font-size: 16px;
    line-height: 28px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__grid {
    margin-top: 42px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card {
    border-radius: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card-inner {
    padding: 26px 22px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__top h3 {
    font-size: 26px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__top p {
    font-size: 14.5px;
    line-height: 1.62;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__list li {
    font-size: 14.5px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__price strong {
    font-size: 26px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__cta {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 42px;
    padding: 26px 22px;
    border-radius: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__cta p {
    font-size: 15.5px;
    line-height: 1.6;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button--small {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 420px) {
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button {
    padding: 0 18px;
    font-size: 13px;
  }

  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__badge {
    font-size: 9.5px;
    letter-spacing: 0.15em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__card,
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button,
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button::after,
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-packages__button span {
    transition: none !important;
  }
}
/* ============================================================
   WEB+ PACKAGES - ANIMACJE WEJŚCIA
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-reveal {
  opacity: 0;
  transform: translateY(22px);
  will-change: transform, opacity;
  animation: ap-webplus-packages-enter 0.72s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

@keyframes ap-webplus-packages-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-b7497b2 .ap-webplus-reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-967463a */.ap-case-shell {
  --ap-case-black: #050505;
  --ap-case-card: rgba(13, 13, 15, 0.92);
  --ap-case-white: #ffffff;
  --ap-case-white-soft: rgba(255, 255, 255, 0.78);
  --ap-case-white-muted: rgba(255, 255, 255, 0.56);
  --ap-case-border: rgba(255, 255, 255, 0.09);
  --ap-case-orange: #ff7a1a;
  --ap-case-orange-2: #ff9a3c;
  --ap-case-orange-glow: rgba(255, 122, 26, 0.48);
  --ap-case-max: 1260px;
  --ap-case-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;
  display: block;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: -1px;
  margin-bottom: -1px;
  padding: 0;
  background: var(--ap-case-black);
  overflow: hidden;
  line-height: 1;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.ap-case-shell::before,
.ap-case-shell::after {
  content: "";
  position: absolute;
  left: 50%;
  z-index: 6;
  width: 100vw;
  height: 4px;
  transform: translateX(-50%);
  pointer-events: none;
}

.ap-case-shell::before {
  top: -3px;
  background: var(--ap-case-black);
}

.ap-case-shell::after {
  bottom: -3px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 122, 26, 0.3) 10%,
    #ff7a1a 50%,
    rgba(255, 122, 26, 0.3) 90%,
    transparent 100%
  );
  box-shadow: 0 0 24px rgba(255, 122, 26, 0.44);
}

.ap-case-shell,
.ap-case-shell *,
.ap-case-shell *::before,
.ap-case-shell *::after {
  box-sizing: border-box;
}

.ap-case-shell a {
  text-decoration: none !important;
}

.ap-case-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 12% 14%, rgba(255, 122, 26, 0.08), transparent 34%),
    radial-gradient(circle at 84% 72%, rgba(255, 122, 26, 0.055), transparent 32%),
    linear-gradient(180deg, #050505 0%, #08080a 100%);
}

.ap-case-inner {
  position: relative;
  z-index: 2;
  max-width: var(--ap-case-max);
  margin: 0 auto;
  padding: clamp(76px, 8vw, 122px) clamp(18px, 4vw, 42px) clamp(82px, 8vw, 122px);
}

.ap-case-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.98fr) minmax(420px, 1.02fr);
  align-items: center;
  gap: clamp(46px, 6vw, 86px);
}

.ap-case-visual {
  position: relative;
  min-width: 0;
}

.ap-case-mockup {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 22px;
  background:
    linear-gradient(155deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0) 54%),
    rgba(12, 12, 14, 0.94);
  box-shadow:
    0 38px 100px -46px rgba(0, 0, 0, 0.96),
    0 0 78px -52px var(--ap-case-orange-glow),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.ap-case-mockup::before {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgba(255, 122, 26, 0.12);
}

.ap-case-browser {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  background:
    radial-gradient(circle at 0% 0%, rgba(255, 122, 26, 0.08), transparent 38%),
    rgba(15, 15, 18, 0.96);
}

.ap-case-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
}

.ap-case-dot-orange {
  background: var(--ap-case-orange);
  box-shadow: 0 0 14px var(--ap-case-orange-glow);
}

.ap-case-url {
  min-width: 0;
  margin-left: 10px;
  color: rgba(255, 255, 255, 0.44);
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ap-case-screen {
  position: relative;
  z-index: 2;
  height: clamp(420px, 38vw, 540px);
  overflow-y: auto;
  overflow-x: hidden;
  background: #0b0b0d;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 122, 26, 0.72) rgba(255, 255, 255, 0.05);
}

.ap-case-screen:focus-visible {
  outline: 2px solid var(--ap-case-orange-2);
  outline-offset: -2px;
}

.ap-case-screen::-webkit-scrollbar {
  width: 10px;
}

.ap-case-screen::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.045);
}

.ap-case-screen::-webkit-scrollbar-thumb {
  border: 2px solid #0b0b0d;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--ap-case-orange), var(--ap-case-orange-2));
}

.ap-case-shot {
  display: block;
  width: 100%;
  height: auto;
}

.ap-case-caption {
  margin: 16px 0 0;
  color: var(--ap-case-white-muted);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
}

.ap-case-content {
  min-width: 0;
}

.ap-case-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  margin: 0 0 22px;
  color: var(--ap-case-orange);
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.ap-case-eyebrow span {
  display: block;
  width: 30px;
  height: 1px;
  background: var(--ap-case-orange);
  opacity: 0.92;
}

.ap-case-title {
  max-width: 680px;
  margin: 0 0 34px;
  color: var(--ap-case-white);
  font-size: clamp(38px, 4.2vw, 64px);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.06em;
  text-wrap: balance;
}

.ap-case-block {
  max-width: 680px;
  margin: 0 0 28px;
}

.ap-case-label {
  display: block;
  margin-bottom: 12px;
  color: rgba(255, 255, 255, 0.48);
  font-size: 11.5px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.ap-case-block p {
  margin: 0;
  color: var(--ap-case-white-soft);
  font-size: clamp(15.5px, 1.15vw, 17px);
  line-height: 1.68;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.ap-case-result {
  position: relative;
  max-width: 680px;
  margin: 34px 0 34px;
  padding: clamp(24px, 2.5vw, 32px);
  border: 1px solid rgba(255, 122, 26, 0.42);
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 122, 26, 0.12), transparent 38%),
    linear-gradient(155deg, rgba(255, 122, 26, 0.09), rgba(255, 122, 26, 0.025) 60%),
    rgba(12, 12, 14, 0.88);
  box-shadow:
    0 24px 70px -44px var(--ap-case-orange-glow),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
  overflow: hidden;
}

.ap-case-result-label {
  display: block;
  margin-bottom: 14px;
  color: var(--ap-case-orange-2);
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.20em;
  text-transform: uppercase;
}

.ap-case-result p {
  margin: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(15.5px, 1.15vw, 17px);
  line-height: 1.68;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.ap-case-btn {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 26px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--ap-case-orange), var(--ap-case-orange-2));
  color: #ffffff !important;
  text-decoration: none !important;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.24);
  font-size: 14px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.01em;
  white-space: nowrap;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38);
  transition:
    transform 0.3s var(--ap-case-ease),
    box-shadow 0.3s var(--ap-case-ease),
    filter 0.3s var(--ap-case-ease);
}

.ap-case-btn::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.24), rgba(255,255,255,0)),
    linear-gradient(135deg, var(--ap-case-orange), var(--ap-case-orange-2));
}

.ap-case-btn::after {
  content: "";
  position: absolute;
  top: -40%;
  left: -55%;
  width: 42%;
  height: 180%;
  transform: rotate(22deg);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.42),
    transparent
  );
  opacity: 0;
  transition: left 0.72s var(--ap-case-ease), opacity 0.28s var(--ap-case-ease);
}

.ap-case-btn:hover,
.ap-case-btn:focus-visible {
  transform: translateY(-2px) scale(1.018);
  filter: saturate(1.08) brightness(1.04);
  color: #ffffff !important;
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.30);
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    0 0 0 1px rgba(255, 165, 92, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.ap-case-btn:hover::after,
.ap-case-btn:focus-visible::after {
  left: 120%;
  opacity: 1;
}

.ap-case-btn-arrow {
  transition: transform 0.28s var(--ap-case-ease);
}

.ap-case-btn:hover .ap-case-btn-arrow,
.ap-case-btn:focus-visible .ap-case-btn-arrow {
  transform: translateX(4px);
}

.ap-case-btn:focus-visible {
  outline: 2px solid var(--ap-case-orange-2);
  outline-offset: 4px;
}

.elementor-widget-html:has(.ap-case-shell),
.elementor-widget-html:has(.ap-case-shell) > .elementor-widget-container,
.elementor-widget-html:has(.ap-case-shell) .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
  background: #050505 !important;
  line-height: 0 !important;
  overflow: visible !important;
}

.e-con:has(.ap-case-shell),
.elementor-column:has(.ap-case-shell),
.elementor-widget-wrap:has(.ap-case-shell) {
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background: #050505 !important;
  overflow: visible !important;
}

@media (max-width: 1120px) {
  .ap-case-grid {
    grid-template-columns: 1fr;
    gap: 56px;
  }

  .ap-case-visual {
    max-width: 820px;
  }

  .ap-case-content {
    max-width: 820px;
  }

  .ap-case-title {
    max-width: 760px;
  }
}

@media (max-width: 768px) {
  .ap-case-inner {
    padding-top: 66px;
    padding-bottom: 92px;
  }

  .ap-case-screen {
    height: 420px;
  }

  .ap-case-title {
    font-size: clamp(34px, 8vw, 48px);
    line-height: 1.08;
    letter-spacing: -0.05em;
  }
}

@media (max-width: 640px) {
  .ap-case-inner {
    padding: 58px 18px 84px;
  }

  .ap-case-grid {
    gap: 46px;
  }

  .ap-case-screen {
    height: 360px;
  }

  .ap-case-browser {
    min-height: 40px;
    padding: 0 13px;
  }

  .ap-case-url {
    font-size: 11px;
  }

  .ap-case-title {
    font-size: clamp(32px, 10vw, 42px);
  }

  .ap-case-block p,
  .ap-case-result p {
    font-size: 15px;
  }

  .ap-case-result {
    padding: 24px;
  }

  .ap-case-btn {
    width: 100%;
    min-height: 52px;
  }
}

@media (max-width: 430px) {
  .ap-case-inner {
    padding-left: 16px;
    padding-right: 16px;
  }

  .ap-case-screen {
    height: 320px;
  }

  .ap-case-eyebrow {
    font-size: 10.5px;
    letter-spacing: 0.15em;
  }

  .ap-case-title {
    font-size: clamp(30px, 11vw, 38px);
    letter-spacing: -0.04em;
  }

  .ap-case-caption {
    font-size: 12.5px;
  }
}

@media (max-width: 360px) {
  .ap-case-inner {
    padding-left: 14px;
    padding-right: 14px;
  }

  .ap-case-screen {
    height: 300px;
  }

  .ap-case-title {
    font-size: 29px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ap-case-shell *,
  .ap-case-shell *::before,
  .ap-case-shell *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* AP CASE - desktop/laptop compact view */

@media (min-width: 1121px) {
  .ap-case-inner {
    padding-top: clamp(54px, 5.4vw, 78px) !important;
    padding-bottom: clamp(56px, 5.6vw, 82px) !important;
  }

  .ap-case-grid {
    grid-template-columns: minmax(0, 0.96fr) minmax(470px, 1.04fr) !important;
    gap: clamp(48px, 5vw, 78px) !important;
    align-items: center !important;
  }

  .ap-case-screen {
    height: clamp(390px, 31vw, 470px) !important;
  }

  .ap-case-title {
    max-width: 640px !important;
    margin-bottom: 26px !important;
    font-size: clamp(44px, 3.55vw, 58px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.055em !important;
  }

  .ap-case-eyebrow {
    margin-bottom: 18px !important;
  }

  .ap-case-block {
    margin-bottom: 22px !important;
  }

  .ap-case-label {
    margin-bottom: 10px !important;
  }

  .ap-case-block p {
    font-size: clamp(15px, 1.05vw, 16.5px) !important;
    line-height: 1.58 !important;
  }

  .ap-case-result {
    margin-top: 26px !important;
    margin-bottom: 26px !important;
    padding: 24px 28px !important;
  }

  .ap-case-result-label {
    margin-bottom: 12px !important;
  }

  .ap-case-result p {
    font-size: clamp(15px, 1.05vw, 16.5px) !important;
    line-height: 1.58 !important;
  }

  .ap-case-btn {
    min-height: 46px !important;
  }

  .ap-case-caption {
    margin-top: 12px !important;
  }
}

@media (min-width: 1121px) and (max-height: 820px) {
  .ap-case-inner {
    padding-top: 48px !important;
    padding-bottom: 54px !important;
  }

  .ap-case-screen {
    height: 390px !important;
  }

  .ap-case-title {
    font-size: clamp(40px, 3.25vw, 52px) !important;
    margin-bottom: 22px !important;
  }

  .ap-case-block {
    margin-bottom: 18px !important;
  }

  .ap-case-block p,
  .ap-case-result p {
    line-height: 1.52 !important;
  }

  .ap-case-result {
    margin-top: 22px !important;
    margin-bottom: 22px !important;
    padding: 22px 26px !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-a8adc93 */.elementor-197 .elementor-element.elementor-element-a8adc93 {
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 > .elementor-container,
.elementor-197 .elementor-element.elementor-element-a8adc93 .elementor-container,
.elementor-197 .elementor-element.elementor-element-a8adc93 > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-a8adc93 .e-con-inner,
.elementor-197 .elementor-element.elementor-element-a8adc93 .elementor-column,
.elementor-197 .elementor-element.elementor-element-a8adc93 .elementor-widget-wrap,
.elementor-197 .elementor-element.elementor-element-a8adc93 .elementor-widget,
.elementor-197 .elementor-element.elementor-element-a8adc93 .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-a8adc93 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process,
.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process *,
.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process *::before,
.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process *::after {
  box-sizing: border-box;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process {
  --ap-black: #050505;
  --ap-card: #0a0a0a;
  --ap-card-strong: #0d0d0d;
  --ap-white: #ffffff;
  --ap-text: rgba(255, 255, 255, 0.78);
  --ap-muted: rgba(255, 255, 255, 0.64);
  --ap-border: rgba(255, 255, 255, 0.10);
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 112px 24px 120px;
  background:
    radial-gradient(circle at 82% 18%, rgba(255, 122, 26, 0.055) 0, transparent 34%),
    linear-gradient(180deg, #050505 0%, #060606 50%, #050505 100%);
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__inner {
  width: 100%;
  max-width: 1210px;
  margin: 0 auto;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__head {
  position: relative;
  max-width: 760px;
  padding-left: 24px;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  bottom: 2px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.38);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ap-orange-2);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__title {
  max-width: 760px;
  margin: 18px 0 0;
  color: var(--ap-white);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.025em;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__lead {
  max-width: 760px;
  margin: 24px 0 0;
  color: var(--ap-text);
  font-size: 19px;
  font-weight: 500;
  line-height: 33px;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  margin-top: 58px;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card {
  position: relative;
  min-height: 205px;
  overflow: hidden;
  padding: 30px;
  border: 1px solid var(--ap-border);
  border-radius: 20px;
  background:
    radial-gradient(circle at 88% 8%, rgba(255, 122, 26, 0.055) 0, transparent 32%),
    var(--ap-card);
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.03);
  transition:
    transform 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 122, 26, 0.36);
  background:
    radial-gradient(circle at 88% 8%, rgba(255, 122, 26, 0.08) 0, transparent 34%),
    #0c0c0c;
  box-shadow:
    0 32px 86px rgba(0, 0, 0, 0.56),
    0 0 38px rgba(255, 122, 26, 0.11),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__glow {
  position: absolute;
  top: -110px;
  right: -120px;
  width: 330px;
  height: 330px;
  pointer-events: none;
  background: radial-gradient(circle, rgba(255, 122, 26, 0.13) 0, rgba(255, 122, 26, 0.045) 34%, transparent 66%);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__number {
  position: relative;
  z-index: 2;
  display: block;
  color: rgba(255, 122, 26, 0.38);
  font-size: 56px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.055em;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card h3 {
  position: relative;
  z-index: 2;
  margin: 20px 0 0;
  color: var(--ap-white);
  font-size: 20px;
  font-weight: 850;
  line-height: 1.25;
  letter-spacing: -0.035em;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card p {
  position: relative;
  z-index: 2;
  margin: 12px 0 0;
  color: var(--ap-muted);
  font-size: 15.5px;
  font-weight: 500;
  line-height: 1.62;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 52px;
  padding: 30px 34px 30px 32px;
  border: 1px solid var(--ap-border);
  border-left: 3px solid var(--ap-orange);
  border-radius: 22px;
  background:
    radial-gradient(circle at 86% 30%, rgba(255, 122, 26, 0.055) 0, transparent 30%),
    var(--ap-card-strong);
  box-shadow:
    0 18px 54px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__cta p {
  max-width: 740px;
  margin: 0;
  color: rgba(255, 255, 255, 0.90);
  font-size: 17px;
  font-weight: 650;
  line-height: 1.55;
  letter-spacing: -0.015em;
}

/* Button spójny z headerem, hero i pakietami */
.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 26px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c);
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.01em;
  white-space: nowrap;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38);
  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    filter 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0)),
    linear-gradient(135deg, #ff7a1a, #ff9a3c);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button::after {
  content: "";
  position: absolute;
  top: -40%;
  left: -55%;
  width: 42%;
  height: 180%;
  transform: rotate(22deg);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.42),
    transparent
  );
  opacity: 0;
  transition:
    left 0.72s var(--ap-ease),
    opacity 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button span {
  position: relative;
  z-index: 2;
  display: inline-block;
  color: #ffffff !important;
  transition: transform 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button:hover,
.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button:focus-visible {
  transform: translateY(-2px) scale(1.018);
  filter: saturate(1.08) brightness(1.04);
  color: #ffffff !important;
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    18px 8px 46px -18px rgba(255, 122, 26, 0.72),
    0 0 0 1px rgba(255, 154, 60, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button:hover::after,
.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button:focus-visible::after {
  left: 120%;
  opacity: 1;
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button:hover span,
.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button:focus-visible span {
  transform: translateX(4px);
}

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button:visited {
  color: #ffffff !important;
}

@media (max-width: 1080px) {
  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process {
    padding: 94px 22px 98px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }
}

@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process {
    padding: 72px 18px 78px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__head {
    padding-left: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__eyebrow {
    font-size: 11px;
    letter-spacing: 0.18em;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__title {
    font-size: 21px;
    line-height: 1.38;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__lead {
    margin-top: 20px;
    font-size: 16px;
    line-height: 28px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__grid {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 42px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card {
    min-height: auto;
    padding: 26px 22px;
    border-radius: 18px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__number {
    font-size: 46px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card h3 {
    font-size: 19px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card p {
    font-size: 15px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__cta {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 42px;
    padding: 26px 22px;
    border-radius: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__cta p {
    font-size: 15.5px;
    line-height: 1.6;
  }

  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button {
    width: 100%;
    min-height: 48px;
    padding: 0 18px;
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__card,
  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button,
  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button::after,
  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-process__button span {
    transition: none !important;
  }
}
/* ============================================================
   WEB+ PROCESS - ANIMACJE WEJŚCIA
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-reveal {
  opacity: 0;
  transform: translateY(22px);
  will-change: transform, opacity;
  animation: ap-webplus-process-enter 0.72s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

@keyframes ap-webplus-process-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-a8adc93 .ap-webplus-reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-de0739c */.elementor-197 .elementor-element.elementor-element-de0739c {
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.elementor-197 .elementor-element.elementor-element-de0739c > .elementor-container,
.elementor-197 .elementor-element.elementor-element-de0739c .elementor-container,
.elementor-197 .elementor-element.elementor-element-de0739c > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-de0739c .e-con-inner,
.elementor-197 .elementor-element.elementor-element-de0739c .elementor-column,
.elementor-197 .elementor-element.elementor-element-de0739c .elementor-widget-wrap,
.elementor-197 .elementor-element.elementor-element-de0739c .elementor-widget,
.elementor-197 .elementor-element.elementor-element-de0739c .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-de0739c .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq,
.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq *,
.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq *::before,
.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq *::after {
  box-sizing: border-box;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq {
  --ap-black: #050505;
  --ap-card: #0a0a0a;
  --ap-card-strong: #0d0d0d;
  --ap-white: #ffffff;
  --ap-text: rgba(255, 255, 255, 0.78);
  --ap-muted: rgba(255, 255, 255, 0.66);
  --ap-border: rgba(255, 255, 255, 0.10);
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 112px 24px 120px;
  background:
    radial-gradient(circle at 82% 18%, rgba(255, 122, 26, 0.045) 0, transparent 34%),
    linear-gradient(180deg, #050505 0%, #060606 50%, #050505 100%);
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__inner {
  width: 100%;
  max-width: 1210px;
  margin: 0 auto;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__head {
  position: relative;
  max-width: 760px;
  padding-left: 24px;
  margin-bottom: 42px;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  bottom: 2px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.38);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ap-orange-2);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__title {
  max-width: 760px;
  margin: 18px 0 0;
  color: var(--ap-white);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: -0.025em;
}

/* FAQ panel */
.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__panel {
  width: 100%;
  max-width: 790px;
  overflow: hidden;
  border: 1px solid var(--ap-border);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(255, 122, 26, 0.045) 0, transparent 32%),
    var(--ap-card);
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__item {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__item:first-child {
  border-top: 0;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 24px 28px;
  color: var(--ap-white);
  cursor: pointer;
  list-style: none;
  font-size: 17px;
  font-weight: 850;
  line-height: 1.4;
  letter-spacing: -0.025em;
  transition: color 0.24s var(--ap-ease), background 0.24s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question::-webkit-details-marker {
  display: none;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question::marker {
  content: "";
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question:hover {
  color: var(--ap-orange-2);
  background: rgba(255, 122, 26, 0.025);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question span:first-child {
  min-width: 0;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__chevron {
  position: relative;
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  transform: rotate(45deg);
  margin-top: -5px;
  border-right: 2px solid rgba(255, 255, 255, 0.48);
  border-bottom: 2px solid rgba(255, 255, 255, 0.48);
  transition:
    transform 0.28s var(--ap-ease),
    border-color 0.28s var(--ap-ease),
    margin 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question:hover .ap-webplus-faq__chevron {
  border-color: var(--ap-orange-2);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__item[open] .ap-webplus-faq__chevron {
  transform: rotate(-135deg);
  margin-top: 4px;
  border-color: var(--ap-orange);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__answer {
  padding: 0 28px 26px;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__answer p {
  max-width: 690px;
  margin: 0;
  color: var(--ap-muted);
  font-size: 15.5px;
  font-weight: 500;
  line-height: 1.72;
  letter-spacing: -0.01em;
}

/* CTA */
.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__cta {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 52px;
  padding: 30px 34px 30px 32px;
  border: 1px solid var(--ap-border);
  border-left: 3px solid var(--ap-orange);
  border-radius: 22px;
  background:
    radial-gradient(circle at 86% 30%, rgba(255, 122, 26, 0.045) 0, transparent 30%),
    var(--ap-card-strong);
  box-shadow:
    0 18px 54px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__cta p {
  max-width: 740px;
  margin: 0;
  color: rgba(255, 255, 255, 0.90);
  font-size: 17px;
  font-weight: 650;
  line-height: 1.55;
  letter-spacing: -0.015em;
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 26px;
  border: 1px solid rgba(255, 122, 26, 0.65);
  border-radius: 999px;
  background: transparent;
  color: var(--ap-orange-2) !important;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.01em;
  white-space: nowrap;
  box-shadow:
    0 0 0 rgba(255, 122, 26, 0),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition:
    transform 0.28s var(--ap-ease),
    background 0.28s var(--ap-ease),
    border-color 0.28s var(--ap-ease),
    box-shadow 0.28s var(--ap-ease),
    color 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__button:hover,
.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__button:focus-visible {
  transform: translateY(-2px);
  background: rgba(255, 122, 26, 0.08);
  border-color: rgba(255, 122, 26, 0.92);
  color: #ffffff !important;
  box-shadow:
    0 16px 34px -16px rgba(255, 122, 26, 0.58),
    0 0 28px -12px rgba(255, 122, 26, 0.66),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__button:visited {
  color: var(--ap-orange-2) !important;
}

/* Responsive */
@media (max-width: 1080px) {
  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq {
    padding: 94px 22px 98px;
  }
}

@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq {
    padding: 72px 18px 78px;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__head {
    padding-left: 20px;
    margin-bottom: 36px;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__eyebrow {
    font-size: 11px;
    letter-spacing: 0.18em;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__title {
    font-size: 21px;
    line-height: 1.38;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__panel {
    border-radius: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question {
    padding: 21px 20px;
    gap: 18px;
    font-size: 15.5px;
    line-height: 1.45;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__answer {
    padding: 0 20px 22px;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__answer p {
    font-size: 15px;
    line-height: 1.68;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__cta {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 42px;
    padding: 26px 22px;
    border-radius: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__cta p {
    font-size: 15.5px;
    line-height: 1.6;
  }

  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__button {
    width: 100%;
    min-height: 48px;
    padding: 0 18px;
    font-size: 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__question,
  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__chevron,
  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-faq__button {
    transition: none !important;
  }
}
/* ============================================================
   WEB+ FAQ - ANIMACJE WEJŚCIA
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-reveal {
  opacity: 0;
  transform: translateY(22px);
  will-change: transform, opacity;
  animation: ap-webplus-faq-enter 0.72s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

@keyframes ap-webplus-faq-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-de0739c .ap-webplus-reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-072e6f6 */.elementor-197 .elementor-element.elementor-element-072e6f6 {
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 > .elementor-container,
.elementor-197 .elementor-element.elementor-element-072e6f6 .elementor-container,
.elementor-197 .elementor-element.elementor-element-072e6f6 > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-072e6f6 .e-con-inner,
.elementor-197 .elementor-element.elementor-element-072e6f6 .elementor-column,
.elementor-197 .elementor-element.elementor-element-072e6f6 .elementor-widget-wrap,
.elementor-197 .elementor-element.elementor-element-072e6f6 .elementor-widget,
.elementor-197 .elementor-element.elementor-element-072e6f6 .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-072e6f6 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta,
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta *,
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta *::before,
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta *::after {
  box-sizing: border-box;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta {
  --ap-black: #050505;
  --ap-white: #ffffff;
  --ap-text: rgba(255, 255, 255, 0.72);
  --ap-border: rgba(255, 255, 255, 0.08);
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 106px 24px 116px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  background:
    radial-gradient(circle at 7% 22%, rgba(255, 122, 26, 0.12) 0, rgba(255, 122, 26, 0.045) 20%, transparent 42%),
    radial-gradient(circle at 92% 88%, rgba(90, 45, 145, 0.10) 0, transparent 34%),
    linear-gradient(180deg, #070707 0%, #050505 100%);
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  color: var(--ap-orange-2);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__title {
  max-width: 780px;
  margin: 24px auto 0;
  color: var(--ap-white);
  font-size: clamp(38px, 4vw, 56px);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.055em;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__lead {
  max-width: 760px;
  margin: 26px auto 0;
  color: var(--ap-text);
  font-size: 19px;
  font-weight: 500;
  line-height: 33px;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__buttons {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 44px;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  border-radius: 999px;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 1;
  letter-spacing: -0.01em;
  white-space: nowrap;
  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    filter 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease);
}

/* Primary */
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary {
  gap: 10px;
  padding: 0 28px;
  border: 0;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c);
  color: #ffffff !important;
  font-weight: 900;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0)),
    linear-gradient(135deg, #ff7a1a, #ff9a3c);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary::after {
  content: "";
  position: absolute;
  top: -40%;
  left: -55%;
  width: 42%;
  height: 180%;
  transform: rotate(22deg);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.42),
    transparent
  );
  opacity: 0;
  transition:
    left 0.72s var(--ap-ease),
    opacity 0.28s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary span {
  display: inline-block;
  color: #ffffff !important;
  transition: transform 0.3s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary:hover,
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary:focus-visible {
  transform: translateY(-2px) scale(1.018);
  filter: saturate(1.08) brightness(1.04);
  color: #ffffff !important;
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    18px 8px 46px -18px rgba(255, 122, 26, 0.72),
    0 0 0 1px rgba(255, 154, 60, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary:hover::after,
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary:focus-visible::after {
  left: 120%;
  opacity: 1;
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary:hover span,
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--primary:focus-visible span {
  transform: translateX(4px);
}

/* Secondary */
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--secondary {
  padding: 0 26px;
  border: 1px solid rgba(255, 122, 26, 0.65);
  background: transparent;
  color: var(--ap-orange-2) !important;
  font-weight: 900;
  box-shadow:
    0 0 0 rgba(255, 122, 26, 0),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--secondary:hover,
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button--secondary:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(255, 122, 26, 0.92);
  background: rgba(255, 122, 26, 0.08);
  color: #ffffff !important;
  box-shadow:
    0 16px 34px -16px rgba(255, 122, 26, 0.58),
    0 0 28px -12px rgba(255, 122, 26, 0.66),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button:visited {
  color: inherit !important;
}

/* Animacje */
.elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-reveal {
  opacity: 0;
  transform: translateY(22px);
  will-change: transform, opacity;
  animation: ap-webplus-final-cta-enter 0.72s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

@keyframes ap-webplus-final-cta-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

/* Responsive */
@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta {
    padding: 74px 18px 84px;
  }

  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__eyebrow {
    font-size: 11px;
    letter-spacing: 0.18em;
  }

  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__title {
    margin-top: 22px;
    font-size: clamp(32px, 9vw, 42px);
    line-height: 1.1;
    letter-spacing: -0.048em;
  }

  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__lead {
    margin-top: 20px;
    font-size: 16px;
    line-height: 28px;
  }

  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__buttons {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    margin-top: 34px;
  }

  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button {
    width: 100%;
    min-height: 52px;
    padding-left: 20px;
    padding-right: 20px;
    white-space: normal;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button,
  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button::after,
  .elementor-197 .elementor-element.elementor-element-072e6f6 .ap-webplus-final-cta__button span {
    transition: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-5d522a6 */.elementor-197 .elementor-element.elementor-element-5d522a6 {
  --ap-black: #050505;
  --ap-card: #0a0a0a;
  --ap-card-strong: #0d0d0d;
  --ap-white: #ffffff;
  --ap-text: rgba(255, 255, 255, 0.78);
  --ap-muted: rgba(255, 255, 255, 0.64);
  --ap-border: rgba(255, 255, 255, 0.10);
  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;
  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  scroll-margin-top: 96px;
  background:
    radial-gradient(circle at 82% 18%, rgba(255, 122, 26, 0.055) 0, transparent 34%),
    linear-gradient(180deg, #050505 0%, #060606 50%, #050505 100%) !important;
  color: var(--ap-white);
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.elementor-197 .elementor-element.elementor-element-5d522a6,
.elementor-197 .elementor-element.elementor-element-5d522a6 *,
.elementor-197 .elementor-element.elementor-element-5d522a6 *::before,
.elementor-197 .elementor-element.elementor-element-5d522a6 *::after {
  box-sizing: border-box;
}

/* TYLKO GŁÓWNY INNER - nie wszystkie wewnętrzne e-con-inner */
.elementor-197 .elementor-element.elementor-element-5d522a6 > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-5d522a6 > .elementor-container {
  width: 100% !important;
  max-width: 1210px !important;
  margin: 0 auto !important;
  padding: 112px 24px 120px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr) !important;
  gap: 72px !important;
  align-items: center !important;
}

/* Bezpieczne ustawienie dwóch kolumn */
.elementor-197 .elementor-element.elementor-element-5d522a6 > .e-con-inner > *,
.elementor-197 .elementor-element.elementor-element-5d522a6 > .elementor-container > * {
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Reset widgetów, ale bez robienia grida w nested containerach */
.elementor-197 .elementor-element.elementor-element-5d522a6 .elementor-column,
.elementor-197 .elementor-element.elementor-element-5d522a6 .elementor-widget-wrap,
.elementor-197 .elementor-element.elementor-element-5d522a6 .elementor-widget,
.elementor-197 .elementor-element.elementor-element-5d522a6 .elementor-widget-html,
.elementor-197 .elementor-element.elementor-element-5d522a6 .elementor-widget-container {
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Jeżeli kolumny są jako kontenery Elementora */
.elementor-197 .elementor-element.elementor-element-5d522a6 > .e-con-inner > .e-con > .e-con-inner,
.elementor-197 .elementor-element.elementor-element-5d522a6 > .e-con-inner > .elementor-element > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

/* LEWA KOLUMNA */

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy {
  width: 100%;
  min-width: 0;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__head {
  position: relative;
  max-width: 620px;
  padding-left: 24px;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  bottom: 2px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--ap-orange), var(--ap-orange-2));
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.38);
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ap-orange-2);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  white-space: nowrap;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 999px;
  background: var(--ap-orange);
  box-shadow: 0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__title {
  max-width: 620px;
  margin: 18px 0 0;
  color: var(--ap-white);
  font-size: clamp(42px, 3.8vw, 58px);
  font-weight: 900;
  line-height: 1.06;
  letter-spacing: -0.058em;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__lead {
  max-width: 560px;
  margin: 28px 0 0;
  color: var(--ap-text);
  font-size: 19px;
  font-weight: 500;
  line-height: 33px;
  letter-spacing: -0.01em;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__note {
  display: flex;
  align-items: center;
  gap: 15px;
  max-width: 500px;
  margin-top: 36px;
  padding: 18px 20px;
  border: 1px solid var(--ap-border);
  border-radius: 16px;
  background:
    radial-gradient(circle at 90% 0%, rgba(255, 122, 26, 0.045) 0, transparent 34%),
    var(--ap-card-strong);
  box-shadow:
    0 18px 54px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__note span {
  flex: 0 0 18px;
  display: inline-flex;
  color: var(--ap-orange);
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__note svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__note p {
  margin: 0;
  color: rgba(255, 255, 255, 0.74);
  font-size: 15px;
  font-weight: 550;
  line-height: 1.45;
}

/* WP FORMS - KARTA */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-container,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 34px !important;
  border: 1px solid var(--ap-border) !important;
  border-radius: 22px !important;
  background:
    radial-gradient(circle at 92% 0%, rgba(255, 122, 26, 0.055) 0, transparent 32%),
    var(--ap-card) !important;
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.44),
    inset 0 1px 0 rgba(255, 255, 255, 0.03) !important;
  overflow: hidden !important;
  opacity: 0;
  transform: translateY(28px) translateX(18px) scale(0.985);
  animation: ap-webplus-contact-enter-right 0.72s var(--ap-ease) forwards;
  animation-delay: .18s;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-container::before,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full::before {
  content: "";
  position: absolute;
  top: -110px;
  right: -120px;
  width: 360px;
  height: 360px;
  pointer-events: none;
  background: radial-gradient(circle, rgba(255, 122, 26, 0.13) 0, rgba(255, 122, 26, 0.045) 34%, transparent 66%);
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-form {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 20px !important;
  row-gap: 20px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Od 5. pola pełna szerokość + tekstarea/url/RODO zawsze full */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field:nth-child(n+5),
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field.ap-form-full,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-textarea,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-url,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-html,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent {
  grid-column: 1 / -1 !important;
}

/* Label pól */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-form .wpforms-field-label {
  display: block !important;
  margin: 0 0 9px !important;
  color: rgba(255, 255, 255, 0.66) !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-required-label {
  color: var(--ap-orange-2) !important;
}

/* INPUTY */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field input,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field select,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field textarea {
  width: 100% !important;
  max-width: none !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 17px !important;
  border: 1px solid rgba(255, 255, 255, 0.095) !important;
  border-radius: 14px !important;
  background: rgba(5, 5, 5, 0.62) !important;
  color: rgba(255, 255, 255, 0.90) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.025),
    0 0 0 rgba(255, 122, 26, 0) !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  outline: none !important;
  transition:
    border-color 0.24s var(--ap-ease),
    background 0.24s var(--ap-ease),
    box-shadow 0.24s var(--ap-ease);
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field textarea {
  min-height: 112px !important;
  padding-top: 15px !important;
  resize: vertical !important;
}

/* Phone field */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-phone .iti,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-phone .iti--allow-dropdown {
  width: 100% !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-phone .iti input {
  padding-left: 56px !important;
}

/* Select */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field select {
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 42px !important;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(255, 255, 255, 0.55) 50%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.55) 50%, transparent 50%) !important;
  background-position:
    calc(100% - 20px) 50%,
    calc(100% - 14px) 50% !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field input::placeholder,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field textarea::placeholder {
  color: rgba(255, 255, 255, 0.36) !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field input:focus,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field select:focus,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field textarea:focus {
  border-color: rgba(255, 122, 26, 0.66) !important;
  background: rgba(8, 8, 8, 0.82) !important;
  box-shadow:
    0 0 0 3px rgba(255, 122, 26, 0.10),
    inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

/* RODO / CHECKBOXY */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent {
  padding: 2px 0 0 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox ul,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox ul,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox li,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox li,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent li {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 11px !important;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.62) !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  cursor: pointer !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox input[type="checkbox"],
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox input[type="checkbox"],
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent input[type="checkbox"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255, 122, 26, 0.55) !important;
  border-radius: 5px !important;
  background: rgba(5, 5, 5, 0.70) !important;
  cursor: pointer !important;
  position: relative !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox input[type="checkbox"]:checked,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox input[type="checkbox"]:checked,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent input[type="checkbox"]:checked {
  background: linear-gradient(135deg, var(--ap-orange), var(--ap-orange-2)) !important;
  border-color: rgba(255, 122, 26, 0.92) !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox input[type="checkbox"]:checked::after,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox input[type="checkbox"]:checked::after,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 2px;
  width: 6px;
  height: 10px;
  border-right: 2px solid #ffffff;
  border-bottom: 2px solid #ffffff;
  transform: rotate(45deg);
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox a,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox a,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent a {
  color: var(--ap-orange-2) !important;
  text-decoration: none !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox a:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox a:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent a:hover {
  color: #ffffff !important;
}

/* Błędy / opisy */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-description,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-limit-text {
  color: rgba(255, 255, 255, 0.44) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-error,
.elementor-197 .elementor-element.elementor-element-5d522a6 label.wpforms-error {
  margin-top: 7px !important;
  color: #ff8f5c !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* SUBMIT */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container {
  width: 100% !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full button[type="submit"] {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c) !important;
  color: #ffffff !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  white-space: normal !important;
  cursor: pointer !important;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    filter 0.3s var(--ap-ease) !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full button[type="submit"]:hover {
  transform: translateY(-2px) scale(1.018) !important;
  filter: saturate(1.08) brightness(1.04) !important;
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    18px 8px 46px -18px rgba(255, 122, 26, 0.72),
    0 0 0 1px rgba(255, 154, 60, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46) !important;
}

/* POTWIERDZENIE */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-confirmation-container-full,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-confirmation-container {
  margin: 0 !important;
  padding: 22px !important;
  border: 1px solid rgba(255, 122, 26, 0.36) !important;
  border-radius: 18px !important;
  background: rgba(255, 122, 26, 0.07) !important;
  color: rgba(255, 255, 255, 0.86) !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
}

/* ANIMACJE */

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-reveal {
  opacity: 0;
  transform: translateY(22px);
  will-change: transform, opacity;
  animation: ap-webplus-contact-enter 0.72s var(--ap-ease) forwards;
  animation-delay: var(--ap-delay, 0s);
}

@keyframes ap-webplus-contact-enter {
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes ap-webplus-contact-enter-right {
  to {
    opacity: 1;
    transform: none;
  }
}

/* RESPONSIVE */

@media (max-width: 1080px) {
  .elementor-197 .elementor-element.elementor-element-5d522a6 > .e-con-inner,
  .elementor-197 .elementor-element.elementor-element-5d522a6 > .elementor-container {
    grid-template-columns: 1fr !important;
    gap: 52px !important;
    padding: 94px 22px 98px !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__title,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__lead {
    max-width: 760px;
  }
}

@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-5d522a6 {
    scroll-margin-top: 84px;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 > .e-con-inner,
  .elementor-197 .elementor-element.elementor-element-5d522a6 > .elementor-container {
    padding: 72px 18px 78px !important;
    gap: 42px !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__head {
    padding-left: 20px;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__eyebrow {
    font-size: 11px;
    letter-spacing: 0.18em;
    white-space: normal;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__title {
    font-size: clamp(36px, 10.8vw, 48px);
    line-height: 1.08;
    letter-spacing: -0.048em;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__lead {
    margin-top: 22px;
    font-size: 16px;
    line-height: 28px;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__note {
    margin-top: 28px;
    padding: 17px 18px;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-container,
  .elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full {
    padding: 24px !important;
    border-radius: 20px !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container {
    grid-template-columns: 1fr !important;
    row-gap: 18px !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field {
    grid-column: 1 / -1 !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-label,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-form .wpforms-field-label {
    font-size: 10.5px !important;
    letter-spacing: 0.18em !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field input,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field select,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field textarea {
    min-height: 48px !important;
    font-size: 14px !important;
  }
}

@media (max-width: 420px) {
  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-contact-copy__title {
    font-size: clamp(32px, 10.2vw, 40px);
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-container,
  .elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full {
    padding: 22px 18px !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button,
  .elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full button[type="submit"] {
    padding: 0 18px !important;
    font-size: 13px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-webplus-reveal,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-container,
  .elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 *,
  .elementor-197 .elementor-element.elementor-element-5d522a6 *::before,
  .elementor-197 .elementor-element.elementor-element-5d522a6 *::after {
    transition: none !important;
  }
}
/* ============================================================
   WEB+ CONTACT - FINAL FORM LAYOUT 1:1 JAK REFERENCJA
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-form {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 20px !important;
  row-gap: 20px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Wyłączamy wszelkie stare layouty WPForms, jeśli jeszcze gdzieś zostały */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-layout,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-layout *,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-layout-row,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-layout-column,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-layout-columns,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-layout-column {
  all: unset !important;
  display: contents !important;
  box-sizing: border-box !important;
}

/* Reset pól */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
}

/* 1 rząd */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-name {
  grid-column: 1 / 2 !important;
  grid-row: 1 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-email {
  grid-column: 2 / 3 !important;
  grid-row: 1 !important;
}

/* 2 rząd */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-phone {
  grid-column: 1 / 2 !important;
  grid-row: 2 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-type {
  grid-column: 2 / 3 !important;
  grid-row: 2 !important;
}

/* Full width */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-link {
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-source {
  grid-column: 1 / -1 !important;
  grid-row: 4 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-problem {
  grid-column: 1 / -1 !important;
  grid-row: 5 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-problem textarea {
  min-height: 120px !important;
}

/* Kiedy + RODO */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-when {
  grid-column: 1 / 2 !important;
  grid-row: 6 !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-checkbox,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-gdpr-checkbox,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-consent {
  grid-column: 1 / -1 !important;
  grid-row: 7 !important;
}

/* Submit obok pola "Kiedy chcesz ruszyć" */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container {
  width: calc((100% - 20px) / 2) !important;
  max-width: none !important;
  margin: -52px 0 0 calc(50% + 10px) !important;
  padding: 0 !important;
}

/* Wyrównanie wysokości selecta i buttona */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-when select,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full button[type="submit"] {
  min-height: 52px !important;
}

/* Telefon */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-phone .iti,
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-phone .iti--allow-dropdown,
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-phone input {
  width: 100% !important;
  max-width: none !important;
}

/* RODO niżej i czytelniej */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo {
  margin-top: 2px !important;
}

.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo label {
  font-size: 12.5px !important;
  line-height: 1.55 !important;
}

/* Mobile */
@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container {
    grid-template-columns: 1fr !important;
    row-gap: 18px !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-name,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-email,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-phone,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-type,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-link,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-source,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-problem,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-when,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-checkbox,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-gdpr-checkbox,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-consent {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container {
    width: 100% !important;
    margin: 18px 0 0 !important;
  }
}
/* ============================================================
   WEB+ CONTACT - RODO + FINAL BUTTON HOVER FIX
   ============================================================ */

/* RODO w lewej kolumnie, bez ucinania tekstu */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-checkbox.ap-field-rodo,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-consent.ap-field-rodo,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-gdpr-checkbox.ap-field-rodo {
  grid-column: 1 / 2 !important;
  grid-row: 7 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* RODO label - tekst zawija się normalnie */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-checkbox.ap-field-rodo label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-consent.ap-field-rodo label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-gdpr-checkbox.ap-field-rodo label {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important;
  column-gap: 11px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(255, 255, 255, 0.66) !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 550 !important;
  line-height: 1.45 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  white-space: normal !important;
  overflow: visible !important;
}

/* Checkbox w RODO */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo input[type="checkbox"] {
  grid-column: 1 !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 1px 0 0 !important;
}

/* Submit obok RODO - prawa kolumna */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container {
  width: calc((100% - 20px) / 2) !important;
  max-width: none !important;
  margin: -52px 0 0 calc(50% + 10px) !important;
  padding: 0 !important;
}

/* Button - usuwa domyślny niebieski hover WPForms */
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"],
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"]:active,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button:focus,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button:active,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit:focus,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit:active {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  width: 100% !important;
  min-height: 52px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c) !important;
  color: #ffffff !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.01em !important;
  box-shadow:
    0 10px 26px rgba(255, 122, 26, 0.20),
    0 18px 44px -20px rgba(255, 122, 26, 0.78),
    inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
  outline: none !important;
}

/* Hover jak na stronie */
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button:hover,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit:hover {
  transform: translateY(-2px) scale(1.018) !important;
  filter: saturate(1.08) brightness(1.04) !important;
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c) !important;
  color: #ffffff !important;
  box-shadow:
    0 14px 34px rgba(255, 122, 26, 0.26),
    0 28px 62px -20px rgba(255, 122, 26, 0.86),
    18px 8px 46px -18px rgba(255, 122, 26, 0.72),
    0 0 0 1px rgba(255, 154, 60, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.46) !important;
}

/* Focus bez niebieskiego */
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container button:focus,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit:focus {
  background: linear-gradient(135deg, #ff7a1a, #ff9a3c) !important;
  color: #ffffff !important;
  box-shadow:
    0 0 0 3px rgba(255, 122, 26, 0.16),
    0 14px 34px rgba(255, 122, 26, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.46) !important;
}

/* WPForms czasem dorzuca pseudo-elementy/overlay - wyłączamy niebieskie */
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit::before,
.elementor-197 .elementor-element.elementor-element-5d522a6 button.wpforms-submit::after,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"]::before,
.elementor-197 .elementor-element.elementor-element-5d522a6 div.wpforms-container-full .wpforms-form button[type="submit"]::after {
  background: transparent !important;
  border: 0 !important;
}

/* Mobile - RODO i button jeden pod drugim */
@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-checkbox.ap-field-rodo,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-consent.ap-field-rodo,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-gdpr-checkbox.ap-field-rodo {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container {
    width: 100% !important;
    margin: 18px 0 0 !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo label,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo label {
    font-size: 11.5px !important;
    line-height: 1.5 !important;
  }
}
/* ============================================================
   WEB+ CONTACT - RODO HARD FIX
   Naprawia pionowe łamanie tekstu RODO
   ============================================================ */

.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-checkbox.ap-field-rodo,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-consent.ap-field-rodo,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-gdpr-checkbox.ap-field-rodo {
  grid-column: 1 / 2 !important;
  grid-row: 7 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Główny label "RODO *" */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo > label.wpforms-field-label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo .wpforms-field-label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 9px !important;
  padding: 0 !important;
  color: rgba(255, 255, 255, 0.66) !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

/* Lista checkboxa */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo ul {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: visible !important;
}

/* Właściwy układ checkbox + tekst */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo ul li,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo ul li {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important;
  column-gap: 11px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

/* Checkbox */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo input[type="checkbox"] {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  flex: none !important;
}

/* Tekst zgody - najważniejszy fix */
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo .wpforms-field-label-inline,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo .wpforms-field-label-inline,
.elementor-197 .elementor-element.elementor-element-5d522a6 .ap-field-rodo ul li label,
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo ul li label {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(255, 255, 255, 0.66) !important;
  font-family: "Montserrat", "Inter", "Segoe UI", system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 550 !important;
  line-height: 1.45 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  overflow: visible !important;
}

/* Submit zostaje po prawej, obok RODO */
.elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container {
  width: calc((100% - 20px) / 2) !important;
  max-width: none !important;
  margin: -52px 0 0 calc(50% + 10px) !important;
  padding: 0 !important;
}

/* Mobile */
@media (max-width: 760px) {
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .ap-field-rodo,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-checkbox.ap-field-rodo,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-consent.ap-field-rodo,
  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-field-container .wpforms-field-gdpr-checkbox.ap-field-rodo {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }

  .elementor-197 .elementor-element.elementor-element-5d522a6 .wpforms-submit-container {
    width: 100% !important;
    margin: 18px 0 0 !important;
  }
}/* End custom CSS */