*{box-sizing:border-box}
body{margin:0;font-family:Arial;color:#222}

.header{
  display:flex;align-items:center;justify-content:space-between;
  padding:15px;background:#0b4fd6;color:#fff;position:sticky;top:0;z-index:10
}
.logo{font-weight:bold}
.nav a{color:#fff;margin:0 10px;text-decoration:none}
.lang a{color:#fff;margin-left:8px}
.hamburger{display:none;font-size:26px;cursor:pointer}

.logo a {
      color: inherit;
        text-decoration: none;
          font-weight: inherit;
            font-size: inherit;
            }

            .logo a:hover {
              opacity: 0.85; /* albo inny hover */
              }

.hero{
  padding:120px 20px;
  text-align:center;
  background:
    linear-gradient(135deg, rgba(11,79,214,.85), rgba(8,58,169,.85)),
    url('../img/hero.jpg') center/cover no-repeat;
  color:#fff
}

.btn{
  padding:14px 32px;border:none;border-radius:8px;
  background:#0b4fd6;color:#fff;cursor:pointer
}
.btn.white{background:#fff;color:#0b4fd6}

.section{padding:80px 20px;text-align:center}
.light{background:#f4f6fa}

.grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:20px;max-width:1100px;margin:auto
}

.box{
  padding:30px;border-radius:14px;
  background:#fff;box-shadow:0 10px 25px rgba(0,0,0,.08)
}

.cta{
  background:#0b4fd6;color:#fff;
  padding:90px 20px;text-align:center
}

.footer{
  background:#081f4a;color:#fff;
  padding:40px;display:flex;justify-content:space-around;flex-wrap:wrap
}

/* REALIZACJE – MINIATURY */
.realizacje .swiper-slide{
  display:flex;justify-content:center
}
.realizacja-item{
  display:block;width:100%;max-width:320px;
  aspect-ratio:4/3;overflow:hidden;
  border-radius:16px;
  box-shadow:0 12px 30px rgba(0,0,0,.15)
}
.realizacja-item img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .4s ease
}
.realizacja-item:hover img{transform:scale(1.08)}

.modal{
  display:none;position:fixed;inset:0;
  background:rgba(0,0,0,.6);z-index:20
}
.modal-box{
  background:#fff;padding:30px;
  max-width:420px;margin:10% auto;border-radius:12px
}
.modal input,.modal textarea{
  width:100%;margin-bottom:12px;padding:10px
}
.close{float:right;font-size:20px;cursor:pointer}

@media(max-width:900px){
  .nav{
    display:none;position:absolute;top:70px;right:0;
    background:#0b4fd6;flex-direction:column
  }
  .nav.active{display:flex}
  .hamburger{display:block}
}

/* ===== MOBILE MENU ===== */
@media (max-width: 900px) {

  .mobile-nav {
    position: fixed;
    inset: 0;
    background: linear-gradient(135deg, #0b4fd6, #083aa9);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 28px;

    transform: translateY(-100%);
    transition: transform .35s ease;
    z-index: 15;
  }

  .mobile-nav.active {
    transform: translateY(0);
  }

  .mobile-nav a {
    font-size: 24px;
    font-weight: 600;
    color: #fff;
  }

  .hamburger {
    position: relative;
    z-index: 20;
  }
}

/* ===== FINAL LANG RULES ===== */

/* desktop */
.lang-header {
  display: flex;
  gap: 12px;
}

/* hide mobile lang on desktop */
.lang-mobile {
  display: none;
}

/* mobile */
@media (max-width: 900px) {
  .lang-header {
    display: none;
  }

  .lang-mobile {
    display: flex;
    gap: 24px;
    position: absolute;
    bottom: 40px;
  }
}


/* ===== MODAL CHECKBOX ALIGN FIX ===== */
.modal label {
  align-items: center;
}

.modal input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  flex-shrink: 0;
}


/* ===== MODAL SPACING FIX ===== */
.modal label {
  margin-bottom: 16px;
}

/* ===== ABOUT SECTION HERO STYLE ===== */
#onas {
  background:
    linear-gradient(135deg, rgba(11,79,214,.85), rgba(8,58,169,.85)),
    url('../img/about.jpg') center/cover no-repeat;
  color: #fff;
}

/* === PROJECT SLIDER SEPARATION FIX === */

.project-box {
  padding: 32px 28px;
    border-radius: 18px;
    }

    .project-divider {
      width: 60px;
        height: 3px;
          background: #0b4fd6;
            margin: 16px auto 20px;
              border-radius: 2px;
              }

              .project-location {
                margin-top: 20px;
                  font-weight: 600;
                    color: #0b4fd6;
                      text-align: center;
                        font-size: 15px;
                        }

                        /* Mobile breathing space */
                        @media (max-width: 768px) {
                          .project-box {
                              padding: 28px 22px;
                                }
                                }


                                /* === SECTION SEPARATOR (REALIZACJE -> PROJEKTY) === */

                                .section-separator {
                                  width: 100%;
                                    height: 1px;
                                      background: linear-gradient(
                                          to right,
                                              transparent,
                                                  rgba(11,79,214,0.4),
                                                      transparent
                                                        );
                                                          margin: 80px 0 60px;
                                                          }

                                                          /* Mobile tuning */
                                                          @media (max-width: 768px) {
                                                            .section-separator {
                                                                margin: 60px 0 40px;
                                                                  }
                                                                  }

                                                                  /* === PROJECT BOX HEIGHT FIX === */

                                                                  .projekty-slider .swiper-slide {
                                                                    height: auto;
                                                                      display: flex;
                                                                      }

                                                                      .project-box {
                                                                        display: flex;
                                                                          flex-direction: column;
                                                                            justify-content: space-between;
                                                                              height: 100%;
                                                                                min-height: 320px;
                                                                                }

                                                                                /* Opis – kontrola wysokości */
                                                                                .project-box p {
                                                                                  margin: 0;
                                                                                    line-height: 1.6;
                                                                                    }

                                                                                    /* Lokacja zawsze na dole */
                                                                                    .project-location {
                                                                                      margin-top: 24px;
                                                                                      }

                                                                                      /* Mobile – trochę niższe */
                                                                                      @media (max-width: 768px) {
                                                                                        .project-box {
                                                                                            min-height: 360px;
                                                                                              }
                                                                                              }

                                                                                              /* === SPACE BETWEEN PROJECTS AND CTA === */

                                                                                              .section-spacer {
                                                                                                height: 80px;
                                                                                                }

                                                                                                @media (max-width: 768px) {
                                                                                                  .section-spacer {
                                                                                                      height: 60px;
                                                                                                        }
                                                                                                        }




                                                                                                        /* === PROJECT BOX VISUAL UPGRADE === */

                                                                                                        .project-box {
                                                                                                          background: #ffffff;
                                                                                                            border-radius: 22px;
                                                                                                              padding: 36px 32px;
                                                                                                                box-shadow: 0 20px 40px rgba(0,0,0,0.08);
                                                                                                                  border: 1px solid rgba(11,79,214,0.08);
                                                                                                                    transition: transform .25s ease, box-shadow .25s ease;
                                                                                                                    }

                                                                                                                    /* Wyraźne odcięcie od tła */
                                                                                                                    .projekty-slider {
                                                                                                                      padding-top: 20px;
                                                                                                                      }

                                                                                                                      /* Hover (desktop) */
                                                                                                                      @media (hover:hover) {
                                                                                                                        .project-box:hover {
                                                                                                                            transform: translateY(-6px);
                                                                                                                                box-shadow: 0 28px 60px rgba(11,79,214,0.18);
                                                                                                                                  }
                                                                                                                                  }

                                                                                                                                  /* Nagłówek projektu */
                                                                                                                                  .project-box h3 {
                                                                                                                                    font-size: 22px;
                                                                                                                                      margin-bottom: 10px;
                                                                                                                                      }

                                                                                                                                      /* Separator pod tytułem */
                                                                                                                                      .project-divider {
                                                                                                                                        width: 50px;
                                                                                                                                          height: 3px;
                                                                                                                                            background: #0b4fd6;
                                                                                                                                              margin: 14px auto 18px;
                                                                                                                                                border-radius: 3px;
                                                                                                                                                }

                                                                                                                                                /* Opis */
                                                                                                                                                .project-box p {
                                                                                                                                                  font-size: 15px;
                                                                                                                                                    line-height: 1.65;
                                                                                                                                                      color: #333;
                                                                                                                                                      }

                                                                                                                                                      /* Lokalizacja */
                                                                                                                                                      .project-location {
                                                                                                                                                        margin-top: 26px;
                                                                                                                                                          font-weight: 600;
                                                                                                                                                            color: #0b4fd6;
                                                                                                                                                              font-size: 15px;
                                                                                                                                                              }

                                                                                                                                                              /* Mobile tuning */
                                                                                                                                                              @media (max-width: 768px) {
                                                                                                                                                                .project-box {
                                                                                                                                                                    padding: 30px 24px;
                                                                                                                                                                      }
                                                                                                                                                                      }

                                                                                                                                                                      /* === RECRUITMENT JOBS GRID (2 BOXY OBOK SIEBIE) === */
                                                                                                                                                                      .jobs-grid {
                                                                                                                                                                        display: grid;
                                                                                                                                                                          grid-template-columns: 1fr;
                                                                                                                                                                            gap: 30px;
                                                                                                                                                                              max-width: 1100px;
                                                                                                                                                                                margin: 0 auto;
                                                                                                                                                                                }

                                                                                                                                                                                @media (min-width: 900px) {
                                                                                                                                                                                  .jobs-grid {
                                                                                                                                                                                      grid-template-columns: repeat(2, 1fr);
                                                                                                                                                                                          align-items: stretch;
                                                                                                                                                                                            }
                                                                                                                                                                                            }
