.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 );}:root{--page-title-display:none;}/* Start custom CSS for section, class: .elementor-element-19dd343 *//* ============================================================
   STRONY INTERNETOWE - HERO
   AP 2026 / FINAL
   Elementor HTML Widget + Section Custom CSS
   ============================================================ */


/* ============================================================
   1. OUTER SECTION SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 > .elementor-container,
.elementor-289 .elementor-element.elementor-element-19dd343 .elementor-container,
.elementor-289 .elementor-element.elementor-element-19dd343 > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-19dd343 .e-con-inner,
.elementor-289 .elementor-element.elementor-element-19dd343 .elementor-column,
.elementor-289 .elementor-element.elementor-element-19dd343 .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-19dd343 .elementor-widget,
.elementor-289 .elementor-element.elementor-element-19dd343 .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-19dd343 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero *,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero *::before,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. HERO SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero {
  --ap-black: #050505;
  --ap-white: #ffffff;

  --ap-text: rgba(255, 255, 255, 0.78);
  --ap-muted: rgba(255, 255, 255, 0.52);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-ease:
    cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;
  min-height: calc(100vh - 84px);

  display: flex;
  align-items: center;

  padding:
    82px 24px
    94px;

  overflow: hidden;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing:
    antialiased;

  background:
    radial-gradient(
      circle at 88% 31%,
      rgba(255, 122, 26, 0.18) 0,
      rgba(255, 122, 26, 0.06) 20%,
      transparent 44%
    ),
    radial-gradient(
      circle at 17% 88%,
      rgba(255, 122, 26, 0.06) 0,
      transparent 30%
    ),
    linear-gradient(
      180deg,
      #080808 0%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT BACKGROUND
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__ambient {
  position: absolute;
  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    radial-gradient(
      circle at 79% 42%,
      rgba(255, 122, 26, 0.075) 0,
      transparent 35%
    ),
    radial-gradient(
      circle at 96% 88%,
      rgba(76, 39, 126, 0.13) 0,
      transparent 33%
    );
}


/* ============================================================
   6. INNER GRID
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1240px;

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    580px;

  align-items: center;

  gap: 58px;
}


/* ============================================================
   7. LEFT CONTENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__content {
  min-width: 0;
}


/* ============================================================
   8. EYEBROW
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 12px;

  margin-bottom: 26px;

  color: var(--ap-orange-2);

  font-size: 12px;
  font-weight: 850;
  line-height: 1;

  letter-spacing: 0.22em;

  text-transform: uppercase;
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__eyebrow span {
  display: block;

  width: 32px;
  height: 2px;

  border-radius: 999px;

  background: var(--ap-orange);

  box-shadow:
    0 0 18px
    rgba(255, 122, 26, 0.55);
}


/* ============================================================
   9. TITLE
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__title {
  max-width: 650px;

  margin: 0;

  color: var(--ap-white);

  font-size:
    clamp(54px, 4.7vw, 76px);

  font-weight: 900;

  line-height: 0.98;

  letter-spacing: -0.062em;
}


/* ============================================================
   10. LEAD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__lead {
  max-width: 610px;

  margin:
    28px 0 0;

  color: var(--ap-text);

  font-size: 19px;
  font-weight: 500;
  line-height: 33px;

  letter-spacing: -0.01em;
}


/* ============================================================
   11. ACTIONS
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;

  gap: 14px;

  margin-top: 36px;
}


/* ============================================================
   12. SHARED BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__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;
  font-weight: 900;
  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),
    color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease);
}


/* ============================================================
   13. PRIMARY CTA
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--primary {
  gap: 10px;

  padding:
    0 28px;

  border: 0;

  background:
    linear-gradient(
      135deg,
      #ff7a1a,
      #ff9a3c
    );

  color:
    #ffffff !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);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__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-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__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-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--primary span {
  display: inline-block;

  color:
    #ffffff !important;

  transition:
    transform
    0.3s
    var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--primary:hover,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__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-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--primary:hover::after,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--primary:focus-visible::after {
  left: 120%;
  opacity: 1;
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--primary:hover span,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--primary:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   14. SECONDARY CTA
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--secondary {
  padding:
    0 26px;

  border:
    1px solid
    rgba(255, 122, 26, 0.65);

  background:
    rgba(255, 122, 26, 0.025);

  color:
    var(--ap-orange-2) !important;

  box-shadow:
    inset 0 1px 0
    rgba(255, 255, 255, 0.035);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button--secondary:hover,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__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);
}


/* ============================================================
   15. RIGHT VISUAL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__visual {
  position: relative;

  width: 580px;
  height: 455px;

  min-width: 0;
}


/* ============================================================
   16. VISUAL GLOW
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__visual-glow {
  position: absolute;

  top: -8%;
  right: -18%;

  width: 540px;
  height: 540px;

  pointer-events: none;

  background:
    radial-gradient(
      circle,
      rgba(255, 122, 26, 0.20) 0,
      rgba(255, 122, 26, 0.06) 30%,
      transparent 68%
    );

  filter:
    blur(10px);
}


/* ============================================================
   17. PROJECT CARDS - SHARED
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project {
  position: absolute;

  display: block;

  margin: 0;

  overflow: hidden;

  border:
    1px solid
    var(--ap-border);

  border-radius: 20px;

  background:
    rgba(8, 8, 8, 0.94);

  color:
    #ffffff !important;

  text-decoration:
    none !important;

  cursor: pointer;

  box-shadow:
    0 34px 90px
      rgba(0, 0, 0, 0.62),
    inset 0 1px 0
      rgba(255, 255, 255, 0.04);

  transition:
    transform 0.42s var(--ap-ease),
    border-color 0.42s var(--ap-ease),
    box-shadow 0.42s var(--ap-ease);
}


/* ============================================================
   18. MAIN PROJECT - JAKUB
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--main {
  top: 18px;
  right: 0;

  z-index: 2;

  width: 540px;
  height: 320px;

  border-radius: 20px;

  box-shadow:
    0 34px 90px
      rgba(0, 0, 0, 0.62),
    0 0 48px -28px
      rgba(255, 122, 26, 0.30),
    inset 0 1px 0
      rgba(255, 255, 255, 0.05);
}


/* ============================================================
   19. SMALL PROJECT - MATEUSZ
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small {
  left: 0;
  bottom: 0;

  z-index: 6;

  width: 325px;
  height: 205px;

  border-radius: 18px;

  background:
    rgba(7, 7, 7, 0.97);

  box-shadow:
    0 30px 76px
      rgba(0, 0, 0, 0.78),
    18px 18px 58px -28px
      rgba(255, 122, 26, 0.40),
    inset 0 1px 0
      rgba(255, 255, 255, 0.045);
}


/* ============================================================
   20. PROJECT HOVER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:hover,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:focus-visible {
  border-color:
    rgba(255, 122, 26, 0.44);

  outline: none;

  box-shadow:
    0 44px 104px
      rgba(0, 0, 0, 0.74),
    0 0 40px -16px
      rgba(255, 122, 26, 0.52),
    inset 0 1px 0
      rgba(255, 255, 255, 0.06);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--main:hover,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--main:focus-visible {
  transform:
    translateY(-5px)
    scale(1.008);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small:hover,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small:focus-visible {
  transform:
    translateY(-5px)
    scale(1.012);
}


/* ============================================================
   21. BROWSER BAR
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__browser {
  position: relative;

  z-index: 5;

  height: 38px;

  display: flex;
  align-items: center;

  padding:
    0 14px;

  border-bottom:
    1px solid
    rgba(255, 255, 255, 0.075);

  background:
    rgba(5, 5, 5, 0.98);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__browser-dots {
  display: flex;
  align-items: center;

  gap: 6px;
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__browser-dots span {
  width: 7px;
  height: 7px;

  border-radius: 999px;

  background:
    rgba(255, 255, 255, 0.18);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__browser-dots span:first-child {
  background:
    var(--ap-orange);

  box-shadow:
    0 0 12px
    rgba(255, 122, 26, 0.44);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__browser-url {
  position: absolute;

  left: 50%;
  top: 50%;

  transform:
    translate(-50%, -50%);

  max-width: 60%;

  overflow: hidden;

  color:
    rgba(255, 255, 255, 0.50);

  font-size: 9px;
  font-weight: 650;

  white-space: nowrap;
  text-overflow: ellipsis;
}


/* ============================================================
   22. SCREEN
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__screen {
  position: absolute;

  top: 38px;
  left: 0;
  right: 0;
  bottom: 0;

  overflow: hidden;

  background:
    #050505;
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__screen img {
  position: absolute;

  inset: 0;

  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center top;

  transform: none;

  filter:
    saturate(0.96)
    contrast(1.02)
    brightness(0.92);

  transition:
    transform 0.58s var(--ap-ease),
    filter 0.58s var(--ap-ease);
}


/* Mateusz */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small
.ap-services-hero__screen img {
  filter:
    saturate(0.96)
    contrast(1.02)
    brightness(0.94);
}


/* Hover image */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:hover
.ap-services-hero__screen img,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:focus-visible
.ap-services-hero__screen img {
  transform:
    scale(1.018);

  filter:
    saturate(1)
    contrast(1.02)
    brightness(0.99);
}


/* ============================================================
   23. PROJECT OVERLAY
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project-overlay {
  position: absolute;

  inset:
    38px 0 0;

  z-index: 3;

  pointer-events: none;

  background:
    linear-gradient(
      180deg,
      rgba(5, 5, 5, 0.015) 0%,
      rgba(5, 5, 5, 0.045) 48%,
      rgba(5, 5, 5, 0.36) 100%
    );
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small
.ap-services-hero__project-overlay {
  background:
    linear-gradient(
      180deg,
      rgba(5, 5, 5, 0.01) 0%,
      rgba(5, 5, 5, 0.05) 52%,
      rgba(5, 5, 5, 0.42) 100%
    );
}


/* ============================================================
   24. PROJECT LABEL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project-label {
  position: absolute;

  left: 14px;
  bottom: 13px;

  z-index: 8;

  max-width:
    calc(100% - 72px);

  padding:
    6px 11px;

  overflow: hidden;

  border:
    1px solid
    rgba(255, 255, 255, 0.11);

  border-radius:
    999px;

  background:
    rgba(5, 5, 5, 0.76);

  -webkit-backdrop-filter:
    blur(10px);

  backdrop-filter:
    blur(10px);

  color:
    rgba(255, 255, 255, 0.78);

  font-size: 10px;
  font-weight: 700;

  letter-spacing:
    0.035em;

  white-space: nowrap;
  text-overflow: ellipsis;

  transition:
    border-color 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease);
}


/* ============================================================
   25. OPEN ICON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project-open {
  position: absolute;

  right: 14px;
  bottom: 13px;

  z-index: 9;

  width: 31px;
  height: 31px;

  display: flex;
  align-items: center;
  justify-content: center;

  border:
    1px solid
    rgba(255, 255, 255, 0.11);

  border-radius:
    999px;

  background:
    rgba(5, 5, 5, 0.76);

  -webkit-backdrop-filter:
    blur(10px);

  backdrop-filter:
    blur(10px);

  color:
    rgba(255, 255, 255, 0.72);

  font-size: 14px;
  font-weight: 800;

  transition:
    transform 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease);
}


/* Hover feedback */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:hover
.ap-services-hero__project-label,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:focus-visible
.ap-services-hero__project-label {
  border-color:
    rgba(255, 122, 26, 0.36);

  color:
    #ffffff;

  background:
    rgba(10, 7, 5, 0.84);
}

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:hover
.ap-services-hero__project-open,
.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:focus-visible
.ap-services-hero__project-open {
  transform:
    translate(2px, -2px);

  color:
    #ffffff;

  border-color:
    rgba(255, 122, 26, 0.62);

  background:
    rgba(255, 122, 26, 0.16);

  box-shadow:
    0 8px 24px
    rgba(255, 122, 26, 0.18);
}


/* ============================================================
   26. VISITED LINKS
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project:visited {
  color:
    #ffffff !important;
}


/* ============================================================
   27. RESPONSIVE - LAPTOP
   ============================================================ */

@media (max-width: 1180px) {

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__inner {
    grid-template-columns:
      minmax(0, 1fr)
      520px;

    gap: 46px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__visual {
    width: 520px;
    height: 430px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--main {
    width: 490px;
    height: 300px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small {
    width: 300px;
    height: 190px;
  }

}


/* ============================================================
   28. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero {
    min-height: auto;

    padding:
      84px 22px
      104px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__inner {
    grid-template-columns:
      1fr;

    gap: 66px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__title,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__lead {
    max-width:
      760px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__visual {
    width: 100%;
    max-width: 650px;

    height: 470px;

    margin:
      0 auto;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--main {
    right: 0;

    width:
      min(540px, 90%);

    height: 320px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small {
    left: 0;

    width: 325px;
    height: 205px;
  }

}


/* ============================================================
   29. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 640px) {

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero {
    padding:
      66px 18px
      92px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__inner {
    gap: 48px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__eyebrow {
    margin-bottom:
      22px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__title {
    font-size:
      clamp(40px, 12vw, 56px);

    line-height:
      1;

    letter-spacing:
      -0.058em;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__lead {
    margin-top:
      22px;

    font-size:
      16px;

    line-height:
      28px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__actions {
    flex-direction:
      column;

    align-items:
      stretch;

    gap:
      12px;

    margin-top:
      30px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button {
    width: 100%;

    min-height:
      50px;

    padding-left:
      18px;

    padding-right:
      18px;

    text-align:
      center;

    white-space:
      normal;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__visual {
    height:
      365px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--main {
    top: 0;

    width:
      100%;

    height:
      245px;

    border-radius:
      17px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small {
    left:
      50%;

    bottom:
      0;

    width:
      min(300px, 88%);

    height:
      175px;

    transform:
      translateX(-50%);
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small:hover,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small:focus-visible {
    transform:
      translateX(-50%)
      translateY(-4px)
      scale(1.008);
  }

}


/* ============================================================
   30. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__title {
    font-size:
      clamp(36px, 11.6vw, 48px);
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__visual {
    height:
      340px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--main {
    height:
      220px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project--small {
    width:
      min(280px, 90%);

    height:
      160px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project-label {
    left:
      10px;

    bottom:
      10px;

    max-width:
      calc(100% - 58px);

    font-size:
      9px;
  }

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project-open {
    right:
      10px;

    bottom:
      10px;

    width:
      28px;

    height:
      28px;
  }

}


/* ============================================================
   31. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__screen img,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project-label,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__project-open,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button::after,
  .elementor-289 .elementor-element.elementor-element-19dd343 .ap-services-hero__button span {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-d46e549 *//* ============================================================
   STRONY INTERNETOWE - DLA KOGO
   Elementor section class: ap-services-audience-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-d46e549
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 {
  width: 100vw !important;
  max-width: none !important;

  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;

  padding: 0 !important;

  overflow: hidden !important;

  background: #090909 !important;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 > .elementor-container,
.elementor-289 .elementor-element.elementor-element-d46e549 .elementor-container,
.elementor-289 .elementor-element.elementor-element-d46e549 > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-d46e549 .e-con-inner,
.elementor-289 .elementor-element.elementor-element-d46e549 .elementor-column,
.elementor-289 .elementor-element.elementor-element-d46e549 .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-d46e549 .elementor-widget,
.elementor-289 .elementor-element.elementor-element-d46e549 .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-d46e549 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience,
.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience *,
.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience *::before,
.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience {
  --ap-black: #050505;
  --ap-bg: #090909;
  --ap-card: #111111;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.76);
  --ap-muted: rgba(255, 255, 255, 0.58);
  --ap-soft: rgba(255, 255, 255, 0.42);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 104px 24px 112px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 13% 8%,
      rgba(255, 122, 26, 0.07) 0,
      transparent 30%
    ),
    radial-gradient(
      circle at 92% 88%,
      rgba(76, 39, 126, 0.11) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #090909 0%,
      #070707 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size: 56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 30%,
      rgba(0, 0, 0, 0.42),
      transparent 62%
    );

  mask-image:
    radial-gradient(
      circle at 50% 30%,
      rgba(0, 0, 0, 0.42),
      transparent 62%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;
}


/* ============================================================
   7. HEADER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__head {
  max-width: 790px;

  margin: 0 0 56px;

  padding-left: 22px;

  border-left:
    2px solid rgba(255, 122, 26, 0.72);
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__label {
  display: block;

  margin-bottom: 22px;

  color: var(--ap-orange-2);

  font-size: 12px;
  font-weight: 850;
  line-height: 1;

  letter-spacing: 0.22em;

  text-transform: uppercase;
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__title {
  max-width: 760px;

  margin: 0;

  color: #ffffff;

  font-size:
    clamp(34px, 3.2vw, 52px);

  font-weight: 900;
  line-height: 1.04;

  letter-spacing:
    -0.052em;

  text-wrap:
    balance;
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__lead {
  max-width: 770px;

  margin:
    26px 0 0;

  color:
    var(--ap-text);

  font-size:
    19px;

  font-weight:
    500;

  line-height:
    33px;

  letter-spacing:
    -0.01em;
}


/* ============================================================
   8. GRID
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    24px;
}


/* ============================================================
   9. CARD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card {
  position: relative;

  isolation: isolate;

  overflow: hidden;

  display: flex;
  flex-direction: column;

  min-height: 245px;

  padding:
    34px 32px
    28px;

  border:
    1px solid var(--ap-border);

  border-radius:
    22px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    );

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);

  transition:
    transform 0.35s var(--ap-ease),
    border-color 0.35s var(--ap-ease),
    box-shadow 0.35s var(--ap-ease),
    background 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card::before {
  content: "";

  position: absolute;

  inset: 0;

  z-index: -1;

  opacity: 0;

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 122, 26, 0.12),
      transparent 44%
    );

  transition:
    opacity 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card::after {
  content: "";

  display: block;

  margin-top: auto;
  padding-top: 26px;

  border-bottom:
    1px solid rgba(255, 255, 255, 0.07);

  transition:
    border-color 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card:hover {
  transform:
    translateY(-5px);

  border-color:
    rgba(255, 122, 26, 0.45);

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.064),
      rgba(255, 255, 255, 0.020)
    );

  box-shadow:
    0 30px 78px rgba(0, 0, 0, 0.48),
    0 18px 44px -22px rgba(255, 122, 26, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card:hover::before {
  opacity: 1;
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card:hover::after {
  border-color:
    rgba(255, 122, 26, 0.55);
}


/* ============================================================
   10. CARD TYPOGRAPHY
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-label {
  display: block;

  margin-bottom:
    22px;

  color:
    var(--ap-orange-2);

  font-size:
    11px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.24em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-title {
  margin:
    0 0 18px;

  color:
    #ffffff;

  font-size:
    clamp(24px, 1.75vw, 28px);

  font-weight:
    900;

  line-height:
    1.13;

  letter-spacing:
    -0.04em;

  text-wrap:
    balance;

  hyphens:
    none;
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-text {
  margin:
    0;

  color:
    var(--ap-muted);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.72;

  letter-spacing:
    -0.01em;
}


/* ============================================================
   11. CTA BAR
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__cta {
  position: relative;

  overflow: hidden;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap:
    28px;

  margin-top:
    56px;

  padding:
    26px 30px;

  border:
    1px solid var(--ap-border);

  border-left:
    2px solid rgba(255, 122, 26, 0.72);

  border-radius:
    20px;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    );

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34);
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__cta::before {
  content: "";

  position: absolute;

  inset: 0;

  pointer-events: none;

  background:
    radial-gradient(
      circle at 12% 50%,
      rgba(255, 122, 26, 0.10),
      transparent 34%
    );
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__cta p {
  position: relative;

  z-index: 2;

  max-width:
    62ch;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    18px;

  font-weight:
    750;

  line-height:
    1.55;

  letter-spacing:
    -0.02em;
}


/* ============================================================
   12. CTA BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button {
  position: relative;

  z-index: 2;

  isolation: isolate;

  overflow: hidden;

  flex: 0 0 auto;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap:
    10px;

  min-height:
    50px;

  padding:
    0 26px;

  border-radius:
    999px;

  background:
    linear-gradient(
      135deg,
      #ff7a1a,
      #ff9a3c
    );

  color:
    #160a02 !important;

  font-size:
    14px;

  font-weight:
    900;

  line-height:
    1;

  text-decoration:
    none !important;

  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-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__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-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__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-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button span {
  display: inline-block;

  color:
    #160a02 !important;

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button:hover,
.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__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-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button:hover::after,
.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button:focus-visible::after {
  left:
    120%;

  opacity:
    1;
}

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button:hover span,
.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   13. ACCESSIBILITY
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience a:focus-visible {
  outline:
    2px solid #ff9a3c;

  outline-offset:
    3px;
}


/* ============================================================
   14. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__title {
    font-size:
      clamp(32px, 5vw, 46px);
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-title {
    font-size:
      25px;
  }
}


/* ============================================================
   15. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__head {
    margin-bottom:
      38px;

    padding-left:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__label {
    margin-bottom:
      18px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__title {
    font-size:
      clamp(30px, 8.8vw, 42px);

    line-height:
      1.03;

    letter-spacing:
      -0.045em;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__lead {
    margin-top:
      22px;

    font-size:
      16px;

    line-height:
      28px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__grid {
    grid-template-columns:
      1fr;

    gap:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card {
    min-height:
      auto;

    padding:
      30px 24px
      26px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-label {
    margin-bottom:
      18px;

    font-size:
      10px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-title {
    font-size:
      26px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-text {
    font-size:
      15px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__cta {
    flex-direction:
      column;

    align-items:
      flex-start;

    margin-top:
      38px;

    padding:
      24px 20px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__cta p {
    font-size:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button {
    width:
      100%;

    min-height:
      50px;
  }
}


/* ============================================================
   16. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card {
    padding:
      28px 20px
      24px;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card-title {
    font-size:
      24px;
  }
}


/* ============================================================
   17. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card,
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card::before,
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card::after,
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button,
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button::after,
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__card:hover,
  .elementor-289 .elementor-element.elementor-element-d46e549 .ap-services-audience__button:hover {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-f23d9f9 *//* ============================================================
   STRONY INTERNETOWE - ZASADY
   Elementor section class: ap-services-rules-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-f23d9f9
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 > .elementor-container,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .elementor-container,
.elementor-289 .elementor-element.elementor-element-f23d9f9 > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .e-con-inner,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .elementor-column,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .elementor-widget,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules *,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules *::before,
.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules {
  --ap-black: #050505;
  --ap-bg: #070707;
  --ap-card: #111111;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.76);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 104px 24px 112px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 12% 0%,
      rgba(255, 122, 26, 0.075) 0,
      transparent 32%
    ),
    radial-gradient(
      circle at 88% 92%,
      rgba(76, 39, 126, 0.10) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #050505 0%,
      #080808 52%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 28%,
      rgba(0, 0, 0, 0.38),
      transparent 62%
    );

  mask-image:
    radial-gradient(
      circle at 50% 28%,
      rgba(0, 0, 0, 0.38),
      transparent 62%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;
}


/* ============================================================
   7. HEADER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__head {
  position: relative;

  max-width: 820px;

  margin: 0 0 56px;

  padding-left: 22px;

  border-left:
    2px solid rgba(255, 122, 26, 0.72);
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__label {
  display: block;

  margin-bottom: 20px;

  color: var(--ap-orange-2);

  font-size: 12px;
  font-weight: 850;
  line-height: 1;

  letter-spacing: 0.22em;

  text-transform: uppercase;
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__title {
  max-width: 760px;

  margin: 0;

  color: #ffffff;

  font-size:
    clamp(34px, 3.2vw, 52px) !important;

  font-weight: 900 !important;
  line-height: 1.04 !important;

  letter-spacing:
    -0.052em;

  text-wrap:
    balance;
}


/* ============================================================
   8. GRID
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    24px;

  align-items:
    stretch;
}


/* ============================================================
   9. CARD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card {
  position: relative;

  isolation: isolate;

  overflow: hidden;

  display: flex;
  flex-direction: column;

  min-height: 235px;

  padding:
    34px 32px
    28px;

  border:
    1px solid var(--ap-border);

  border-radius:
    22px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    ),
    var(--ap-card);

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);

  transition:
    transform 0.35s var(--ap-ease),
    border-color 0.35s var(--ap-ease),
    box-shadow 0.35s var(--ap-ease),
    background 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card::before {
  content: "";

  position: absolute;

  inset: 0;

  z-index: -1;

  opacity: 0;

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 122, 26, 0.13),
      transparent 44%
    );

  transition:
    opacity 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card::after {
  content: "";

  display: block;

  margin-top: auto;
  padding-top: 26px;

  border-bottom:
    1px solid rgba(255, 255, 255, 0.07);

  transition:
    border-color 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card:hover {
  transform:
    translateY(-5px);

  border-color:
    rgba(255, 122, 26, 0.45);

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.064),
      rgba(255, 255, 255, 0.020)
    ),
    var(--ap-card);

  box-shadow:
    0 30px 78px rgba(0, 0, 0, 0.48),
    0 18px 44px -22px rgba(255, 122, 26, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card:hover::before {
  opacity:
    1;
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card:hover::after {
  border-color:
    rgba(255, 122, 26, 0.55);
}


/* ============================================================
   10. NUMBER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__num {
  display: block;

  margin-bottom:
    24px;

  color:
    var(--ap-orange);

  font-size:
    clamp(40px, 3.4vw, 52px);

  font-weight:
    900;

  line-height:
    0.92;

  letter-spacing:
    -0.04em;

  background:
    linear-gradient(
      135deg,
      #ff7a1a 0%,
      #ff9a3c 100%
    );

  -webkit-background-clip:
    text;

  background-clip:
    text;

  -webkit-text-fill-color:
    transparent;
}


/* ============================================================
   11. CARD TYPOGRAPHY
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card-title {
  margin:
    0 0 14px;

  color:
    #ffffff;

  font-size:
    clamp(20px, 1.5vw, 24px) !important;

  font-weight:
    900 !important;

  line-height:
    1.18 !important;

  letter-spacing:
    -0.035em;

  text-wrap:
    balance;
}

.elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card-text {
  margin:
    0;

  color:
    var(--ap-muted);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.70;

  letter-spacing:
    -0.01em;

  text-wrap:
    pretty;
}


/* ============================================================
   12. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__title {
    font-size:
      clamp(32px, 5vw, 46px) !important;
  }
}


/* ============================================================
   13. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__head {
    margin-bottom:
      38px;

    padding-left:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__label {
    margin-bottom:
      18px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__title {
    font-size:
      clamp(30px, 8.8vw, 42px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -0.045em;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__grid {
    grid-template-columns:
      1fr;

    gap:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card {
    min-height:
      auto;

    padding:
      30px 24px
      26px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__num {
    margin-bottom:
      20px;

    font-size:
      40px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card-title {
    font-size:
      23px !important;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card-text {
    font-size:
      15px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card::after {
    padding-top:
      22px;
  }
}


/* ============================================================
   14. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card {
    padding:
      28px 20px
      24px;

    border-radius:
      20px;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card-title {
    font-size:
      21px !important;
  }
}


/* ============================================================
   15. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card,
  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card::before,
  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card::after {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-f23d9f9 .ap-services-rules__card:hover {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-008e5d5 *//* ============================================================
   STRONY INTERNETOWE - SPOSÓB PRACY
   Elementor section class: ap-services-method-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-008e5d5
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 > .elementor-container,
.elementor-289 .elementor-element.elementor-element-008e5d5 .elementor-container,
.elementor-289 .elementor-element.elementor-element-008e5d5 > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-008e5d5 .e-con-inner,
.elementor-289 .elementor-element.elementor-element-008e5d5 .elementor-column,
.elementor-289 .elementor-element.elementor-element-008e5d5 .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-008e5d5 .elementor-widget,
.elementor-289 .elementor-element.elementor-element-008e5d5 .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-008e5d5 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method,
.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method *,
.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method *::before,
.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method {
  --ap-black: #050505;
  --ap-bg: #080808;
  --ap-card: #111111;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.76);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 112px 24px 118px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 78% 18%,
      rgba(255, 122, 26, 0.070) 0,
      transparent 34%
    ),
    radial-gradient(
      circle at 12% 88%,
      rgba(76, 39, 126, 0.10) 0,
      transparent 32%
    ),
    linear-gradient(
      180deg,
      #050505 0%,
      #090909 50%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 40%,
      rgba(0, 0, 0, 0.36),
      transparent 66%
    );

  mask-image:
    radial-gradient(
      circle at 50% 40%,
      rgba(0, 0, 0, 0.36),
      transparent 66%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 0.95fr)
    minmax(0, 1.05fr);

  align-items: center;

  gap: 80px;
}


/* ============================================================
   7. LEFT COPY
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__copy {
  position: relative;

  max-width: 585px;

  padding-left:
    22px;

  border-left:
    2px solid rgba(255, 122, 26, 0.72);
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__label {
  display: block;

  margin-bottom:
    20px;

  color:
    var(--ap-orange-2);

  font-size:
    12px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.22em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__title {
  max-width:
    560px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    clamp(34px, 3.1vw, 50px) !important;

  font-weight:
    900 !important;

  line-height:
    1.04 !important;

  letter-spacing:
    -0.052em;

  text-wrap:
    balance;
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__lead {
  max-width:
    560px;

  margin:
    26px 0 0;

  color:
    var(--ap-text);

  font-size:
    19px;

  font-weight:
    500;

  line-height:
    33px;

  letter-spacing:
    -0.01em;

  text-wrap:
    pretty;
}


/* ============================================================
   8. RIGHT CARD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__visual {
  min-width:
    0;
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card {
  position: relative;

  isolation: isolate;

  overflow: hidden;

  width: 100%;

  padding:
    42px 44px;

  border:
    1px solid var(--ap-border);

  border-radius:
    24px;

  background:
    radial-gradient(
      circle at 12% 0%,
      rgba(255, 122, 26, 0.080),
      transparent 42%
    ),
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    ),
    var(--ap-card);

  box-shadow:
    0 28px 78px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);

  transition:
    transform 0.35s var(--ap-ease),
    border-color 0.35s var(--ap-ease),
    box-shadow 0.35s var(--ap-ease),
    background 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card::before {
  content: "";

  position: absolute;

  inset: 0;

  z-index: -1;

  opacity: 0;

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 122, 26, 0.14),
      transparent 46%
    );

  transition:
    opacity 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card:hover {
  transform:
    translateY(-5px);

  border-color:
    rgba(255, 122, 26, 0.42);

  box-shadow:
    0 34px 86px rgba(0, 0, 0, 0.54),
    0 18px 48px -24px rgba(255, 122, 26, 0.50),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card:hover::before {
  opacity:
    1;
}


/* ============================================================
   9. LIST
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__list {
  display: flex;
  flex-direction: column;

  gap:
    0;

  margin:
    0;

  padding:
    0;

  list-style:
    none;
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item {
  position: relative;

  display: grid;

  grid-template-columns:
    10px minmax(0, 1fr);

  gap:
    18px;

  align-items:
    flex-start;

  padding:
    0 0 24px;

  margin:
    0;
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item + .ap-services-method__item {
  padding-top:
    24px;

  border-top:
    1px solid rgba(255, 255, 255, 0.065);
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item:last-child {
  padding-bottom:
    0;
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item span {
  display: block;

  width:
    7px;

  height:
    7px;

  margin-top:
    9px;

  border-radius:
    999px;

  background:
    linear-gradient(
      135deg,
      #ff7a1a,
      #ff9a3c
    );

  box-shadow:
    0 0 0 5px rgba(255, 122, 26, 0.10);

  transition:
    box-shadow 0.35s var(--ap-ease),
    transform 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item p {
  margin:
    0;

  color:
    rgba(255, 255, 255, 0.90);

  font-size:
    17px;

  font-weight:
    750;

  line-height:
    1.58;

  letter-spacing:
    -0.012em;

  text-wrap:
    pretty;
}

.elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card:hover
.ap-services-method__item span {
  box-shadow:
    0 0 0 6px rgba(255, 122, 26, 0.16);

  transform:
    scale(1.06);
}


/* ============================================================
   10. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__inner {
    grid-template-columns:
      1fr;

    gap:
      48px;

    align-items:
      start;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__copy {
    max-width:
      690px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__title,
  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__lead {
    max-width:
      690px;
  }
}


/* ============================================================
   11. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__copy {
    padding-left:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__label {
    margin-bottom:
      18px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__title {
    font-size:
      clamp(30px, 8.8vw, 42px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -0.045em;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__lead {
    margin-top:
      22px;

    font-size:
      16px;

    line-height:
      28px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card {
    padding:
      30px 24px;

    border-radius:
      22px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item {
    grid-template-columns:
      8px minmax(0, 1fr);

    gap:
      15px;

    padding-bottom:
      22px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item + .ap-services-method__item {
    padding-top:
      22px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item span {
    width:
      7px;

    height:
      7px;

    margin-top:
      8px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item p {
    font-size:
      16px;

    line-height:
      1.62;
  }
}


/* ============================================================
   12. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card {
    padding:
      28px 20px;

    border-radius:
      20px;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item p {
    font-size:
      15px;
  }
}


/* ============================================================
   13. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card,
  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card::before,
  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__item span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-008e5d5 .ap-services-method__card:hover {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-e9ffcfb *//* ============================================================
   STRONY INTERNETOWE - CASE JAKUB WILK
   Elementor section class: ap-services-case-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-e9ffcfb
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb > .elementor-container,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .elementor-container,
.elementor-289 .elementor-element.elementor-element-e9ffcfb > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .e-con-inner,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .elementor-column,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .elementor-widget,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case *,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case *::before,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case {
  --ap-black: #050505;
  --ap-bg: #080808;
  --ap-card: #111111;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.76);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 112px 24px 118px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 21% 34%,
      rgba(255, 122, 26, 0.080) 0,
      transparent 34%
    ),
    radial-gradient(
      circle at 90% 86%,
      rgba(76, 39, 126, 0.11) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #050505 0%,
      #090909 52%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 48% 45%,
      rgba(0, 0, 0, 0.38),
      transparent 66%
    );

  mask-image:
    radial-gradient(
      circle at 48% 45%,
      rgba(0, 0, 0, 0.38),
      transparent 66%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 1.04fr)
    minmax(0, 0.96fr);

  align-items: center;

  gap: 72px;
}


/* ============================================================
   7. VISUAL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__visual {
  position: relative;

  min-width: 0;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__visual::before {
  content: "";

  position: absolute;

  inset:
    -16% -12% -18% -14%;

  z-index: 0;

  pointer-events:
    none;

  background:
    radial-gradient(
      circle at 50% 50%,
      rgba(255, 122, 26, 0.17),
      transparent 68%
    );

  filter:
    blur(14px);
}


/* ============================================================
   8. MOCKUP
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup {
  position: relative;

  z-index: 2;

  display: block;

  overflow: hidden;

  width: 100%;

  border:
    1px solid var(--ap-border);

  border-radius:
    22px;

  background:
    rgba(8, 8, 8, 0.96);

  color:
    #ffffff !important;

  text-decoration:
    none !important;

  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.58),
    0 0 48px -28px rgba(255, 122, 26, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);

  transition:
    transform 0.42s var(--ap-ease),
    border-color 0.42s var(--ap-ease),
    box-shadow 0.42s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:hover,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:focus-visible {
  transform:
    translateY(-5px);

  border-color:
    rgba(255, 122, 26, 0.44);

  outline:
    none;

  box-shadow:
    0 44px 104px rgba(0, 0, 0, 0.72),
    0 0 42px -18px rgba(255, 122, 26, 0.52),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
}


/* ============================================================
   9. BROWSER BAR
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__browser {
  position: relative;

  z-index: 5;

  height: 38px;

  display: flex;
  align-items: center;

  gap: 12px;

  padding:
    0 14px;

  border-bottom:
    1px solid rgba(255, 255, 255, 0.075);

  background:
    rgba(5, 5, 5, 0.98);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__dots {
  display: flex;
  align-items: center;

  gap:
    6px;

  flex:
    0 0 auto;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__dots span {
  width:
    7px;

  height:
    7px;

  border-radius:
    999px;

  background:
    rgba(255, 255, 255, 0.18);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__dots span:first-child {
  background:
    var(--ap-orange);

  box-shadow:
    0 0 12px rgba(255, 122, 26, 0.44);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__url {
  flex:
    1 1 auto;

  min-width:
    0;

  overflow:
    hidden;

  color:
    rgba(255, 255, 255, 0.50);

  font-size:
    10px;

  font-weight:
    700;

  text-align:
    center;

  white-space:
    nowrap;

  text-overflow:
    ellipsis;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__open {
  flex:
    0 0 auto;

  width:
    28px;

  height:
    28px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  border:
    1px solid rgba(255, 255, 255, 0.10);

  border-radius:
    999px;

  background:
    rgba(255, 255, 255, 0.035);

  color:
    rgba(255, 255, 255, 0.60);

  font-size:
    13px;

  font-weight:
    900;

  transition:
    transform 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:hover .ap-services-case__open,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:focus-visible .ap-services-case__open {
  transform:
    translate(2px, -2px);

  color:
    #ffffff;

  border-color:
    rgba(255, 122, 26, 0.56);

  background:
    rgba(255, 122, 26, 0.14);
}


/* ============================================================
   10. SHOT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__shot {
  position: relative;

  overflow: hidden;

  aspect-ratio:
    16 / 10;

  background:
    #060606;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__shot img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit:
    cover;

  object-position:
    top center;

  filter:
    saturate(1.02)
    contrast(1.03)
    brightness(1.02);

  transition:
    transform 0.58s var(--ap-ease),
    filter 0.58s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__shot::after {
  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height:
    42%;

  pointer-events:
    none;

  background:
    linear-gradient(
      180deg,
      transparent 0%,
      rgba(5, 5, 5, 0.72) 100%
    );
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:hover .ap-services-case__shot img,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:focus-visible .ap-services-case__shot img {
  transform:
    scale(1.025);

  filter:
    saturate(1.05)
    contrast(1.04)
    brightness(1.06);
}


/* ============================================================
   11. BADGE
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__badge {
  position: absolute;

  left:
    16px;

  bottom:
    16px;

  z-index:
    4;

  max-width:
    calc(100% - 32px);

  padding:
    8px 14px;

  overflow:
    hidden;

  border:
    1px solid rgba(255, 255, 255, 0.12);

  border-radius:
    999px;

  background:
    rgba(8, 8, 8, 0.72);

  -webkit-backdrop-filter:
    blur(10px);

  backdrop-filter:
    blur(10px);

  color:
    rgba(255, 255, 255, 0.84);

  font-size:
    10px;

  font-weight:
    800;

  line-height:
    1;

  letter-spacing:
    0.14em;

  text-transform:
    uppercase;

  white-space:
    nowrap;

  text-overflow:
    ellipsis;
}


/* ============================================================
   12. CONTENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__content {
  min-width:
    0;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__eyebrow {
  display:
    inline-flex;

  align-items:
    center;

  gap:
    12px;

  margin-bottom:
    22px;

  color:
    var(--ap-orange-2);

  font-size:
    12px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.22em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__eyebrow span {
  display:
    block;

  width:
    32px;

  height:
    2px;

  border-radius:
    999px;

  background:
    var(--ap-orange);

  box-shadow:
    0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__title {
  max-width:
    620px;

  margin:
    0 0 36px;

  color:
    #ffffff;

  font-size:
    clamp(36px, 3.35vw, 56px) !important;

  font-weight:
    900 !important;

  line-height:
    1.02 !important;

  letter-spacing:
    -0.058em;

  text-wrap:
    balance;
}


/* ============================================================
   13. TEXT BLOCKS
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__block {
  max-width:
    620px;

  margin-bottom:
    28px;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mini {
  display:
    block;

  margin-bottom:
    10px;

  color:
    rgba(255, 255, 255, 0.42);

  font-size:
    11px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.18em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__block p {
  margin:
    0;

  color:
    var(--ap-text);

  font-size:
    17px;

  font-weight:
    600;

  line-height:
    1.66;

  letter-spacing:
    -0.012em;

  text-wrap:
    pretty;
}


/* ============================================================
   14. RESULT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__result {
  position: relative;

  max-width:
    620px;

  margin:
    34px 0 34px;

  padding:
    28px 30px;

  overflow:
    hidden;

  border:
    1px solid rgba(255, 122, 26, 0.34);

  border-radius:
    20px;

  background:
    radial-gradient(
      circle at 8% 0%,
      rgba(255, 122, 26, 0.13),
      transparent 45%
    ),
    linear-gradient(
      180deg,
      rgba(255, 122, 26, 0.070),
      rgba(255, 122, 26, 0.020)
    ),
    rgba(10, 8, 8, 0.96);

  box-shadow:
    0 20px 52px -30px rgba(255, 122, 26, 0.62);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__result::before {
  content:
    "";

  position:
    absolute;

  left:
    0;

  top:
    22px;

  bottom:
    22px;

  width:
    2px;

  border-radius:
    0 999px 999px 0;

  background:
    linear-gradient(
      180deg,
      var(--ap-orange),
      rgba(255, 122, 26, 0.14)
    );
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mini--accent {
  color:
    var(--ap-orange-2);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__result p {
  margin:
    0;

  color:
    rgba(255, 255, 255, 0.91);

  font-size:
    17px;

  font-weight:
    700;

  line-height:
    1.66;

  letter-spacing:
    -0.012em;

  text-wrap:
    pretty;
}


/* ============================================================
   15. BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button {
  position:
    relative;

  isolation:
    isolate;

  overflow:
    hidden;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  min-height:
    52px;

  padding:
    0 28px;

  border:
    1px solid rgba(255, 122, 26, 0.62);

  border-radius:
    999px;

  background:
    rgba(255, 122, 26, 0.025);

  color:
    var(--ap-orange-2) !important;

  font-size:
    14px;

  font-weight:
    900;

  line-height:
    1;

  text-decoration:
    none !important;

  white-space:
    nowrap;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.035);

  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button span {
  display:
    inline-block;

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button:hover,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button:focus-visible {
  transform:
    translateY(-2px);

  border-color:
    rgba(255, 122, 26, 0.92);

  background:
    rgba(255, 122, 26, 0.09);

  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);

  outline:
    none;
}

.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button:hover span,
.elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   16. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__inner {
    grid-template-columns:
      1fr;

    gap:
      48px;

    align-items:
      start;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__visual {
    max-width:
      720px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__content {
    max-width:
      760px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__title,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__block,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__result {
    max-width:
      760px;
  }
}


/* ============================================================
   17. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__inner {
    gap:
      38px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__shot {
    aspect-ratio:
      4 / 3;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__browser {
    height:
      36px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__title {
    font-size:
      clamp(32px, 9.4vw, 46px) !important;

    line-height:
      1.02 !important;

    letter-spacing:
      -0.052em;

    margin-bottom:
      30px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__block {
    margin-bottom:
      24px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__block p,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__result p {
    font-size:
      16px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__result {
    padding:
      24px 22px;

    margin:
      30px 0 30px;

    border-radius:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__badge {
    left:
      12px;

    bottom:
      12px;

    font-size:
      9px;

    padding:
      7px 11px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button {
    width:
      100%;
  }
}


/* ============================================================
   18. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup {
    border-radius:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__url {
    font-size:
      9px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__open {
    width:
      25px;

    height:
      25px;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__eyebrow {
    font-size:
      11px;

    letter-spacing:
      0.17em;
  }
}


/* ============================================================
   19. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__shot img,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__open,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:hover,
  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__button:hover {
    transform:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-e9ffcfb .ap-services-case__mockup:hover .ap-services-case__shot img {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-b7e0ad9 *//* ============================================================
   STRONY INTERNETOWE - WYBRANE PROJEKTY
   Elementor section class: ap-services-projects-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-b7e0ad9
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 > .elementor-container,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .elementor-container,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .e-con-inner,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .elementor-column,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .elementor-widget,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects *,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects *::before,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects {
  --ap-black: #050505;
  --ap-bg: #080808;
  --ap-card: #111111;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.76);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 104px 24px 112px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 15% 6%,
      rgba(255, 122, 26, 0.075) 0,
      transparent 32%
    ),
    radial-gradient(
      circle at 90% 88%,
      rgba(76, 39, 126, 0.11) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #050505 0%,
      #090909 52%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 40%,
      rgba(0, 0, 0, 0.36),
      transparent 66%
    );

  mask-image:
    radial-gradient(
      circle at 50% 40%,
      rgba(0, 0, 0, 0.36),
      transparent 66%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;
}


/* ============================================================
   7. HEADER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__head {
  max-width: 790px;

  margin: 0 0 56px;

  padding-left: 22px;

  border-left:
    2px solid rgba(255, 122, 26, 0.72);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__label {
  display: inline-flex;
  align-items: center;

  gap:
    12px;

  margin-bottom:
    20px;

  color:
    var(--ap-orange-2);

  font-size:
    12px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.22em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__label span {
  display:
    block;

  width:
    30px;

  height:
    2px;

  border-radius:
    999px;

  background:
    var(--ap-orange);

  box-shadow:
    0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__title {
  max-width:
    760px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    clamp(34px, 3.2vw, 52px) !important;

  font-weight:
    900 !important;

  line-height:
    1.04 !important;

  letter-spacing:
    -0.052em;

  text-wrap:
    balance;
}


/* ============================================================
   8. GRID
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    24px;

  align-items:
    stretch;
}


/* ============================================================
   9. CARD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card {
  position: relative;

  isolation: isolate;

  overflow: hidden;

  display: flex;
  flex-direction: column;

  min-height: 100%;

  border:
    1px solid var(--ap-border);

  border-radius:
    22px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    ),
    var(--ap-card);

  color:
    #ffffff !important;

  text-decoration:
    none !important;

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);

  transition:
    transform 0.35s var(--ap-ease),
    border-color 0.35s var(--ap-ease),
    box-shadow 0.35s var(--ap-ease),
    background 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card::before {
  content: "";

  position: absolute;

  inset: 0;

  z-index: -1;

  opacity: 0;

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 122, 26, 0.13),
      transparent 44%
    );

  transition:
    opacity 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:hover,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:focus-visible {
  transform:
    translateY(-5px);

  border-color:
    rgba(255, 122, 26, 0.45);

  outline:
    none;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.064),
      rgba(255, 255, 255, 0.020)
    ),
    var(--ap-card);

  box-shadow:
    0 30px 78px rgba(0, 0, 0, 0.48),
    0 18px 44px -22px rgba(255, 122, 26, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:hover::before,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:focus-visible::before {
  opacity:
    1;
}


/* ============================================================
   10. PREVIEW
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__preview {
  position:
    relative;

  overflow:
    hidden;

  border-bottom:
    1px solid rgba(255, 255, 255, 0.075);

  background:
    #070707;
}


/* ============================================================
   11. BROWSER BAR
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__browser {
  position:
    relative;

  z-index:
    5;

  height:
    38px;

  display:
    flex;

  align-items:
    center;

  gap:
    12px;

  padding:
    0 14px;

  border-bottom:
    1px solid rgba(255, 255, 255, 0.075);

  background:
    rgba(5, 5, 5, 0.98);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__dots {
  display:
    flex;

  align-items:
    center;

  gap:
    6px;

  flex:
    0 0 auto;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__dots span {
  width:
    7px;

  height:
    7px;

  border-radius:
    999px;

  background:
    rgba(255, 255, 255, 0.18);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__dots span:first-child {
  background:
    var(--ap-orange);

  box-shadow:
    0 0 12px rgba(255, 122, 26, 0.44);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__domain {
  flex:
    1 1 auto;

  min-width:
    0;

  overflow:
    hidden;

  color:
    rgba(255, 255, 255, 0.50);

  font-size:
    10px;

  font-weight:
    700;

  text-align:
    center;

  white-space:
    nowrap;

  text-overflow:
    ellipsis;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__open {
  flex:
    0 0 auto;

  width:
    28px;

  height:
    28px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  border:
    1px solid rgba(255, 255, 255, 0.10);

  border-radius:
    999px;

  background:
    rgba(255, 255, 255, 0.035);

  color:
    rgba(255, 255, 255, 0.60);

  font-size:
    13px;

  font-weight:
    900;

  transition:
    transform 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:hover .ap-services-projects__open,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:focus-visible .ap-services-projects__open {
  transform:
    translate(2px, -2px);

  color:
    #ffffff;

  border-color:
    rgba(255, 122, 26, 0.56);

  background:
    rgba(255, 122, 26, 0.14);
}


/* ============================================================
   12. SCREENSHOT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__shot {
  position:
    relative;

  overflow:
    hidden;

  height:
    264px;

  background:
    #060606;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__shot img {
  display:
    block;

  width:
    100%;

  height:
    100%;

  object-fit:
    cover;

  object-position:
    top center;

  filter:
    saturate(1.02)
    contrast(1.03)
    brightness(1.02);

  transition:
    transform 0.58s var(--ap-ease),
    filter 0.58s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__shot::after {
  content:
    "";

  position:
    absolute;

  left:
    0;

  right:
    0;

  bottom:
    0;

  height:
    34%;

  pointer-events:
    none;

  background:
    linear-gradient(
      180deg,
      transparent 0%,
      rgba(5, 5, 5, 0.54) 100%
    );
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:hover .ap-services-projects__shot img,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:focus-visible .ap-services-projects__shot img {
  transform:
    scale(1.025);

  filter:
    saturate(1.05)
    contrast(1.04)
    brightness(1.06);
}


/* ============================================================
   13. BODY
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__body {
  display: flex;
  flex-direction: column;

  flex:
    1 1 auto;

  padding:
    28px 26px 26px;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__cat {
  display:
    block;

  margin-bottom:
    12px;

  color:
    var(--ap-orange-2);

  font-size:
    11px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.20em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__name {
  margin:
    0 0 14px;

  color:
    #ffffff;

  font-size:
    clamp(24px, 1.75vw, 28px) !important;

  font-weight:
    900 !important;

  line-height:
    1.13 !important;

  letter-spacing:
    -0.04em;

  text-wrap:
    balance;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__desc {
  margin:
    0;

  color:
    var(--ap-muted);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.70;

  letter-spacing:
    -0.01em;

  text-wrap:
    pretty;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__link {
  display:
    inline-flex;

  align-items:
    center;

  gap:
    8px;

  margin-top:
    auto;

  padding-top:
    24px;

  color:
    #ffffff;

  font-size:
    14px;

  font-weight:
    850;

  line-height:
    1;

  text-decoration:
    none;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__link span {
  color:
    var(--ap-orange-2);

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:hover .ap-services-projects__link span,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:focus-visible .ap-services-projects__link span {
  transform:
    translateX(4px);
}


/* ============================================================
   14. CTA BAR
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__cta {
  position: relative;

  overflow: hidden;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap:
    28px;

  margin-top:
    56px;

  padding:
    26px 30px;

  border:
    1px solid var(--ap-border);

  border-left:
    2px solid rgba(255, 122, 26, 0.72);

  border-radius:
    20px;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    );

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__cta::before {
  content:
    "";

  position:
    absolute;

  inset:
    0;

  pointer-events:
    none;

  background:
    radial-gradient(
      circle at 12% 50%,
      rgba(255, 122, 26, 0.10),
      transparent 34%
    );
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__cta p {
  position:
    relative;

  z-index:
    2;

  max-width:
    760px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    18px;

  font-weight:
    750;

  line-height:
    1.55;

  letter-spacing:
    -0.02em;
}


/* ============================================================
   15. CTA BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button {
  position:
    relative;

  z-index:
    2;

  isolation:
    isolate;

  overflow:
    hidden;

  flex:
    0 0 auto;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  min-height:
    50px;

  padding:
    0 26px;

  border-radius:
    999px;

  background:
    linear-gradient(
      135deg,
      #ff7a1a,
      #ff9a3c
    );

  color:
    #160a02 !important;

  font-size:
    14px;

  font-weight:
    900;

  line-height:
    1;

  text-decoration:
    none !important;

  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-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__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-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__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-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button span {
  display:
    inline-block;

  color:
    #160a02 !important;

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button:hover,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__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);

  outline:
    none;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button:hover::after,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button:focus-visible::after {
  left:
    120%;

  opacity:
    1;
}

.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button:hover span,
.elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   16. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__shot {
    height:
      250px;
  }
}


/* ============================================================
   17. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__head {
    margin-bottom:
      38px;

    padding-left:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__label {
    margin-bottom:
      18px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__title {
    font-size:
      clamp(30px, 8.8vw, 42px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -0.045em;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__grid {
    grid-template-columns:
      1fr;

    gap:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__shot {
    height:
      250px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__body {
    padding:
      26px 22px 24px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__desc {
    font-size:
      15px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__cta {
    flex-direction:
      column;

    align-items:
      flex-start;

    margin-top:
      38px;

    padding:
      24px 20px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__cta p {
    font-size:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button {
    width:
      100%;

    min-height:
      50px;
  }
}


/* ============================================================
   18. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card {
    border-radius:
      20px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__shot {
    height:
      225px;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__name {
    font-size:
      24px !important;
  }
}


/* ============================================================
   19. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card::before,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__shot img,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__open,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__link span,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button::after,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:hover,
  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__button:hover {
    transform:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-b7e0ad9 .ap-services-projects__card:hover .ap-services-projects__shot img {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-d6a5252 *//* ============================================================
   STRONY INTERNETOWE - PROCES
   Elementor section class: ap-services-process-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-d6a5252
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 > .elementor-container,
.elementor-289 .elementor-element.elementor-element-d6a5252 .elementor-container,
.elementor-289 .elementor-element.elementor-element-d6a5252 > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-d6a5252 .e-con-inner,
.elementor-289 .elementor-element.elementor-element-d6a5252 .elementor-column,
.elementor-289 .elementor-element.elementor-element-d6a5252 .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-d6a5252 .elementor-widget,
.elementor-289 .elementor-element.elementor-element-d6a5252 .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-d6a5252 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process,
.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process *,
.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process *::before,
.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process {
  --ap-black: #050505;
  --ap-bg: #080808;
  --ap-card: #111111;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.76);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 104px 24px 112px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 13% 6%,
      rgba(255, 122, 26, 0.065) 0,
      transparent 32%
    ),
    radial-gradient(
      circle at 88% 92%,
      rgba(76, 39, 126, 0.10) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #050505 0%,
      #080808 52%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 34%,
      rgba(0, 0, 0, 0.34),
      transparent 64%
    );

  mask-image:
    radial-gradient(
      circle at 50% 34%,
      rgba(0, 0, 0, 0.34),
      transparent 64%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;
}


/* ============================================================
   7. HEADER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__head {
  max-width: 790px;

  margin: 0 0 56px;

  padding-left: 22px;

  border-left:
    2px solid rgba(255, 122, 26, 0.72);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__label {
  display: inline-flex;
  align-items: center;

  gap:
    12px;

  margin-bottom:
    20px;

  color:
    var(--ap-orange-2);

  font-size:
    12px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.22em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__label span {
  display:
    block;

  width:
    30px;

  height:
    2px;

  border-radius:
    999px;

  background:
    var(--ap-orange);

  box-shadow:
    0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__title {
  max-width:
    760px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    clamp(34px, 3.2vw, 52px) !important;

  font-weight:
    900 !important;

  line-height:
    1.04 !important;

  letter-spacing:
    -0.052em;

  text-wrap:
    balance;
}


/* ============================================================
   8. GRID
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    24px;

  align-items:
    stretch;
}


/* ============================================================
   9. CARD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card {
  position: relative;

  isolation: isolate;

  overflow: hidden;

  display: flex;
  flex-direction: column;

  min-height: 220px;

  padding:
    34px 32px
    30px;

  border:
    1px solid var(--ap-border);

  border-radius:
    22px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    ),
    var(--ap-card);

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);

  transition:
    transform 0.35s var(--ap-ease),
    border-color 0.35s var(--ap-ease),
    box-shadow 0.35s var(--ap-ease),
    background 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card::before {
  content: "";

  position: absolute;

  inset: 0;

  z-index: -1;

  opacity: 0;

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 122, 26, 0.13),
      transparent 44%
    );

  transition:
    opacity 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card::after {
  content: "";

  display: block;

  margin-top: auto;
  padding-top: 26px;

  border-bottom:
    1px solid rgba(255, 255, 255, 0.07);

  transition:
    border-color 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card:hover {
  transform:
    translateY(-5px);

  border-color:
    rgba(255, 122, 26, 0.45);

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.064),
      rgba(255, 255, 255, 0.020)
    ),
    var(--ap-card);

  box-shadow:
    0 30px 78px rgba(0, 0, 0, 0.48),
    0 18px 44px -22px rgba(255, 122, 26, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card:hover::before {
  opacity:
    1;
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card:hover::after {
  border-color:
    rgba(255, 122, 26, 0.55);
}


/* ============================================================
   10. NUMBER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__num {
  display: block;

  margin-bottom:
    24px;

  color:
    rgba(255, 122, 26, 0.50);

  font-size:
    clamp(42px, 3.4vw, 52px);

  font-weight:
    900;

  line-height:
    0.92;

  letter-spacing:
    -0.04em;

  transition:
    color 0.35s var(--ap-ease),
    text-shadow 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card:hover .ap-services-process__num {
  color:
    var(--ap-orange-2);

  text-shadow:
    0 0 24px rgba(255, 122, 26, 0.28);
}


/* ============================================================
   11. CARD TYPOGRAPHY
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card-title {
  margin:
    0 0 14px;

  color:
    #ffffff;

  font-size:
    clamp(20px, 1.5vw, 24px) !important;

  font-weight:
    900 !important;

  line-height:
    1.18 !important;

  letter-spacing:
    -0.035em;

  text-wrap:
    balance;
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card-text {
  margin:
    0;

  color:
    var(--ap-muted);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.70;

  letter-spacing:
    -0.01em;

  text-wrap:
    pretty;
}


/* ============================================================
   12. ACTIONS
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__actions {
  display:
    flex;

  align-items:
    center;

  justify-content:
    flex-start;

  margin-top:
    50px;
}


/* ============================================================
   13. BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button {
  position:
    relative;

  isolation:
    isolate;

  overflow:
    hidden;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  min-height:
    52px;

  padding:
    0 28px;

  border:
    1px solid rgba(255, 122, 26, 0.62);

  border-radius:
    999px;

  background:
    rgba(255, 122, 26, 0.025);

  color:
    var(--ap-orange-2) !important;

  font-size:
    14px;

  font-weight:
    900;

  line-height:
    1;

  text-decoration:
    none !important;

  white-space:
    nowrap;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.035);

  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button span {
  display:
    inline-block;

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button:hover,
.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button:focus-visible {
  transform:
    translateY(-2px);

  border-color:
    rgba(255, 122, 26, 0.92);

  background:
    rgba(255, 122, 26, 0.09);

  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);

  outline:
    none;
}

.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button:hover span,
.elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   14. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__title {
    font-size:
      clamp(32px, 5vw, 46px) !important;
  }
}


/* ============================================================
   15. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__head {
    margin-bottom:
      38px;

    padding-left:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__label {
    margin-bottom:
      18px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__title {
    font-size:
      clamp(30px, 8.8vw, 42px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -0.045em;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__grid {
    grid-template-columns:
      1fr;

    gap:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card {
    min-height:
      auto;

    padding:
      30px 24px
      26px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__num {
    margin-bottom:
      20px;

    font-size:
      40px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card-title {
    font-size:
      23px !important;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card-text {
    font-size:
      15px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card::after {
    padding-top:
      22px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__actions {
    margin-top:
      38px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button {
    width:
      100%;
  }
}


/* ============================================================
   16. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card {
    padding:
      28px 20px
      24px;

    border-radius:
      20px;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card-title {
    font-size:
      21px !important;
  }
}


/* ============================================================
   17. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card,
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card::before,
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card::after,
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__num,
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button,
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__card:hover,
  .elementor-289 .elementor-element.elementor-element-d6a5252 .ap-services-process__button:hover {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-b57423c *//* ============================================================
   STRONY INTERNETOWE - WYCENA
   Elementor section class: ap-services-pricing-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-b57423c
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c {
  width: 100vw !important;
  max-width: none !important;

  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;

  padding: 0 !important;

  overflow: hidden !important;

  background: #090909 !important;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c > .elementor-container,
.elementor-289 .elementor-element.elementor-element-b57423c .elementor-container,
.elementor-289 .elementor-element.elementor-element-b57423c > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-b57423c .e-con-inner,
.elementor-289 .elementor-element.elementor-element-b57423c .elementor-column,
.elementor-289 .elementor-element.elementor-element-b57423c .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-b57423c .elementor-widget,
.elementor-289 .elementor-element.elementor-element-b57423c .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-b57423c .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing,
.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing *,
.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing *::before,
.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing {
  --ap-black: #050505;
  --ap-bg: #090909;
  --ap-card: #101010;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.72);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 104px 24px 112px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(255, 122, 26, 0.070) 0,
      transparent 34%
    ),
    radial-gradient(
      circle at 88% 92%,
      rgba(76, 39, 126, 0.10) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #090909 0%,
      #0b0b0b 50%,
      #080808 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 38%,
      rgba(0, 0, 0, 0.34),
      transparent 66%
    );

  mask-image:
    radial-gradient(
      circle at 50% 38%,
      rgba(0, 0, 0, 0.34),
      transparent 66%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;

  display: flex;
  justify-content: center;
}


/* ============================================================
   7. CARD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__card {
  position: relative;

  isolation: isolate;

  overflow: hidden;

  width: 100%;
  max-width: 850px;

  border:
    1px solid var(--ap-border);

  border-radius:
    28px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.060),
      rgba(255, 255, 255, 0.020)
    ),
    var(--ap-card);

  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);

  transition:
    transform 0.35s var(--ap-ease),
    border-color 0.35s var(--ap-ease),
    box-shadow 0.35s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__card:hover {
  transform:
    translateY(-3px);

  border-color:
    rgba(255, 122, 26, 0.34);

  box-shadow:
    0 40px 96px rgba(0, 0, 0, 0.50),
    0 22px 56px -28px rgba(255, 122, 26, 0.40),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__card::before {
  content: "";

  position: absolute;

  inset: 0;

  z-index: -1;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.026) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    );

  background-size:
    46px 46px;

  -webkit-mask-image:
    radial-gradient(
      75% 75% at 50% 38%,
      #000 0%,
      transparent 78%
    );

  mask-image:
    radial-gradient(
      75% 75% at 50% 38%,
      #000 0%,
      transparent 78%
    );
}

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__glow {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    radial-gradient(
      100% 80% at 50% -8%,
      rgba(255, 122, 26, 0.15),
      transparent 56%
    ),
    radial-gradient(
      80% 70% at 92% 112%,
      rgba(140, 90, 255, 0.10),
      transparent 60%
    );

  opacity:
    0.95;
}


/* ============================================================
   8. CONTENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__content {
  position: relative;

  z-index: 2;

  display: flex;
  flex-direction: column;
  align-items: center;

  text-align: center;

  padding:
    72px 70px;
}


/* ============================================================
   9. LABEL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__label {
  margin-bottom:
    22px;

  color:
    var(--ap-orange-2);

  font-size:
    12px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.22em;

  text-transform:
    uppercase;
}


/* ============================================================
   10. TITLE
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__title {
  max-width:
    760px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    clamp(38px, 4vw, 64px) !important;

  font-weight:
    900 !important;

  line-height:
    1.02 !important;

  letter-spacing:
    -0.058em;

  text-wrap:
    balance;
}


/* ============================================================
   11. LEAD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__lead {
  max-width:
    690px;

  margin:
    30px 0 0;

  color:
    var(--ap-text);

  font-size:
    19px;

  font-weight:
    500;

  line-height:
    1.66;

  letter-spacing:
    -0.01em;

  text-wrap:
    pretty;
}


/* ============================================================
   12. BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button {
  position:
    relative;

  isolation:
    isolate;

  overflow:
    hidden;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  min-height:
    52px;

  margin-top:
    42px;

  padding:
    0 30px;

  border:
    0;

  border-radius:
    999px;

  background:
    linear-gradient(
      135deg,
      #ff7a1a,
      #ff9a3c
    );

  color:
    #160a02 !important;

  font-size:
    14px;

  font-weight:
    900;

  line-height:
    1;

  text-decoration:
    none !important;

  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-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__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-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__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-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button span {
  display:
    inline-block;

  color:
    #160a02 !important;

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button:hover,
.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__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);

  outline:
    none;
}

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button:hover::after,
.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button:focus-visible::after {
  left:
    120%;

  opacity:
    1;
}

.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button:hover span,
.elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   13. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__content {
    padding:
      62px 46px;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__title {
    font-size:
      clamp(34px, 6vw, 54px) !important;
  }
}


/* ============================================================
   14. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__card {
    border-radius:
      22px;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__content {
    padding:
      42px 22px 44px;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__label {
    margin-bottom:
      18px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__title {
    font-size:
      clamp(30px, 9vw, 44px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -0.050em;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__lead {
    margin-top:
      24px;

    font-size:
      16px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button {
    width:
      100%;

    min-height:
      52px;

    margin-top:
      34px;

    padding:
      0 20px;

    white-space:
      normal;

    text-align:
      center;
  }
}


/* ============================================================
   15. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__content {
    padding:
      38px 18px 40px;
  }
}


/* ============================================================
   16. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__card,
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button,
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button::after,
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__card:hover,
  .elementor-289 .elementor-element.elementor-element-b57423c .ap-services-pricing__button:hover {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-98335cc *//* ============================================================
   STRONY INTERNETOWE - FAQ
   Elementor section class: ap-services-faq-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-98335cc
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc > .elementor-container,
.elementor-289 .elementor-element.elementor-element-98335cc .elementor-container,
.elementor-289 .elementor-element.elementor-element-98335cc > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-98335cc .e-con-inner,
.elementor-289 .elementor-element.elementor-element-98335cc .elementor-column,
.elementor-289 .elementor-element.elementor-element-98335cc .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-98335cc .elementor-widget,
.elementor-289 .elementor-element.elementor-element-98335cc .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-98335cc .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq *,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq *::before,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq {
  --ap-black: #050505;
  --ap-bg: #080808;
  --ap-card: #111111;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.72);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 104px 24px 112px;

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing: antialiased;

  background:
    radial-gradient(
      circle at 12% 6%,
      rgba(255, 122, 26, 0.070) 0,
      transparent 32%
    ),
    radial-gradient(
      circle at 88% 92%,
      rgba(76, 39, 126, 0.10) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #050505 0%,
      #080808 52%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.022) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 34%,
      rgba(0, 0, 0, 0.34),
      transparent 64%
    );

  mask-image:
    radial-gradient(
      circle at 50% 34%,
      rgba(0, 0, 0, 0.34),
      transparent 64%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 1210px;

  margin: 0 auto;
}


/* ============================================================
   7. HEADER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__head {
  max-width: 790px;

  margin: 0 0 52px;

  padding-left: 22px;

  border-left:
    2px solid rgba(255, 122, 26, 0.72);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__label {
  display: inline-flex;
  align-items: center;

  gap:
    12px;

  margin-bottom:
    20px;

  color:
    var(--ap-orange-2);

  font-size:
    12px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.22em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__label span {
  display:
    block;

  width:
    30px;

  height:
    2px;

  border-radius:
    999px;

  background:
    var(--ap-orange);

  box-shadow:
    0 0 18px rgba(255, 122, 26, 0.55);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__title {
  max-width:
    760px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    clamp(34px, 3.2vw, 52px) !important;

  font-weight:
    900 !important;

  line-height:
    1.04 !important;

  letter-spacing:
    -0.052em;

  text-wrap:
    balance;
}


/* ============================================================
   8. FAQ BOX
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__box {
  width:
    100%;

  max-width:
    780px;

  overflow:
    hidden;

  border:
    1px solid var(--ap-border);

  border-radius:
    22px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    ),
    var(--ap-card);

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}


/* ============================================================
   9. FAQ ITEM
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item {
  border-bottom:
    1px solid rgba(255, 255, 255, 0.075);

  transition:
    background 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item:last-child {
  border-bottom:
    0;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item:hover,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item[open] {
  background:
    rgba(255, 122, 26, 0.026);
}


/* ============================================================
   10. QUESTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question {
  list-style:
    none;

  cursor:
    pointer;

  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    22px;

  width:
    100%;

  padding:
    24px 30px;

  color:
    #ffffff;

  font-size:
    18px;

  font-weight:
    900;

  line-height:
    1.35;

  letter-spacing:
    -0.025em;

  transition:
    color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question::-webkit-details-marker {
  display:
    none;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question::marker {
  content:
    "";
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question:hover,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item[open] .ap-services-faq__question {
  color:
    #ffffff;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question:focus-visible {
  outline:
    2px solid var(--ap-orange-2);

  outline-offset:
    -4px;

  border-radius:
    16px;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question span {
  display:
    block;

  min-width:
    0;
}


/* ============================================================
   11. CHEVRON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i {
  position:
    relative;

  flex:
    0 0 auto;

  width:
    14px;

  height:
    14px;

  display:
    block;

  transform:
    rotate(0deg);

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i::before,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i::after {
  content:
    "";

  position:
    absolute;

  top:
    50%;

  width:
    9px;

  height:
    2px;

  border-radius:
    999px;

  background:
    rgba(255, 255, 255, 0.55);

  transition:
    background 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i::before {
  left:
    0;

  transform:
    translateY(-50%)
    rotate(45deg);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i::after {
  right:
    0;

  transform:
    translateY(-50%)
    rotate(-45deg);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item[open] .ap-services-faq__question i {
  transform:
    rotate(180deg);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item:hover .ap-services-faq__question i::before,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item:hover .ap-services-faq__question i::after,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item[open] .ap-services-faq__question i::before,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item[open] .ap-services-faq__question i::after {
  background:
    var(--ap-orange-2);
}


/* ============================================================
   12. ANSWER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__answer {
  padding:
    0 30px 26px;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__answer p {
  max-width:
    650px;

  margin:
    0;

  color:
    var(--ap-text);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.70;

  letter-spacing:
    -0.01em;

  text-wrap:
    pretty;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item[open] .ap-services-faq__answer {
  animation:
    apServicesFaqOpen 0.32s var(--ap-ease);
}

@keyframes apServicesFaqOpen {
  from {
    opacity:
      0;

    transform:
      translateY(-6px);
  }

  to {
    opacity:
      1;

    transform:
      translateY(0);
  }
}


/* ============================================================
   13. CTA BAR
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__cta {
  position: relative;

  overflow: hidden;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap:
    28px;

  margin-top:
    56px;

  padding:
    26px 30px;

  border:
    1px solid var(--ap-border);

  border-left:
    2px solid rgba(255, 122, 26, 0.72);

  border-radius:
    20px;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.052),
      rgba(255, 255, 255, 0.018)
    );

  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.34);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__cta::before {
  content:
    "";

  position:
    absolute;

  inset:
    0;

  pointer-events:
    none;

  background:
    radial-gradient(
      circle at 12% 50%,
      rgba(255, 122, 26, 0.10),
      transparent 34%
    );
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__cta p {
  position:
    relative;

  z-index:
    2;

  max-width:
    760px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    18px;

  font-weight:
    750;

  line-height:
    1.55;

  letter-spacing:
    -0.02em;
}


/* ============================================================
   14. CTA BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button {
  position:
    relative;

  z-index:
    2;

  isolation:
    isolate;

  overflow:
    hidden;

  flex:
    0 0 auto;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  min-height:
    50px;

  padding:
    0 26px;

  border:
    1px solid rgba(255, 122, 26, 0.62);

  border-radius:
    999px;

  background:
    rgba(255, 122, 26, 0.025);

  color:
    var(--ap-orange-2) !important;

  font-size:
    14px;

  font-weight:
    900;

  line-height:
    1;

  text-decoration:
    none !important;

  white-space:
    nowrap;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.035);

  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button span {
  display:
    inline-block;

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button:hover,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button:focus-visible {
  transform:
    translateY(-2px);

  border-color:
    rgba(255, 122, 26, 0.92);

  background:
    rgba(255, 122, 26, 0.09);

  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);

  outline:
    none;
}

.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button:hover span,
.elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   15. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq {
    padding:
      86px 22px
      96px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__title {
    font-size:
      clamp(32px, 5vw, 46px) !important;
  }
}


/* ============================================================
   16. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq {
    padding:
      68px 18px
      82px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__head {
    margin-bottom:
      38px;

    padding-left:
      18px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__label {
    margin-bottom:
      18px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__title {
    font-size:
      clamp(30px, 8.8vw, 42px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -0.045em;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__box {
    max-width:
      none;

    border-radius:
      20px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question {
    padding:
      21px 22px;

    font-size:
      16px;

    line-height:
      1.35;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__answer {
    padding:
      0 22px 23px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__answer p {
    font-size:
      15px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__cta {
    flex-direction:
      column;

    align-items:
      flex-start;

    margin-top:
      38px;

    padding:
      24px 20px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__cta p {
    font-size:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button {
    width:
      100%;

    min-height:
      50px;
  }
}


/* ============================================================
   17. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq {
    padding-left:
      16px;

    padding-right:
      16px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question {
    padding:
      20px 18px;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__answer {
    padding:
      0 18px 22px;
  }
}


/* ============================================================
   18. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item,
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question,
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i,
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i::before,
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__question i::after,
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button,
  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__item[open] .ap-services-faq__answer {
    animation:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-98335cc .ap-services-faq__button:hover {
    transform:
      none !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-959a508 *//* ============================================================
   STRONY INTERNETOWE - FINAL CTA
   Elementor section class: ap-services-final-shell
   CSS scope: .elementor-289 .elementor-element.elementor-element-959a508
   ============================================================ */


/* ============================================================
   1. OUTER SHELL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 {
  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;
}


/* ============================================================
   2. ELEMENTOR RESET
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 > .elementor-container,
.elementor-289 .elementor-element.elementor-element-959a508 .elementor-container,
.elementor-289 .elementor-element.elementor-element-959a508 > .e-con-inner,
.elementor-289 .elementor-element.elementor-element-959a508 .e-con-inner,
.elementor-289 .elementor-element.elementor-element-959a508 .elementor-column,
.elementor-289 .elementor-element.elementor-element-959a508 .elementor-widget-wrap,
.elementor-289 .elementor-element.elementor-element-959a508 .elementor-widget,
.elementor-289 .elementor-element.elementor-element-959a508 .elementor-widget-html,
.elementor-289 .elementor-element.elementor-element-959a508 .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* ============================================================
   3. LOCAL BOX SIZING
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final,
.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final *,
.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final *::before,
.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final *::after {
  box-sizing: border-box;
}


/* ============================================================
   4. SECTION
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final {
  --ap-black: #050505;
  --ap-bg: #070707;

  --ap-white: #ffffff;

  --ap-orange: #ff7a1a;
  --ap-orange-2: #ff9a3c;

  --ap-text: rgba(255, 255, 255, 0.72);
  --ap-muted: rgba(255, 255, 255, 0.58);

  --ap-border: rgba(255, 255, 255, 0.095);

  --ap-ease: cubic-bezier(0.22, 0.61, 0.36, 1);

  position: relative;

  width: 100%;

  overflow: hidden;

  padding: 112px 24px 118px;

  border-top:
    1px solid rgba(255, 255, 255, 0.075);

  border-bottom:
    1px solid rgba(255, 255, 255, 0.075);

  color: var(--ap-white);

  font-family:
    "Montserrat",
    "Inter",
    "Segoe UI",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Arial,
    sans-serif;

  -webkit-font-smoothing:
    antialiased;

  background:
    radial-gradient(
      circle at 9% 18%,
      rgba(255, 122, 26, 0.090) 0,
      transparent 32%
    ),
    radial-gradient(
      circle at 91% 84%,
      rgba(76, 39, 126, 0.13) 0,
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #080808 0%,
      #050505 100%
    );
}


/* ============================================================
   5. AMBIENT GRID
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__ambient {
  position: absolute;

  inset: 0;

  z-index: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.020) 1px,
      transparent 1px
    ),
    linear-gradient(
      rgba(255, 255, 255, 0.016) 1px,
      transparent 1px
    );

  background-size:
    56px 56px;

  -webkit-mask-image:
    radial-gradient(
      circle at 50% 46%,
      rgba(0, 0, 0, 0.30),
      transparent 68%
    );

  mask-image:
    radial-gradient(
      circle at 50% 46%,
      rgba(0, 0, 0, 0.30),
      transparent 68%
    );
}


/* ============================================================
   6. INNER
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__inner {
  position: relative;

  z-index: 2;

  width: 100%;
  max-width: 840px;

  margin: 0 auto;

  display: flex;
  flex-direction: column;
  align-items: center;

  text-align: center;
}


/* ============================================================
   7. LABEL
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap:
    14px;

  margin-bottom:
    24px;

  color:
    var(--ap-orange-2);

  font-size:
    12px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.22em;

  text-transform:
    uppercase;
}

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__label span {
  display:
    block;

  width:
    30px;

  height:
    2px;

  border-radius:
    999px;

  background:
    var(--ap-orange);

  box-shadow:
    0 0 18px rgba(255, 122, 26, 0.55);
}


/* ============================================================
   8. TITLE
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__title {
  max-width:
    840px;

  margin:
    0;

  color:
    #ffffff;

  font-size:
    clamp(40px, 4.4vw, 68px) !important;

  font-weight:
    900 !important;

  line-height:
    1.03 !important;

  letter-spacing:
    -0.058em;

  text-wrap:
    balance;
}


/* ============================================================
   9. LEAD
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__lead {
  max-width:
    730px;

  margin:
    30px 0 0;

  color:
    var(--ap-text);

  font-size:
    19px;

  font-weight:
    500;

  line-height:
    1.66;

  letter-spacing:
    -0.01em;

  text-wrap:
    pretty;
}


/* ============================================================
   10. ACTIONS
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;

  gap:
    14px;

  margin-top:
    42px;
}


/* ============================================================
   11. SHARED BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button {
  position:
    relative;

  isolation:
    isolate;

  overflow:
    hidden;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    10px;

  min-height:
    52px;

  padding:
    0 30px;

  border-radius:
    999px;

  font-size:
    14px;

  font-weight:
    900;

  line-height:
    1;

  text-decoration:
    none !important;

  white-space:
    nowrap;

  transition:
    transform 0.3s var(--ap-ease),
    box-shadow 0.3s var(--ap-ease),
    filter 0.3s var(--ap-ease),
    color 0.3s var(--ap-ease),
    background 0.3s var(--ap-ease),
    border-color 0.3s var(--ap-ease);
}


/* ============================================================
   12. PRIMARY BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary {
  border:
    0;

  background:
    linear-gradient(
      135deg,
      #ff7a1a,
      #ff9a3c
    );

  color:
    #160a02 !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);
}

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__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-289 .elementor-element.elementor-element-959a508 .ap-services-final__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-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary span {
  display:
    inline-block;

  color:
    #160a02 !important;

  transition:
    transform 0.3s var(--ap-ease);
}

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary:hover,
.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary: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);

  outline:
    none;
}

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary:hover::after,
.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary:focus-visible::after {
  left:
    120%;

  opacity:
    1;
}

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary:hover span,
.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--primary:focus-visible span {
  transform:
    translateX(4px);
}


/* ============================================================
   13. SECONDARY BUTTON
   ============================================================ */

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--secondary {
  border:
    1px solid rgba(255, 122, 26, 0.62);

  background:
    rgba(255, 122, 26, 0.025);

  color:
    var(--ap-orange-2) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--secondary:hover,
.elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button--secondary:focus-visible {
  transform:
    translateY(-2px);

  border-color:
    rgba(255, 122, 26, 0.92);

  background:
    rgba(255, 122, 26, 0.09);

  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);

  outline:
    none;
}


/* ============================================================
   14. RESPONSIVE - TABLET
   ============================================================ */

@media (max-width: 1024px) {
  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final {
    padding:
      88px 22px
      98px;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__title {
    font-size:
      clamp(36px, 6vw, 56px) !important;
  }
}


/* ============================================================
   15. RESPONSIVE - MOBILE
   ============================================================ */

@media (max-width: 767px) {
  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final {
    padding:
      72px 18px
      84px;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__label {
    gap:
      10px;

    margin-bottom:
      20px;

    font-size:
      11px;

    letter-spacing:
      0.18em;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__label span {
    width:
      22px;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__title {
    font-size:
      clamp(31px, 9vw, 44px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -0.050em;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__lead {
    margin-top:
      24px;

    font-size:
      16px;

    line-height:
      1.68;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__actions {
    flex-direction:
      column;

    align-items:
      stretch;

    width:
      100%;

    margin-top:
      34px;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button {
    width:
      100%;

    min-height:
      52px;

    padding:
      0 20px;

    white-space:
      normal;

    text-align:
      center;
  }
}


/* ============================================================
   16. SMALL MOBILE
   ============================================================ */

@media (max-width: 420px) {
  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final {
    padding-left:
      16px;

    padding-right:
      16px;
  }
}


/* ============================================================
   17. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button,
  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button::after,
  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button span {
    transition:
      none !important;
  }

  .elementor-289 .elementor-element.elementor-element-959a508 .ap-services-final__button:hover {
    transform:
      none !important;
  }
}/* End custom CSS */