html {
    font-size: 80%;
}

body{
    margin: 0;
    padding: 0;
    font-family: "Rokkitt", serif;
    color: rgb(25, 36, 124);
    background-color: rgb(255, 255, 255);
    font-size: 1.4rem;
}

/* --------------------------------------- nagłowek ---------------------------------------*/

.page-header {
    width: 100%;
    position: absolute;

    background-color: rgb(25, 36, 124);

    border-bottom-style: solid;
    border-bottom-width: 5px;
    border-bottom-color: rgb(230, 28, 102);
}

.page-header-box {
    
    padding-top: 20px;
    padding-bottom: 20px;
    width: 100%;

    box-sizing: border-box;
    position: relative;
}

.page-header-logo {
    padding-left: 20px;
}

.main-logo {
    height: 40px;;
    fill:rgb(255, 255, 255);
}

.main-logo .fil1 {
    fill: rgb(230, 28, 102);
}

.main-logo .fil2, .fil0 {
    fill: rgb(255, 255, 255);
}

.page-nav {
    display: flex;
}

.page-nav .nav-menu{
    display: none;
    list-style: none;
    padding: 0;
    margin: 0;

    width: 100%;
    height: 100%;

    text-align: center;
}

.page-nav .nav-menu li{
    padding-top: 10px;
    padding-bottom: 10px;
    box-sizing: border-box;

    border-bottom-style: solid;
    border-bottom-width: 0;
    border-bottom-color: rgb(230, 28, 102);
    
    transition-property: all;
    transition-duration: 0.25s;

}

.page-nav .nav-menu li a{
    color: rgb(255,255,255);
    text-decoration: none;
    font-size: 2rem;
    width: 100%;

}
.page-nav .nav-menu li:hover {

    border-bottom-width: 3px;
    padding-bottom: 7px;

}

.page-nav .nav-menu .menu-social{
    border-color: rgb(25, 36, 124);
}

.page-nav .social-ikons {
    border: 0;
    background: 0;
    height: 40px;;
    width: 40px;
    position: relative;
    top: 6px;
}

.page-nav .nav-menu .menu-social svg{
    fill:rgb(255, 255, 255);
    transition-property: all;
    transition-duration: 0.25s;
}

.page-nav .nav-menu .menu-social svg:hover{
    fill: rgb(230, 28, 102);
}

.page-nav .hamburger {
    border: 0;
    background: 0;
    width: 40px;
    height: 40px;
    position: absolute;
    right: 20px;
    top: 20px;
}

.page-nav .hamburger svg{
    fill: rgb(255, 255, 255);
}

.page-nav .hamburger .icon-cross{
    display: none;
    width: 20px;
}



.page-header-box.nav-opened{
    padding-bottom: 10px;
}
.page-header-box.nav-opened .page-nav .hamburger .icon-hamburger
{
    display: none;
}
.page-header-box.nav-opened .page-nav .hamburger .icon-cross
{
    display: inline-block;
}

.page-header-box.nav-opened .nav-menu{ 
    display: block;
}

.article {
    padding-top: 80px;
}

.article a{
    color: rgb(25, 36, 124);
}

.article .article-header{
    
    color: rgb(255,255,255);
    padding-left: 10px;

    background-color: rgb(230, 28, 102);
    background-size: cover;
    background-position: center center;

    display: flex;
    flex-direction: column;
    flex: 1 1 0;

}



.article .article-header .article-header-in {
    margin: 0;
    padding: 20px;
    font-size: 1.5rem;

}

.article .article-header .article-header-in h1{
    margin: 0;
    padding-top: 10px;
    font-size: 3rem;
}

.article .article-header .article-header-in a{
    color:rgb(255, 255, 255);
}

.article .article-header-main{
    
    height: 60vh;

    background: url(../img/header_background.jpg) no-repeat;
    background-position: center;
    background-size: cover;
    

}

.article .article-header-main-out {
    /*background-color: rgba(0, 0, 0, 0.1);*/
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
	align-items: center;
}

.article .article-header-main-in{
    margin: 20px;
    font-size: 3rem;
    color:rgb(255, 255, 255);
    border-bottom: solid 5px;
    border-bottom-color: rgb(230, 28, 102);
    position: relative;

    text-shadow: 0px 0px 10px rgb(0, 0, 0);

    

}

.article .profil{
    background-color: rgb(203, 209, 255);

}


.article .profil .profil-in {
    padding-left: 30px;
    padding-right: 30px;
}
.article .profil .profil-figure {
    margin: 0;
    padding-top: 20px;
    padding-bottom: 20px;
}
.article .profil .profil-figure img{
    display: block;
    width: 100%;
    max-width: 300px;
    margin: auto;
}

.article .profil .profil-text {
    box-sizing: border-box;
    width: 100%;
    padding-bottom: 20px;
    text-align: justify;
}

.article .profil .profil-text p{
    margin-top: 0px;
    margin-bottom: 5px;
}

.article h3 {
    font-size: 1.1em;
    margin-bottom: 0;

}
.article .article-text {
    padding-left: 30px;
    padding-right: 30px;
    margin-top: 20px;

}

.article .article-text h2{
    padding: 0;
    margin: 0;
}

.article .article-text p{
    padding-top: 5px;
    margin-top: 0;
}

.article p.opis-main {
    font-size: 2rem;
}

.article .article-text svg {
    height: 2.3rem;
    position: relative;
    top: 5px;
}

.article .article-text svg.logo-text .fil0, .fil2 {
    fill: rgb(25, 36, 124);
}
.article .article-text svg.logo-text .fil1 {
    fill: rgb(230, 28, 102);
}



.article p{
    padding-top: 10px;
    text-align: justify;
}
.article-aside .article-figure {

    margin: 0;
    margin: auto;
}
.article-aside .article-figure img{
    display: block;
    width: 100%;
    max-width: 500px;
    margin: auto;
}

.article .kontakt-kontakt-media svg{
    height: 20px;
    padding-right: 5px;
    padding-top: 5px;
    padding-left: 5px;
    position: relative;
    top: 5px;
    fill:rgb(25, 36, 124);
}

.article .article-text .kafle {
    width: 100%;
}

.article .article-text .kafle a{
    text-decoration: none;
}

.article .article-text .kafle svg{
    fill:rgb(255, 255, 255);
    padding-top: 15px;
    height: 80px;
}

.article .article-text a.kafel {
    display: block;
    width: 100%;
    background-color: rgb(25, 36, 124);
    color:rgb(255, 255, 255);
    font-size: 2rem;
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
    box-sizing: border-box;


    border-bottom-style: solid;
    border-bottom-width: 10px;
    border-bottom-color: rgb(25, 36, 124);
}

.article .article-text .kafel:hover {
    border-bottom-color: rgb(230, 28, 102);
} 

.article .article-text .kafel.wazne {
    background-color: rgb(230, 28, 102);
    border-bottom-color: rgb(230, 28, 102);
}    

.article .article-text .kafel.wazne:hover {
    border-bottom-color: rgb(25, 36, 124);
}

.article .article-text a.kafel .kafel_in {
    display: block;
    width: 100%;
    background-color: rgb(124, 25, 111);
    color:rgb(255, 255, 255);
    font-size: 1.25rem;
    text-align: center;
    margin: 0;
    box-sizing: border-box; 
}

.article .article-text .main-page-kafle .main-page-kafel {
    width: 100%;
    
}

.article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in{
    width: 100%;
    position: relative;

}

.article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in img{
    display: block;
    width: 100%;

}



.article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in .overlay{
    box-sizing: border-box;

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

    width: 100%;
    height: 100%;
    padding-left: 50px;
    padding-right: 50px;

    background-color: rgba(230, 28, 102, 0.5);
    color: rgb(255, 255, 255);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    transition: .5s ease;
    
}

.article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in .overlay-in{
    text-align: center;
    
} 

  .article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in-podpis {
    width: 100%;
    background-color: rgb(25, 36, 124);
    color:rgb(255, 255, 255);
    font-size: 2rem;
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
    box-sizing: border-box;
  }

  .oferta_header {
      width: 100%;
      background-color: rgb(25, 36, 124);
      padding: 10px;
      margin-bottom: 15px;
      box-sizing: border-box;
  }

  .oferta_header h2{
      font-size: 1.2em;
      color: rgb(255, 255, 255);
      padding: 0;
      margin: 0;
  }

.back-to-top {
    color: rgb(25, 36, 124);
    width: 100%;
    margin-bottom: 15px;
    text-align: right;
  }

  .oferta_kafel {
    width: 100%;
    background-color: rgb(203, 209, 255);
    padding: 10px;
    margin-bottom: 15px;
    box-sizing: border-box;
  }

  .oferta_kafel img{
      display: block;
      width: 100%;
      max-width: 400px;
      margin: auto;
  }

  .oferta_kafel h3{
    padding: 0;
    margin: 0;
    margin-top: 15px;
    }

    .oferta_kafel p{
        padding: 0;
        margin: 0;
        margin-top: 15px;
        }

.article-text .tabela {
    
    width: 100%;
}

.article-text .tabela .tabela_kolumna {
    background-color: rgb(255, 167, 197);
    margin-bottom: 10px;
}

.article-text .tabela .tabela_kolumna .tabela_komorka:first-child{
    background-color: rgb(230, 28, 102);
    text-align: center;
    font-size: x-large;
    color: rgb(255, 255, 255);
}

.article-text .tabela .tabela_kolumna .tabela_komorka{
    text-align: justify;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
    padding-right: 20px;
}

.page-footer {
    text-align: center;
    margin-top: 30px;
    border-top-style: solid;
    border-top-width: 5px;
    border-top-color: rgb(230, 28, 102);
    background: rgb(25, 36, 124);
    color:rgb(255, 255, 255);

}

.page-footer-box {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    padding-top: 20px;
    padding-bottom: 20px;
}

.page-footer-box a{
    text-decoration: none;
    color:rgb(255, 255, 255);
}

.page-footer-box .kontakt{
    padding-top: 10px;
}

.page-footer-box .kontakt svg{
    height: 20px;
    fill:rgb(255, 255, 255);
    padding-right: 10px;
    position: relative;
    top: 6px;
}



.page-footer .footer-navigation {
    list-style: none;
    margin: 0;
    padding: 0;

}
.page-footer .footer-navigation li{
    padding-top: 10px;
    padding-bottom: 10px;
}
.page-footer .footer-navigation li a{
    text-decoration: none;
    color:rgb(255, 255, 255);

}

@media (min-width: 45em) {


    .page-header-box {
        max-width: 1020px;
        margin: auto;
        left: 0;
        right: 0;
    }
    .page-nav .hamburger {
        display: none;
    }
    .page-nav {
        position: absolute;
        top: 20px;
        right: 20px;
    }
    .page-nav .nav-menu{
        display: block;
    }
    .page-nav .nav-menu li{
        display: inline-block;
        margin-right: 20px;
    }

    .page-nav .nav-menu .menu-social{

        border: none;
        padding: 0;
    }

    .article .article-header {
        margin: auto;
    }
    .article .article-header .article-header-in {
        display: block;
        width: 1020px;
        margin: auto;
        padding: 20px;
        
    }
    
    .article .profil-in {
        max-width: 1020px;
        margin: auto;
        padding: 0;
        display: flex;
    }
    .article .profil .profil-figure {
        margin: 0;
        max-width: 500px;
        width: 500px;
    }
    .article .profil .profil-figure img{
        max-width: 500px;
    }
    
    .article .profil .profil-text {
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 20px;
    }

    .article-text {
        max-width: 1020px;
        margin: auto;
    }

    .article .article-text .kafle {
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: stretch;
        align-content: stretch;
    }
    
    .article .article-text a.kafel {
        display: block;

        min-width: 200px;
        background-color: rgb(25, 36, 124);
        color:rgb(255, 255, 255);
        font-size: 2rem;
        text-align: center;
        padding: 20px;
        margin: 0;
        box-sizing: border-box;
        width: 20%;}
    
        
        .article .article-text a.oferta {
            width: 20%;
        }

        .article .article-text a.main {
            width: calc(100% / 3);
        }


        .article .article-text .main-page-kafle {
            display: flex;
            flex-direction: row;
            
        }
        
        .article .article-text .main-page-kafle .main-page-kafel {
            width: calc(100%/3);
            
        }
        
        .article .article-text .main-page-kafle .oferta_kafelek {
            width: 20%;
            
        }

        .article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in{
            width: 100%;
            position: relative;
        
        }
        
        .article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in img{
            display: block;
            width: 100%;
        
        }
        
        
        
        .article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in .overlay{
            box-sizing: border-box;
        
            display: flex;
            justify-content: center;
            align-items: center;
        
            width: 100%;
            height: 0;
            padding-left: 50px;
            padding-right: 50px;
        
            background-color: rgba(230, 28, 102, 0.5);
            color: rgb(255, 255, 255);
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            overflow: hidden;
            transition: .5s ease;
            
        }
        
        .article .article-text .main-page-kafle .main-page-kafel:hover .overlay {
            height: 100%;
          }
        
        .article .article-text .main-page-kafle .main-page-kafel .main-page-kafel-in .overlay-in{
            text-align: center;
            
        } 

    .oferta_kafel {
        display: flex;
    }

    .oferta_kafel .oferta_opis{
        width: 70%;
    }

    .oferta_kafel img{
        width: 30%;
    }

    .oferta_kafel h3{
        margin-left: 10px;
    }
    .oferta_kafel p{
        margin-left: 10px;
    }

    .article-text .tabela {
        display: flex;
    }

    .article-text .tabela .tabela_kolumna {
        width: 50%;
    }

    .page-footer-box {
        padding: 0;
        flex-direction: row;
        max-width: 1020px;
        margin: auto;
    }
    
    .page-footer-box-in {
        width: 30%;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    
}