.elementor-3376 .elementor-element.elementor-element-f597afa{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-e9d4cb1{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-e9d031f{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-0a12909{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-5af6b21{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-d95cd10{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-2866eec{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-d370b76{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-d91ccbe{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-e4eb560{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-2ea3f90{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-b5ce930{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-455c3b5{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-16d4c81{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3376 .elementor-element.elementor-element-5c0d8f1{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}/* Start custom CSS for html, class: .elementor-element-c093e6c *//* =========================================================
   KNAJPA PRO — HERO 2026
   CLEAN RESPONSIVE VERSION
   ========================================================= */


/* =========================================================
   GLOBAL REVEAL
   Ten blok ma występować na stronie tylko JEDEN RAZ.
   ========================================================= */

.kp26-reveal {
  opacity: 0;

  transform:
    translate3d(0, 22px, 0);

  transition:
    opacity 650ms cubic-bezier(.2, .7, .2, 1),
    transform 650ms cubic-bezier(.2, .7, .2, 1);

  will-change:
    opacity,
    transform;
}


.kp26-reveal.kp26-reveal--left {
  transform:
    translate3d(-28px, 0, 0);
}


.kp26-reveal.kp26-reveal--right {
  transform:
    translate3d(28px, 0, 0);
}


.kp26-reveal.kp26-visible {
  opacity: 1;

  transform:
    translate3d(0, 0, 0);

  will-change: auto;
}


body.elementor-editor-active .kp26-reveal,
.elementor-edit-mode .kp26-reveal {
  opacity: 1 !important;

  transform: none !important;

  transition: none !important;

  will-change: auto !important;
}


/* =========================================================
   HERO
   ========================================================= */

.kp26-hero {
  --kp-green: #007569;
  --kp-green-dark: #005f56;
  --kp-green-soft: #eef8f6;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  --kp-border: #e6ebed;
  --kp-white: #ffffff;

  width: 100%;

  position: relative;

  overflow: hidden;

  background:
    var(--kp-white);

  color:
    var(--kp-text);

  font-family:
    inherit;
}


.kp26-hero *,
.kp26-hero *::before,
.kp26-hero *::after {
  box-sizing: border-box;
}


/* =========================================================
   MAIN LAYOUT
   ========================================================= */

.kp26-hero__inner {
  width:
    min(1240px, calc(100% - 48px));

  margin:
    0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 1.04fr)
    minmax(430px, .96fr);

  align-items: center;

  gap:
    clamp(48px, 5vw, 76px);

  padding:
    clamp(62px, 6vw, 88px)
    0
    clamp(58px, 6vw, 82px);
}


/* =========================================================
   CONTENT
   ========================================================= */

.kp26-hero__content {
  min-width: 0;

  position: relative;

  z-index: 3;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.kp26-hero__eyebrow {
  width: fit-content;

  display: inline-flex;

  align-items: center;

  gap: 9px;

  margin:
    0
    0
    21px;

  padding:
    9px
    14px;

  border-radius:
    999px;

  background:
    var(--kp-green-soft);

  color:
    var(--kp-green-dark);

  font-size:
    13px;

  line-height:
    1;

  font-weight:
    600;
}


.kp26-hero__eyebrow-dot {
  width: 7px;
  height: 7px;

  flex:
    0 0 7px;

  border-radius:
    50%;

  background:
    var(--kp-orange);
}


/* =========================================================
   H1
   ========================================================= */

.kp26-hero__title {
  max-width:
    670px;

  margin: 0;

  color:
    var(--kp-text);

  font-family:
    inherit;

  font-size:
    clamp(40px, 3.05vw, 49px);

  line-height:
    1.095;

  letter-spacing:
    -.035em;

  font-weight:
    700;
}


.kp26-hero__title span {
  color:
    var(--kp-green);
}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.kp26-hero__description {
  max-width:
    630px;

  margin:
    24px
    0
    0;

  color:
    var(--kp-muted);

  font-family:
    inherit;

  font-size:
    clamp(16.5px, 1.25vw, 18px);

  line-height:
    1.62;

  font-weight:
    400;
}


/* =========================================================
   CTA
   ========================================================= */

.kp26-hero__actions {
  display: flex;

  flex-wrap: wrap;

  align-items: center;

  gap: 11px;

  margin-top:
    30px;
}


.kp26-hero__button {
  min-width: 0;

  min-height:
    56px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    8px
    22px;

  border-radius:
    999px;

  font-family:
    inherit;

  font-size:
    14.5px;

  line-height:
    1.25;

  font-weight:
    650;

  text-decoration:
    none !important;

  white-space:
    normal;

  cursor:
    pointer;

  transition:
    transform 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}


.kp26-hero__button-text {
  min-width: 0;

  white-space:
    normal;
}


/* =========================================================
   PRIMARY CTA
   ========================================================= */

.kp26-hero__button--primary {
  gap: 16px;

  padding-left:
    24px;

  padding-right:
    8px;

  border:
    1px solid var(--kp-green);

  background:
    var(--kp-green);

  color:
    #ffffff !important;

  box-shadow:
    0 11px 28px
    rgba(0, 117, 105, .16);
}


.kp26-hero__button--primary:hover {
  transform:
    translateY(-2px);

  background:
    var(--kp-green-dark);

  border-color:
    var(--kp-green-dark);

  box-shadow:
    0 15px 34px
    rgba(0, 117, 105, .22);

  color:
    #ffffff !important;
}


/* =========================================================
   CTA ICON
   ========================================================= */

.kp26-hero__button-icon {
  width: 40px;
  height: 40px;

  flex:
    0 0 40px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius:
    50%;

  background:
    var(--kp-orange);

  transition:
    transform 180ms ease,
    background-color 180ms ease;
}


.kp26-hero__button-icon svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: #ffffff;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}


.kp26-hero__button--primary:hover
.kp26-hero__button-icon {
  transform:
    translateX(3px);

  background:
    var(--kp-orange-dark);
}


/* =========================================================
   SECONDARY CTA
   ========================================================= */

.kp26-hero__button--secondary {
  border:
    1px solid #dce3e6;

  background:
    #ffffff;

  color:
    var(--kp-text) !important;
}


.kp26-hero__button--secondary:hover {
  transform:
    translateY(-2px);

  border-color:
    #bdcacd;

  background:
    #f8faf9;

  box-shadow:
    0 9px 22px
    rgba(21, 21, 47, .07);

  color:
    var(--kp-text) !important;
}


/* =========================================================
   FOCUS
   ========================================================= */

.kp26-hero__button:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset:
    4px;
}


/* =========================================================
   SOCIAL PROOF
   ========================================================= */

.kp26-hero__social-proof {
  display: flex;

  align-items: center;

  gap: 13px;

  margin-top:
    32px;
}


/* LOGOS */

.kp26-hero__client-logos {
  display: flex;

  align-items: center;

  padding-left:
    7px;
}


.kp26-hero__client-logo {
  width: 38px;
  height: 38px;

  display: flex;

  align-items: center;

  justify-content: center;

  margin-left:
    -7px;

  padding:
    6px;

  overflow:
    hidden;

  border:
    2px solid #ffffff;

  border-radius:
    50%;

  background:
    #ffffff;

  box-shadow:
    0 4px 13px
    rgba(21, 21, 47, .10);
}


.kp26-hero__client-logo img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit:
    contain;
}


/* SOCIAL TEXT */

.kp26-hero__social-text {
  display: flex;

  flex-direction: column;

  gap: 2px;
}


.kp26-hero__social-text strong {
  color:
    var(--kp-text);

  font-size:
    13px;

  line-height:
    1.2;

  font-weight:
    700;
}


.kp26-hero__social-text span {
  color:
    var(--kp-muted);

  font-size:
    11px;

  line-height:
    1.2;
}


/* DIVIDER */

.kp26-hero__social-divider {
  width: 1px;
  height: 31px;

  margin:
    0 2px;

  background:
    var(--kp-border);
}


/* RATING */

.kp26-hero__rating {
  display: flex;

  flex-direction: column;

  gap: 3px;
}


.kp26-hero__stars {
  color:
    var(--kp-orange);

  font-size:
    14px;

  line-height:
    1;

  letter-spacing:
    1px;
}


.kp26-hero__rating-label {
  color:
    var(--kp-muted);

  font-size:
    10.5px;

  line-height:
    1.1;
}


/* =========================================================
   VISUAL
   ========================================================= */

.kp26-hero__visual {
  min-width: 0;

  position: relative;
}


/* =========================================================
   PHOTO
   ========================================================= */

.kp26-hero__photo-wrap {
  width: 100%;

  aspect-ratio:
    .91;

  position: relative;

  border-radius:
    34px;

  isolation:
    isolate;
}


.kp26-hero__photo-wrap::before {
  content: "";

  position: absolute;

  z-index: -1;

  width: 82%;
  height: 74%;

  top: 12%;
  right: -7%;

  border-radius:
    50%;

  background:
    rgba(0, 117, 105, .11);

  filter:
    blur(55px);

  pointer-events:
    none;
}


.kp26-hero__photo {
  display: block;

  width: 100%;
  height: 100%;

  object-fit:
    cover;

  object-position:
    center;

  border-radius:
    34px;
}


.kp26-hero__photo-overlay {
  position: absolute;

  inset: 0;

  pointer-events:
    none;

  border-radius:
    34px;

  background:
    linear-gradient(
      180deg,
      rgba(21, 21, 47, 0) 46%,
      rgba(21, 21, 47, .13) 100%
    );
}


/* =========================================================
   FLOATING CARDS
   ========================================================= */

.kp26-hero__float {
  position: absolute;

  z-index: 5;

  display: flex;

  align-items: center;

  gap: 11px;

  padding:
    11px
    14px
    11px
    11px;

  border:
    1px solid rgba(255, 255, 255, .78);

  border-radius:
    18px;

  background:
    rgba(255, 255, 255, .94);

  box-shadow:
    0 16px 40px rgba(21, 21, 47, .12),
    0 2px 7px rgba(21, 21, 47, .05);

  backdrop-filter:
    blur(12px);

  -webkit-backdrop-filter:
    blur(12px);

  animation:
    kp26HeroFloat 5s ease-in-out infinite;
}


.kp26-hero__float-icon {
  width: 36px;
  height: 36px;

  flex:
    0 0 36px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius:
    11px;

  background:
    var(--kp-green-soft);

  color:
    var(--kp-green);
}


.kp26-hero__float-icon svg {
  width: 19px;
  height: 19px;

  fill: none;

  stroke:
    currentColor;

  stroke-width:
    1.7;

  stroke-linecap:
    round;

  stroke-linejoin:
    round;
}


.kp26-hero__float-copy {
  display: flex;

  flex-direction: column;

  gap: 2px;

  min-width: 0;
}


.kp26-hero__float strong {
  color:
    var(--kp-text);

  font-size:
    13px;

  line-height:
    1.2;

  font-weight:
    700;
}


.kp26-hero__float small {
  white-space:
    nowrap;

  color:
    var(--kp-muted);

  font-size:
    10.5px;

  line-height:
    1.3;
}


.kp26-hero__float--sales {
  top: 13%;
  left: -29px;

  animation-delay:
    0s;
}


.kp26-hero__float--kitchen {
  top: 39%;
  right: -21px;

  animation-delay:
    1.2s;
}


.kp26-hero__float--stock {
  bottom: 25%;
  left: -33px;

  animation-delay:
    2.2s;
}


@keyframes kp26HeroFloat {

  0%,
  100% {
    transform:
      translateY(0);
  }

  50% {
    transform:
      translateY(-5px);
  }

}


/* =========================================================
   SUPPORT
   ========================================================= */

.kp26-hero__support {
  position: absolute;

  z-index: 6;

  right: 19px;
  bottom: 20px;

  max-width:
    225px;

  display: flex;

  align-items:
    flex-start;

  gap: 10px;

  padding:
    13px
    15px;

  border-radius:
    18px;

  background:
    var(--kp-navy);

  color:
    #ffffff;

  box-shadow:
    0 15px 35px
    rgba(21, 21, 47, .23);
}


.kp26-hero__support-dot {
  width: 8px;
  height: 8px;

  flex:
    0 0 8px;

  margin-top:
    4px;

  border-radius:
    50%;

  background:
    #63d39e;

  box-shadow:
    0 0 0 4px
    rgba(99, 211, 158, .15);
}


.kp26-hero__support-copy {
  display: flex;

  flex-direction: column;

  gap: 3px;
}


.kp26-hero__support strong {
  font-size:
    12.5px;

  line-height:
    1.2;

  font-weight:
    700;
}


.kp26-hero__support small {
  color:
    rgba(255, 255, 255, .74);

  font-size:
    10px;

  line-height:
    1.35;
}


/* =========================================================
   SYSTEM LOGOS
   ========================================================= */

.kp26-hero__systems {
  display: flex;

  align-items: center;

  justify-content:
    flex-end;

  gap: 9px;

  margin-top:
    13px;
}


.kp26-hero__systems-label {
  margin-right:
    4px;

  color:
    var(--kp-muted);

  font-size:
    11px;

  line-height:
    1;
}


.kp26-hero__system {
  min-width:
    82px;

  height:
    38px;

  display: flex;

  align-items: center;

  justify-content: center;

  padding:
    8px
    14px;

  border-radius:
    12px;
}


.kp26-hero__system img {
  display: block;

  width: auto;

  max-width:
    82px;

  max-height:
    19px;

  object-fit:
    contain;
}


.kp26-hero__system--syrve {
  background:
    var(--kp-navy);
}


.kp26-hero__system--gopos {
  border:
    1px solid var(--kp-border);

  background:
    #ffffff;
}


/* =========================================================
   REVEAL ORDER
   ========================================================= */

.kp26-hero__eyebrow.kp26-reveal {
  transition-delay:
    0ms;
}


.kp26-hero__title.kp26-reveal {
  transition-delay:
    70ms;
}


.kp26-hero__description.kp26-reveal {
  transition-delay:
    140ms;
}


.kp26-hero__actions.kp26-reveal {
  transition-delay:
    210ms;
}


.kp26-hero__social-proof.kp26-reveal {
  transition-delay:
    260ms;
}


.kp26-hero__visual.kp26-reveal {
  transition-delay:
    100ms;
}


/* =========================================================
   SMALL LAPTOP / TABLET WIDE
   ========================================================= */

@media (max-width: 1024px) and (min-width: 901px) {

  .kp26-hero__inner {
    width:
      min(calc(100% - 40px), 920px);

    grid-template-columns:
      minmax(0, 1fr)
      minmax(350px, .88fr);

    gap:
      40px;

    padding-top:
      58px;

    padding-bottom:
      60px;
  }


  .kp26-hero__title {
    font-size:
      clamp(37px, 4.2vw, 44px);
  }


  .kp26-hero__description {
    font-size:
      16px;
  }


  .kp26-hero__photo-wrap,
  .kp26-hero__photo,
  .kp26-hero__photo-overlay {
    border-radius:
      30px;
  }


  .kp26-hero__float--sales {
    left:
      -18px;
  }


  .kp26-hero__float--kitchen {
    right:
      -12px;
  }


  .kp26-hero__float--stock {
    left:
      -18px;
  }

}


/* =========================================================
   WĄSKI TABLET — 768–900 px
   ========================================================= */

@media (min-width: 768px) and (max-width: 900px) {

  .kp26-hero__inner {
    width:
      min(calc(100% - 48px), 720px);

    grid-template-columns:
      minmax(0, 1fr);

    gap:
      44px;

    padding:
      54px
      0
      62px;
  }


  .kp26-hero__content {
    width:
      100%;

    max-width:
      680px;

    margin:
      0 auto;
  }


  .kp26-hero__title {
    max-width:
      650px;

    font-size:
      clamp(39px, 6vw, 46px);
  }


  .kp26-hero__description {
    max-width:
      620px;

    font-size:
      16.5px;
  }


  .kp26-hero__actions {
    max-width:
      620px;
  }


  .kp26-hero__visual {
    width:
      min(100%, 650px);

    margin:
      0 auto;
  }


  .kp26-hero__photo-wrap {
    aspect-ratio:
      .95;
  }


  .kp26-hero__photo-wrap,
  .kp26-hero__photo,
  .kp26-hero__photo-overlay {
    border-radius:
      30px;
  }


  .kp26-hero__systems {
    justify-content:
      flex-start;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-hero__inner {
    width:
      calc(100% - 32px);

    display: flex;

    flex-direction:
      column;

    gap:
      38px;

    padding:
      38px
      0
      45px;
  }


  .kp26-hero__content {
    width:
      100%;
  }


  .kp26-hero__eyebrow {
    margin-bottom:
      18px;

    padding:
      8px
      12px;

    font-size:
      11.5px;
  }


  .kp26-hero__title {
    max-width:
      none;

    font-size:
      clamp(31px, 8.3vw, 39px);

    line-height:
      1.09;

    letter-spacing:
      -.03em;
  }


  .kp26-hero__description {
    max-width:
      none;

    margin-top:
      19px;

    font-size:
      15.5px;

    line-height:
      1.55;
  }


  /* CTA */

  .kp26-hero__actions {
    width:
      100%;

    flex-direction:
      column;

    align-items:
      stretch;

    margin-top:
      26px;
  }


  .kp26-hero__button {
    width:
      100%;

    max-width:
      100%;

    min-width:
      0;

    min-height:
      56px;
  }


  .kp26-hero__button--primary {
    justify-content:
      space-between;

    gap:
      12px;

    padding:
      8px
      8px
      8px
      18px;

    text-align:
      left;
  }


  .kp26-hero__button-text {
    flex:
      1 1 0%;

    min-width:
      0;

    white-space:
      normal;
  }


  .kp26-hero__button-icon {
    width:
      38px;

    height:
      38px;

    flex:
      0 0 38px;
  }


  /* =======================================================
     SOCIAL PROOF — JEDNA LINIA
     ======================================================= */

  .kp26-hero__social-proof {
    width: 100%;

    display: flex;

    align-items: center;

    flex-wrap: nowrap;

    gap: 9px;

    margin-top:
      27px;

    overflow:
      visible;
  }


  .kp26-hero__client-logos {
    flex:
      0 0 auto;

    display:
      flex;

    align-items:
      center;

    padding-left:
      6px;
  }


  .kp26-hero__client-logo {
    width:
      30px;

    height:
      30px;

    margin-left:
      -6px;

    padding:
      4px;
  }


  .kp26-hero__social-text {
    flex:
      0 0 auto;

    display:
      block;
  }


  .kp26-hero__social-text strong {
    display:
      inline;

    font-size:
      11.5px;

    line-height:
      1.2;

    white-space:
      nowrap;
  }


  .kp26-hero__social-text span {
    display:
      none;
  }


  .kp26-hero__social-divider {
    width:
      1px;

    height:
      24px;

    flex:
      0 0 1px;

    display:
      block;

    margin:
      0 1px;

    background:
      var(--kp-border);
  }


  .kp26-hero__rating {
    min-width:
      0;

    flex:
      1 1 auto;

    display:
      flex;

    flex-direction:
      row;

    align-items:
      center;

    gap:
      6px;
  }


  .kp26-hero__stars {
    flex:
      0 0 auto;

    font-size:
      11px;

    line-height:
      1;

    letter-spacing:
      .2px;

    white-space:
      nowrap;
  }


  .kp26-hero__rating-label {
    min-width:
      0;

    font-size:
      9.5px;

    line-height:
      1.1;

    white-space:
      nowrap;
  }


  /* VISUAL */

  .kp26-hero__visual {
    width:
      100%;
  }


  .kp26-hero__photo-wrap {
    aspect-ratio:
      .86;
  }


  .kp26-hero__photo-wrap,
  .kp26-hero__photo,
  .kp26-hero__photo-overlay {
    border-radius:
      26px;
  }


  /* FLOAT */

  .kp26-hero__float {
    padding:
      9px
      11px
      9px
      9px;

    border-radius:
      14px;
  }


  .kp26-hero__float-icon {
    width:
      31px;

    height:
      31px;

    flex-basis:
      31px;

    border-radius:
      9px;
  }


  .kp26-hero__float-icon svg {
    width:
      16px;

    height:
      16px;
  }


  .kp26-hero__float strong {
    font-size:
      11px;
  }


  .kp26-hero__float small {
    font-size:
      9px;
  }


  .kp26-hero__float--sales {
    top:
      18px;

    left:
      -4px;
  }


  .kp26-hero__float--kitchen {
    top:
      36%;

    right:
      -4px;
  }


  .kp26-hero__float--stock {
    display:
      none;
  }


  /* SUPPORT */

  .kp26-hero__support {
    right:
      12px;

    bottom:
      13px;

    max-width:
      205px;

    padding:
      11px
      13px;

    border-radius:
      15px;
  }


  .kp26-hero__support strong {
    font-size:
      11px;
  }


  .kp26-hero__support small {
    font-size:
      9px;
  }


  /* SYSTEMS */

  .kp26-hero__systems {
    justify-content:
      flex-start;

    margin-top:
      12px;
  }


  /* krótsze animacje */

  .kp26-hero__title.kp26-reveal {
    transition-delay:
      50ms;
  }


  .kp26-hero__description.kp26-reveal {
    transition-delay:
      100ms;
  }


  .kp26-hero__actions.kp26-reveal {
    transition-delay:
      150ms;
  }


  .kp26-hero__social-proof.kp26-reveal {
    transition-delay:
      200ms;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .kp26-hero__inner {
    width:
      calc(100% - 26px);
  }


  .kp26-hero__title {
    font-size:
      30px;
  }


  .kp26-hero__float--kitchen {
    display:
      none;
  }


  .kp26-hero__button {
    font-size:
      13.5px;
  }


  .kp26-hero__social-proof {
    gap:
      7px;
  }


  .kp26-hero__client-logo {
    width:
      28px;

    height:
      28px;
  }


  .kp26-hero__social-text strong {
    font-size:
      11px;
  }


  .kp26-hero__stars {
    font-size:
      10px;
  }


  .kp26-hero__rating-label {
    font-size:
      9px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp26-reveal {
    opacity:
      1 !important;

    transform:
      none !important;

    transition:
      none !important;

    will-change:
      auto !important;
  }


  .kp26-hero__float {
    animation:
      none !important;
  }


  .kp26-hero__button,
  .kp26-hero__button-icon {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f597afa */body.elementor-editor-active .kp26-reveal,
body.elementor-editor-active .kp26-reveal--left,
body.elementor-editor-active .kp26-reveal--right,
.elementor-edit-mode .kp26-reveal,
.elementor-edit-mode .kp26-reveal--left,
.elementor-edit-mode .kp26-reveal--right {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  will-change: auto !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-643a398 *//* =========================================================
   KNAJPA PRO — RUCHOMY PASEK LOGOTYPÓW
   większe logotypy + wolniejszy ruch
   ========================================================= */

.kp26-logo-marquee {
  --kp-logo-bg: #ffffff;
  --kp-logo-border: #edf0f1;

  width: 100%;
  position: relative;
  overflow: hidden;

  margin: 0 !important;
  padding: 0 !important;

  background: var(--kp-logo-bg);

  border-top: 1px solid var(--kp-logo-border);
  border-bottom: 1px solid var(--kp-logo-border);

  font-family: inherit;
}

.kp26-logo-marquee *,
.kp26-logo-marquee *::before,
.kp26-logo-marquee *::after {
  box-sizing: border-box;
}


/* =========================================================
   VIEWPORT
   ========================================================= */

.kp26-logo-marquee__viewport {
  width: 100%;
  max-width: 100%;

  position: relative;
  overflow: hidden;

  padding: 28px 0;
}


/* delikatne wygaszenie po bokach */

.kp26-logo-marquee__viewport::before,
.kp26-logo-marquee__viewport::after {
  content: "";

  position: absolute;

  top: 0;
  bottom: 0;

  width: clamp(50px, 7vw, 120px);

  z-index: 5;

  pointer-events: none;
}

.kp26-logo-marquee__viewport::before {
  left: 0;

  background:
    linear-gradient(
      90deg,
      #ffffff 8%,
      rgba(255,255,255,.95) 25%,
      rgba(255,255,255,.48) 65%,
      rgba(255,255,255,0) 100%
    );
}

.kp26-logo-marquee__viewport::after {
  right: 0;

  background:
    linear-gradient(
      270deg,
      #ffffff 8%,
      rgba(255,255,255,.95) 25%,
      rgba(255,255,255,.48) 65%,
      rgba(255,255,255,0) 100%
    );
}


/* =========================================================
   TRACK
   ========================================================= */

.kp26-logo-marquee__track {
  width: max-content;

  display: flex;
  align-items: center;

  animation:
    kp26LogoMarqueeMove 82s linear infinite;

  will-change: transform;
}


/* =========================================================
   GROUP
   ========================================================= */

.kp26-logo-marquee__group {
  display: flex;
  align-items: center;

  gap: clamp(48px, 5vw, 82px);

  padding-right: clamp(48px, 5vw, 82px);

  flex-shrink: 0;
}


/* =========================================================
   POJEDYNCZE LOGO
   ========================================================= */

.kp26-logo-marquee__item {
  --kp-logo-scale: 1;

  width: 158px;
  height: 72px;

  flex: 0 0 158px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.kp26-logo-marquee__item img {
  display: block;

  width: auto;
  height: auto;

  max-width: 142px;
  max-height: 50px;

  object-fit: contain;

  transform:
    scale(var(--kp-logo-scale));

  transform-origin: center;

  opacity: .82;

  filter: grayscale(100%);

  transition:
    opacity 180ms ease,
    filter 180ms ease,
    transform 180ms ease;
}


/* =========================================================
   ANIMACJA
   ========================================================= */

@keyframes kp26LogoMarqueeMove {

  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }

}


/* =========================================================
   HOVER DESKTOP
   ========================================================= */

@media (hover: hover) {

  .kp26-logo-marquee__viewport:hover
  .kp26-logo-marquee__track {
    animation-play-state: paused;
  }

  .kp26-logo-marquee__item:hover img {
    opacity: 1;

    filter: grayscale(0%);

    transform:
      scale(calc(var(--kp-logo-scale) * 1.08));
  }

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

  .kp26-logo-marquee__viewport {
    padding: 24px 0;
  }

  .kp26-logo-marquee__group {
    gap: 42px;
    padding-right: 42px;
  }

  .kp26-logo-marquee__item {
    width: 142px;
    height: 66px;

    flex-basis: 142px;
  }

  .kp26-logo-marquee__item img {
    max-width: 128px;
    max-height: 46px;
  }

  .kp26-logo-marquee__track {
    animation-duration: 76s;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-logo-marquee__viewport {
    padding: 20px 0;
  }

  .kp26-logo-marquee__group {
    gap: 36px;
    padding-right: 36px;
  }

  .kp26-logo-marquee__item {
    width: 124px;
    height: 58px;

    flex-basis: 124px;
  }

  .kp26-logo-marquee__item img {
    max-width: 110px;
    max-height: 40px;
  }

  .kp26-logo-marquee__viewport::before,
  .kp26-logo-marquee__viewport::after {
    width: 42px;
  }

  .kp26-logo-marquee__track {
    animation-duration: 68s;
  }

}


/* =========================================================
   MAŁE TELEFONY
   ========================================================= */

@media (max-width: 390px) {

  .kp26-logo-marquee__group {
    gap: 30px;
    padding-right: 30px;
  }

  .kp26-logo-marquee__item {
    width: 112px;
    height: 54px;

    flex-basis: 112px;
  }

  .kp26-logo-marquee__item img {
    max-width: 100px;
    max-height: 36px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp26-logo-marquee__track {
    animation: none !important;
  }

  .kp26-logo-marquee__item img {
    transition: none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-53d103a *//* =========================================================
   KNAJPA PRO — SEKCJA LICZBY
   Brand: zielony #007569 / pomarańczowy #fe5e18
   Układ inspirowany referencją
   ========================================================= */

.kp26-numbers {
  --kp-num-green: #007569;
  --kp-num-orange: #fe5e18;
  --kp-num-white: #ffffff;

  width: 100%;
  position: relative;

  margin: 0 !important;
  padding: 0 !important;

  background: var(--kp-num-green);
  color: var(--kp-num-white);

  font-family: inherit;

  overflow: hidden;
}


.kp26-numbers *,
.kp26-numbers *::before,
.kp26-numbers *::after {
  box-sizing: border-box;
}


/* =========================================================
   GŁÓWNY UKŁAD
   ========================================================= */

.kp26-numbers__inner {
  width: min(1240px, calc(100% - 48px));

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 2.15fr)
    repeat(3, minmax(0, 0.82fr));

  align-items: stretch;
}


/* =========================================================
   KOLUMNY
   ========================================================= */

.kp26-numbers__intro,
.kp26-numbers__stat {
  min-height: 270px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  padding:
    clamp(40px, 4vw, 54px)
    clamp(28px, 3vw, 42px);
}


/* separatory dokładnie jako element układu */

.kp26-numbers__stat {
  border-left:
    1px solid rgba(255, 255, 255, 0.18);
}


/* =========================================================
   TEKST PO LEWEJ
   ========================================================= */

.kp26-numbers__intro {
  padding-left: 0;
  padding-right: clamp(48px, 5vw, 72px);
}


.kp26-numbers__intro p {
  max-width: 555px;

  margin: 0 !important;

  color: #ffffff !important;

  font-family: inherit !important;

  font-size:
    clamp(18px, 1.5vw, 21px) !important;

  line-height: 1.55 !important;

  font-weight: 400 !important;

  letter-spacing: -0.012em;
}


/* =========================================================
   MAŁY LABEL
   ========================================================= */

.kp26-numbers__label {
  margin-bottom: 19px;

  color:
    rgba(255, 255, 255, 0.68);

  font-family: inherit;

  font-size: 11px;
  line-height: 1;

  font-weight: 600;

  letter-spacing: 0.06em;

  text-transform: uppercase;
}


/* =========================================================
   DUŻE LICZBY
   ========================================================= */

.kp26-numbers__value {
  display: block;

  margin: 0;

  color: #ffffff;

  font-family: inherit;

  font-size:
    clamp(46px, 4vw, 60px);

  line-height: 0.96;

  font-weight: 700;

  letter-spacing: -0.045em;

  transition:
    transform 220ms ease,
    color 220ms ease;
}


/* plus jako firmowy pomarańczowy akcent */

.kp26-numbers__value span {
  color: var(--kp-num-orange);
}


/* =========================================================
   OPIS POD LICZBĄ
   ========================================================= */

.kp26-numbers__caption {
  max-width: 170px;

  margin-top: 17px;

  color:
    rgba(255, 255, 255, 0.73);

  font-family: inherit;

  font-size: 13px;
  line-height: 1.45;

  font-weight: 400;
}


/* =========================================================
   SUBTELNA INTERAKCJA
   ========================================================= */

@media (hover: hover) {

  .kp26-numbers__stat:hover
  .kp26-numbers__value {
    transform: translateY(-3px);
  }


  .kp26-numbers__stat:hover
  .kp26-numbers__label {
    color: #ffffff;
  }

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

  .kp26-numbers__inner {
    width:
      min(100% - 40px, 920px);

    grid-template-columns:
      minmax(0, 1.6fr)
      repeat(3, minmax(0, 1fr));
  }


  .kp26-numbers__intro,
  .kp26-numbers__stat {
    min-height: 245px;

    padding:
      34px
      24px;
  }


  .kp26-numbers__intro {
    padding-left: 0;
    padding-right: 35px;
  }


  .kp26-numbers__intro p {
    font-size:
      17px !important;

    line-height:
      1.52 !important;
  }


  .kp26-numbers__value {
    font-size: 44px;
  }


  .kp26-numbers__caption {
    font-size: 12px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-numbers__inner {
    width:
      calc(100% - 32px);

    display: grid;

    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  /* tekst na całą szerokość */

  .kp26-numbers__intro {
    grid-column:
      1 / -1;

    min-height: auto;

    padding:
      42px
      0
      35px;

    border-bottom:
      1px solid rgba(255, 255, 255, 0.18);
  }


  .kp26-numbers__intro p {
    max-width: none;

    font-size:
      16.5px !important;

    line-height:
      1.55 !important;
  }


  /* 460 i 10 obok siebie */

  .kp26-numbers__stat {
    min-height: 175px;

    padding:
      27px
      18px;

    border-left: 0;

    border-bottom:
      1px solid rgba(255, 255, 255, 0.18);
  }


  .kp26-numbers__stat:nth-of-type(2) {
    padding-left: 0;

    border-right:
      1px solid rgba(255, 255, 255, 0.18);
  }


  .kp26-numbers__stat:nth-of-type(3) {
    padding-right: 0;
  }


  /* 24/7 na dole przez całą szerokość */

  .kp26-numbers__stat:last-child {
    grid-column:
      1 / -1;

    min-height: 145px;

    padding-left: 0;
    padding-right: 0;

    border-bottom: 0;
  }


  .kp26-numbers__label {
    margin-bottom: 14px;

    font-size: 9.5px;
  }


  .kp26-numbers__value {
    font-size: 42px;
  }


  .kp26-numbers__caption {
    max-width: 150px;

    margin-top: 12px;

    font-size: 12px;
  }


  .kp26-numbers__stat:last-child
  .kp26-numbers__caption {
    max-width: none;
  }

}


/* =========================================================
   MAŁE TELEFONY
   ========================================================= */

@media (max-width: 390px) {

  .kp26-numbers__inner {
    width:
      calc(100% - 26px);
  }


  .kp26-numbers__stat {
    padding:
      24px
      13px;
  }


  .kp26-numbers__stat:nth-of-type(2) {
    padding-left: 0;
  }


  .kp26-numbers__stat:nth-of-type(3) {
    padding-right: 0;
  }


  .kp26-numbers__value {
    font-size: 38px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6675cd8 *//* =========================================================
   KNAJPA PRO — SYSTEM DOPASOWANY DO LOKALU
   CLEAN RESPONSIVE VERSION
   ========================================================= */

.kp26-fit {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  width: 100%;

  position: relative;

  margin: 0 !important;

  padding: 0 !important;

  background: #ffffff;

  color: var(--kp-text);

  font-family: inherit;
}


.kp26-fit *,
.kp26-fit *::before,
.kp26-fit *::after {
  box-sizing: border-box;
}


/* =========================================================
   INNER
   ========================================================= */

.kp26-fit__inner {
  width:
    min(1240px, calc(100% - 48px));

  margin:
    0 auto;

  padding:
    clamp(72px, 6.5vw, 92px)
    0
    clamp(78px, 7vw, 100px);
}


/* =========================================================
   HEADER
   ========================================================= */

.kp26-fit__header {
  max-width: 900px;

  margin:
    0
    auto
    48px;

  text-align: center;
}


.kp26-fit__title {
  max-width: 800px;

  margin:
    0 auto;

  color: var(--kp-text);

  font-family: inherit;

  font-size:
    clamp(34px, 3vw, 42px);

  line-height: 1.1;

  font-weight: 700;

  letter-spacing: -.035em;
}


.kp26-fit__lead {
  max-width: 800px;

  margin:
    21px
    auto
    0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    clamp(15.5px, 1.15vw, 17px) !important;

  line-height:
    1.62 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   GRID
   ========================================================= */

.kp26-fit__grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 18px;
}


/* =========================================================
   CARD
   ========================================================= */

.kp26-fit__card {
  min-width: 0;

  min-height: 174px;

  display: grid;

  grid-template-columns:
    92px
    minmax(0, 1fr);

  align-items: center;

  gap: 24px;

  padding:
    26px
    30px;

  border:
    1px solid rgba(21, 21, 47, .08);

  border-radius:
    26px;

  background:
    #ffffff;

  box-shadow:
    0 12px 34px
    rgba(21, 21, 47, .055);

  transition:
    transform 220ms ease,
    box-shadow 220ms ease,
    border-color 220ms ease;
}


/* =========================================================
   NUMBER
   ========================================================= */

.kp26-fit__number {
  width: 84px;
  height: 84px;

  display: flex;

  align-items: center;

  justify-content: center;

  position: relative;

  border-radius:
    22px;

  background:
    rgba(0, 117, 105, .08);

  color:
    var(--kp-green);

  font-family:
    inherit;

  font-size:
    24px;

  line-height:
    1;

  font-weight:
    700;

  letter-spacing:
    -.03em;
}


.kp26-fit__number::after {
  content: "";

  position: absolute;

  width: 1px;

  top: 5px;
  bottom: 5px;

  right: -13px;

  background:
    rgba(21, 21, 47, .10);
}


/* =========================================================
   CARD CONTENT
   ========================================================= */

.kp26-fit__card-content {
  min-width: 0;
}


.kp26-fit__card-title {
  margin:
    0
    0
    8px;

  color:
    var(--kp-text);

  font-family:
    inherit;

  font-size:
    clamp(18px, 1.35vw, 20px);

  line-height:
    1.2;

  font-weight:
    700;

  letter-spacing:
    -.02em;
}


.kp26-fit__card-text {
  max-width:
    455px;

  margin:
    0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.58 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   CARD 06
   ========================================================= */

.kp26-fit__card--accent
.kp26-fit__number {
  background:
    var(--kp-green);

  color:
    #ffffff;
}


.kp26-fit__card--accent
.kp26-fit__number::after {
  background:
    rgba(0, 117, 105, .18);
}


/* =========================================================
   CARD HOVER
   ========================================================= */

@media (hover: hover) {

  .kp26-fit__card:hover {
    transform:
      translateY(-3px);

    border-color:
      rgba(0, 117, 105, .16);

    box-shadow:
      0 18px 42px
      rgba(21, 21, 47, .085);
  }

}


/* =========================================================
   CALLOUT
   ========================================================= */

.kp26-fit__callout {
  max-width:
    1000px;

  margin:
    46px
    auto
    0;

  display: flex;

  align-items: center;

  justify-content:
    space-between;

  gap:
    36px;

  padding:
    30px
    30px
    30px
    38px;

  border-radius:
    28px;

  background:
    var(--kp-green);

  box-shadow:
    0 18px 44px
    rgba(0, 117, 105, .14);
}


.kp26-fit__callout-text {
  min-width: 0;

  max-width:
    620px;

  margin:
    0 !important;

  color:
    #ffffff !important;

  font-family:
    inherit !important;

  font-size:
    clamp(15px, 1.1vw, 16.5px) !important;

  line-height:
    1.58 !important;

  font-weight:
    450 !important;
}


/* =========================================================
   CTA
   ========================================================= */

.kp26-fit .kp26-fit__cta,
.kp26-fit .kp26-fit__cta:visited {
  width:
    auto;

  max-width:
    100%;

  min-width:
    0;

  min-height:
    56px;

  flex:
    0 1 auto;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    13px;

  padding:
    8px
    8px
    8px
    20px;

  margin: 0;

  border:
    1px solid
    rgba(255, 255, 255, .85) !important;

  border-radius:
    999px !important;

  background:
    #ffffff !important;

  color:
    var(--kp-green) !important;

  font-family:
    inherit !important;

  font-size:
    13.5px !important;

  line-height:
    1.3 !important;

  font-weight:
    700 !important;

  text-align:
    left;

  text-decoration:
    none !important;

  white-space:
    normal;

  box-shadow:
    0 10px 26px
    rgba(0, 0, 0, .10);

  cursor:
    pointer;

  transition:
    transform 180ms ease,
    box-shadow 180ms ease;
}


.kp26-fit__cta-text {
  min-width: 0;

  flex:
    1 1 0%;

  white-space:
    normal;

  overflow-wrap:
    normal;
}


/* =========================================================
   CTA ICON
   ========================================================= */

.kp26-fit .kp26-fit__cta-icon {
  width:
    40px;

  height:
    40px;

  flex:
    0 0 40px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  border-radius:
    50%;

  background:
    var(--kp-orange) !important;

  transition:
    transform 180ms ease,
    background-color 180ms ease;
}


.kp26-fit .kp26-fit__cta-icon svg {
  width:
    18px;

  height:
    18px;

  fill:
    none;

  stroke:
    #ffffff !important;

  stroke-width:
    2;

  stroke-linecap:
    round;

  stroke-linejoin:
    round;
}


/* =========================================================
   CTA STATES
   ========================================================= */

.kp26-fit .kp26-fit__cta:hover {
  border-color:
    #ffffff !important;

  background:
    #ffffff !important;

  color:
    var(--kp-green-dark) !important;

  transform:
    translateY(-2px);

  box-shadow:
    0 14px 30px
    rgba(0, 0, 0, .14);
}


.kp26-fit .kp26-fit__cta:hover
.kp26-fit__cta-icon {
  background:
    var(--kp-orange-dark) !important;

  transform:
    translateX(3px);
}


.kp26-fit .kp26-fit__cta:focus-visible {
  outline:
    3px solid
    #ffffff;

  outline-offset:
    4px;
}


/* =========================================================
   ANIMATION DELAYS
   ========================================================= */

.kp26-fit__card:nth-child(2) {
  transition-delay:
    60ms;
}


.kp26-fit__card:nth-child(3) {
  transition-delay:
    80ms;
}


.kp26-fit__card:nth-child(4) {
  transition-delay:
    120ms;
}


.kp26-fit__card:nth-child(5) {
  transition-delay:
    140ms;
}


.kp26-fit__card:nth-child(6) {
  transition-delay:
    180ms;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

  .kp26-fit__inner {
    width:
      min(calc(100% - 40px), 920px);
  }


  .kp26-fit__title {
    font-size:
      clamp(33px, 4.2vw, 40px);
  }


  .kp26-fit__card {
    grid-template-columns:
      74px
      minmax(0, 1fr);

    gap:
      20px;

    padding:
      24px
      22px;
  }


  .kp26-fit__number {
    width:
      68px;

    height:
      68px;

    border-radius:
      18px;

    font-size:
      20px;
  }


  .kp26-fit__number::after {
    right:
      -11px;
  }


  /* ważna poprawka:
     callout na tablecie przechodzi pionowo */

  .kp26-fit__callout {
    max-width:
      760px;

    flex-direction:
      column;

    align-items:
      flex-start;

    gap:
      22px;

    padding:
      30px;
  }


  .kp26-fit__callout-text {
    max-width:
      680px;
  }


  .kp26-fit .kp26-fit__cta {
    width:
      auto;

    max-width:
      100%;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-fit__inner {
    width:
      calc(100% - 32px);

    padding:
      48px
      0
      52px;
  }


  .kp26-fit__header {
    margin-bottom:
      30px;

    text-align:
      left;
  }


  .kp26-fit__title {
    max-width:
      none;

    margin:
      0;

    font-size:
      clamp(28px, 7.6vw, 34px);

    line-height:
      1.1;
  }


  .kp26-fit__title br {
    display:
      none;
  }


  .kp26-fit__lead {
    max-width:
      none;

    margin-top:
      18px !important;

    font-size:
      15px !important;

    line-height:
      1.55 !important;
  }


  /* GRID */

  .kp26-fit__grid {
    grid-template-columns:
      1fr;

    gap:
      13px;
  }


  /* CARD */

  .kp26-fit__card {
    min-height:
      auto;

    grid-template-columns:
      61px
      minmax(0, 1fr);

    gap:
      18px;

    padding:
      21px
      19px;

    border-radius:
      21px;
  }


  .kp26-fit__number {
    width:
      57px;

    height:
      57px;

    border-radius:
      16px;

    font-size:
      17px;
  }


  .kp26-fit__number::after {
    top:
      3px;

    bottom:
      3px;

    right:
      -10px;
  }


  .kp26-fit__card-title {
    margin-bottom:
      6px;

    font-size:
      17px;
  }


  .kp26-fit__card-text {
    font-size:
      14px !important;

    line-height:
      1.55 !important;
  }


  /* CALLOUT */

  .kp26-fit__callout {
    max-width:
      none;

    margin-top:
      28px;

    flex-direction:
      column;

    align-items:
      stretch;

    gap:
      21px;

    padding:
      24px
      20px;

    border-radius:
      22px;
  }


  .kp26-fit__callout-text {
    max-width:
      none;

    font-size:
      14.5px !important;

    line-height:
      1.55 !important;
  }


  .kp26-fit .kp26-fit__cta {
    width:
      100%;

    max-width:
      100%;

    min-width:
      0;

    justify-content:
      space-between;

    gap:
      12px;

    padding:
      8px
      8px
      8px
      17px;

    font-size:
      13px !important;
  }


  .kp26-fit__cta-text {
    min-width:
      0;

    flex:
      1 1 0%;

    white-space:
      normal;

    overflow-wrap:
      normal;
  }


  .kp26-fit .kp26-fit__cta-icon {
    width:
      38px;

    height:
      38px;

    flex:
      0 0 38px;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .kp26-fit__inner {
    width:
      calc(100% - 26px);
  }


  .kp26-fit__card {
    grid-template-columns:
      54px
      minmax(0, 1fr);

    gap:
      16px;

    padding:
      19px
      16px;
  }


  .kp26-fit__number {
    width:
      50px;

    height:
      50px;

    border-radius:
      14px;

    font-size:
      15px;
  }


  .kp26-fit__card-title {
    font-size:
      16px;
  }


  .kp26-fit__card-text {
    font-size:
      13.5px !important;
  }


  .kp26-fit .kp26-fit__cta {
    font-size:
      12.5px !important;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp26-fit__card,
  .kp26-fit__cta,
  .kp26-fit__cta-icon {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1cb1c4c *//* =========================================================
   KNAJPA PRO — FORMULARZ DOBORU SYSTEMU POS
   CLEAN RESPONSIVE VERSION
   ========================================================= */

.kpqf-root {
	--kpqf-navy: #15152f;
	--kpqf-navy-dark: #101022;

	--kpqf-green: #007569;
	--kpqf-green-dark: #005f56;

	--kpqf-orange: #fe5e18;
	--kpqf-orange-dark: #e94e0c;

	--kpqf-white: #ffffff;

	--kpqf-text: #18232d;
	--kpqf-muted: #68747d;

	--kpqf-line: rgba(21, 21, 47, .12);

	--kpqf-container: 1240px;

	position: relative;

	width: 100%;

	padding:
		88px
		24px
		96px;

	background:
		var(--kpqf-navy);

	color:
		#ffffff;

	font-family:
		inherit;

	overflow:
		hidden;
}


.kpqf-root *,
.kpqf-root *::before,
.kpqf-root *::after {
	box-sizing:
		border-box;
}


.kpqf-root [hidden] {
	display:
		none !important;
}


/* =========================================================
   ANCHOR
   ========================================================= */

.kpqf-anchor {
	position:
		absolute;

	top:
		-90px;

	left:
		0;
}


/* =========================================================
   SHELL
   ========================================================= */

.kpqf-shell {
	width:
		100%;

	max-width:
		var(--kpqf-container);

	margin:
		0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.kpqf-header {
	display:
		grid;

	grid-template-columns:
		minmax(0, 1.08fr)
		minmax(320px, .72fr);

	align-items:
		end;

	gap:
		clamp(52px, 7vw, 100px);

	margin-bottom:
		42px;
}


.kpqf-header__main,
.kpqf-header__side {
	min-width:
		0;
}


.kpqf-title {
	max-width:
		720px;

	margin:
		0 !important;

	color:
		#ffffff !important;

	font-family:
		inherit !important;

	font-size:
		clamp(34px, 3vw, 42px) !important;

	font-weight:
		700 !important;

	line-height:
		1.09 !important;

	letter-spacing:
		-.035em !important;
}


.kpqf-lead {
	max-width:
		510px;

	margin:
		0 !important;

	color:
		rgba(255, 255, 255, .72) !important;

	font-family:
		inherit !important;

	font-size:
		15.5px !important;

	line-height:
		1.62 !important;

	font-weight:
		400 !important;
}


/* =========================================================
   META
   ========================================================= */

.kpqf-meta-line {
	display:
		flex;

	align-items:
		center;

	flex-wrap:
		wrap;

	gap:
		10px;

	margin:
		17px
		0
		0 !important;

	color:
		rgba(255, 255, 255, .88) !important;

	font-family:
		inherit !important;

	font-size:
		11.5px !important;

	line-height:
		1.3 !important;

	font-weight:
		600 !important;
}


.kpqf-meta-line i {
	width:
		4px;

	height:
		4px;

	flex:
		0 0 4px;

	border-radius:
		50%;

	background:
		var(--kpqf-orange);
}


/* =========================================================
   FORM PANEL
   ========================================================= */

.kpqf-form {
	position:
		relative;

	width:
		100%;

	padding:
		34px
		38px
		38px;

	border-radius:
		30px;

	background:
		#ffffff;

	color:
		var(--kpqf-text);

	box-shadow:
		0 28px 65px
		rgba(0, 0, 0, .16);
}


/* =========================================================
   PROGRESS
   ========================================================= */

.kpqf-progress {
	margin-bottom:
		42px;
}


.kpqf-progress__top {
	display:
		flex;

	align-items:
		center;

	justify-content:
		space-between;

	gap:
		20px;

	margin-bottom:
		11px;
}


.kpqf-progress__label,
.kpqf-progress__percent {
	color:
		var(--kpqf-navy);

	font-size:
		12px;

	font-weight:
		700;

	line-height:
		1.2;
}


.kpqf-progress__track {
	position:
		relative;

	width:
		100%;

	height:
		6px;

	overflow:
		hidden;

	border-radius:
		999px;

	background:
		rgba(21, 21, 47, .09);
}


.kpqf-progress__fill {
	position:
		absolute;

	top:
		0;

	bottom:
		0;

	left:
		0;

	border-radius:
		inherit;

	background:
		var(--kpqf-green);

	transition:
		width .32s
		cubic-bezier(.22, 1, .36, 1);
}


/* =========================================================
   STEP
   ========================================================= */

.kpqf-step {
	animation:
		kpqfStepIn
		.3s
		cubic-bezier(.22, 1, .36, 1)
		both;
}


.kpqf-step__head {
	max-width:
		820px;

	margin-bottom:
		26px;
}


.kpqf-step__number {
	display:
		block;

	margin-bottom:
		9px;

	color:
		var(--kpqf-orange);

	font-size:
		10px;

	line-height:
		1;

	font-weight:
		800;

	letter-spacing:
		.1em;
}


.kpqf-step__title {
	max-width:
		820px;

	margin:
		0 !important;

	color:
		var(--kpqf-text) !important;

	font-family:
		inherit !important;

	font-size:
		clamp(25px, 2.2vw, 32px) !important;

	font-weight:
		700 !important;

	line-height:
		1.13 !important;

	letter-spacing:
		-.03em !important;
}


.kpqf-step__desc {
	margin:
		9px
		0
		0 !important;

	color:
		var(--kpqf-muted) !important;

	font-family:
		inherit !important;

	font-size:
		13.5px !important;

	line-height:
		1.5 !important;

	font-weight:
		400 !important;
}


/* =========================================================
   OPTIONS
   ========================================================= */

.kpqf-options {
	display:
		grid;

	grid-template-columns:
		repeat(2, minmax(0, 1fr));

	gap:
		11px;
}


.kpqf-option {
	min-width:
		0;
}


.kpqf-choice {
	position:
		absolute;

	width:
		1px;

	height:
		1px;

	opacity:
		0;

	pointer-events:
		none;
}


.kpqf-option__label {
	width:
		100%;

	min-height:
		62px;

	display:
		flex !important;

	align-items:
		center;

	gap:
		13px;

	margin:
		0 !important;

	padding:
		13px
		16px;

	border:
		1px solid
		rgba(21, 21, 47, .12);

	border-radius:
		16px;

	background:
		#ffffff !important;

	color:
		var(--kpqf-text) !important;

	cursor:
		pointer;

	transition:
		border-color .18s ease,
		background-color .18s ease,
		box-shadow .18s ease,
		transform .18s ease;
}


.kpqf-option__label:hover {
	border-color:
		rgba(0, 117, 105, .34);

	transform:
		translateY(-1px);

	box-shadow:
		0 9px 22px
		rgba(21, 21, 47, .05);
}


.kpqf-option__control {
	position:
		relative;

	width:
		22px;

	height:
		22px;

	flex:
		0 0 22px;

	border:
		1.5px solid
		rgba(21, 21, 47, .26);

	border-radius:
		50%;

	background:
		#ffffff;

	transition:
		border-color .18s ease,
		background-color .18s ease;
}


.kpqf-option__control::after {
	content:
		"";

	position:
		absolute;

	top:
		50%;

	left:
		50%;

	width:
		8px;

	height:
		8px;

	border-radius:
		50%;

	background:
		var(--kpqf-orange);

	transform:
		translate(-50%, -50%)
		scale(0);

	transition:
		transform .16s ease;
}


.kpqf-option__text {
	min-width:
		0;

	color:
		var(--kpqf-text);

	font-size:
		14px;

	font-weight:
		600;

	line-height:
		1.4;
}


/* =========================================================
   SELECTED RADIO
   ========================================================= */

.kpqf-choice:checked +
.kpqf-option__label {
	border-color:
		var(--kpqf-green);

	background:
		rgba(0, 117, 105, .055) !important;

	box-shadow:
		inset 0 0 0 1px
		var(--kpqf-green);
}


.kpqf-choice:checked +
.kpqf-option__label
.kpqf-option__control {
	border-color:
		var(--kpqf-green);

	background:
		var(--kpqf-green);
}


.kpqf-choice:checked +
.kpqf-option__label
.kpqf-option__control::after {
	transform:
		translate(-50%, -50%)
		scale(1);
}


/* =========================================================
   CHECKBOX
   ========================================================= */

.kpqf-option__control--checkbox {
	border-radius:
		7px;
}


.kpqf-option__control--checkbox::after {
	display:
		none;
}


.kpqf-option__control--checkbox svg {
	position:
		absolute;

	top:
		50%;

	left:
		50%;

	width:
		13px;

	height:
		13px;

	fill:
		none;

	stroke:
		#ffffff;

	stroke-width:
		2.2;

	stroke-linecap:
		round;

	stroke-linejoin:
		round;

	opacity:
		0;

	transform:
		translate(-50%, -50%);
}


.kpqf-choice--checkbox:checked +
.kpqf-option__label
.kpqf-option__control svg {
	opacity:
		1;
}


/* =========================================================
   FOCUS
   ========================================================= */

.kpqf-choice:focus-visible +
.kpqf-option__label {
	outline:
		3px solid
		var(--kpqf-orange);

	outline-offset:
		3px;
}


/* =========================================================
   NAV
   ========================================================= */

.kpqf-nav {
	display:
		flex;

	align-items:
		center;

	justify-content:
		space-between;

	gap:
		12px;

	margin-top:
		30px;
}


.kpqf-nav--end {
	justify-content:
		flex-end;
}


/* =========================================================
   BUTTON RESET
   ========================================================= */

.kpqf-root button.kpqf-btn,
.kpqf-root button.kpqf-btn:visited {
	appearance:
		none !important;

	-webkit-appearance:
		none !important;

	min-width:
		0;

	min-height:
		52px;

	display:
		inline-flex !important;

	align-items:
		center;

	justify-content:
		center;

	gap:
		13px;

	margin:
		0 !important;

	padding:
		9px
		9px
		9px
		19px !important;

	border:
		0 !important;

	border-radius:
		999px !important;

	background-image:
		none !important;

	font-family:
		inherit !important;

	font-size:
		13px !important;

	font-weight:
		700 !important;

	line-height:
		1.35 !important;

	text-decoration:
		none !important;

	white-space:
		normal;

	box-shadow:
		none !important;

	cursor:
		pointer;

	transition:
		transform .18s ease,
		background-color .18s ease,
		opacity .18s ease;
}


/* =========================================================
   PRIMARY / SUBMIT
   ========================================================= */

.kpqf-root button.kpqf-btn--primary,
.kpqf-root button.kpqf-btn--submit {
	background:
		var(--kpqf-green) !important;

	color:
		#ffffff !important;
}


.kpqf-root button.kpqf-btn--primary:hover,
.kpqf-root button.kpqf-btn--submit:hover,
.kpqf-root button.kpqf-btn--primary:focus,
.kpqf-root button.kpqf-btn--submit:focus,
.kpqf-root button.kpqf-btn--primary:active,
.kpqf-root button.kpqf-btn--submit:active {
	background:
		var(--kpqf-green-dark) !important;

	color:
		#ffffff !important;

	transform:
		translateY(-1px);
}


/* tekst submit */

.kpqf-btn--submit
[data-kpqf-submit-text] {
	flex:
		1 1 0%;

	min-width:
		0;

	white-space:
		normal;

	overflow-wrap:
		normal;

	text-align:
		left;
}


/* =========================================================
   ARROW
   ========================================================= */

.kpqf-btn__arrow {
	width:
		36px;

	height:
		36px;

	flex:
		0 0 36px;

	display:
		inline-flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		50%;

	background:
		var(--kpqf-orange);

	color:
		#ffffff;

	font-size:
		17px;

	font-weight:
		700;
}


/* =========================================================
   BACK
   ========================================================= */

.kpqf-root button.kpqf-btn--back {
	padding:
		10px
		17px !important;

	border:
		1px solid
		rgba(21, 21, 47, .14) !important;

	background:
		transparent !important;

	color:
		var(--kpqf-navy) !important;
}


.kpqf-root button.kpqf-btn--back:hover,
.kpqf-root button.kpqf-btn--back:focus {
	background:
		rgba(21, 21, 47, .045) !important;
}


/* =========================================================
   BUTTON FOCUS
   ========================================================= */

.kpqf-root button.kpqf-btn:focus-visible {
	outline:
		3px solid
		var(--kpqf-orange);

	outline-offset:
		4px;
}


/* =========================================================
   DISABLED
   ========================================================= */

.kpqf-root button.kpqf-btn:disabled {
	opacity:
		.34 !important;

	cursor:
		not-allowed !important;

	transform:
		none !important;
}


/* =========================================================
   CONTACT INTRO
   ========================================================= */

.kpqf-contact__intro {
	max-width:
		840px;

	display:
		grid;

	grid-template-columns:
		48px
		minmax(0, 1fr);

	gap:
		16px;

	margin-bottom:
		28px;
}


.kpqf-contact__icon {
	width:
		48px;

	height:
		48px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	border-radius:
		15px;

	background:
		var(--kpqf-green);

	color:
		#ffffff;

	font-size:
		18px;

	font-weight:
		800;
}


.kpqf-contact__intro h3 {
	margin:
		0 !important;

	color:
		var(--kpqf-text) !important;

	font-family:
		inherit !important;

	font-size:
		clamp(24px, 2.1vw, 31px) !important;

	line-height:
		1.14 !important;

	font-weight:
		700 !important;

	letter-spacing:
		-.03em !important;
}


.kpqf-contact__intro p {
	max-width:
		680px;

	margin:
		8px
		0
		0 !important;

	color:
		var(--kpqf-muted) !important;

	font-family:
		inherit !important;

	font-size:
		14px !important;

	line-height:
		1.6 !important;
}


/* =========================================================
   FIELDS
   ========================================================= */

.kpqf-fields {
	display:
		grid;

	grid-template-columns:
		repeat(2, minmax(0, 1fr));

	gap:
		13px;
}


.kpqf-field {
	display:
		block;
}


.kpqf-field--full {
	grid-column:
		1 / -1;
}


.kpqf-field > span {
	display:
		block;

	margin-bottom:
		7px;

	color:
		var(--kpqf-text);

	font-size:
		14px;

	line-height:
		1.4;

	font-weight:
		700;
}


.kpqf-field > span small {
	color:
		var(--kpqf-muted);

	font-size:
		12px;

	font-weight:
		400;
}


.kpqf-field input,
.kpqf-field textarea {
	width:
		100%;

	display:
		block;

	margin:
		0 !important;

	padding:
		14px
		15px !important;

	border:
		1px solid
		rgba(21, 21, 47, .14) !important;

	border-radius:
		14px !important;

	outline:
		none !important;

	background:
		#ffffff !important;

	box-shadow:
		none !important;

	color:
		var(--kpqf-text) !important;

	font-family:
		inherit !important;

	font-size:
		16px !important;

	font-weight:
		400 !important;

	line-height:
		1.5 !important;

	transition:
		border-color .18s ease,
		box-shadow .18s ease;
}


.kpqf-field input::placeholder,
.kpqf-field textarea::placeholder {
	color:
		#9aa0a6 !important;

	opacity:
		1;
}


.kpqf-field input {
	min-height:
		52px;
}


.kpqf-field textarea {
	min-height:
		108px;

	resize:
		vertical;
}


.kpqf-field input:focus,
.kpqf-field textarea:focus {
	border-color:
		var(--kpqf-green) !important;

	box-shadow:
		0 0 0 3px
		rgba(0, 117, 105, .10) !important;
}


/* =========================================================
   FIELD ERROR
   ========================================================= */

.kpqf-field__error {
	display:
		block;

	margin-top:
		6px;

	color:
		#9b3030;

	font-size:
		12px;

	line-height:
		1.4;
}


.kpqf-field.is-error input,
.kpqf-field.is-error textarea {
	border-color:
		#b64c4c !important;

	box-shadow:
		0 0 0 3px
		rgba(182, 76, 76, .08) !important;
}


/* =========================================================
   CONSENT
   ========================================================= */

.kpqf-turnstile {
	max-width: 100%;
	margin: 0 0 18px;
	overflow-x: auto;
}

.kpqf-consent {
	position:
		relative;

	max-width:
		840px;

	display:
		grid !important;

	grid-template-columns:
		21px
		minmax(0, 1fr);

	align-items:
		start;

	gap:
		10px;

	margin-top:
		18px;

	cursor:
		pointer;
}


.kpqf-consent > input {
	position:
		absolute;

	width:
		1px;

	height:
		1px;

	overflow:
		hidden;

	opacity:
		0;
}


.kpqf-consent__box {
	width:
		21px;

	height:
		21px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	margin-top:
		1px;

	border:
		1px solid
		rgba(21, 21, 47, .23);

	border-radius:
		6px;

	background:
		#ffffff;

	color:
		#ffffff;

	transition:
		background-color .18s ease,
		border-color .18s ease,
		box-shadow .18s ease;
}


.kpqf-consent__box svg {
	width:
		13px;

	height:
		13px;

	fill:
		none;

	stroke:
		currentColor;

	stroke-width:
		2.2;

	stroke-linecap:
		round;

	stroke-linejoin:
		round;

	opacity:
		0;
}


.kpqf-consent >
input:checked +
.kpqf-consent__box {
	border-color:
		var(--kpqf-green);

	background:
		var(--kpqf-green);
}


.kpqf-consent >
input:checked +
.kpqf-consent__box svg {
	opacity:
		1;
}


.kpqf-consent >
input:focus-visible +
.kpqf-consent__box {
	box-shadow:
		0 0 0 3px
		rgba(254, 94, 24, .16);
}


.kpqf-consent__text {
	color:
		#56636c;

	font-size:
		12px;

	line-height:
		1.5;
}


.kpqf-consent__text a {
	color:
		var(--kpqf-green) !important;

	font-size:
		inherit;

	font-weight:
		650;

	text-decoration:
		underline !important;

	text-decoration-thickness:
		1px !important;

	text-underline-offset:
		2px;
}


.kpqf-consent__text strong {
	color:
		var(--kpqf-orange);

	font-weight:
		800;
}


/* =========================================================
   GENERAL ERROR
   ========================================================= */

.kpqf-error {
	margin-top:
		16px;

	padding:
		12px
		14px;

	border:
		1px solid
		rgba(180, 45, 45, .18);

	border-radius:
		12px;

	background:
		rgba(180, 45, 45, .06);

	color:
		#802d2d;

	font-size:
		12px;

	line-height:
		1.45;
}


/* =========================================================
   SUCCESS
   ========================================================= */

.kpqf-success {
	max-width:
		700px;

	margin:
		0 auto;

	padding:
		30px
		0;

	text-align:
		center;
}


.kpqf-success__icon {
	width:
		58px;

	height:
		58px;

	display:
		flex;

	align-items:
		center;

	justify-content:
		center;

	margin:
		0
		auto
		18px;

	border-radius:
		18px;

	background:
		var(--kpqf-green);

	color:
		#ffffff;

	font-size:
		22px;

	font-weight:
		800;
}


.kpqf-success h3 {
	margin:
		0 !important;

	color:
		var(--kpqf-text) !important;

	font-family:
		inherit !important;

	font-size:
		28px !important;

	font-weight:
		700 !important;
}


/* =========================================================
   STEP ANIMATION
   ========================================================= */

@keyframes kpqfStepIn {

	from {
		opacity:
			0;

		transform:
			translateY(8px);
	}

	to {
		opacity:
			1;

		transform:
			translateY(0);
	}

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

	.kpqf-root {
		padding:
			64px
			20px
			72px;
	}


	.kpqf-header {
		grid-template-columns:
			1fr;

		gap:
			21px;

		margin-bottom:
			34px;
	}


	.kpqf-header__side {
		max-width:
			680px;
	}


	.kpqf-form {
		padding:
			30px;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.kpqf-root {
		padding:
			48px
			14px
			52px;
	}


	.kpqf-header {
		margin-bottom:
			26px;
	}


	.kpqf-title {
		font-size:
			clamp(29px, 8vw, 35px) !important;

		line-height:
			1.09 !important;
	}


	.kpqf-lead {
		font-size:
			14.5px !important;

		line-height:
			1.57 !important;
	}


	.kpqf-meta-line {
		margin-top:
			14px !important;

		font-size:
			11px !important;
	}


	.kpqf-form {
		padding:
			23px
			16px
			19px;

		border-radius:
			22px;
	}


	.kpqf-progress {
		margin-bottom:
			30px;
	}


	.kpqf-step__head {
		margin-bottom:
			20px;
	}


	.kpqf-step__title {
		font-size:
			clamp(23px, 6.7vw, 28px) !important;
	}


	.kpqf-step__desc {
		font-size:
			13.5px !important;
	}


	.kpqf-options {
		grid-template-columns:
			1fr;

		gap:
			8px;
	}


	.kpqf-option__label {
		min-height:
			56px;

		padding:
			11px
			13px;

		border-radius:
			14px;
	}


	.kpqf-option__text {
		font-size:
			14px;
	}


	.kpqf-nav {
		margin-top:
			23px;
	}


	.kpqf-root button.kpqf-btn {
		min-height:
			52px;

		font-size:
			13px !important;

		line-height:
			1.35 !important;
	}


	.kpqf-fields {
		grid-template-columns:
			1fr;

		gap:
			12px;
	}


	.kpqf-field--full {
		grid-column:
			auto;
	}


	.kpqf-contact__intro {
		grid-template-columns:
			40px
			minmax(0, 1fr);

		gap:
			12px;
	}


	.kpqf-contact__icon {
		width:
			40px;

		height:
			40px;

		border-radius:
			13px;
	}


	.kpqf-contact__intro h3 {
		font-size:
			23px !important;
	}


	.kpqf-contact__intro p {
		font-size:
			14px !important;
	}


	.kpqf-consent__text {
		font-size:
			12px;
	}


	.kpqf-btn--submit {
		width:
			100%;

		max-width:
			100%;

		min-width:
			0;

		justify-content:
			space-between !important;

		gap:
			12px;
	}


	.kpqf-btn--submit
	[data-kpqf-submit-text] {
		flex:
			1 1 0%;

		min-width:
			0;

		white-space:
			normal;

		text-align:
			left;
	}


	.kpqf-btn--submit
	.kpqf-btn__arrow {
		width:
			36px;

		height:
			36px;

		flex:
			0 0 36px;
	}

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 430px) {

	.kpqf-nav {
		flex-direction:
			column-reverse;

		align-items:
			stretch;
	}


	.kpqf-nav--end {
		flex-direction:
			column;
	}


	.kpqf-root button.kpqf-btn {
		width:
			100%;

		max-width:
			100%;
	}


	.kpqf-root button.kpqf-btn--primary,
	.kpqf-root button.kpqf-btn--submit {
		justify-content:
			space-between;
	}


	.kpqf-root button.kpqf-btn--back {
		min-height:
			48px;
	}


	.kpqf-form {
		padding-left:
			14px;

		padding-right:
			14px;
	}

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

	.kpqf-root *,
	.kpqf-root *::before,
	.kpqf-root *::after {
		animation:
			none !important;

		transition:
			none !important;
	}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8888cb9 *//* =========================================================
   KNAJPA PRO — SYSTEMY SYRVE / GOPOS
   CLEAN RESPONSIVE VERSION
   ========================================================= */

.kp26-systems {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  --kp-soft: #f7f6fb;

  --kp-border: rgba(21, 21, 47, .09);

  width: 100%;

  margin: 0 !important;
  padding: 0 !important;

  background: #ffffff;

  color: var(--kp-text);

  font-family: inherit;

  overflow: hidden;
}


.kp26-systems *,
.kp26-systems *::before,
.kp26-systems *::after {
  box-sizing: border-box;
}


/* =========================================================
   INTRO
   ========================================================= */

.kp26-systems__intro {
  width: 100%;

  background: #ffffff;
}


.kp26-systems__intro-inner {
  width:
    min(1240px, calc(100% - 48px));

  max-width:
    850px;

  margin:
    0 auto;

  padding:
    clamp(72px, 7vw, 94px)
    0
    clamp(54px, 5vw, 70px);

  text-align:
    center;
}


.kp26-systems__title {
  max-width:
    800px;

  margin:
    0 auto;

  color:
    var(--kp-text);

  font-family:
    inherit;

  font-size:
    clamp(34px, 3vw, 42px);

  line-height:
    1.1;

  font-weight:
    700;

  letter-spacing:
    -.035em;
}


.kp26-systems__lead {
  max-width:
    760px;

  margin:
    20px
    auto
    0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    clamp(15.5px, 1.2vw, 17px) !important;

  line-height:
    1.62 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   SYSTEM ZONES
   ========================================================= */

.kp26-system-zone {
  width:
    100%;

  position:
    relative;
}


.kp26-system-zone--syrve {
  background:
    var(--kp-soft);
}


.kp26-system-zone--gopos {
  background:
    #ffffff;
}


.kp26-system-zone__inner {
  width:
    min(1240px, calc(100% - 48px));

  margin:
    0 auto;

  padding:
    clamp(64px, 6vw, 82px)
    0
    clamp(70px, 6vw, 86px);
}


/* =========================================================
   TOP
   ========================================================= */

.kp26-system__top {
  display:
    grid;

  grid-template-columns:
    minmax(0, .94fr)
    minmax(0, 1.06fr);

  align-items:
    center;

  gap:
    clamp(48px, 6vw, 82px);
}


.kp26-system__top--reverse {
  grid-template-columns:
    minmax(0, 1.06fr)
    minmax(0, .94fr);
}


/* =========================================================
   COPY
   ========================================================= */

.kp26-system__copy {
  min-width:
    0;
}


.kp26-system__eyebrow {
  width:
    fit-content;

  display:
    inline-flex;

  align-items:
    center;

  gap:
    8px;

  margin-bottom:
    17px;

  color:
    var(--kp-green);

  font-size:
    11px;

  line-height:
    1;

  font-weight:
    750;

  letter-spacing:
    .07em;

  text-transform:
    uppercase;
}


.kp26-system__eyebrow-dot {
  width:
    7px;

  height:
    7px;

  flex:
    0 0 7px;

  border-radius:
    50%;

  background:
    currentColor;
}


.kp26-system__eyebrow--orange {
  color:
    var(--kp-orange);
}


.kp26-system__headline {
  max-width:
    550px;

  margin:
    0;

  color:
    var(--kp-text);

  font-family:
    inherit;

  font-size:
    clamp(29px, 2.55vw, 37px);

  line-height:
    1.13;

  font-weight:
    700;

  letter-spacing:
    -.033em;
}


.kp26-system__description {
  max-width:
    575px;

  margin-top:
    21px;
}


.kp26-system__description p {
  margin:
    0
    0
    14px !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    15px !important;

  line-height:
    1.64 !important;

  font-weight:
    400 !important;
}


.kp26-system__description p:last-child {
  margin-bottom:
    0 !important;
}


/* =========================================================
   VISUAL
   ========================================================= */

.kp26-system-visual {
  width:
    100%;

  min-width:
    0;

  min-height:
    410px;

  position:
    relative;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    46px
    34px
    56px;

  border-radius:
    34px;

  overflow:
    hidden;

  isolation:
    isolate;
}


.kp26-system-visual--syrve {
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, .72) 0%,
      rgba(255, 255, 255, .38) 30%,
      rgba(0, 117, 105, .065) 100%
    );

  border:
    1px solid
    rgba(0, 117, 105, .09);
}


.kp26-system-visual--gopos {
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, .70) 0%,
      rgba(255, 255, 255, .36) 30%,
      rgba(254, 94, 24, .055) 100%
    );

  border:
    1px solid
    rgba(254, 94, 24, .085);
}


/* =========================================================
   LIGHT / SHADOW
   ========================================================= */

.kp26-system-visual::before {
  content:
    "";

  position:
    absolute;

  left:
    50%;

  bottom:
    16px;

  width:
    82%;

  height:
    92px;

  transform:
    translateX(-50%);

  border-radius:
    50%;

  background:
    radial-gradient(
      ellipse at center,
      rgba(255, 255, 255, .72) 0%,
      rgba(255, 255, 255, .36) 38%,
      rgba(255, 255, 255, 0) 76%
    );

  z-index:
    0;

  pointer-events:
    none;
}


.kp26-system-visual::after {
  content:
    "";

  position:
    absolute;

  left:
    50%;

  bottom:
    25px;

  width:
    68%;

  height:
    30px;

  transform:
    translateX(-50%);

  border-radius:
    50%;

  background:
    rgba(21, 21, 47, .22);

  filter:
    blur(17px);

  opacity:
    .43;

  z-index:
    1;

  pointer-events:
    none;
}


.kp26-system-visual--syrve::after {
  left:
    51%;

  width:
    74%;

  height:
    31px;
}


.kp26-system-visual--gopos::after {
  left:
    47%;

  width:
    66%;

  height:
    29px;
}


.kp26-system-visual__line {
  display:
    none;
}


/* =========================================================
   IMAGE
   ========================================================= */

.kp26-system-visual__image {
  width:
    100%;

  max-width:
    590px;

  max-height:
    330px;

  display:
    block;

  position:
    relative;

  z-index:
    3;

  object-fit:
    contain;

  transform:
    translateY(5px);

  filter:
    drop-shadow(
      0 7px 8px
      rgba(21, 21, 47, .08)
    )
    drop-shadow(
      0 16px 17px
      rgba(21, 21, 47, .08)
    );

  transition:
    transform 260ms ease;
}


@media (hover: hover) {

  .kp26-system-visual:hover
  .kp26-system-visual__image {
    transform:
      translateY(1px);
  }

}


/* =========================================================
   BADGES
   ========================================================= */

.kp26-system-visual__badge {
  position:
    absolute;

  z-index:
    5;

  display:
    flex;

  align-items:
    center;

  gap:
    8px;

  min-height:
    37px;

  padding:
    8px
    13px;

  border:
    1px solid
    rgba(21, 21, 47, .07);

  border-radius:
    999px;

  background:
    rgba(255, 255, 255, .94);

  color:
    var(--kp-text);

  box-shadow:
    0 9px 22px
    rgba(21, 21, 47, .075);

  backdrop-filter:
    blur(8px);

  -webkit-backdrop-filter:
    blur(8px);

  font-size:
    11px;

  line-height:
    1.2;

  font-weight:
    650;

  white-space:
    nowrap;
}


.kp26-system-visual__badge span {
  width:
    7px;

  height:
    7px;

  flex:
    0 0 7px;

  border-radius:
    50%;

  background:
    var(--kp-green);
}


.kp26-system-visual--gopos
.kp26-system-visual__badge span {
  background:
    var(--kp-orange);
}


.kp26-system-visual__badge--top {
  top:
    27px;

  left:
    25px;
}


.kp26-system-visual__badge--bottom {
  right:
    24px;

  bottom:
    25px;
}


/* =========================================================
   FEATURES
   ========================================================= */

.kp26-system-features {
  width:
    100%;

  margin-top:
    clamp(38px, 4vw, 50px);

  display:
    grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    14px;
}


/* =========================================================
   FEATURE CARD
   ========================================================= */

.kp26-system-feature {
  min-width:
    0;

  min-height:
    170px;

  display:
    flex;

  flex-direction:
    column;

  align-items:
    flex-start;

  justify-content:
    flex-start;

  padding:
    21px
    22px;

  border:
    1px solid
    var(--kp-border);

  border-radius:
    20px;

  background:
    rgba(255, 255, 255, .88);

  color:
    var(--kp-text);

  text-decoration:
    none !important;

  box-shadow:
    0 8px 22px
    rgba(21, 21, 47, .025);

  transition:
    transform 190ms ease,
    border-color 190ms ease,
    box-shadow 190ms ease,
    background-color 190ms ease;
}


.kp26-system-zone--gopos
.kp26-system-feature:not(.kp26-system-feature--cta) {
  background:
    #f9f9fb;
}


.kp26-system-feature__number {
  display:
    block;

  margin-bottom:
    13px;

  color:
    var(--kp-green);

  font-size:
    10px;

  line-height:
    1;

  font-weight:
    800;

  letter-spacing:
    .08em;
}


.kp26-system-zone--gopos
.kp26-system-feature__number {
  color:
    var(--kp-orange);
}


.kp26-system-feature h4 {
  margin:
    0
    0
    8px;

  color:
    var(--kp-text);

  font-family:
    inherit;

  font-size:
    16px;

  line-height:
    1.28;

  font-weight:
    700;

  letter-spacing:
    -.018em;
}


.kp26-system-feature p {
  margin:
    0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.58 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   CTA TILE
   ========================================================= */

.kp26-system-feature--cta {
  min-width:
    0;

  flex-direction:
    row;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    18px;

  background:
    var(--kp-navy);

  border-color:
    var(--kp-navy);

  color:
    #ffffff !important;

  box-shadow:
    0 12px 27px
    rgba(21, 21, 47, .12);
}


.kp26-system-feature--cta-gopos {
  background:
    var(--kp-green);

  border-color:
    var(--kp-green);

  box-shadow:
    0 12px 27px
    rgba(0, 117, 105, .12);
}


.kp26-system-feature__cta-copy {
  min-width:
    0;

  flex:
    1 1 auto;
}


.kp26-system-feature__cta-small {
  display:
    block;

  margin-bottom:
    8px;

  color:
    rgba(255, 255, 255, .72);

  font-size:
    12px;

  line-height:
    1.4;

  font-weight:
    500;
}


.kp26-system-feature--cta strong {
  display:
    block;

  max-width:
    225px;

  color:
    #ffffff;

  font-size:
    17px;

  line-height:
    1.25;

  font-weight:
    700;

  letter-spacing:
    -.02em;
}


.kp26-system-feature__arrow {
  width:
    44px;

  height:
    44px;

  flex:
    0 0 44px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  border-radius:
    50%;

  background:
    var(--kp-orange);

  transition:
    transform 180ms ease,
    background-color 180ms ease;
}


.kp26-system-feature__arrow svg {
  width:
    18px;

  height:
    18px;

  fill:
    none;

  stroke:
    #ffffff;

  stroke-width:
    2;

  stroke-linecap:
    round;

  stroke-linejoin:
    round;
}


/* =========================================================
   FOCUS
   ========================================================= */

.kp26-system-feature--cta:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset:
    4px;
}


/* =========================================================
   HOVER
   ========================================================= */

@media (hover: hover) {

  .kp26-system-feature:not(.kp26-system-feature--cta):hover {
    transform:
      translateY(-3px);

    border-color:
      rgba(0, 117, 105, .20);

    background:
      #ffffff;

    box-shadow:
      0 14px 28px
      rgba(21, 21, 47, .05);
  }


  .kp26-system-zone--gopos
  .kp26-system-feature:not(.kp26-system-feature--cta):hover {
    border-color:
      rgba(254, 94, 24, .22);
  }


  .kp26-system-feature--cta:hover {
    transform:
      translateY(-3px);

    color:
      #ffffff !important;

    box-shadow:
      0 17px 34px
      rgba(21, 21, 47, .17);
  }


  .kp26-system-feature--cta-gopos:hover {
    box-shadow:
      0 17px 34px
      rgba(0, 117, 105, .18);
  }


  .kp26-system-feature--cta:hover
  .kp26-system-feature__arrow {
    transform:
      translateX(3px);

    background:
      var(--kp-orange-dark);
  }

}


/* =========================================================
   ANIMATION STAGGER
   ========================================================= */

.kp26-system-feature:nth-child(2) {
  transition-delay:
    45ms;
}


.kp26-system-feature:nth-child(3) {
  transition-delay:
    90ms;
}


.kp26-system-feature:nth-child(4) {
  transition-delay:
    75ms;
}


.kp26-system-feature:nth-child(5) {
  transition-delay:
    120ms;
}


.kp26-system-feature:nth-child(6) {
  transition-delay:
    165ms;
}


/* =========================================================
   901–1024
   ========================================================= */

@media (min-width: 901px) and (max-width: 1024px) {

  .kp26-systems__intro-inner,
  .kp26-system-zone__inner {
    width:
      min(calc(100% - 40px), 920px);
  }


  .kp26-system__top,
  .kp26-system__top--reverse {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap:
      38px;
  }


  .kp26-system__headline {
    font-size:
      clamp(27px, 3.4vw, 33px);
  }


  .kp26-system__description p {
    font-size:
      14.5px !important;
  }


  .kp26-system-visual {
    min-height:
      340px;

    padding:
      38px
      24px
      48px;
  }


  .kp26-system-visual__image {
    max-height:
      270px;
  }


  .kp26-system-features {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

}


/* =========================================================
   WĄSKI TABLET — 768–900
   ========================================================= */

@media (min-width: 768px) and (max-width: 900px) {

  .kp26-systems__intro-inner,
  .kp26-system-zone__inner {
    width:
      min(calc(100% - 48px), 720px);
  }


  .kp26-system__top,
  .kp26-system__top--reverse {
    display:
      flex;

    flex-direction:
      column;

    gap:
      36px;
  }


  .kp26-system__copy {
    order:
      1;

    width:
      100%;
  }


  .kp26-system-visual {
    order:
      2;

    width:
      100%;

    min-height:
      390px;
  }


  .kp26-system__headline {
    max-width:
      650px;

    font-size:
      clamp(30px, 4.5vw, 36px);
  }


  .kp26-system__description {
    max-width:
      650px;
  }


  .kp26-system-features {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap:
      12px;
  }


  .kp26-system-feature {
    min-height:
      180px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-systems__intro-inner,
  .kp26-system-zone__inner {
    width:
      calc(100% - 32px);
  }


  /* INTRO */

  .kp26-systems__intro-inner {
    padding:
      48px
      0
      42px;
  }


  .kp26-systems__title {
    font-size:
      clamp(29px, 8vw, 34px);

    line-height:
      1.1;
  }


  .kp26-systems__lead {
    margin-top:
      17px !important;

    font-size:
      14.5px !important;

    line-height:
      1.58 !important;
  }


  /* SYSTEM */

  .kp26-system-zone__inner {
    padding:
      48px
      0
      52px;
  }


  .kp26-system__top,
  .kp26-system__top--reverse {
    display:
      flex;

    flex-direction:
      column;

    gap:
      28px;
  }


  .kp26-system__copy {
    order:
      1;

    width:
      100%;
  }


  .kp26-system-visual {
    order:
      2;
  }


  .kp26-system__eyebrow {
    margin-bottom:
      13px;

    font-size:
      10.5px;
  }


  .kp26-system__headline {
    max-width:
      none;

    font-size:
      clamp(26px, 7.3vw, 31px);

    line-height:
      1.13;
  }


  .kp26-system__description {
    max-width:
      none;

    margin-top:
      17px;
  }


  .kp26-system__description p {
    font-size:
      14px !important;

    line-height:
      1.58 !important;
  }


  /* VISUAL */

  .kp26-system-visual {
    width:
      100%;

    min-height:
      290px;

    padding:
      33px
      18px
      43px;

    border-radius:
      26px;
  }


  .kp26-system-visual::before {
    width:
      86%;

    height:
      65px;

    bottom:
      11px;
  }


  .kp26-system-visual::after {
    width:
      72%;

    height:
      22px;

    bottom:
      13px;

    filter:
      blur(13px);

    opacity:
      .38;
  }


  .kp26-system-visual--syrve::after {
    left:
      51%;

    width:
      78%;
  }


  .kp26-system-visual--gopos::after {
    left:
      47%;

    width:
      70%;
  }


  .kp26-system-visual__image {
    max-width:
      100%;

    max-height:
      225px;

    transform:
      translateY(4px);
  }


  /* BADGES */

  .kp26-system-visual__badge {
    min-height:
      32px;

    padding:
      7px
      10px;

    font-size:
      10px;

    line-height:
      1.2;
  }


  .kp26-system-visual__badge--top {
    top:
      14px;

    left:
      14px;
  }


  .kp26-system-visual__badge--bottom {
    right:
      14px;

    bottom:
      15px;
  }


  /* FEATURES */

  .kp26-system-features {
    margin-top:
      28px;

    grid-template-columns:
      1fr;

    gap:
      9px;
  }


  .kp26-system-feature {
    min-height:
      auto;

    padding:
      18px
      17px;

    border-radius:
      17px;
  }


  .kp26-system-feature__number {
    margin-bottom:
      10px;
  }


  .kp26-system-feature h4 {
    margin-bottom:
      6px;

    font-size:
      16px;
  }


  .kp26-system-feature p {
    font-size:
      14px !important;

    line-height:
      1.55 !important;
  }


  /* CTA */

  .kp26-system-feature--cta {
    min-height:
      118px;

    gap:
      14px;

    align-items:
      center;
  }


  .kp26-system-feature__cta-small {
    margin-bottom:
      7px;

    font-size:
      12px;

    line-height:
      1.4;
  }


  .kp26-system-feature--cta strong {
    max-width:
      none;

    font-size:
      16px;

    line-height:
      1.28;
  }


  .kp26-system-feature__arrow {
    width:
      44px;

    height:
      44px;

    flex:
      0 0 44px;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .kp26-systems__intro-inner,
  .kp26-system-zone__inner {
    width:
      calc(100% - 26px);
  }


  .kp26-system-visual {
    min-height:
      260px;

    padding:
      30px
      15px
      40px;
  }


  .kp26-system-visual__image {
    max-height:
      205px;
  }


  .kp26-system-visual__badge {
    font-size:
      9.5px;
  }


  .kp26-system-feature {
    padding:
      17px
      15px;
  }


  .kp26-system-feature--cta {
    gap:
      12px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp26-system-visual__image,
  .kp26-system-feature,
  .kp26-system-feature__arrow {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5928c61 *//* =========================================================
   KNAJPA PRO — CASE STUDIES
   CLEAN RESPONSIVE VERSION
   ========================================================= */

.kp26-cases {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-soft: #f7f6fb;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  width: 100%;

  margin: 0 !important;

  padding:
    clamp(76px, 7vw, 100px)
    24px
    clamp(80px, 8vw, 112px);

  background:
    var(--kp-soft);

  color:
    var(--kp-text);

  font-family:
    inherit;

  overflow:
    hidden;
}


.kp26-cases *,
.kp26-cases *::before,
.kp26-cases *::after {
  box-sizing:
    border-box;
}


.kp26-cases__inner {
  width:
    min(1240px, 100%);

  margin:
    0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.kp26-cases__header {
  max-width:
    790px;

  margin:
    0
    auto
    clamp(58px, 6vw, 78px);

  text-align:
    center;
}


.kp26-cases__title {
  max-width:
    760px;

  margin:
    0 auto;

  color:
    var(--kp-text);

  font-family:
    inherit;

  font-size:
    clamp(34px, 3vw, 42px);

  line-height:
    1.1;

  font-weight:
    700;

  letter-spacing:
    -.035em;
}


.kp26-cases__lead {
  max-width:
    690px;

  margin:
    19px
    auto
    0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    clamp(15px, 1.2vw, 17px) !important;

  line-height:
    1.6 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   STACK
   ========================================================= */

.kp26-cases__stack {
  position:
    relative;

  width:
    100%;

  padding-top:
    42px;
}


/* tylna warstwa */

.kp26-cases__stack::before {
  content:
    "";

  position:
    absolute;

  z-index:
    0;

  top:
    0;

  left:
    7%;

  width:
    86%;

  height:
    72px;

  border-radius:
    30px
    30px
    0
    0;

  background:
    rgba(0, 117, 105, .22);

  pointer-events:
    none;
}


/* środkowa warstwa */

.kp26-cases__stack::after {
  content:
    "";

  position:
    absolute;

  z-index:
    1;

  top:
    20px;

  left:
    3.5%;

  width:
    93%;

  height:
    62px;

  border-radius:
    30px
    30px
    0
    0;

  background:
    var(--kp-green);

  pointer-events:
    none;
}


/* =========================================================
   STAGE
   ========================================================= */

.kp26-cases__stage {
  position:
    relative;

  z-index:
    2;

  width:
    100%;

  display:
    grid;

  background:
    var(--kp-navy);

  border-radius:
    32px;

  overflow:
    hidden;

  box-shadow:
    0 28px 65px
    rgba(21, 21, 47, .13);

  outline:
    none;

  touch-action:
    pan-y;
}


.kp26-cases__stage:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset:
    4px;
}


/* =========================================================
   CASE
   ========================================================= */

.kp26-case {
  grid-area:
    1 / 1;

  width:
    100%;

  min-height:
    590px;

  display:
    grid;

  grid-template-columns:
    minmax(0, .87fr)
    minmax(0, 1.13fr);

  align-items:
    center;

  gap:
    clamp(50px, 6vw, 82px);

  padding:
    clamp(46px, 5vw, 66px);

  border-radius:
    32px;

  background:
    var(--kp-navy);

  opacity:
    0;

  visibility:
    hidden;

  pointer-events:
    none;

  transform:
    translate3d(28px, 0, 0)
    scale(.993);

  transition:
    opacity 390ms cubic-bezier(.2, .7, .2, 1),
    transform 500ms cubic-bezier(.2, .7, .2, 1),
    visibility 0s linear 500ms;

  will-change:
    opacity,
    transform;
}


.kp26-case.is-active {
  position:
    relative;

  z-index:
    3;

  opacity:
    1;

  visibility:
    visible;

  pointer-events:
    auto;

  transform:
    translate3d(0, 0, 0)
    scale(1);

  transition:
    opacity 430ms cubic-bezier(.2, .7, .2, 1),
    transform 510ms cubic-bezier(.2, .7, .2, 1),
    visibility 0s linear 0s;
}


.kp26-case.is-leaving {
  z-index:
    2;

  opacity:
    0;

  visibility:
    visible;

  pointer-events:
    none;

  transform:
    translate3d(-20px, 0, 0)
    scale(.996);

  transition:
    opacity 340ms cubic-bezier(.2, .7, .2, 1),
    transform 440ms cubic-bezier(.2, .7, .2, 1);
}


.kp26-cases__stage.is-reverse
.kp26-case {
  transform:
    translate3d(-28px, 0, 0)
    scale(.993);
}


.kp26-cases__stage.is-reverse
.kp26-case.is-active {
  transform:
    translate3d(0, 0, 0)
    scale(1);
}


.kp26-cases__stage.is-reverse
.kp26-case.is-leaving {
  transform:
    translate3d(20px, 0, 0)
    scale(.996);
}


/* =========================================================
   COPY
   ========================================================= */

.kp26-case__copy {
  min-width:
    0;
}


.kp26-case__number {
  display:
    block;

  margin-bottom:
    27px;

  color:
    rgba(255, 255, 255, .94);

  font-size:
    12px;

  line-height:
    1;

  font-weight:
    700;

  letter-spacing:
    .04em;
}


/* =========================================================
   BRAND
   ========================================================= */

.kp26-case__brand {
  display:
    flex;

  align-items:
    center;

  gap:
    17px;

  margin-bottom:
    28px;
}


.kp26-case__logo {
  width:
    66px;

  height:
    66px;

  flex:
    0 0 66px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    5px;

  overflow:
    hidden;

  border-radius:
    50%;

  background:
    rgba(255, 255, 255, .97);

  box-shadow:
    0 8px 20px
    rgba(0, 0, 0, .08);
}


.kp26-case__logo img {
  width:
    100%;

  height:
    100%;

  display:
    block;

  object-fit:
    contain;

  border-radius:
    inherit;
}


.kp26-case__name {
  margin:
    0
    0
    4px;

  color:
    #ffffff;

  font-family:
    inherit;

  font-size:
    clamp(21px, 2vw, 27px);

  line-height:
    1.1;

  font-weight:
    700;

  letter-spacing:
    -.02em;
}


.kp26-case__meta {
  margin:
    0 !important;

  color:
    rgba(255, 255, 255, .66) !important;

  font-family:
    inherit !important;

  font-size:
    13px !important;

  line-height:
    1.4 !important;

  font-weight:
    600 !important;
}


/* =========================================================
   TEXT
   ========================================================= */

.kp26-case__text {
  max-width:
    510px;
}


.kp26-case__text p {
  margin:
    0
    0
    15px !important;

  color:
    rgba(255, 255, 255, .78) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.62 !important;

  font-weight:
    400 !important;
}


.kp26-case__text p:last-child {
  margin-bottom:
    0 !important;
}


.kp26-case__text strong {
  color:
    #ffffff;

  font-weight:
    700;
}


/* =========================================================
   GALLERY
   ========================================================= */

.kp26-case__gallery {
  min-width:
    0;

  display:
    grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  align-items:
    center;

  gap:
    18px;
}


.kp26-case__photo {
  position:
    relative;

  margin:
    0;

  aspect-ratio:
    4 / 5;

  overflow:
    hidden;

  border-radius:
    18px;

  background:
    rgba(255, 255, 255, .05);

  box-shadow:
    0 14px 30px
    rgba(0, 0, 0, .10);
}


.kp26-case__photo:nth-child(1) {
  transform:
    translateY(-9px);
}


.kp26-case__photo:nth-child(2) {
  transform:
    translateY(9px);
}


.kp26-case__photo img {
  width:
    100%;

  height:
    100%;

  display:
    block;

  object-fit:
    cover;

  transition:
    transform 500ms
    cubic-bezier(.2, .7, .2, 1);
}


@media (hover: hover) {

  .kp26-case__photo:hover img {
    transform:
      scale(1.025);
  }

}


/* =========================================================
   NAVIGATION
   ========================================================= */

.kp26-cases__navigation {
  position:
    relative;

  z-index:
    3;

  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    20px;

  margin-top:
    18px;

  padding:
    0
    5px;
}


.kp26-cases__counter {
  display:
    flex;

  align-items:
    center;

  gap:
    10px;

  color:
    var(--kp-muted);

  font-size:
    12px;

  line-height:
    1;
}


.kp26-cases__counter strong {
  color:
    var(--kp-navy);

  font-size:
    14px;

  font-weight:
    750;
}


.kp26-cases__counter > span:first-of-type {
  width:
    38px;

  height:
    1px;

  background:
    rgba(21, 21, 47, .18);
}


/* =========================================================
   ARROWS
   ========================================================= */

.kp26-cases__arrows {
  display:
    flex;

  align-items:
    center;

  gap:
    10px;
}


button.kp26-cases__arrow {
  appearance:
    none !important;

  -webkit-appearance:
    none !important;

  width:
    46px !important;

  height:
    46px !important;

  min-width:
    46px !important;

  min-height:
    46px !important;

  display:
    flex !important;

  align-items:
    center !important;

  justify-content:
    center !important;

  margin:
    0 !important;

  padding:
    0 !important;

  border:
    0 !important;

  border-radius:
    50% !important;

  background:
    var(--kp-orange) !important;

  color:
    #ffffff !important;

  cursor:
    pointer;

  box-shadow:
    0 8px 20px
    rgba(254, 94, 24, .18);

  transition:
    transform 180ms ease,
    background-color 180ms ease,
    box-shadow 180ms ease;
}


button.kp26-cases__arrow svg {
  width:
    18px;

  height:
    18px;

  fill:
    none;

  stroke:
    currentColor;

  stroke-width:
    2;

  stroke-linecap:
    round;

  stroke-linejoin:
    round;
}


button.kp26-cases__arrow:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset:
    4px;
}


@media (hover: hover) {

  button.kp26-cases__arrow:hover {
    transform:
      translateY(-2px);

    background:
      var(--kp-orange-dark) !important;

    box-shadow:
      0 11px 24px
      rgba(254, 94, 24, .23);
  }

}


/* =========================================================
   901–1024
   ========================================================= */

@media (min-width: 901px) and (max-width: 1024px) {

  .kp26-case {
    min-height:
      530px;

    grid-template-columns:
      minmax(0, .95fr)
      minmax(0, 1.05fr);

    gap:
      36px;

    padding:
      38px;
  }


  .kp26-case__text p {
    font-size:
      13.5px !important;

    line-height:
      1.55 !important;
  }


  .kp26-case__gallery {
    gap:
      12px;
  }


  .kp26-case__photo {
    border-radius:
      16px;
  }

}


/* =========================================================
   COMPACT LAPTOP
   niska wysokość ekranu
   ========================================================= */

@media (min-width: 901px) and (max-height: 850px) {

  .kp26-cases {
    padding-top:
      56px;

    padding-bottom:
      62px;
  }


  .kp26-cases__header {
    margin-bottom:
      34px;
  }


  .kp26-cases__lead {
    margin-top:
      15px !important;
  }


  .kp26-cases__stack {
    padding-top:
      28px;
  }


  .kp26-cases__stack::before {
    height:
      54px;
  }


  .kp26-cases__stack::after {
    top:
      13px;

    height:
      48px;
  }


  .kp26-case {
    min-height:
      490px;

    gap:
      clamp(32px, 4vw, 52px);

    padding:
      32px
      clamp(34px, 4vw, 48px);
  }


  .kp26-case__number {
    margin-bottom:
      16px;
  }


  .kp26-case__brand {
    margin-bottom:
      17px;
  }


  .kp26-case__logo {
    width:
      54px;

    height:
      54px;

    flex-basis:
      54px;
  }


  .kp26-case__name {
    font-size:
      22px;
  }


  .kp26-case__meta {
    font-size:
      12px !important;
  }


  .kp26-case__text p {
    margin-bottom:
      10px !important;

    font-size:
      13px !important;

    line-height:
      1.5 !important;
  }


  .kp26-case__gallery {
    max-height:
      390px;
  }


  .kp26-case__photo {
    height:
      370px;

    aspect-ratio:
      auto;
  }


  .kp26-cases__navigation {
    margin-top:
      12px;
  }


  button.kp26-cases__arrow {
    width:
      44px !important;

    height:
      44px !important;

    min-width:
      44px !important;

    min-height:
      44px !important;
  }

}


/* =========================================================
   WĄSKI TABLET — 768–900
   ========================================================= */

@media (min-width: 768px) and (max-width: 900px) {

  .kp26-cases {
    padding:
      58px
      24px
      66px;
  }


  .kp26-cases__header {
    margin-bottom:
      44px;
  }


  .kp26-case {
    min-height:
      0;

    grid-template-columns:
      1fr;

    gap:
      30px;

    padding:
      38px;

    align-items:
      start;
  }


  .kp26-case__copy {
    max-width:
      680px;
  }


  .kp26-case__text {
    max-width:
      680px;
  }


  .kp26-case__text p {
    font-size:
      14px !important;

    line-height:
      1.58 !important;
  }


  .kp26-case__gallery {
    width:
      100%;

    max-width:
      650px;

    gap:
      14px;
  }


  .kp26-case__photo {
    aspect-ratio:
      4 / 3;

    border-radius:
      17px;
  }


  .kp26-case__photo:nth-child(1),
  .kp26-case__photo:nth-child(2) {
    transform:
      none;
  }


  .kp26-cases__navigation {
    margin-top:
      14px;
  }


  button.kp26-cases__arrow {
    width:
      46px !important;

    height:
      46px !important;

    min-width:
      46px !important;

    min-height:
      46px !important;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-cases {
    padding:
      48px
      16px
      52px;
  }


  /* HEADER */

  .kp26-cases__header {
    margin-bottom:
      34px;

    text-align:
      left;
  }


  .kp26-cases__title {
    margin:
      0;

    font-size:
      clamp(29px, 8vw, 34px);

    line-height:
      1.1;
  }


  .kp26-cases__lead {
    margin:
      15px
      0
      0 !important;

    font-size:
      14.5px !important;

    line-height:
      1.56 !important;
  }


  /* STACK */

  .kp26-cases__stack {
    padding-top:
      24px;
  }


  .kp26-cases__stack::before {
    left:
      9%;

    width:
      82%;

    height:
      42px;

    border-radius:
      22px
      22px
      0
      0;
  }


  .kp26-cases__stack::after {
    top:
      11px;

    left:
      4%;

    width:
      92%;

    height:
      38px;

    border-radius:
      22px
      22px
      0
      0;
  }


  /* STAGE */

  .kp26-cases__stage {
    border-radius:
      24px;
  }


  /* CASE */

  .kp26-case {
    min-height:
      0;

    grid-template-columns:
      1fr;

    gap:
      24px;

    padding:
      26px
      19px
      19px;

    border-radius:
      24px;

    align-items:
      start;

    transform:
      translate3d(20px, 0, 0)
      scale(.995);
  }


  .kp26-case.is-leaving {
    transform:
      translate3d(-14px, 0, 0)
      scale(.997);
  }


  .kp26-cases__stage.is-reverse
  .kp26-case {
    transform:
      translate3d(-20px, 0, 0)
      scale(.995);
  }


  .kp26-cases__stage.is-reverse
  .kp26-case.is-active {
    transform:
      translate3d(0, 0, 0)
      scale(1);
  }


  .kp26-cases__stage.is-reverse
  .kp26-case.is-leaving {
    transform:
      translate3d(14px, 0, 0)
      scale(.997);
  }


  /* NUMBER */

  .kp26-case__number {
    margin-bottom:
      15px;

    font-size:
      11px;
  }


  /* BRAND */

  .kp26-case__brand {
    gap:
      12px;

    margin-bottom:
      17px;
  }


  .kp26-case__logo {
    width:
      54px;

    height:
      54px;

    flex:
      0 0 54px;
  }


  .kp26-case__name {
    font-size:
      21px;
  }


  .kp26-case__meta {
    font-size:
      12.5px !important;

    line-height:
      1.4 !important;
  }


  /* TEXT */

  .kp26-case__text {
    max-width:
      none;
  }


  .kp26-case__text p {
    margin-bottom:
      11px !important;

    font-size:
      14px !important;

    line-height:
      1.56 !important;
  }


  /* GALLERY */

  .kp26-case__gallery {
    gap:
      8px;
  }


  .kp26-case__photo {
    border-radius:
      13px;

    box-shadow:
      0 10px 22px
      rgba(0, 0, 0, .10);
  }


  .kp26-case__photo:nth-child(1),
  .kp26-case__photo:nth-child(2) {
    transform:
      none;
  }


  /* NAVIGATION */

  .kp26-cases__navigation {
    margin-top:
      12px;

    padding:
      0;

    align-items:
      center;
  }


  .kp26-cases__counter {
    gap:
      8px;

    font-size:
      11px;
  }


  .kp26-cases__counter strong {
    font-size:
      13px;
  }


  .kp26-cases__counter > span:first-of-type {
    width:
      28px;
  }


  .kp26-cases__arrows {
    gap:
      8px;
  }


  button.kp26-cases__arrow {
    width:
      46px !important;

    height:
      46px !important;

    min-width:
      46px !important;

    min-height:
      46px !important;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .kp26-case {
    padding:
      24px
      16px
      18px;
  }


  .kp26-case__gallery {
    grid-template-columns:
      1fr;
  }


  .kp26-case__photo {
    aspect-ratio:
      16 / 11;
  }


  .kp26-cases__navigation {
    margin-top:
      10px;
  }


  button.kp26-cases__arrow {
    width:
      46px !important;

    height:
      46px !important;

    min-width:
      46px !important;

    min-height:
      46px !important;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp26-case,
  .kp26-case.is-active,
  .kp26-case.is-leaving,
  .kp26-cases__stage.is-reverse .kp26-case,
  .kp26-cases__stage.is-reverse .kp26-case.is-active,
  .kp26-cases__stage.is-reverse .kp26-case.is-leaving {
    transition:
      none !important;

    transform:
      none !important;
  }


  .kp26-case__photo img,
  button.kp26-cases__arrow {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a193fa8 *//* Knajpa PRO — pełny CSS sekcji opinii. */
.kp26-reviews {
  box-sizing: border-box;
  --kp-navy: #15152f;
  --kp-green: #007569;
  --kp-orange: #fe5e18;
  --kp-soft: #f7f6fb;
  --kp-muted: #68747d;
  --kp-gap: 18px;
  width: 100%;
  margin: 0 !important;
  padding: clamp(72px, 7vw, 104px) 24px clamp(80px, 8vw, 112px);
  overflow: hidden;
  background: #fff;
  color: var(--kp-navy);
  font-family: inherit;
}

.kp26-reviews *,
.kp26-reviews *::before,
.kp26-reviews *::after { box-sizing: border-box; }

.kp26-reviews__inner { width: min(1240px, 100%); margin: 0 auto; }

.kp26-reviews__header {
  max-width: 820px;
  margin: 0 auto clamp(38px, 5vw, 62px);
  text-align: center;
}

.kp26-reviews__title {
  max-width: 790px;
  margin: 0 auto;
  color: var(--kp-navy);
  font: inherit;
  font-size: clamp(34px, 3.4vw, 48px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -.04em;
  text-wrap: balance;
}

.kp26-reviews__lead {
  max-width: 660px;
  margin: 18px auto 0 !important;
  color: var(--kp-muted) !important;
  font: inherit !important;
  font-size: clamp(15px, 1.2vw, 17px) !important;
  line-height: 1.6 !important;
}

/* Rolki zachowują pełny kadr 9:16. Instagram osadza je w odtwarzaczu
   4:5, dlatego powiększamy iframe i chowamy jedynie jego boczne pasy. */
.kp26-video-slider { min-width: 0; }

.kp26-video-slider__viewport {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.kp26-video-slider__viewport::-webkit-scrollbar { display: none; }
.kp26-video-slider__viewport:focus-visible {
  outline: 3px solid var(--kp-orange);
  outline-offset: 4px;
  border-radius: 20px;
}

.kp26-video-slider__track {
  display: flex;
  gap: var(--kp-gap);
  width: 100%;
}

.kp26-video-card {
  flex: 0 0 calc((100% - 2 * var(--kp-gap)) / 3);
  min-width: 0;
  margin: 0;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.kp26-video-card__frame {
  position: relative;
  width: 100%;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  overflow: clip;
  isolation: isolate;
  border: 1px solid rgba(21, 21, 47, .10);
  border-radius: 24px;
  background: var(--kp-soft);
  box-shadow: 0 16px 40px rgba(21, 21, 47, .08);
}

.kp26-video-card__frame iframe {
  position: absolute;
  top: -54px;
  left: 50%;
  width: 142.222%;
  height: calc(100% + 220px);
  max-width: none;
  margin: 0;
  padding: 0;
  transform: translateX(-50%);
  border: 0;
  background: #fff;
}

.kp26-video-slider__navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 20px;
  padding: 0 2px;
}

.kp26-video-slider__counter {
  display: flex;
  align-items: center;
  gap: 11px;
  color: var(--kp-muted);
  font-size: 13px;
  line-height: 1;
}

.kp26-video-slider__counter strong {
  color: var(--kp-navy);
  font-size: 15px;
  font-weight: 750;
}

.kp26-video-slider__counter-line {
  display: block;
  width: 34px;
  height: 1px;
  background: rgba(21, 21, 47, .22);
}

.kp26-video-slider__arrows { display: flex; align-items: center; gap: 10px; }

.kp26-reviews button.kp26-video-slider__arrow {
  appearance: none !important;
  display: grid !important;
  place-items: center;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--kp-green) !important;
  color: #fff !important;
  cursor: pointer;
  transition: transform .18s ease, opacity .18s ease, background-color .18s ease;
}

.kp26-video-slider__arrow svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kp26-reviews button.kp26-video-slider__arrow:disabled {
  opacity: .32;
  cursor: default;
}

.kp26-reviews button.kp26-video-slider__arrow:focus-visible {
  outline: 3px solid var(--kp-orange);
  outline-offset: 4px;
}

@media (hover: hover) {
  .kp26-reviews button.kp26-video-slider__arrow:not(:disabled):hover {
    transform: translateY(-2px);
    background: #005f56 !important;
  }
}

/* Opinie tekstowe zachowują treść i układ sekcji źródłowej. */
.kp26-reviews-text { margin-top: clamp(72px, 7vw, 100px); }

.kp26-reviews-text__header { margin-bottom: 30px; }

.kp26-reviews-text__header h3 {
  margin: 0;
  color: var(--kp-navy);
  font: inherit;
  font-size: clamp(27px, 2.5vw, 36px);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -.03em;
}

.kp26-reviews-text__grid { columns: 2; column-gap: 18px; }

.kp26-review-card {
  display: inline-block;
  width: 100%;
  margin: 0 0 18px;
  padding: clamp(25px, 2.6vw, 34px);
  break-inside: avoid;
  border: 1px solid rgba(21, 21, 47, .08);
  border-radius: 24px;
  background: var(--kp-soft);
  box-shadow: 0 8px 26px rgba(21, 21, 47, .025);
}

.kp26-review-card__stars {
  margin-bottom: 18px;
  color: var(--kp-orange);
  font-size: 20px;
  line-height: 1;
  letter-spacing: 2px;
}

.kp26-review-card h4 {
  margin: 0 0 20px;
  color: var(--kp-navy);
  font: inherit;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.02em;
}

.kp26-review-card__body p {
  margin: 0 0 15px !important;
  color: #46515a !important;
  font: inherit !important;
  font-size: 14px !important;
  line-height: 1.62 !important;
  font-weight: 400 !important;
}

.kp26-review-card__body p:last-child { margin-bottom: 0 !important; }
.kp26-review-card__body strong { color: var(--kp-navy); font-weight: 700; }

@media (hover: hover) {
  .kp26-review-card { transition: transform .19s ease, box-shadow .19s ease; }
  .kp26-review-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 32px rgba(21, 21, 47, .055);
  }
}

/* Tablet: dwa filmy. */
@media (min-width: 768px) and (max-width: 1023px) {
  .kp26-video-card { flex-basis: calc((100% - var(--kp-gap)) / 2); }
}

/* Telefon: jeden film, pełna szerokość dostępnego miejsca. */
@media (max-width: 767px) {
  .kp26-reviews { padding: 68px 18px 82px; }
  .kp26-reviews__header { margin-bottom: 35px; }
  .kp26-reviews__title { font-size: clamp(31px, 8.5vw, 38px); }
  .kp26-video-card { flex-basis: 100%; }
  .kp26-video-card__frame { border-radius: 21px; }
  .kp26-video-slider__navigation { margin-top: 18px; }
  .kp26-reviews-text { margin-top: 72px; }
  .kp26-reviews-text__grid { columns: 1; }
  .kp26-review-card { margin-bottom: 15px; border-radius: 21px; }
}

@media (max-width: 390px) {
  .kp26-reviews { padding-inline: 16px; }
  .kp26-video-card__frame { border-radius: 18px; }
  .kp26-review-card { padding: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  .kp26-video-slider__viewport { scroll-behavior: auto; }
  .kp26-reviews button.kp26-video-slider__arrow,
  .kp26-review-card { transition: none; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-34fe286 */.kp26-work {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-soft: #f7f6fb;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  --kp-border: rgba(21, 21, 47, .09);

  width: 100%;
  margin: 0 !important;

  padding:
    clamp(72px, 7vw, 96px)
    24px
    clamp(78px, 8vw, 104px);

  background: var(--kp-soft);

  color: var(--kp-text);

  font-family: inherit;

  overflow: hidden;
}

.kp26-work *,
.kp26-work *::before,
.kp26-work *::after {
  box-sizing: border-box;
}

.kp26-work__inner {
  width: min(1240px, 100%);
  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.kp26-work__header {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(280px, 390px);

  align-items: end;

  gap: 60px;

  margin-bottom:
    clamp(44px, 5vw, 60px);
}

.kp26-work__heading {
  min-width: 0;
}

.kp26-work__title {
  max-width: 650px;

  margin: 0;

  color: var(--kp-text);

  font-family: inherit;

  font-size:
    clamp(36px, 3.4vw, 44px);

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -.038em;
}

.kp26-work__intro {
  display: flex;

  flex-direction: column;

  align-items: flex-end;

  gap: 18px;

  text-align: right;
}

.kp26-work__intro p {
  max-width: 365px;

  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    15px !important;

  line-height:
    1.6 !important;

  font-weight:
    400 !important;
}

.kp26-work__intro-arrow {
  width: 46px;
  height: 46px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background:
    var(--kp-green);

  color: #ffffff;
}

.kp26-work__intro-arrow svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}


/* =========================================================
   GRID
   ========================================================= */

.kp26-work__grid {
  display: grid;

  grid-template-columns:
    1fr
    1.03fr
    1.30fr;

  grid-template-rows:
    minmax(320px, auto)
    minmax(365px, auto);

  gap: 18px;
}


/* =========================================================
   CARD BASE
   ========================================================= */

.kp26-work-card {
  min-width: 0;

  position: relative;

  overflow: hidden;

  border:
    1px solid
    var(--kp-border);

  border-radius: 28px;

  background: #ffffff;

  box-shadow:
    0 12px 34px
    rgba(21, 21, 47, .045);
}

.kp26-work-card__copy {
  position: relative;

  z-index: 4;
}

.kp26-work-card__step {
  display: block;

  margin-bottom: 12px;

  color: #727d85;

  font-family: inherit;

  font-size: 11px;

  line-height: 1;

  font-weight: 750;

  letter-spacing: .03em;
}


/* =========================================================
   TYPOGRAPHY
   ========================================================= */

.kp26-work-card--analysis h3,
.kp26-work-card--solutions h3,
.kp26-work-card--training h3 {
  margin:
    0
    0
    12px;

  color: var(--kp-text);

  font-family: inherit;

  font-size:
    clamp(22px, 1.85vw, 25px);

  line-height: 1.1;

  font-weight: 700;

  letter-spacing: -.03em;
}

.kp26-work-card--analysis p,
.kp26-work-card--solutions p,
.kp26-work-card--training p {
  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.55 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   01 — ANALIZA
   ========================================================= */

.kp26-work-card--analysis {
  grid-column: 1;

  grid-row:
    1 / span 2;

  display: flex;

  flex-direction: column;
}

.kp26-work-card--analysis
.kp26-work-card__copy {
  padding:
    28px
    27px
    20px;
}

.kp26-work-card--analysis h3 {
  max-width: 330px;
}

.kp26-work-card--analysis p {
  max-width: 335px;
}

.kp26-work-card__analysis-photo {
  flex: 1;

  min-height: 300px;

  position: relative;

  overflow: hidden;
}

.kp26-work-card__analysis-photo::before {
  content: "";

  position: absolute;

  z-index: 2;

  top: 0;
  left: 0;
  right: 0;

  height: 72px;

  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      rgba(255, 255, 255, .80) 26%,
      rgba(255, 255, 255, 0) 100%
    );

  pointer-events: none;
}

.kp26-work-card__analysis-photo img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  object-position: center center;

  transition:
    transform 650ms
    cubic-bezier(.2, .7, .2, 1);
}

.kp26-work-card__photo-label {
  position: absolute;

  z-index: 4;

  right: 18px;
  bottom: 18px;

  min-height: 42px;

  display: flex;

  align-items: center;

  gap: 10px;

  padding:
    6px
    14px
    6px
    7px;

  border-radius: 999px;

  background:
    rgba(21, 21, 47, .90);

  color: #ffffff;

  backdrop-filter: blur(8px);

  -webkit-backdrop-filter: blur(8px);

  font-size: 11px;

  line-height: 1.2;

  font-weight: 650;
}

.kp26-work-card__photo-label span {
  width: 30px;
  height: 30px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background:
    var(--kp-orange);

  color: #ffffff;

  font-size: 10px;

  font-weight: 800;
}


/* =========================================================
   02 — ROZWIĄZANIA
   ========================================================= */

.kp26-work-card--solutions {
  grid-column: 2;
  grid-row: 1;

  display: flex;

  flex-direction: column;

  padding:
    27px
    26px
    0;

  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #ffffff 58%,
      rgba(0, 117, 105, .04) 100%
    );
}

.kp26-work-card__copy--solutions {
  width: 100%;

  flex:
    0 0 auto;
}

.kp26-work-card--solutions h3 {
  max-width: 320px;
}

.kp26-work-card--solutions p {
  max-width: 330px;
}

.kp26-work-card__devices {
  flex: 1;

  min-height: 125px;

  position: relative;

  display: flex;

  align-items: flex-end;

  justify-content: center;

  margin-top: 10px;

  padding:
    0
    0
    8px;
}

.kp26-work-card__devices-shadow {
  position: absolute;

  z-index: 0;

  left: 50%;
  bottom: 10px;

  width: 72%;
  height: 22px;

  transform:
    translateX(-50%);

  border-radius: 50%;

  background:
    rgba(21, 21, 47, .15);

  filter:
    blur(13px);

  opacity: .38;

  pointer-events: none;
}

.kp26-work-card__devices img {
  width: auto;

  max-width: 88%;
  max-height: 142px;

  position: relative;

  z-index: 2;

  display: block;

  object-fit: contain;

  filter:
    drop-shadow(
      0 12px 15px
      rgba(21, 21, 47, .10)
    );

  transition:
    transform 500ms
    cubic-bezier(.2, .7, .2, 1);
}


/* =========================================================
   03 — SZKOLENIE
   ========================================================= */

.kp26-work-card--training {
  grid-column: 3;
  grid-row: 1;

  display: grid;

  grid-template-columns:
    minmax(0, 1.1fr)
    minmax(150px, .9fr);

  min-height: 320px;

  background: #ffffff;
}

.kp26-work-card__training-content {
  min-width: 0;

  position: relative;

  z-index: 3;

  display: flex;

  flex-direction: column;

  align-items: flex-start;

  padding:
    27px
    22px
    24px
    27px;
}

.kp26-work-card__copy--training {
  width: 100%;
}

.kp26-work-card--training h3 {
  max-width: 285px;
}

.kp26-work-card--training p {
  max-width: 290px;
}

.kp26-work-card__training-note {
  width: 100%;

  max-width: 285px;

  display: flex;

  align-items: center;

  gap: 10px;

  margin-top: 20px;

  padding:
    11px
    12px;

  border-radius: 15px;

  background:
    rgba(0, 117, 105, .065);

  color: var(--kp-text);

  font-family: inherit;

  font-size: 12px;

  line-height: 1.35;

  font-weight: 650;
}

.kp26-work-card__check {
  width: 30px;
  height: 30px;

  flex:
    0 0 30px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 9px;

  background:
    var(--kp-green);

  color: #ffffff;
}

.kp26-work-card__check svg {
  width: 15px;
  height: 15px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2.2;

  stroke-linecap: round;

  stroke-linejoin: round;
}

.kp26-work-card__training-photo {
  min-height: 100%;

  overflow: hidden;
}

.kp26-work-card__training-photo img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  object-position:
    52% center;

  transition:
    transform 650ms
    cubic-bezier(.2, .7, .2, 1);
}


/* =========================================================
   04 — WSPARCIE
   ========================================================= */

.kp26-work-card--support {
  grid-column:
    2 / span 2;

  grid-row: 2;

  display: grid;

  grid-template-columns:
    minmax(0, .92fr)
    minmax(0, 1.08fr);

  align-items: stretch;

  min-height: 365px;

  border-color:
    rgba(255, 255, 255, .06);

  background:
    var(--kp-navy);

  box-shadow:
    0 18px 40px
    rgba(21, 21, 47, .12);
}

.kp26-work-card__support-copy {
  position: relative;

  z-index: 4;

  display: flex;

  flex-direction: column;

  align-items: flex-start;

  justify-content: flex-start;

  padding:
    30px
    22px
    28px
    32px;
}

.kp26-work-card__support-top {
  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 10px;

  margin-bottom: 16px;
}

.kp26-work-card__step--light {
  margin: 0;

  color:
    rgba(255, 255, 255, .60);
}

.kp26-work-card__support-badge {
  min-height: 28px;

  display: inline-flex;

  align-items: center;

  padding:
    5px
    10px;

  border:
    1px solid
    rgba(255, 255, 255, .16);

  border-radius: 999px;

  color:
    rgba(255, 255, 255, .76);

  font-size: 11px;

  line-height: 1;

  font-weight: 650;
}

.kp26-work-card--support h3 {
  max-width: 390px;

  margin:
    0
    0
    14px;

  color: #ffffff;

  font-family: inherit;

  font-size:
    clamp(30px, 3vw, 39px);

  line-height: 1.02;

  font-weight: 700;

  letter-spacing: -.03em;
}

.kp26-work-card--support h3 span {
  display: block;

  color:
    var(--kp-orange);
}

.kp26-work-card--support p {
  max-width: 430px;

  margin: 0 !important;

  color:
    rgba(255, 255, 255, .72) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.55 !important;

  font-weight:
    400 !important;
}

.kp26-work-card__support-points {
  display: flex;

  flex-wrap: wrap;

  gap:
    9px
    15px;

  margin-top: 18px;

  color:
    rgba(255, 255, 255, .84);

  font-size: 12px;

  line-height: 1.3;
}

.kp26-work-card__support-points span {
  display: inline-flex;

  align-items: center;

  gap: 6px;
}

.kp26-work-card__support-points i {
  width: 6px;
  height: 6px;

  flex:
    0 0 6px;

  display: block;

  border-radius: 50%;

  background:
    var(--kp-orange);
}


/* =========================================================
   CTA
   ========================================================= */

.kp26-work-card__cta {
  min-width: 0;
  min-height: 54px;

  display: inline-flex;

  align-items: center;

  justify-content: space-between;

  gap: 14px;

  margin-top: 22px;

  padding:
    7px
    7px
    7px
    18px;

  border-radius: 999px;

  background: #ffffff;

  color:
    var(--kp-navy) !important;

  font-family: inherit;

  font-size: 13px;

  line-height: 1.3;

  font-weight: 700;

  text-decoration:
    none !important;

  white-space: normal;

  box-shadow:
    0 10px 26px
    rgba(0, 0, 0, .14);

  transition:
    transform 180ms ease,
    box-shadow 180ms ease;
}

.kp26-work-card__cta > span:first-child {
  min-width: 0;

  flex:
    1 1 auto;
}

.kp26-work-card__cta-arrow {
  width: 40px;
  height: 40px;

  flex:
    0 0 40px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background:
    var(--kp-orange);

  color: #ffffff;

  transition:
    transform 180ms ease,
    background-color 180ms ease;
}

.kp26-work-card__cta-arrow svg {
  width: 17px;
  height: 17px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}

.kp26-work-card__cta:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset:
    4px;
}


/* =========================================================
   SUPPORT IMAGE
   ========================================================= */

.kp26-work-card__support-visual {
  min-width: 0;

  position: relative;

  display: flex;

  align-items: stretch;

  padding:
    25px
    26px
    25px
    10px;
}

.kp26-work-card__support-photo {
  width: 100%;
  height: 100%;

  min-height: 285px;

  overflow: hidden;

  border-radius: 20px;

  box-shadow:
    0 18px 38px
    rgba(0, 0, 0, .20);
}

.kp26-work-card__support-photo img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  object-position:
    center center;

  transition:
    transform 650ms
    cubic-bezier(.2, .7, .2, 1);
}

.kp26-work-card__support-label {
  position: absolute;

  z-index: 5;

  top: 16px;
  right: 14px;

  display: flex;

  align-items: center;

  gap: 10px;

  min-width: 215px;

  padding:
    10px
    12px;

  border-radius: 14px;

  background:
    rgba(255, 255, 255, .97);

  color:
    var(--kp-text);

  box-shadow:
    0 12px 28px
    rgba(0, 0, 0, .12);
}

.kp26-work-card__support-label-icon {
  width: 32px;
  height: 32px;

  flex:
    0 0 32px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 9px;

  background:
    var(--kp-orange);

  color: #ffffff;
}

.kp26-work-card__support-label-icon svg {
  width: 16px;
  height: 16px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2.2;

  stroke-linecap: round;

  stroke-linejoin: round;
}

.kp26-work-card__support-label strong {
  display: block;

  margin-bottom: 2px;

  font-size: 12px;

  line-height: 1.2;

  font-weight: 750;
}

.kp26-work-card__support-label small {
  display: block;

  color:
    var(--kp-muted);

  font-size: 10.5px;

  line-height: 1.25;
}


/* =========================================================
   HOVER
   ========================================================= */

@media (hover: hover) {

  .kp26-work-card--analysis:hover
  .kp26-work-card__analysis-photo img,

  .kp26-work-card--training:hover
  .kp26-work-card__training-photo img,

  .kp26-work-card--support:hover
  .kp26-work-card__support-photo img {
    transform:
      scale(1.025);
  }

  .kp26-work-card--solutions:hover
  .kp26-work-card__devices img {
    transform:
      translateY(-4px);
  }

  .kp26-work-card__cta:hover {
    transform:
      translateY(-2px);

    color:
      var(--kp-navy) !important;

    box-shadow:
      0 14px 30px
      rgba(0, 0, 0, .18);
  }

  .kp26-work-card__cta:hover
  .kp26-work-card__cta-arrow {
    transform:
      translateX(3px);

    background:
      var(--kp-orange-dark);
  }

}


/* =========================================================
   LAPTOP 1025–1199
   ========================================================= */

@media (min-width: 1025px) and (max-width: 1199px) {

  .kp26-work__grid {
    grid-template-columns:
      .92fr
      1fr
      1.28fr;

    grid-template-rows:
      minmax(330px, auto)
      minmax(370px, auto);

    gap: 14px;
  }

  .kp26-work-card--analysis
  .kp26-work-card__copy {
    padding:
      24px
      22px
      18px;
  }

  .kp26-work-card--solutions {
    padding:
      24px
      22px
      0;
  }

  .kp26-work-card__training-content {
    padding:
      24px
      18px
      22px
      22px;
  }

  .kp26-work-card--training {
    grid-template-columns:
      minmax(0, 1.15fr)
      minmax(135px, .85fr);
  }

  .kp26-work-card--training h3 {
    font-size: 22px;
  }

  .kp26-work-card--training p {
    font-size:
      13.5px !important;
  }

  .kp26-work-card__training-note {
    margin-top: 16px;

    font-size: 11.5px;
  }

  .kp26-work-card--support {
    min-height: 370px;
  }

}


/* =========================================================
   901–1024
   ========================================================= */

@media (min-width: 901px) and (max-width: 1024px) {

  .kp26-work__header {
    grid-template-columns:
      minmax(0, 1fr)
      minmax(240px, 320px);

    gap: 35px;
  }

  .kp26-work__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    grid-template-rows:
      auto;

    gap: 14px;
  }

  .kp26-work-card--analysis {
    grid-column: 1;

    grid-row:
      1 / span 2;

    min-height: 640px;
  }

  .kp26-work-card--solutions {
    grid-column: 2;
    grid-row: 1;

    min-height: 320px;
  }

  .kp26-work-card__devices img {
    max-width: 79%;

    max-height: 138px;
  }

  .kp26-work-card--training {
    grid-column: 2;
    grid-row: 2;

    min-height: 330px;

    grid-template-columns:
      minmax(0, 1.1fr)
      minmax(130px, .9fr);
  }

  .kp26-work-card--support {
    grid-column:
      1 / -1;

    grid-row: 3;

    min-height: 360px;
  }

}


/* =========================================================
   768–900
   ========================================================= */

@media (min-width: 768px) and (max-width: 900px) {

  .kp26-work {
    padding:
      64px
      24px
      72px;
  }

  .kp26-work__header {
    grid-template-columns:
      1fr;

    gap: 20px;

    margin-bottom: 42px;
  }

  .kp26-work__intro {
    max-width: 620px;

    align-items:
      flex-start;

    text-align: left;
  }

  .kp26-work__intro p {
    max-width: 620px;
  }

  .kp26-work__intro-arrow {
    display: none;
  }

  .kp26-work__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    grid-template-rows: auto;

    gap: 14px;
  }

  .kp26-work-card--analysis {
    grid-column: 1;

    grid-row:
      1 / span 2;

    min-height: 620px;
  }

  .kp26-work-card--solutions {
    grid-column: 2;
    grid-row: 1;

    min-height: 300px;
  }

  .kp26-work-card--training {
    grid-column: 2;
    grid-row: 2;

    min-height: 330px;

    grid-template-columns:
      1fr;

    grid-template-rows:
      auto
      160px;
  }

  .kp26-work-card__training-photo {
    height: 160px;
  }

  .kp26-work-card__training-note {
    margin-top: 18px;
  }

  .kp26-work-card--support {
    grid-column:
      1 / -1;

    grid-row: 3;

    min-height: 0;
  }

  .kp26-work-card__support-photo {
    min-height: 250px;
  }

}


/* =========================================================
   NISKI LAPTOP
   ========================================================= */

@media (min-width: 901px) and (max-height: 850px) {

  .kp26-work {
    padding-top: 52px;
    padding-bottom: 58px;
  }

  .kp26-work__header {
    margin-bottom: 30px;
  }

  .kp26-work__grid {
    grid-template-rows:
      minmax(310px, auto)
      minmax(350px, auto);
  }

  .kp26-work-card--analysis
  .kp26-work-card__copy {
    padding-top: 23px;
    padding-bottom: 16px;
  }

  .kp26-work-card--solutions {
    padding-top: 23px;
  }

  .kp26-work-card__training-content {
    padding-top: 23px;
    padding-bottom: 20px;
  }

  .kp26-work-card__support-copy {
    padding-top: 25px;
    padding-bottom: 23px;
  }

  .kp26-work-card__support-visual {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .kp26-work-card__support-photo {
    min-height: 280px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-work {
    padding:
      48px
      16px
      52px;
  }

  .kp26-work__header {
    display: block;

    margin-bottom: 32px;
  }

  .kp26-work__title {
    max-width: 100%;

    font-size:
      clamp(29px, 8vw, 34px);
  }

  .kp26-work__intro {
    display: block;

    margin-top: 17px;

    text-align: left;
  }

  .kp26-work__intro p {
    max-width: none;

    font-size:
      14.5px !important;

    line-height:
      1.57 !important;
  }

  .kp26-work__intro-arrow {
    display: none;
  }

  .kp26-work__grid {
    display: flex;

    flex-direction: column;

    gap: 11px;
  }

  .kp26-work-card {
    width: 100%;

    min-height: 0;

    border-radius: 22px;
  }

  .kp26-work-card__step {
    margin-bottom: 10px;

    font-size: 11px;
  }

  .kp26-work-card--analysis h3,
  .kp26-work-card--solutions h3,
  .kp26-work-card--training h3 {
    font-size: 22px;

    line-height: 1.12;
  }

  .kp26-work-card--analysis p,
  .kp26-work-card--solutions p,
  .kp26-work-card--training p {
    font-size:
      14px !important;

    line-height:
      1.55 !important;
  }

  .kp26-work-card--analysis {
    min-height: 0;
  }

  .kp26-work-card--analysis
  .kp26-work-card__copy {
    padding:
      23px
      20px
      17px;
  }

  .kp26-work-card__analysis-photo {
    flex: none;

    height:
      clamp(260px, 76vw, 330px);

    min-height: 0;
  }

  .kp26-work-card__photo-label {
    right: 12px;
    bottom: 12px;
  }

  .kp26-work-card--solutions {
    min-height: 0;

    padding:
      23px
      20px
      0;
  }

  .kp26-work-card--solutions h3,
  .kp26-work-card--solutions p {
    max-width: none;
  }

  .kp26-work-card__devices {
    flex: none;

    min-height: 160px;

    margin-top: 10px;

    padding-bottom: 8px;
  }

  .kp26-work-card__devices img {
    max-width: 78%;

    max-height: 150px;
  }

  .kp26-work-card--training {
    min-height: 0;

    grid-template-columns:
      1fr;

    grid-template-rows:
      auto
      190px;
  }

  .kp26-work-card__training-content {
    padding:
      23px
      20px
      20px;
  }

  .kp26-work-card--training h3,
  .kp26-work-card--training p {
    max-width: none;
  }

  .kp26-work-card__training-note {
    max-width: 100%;

    margin-top: 17px;

    font-size: 12px;
  }

  .kp26-work-card__training-photo {
    height: 190px;
  }

  .kp26-work-card--support {
    min-height: 0;

    grid-template-columns: 1fr;
  }

  .kp26-work-card__support-copy {
    padding:
      25px
      20px
      24px;
  }

  .kp26-work-card__support-top {
    margin-bottom: 14px;
  }

  .kp26-work-card--support h3 {
    margin-bottom: 13px;

    font-size:
      clamp(29px, 8vw, 35px);
  }

  .kp26-work-card--support p {
    font-size:
      14px !important;
  }

  .kp26-work-card__support-points {
    gap:
      8px
      13px;

    margin-top: 16px;

    font-size: 12px;
  }

  .kp26-work-card__cta {
    width: 100%;

    min-height: 54px;

    justify-content:
      space-between;

    margin-top: 20px;

    font-size: 13px;
  }

  .kp26-work-card__cta-arrow {
    width: 40px;
    height: 40px;

    flex:
      0 0 40px;
  }

  .kp26-work-card__support-visual {
    min-height: 0;

    padding:
      0
      16px
      16px;
  }

  .kp26-work-card__support-photo {
    height:
      clamp(220px, 65vw, 280px);

    min-height: 0;
  }

  .kp26-work-card__support-label {
    top: 10px;
    right: 8px;

    min-width: 0;

    max-width:
      calc(100% - 32px);

    padding:
      9px
      11px;
  }

  .kp26-work-card__support-label strong {
    font-size: 12px;
  }

  .kp26-work-card__support-label small {
    font-size: 10.5px;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .kp26-work {
    padding-left: 13px;
    padding-right: 13px;
  }

  .kp26-work-card--analysis
  .kp26-work-card__copy,
  .kp26-work-card__training-content,
  .kp26-work-card__support-copy {
    padding-left: 18px;
    padding-right: 18px;
  }

  .kp26-work-card--solutions {
    padding-left: 18px;
    padding-right: 18px;
  }

  .kp26-work-card__analysis-photo {
    height: 265px;
  }

  .kp26-work-card__devices img {
    max-width: 84%;
  }

  .kp26-work-card__training-photo {
    height: 175px;
  }

  .kp26-work-card__support-photo {
    height: 225px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp26-work-card__analysis-photo img,
  .kp26-work-card__devices img,
  .kp26-work-card__training-photo img,
  .kp26-work-card__support-photo img,
  .kp26-work-card__cta,
  .kp26-work-card__cta-arrow {
    transition: none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-275f820 *//* =========================================================
   KNAJPA PRO — WARTOŚĆ SYSTEMU
   CLEAN RESPONSIVE VERSION
   ========================================================= */

.kp26-value {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-soft: #f7f6fb;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  --kp-border: rgba(21, 21, 47, .08);

  width: 100%;

  margin: 0 !important;

  padding:
    clamp(74px, 7vw, 96px)
    24px
    clamp(78px, 8vw, 104px);

  background:
    #ffffff;

  color:
    var(--kp-text);

  font-family:
    inherit;

  overflow:
    hidden;
}


.kp26-value *,
.kp26-value *::before,
.kp26-value *::after {
  box-sizing:
    border-box;
}


.kp26-value__inner {
  width:
    min(1240px, 100%);

  margin:
    0 auto;

  display:
    grid;

  grid-template-columns:
    minmax(0, .84fr)
    minmax(0, 1.16fr);

  gap:
    18px;

  align-items:
    stretch;
}


/* =========================================================
   LEWA KARTA
   ========================================================= */

.kp26-value-main {
  min-width:
    0;

  display:
    grid;

  grid-template-rows:
    minmax(0, 1.02fr)
    minmax(0, .98fr);

  overflow:
    hidden;

  border-radius:
    30px;

  background:
    var(--kp-navy);

  box-shadow:
    0 18px 42px
    rgba(21, 21, 47, .10);
}


/* =========================================================
   PHOTO
   ========================================================= */

.kp26-value-main__photo {
  min-height:
    0;

  overflow:
    hidden;

  background:
    #080811;
}


.kp26-value-main__photo img {
  width:
    100%;

  height:
    100%;

  display:
    block;

  object-fit:
    cover;

  object-position:
    center center;

  transition:
    transform 650ms
    cubic-bezier(.2, .7, .2, 1);
}


/* =========================================================
   LEWA TREŚĆ
   ========================================================= */

.kp26-value-main__content {
  min-height:
    0;

  display:
    flex;

  flex-direction:
    column;

  justify-content:
    center;

  align-items:
    flex-start;

  padding:
    clamp(30px, 3.2vw, 40px);
}


.kp26-value-main h2 {
  max-width:
    510px;

  margin:
    0
    0
    17px;

  color:
    #ffffff;

  font-family:
    inherit;

  font-size:
    clamp(30px, 2.65vw, 37px);

  line-height:
    1.08;

  font-weight:
    700;

  letter-spacing:
    -.036em;
}


.kp26-value-main__content > p {
  max-width:
    505px;

  margin:
    0 !important;

  color:
    rgba(255, 255, 255, .72) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.6 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   TAGI
   ========================================================= */

.kp26-value-main__tags {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    9px
    10px;

  margin-top:
    22px;
}


.kp26-value-main__tags span {
  min-height:
    34px;

  display:
    inline-flex;

  align-items:
    center;

  gap:
    8px;

  padding:
    7px
    12px;

  border:
    1px solid
    rgba(255, 255, 255, .12);

  border-radius:
    999px;

  color:
    rgba(255, 255, 255, .84);

  font-size:
    12px;

  line-height:
    1.2;

  font-weight:
    600;
}


.kp26-value-main__tags i {
  width:
    6px;

  height:
    6px;

  flex:
    0 0 6px;

  display:
    block;

  border-radius:
    50%;

  background:
    var(--kp-orange);
}


/* =========================================================
   PRAWA STRONA
   ========================================================= */

.kp26-value__cards {
  min-width:
    0;

  display:
    grid;

  grid-template-rows:
    repeat(2, minmax(0, 1fr));

  gap:
    18px;
}


/* =========================================================
   KARTA BENEFITU
   ========================================================= */

.kp26-value-card {
  min-width:
    0;

  display:
    grid;

  grid-template-columns:
    minmax(0, 1.12fr)
    minmax(250px, .88fr);

  align-items:
    center;

  gap:
    clamp(24px, 3vw, 40px);

  padding:
    24px
    28px
    24px
    22px;

  overflow:
    hidden;

  border:
    1px solid
    var(--kp-border);

  border-radius:
    28px;

  background:
    var(--kp-soft);

  box-shadow:
    0 9px 30px
    rgba(21, 21, 47, .025);
}


/* =========================================================
   GRAFIKA
   ========================================================= */

.kp26-value-card__visual {
  min-width:
    0;

  min-height:
    230px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  position:
    relative;

  padding:
    4px;

  overflow:
    hidden;
}


.kp26-value-card__visual::after {
  content:
    "";

  position:
    absolute;

  z-index:
    0;

  left:
    12%;

  right:
    12%;

  bottom:
    10%;

  height:
    18%;

  border-radius:
    50%;

  background:
    rgba(21, 21, 47, .08);

  filter:
    blur(22px);

  opacity:
    .32;

  pointer-events:
    none;
}


.kp26-value-card__visual img {
  width:
    100%;

  max-width:
    430px;

  height:
    auto;

  max-height:
    245px;

  position:
    relative;

  z-index:
    1;

  display:
    block;

  object-fit:
    contain;

  transition:
    transform 500ms
    cubic-bezier(.2, .7, .2, 1);
}


/* =========================================================
   TREŚĆ PRAWEJ KARTY
   ========================================================= */

.kp26-value-card__content {
  min-width:
    0;

  padding-right:
    4px;
}


.kp26-value-card__step {
  display:
    block;

  margin-bottom:
    12px;

  color:
    var(--kp-green);

  font-size:
    11px;

  line-height:
    1;

  font-weight:
    800;

  letter-spacing:
    .08em;
}


.kp26-value-card--warehouse
.kp26-value-card__step {
  color:
    var(--kp-orange);
}


.kp26-value-card h3 {
  max-width:
    340px;

  margin:
    0
    0
    13px;

  color:
    var(--kp-text);

  font-family:
    inherit;

  font-size:
    clamp(23px, 2.15vw, 29px);

  line-height:
    1.1;

  font-weight:
    700;

  letter-spacing:
    -.032em;
}


.kp26-value-card p {
  max-width:
    345px;

  margin:
    0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.58 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   HOVER
   ========================================================= */

@media (hover: hover) {

  .kp26-value-main:hover
  .kp26-value-main__photo img {
    transform:
      scale(1.025);
  }


  .kp26-value-card:hover
  .kp26-value-card__visual img {
    transform:
      translateY(-3px)
      scale(1.015);
  }

}


/* =========================================================
   901–1024
   ========================================================= */

@media (min-width: 901px) and (max-width: 1024px) {

  .kp26-value__inner {
    grid-template-columns:
      .92fr
      1.08fr;
  }


  .kp26-value-main {
    grid-template-rows:
      minmax(280px, .95fr)
      minmax(0, 1.05fr);
  }


  .kp26-value-main h2 {
    font-size:
      clamp(28px, 3.4vw, 34px);
  }


  .kp26-value-main__content {
    padding:
      28px;
  }


  .kp26-value-card {
    grid-template-columns:
      minmax(0, .95fr)
      minmax(220px, 1.05fr);

    gap:
      18px;

    padding:
      20px;
  }


  .kp26-value-card__visual {
    min-height:
      190px;
  }


  .kp26-value-card__visual img {
    max-width:
      320px;

    max-height:
      200px;
  }


  .kp26-value-card h3 {
    font-size:
      22px;
  }


  .kp26-value-card p {
    font-size:
      13.5px !important;
  }

}


/* =========================================================
   WĄSKI TABLET — 768–900
   ========================================================= */

@media (min-width: 768px) and (max-width: 900px) {

  .kp26-value {
    padding:
      64px
      24px
      72px;
  }


  .kp26-value__inner {
    grid-template-columns:
      1fr;

    gap:
      14px;
  }


  .kp26-value-main {
    grid-template-columns:
      1fr
      1fr;

    grid-template-rows:
      auto;

    min-height:
      360px;
  }


  .kp26-value-main__photo {
    min-height:
      360px;
  }


  .kp26-value-main__content {
    padding:
      32px;
  }


  .kp26-value-main h2 {
    font-size:
      32px;
  }


  .kp26-value__cards {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    grid-template-rows:
      auto;

    gap:
      14px;
  }


  .kp26-value-card {
    grid-template-columns:
      1fr;

    align-content:
      start;

    gap:
      14px;

    padding:
      20px;
  }


  .kp26-value-card__visual {
    min-height:
      190px;
  }


  .kp26-value-card__visual img {
    max-height:
      190px;
  }


  .kp26-value-card__content {
    padding:
      0;
  }


  .kp26-value-card h3,
  .kp26-value-card p {
    max-width:
      none;
  }

}


/* =========================================================
   COMPACT LAPTOP
   ========================================================= */

@media (min-width: 901px) and (max-height: 850px) {

  .kp26-value {
    padding-top:
      56px;

    padding-bottom:
      64px;
  }


  .kp26-value-main__content {
    padding:
      28px;
  }


  .kp26-value-main h2 {
    margin-bottom:
      14px;
  }


  .kp26-value-main__tags {
    margin-top:
      18px;
  }


  .kp26-value-card {
    padding-top:
      20px;

    padding-bottom:
      20px;
  }


  .kp26-value-card__visual {
    min-height:
      205px;
  }


  .kp26-value-card__visual img {
    max-height:
      220px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp26-value {
    padding:
      48px
      16px
      52px;
  }


  .kp26-value__inner {
    grid-template-columns:
      1fr;

    gap:
      11px;
  }


  /* =======================================================
     MAIN
     ======================================================= */

  .kp26-value-main {
    grid-template-rows:
      auto
      auto;

    border-radius:
      24px;
  }


  .kp26-value-main__photo {
    aspect-ratio:
      16 / 9;
  }


  .kp26-value-main__content {
    padding:
      25px
      20px
      26px;
  }


  .kp26-value-main h2 {
    max-width:
      none;

    margin-bottom:
      15px;

    font-size:
      clamp(28px, 7.6vw, 34px);

    line-height:
      1.1;
  }


  .kp26-value-main__content > p {
    max-width:
      none;

    font-size:
      14px !important;

    line-height:
      1.58 !important;
  }


  .kp26-value-main__tags {
    margin-top:
      20px;

    gap:
      8px;
  }


  .kp26-value-main__tags span {
    min-height:
      34px;

    padding:
      7px
      11px;

    font-size:
      12px;
  }


  /* =======================================================
     RIGHT
     ======================================================= */

  .kp26-value__cards {
    gap:
      11px;
  }


  .kp26-value-card {
    grid-template-columns:
      1fr;

    gap:
      12px;

    padding:
      16px
      16px
      22px;

    border-radius:
      22px;
  }


  .kp26-value-card__visual {
    min-height:
      0;

    padding:
      0;
  }


  .kp26-value-card__visual img {
    max-width:
      100%;

    max-height:
      240px;
  }


  .kp26-value-card__content {
    padding:
      0
      2px;
  }


  .kp26-value-card__step {
    margin-bottom:
      10px;

    font-size:
      11px;
  }


  .kp26-value-card h3 {
    max-width:
      none;

    margin-bottom:
      10px;

    font-size:
      22px;

    line-height:
      1.12;
  }


  .kp26-value-card p {
    max-width:
      none;

    font-size:
      14px !important;

    line-height:
      1.56 !important;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .kp26-value {
    padding-left:
      13px;

    padding-right:
      13px;
  }


  .kp26-value-main__content {
    padding:
      23px
      18px
      24px;
  }


  .kp26-value-main__tags {
    gap:
      7px;
  }


  .kp26-value-main__tags span {
    padding:
      7px
      10px;
  }


  .kp26-value-card {
    padding:
      14px
      14px
      20px;
  }


  .kp26-value-card__visual img {
    max-height:
      220px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp26-value-main__photo img,
  .kp26-value-card__visual img {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8e7d5b5 */.kp26-support {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  width: 100%;
  margin: 0 !important;

  padding:
    clamp(74px, 7vw, 96px)
    24px
    clamp(78px, 8vw, 104px);

  background: #ffffff;

  font-family: inherit;

  overflow: hidden;
}

.kp26-support *,
.kp26-support *::before,
.kp26-support *::after {
  box-sizing: border-box;
}

.kp26-support__inner {
  width: min(1240px, 100%);

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 1.09fr)
    minmax(390px, .91fr);

  align-items: stretch;

  gap: 34px;

  padding:
    clamp(40px, 4.4vw, 56px);

  border-radius: 34px;

  background:
    linear-gradient(
      135deg,
      #007569 0%,
      #007569 58%,
      #005f56 100%
    );

  box-shadow:
    0 24px 60px
    rgba(0, 117, 105, .15);
}

.kp26-support__content {
  min-width: 0;

  display: flex;

  flex-direction: column;
}

.kp26-support__heading {
  max-width: 680px;
}

.kp26-support__eyebrow {
  width: fit-content;

  display: inline-flex;

  align-items: center;

  gap: 9px;

  margin-bottom: 16px;

  color:
    rgba(255, 255, 255, .72);

  font-family: inherit;

  font-size: 11px;

  line-height: 1;

  font-weight: 750;

  letter-spacing: .08em;

  text-transform: uppercase;
}

.kp26-support__eyebrow > span {
  width: 7px;
  height: 7px;

  flex: 0 0 7px;

  border-radius: 50%;

  background: var(--kp-orange);

  box-shadow:
    0 0 0 5px
    rgba(254, 94, 24, .13);
}

.kp26-support h2 {
  max-width: 650px;

  margin:
    0
    0
    19px;

  color: #ffffff;

  font-family: inherit;

  font-size:
    clamp(34px, 3.1vw, 42px);

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -.037em;
}

.kp26-support__lead {
  max-width: 655px;

  margin: 0 !important;

  color:
    rgba(255, 255, 255, .78) !important;

  font-family: inherit !important;

  font-size: 14.5px !important;

  line-height: 1.62 !important;

  font-weight: 400 !important;
}

.kp26-support__lead strong {
  color: #ffffff;

  font-weight: 650;
}

.kp26-support__features {
  width: 100%;

  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  grid-auto-rows: auto;

  align-items: stretch;

  gap: 12px;

  margin-top: 30px;
}

.kp26-support-feature {
  min-width: 0;

  min-height: 0;

  display: grid;

  grid-template-columns:
    42px
    minmax(0, 1fr);

  align-items: start;

  gap: 14px;

  padding: 16px;

  border:
    1px solid
    rgba(255, 255, 255, .16);

  border-radius: 18px;

  background:
    rgba(255, 255, 255, .10);

  backdrop-filter: blur(9px);

  -webkit-backdrop-filter: blur(9px);

  box-shadow:
    inset 0 1px 0
    rgba(255, 255, 255, .045);

  transition:
    transform 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease;
}

.kp26-support-feature__icon {
  width: 42px;
  height: 42px;

  flex: 0 0 42px;

  display: flex;

  align-items: center;

  justify-content: center;

  border:
    1px solid
    rgba(255, 255, 255, .10);

  border-radius: 13px;

  background:
    rgba(21, 21, 47, .28) !important;

  color:
    #ffffff !important;

  box-shadow:
    0 7px 18px
    rgba(0, 0, 0, .06);
}

.kp26-support-feature--orange
.kp26-support-feature__icon {
  background:
    var(--kp-orange) !important;

  color:
    #ffffff !important;

  border-color:
    rgba(255, 255, 255, .15);

  box-shadow:
    0 8px 20px
    rgba(254, 94, 24, .20);
}

.kp26-support-feature__icon svg {
  width: 21px;
  height: 21px;

  display: block;

  fill: none !important;

  stroke:
    currentColor !important;

  stroke-width: 1.8;

  stroke-linecap: round;

  stroke-linejoin: round;
}

.kp26-support-feature h3 {
  margin:
    1px
    0
    6px;

  color:
    #ffffff !important;

  font-family: inherit;

  font-size: 15.5px;

  line-height: 1.24;

  font-weight: 700;

  letter-spacing: -.015em;
}

.kp26-support-feature p {
  margin: 0 !important;

  color:
    rgba(255, 255, 255, .72) !important;

  font-family: inherit !important;

  font-size:
    13px !important;

  line-height:
    1.47 !important;

  font-weight:
    400 !important;
}

.kp26-support__callout {
  width: 100%;

  display: grid;

  grid-template-columns:
    72px
    minmax(0, 1fr);

  align-items: center;

  gap: 18px;

  margin-top: 12px;

  padding:
    14px
    20px
    14px
    14px;

  border-radius: 18px;

  background:
    #ffffff;

  color:
    var(--kp-text);

  box-shadow:
    0 15px 32px
    rgba(0, 68, 61, .16);
}

.kp26-support__callout-time {
  width: 72px;
  height: 72px;

  min-width: 72px;
  min-height: 72px;

  margin: 0;
  padding: 0;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 4px;

  align-self: center;
  justify-self: center;

  border-radius: 16px;

  background:
    var(--kp-orange);

  color:
    #ffffff;

  text-align: center;

  line-height: 1;
}

.kp26-support__callout-time strong {
  display: block;

  margin: 0 !important;
  padding: 0 !important;

  color:
    #ffffff !important;

  font-family: inherit;

  font-size: 30px;

  line-height: 1 !important;

  font-weight: 750;

  letter-spacing: -.045em;
}

.kp26-support__callout-time span {
  display: block;

  margin: 0 !important;
  padding: 0 !important;

  color:
    rgba(255, 255, 255, .90) !important;

  font-family: inherit;

  font-size: 11px;

  line-height: 1 !important;

  font-weight: 700;

  transform:
    translateY(2px);
}

.kp26-support__callout-copy {
  min-width: 0;
}

.kp26-support__callout-copy h3 {
  margin:
    0
    0
    5px;

  color:
    var(--kp-text) !important;

  font-family: inherit;

  font-size: 15px;

  line-height: 1.3;

  font-weight: 700;

  letter-spacing: -.012em;
}

.kp26-support__callout-copy p {
  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    12.5px !important;

  line-height:
    1.45 !important;

  font-weight:
    400 !important;
}

.kp26-support__visual {
  min-width: 0;

  position: relative;

  height: 100%;
}

.kp26-support__photo {
  width: 100%;
  height: 100%;

  min-height: 560px;

  overflow: hidden;

  border:
    1px solid
    rgba(255, 255, 255, .14);

  border-radius: 25px;

  background:
    rgba(255, 255, 255, .06);

  box-shadow:
    0 18px 40px
    rgba(0, 68, 61, .19);
}

.kp26-support__photo img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  object-position:
    center center;

  transition:
    transform 650ms
    cubic-bezier(.2, .7, .2, 1);
}

.kp26-support__photo-badge {
  position: absolute;

  left: 20px;
  bottom: 20px;

  display: flex;

  align-items: center;

  gap: 11px;

  max-width:
    calc(100% - 40px);

  padding:
    11px
    15px;

  border:
    1px solid
    rgba(255, 255, 255, .15) !important;

  border-radius:
    15px;

  background:
    rgba(21, 21, 47, .94) !important;

  color:
    #ffffff !important;

  backdrop-filter:
    blur(10px);

  -webkit-backdrop-filter:
    blur(10px);

  box-shadow:
    0 12px 30px
    rgba(0, 0, 0, .22);
}

.kp26-support__photo-badge-dot {
  width: 9px;
  height: 9px;

  flex:
    0 0 9px;

  border-radius: 50%;

  background:
    var(--kp-orange) !important;

  box-shadow:
    0 0 0 5px
    rgba(254, 94, 24, .14);
}

.kp26-support__photo-badge strong {
  display: block;

  margin:
    0
    0
    3px;

  color:
    #ffffff !important;

  font-family:
    inherit;

  font-size:
    12px;

  line-height:
    1.2;

  font-weight:
    700;
}

.kp26-support__photo-badge small {
  display: block;

  margin: 0;

  color:
    rgba(255, 255, 255, .70) !important;

  font-family:
    inherit;

  font-size:
    11px;

  line-height:
    1.25;

  font-weight:
    400;
}

@media (hover: hover) {

  .kp26-support-feature:hover {
    transform:
      translateY(-2px);

    background:
      rgba(255, 255, 255, .145);

    border-color:
      rgba(255, 255, 255, .22);
  }

  .kp26-support__visual:hover
  .kp26-support__photo img {
    transform:
      scale(1.025);
  }

}

@media (min-width: 901px) and (max-width: 1024px) {

  .kp26-support__inner {
    grid-template-columns:
      minmax(0, 1.12fr)
      minmax(300px, .88fr);

    gap: 22px;

    padding: 32px;
  }

  .kp26-support__features {
    gap: 10px;

    margin-top: 24px;
  }

  .kp26-support-feature {
    grid-template-columns:
      38px
      minmax(0, 1fr);

    gap: 11px;

    padding: 13px;
  }

  .kp26-support-feature__icon {
    width: 38px;
    height: 38px;

    flex-basis: 38px;
  }

  .kp26-support-feature__icon svg {
    width: 19px;
    height: 19px;
  }

  .kp26-support-feature h3 {
    font-size: 14.5px;
  }

  .kp26-support-feature p {
    font-size:
      12.5px !important;

    line-height:
      1.44 !important;
  }

  .kp26-support__photo {
    min-height:
      520px;
  }

}

@media (min-width: 768px) and (max-width: 900px) {

  .kp26-support {
    padding:
      64px
      24px
      72px;
  }

  .kp26-support__inner {
    grid-template-columns:
      1fr;

    gap: 26px;

    padding:
      34px;

    border-radius:
      30px;
  }

  .kp26-support__heading,
  .kp26-support h2,
  .kp26-support__lead {
    max-width:
      700px;
  }

  .kp26-support__features {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    grid-auto-rows:
      auto;

    gap: 10px;

    margin-top:
      26px;
  }

  .kp26-support-feature {
    grid-template-columns:
      42px
      minmax(0, 1fr);

    gap: 13px;

    padding:
      15px;
  }

  .kp26-support__visual {
    height: auto;
  }

  .kp26-support__photo {
    min-height: 0;

    height:
      380px;
  }

  .kp26-support__photo img {
    object-position:
      center 42%;
  }

}

@media (min-width: 901px) and (max-height: 850px) {

  .kp26-support {
    padding-top:
      54px;

    padding-bottom:
      60px;
  }

  .kp26-support__inner {
    padding:
      30px;
  }

  .kp26-support__features {
    margin-top:
      22px;
  }

  .kp26-support-feature {
    padding:
      13px;
  }

  .kp26-support__callout {
    padding-top:
      11px;

    padding-bottom:
      11px;
  }

  .kp26-support__photo {
    min-height:
      500px;
  }

}

@media (max-width: 767px) {

  .kp26-support {
    padding:
      48px
      16px
      52px;
  }

  .kp26-support__inner {
    grid-template-columns:
      1fr;

    gap:
      22px;

    padding:
      24px
      18px
      18px;

    border-radius:
      25px;
  }

  .kp26-support__eyebrow {
    margin-bottom:
      14px;

    font-size:
      10.5px;
  }

  .kp26-support h2 {
    margin-bottom:
      16px;

    font-size:
      clamp(29px, 8vw, 34px);

    line-height:
      1.1;
  }

  .kp26-support__lead {
    font-size:
      14px !important;

    line-height:
      1.58 !important;
  }

  .kp26-support__features {
    grid-template-columns:
      1fr;

    grid-auto-rows:
      auto;

    gap:
      8px;

    margin-top:
      22px;
  }

  .kp26-support-feature {
    grid-template-columns:
      42px
      minmax(0, 1fr);

    gap:
      13px;

    padding:
      14px;

    border-radius:
      16px;
  }

  .kp26-support-feature h3 {
    margin-bottom:
      5px;

    font-size:
      15px;
  }

  .kp26-support-feature p {
    font-size:
      13.5px !important;

    line-height:
      1.47 !important;
  }

  .kp26-support__callout {
    grid-template-columns:
      64px
      minmax(0, 1fr);

    gap:
      13px;

    margin-top:
      8px;

    padding:
      11px;

    border-radius:
      16px;
  }

  .kp26-support__callout-time {
    width:
      64px;

    height:
      64px;

    min-width:
      64px;

    min-height:
      64px;

    border-radius:
      14px;
  }

  .kp26-support__callout-time strong {
    font-size:
      26px;
  }

  .kp26-support__callout-time span {
    font-size:
      10px;
  }

  .kp26-support__callout-copy h3 {
    margin-bottom:
      4px;

    font-size:
      14px;

    line-height:
      1.3;
  }

  .kp26-support__callout-copy p {
    font-size:
      12px !important;

    line-height:
      1.42 !important;
  }

  .kp26-support__visual {
    height:
      auto;
  }

  .kp26-support__photo {
    min-height:
      0;

    aspect-ratio:
      4 / 3;

    border-radius:
      20px;
  }

  .kp26-support__photo-badge {
    left:
      12px;

    bottom:
      12px;

    max-width:
      calc(100% - 24px);

    padding:
      10px
      12px;
  }

}

@media (max-width: 390px) {

  .kp26-support {
    padding-left:
      13px;

    padding-right:
      13px;
  }

  .kp26-support__inner {
    padding:
      22px
      15px
      15px;
  }

  .kp26-support-feature {
    grid-template-columns:
      40px
      minmax(0, 1fr);

    gap:
      11px;

    padding:
      13px;
  }

  .kp26-support-feature__icon {
    width:
      40px;

    height:
      40px;
  }

  .kp26-support__callout {
    grid-template-columns:
      60px
      minmax(0, 1fr);

    gap:
      11px;
  }

  .kp26-support__callout-time {
    width:
      60px;

    height:
      60px;

    min-width:
      60px;

    min-height:
      60px;
  }

  .kp26-support__callout-time strong {
    font-size:
      24px;
  }

  .kp26-support__callout-copy h3 {
    font-size:
      13.5px;
  }

  .kp26-support__photo {
    aspect-ratio:
      1 / 1;
  }

}

@media (prefers-reduced-motion: reduce) {

  .kp26-support-feature,
  .kp26-support__photo img {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2b867a8 */.kp27-formats {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  --kp-soft: #f7f6fb;
  --kp-border: rgba(21, 21, 47, .08);

  width: 100%;

  margin: 0 !important;

  padding:
    clamp(72px, 7vw, 96px)
    24px
    clamp(78px, 8vw, 104px);

  background: #ffffff;

  color: var(--kp-text);

  font-family: inherit;

  overflow: hidden;
}

.kp27-formats *,
.kp27-formats *::before,
.kp27-formats *::after {
  box-sizing: border-box;
}

.kp27-formats__wrap {
  width: min(1240px, 100%);

  margin: 0 auto;
}

.kp27-formats__head {
  max-width: 800px;

  margin:
    0
    auto
    36px;

  text-align: center;
}

.kp27-formats__head h2 {
  margin:
    0
    0
    16px;

  color: var(--kp-text);

  font-family: inherit;

  font-size:
    clamp(32px, 3vw, 42px);

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -.038em;
}

.kp27-formats__head p {
  max-width: 730px;

  margin:
    0
    auto !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    15px !important;

  line-height:
    1.62 !important;

  font-weight:
    400 !important;
}

.kp27-formats__grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 16px;

  align-items: stretch;
}

.kp27-formats__card {
  min-width: 0;

  min-height: 184px;

  display: grid;

  grid-template-columns:
    minmax(175px, 35%)
    minmax(0, 1fr);

  align-items: stretch;

  overflow: hidden;

  border:
    1px solid var(--kp-border);

  border-radius: 24px;

  background:
    var(--kp-soft);

  box-shadow:
    0 8px 24px
    rgba(21, 21, 47, .025);

  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease;
}

.kp27-formats__media {
  min-width: 0;

  min-height: 184px;

  position: relative;

  overflow: hidden;

  background: #ececf1;
}

.kp27-formats__media img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  object-position: center center;

  transition:
    transform 450ms
    cubic-bezier(.2, .7, .2, 1);
}

.kp27-formats__content {
  min-width: 0;

  display: flex;

  flex-direction: column;

  justify-content: center;

  padding:
    23px
    25px;
}

.kp27-formats__content h3 {
  margin:
    0
    0
    9px;

  color: var(--kp-text);

  font-family: inherit;

  font-size:
    clamp(19px, 1.65vw, 22px);

  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -.025em;
}

.kp27-formats__content p {
  max-width: 35ch;

  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.56 !important;

  font-weight:
    400 !important;
}

.kp27-formats__cta {
  min-width: 0;

  min-height: 184px;

  display: flex;

  align-items: stretch;

  position: relative;

  overflow: hidden;

  border-radius: 24px;

  background:
    linear-gradient(
      90deg,
      rgba(21, 21, 47, .94) 0%,
      rgba(21, 21, 47, .88) 48%,
      rgba(21, 21, 47, .48) 100%
    ),
    url("https://knajpa-pro.pl/wp-content/uploads/2024/11/sekcja-cta1-knajpa-syrve.png")
    center center / cover no-repeat;

  color: #ffffff !important;

  text-decoration: none !important;

  box-shadow:
    0 12px 30px
    rgba(21, 21, 47, .11);

  transition:
    transform 180ms ease,
    box-shadow 180ms ease;
}

.kp27-formats__cta::before,
.kp27-formats__cta::after {
  display: none !important;

  content: none !important;
}

.kp27-formats__cta-content {
  width: 100%;

  min-width: 0;

  position: relative;

  z-index: 2;

  display: flex;

  flex-direction: column;

  justify-content: center;

  align-items: flex-start;

  padding:
    25px
    28px;
}

.kp27-formats__cta-label {
  display: block;

  margin-bottom: 10px;

  color:
    rgba(255, 255, 255, .70);

  font-size: 11px;

  line-height: 1.1;

  font-weight: 700;

  letter-spacing: .07em;

  text-transform: uppercase;
}

.kp27-formats__cta h3 {
  max-width: 355px;

  margin:
    0
    0
    18px;

  color: #ffffff !important;

  font-family: inherit;

  font-size:
    clamp(20px, 1.8vw, 24px);

  line-height: 1.12;

  font-weight: 700;

  letter-spacing: -.03em;
}

.kp27-formats__cta-link {
  display: inline-flex;

  align-items: center;

  gap: 12px;

  color:
    rgba(255, 255, 255, .88);

  font-size: 12.5px;

  line-height: 1.2;

  font-weight: 650;
}

.kp27-formats__cta-arrow {
  width: 40px;
  height: 40px;

  flex: 0 0 40px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background:
    var(--kp-orange);

  color: #ffffff;

  transition:
    transform 180ms ease,
    background-color 180ms ease;
}

.kp27-formats__cta-arrow svg {
  width: 16px;
  height: 16px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}

.kp27-formats__cta:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset: 4px;
}

@media (hover: hover) {

  .kp27-formats__card:hover {
    transform:
      translateY(-3px);

    border-color:
      rgba(0, 117, 105, .16);

    box-shadow:
      0 16px 38px
      rgba(21, 21, 47, .065);
  }

  .kp27-formats__card:hover
  .kp27-formats__media img {
    transform:
      scale(1.035);
  }

  .kp27-formats__cta:hover {
    transform:
      translateY(-3px);

    color:
      #ffffff !important;

    box-shadow:
      0 18px 42px
      rgba(21, 21, 47, .16);
  }

  .kp27-formats__cta:hover
  .kp27-formats__cta-arrow {
    transform:
      translateX(3px);

    background:
      var(--kp-orange-dark);
  }

}

@media (min-width: 901px) and (max-width: 1024px) {

  .kp27-formats {
    padding:
      64px
      20px
      74px;
  }

  .kp27-formats__head {
    margin-bottom: 30px;
  }

  .kp27-formats__card {
    min-height: 172px;

    grid-template-columns:
      minmax(145px, 33%)
      minmax(0, 1fr);
  }

  .kp27-formats__media {
    min-height: 172px;
  }

  .kp27-formats__content {
    padding:
      20px;
  }

  .kp27-formats__content h3 {
    font-size: 19px;
  }

  .kp27-formats__content p {
    font-size:
      13.5px !important;

    line-height:
      1.52 !important;
  }

  .kp27-formats__cta {
    min-height: 172px;
  }

  .kp27-formats__cta-content {
    padding:
      22px;
  }

  .kp27-formats__cta h3 {
    font-size:
      21px;
  }

}

@media (min-width: 768px) and (max-width: 900px) {

  .kp27-formats {
    padding:
      60px
      24px
      68px;
  }

  .kp27-formats__head {
    margin-bottom: 30px;
  }

  .kp27-formats__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 14px;
  }

  .kp27-formats__card {
    min-height: 0;

    grid-template-columns:
      1fr;

    border-radius: 22px;
  }

  .kp27-formats__media {
    min-height: 0;

    aspect-ratio:
      16 / 9;
  }

  .kp27-formats__content {
    padding:
      20px;
  }

  .kp27-formats__content p {
    max-width: none;

    font-size:
      13.5px !important;
  }

  .kp27-formats__cta {
    min-height:
      0;

    border-radius:
      22px;
  }

  .kp27-formats__cta-content {
    min-height:
      100%;

    padding:
      24px;
  }

}

@media (min-width: 901px) and (max-height: 850px) {

  .kp27-formats {
    padding-top:
      54px;

    padding-bottom:
      60px;
  }

  .kp27-formats__head {
    margin-bottom:
      28px;
  }

  .kp27-formats__card,
  .kp27-formats__cta {
    min-height:
      166px;
  }

  .kp27-formats__media {
    min-height:
      166px;
  }

  .kp27-formats__content {
    padding:
      20px
      22px;
  }

  .kp27-formats__cta-content {
    padding:
      22px
      24px;
  }

}

@media (max-width: 767px) {

  .kp27-formats {
    padding:
      48px
      16px
      52px;
  }

  .kp27-formats__head {
    max-width: none;

    margin-bottom: 24px;

    text-align: left;
  }

  .kp27-formats__head h2 {
    margin-bottom: 14px;

    font-size:
      clamp(29px, 8vw, 34px);
  }

  .kp27-formats__head p {
    max-width: none;

    font-size:
      14.5px !important;

    line-height:
      1.58 !important;
  }

  .kp27-formats__grid {
    grid-template-columns:
      1fr;

    gap:
      10px;
  }

  .kp27-formats__card {
    min-height:
      142px;

    grid-template-columns:
      36%
      minmax(0, 1fr);

    border-radius:
      20px;
  }

  .kp27-formats__media {
    min-height:
      142px;
  }

  .kp27-formats__content {
    padding:
      17px
      16px;
  }

  .kp27-formats__content h3 {
    margin-bottom:
      7px;

    font-size:
      18.5px;
  }

  .kp27-formats__content p {
    max-width:
      none;

    font-size:
      13.5px !important;

    line-height:
      1.5 !important;
  }

  .kp27-formats__cta {
    min-height:
      168px;

    border-radius:
      20px;

    background:
      linear-gradient(
        90deg,
        rgba(21, 21, 47, .95) 0%,
        rgba(21, 21, 47, .88) 58%,
        rgba(21, 21, 47, .58) 100%
      ),
      url("https://knajpa-pro.pl/wp-content/uploads/2024/11/sekcja-cta1-knajpa-syrve.png")
      center center / cover no-repeat;
  }

  .kp27-formats__cta-content {
    padding:
      22px
      20px;
  }

  .kp27-formats__cta-label {
    font-size:
      10.5px;
  }

  .kp27-formats__cta h3 {
    max-width:
      300px;

    margin-bottom:
      16px;

    font-size:
      21px;
  }

  .kp27-formats__cta-link {
    font-size:
      12.5px;
  }

  .kp27-formats__cta-arrow {
    width:
      42px;

    height:
      42px;

    flex:
      0 0 42px;
  }

}

@media (max-width: 420px) {

  .kp27-formats {
    padding-left:
      13px;

    padding-right:
      13px;
  }

  .kp27-formats__card {
    grid-template-columns:
      34%
      minmax(0, 1fr);
  }

  .kp27-formats__content {
    padding:
      15px
      14px;
  }

  .kp27-formats__content h3 {
    font-size:
      18px;
  }

  .kp27-formats__content p {
    font-size:
      13px !important;
  }

  .kp27-formats__cta-content {
    padding:
      20px
      17px;
  }

  .kp27-formats__cta h3 {
    font-size:
      20px;
  }

}

@media (prefers-reduced-motion: reduce) {

  .kp27-formats__card,
  .kp27-formats__media img,
  .kp27-formats__cta,
  .kp27-formats__cta-arrow {
    transition:
      none !important;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a2ab8eb */.kp28-faq {
  --kp-green: #007569;
  --kp-green-dark: #005f56;
  --kp-orange: #fe5e18;
  --kp-navy: #15152f;
  --kp-text: #18232d;
  --kp-muted: #68747d;
  --kp-soft: #f7f6fb;
  --kp-border: rgba(21, 21, 47, .08);

  width: 100%;
  margin: 0 !important;

  padding:
    clamp(72px, 7vw, 94px)
    24px
    clamp(76px, 8vw, 100px);

  background: var(--kp-soft);
  color: var(--kp-text);
  font-family: inherit;

  overflow: hidden;
}

.kp28-faq *,
.kp28-faq *::before,
.kp28-faq *::after {
  box-sizing: border-box;
}

.kp28-faq__wrap {
  width: min(1020px, 100%);
  margin: 0 auto;
}

.kp28-faq__head {
  max-width: 760px;

  margin:
    0
    auto
    34px;

  text-align: center;
}

.kp28-faq__head h2 {
  margin: 0;

  color: var(--kp-text);

  font-family: inherit;

  font-size:
    clamp(32px, 3vw, 42px);

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -.038em;
}

.kp28-faq__list {
  display: grid;

  grid-template-columns: 1fr;

  gap: 9px;
}

.kp28-faq__item {
  width: 100%;

  margin: 0;

  border:
    1px solid var(--kp-border);

  border-radius: 18px;

  background: #ffffff;

  box-shadow:
    0 6px 22px
    rgba(21, 21, 47, .025);

  overflow: hidden;

  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.kp28-faq__item > summary {
  list-style: none;
}

.kp28-faq__item > summary::-webkit-details-marker {
  display: none;
}

.kp28-faq__question {
  width: 100%;

  min-height: 68px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 22px;

  margin: 0;

  padding:
    18px
    21px
    18px
    23px;

  cursor: pointer;

  color: var(--kp-text);

  font-family: inherit;

  font-size: 15px;

  line-height: 1.38;

  font-weight: 650;

  letter-spacing: -.012em;

  user-select: none;

  -webkit-user-select: none;
}

.kp28-faq__icon {
  width: 34px;
  height: 34px;

  flex: 0 0 34px;

  position: relative;

  display: block;

  border-radius: 50%;

  background:
    rgba(0, 117, 105, .08);

  transition:
    background-color 180ms ease,
    transform 240ms ease;
}

.kp28-faq__icon::before,
.kp28-faq__icon::after {
  content: "";

  position: absolute;

  top: 50%;
  left: 50%;

  width: 12px;
  height: 1.5px;

  border-radius: 10px;

  background: var(--kp-green);

  transform:
    translate(-50%, -50%);

  transition:
    transform 220ms ease,
    background-color 180ms ease;
}

.kp28-faq__icon::after {
  transform:
    translate(-50%, -50%)
    rotate(90deg);
}

.kp28-faq__answer-wrap {
  display: grid;

  grid-template-rows: 0fr;

  opacity: 0;

  transition:
    grid-template-rows 320ms cubic-bezier(.2, .7, .2, 1),
    opacity 220ms ease;
}

.kp28-faq__answer {
  min-height: 0;

  overflow: hidden;

  padding:
    0
    76px
    0
    23px;

  transition:
    padding-bottom 320ms
    cubic-bezier(.2, .7, .2, 1);
}

.kp28-faq__answer p {
  max-width: 820px;

  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-family:
    inherit !important;

  font-size:
    14px !important;

  line-height:
    1.6 !important;

  font-weight:
    400 !important;
}

.kp28-faq__answer strong {
  color:
    var(--kp-text);

  font-weight: 650;
}

.kp28-faq__item[open] {
  border-color:
    rgba(0, 117, 105, .20);

  box-shadow:
    0 11px 30px
    rgba(21, 21, 47, .045);
}

.kp28-faq__item[open]
.kp28-faq__question {
  padding-bottom: 13px;
}

.kp28-faq__item[open]
.kp28-faq__answer-wrap {
  grid-template-rows: 1fr;

  opacity: 1;
}

.kp28-faq__item[open]
.kp28-faq__answer {
  padding-bottom: 20px;
}

.kp28-faq__item[open]
.kp28-faq__icon {
  background: var(--kp-green);

  transform: rotate(180deg);
}

.kp28-faq__item[open]
.kp28-faq__icon::before {
  background: #ffffff;
}

.kp28-faq__item[open]
.kp28-faq__icon::after {
  background: #ffffff;

  transform:
    translate(-50%, -50%)
    rotate(0deg);
}

@media (hover: hover) {

  .kp28-faq__item:hover {
    border-color:
      rgba(0, 117, 105, .16);

    box-shadow:
      0 10px 30px
      rgba(21, 21, 47, .045);
  }

  .kp28-faq__item:not([open]):hover
  .kp28-faq__icon {
    background:
      rgba(0, 117, 105, .14);
  }

}

.kp28-faq__question:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset: -3px;

  border-radius: 16px;
}

@media (min-width: 901px) and (max-height: 850px) {

  .kp28-faq {
    padding-top: 54px;
    padding-bottom: 60px;
  }

  .kp28-faq__head {
    margin-bottom: 28px;
  }

  .kp28-faq__list {
    gap: 8px;
  }

  .kp28-faq__question {
    min-height: 62px;

    padding:
      16px
      20px
      16px
      22px;
  }

  .kp28-faq__item[open]
  .kp28-faq__answer {
    padding-bottom: 18px;
  }

}

@media (max-width: 767px) {

  .kp28-faq {
    padding:
      48px
      16px
      52px;
  }

  .kp28-faq__head {
    margin-bottom: 24px;

    text-align: left;
  }

  .kp28-faq__head h2 {
    font-size:
      clamp(29px, 8vw, 34px);
  }

  .kp28-faq__list {
    gap: 7px;
  }

  .kp28-faq__item {
    border-radius: 16px;
  }

  .kp28-faq__question {
    min-height: 62px;

    gap: 16px;

    padding:
      16px
      16px
      16px
      18px;

    font-size: 14.5px;

    line-height: 1.4;
  }

  .kp28-faq__icon {
    width: 32px;
    height: 32px;

    flex-basis: 32px;
  }

  .kp28-faq__answer {
    padding:
      0
      54px
      0
      18px;
  }

  .kp28-faq__item[open]
  .kp28-faq__answer {
    padding-bottom: 18px;
  }

  .kp28-faq__answer p {
    font-size:
      14px !important;

    line-height:
      1.56 !important;
  }

}

@media (max-width: 390px) {

  .kp28-faq {
    padding-left: 13px;
    padding-right: 13px;
  }

  .kp28-faq__question {
    gap: 13px;

    padding:
      15px
      14px
      15px
      16px;

    font-size: 14px;
  }

  .kp28-faq__answer {
    padding:
      0
      16px;
  }

  .kp28-faq__item[open]
  .kp28-faq__answer {
    padding-bottom: 17px;
  }

}

@media (prefers-reduced-motion: reduce) {

  .kp28-faq__answer-wrap,
  .kp28-faq__answer,
  .kp28-faq__icon,
  .kp28-faq__item {
    transition: none !important;
  }

}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3b31a89 */.kp29-final {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  width: 100%;
  margin: 0 !important;

  position: relative;

  padding:
    clamp(78px, 7vw, 102px)
    24px;

  overflow: hidden;

  background-image:
    url("https://knajpa-pro.pl/wp-content/uploads/2024/12/back-last-section.png");

  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;

  color: #ffffff;

  font-family: inherit;
}

.kp29-final *,
.kp29-final *::before,
.kp29-final *::after {
  box-sizing: border-box;
}

.kp29-final::before,
.kp29-final::after {
  display: none !important;
  content: none !important;
}

.kp29-final__inner {
  width: min(1240px, 100%);
  margin: 0 auto;

  position: relative;
  z-index: 1;

  display: grid;

  grid-template-columns:
    minmax(0, .91fr)
    minmax(470px, 1.09fr);

  align-items: center;

  gap:
    clamp(56px, 7vw, 88px);
}

.kp29-final__content {
  min-width: 0;
}

.kp29-final__eyebrow {
  display: none !important;
}

.kp29-final h2 {
  max-width: 570px;

  margin:
    0
    0
    21px;

  color: #ffffff;

  font-family: inherit;

  font-size:
    clamp(34px, 3.2vw, 43px);

  line-height: 1.07;

  font-weight: 700;

  letter-spacing: -.04em;
}

.kp29-final h2 span {
  display: block;

  color: #ffffff;
}

.kp29-final__lead {
  max-width: 520px;

  margin: 0 !important;

  color:
    rgba(255, 255, 255, .80) !important;

  font-family: inherit !important;

  font-size:
    14.5px !important;

  line-height:
    1.62 !important;

  font-weight:
    400 !important;
}

.kp29-final__benefits {
  max-width: 505px;

  display: grid;

  grid-template-columns: 1fr;

  margin-top: 28px;

  border-top:
    1px solid
    rgba(255, 255, 255, .18);
}

.kp29-final__benefit {
  min-height: 54px;

  display: flex;

  align-items: center;

  gap: 13px;

  padding:
    11px
    0;

  border-bottom:
    1px solid
    rgba(255, 255, 255, .18);

  color:
    rgba(255, 255, 255, .94);

  font-size: 13.5px;

  line-height: 1.35;

  font-weight: 600;
}

.kp29-final__check {
  width: 28px;
  height: 28px;

  flex:
    0 0 28px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 8px;

  background: #ffffff;

  color: var(--kp-green);
}

.kp29-final__check svg {
  width: 15px;
  height: 15px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2.3;

  stroke-linecap: round;

  stroke-linejoin: round;
}

.kp29-final__phone {
  margin-top: 26px;
}

.kp29-final__phone-label {
  display: block;

  margin-bottom: 6px;

  color:
    rgba(255, 255, 255, .72);

  font-size: 12px;

  line-height: 1.3;

  font-weight: 400;
}

.kp29-final__phone a {
  display: inline-block;

  color: #ffffff !important;

  font-family: inherit;

  font-size:
    clamp(24px, 2vw, 29px);

  line-height: 1.1;

  font-weight: 700;

  letter-spacing: -.025em;

  text-decoration: none !important;

  transition:
    opacity 180ms ease;
}

.kp29-final__phone a:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset: 5px;

  border-radius: 4px;
}

@media (hover: hover) {

  .kp29-final__phone a:hover {
    opacity: .78;
  }

}

.kp29-final__form-wrap {
  min-width: 0;

  position: relative;
}

.kp29-final__seal {
  width: 108px;
  height: 108px;

  position: absolute;

  z-index: 7;

  top: -36px;
  right: 28px;

  display: block;

  transform:
    rotate(4deg);

  filter:
    drop-shadow(
      0 12px 16px
      rgba(21, 21, 47, .18)
    );

  pointer-events: none;
}

.kp29-final__seal img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: contain;

  filter: none !important;

  transform: none !important;
}

.kp29-final__form {
  width: 100%;

  position: relative;

  padding:
    clamp(30px, 3.2vw, 40px);

  border:
    1px solid
    rgba(21, 21, 47, .06);

  border-radius: 30px;

  background: #ffffff;

  color: var(--kp-text);

  box-shadow:
    0 25px 56px
    rgba(0, 55, 50, .22);
}

.kp29-final__form-head {
  margin-bottom: 24px;
}

.kp29-final__form-eyebrow {
  display: block;

  margin-bottom: 9px;

  color: var(--kp-orange);

  font-size: 11px;

  line-height: 1;

  font-weight: 800;

  letter-spacing: .09em;

  text-transform: uppercase;
}

.kp29-final__form-head h3 {
  margin:
    0
    0
    8px;

  color: var(--kp-text);

  font-family: inherit;

  font-size:
    clamp(24px, 2vw, 28px);

  line-height: 1.1;

  font-weight: 700;

  letter-spacing: -.03em;
}

.kp29-final__form-head p {
  max-width: 420px;

  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-family: inherit !important;

  font-size:
    14px !important;

  line-height:
    1.55 !important;

  font-weight:
    400 !important;
}

.kp29-final__row {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 13px;
}

.kp29-final__field {
  min-width: 0;

  margin-bottom: 15px;
}

.kp29-final__field label {
  display: block;

  margin-bottom: 7px;

  color: var(--kp-text);

  font-size: 14px;

  line-height: 1.25;

  font-weight: 650;
}

.kp29-final__field label > span {
  color: var(--kp-orange);
}

.kp29-final__field label small {
  color: #818a91;

  font-size: 12px;

  font-weight: 400;
}

.kp29-final__field input {
  width: 100%;

  height: 52px;

  margin: 0;

  padding:
    0
    16px;

  border:
    1px solid
    rgba(21, 21, 47, .10);

  outline: none;

  border-radius: 14px;

  background: #f7f7f8;

  color: var(--kp-text);

  font-family: inherit;

  font-size: 16px;

  line-height: 1;

  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    background-color 180ms ease;
}

.kp29-final__field input::placeholder {
  color: #939aa0;

  opacity: 1;
}

.kp29-final__field input:focus {
  border-color:
    rgba(0, 117, 105, .55);

  background: #ffffff;

  box-shadow:
    0 0 0 4px
    rgba(0, 117, 105, .08);
}

.kp29-final__field input:focus-visible {
  outline:
    2px solid
    var(--kp-orange);

  outline-offset: 2px;
}

.kp29-final__needs {
  min-width: 0;

  margin:
    1px
    0
    17px;

  padding: 0;

  border: 0;
}

.kp29-final__needs legend {
  margin-bottom: 9px;

  color: var(--kp-text);

  font-size: 14px;

  line-height: 1.25;

  font-weight: 650;
}

.kp29-final__needs legend small {
  color: #818a91;

  font-size: 12px;

  font-weight: 400;
}

.kp29-final__needs-grid {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 8px;
}

.kp29-final__need {
  min-width: 0;

  position: relative;

  cursor: pointer;
}

.kp29-final__need input {
  width: 1px;
  height: 1px;

  position: absolute;

  opacity: 0;

  pointer-events: none;
}

.kp29-final__need span {
  min-width: 0;

  min-height: 46px;

  display: flex;

  align-items: center;

  justify-content: center;

  padding:
    9px
    11px;

  border:
    1px solid
    rgba(21, 21, 47, .09);

  border-radius: 12px;

  background: #f7f7f8;

  color: #59636b;

  font-size: 13px;

  line-height: 1.3;

  font-weight: 600;

  text-align: center;

  white-space: normal;

  overflow-wrap: anywhere;

  transition:
    background-color 160ms ease,
    border-color 160ms ease,
    color 160ms ease,
    transform 160ms ease;
}

.kp29-final__need input:checked + span {
  border-color:
    var(--kp-green);

  background:
    rgba(0, 117, 105, .07);

  color:
    var(--kp-green);
}

.kp29-final__need input:focus-visible + span {
  outline:
    2px solid
    var(--kp-orange);

  outline-offset: 2px;
}

@media (hover: hover) {

  .kp29-final__need:hover span {
    transform:
      translateY(-1px);

    border-color:
      rgba(0, 117, 105, .28);
  }

}

.kp29-final__turnstile {
  max-width: 100%;
  margin: 0 0 17px;
  overflow-x: auto;
}

.kp29-final__privacy {
  min-width: 0;

  position: relative;

  display: grid;

  grid-template-columns:
    20px
    minmax(0, 1fr);

  align-items: start;

  gap: 10px;

  cursor: pointer;

  margin:
    4px
    0
    17px;
}

.kp29-final__privacy > input {
  width: 1px;
  height: 1px;

  position: absolute;

  opacity: 0;
}

.kp29-final__privacy-box {
  width: 20px;
  height: 20px;

  display: flex;

  align-items: center;

  justify-content: center;

  margin-top: 1px;

  border:
    1px solid
    rgba(21, 21, 47, .22);

  border-radius: 6px;

  background: #ffffff;

  color: #ffffff;

  transition:
    background-color 160ms ease,
    border-color 160ms ease;
}

.kp29-final__privacy-box svg {
  width: 13px;
  height: 13px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2.4;

  stroke-linecap: round;

  stroke-linejoin: round;

  opacity: 0;
}

.kp29-final__privacy > input:checked
+ .kp29-final__privacy-box {
  border-color:
    var(--kp-green);

  background:
    var(--kp-green);
}

.kp29-final__privacy > input:checked
+ .kp29-final__privacy-box svg {
  opacity: 1;
}

.kp29-final__privacy > input:focus-visible
+ .kp29-final__privacy-box {
  outline:
    2px solid
    var(--kp-orange);

  outline-offset: 2px;
}

.kp29-final__privacy-copy {
  min-width: 0;

  color: #707980;

  font-size: 12px;

  line-height: 1.5;

  font-weight: 400;
}

.kp29-final__privacy-copy a {
  color:
    var(--kp-green) !important;

  font-weight: 650;

  text-decoration: underline;
}

.kp29-final__privacy-copy strong {
  color:
    var(--kp-orange);
}

.kp29-final__submit {
  width: 100%;

  min-width: 0;

  min-height: 56px;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 12px;

  position: relative;

  margin: 0;

  padding:
    8px
    10px
    8px
    16px;

  border: 0;

  border-radius: 14px;

  background:
    var(--kp-navy);

  color: #ffffff;

  font-family: inherit;

  font-size: 13.5px;

  line-height: 1.3;

  font-weight: 700;

  text-align: center;

  cursor: pointer;

  overflow: hidden;

  transition:
    transform 180ms ease,
    background-color 180ms ease,
    opacity 180ms ease;
}

.kp29-final__submit-text {
  min-width: 0;

  flex:
    1 1 auto;

  display: block;

  white-space: normal;

  overflow-wrap: anywhere;
}

.kp29-final__submit-arrow {
  width: 38px;
  height: 38px;

  flex:
    0 0 38px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background:
    var(--kp-orange);

  color: #ffffff;

  transition:
    transform 180ms ease,
    background-color 180ms ease;
}

.kp29-final__submit-arrow svg {
  width: 16px;
  height: 16px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}

.kp29-final__submit:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset: 4px;
}

@media (hover: hover) {

  .kp29-final__submit:hover {
    transform:
      translateY(-1px);

    background:
      #0f0f25;
  }

  .kp29-final__submit:hover
  .kp29-final__submit-arrow {
    transform:
      translateX(3px);

    background:
      var(--kp-orange-dark);
  }

}

.kp29-final__submit:disabled {
  cursor: wait;

  opacity: .72;
}

.kp29-final__spinner {
  width: 18px;
  height: 18px;

  display: none;

  position: absolute;

  right: 18px;

  border:
    2px solid
    rgba(255, 255, 255, .30);

  border-top-color:
    #ffffff;

  border-radius: 50%;

  animation:
    kp29Spin .75s linear infinite;
}

.kp29-final__submit.is-loading
.kp29-final__spinner {
  display: block;
}

.kp29-final__submit.is-loading
.kp29-final__submit-arrow {
  opacity: 0;
}

@keyframes kp29Spin {

  to {
    transform:
      rotate(360deg);
  }

}

.kp29-final__message {
  display: none;

  margin-bottom: 11px;

  padding:
    10px
    12px;

  border-radius: 10px;

  font-size: 13px;

  line-height: 1.4;
}

.kp29-final__message.is-error,
.kp29-final__message.is-success {
  display: block;
}

.kp29-final__message.is-error {
  background:
    rgba(254, 94, 24, .08);

  color:
    #b93d08;
}

.kp29-final__message.is-success {
  background:
    rgba(0, 117, 105, .08);

  color:
    var(--kp-green-dark);
}

.kp29-final__note {
  margin:
    10px
    0
    0 !important;

  color:
    #7e878d !important;

  font-family:
    inherit !important;

  font-size:
    12px !important;

  line-height:
    1.45 !important;

  text-align:
    center;
}

@media (min-width: 901px) and (max-width: 1024px) {

  .kp29-final {
    padding:
      64px
      22px;
  }

  .kp29-final__inner {
    grid-template-columns:
      minmax(0, .88fr)
      minmax(400px, 1.12fr);

    gap: 38px;
  }

  .kp29-final h2 {
    font-size:
      clamp(31px, 4vw, 38px);
  }

  .kp29-final__seal {
    width: 88px;
    height: 88px;

    top: -28px;
    right: 20px;
  }

  .kp29-final__form {
    padding: 28px;
  }

}

@media (min-width: 768px) and (max-width: 900px) {

  .kp29-final {
    padding:
      64px
      24px
      72px;
  }

  .kp29-final__inner {
    grid-template-columns:
      1fr;

    gap: 42px;
  }

  .kp29-final__content {
    max-width: 690px;
  }

  .kp29-final h2 {
    max-width: 650px;

    font-size:
      38px;
  }

  .kp29-final__lead {
    max-width: 620px;
  }

  .kp29-final__benefits {
    max-width: 620px;
  }

  .kp29-final__form-wrap {
    width: 100%;

    max-width: 680px;
  }

  .kp29-final__form {
    padding:
      32px;
  }

  .kp29-final__seal {
    width: 90px;
    height: 90px;

    top: -30px;
    right: 22px;
  }

}

@media (min-width: 901px) and (max-height: 850px) {

  .kp29-final {
    padding-top:
      56px;

    padding-bottom:
      60px;
  }

  .kp29-final h2 {
    margin-bottom:
      17px;
  }

  .kp29-final__benefits {
    margin-top:
      22px;
  }

  .kp29-final__benefit {
    min-height:
      48px;
  }

  .kp29-final__phone {
    margin-top:
      21px;
  }

  .kp29-final__form {
    padding:
      28px;
  }

  .kp29-final__form-head {
    margin-bottom:
      20px;
  }

  .kp29-final__field {
    margin-bottom:
      12px;
  }

  .kp29-final__needs {
    margin-bottom:
      14px;
  }

  .kp29-final__privacy {
    margin-bottom:
      14px;
  }

}

@media (max-width: 767px) {

  .kp29-final {
    padding:
      52px
      16px
      56px;

    background-position:
      center center;

    background-size:
      cover;
  }

  .kp29-final__inner {
    grid-template-columns:
      1fr;

    gap:
      40px;
  }

  .kp29-final h2 {
    max-width:
      none;

    margin-bottom:
      17px;

    font-size:
      clamp(29px, 8vw, 35px);
  }

  .kp29-final__lead {
    max-width:
      none;

    font-size:
      14px !important;

    line-height:
      1.58 !important;
  }

  .kp29-final__benefits {
    max-width:
      none;

    margin-top:
      23px;
  }

  .kp29-final__benefit {
    min-height:
      50px;

    font-size:
      13.5px;
  }

  .kp29-final__phone {
    margin-top:
      23px;
  }

  .kp29-final__phone-label {
    font-size:
      12px;
  }

  .kp29-final__form-wrap {
    width:
      100%;

    min-width:
      0;
  }

  .kp29-final__form {
    width:
      100%;

    min-width:
      0;

    padding:
      28px
      20px
      22px;

    border-radius:
      23px;
  }

  .kp29-final__seal {
    width:
      80px;

    height:
      80px;

    top:
      -30px;

    right:
      14px;

    transform:
      rotate(3deg);
  }

  .kp29-final__form-head {
    padding-right:
      58px;

    margin-bottom:
      22px;
  }

  .kp29-final__form-head p {
    font-size:
      14px !important;
  }

  .kp29-final__row {
    grid-template-columns:
      1fr;

    gap:
      0;
  }

  .kp29-final__needs-grid {
    grid-template-columns:
      1fr;

    gap:
      7px;
  }

  .kp29-final__need span {
    min-height:
      46px;

    justify-content:
      flex-start;

    text-align:
      left;

    font-size:
      13px;
  }

  .kp29-final__privacy-copy {
    font-size:
      12px;
  }

  .kp29-final__submit {
    width:
      100%;

    min-width:
      0;

    min-height:
      58px;

    gap:
      10px;

    padding:
      8px
      8px
      8px
      14px;

    font-size:
      13px;
  }

  .kp29-final__submit-arrow {
    width:
      40px;

    height:
      40px;

    flex:
      0 0 40px;
  }

  .kp29-final__note {
    font-size:
      12px !important;
  }

}

@media (max-width: 390px) {

  .kp29-final {
    padding-left:
      13px;

    padding-right:
      13px;
  }

  .kp29-final__form {
    padding:
      26px
      16px
      20px;
  }

  .kp29-final__seal {
    width:
      72px;

    height:
      72px;

    top:
      -26px;

    right:
      9px;
  }

  .kp29-final__form-head {
    padding-right:
      50px;
  }

  .kp29-final__submit {
    min-height:
      62px;

    padding:
      8px
      7px
      8px
      12px;

    font-size:
      12.5px;
  }

  .kp29-final__submit-arrow {
    width:
      38px;

    height:
      38px;

    flex:
      0 0 38px;
  }

}

@media (prefers-reduced-motion: reduce) {

  .kp29-final__submit,
  .kp29-final__submit-arrow,
  .kp29-final__need span,
  .kp29-final__field input,
  .kp29-final__phone a {
    transition:
      none !important;
  }

  .kp29-final__spinner {
    animation-duration:
      1.5s;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-de41751 */.kp30-links {
  --kp-green: #007569;
  --kp-green-dark: #005f56;

  --kp-orange: #fe5e18;
  --kp-orange-dark: #e94e0c;

  --kp-navy: #15152f;

  --kp-text: #18232d;
  --kp-muted: #68747d;

  --kp-soft: #f7f6fb;
  --kp-border: rgba(21, 21, 47, .08);

  width: 100%;

  margin: 0 !important;

  padding:
    clamp(68px, 6vw, 88px)
    24px
    clamp(72px, 7vw, 94px);

  background: #ffffff;

  color: var(--kp-text);

  font-family: inherit;
}


.kp30-links *,
.kp30-links *::before,
.kp30-links *::after {
  box-sizing: border-box;
}


.kp30-links__wrap {
  width: min(1240px, 100%);

  margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.kp30-links__head {
  display: grid;

  grid-template-columns:
    minmax(0, .92fr)
    minmax(360px, 1.08fr);

  align-items: end;

  gap:
    clamp(40px, 6vw, 82px);

  margin-bottom: 34px;
}


.kp30-links__head h2 {
  max-width: 560px;

  margin: 0;

  color: var(--kp-text);

  font-size:
    clamp(31px, 3vw, 42px);

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -.038em;
}


.kp30-links__head p {
  max-width: 610px;

  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-size:
    14px !important;

  line-height:
    1.6 !important;

  font-weight:
    400 !important;
}


/* =========================================================
   MAIN GRID
   ========================================================= */

.kp30-links__grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.06fr)
    minmax(0, .94fr);

  align-items: stretch;

  gap: 18px;
}


/* =========================================================
   SHARED BOX
   ========================================================= */

.kp30-links__systems,
.kp30-links__formats {
  min-width: 0;

  border:
    1px solid
    var(--kp-border);

  border-radius: 26px;

  background:
    var(--kp-soft);
}


/* =========================================================
   SECTION LABEL
   ========================================================= */

.kp30-links__section-label {
  margin-bottom: 16px;

  color:
    var(--kp-green);

  font-size: 11px;

  line-height: 1.25;

  font-weight: 800;

  letter-spacing: .08em;

  text-transform: uppercase;
}


/* =========================================================
   SYSTEMS
   ========================================================= */

.kp30-links__systems {
  padding:
    clamp(27px, 3vw, 36px);
}


.kp30-links__system {
  display: block;

  padding:
    21px
    0;

  border-top:
    1px solid
    rgba(21, 21, 47, .09);

  color:
    inherit !important;

  text-decoration:
    none !important;

  transition:
    padding-left 180ms ease;
}


.kp30-links__system:first-of-type {
  border-top: 0;

  padding-top: 8px;
}


.kp30-links__system-main {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    44px;

  align-items: center;

  gap: 20px;
}


.kp30-links__system h3 {
  margin:
    0
    0
    7px;

  color:
    var(--kp-text);

  font-size:
    clamp(22px, 2vw, 27px);

  line-height:
    1.1;

  font-weight:
    700;

  letter-spacing:
    -.026em;
}


.kp30-links__system p {
  max-width: 540px;

  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-size:
    14px !important;

  line-height:
    1.56 !important;
}


/* =========================================================
   SYSTEM ARROW
   ========================================================= */

.kp30-links__arrow {
  width: 42px;
  height: 42px;

  display: flex;

  align-items: center;

  justify-content: center;

  border:
    1px solid
    rgba(21, 21, 47, .07);

  border-radius: 50%;

  background: #ffffff;

  color:
    var(--kp-green);

  transition:
    transform 180ms ease,
    background-color 180ms ease,
    color 180ms ease;
}


.kp30-links__arrow svg {
  width: 16px;
  height: 16px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}


.kp30-links__system:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset: 4px;

  border-radius: 10px;
}


@media (hover: hover) {

  .kp30-links__system:hover {
    padding-left: 7px;
  }


  .kp30-links__system:hover
  .kp30-links__arrow {
    transform:
      translateX(3px);

    background:
      var(--kp-green);

    color:
      #ffffff;
  }

}


/* =========================================================
   CHOOSE LINK
   ========================================================= */

.kp30-links__choose-link {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  column-gap: 14px;

  row-gap: 4px;

  align-items: center;

  margin-top: 5px;

  padding:
    17px
    18px;

  border-radius: 16px;

  background:
    var(--kp-navy);

  color:
    #ffffff !important;

  text-decoration:
    none !important;

  transition:
    transform 180ms ease,
    background-color 180ms ease;
}


.kp30-links__choose-link > span:first-child {
  grid-column: 1;

  color:
    rgba(255, 255, 255, .68);

  font-size: 12px;

  line-height: 1.3;

  font-weight: 400;
}


.kp30-links__choose-link strong {
  grid-column: 1;

  color:
    #ffffff;

  font-size: 13px;

  line-height: 1.35;

  font-weight: 650;
}


.kp30-links__choose-arrow {
  grid-column: 2;

  grid-row:
    1 / span 2;

  align-self: center;

  color:
    var(--kp-orange);

  font-size: 24px;

  line-height: 1;

  transition:
    transform 180ms ease;
}


.kp30-links__choose-link:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset: 4px;
}


@media (hover: hover) {

  .kp30-links__choose-link:hover {
    transform:
      translateY(-1px);

    background:
      #101028;
  }


  .kp30-links__choose-link:hover
  .kp30-links__choose-arrow {
    transform:
      translateX(3px);
  }

}


/* =========================================================
   FORMATS
   ========================================================= */

.kp30-links__formats {
  padding:
    clamp(27px, 3vw, 36px);

  display: flex;

  flex-direction: column;
}


.kp30-links__formats-copy {
  max-width: 520px;

  margin-bottom: 22px;
}


.kp30-links__formats-copy h3 {
  margin:
    0
    0
    9px;

  color:
    var(--kp-text);

  font-size:
    clamp(20px, 1.8vw, 24px);

  line-height: 1.15;

  font-weight: 700;

  letter-spacing: -.025em;
}


.kp30-links__formats-copy p {
  margin: 0 !important;

  color:
    var(--kp-muted) !important;

  font-size:
    14px !important;

  line-height:
    1.58 !important;
}


/* =========================================================
   TAGS
   ========================================================= */

.kp30-links__tags {
  display: flex;

  flex-wrap: wrap;

  gap: 8px;

  margin-bottom: 22px;
}


.kp30-links__tag {
  min-height: 38px;

  display: inline-flex;

  align-items: center;

  padding:
    9px
    13px;

  border:
    1px solid
    rgba(21, 21, 47, .08);

  border-radius: 999px;

  background:
    #ffffff;

  color:
    var(--kp-text);

  font-size: 12px;

  line-height: 1.2;

  font-weight: 600;
}


/* =========================================================
   FORMATS NOTE
   ========================================================= */

.kp30-links__formats-note {
  margin:
    auto
    0
    0 !important;

  padding-top: 18px;

  border-top:
    1px solid
    rgba(21, 21, 47, .09);

  color:
    var(--kp-muted) !important;

  font-size:
    12.5px !important;

  line-height:
    1.5 !important;
}


/* =========================================================
   BOTTOM CTA
   ========================================================= */

.kp30-links__bottom {
  min-height: 82px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 28px;

  margin-top: 18px;

  padding:
    17px
    21px
    17px
    24px;

  border:
    1px solid
    rgba(21, 21, 47, .08);

  border-radius: 20px;

  background:
    #ffffff;
}


.kp30-links__bottom-copy {
  min-width: 0;
}


.kp30-links__bottom-copy strong {
  display: block;

  margin-bottom: 4px;

  color:
    var(--kp-text);

  font-size: 14px;

  line-height: 1.3;

  font-weight: 700;
}


.kp30-links__bottom-copy span {
  display: block;

  color:
    var(--kp-muted);

  font-size: 12.5px;

  line-height: 1.4;
}


/* =========================================================
   BOTTOM LINK
   ========================================================= */

.kp30-links__bottom-link {
  min-width: 0;

  flex: 0 1 auto;

  display: flex;

  align-items: center;

  justify-content: flex-end;

  gap: 12px;

  color:
    var(--kp-navy) !important;

  font-size: 13px;

  line-height: 1.3;

  font-weight: 700;

  text-decoration:
    none !important;
}


.kp30-links__bottom-link > span:first-child {
  min-width: 0;

  white-space: normal;
}


.kp30-links__bottom-arrow {
  width: 40px;
  height: 40px;

  flex: 0 0 40px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background:
    var(--kp-orange);

  color:
    #ffffff;

  transition:
    transform 180ms ease;
}


.kp30-links__bottom-arrow svg {
  width: 16px;
  height: 16px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}


.kp30-links__bottom-link:focus-visible {
  outline:
    3px solid
    var(--kp-orange);

  outline-offset: 4px;

  border-radius: 8px;
}


@media (hover: hover) {

  .kp30-links__bottom-link:hover
  .kp30-links__bottom-arrow {
    transform:
      translateX(3px);
  }

}


/* =========================================================
   901–1024
   ========================================================= */

@media (min-width: 901px) and (max-width: 1024px) {

  .kp30-links {
    padding:
      60px
      20px
      68px;
  }


  .kp30-links__head {
    grid-template-columns:
      minmax(0, .9fr)
      minmax(0, 1.1fr);

    gap: 32px;

    margin-bottom: 30px;
  }


  .kp30-links__grid {
    grid-template-columns:
      minmax(0, 1fr)
      minmax(0, 1fr);

    gap: 14px;
  }


  .kp30-links__systems,
  .kp30-links__formats {
    padding: 26px;
  }


  .kp30-links__system p,
  .kp30-links__formats-copy p {
    font-size:
      13.5px !important;
  }


  .kp30-links__bottom {
    gap: 20px;
  }


  .kp30-links__bottom-link {
    max-width: 410px;
  }

}


/* =========================================================
   768–900
   ========================================================= */

@media (min-width: 768px) and (max-width: 900px) {

  .kp30-links {
    padding:
      58px
      24px
      66px;
  }


  .kp30-links__head {
    grid-template-columns:
      1fr;

    gap: 16px;

    margin-bottom: 28px;
  }


  .kp30-links__head p {
    max-width: 680px;
  }


  .kp30-links__grid {
    grid-template-columns:
      1fr;

    gap: 12px;
  }


  .kp30-links__systems,
  .kp30-links__formats {
    padding: 28px;

    border-radius: 22px;
  }


  .kp30-links__bottom {
    gap: 24px;

    margin-top: 12px;
  }


  .kp30-links__bottom-link {
    max-width: 360px;
  }

}


/* =========================================================
   COMPACT LAPTOP
   ========================================================= */

@media (min-width: 901px) and (max-height: 850px) {

  .kp30-links {
    padding-top: 52px;
    padding-bottom: 58px;
  }


  .kp30-links__head {
    margin-bottom: 28px;
  }


  .kp30-links__systems,
  .kp30-links__formats {
    padding-top: 26px;
    padding-bottom: 26px;
  }


  .kp30-links__system {
    padding-top: 18px;
    padding-bottom: 18px;
  }


  .kp30-links__bottom {
    margin-top: 14px;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .kp30-links {
    padding:
      48px
      16px
      52px;
  }


  .kp30-links__head {
    grid-template-columns: 1fr;

    gap: 15px;

    margin-bottom: 24px;
  }


  .kp30-links__head h2 {
    font-size:
      clamp(29px, 8vw, 34px);
  }


  .kp30-links__head p {
    max-width: none;

    font-size:
      14px !important;

    line-height:
      1.56 !important;
  }


  .kp30-links__grid {
    grid-template-columns: 1fr;

    gap: 10px;
  }


  .kp30-links__systems,
  .kp30-links__formats {
    border-radius: 20px;

    padding:
      22px
      18px;
  }


  .kp30-links__section-label {
    margin-bottom: 14px;

    font-size: 10.5px;
  }


  .kp30-links__system {
    padding:
      18px
      0;
  }


  .kp30-links__system-main {
    grid-template-columns:
      minmax(0, 1fr)
      42px;

    gap: 14px;
  }


  .kp30-links__system h3 {
    font-size: 21px;
  }


  .kp30-links__system p {
    font-size:
      13.5px !important;

    line-height:
      1.53 !important;
  }


  .kp30-links__arrow {
    width: 42px;
    height: 42px;
  }


  .kp30-links__choose-link {
    padding:
      16px;
  }


  .kp30-links__choose-link > span:first-child {
    font-size: 11.5px;
  }


  .kp30-links__choose-link strong {
    font-size: 13px;
  }


  .kp30-links__formats-copy {
    margin-bottom: 18px;
  }


  .kp30-links__formats-copy p {
    font-size:
      13.5px !important;
  }


  .kp30-links__tags {
    gap: 7px;

    margin-bottom: 20px;
  }


  .kp30-links__tag {
    min-height: 36px;

    padding:
      8px
      11px;

    font-size: 11.5px;
  }


  .kp30-links__formats-note {
    font-size:
      12px !important;
  }


  .kp30-links__bottom {
    min-height: 0;

    flex-direction: column;

    align-items: flex-start;

    gap: 16px;

    margin-top: 10px;

    padding:
      19px
      18px;

    border-radius: 18px;
  }


  .kp30-links__bottom-copy strong {
    font-size: 13.5px;
  }


  .kp30-links__bottom-copy span {
    font-size: 12px;
  }


  .kp30-links__bottom-link {
    width: 100%;

    max-width: none;

    justify-content: space-between;

    gap: 16px;

    font-size: 13px;
  }


  .kp30-links__bottom-arrow {
    width: 42px;
    height: 42px;

    flex:
      0 0 42px;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

  .kp30-links {
    padding-left: 13px;
    padding-right: 13px;
  }


  .kp30-links__systems,
  .kp30-links__formats {
    padding:
      20px
      16px;
  }


  .kp30-links__choose-link {
    padding:
      15px;
  }


  .kp30-links__tag {
    font-size: 11px;
  }


  .kp30-links__bottom {
    padding:
      18px
      16px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .kp30-links__system,
  .kp30-links__arrow,
  .kp30-links__choose-link,
  .kp30-links__choose-arrow,
  .kp30-links__bottom-arrow {
    transition:
      none !important;
  }

}/* End custom CSS */