 :root{
      --ko-blue:#0a4db3; /* granat KO */
      --ko-blue-dark:#083f91;
      --ko-red:#D31C3F;  /* czerwony akcent */
      --ko-red2:#AD0725;
      --text:#0f1a2d;
      --muted:#6b7280;
      --bg:#f5f5f5;
      --bg2: #EBECEC;
      --white:#fff;
    }
    .btn, .btn-lg{
      --bs-btn-border-radius: none !important;
    }
    .btn-primary{
      background: var(--ko-blue-dark) !important;
    }
    .btn-primary:hover{
      background: var(--ko-blue) !important;
    }
    html{scroll-behavior:smooth}
    body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:#fff}
    /* NAVBAR */
    .navbar{ background: var(--bg2); font-family:Montserrat,sans-serif;}
    .navbar-brand img{height:50px}
    .navbar .nav-link{font-size: 1.1em; font-weight:800;color:var(--ko-blue-dark);letter-spacing:.0px}
    .navbar .nav-link:hover,.navbar .nav-link.active{color:var(--ko-red)}
    .btn-lang{border:2px solid var(--ko-red); color:var(--ko-red); font-weight:bold; font-size: 0.8em; padding:.25rem .5rem; border-radius:.0rem;}
    .btn-lang:hover{background:var(--ko-red);color:#fff}
    .btn-search{color:var(--ko-red); }
    /* HERO */
    header.hero{
      position:relative;background: var(--bg2); overflow:hidden
    }
    .hero h1{font-family:Montserrat,sans-serif; font-weight:800; color:var(--ko-blue-dark); font-size:clamp(28px,4vw,48px)}
    .hero .lead-claim{font-size:clamp(20px,2.2vw,32px); font-weight:800; color: var(--ko-red);}
    .badge-red{background:var(--ko-red); color:var(--bg); padding:.1rem .45rem; border-radius:.25rem}
    .hero-img{
       width: 40vw;
       padding-right: 5vw;
    }
    /* czerwony klin */
    .hero::before{
      content:""; position:absolute; left:0; right:0; bottom:-1px; height:200px; background:var(--ko-red2);
      clip-path:polygon(0 95%, 100% 15%, 100% 100%, 0 100%);  }
.hero::after {
  content: "";   position: absolute;   left: 0;   right: 0;   bottom: -1px;   height: 200px;   background: var(--ko-red);  
  clip-path: polygon(0 15%, 100% 95%, 100% 100%, 0 100%); }
#social {
  background: linear-gradient(to bottom, var(--ko-red) calc(100% - 200px), transparent calc(100% - 200px));
  position: relative; overflow: hidden; padding-bottom: 200px;  }

#social::before {
  content: "";   position: absolute;   left: 0;  right: 0; bottom: 0;  height: 200px; background: var(--ko-blue); 
    clip-path: polygon(0 85%, 100% 15%, 100% 0%, 0 0%);  z-index: 9;
}
#social::after {
  content: "";   position: absolute;   left: 0;   right: 0;   bottom: 0;  height: 200px;  background: var(--ko-red);  
  clip-path: polygon(0 15%, 100% 85%, 100% 0%, 0 0%);  z-index: 10; }

    /* SOCIAL WIDGETS */
    #social .widget{background:#fff; border-radius:.6rem; box-shadow:0 6px 18px rgba(12,35,64,.06); overflow:hidden; min-height: 20vh; max-height: 60vh;}
    /* AKTUALNOŚCI */
    .news-card{border:none; border-radius:.8rem; box-shadow:0 10px 24px rgba(12,35,64,.08); transition:.2s transform,.2s box-shadow}
    .news-card:hover{transform:translateY(-4px); box-shadow:0 16px 32px rgba(12,35,64,.12)}
    .news-card .card-title{color:var(--ko-blue); font-weight:800}
    .news-card .card-img-top{aspect-ratio:16/9; object-fit:cover}

    #aktualnosci {
    position: relative;
      overflow: hidden;
      padding-bottom: 200px; 
    }
  #aktualnosci::before {
   content:""; position:absolute; left:0; right:0; bottom:-1px; height:200px;  background:var(--ko-blue);
      clip-path:polygon(0 95%, 100% 15%, 100% 100%, 0 100%);  }
  #aktualnosci::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 200px;
  background: var(--bg); clip-path: polygon(0 15%, 100% 95%, 100% 100%, 0 100%); }
    /* O MNIE */
    #o-mnie{background: var(--bg);}
    #o-mnie .blockquote{font-size:1.1rem}
    #o-mnie li::marker{color:var(--ko-blue)}
    #o-mnie { background: linear-gradient(to bottom, var(--bg) calc(100% - 200px), transparent calc(100% - 200px)); position: relative; 
      overflow: hidden;  padding-bottom: 200px;}
    #o-mnie::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 200px; background: var(--ko-red); 
      clip-path: polygon(0 85%, 100% 15%, 100% 0%, 0 0%); z-index: -2; }
    #o-mnie::after {
      content: "";  position: absolute; left: 0; right: 0; bottom: 0; height: 201px; background: var(--bg); 
      clip-path: polygon(0 15%, 100% 85%, 100% 0%, 0 0%); z-index: -1;
    }
    /* SEJM */
    #sejm{background:var(--white)}
    #sejm h4{font-weight:800; color:var(--ko-blue)}
    #sejm h3{font-size: 1.5rem;font-weight:800; color:var(--ko-blue)}
    /* FORMULARZ */
        #formularz {
    position: relative;
      overflow: hidden;
      padding-bottom: 200px; 
    }
    #formularz::before {
   content:""; position:absolute; left:0; right:0; bottom:-1px; height:200px;  background:var(--ko-red2);
      clip-path:polygon(0 95%, 100% 15%, 100% 100%, 0 100%);  }
  #formularz::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 200px;
  background: var(--ko-blue); clip-path: polygon(0 15%, 100% 95%, 100% 100%, 0 100%); }
    #formularz .form-control:focus{border-color:var(--ko-blue); box-shadow:0 0 0 .2rem rgba(10,77,179,.12)}
    .btn-primary{background:var(--ko-blue); border-color:var(--ko-blue); font-weight:700}
    .btn-primary:hover{background:var(--ko-blue-dark); border-color:var(--ko-blue-dark)}
    .btn-outline-primary{color:var(--ko-blue); border-color:var(--ko-blue); font-weight:700}
    .btn-outline-primary:hover{background:var(--ko-blue); color:#fff}
    /* ZESPÓŁ */
    .avatar{width:120px; height:120px; object-fit:cover}
    /* STOPKA */
    footer{background:var(--ko-blue); color:#fff}
    footer a{color:#fff}
    /* DROBNICA */
    .section-title{font-family:Montserrat,sans-serif; font-weight:800; color:var(--ko-blue)}
    .divider{height:4px; width:80px; background:var(--ko-red); display:block; margin:.75rem auto 0}
    .divider2{height:4px; width:80px; background:var(--ko-blue-dark); display:block; margin:.75rem auto 0}
    /* Mobile tweaks */
    @media (max-width: 991px){
      .navbar-collapse{background:#fff}
      .hero::after{height:80px}
    }

      /* Styl dla listy nienumerowanej */
  ul {
    /* Usuwa domyślne kropki */
    list-style: none;
    /* Dodaje marginesy i padding dla lepszego wyglądu */
    margin-left: 1.5em; 
    padding-left: 0;
  }

  /* Styl dla wszystkich elementów listy */
  .sejm2 ul li {
    /* Domyślnie używa większej, niebieskiej kropki (jako pseudo-element ::before) */
    position: relative;
    margin-bottom: 10px; /* Odstęp między elementami listy */
  }

  /* Stylizuje pseudo-element ::before, który będzie naszą "kropką" */
    .sejm2 ul li::before {
    content: "•"; /* Znak kropki */
    color: #D31C3F; /* Kolor niebieski */
    font-size: 2em; /* Zwiększa rozmiar kropki dwukrotnie */
    position: absolute;
    left: -1em; /* Przesuwa kropkę w lewo */
    top: -0.4em; /* Korekta położenia pionowego */
  }

  /* Używa selektora :nth-child(even) do zmiany koloru co drugiego elementu */
  /* Zmienia kolor kropki na czerwony dla parzystych elementów (2, 4, 6...) */
    .sejm2 ul li:nth-child(even)::before {
    color: #0a4db3;
  }