body{
    margin:0;
    font-family: 'Poppins', sans-serif;
    background-color: white;
}

.sl-overlay{
    z-index:999!important;
}

body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
}

main {
    flex: 1 0 auto;
}

*{
    box-sizing: border-box;
    outline:none;
}

img{
    max-width:100%;
    height:auto;
}

a{
    text-decoration: none;
    color:#2c3e50;
    cursor:pointer;
}
button{
    cursor:pointer;
}

ul{
    list-style-type:none;
    padding:0;
    margin:0;
}

section{
    margin:0;
    padding:0;
}

h1,h2,h3,h4,h5,h6,p{
    margin:0;
}

.container{
    width:77%;
    margin:0 auto;
}

.container--left{
    margin-left:calc((100% - 77%)/2);
}

.row{
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.row--align-center{
    align-items: center;
}

.text--left{
    text-align:left;
}

.text--center{
    text-align:center;
}

.text--right{
    text-align:right;
}


.s3{
    width:24%;
}
.s4{
    width:33%;
}
.s5{
    width:41%;
}

.s6{
    width:48%;
}

.s7{
    width:57%;
}

.s8{
    width:65%;
}
.s9{
    width:75%;
}



strong{
    font-weight: 600;
}

.circle{
    border-radius:50%;
}

.col{
    position:relative;
}


.card{
    padding:15px 25px;
    border-radius:5px;
    background-color: white;
    -webkit-box-shadow: 0px 0px 8px -7px rgba(0,0,0,0.4);
    box-shadow: 0px 0px 8px -7px rgba(0,0,0,0.4);
    border:1px solid #EDEDED;
}

.bg-grey{
    background-color: #F7F9FB;
    border-top:1px solid #E5E7F2;
    border-bottom:1px solid #E5E7F2;
}

.bg-dark{
    background-color: #2c3e50;
    color:white;
}




.shadow{
    -webkit-box-shadow: 0px 0px 8px -7px #000000;
    box-shadow: 0px 0px 8px -7px #000000;
}

.section.bg-grey{
    margin-top:40px;
}


/* SECTION */

.section{

}
.section__header{
    text-align:center;
    padding:50px 0;
}
.section__content{
    padding-bottom: 60px;
}
.section__title{
    font-size:34px;
    font-weight:400;
}
.section__description{
    color:#999999;
    font-size:17px;
    line-height: 20px;
}
.section__content p{
    font-size:15px;
    color:#444;
    line-height: 160%;
}
.section__content ul{
    list-style-type:circle;
    padding-left:25px;
    margin:10px 0;
    color:#565656;
    font-size:15px;
}
.section__content ul > li{
    margin:4px 0;
}












/* HEADER */

.header__top{
    background-color: #2c3e50;
    width:100%;
    height:40px;
    display:flex;
    align-items: center;
}
.header__top__right__list{
    display:flex;
    align-items:center;
}
.header__top__right__list > li{
    margin-right:30px;
}
.header__top__right__list > li:last-child{
    margin-right:0;
}
.header__top__right__list > li > a{
    color:#ecf0f1;
    font-size:13px;
    transition: color 0.3s;
}
.header__top__right__list > li > a:hover{
    color:#82ccdd;
}


.header__menu{
    display:flex;
    align-items: center;
    border-bottom: 1px solid #EDEDED;
    background-color: white;
}
.header__nav{
    display:flex;
    justify-content: space-between;
    align-items: center;
}
.header__nav__logo > a{
    width:120px;
    display:flex;
    align-items: center;
}
.header__nav__list{
    display:flex;
    flex-wrap:wrap;
}



.header__nav__list > li > a{
    margin:0 7px;
    padding:0 13px;
    height:80px;
    display:flex;
    align-items: center;
    position:relative;
    color:#2c3e50;
    font-size:14px;
    -moz-user-select: none; /* nie pozwól na zaznaczenia */
    user-select: none; /* nie pozwól na zaznaczenia */
}


.header__nav__list > li.menu-item-has-children{
    position:relative;
}

.header__nav__list > li.menu-item-has-children > a::after{
    font-family: 'Font Awesome 5 Free', serif;
    font-weight: 900;
    content: '\f0d7';
    margin-left:5px;
}
.header__nav__list > li.current-menu-item > a{
    font-weight: 500;
    color:#2c3e50;
}
.header__nav__list > li:last-child > a{
    margin-right:0;
    padding-right:0;
}

.header__nav__list > li > a{
    color:#2c3e50;
    font-size:14px;
}













/* MAIN SLIDER */
.main-slider{
    width: 100%;
    -webkit-tap-highlight-color: transparent;
    position: relative;
    z-index: 1;
    cursor:grab;
}
.main-slider .owl-stage{
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    height:100%;
}
.main-slider .owl-stage:after{
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.main-slider .owl-stage-outer{
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0px, 0px, 0px);

}
.main-slider .owl-wrapper,
.main-slider .owl-item{
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
}
.main-slider .owl-item{
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    height:100%;
}
.main-slider__item{
    background-size: cover;
    background-position: center;
    overflow:hidden;
    width:100%;
    position:relative;
    padding-top:50%;
}
.main-slide__item__content__container{
    position:absolute;
    top:50%;
    left:80px;
    right:80px;
    transform: translateY(-50%);
    display:flex;
    flex-wrap:wrap;
    align-items: center;
    margin:0 auto;
}
.main-slide__item__content__container--left{
    justify-content: flex-start;
}
.main-slide__item__content__container--center{
    justify-content: center;
}
.main-slide__item__content__container--right{
    justify-content: flex-end;
}




.main-slide__item__content{
    display:inline-block;
    padding:15px 25px;
    border-radius:4px;
    background-color: white;
    -webkit-box-shadow: 0 0 15px -12px #000000;
    box-shadow: 0 0 15px -12px #000000;
}
.main-slide__item__content__title{
    color:black;
    font-size:32px;
    font-weight:600;
}
.main-slide__item__content__description{
    color:#999;
    font-size:14px;
    line-height:110%;
}
.main-slider .owl-nav > button{
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    font-size:90px;
    color:white;
    background: none;
    border: none;
    text-shadow: 0 0 2px rgba(0, 0, 0, 1);
    transition: font-size 0.2s;
}
.main-slider .owl-nav > button:hover{
    font-size:100px;
}
.main-slider .owl-prev{
    left:10px;
}
.main-slider .owl-next{
    right:10px;
}
.main-slider .owl-dots{
    position:absolute;
    left:0;
    right:0;
    margin:auto;
    bottom:20px;
    display:flex;
    justify-content: center;
}
.owl-dot{
    width:13px;
    height:13px;
    padding:0;
    margin:0 7px;
    border-radius:50%;
    background: none;
    border:2px solid white;
    -webkit-box-shadow: 0 0 7px -2px #000000;
    box-shadow: 0 0 7px -2px #000000;
    cursor:pointer;
}
.owl-dot.active{
    background: #2c3e50;
}
.main-slide__item__content_button{
    margin-top:15px;
}







/* INDEX FEATURES */
.index-features{
    margin-top:35px;
}
.index-features > .row{
    margin-bottom: 12px;
}
.feature{
    margin:5px 0;
}
.icon{
    background-color: #3E5A74;
    color:#ecf0f1;
    font-size:30px;
    display:flex;
    align-items: center;
    justify-content: center;
    width:60px;
    height:60px;
    border-radius:50%;
    -webkit-box-shadow: 0px 0px 8px -7px #000000;
    box-shadow: 0px 0px 8px -7px #000000;
}
.icon__content{
    width:calc(100% - 78px);
}
.icon__title{
    font-size:17px;
    font-weight:600;
    margin-bottom: 2px;
}
.icon__description{
    font-size:14px;
    color:#999999;
    line-height:140%;
}


























.btn{
    font-size:13px;
    font-family: 'Poppins', sans-serif;
    border-radius:4px;
    font-weight:600;
    background-color: #2c3e50;
    color:white;
    border:0;
    padding:9px 32px;
    transition: background-color 0.3s;
    cursor:pointer;
}

.btn:hover{
    background-color: #3E5A74;
}





/* CONTACT FORM */
.contact__form{
    padding:40px 0;
}
.contact__form__title{
    font-size:28px;
    font-weight:500;
    margin-bottom: 50px;
}
.contact-details__container{
    display:flex;
    align-items: center;
    justify-content: center;
    padding:40px 40px 330px;
    height:100%;
}
.contact-details__item{
    display:flex;
    align-items: center;
    margin:32px 0;
}
.contact-details__item__icon{
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: white;
    display:flex;
    align-items: center;
    justify-content: center;
    color:#2c3e50;
    font-size:26px;
    -webkit-box-shadow: 0px 0px 15px -5px #000000;
    box-shadow: 0px 0px 15px -5px #000000;
}
.contact-details__item__content{
    padding-left:20px;
    color:#ecf0f1;
}
.contact-details__item__content > h5{
    font-size:14px;
    font-weight:400;
    color:#82ccdd;
}
.contact-details__item__content > h4{
    font-size:17px;
    font-weight:500;
    line-height: 140%;
}
.contact-map{
    position: absolute;
    bottom:0;
    left:0;
    width:100%;
    height:300px;
}

.contact-map div{
    height:100%;
}

.contact-map iframe{
    width:100%;
    height:100%;
}




.input__field{
    display:flex;
    flex-direction: column-reverse;
    margin:25px 0;
}
.input__field--button{
    display:block;
    text-align:right;
}
.input{
    resize:none;
    font-family: 'Poppins', sans-serif;
    font-size:14px;
    font-weight: 500;
    border:0;
    border-bottom: 1px solid #999999;
    padding:7px 0;
    width:100%;
}
.label{
    font-size:14px;
    margin-bottom: 10px;
}
.input:focus{
    border-bottom: 1px solid #1289A7;
    padding-bottom: 0px!important;
}
.input:focus + .label{
    color:#1289A7;
    font-weight: 500;
}




/* ABOUT COMPANY */
.company__about > p{
    font-size:16px;
    max-width:95%;
    margin:25px 0;
}



/* FOOTER */
.footer{
    border-top:1px solid #ecf0f1;
    padding:30px 0;
    display:flex;
    align-items: center;
}
.footer__logo{
    max-width:100%;
    width:140px;
}
.footer__content{
    text-align:right;
    font-size:13px;
}
.footer__content a{
    font-size:14px;
    border-bottom: 1px solid #2c3e50;
    display:inline-block;
    padding:0 5px;
}

.copyright{
    margin-top:10px;
    color:#999999;
}






.wpcf7-form{
    width:100%;
}

.wpcf7-form label{
    width:100%;
    display:block;
    font-size: 14px;
}

.wpcf7-form-control-wrap{
    display:block;
    width:100%;
    margin:10px 0 25px;
}

.wpcf7-form .btn{
    float:right;
}

.wpcf7-response-output{
    font-size:14px;
    margin-top:15px;
}








/* POST *
 */

.post{
    margin:40px 0;
}

.post__thumbnail{
    position:relative;
    width:100%;
    padding-top:30%;
    min-height: 200px;
    background-size: cover;
    background-position: center;
}

.post__thumbnail__overlay{
    position:absolute;
    left:0;
    top:0;
    background-color: rgba(0,0,0,0.7);
    width:100%;
    height:100%;
    display:flex;
    align-items: center;
    justify-content: center;
}

.post__title{
    font-weight:700;
    color:white;
    font-size:46px;
    letter-spacing: 1px;
}

.post__content{
    margin:40px 0 70px;
}

.post__content p{
    margin:22px 0;
    font-size:15px;
}

.post__content > ul{
    list-style-type:circle;
    padding-left:25px;
    font-size:14px;
}


.gallery-block-custom{
    width:50%;
    float:left;
    text-align:center;
}








.wp-block-gallery{
    list-style-type:none;
    padding:0;
    margin:0;
    padding-left:0!important;
    justify-content: center;
}

.wp-block-gallery .blocks-gallery-item {
    max-width:100%;
    width:200px!important;
    flex-grow: inherit!important;
}


span.wpcf7-list-item {
    display: inline-block;
    margin-left:0!important;
}



@media only screen and (max-width: 1366px) {
    .container{
        width:85%;
    }
    .container--left{
        margin-left:calc((100% - 85%)/2);
    }
}

@media only screen and (max-width: 1200px) {
    .container{
        width:90%;
    }

    .container--left{
        margin-left:calc((100% - 90%)/2);
    }
}


@media only screen and (min-width:997px){


    .header__nav__mobile{
        display:none;
    }

    .header__nav__list > li > a::before{
        width:0;
        transition: width 0.3s;
        content: '';
        position:absolute;
        bottom:0;
        left:0;
        right:0;
        margin:auto;
        height:2px;
        background-color: #2c3e50;
    }
    .header__nav__list > li.current-menu-item > a::before{
        width:100%;
    }
    .header__nav__list > li:hover > a::before{
        content: '';
        position:absolute;
        bottom:0;
        left:0;
        right:0;
        margin:auto;
        width:100%;
        height:2px;
        background-color: #2c3e50;
    }


    .sub-menu{
        position:absolute;
        background-color: white;
        z-index:999;
        padding:10px 30px;
        margin:1px auto 0;
        transform: translateX(-50%);
        left:50%;
        top:100%;
        -webkit-box-shadow: 0px 0px 8px -4px #000000;
        box-shadow: 0px 0px 8px -4px #000000;
        white-space: nowrap;
        display:none;
    }

    .sub-menu > li{
        margin:15px 0;
        font-size:14px;
    }
}

@media only screen and (max-width: 996px) {

    .gallery-block-custom{
        width:100%;
        float:left;
        text-align:center;
    }


    .container{
        width:97%;
    }

    .container--left{
        margin-left:0;
    }

    .m6{
        width:48%;
    }

    .m12{
        width:100%;
        margin-bottom: 10px;
    }

    .footer__content{
        text-align:center;
    }

    .footer__logo{
        margin:10px auto;
    }

    .contact__form{
        padding:20px;
    }

    .company__about{
        padding:15px;
        text-align:center;
    }

    .header__nav__list__container{
        display:none;
        position:fixed;
        left:0;
        top:0;
        background-color: rgba(0,0,0,0.8);
        width:100%;
        height:100vh;
        z-index:99990;
    }

    .header__nav__list__container--visible{
        display:block;
    }

    .header__nav__list{
        position:fixed;
        left:0;
        top:0;
        z-index:99999;
        width:280px;
        height:100%;
        max-width:100%;
        background-color: white;
        display:block;
        padding-top:20px;
    }

    .header__nav{
        padding:12px 0;
    }

    .header__nav__mobile{
        display:block;
        padding-right:10px;
        font-size:25px;
    }

    .header__nav__list > li > a {
        padding: 14px 10px;
        height: auto;
        justify-content: space-between;
    }


    .sub-menu{
        padding:3px 8px 3px 35px;
        font-size:14px;
        display:none;
    }

    .sub-menu > li{
        padding:10px 0;
    }


}









@media only screen and (max-width: 600px) {



    .container{
        width:calc(100% - 10px);
    }

    .s12{
        width:100%;
    }

    .main-slider .owl-nav > button{
        font-size:50px;
    }
    .main-slider .owl-nav > button:hover{
        font-size:50px;
    }
    .main-slider .owl-prev{
        left:0;
    }
    .main-slider .owl-next{
        right:0;
    }

    .main-slide__item__content__container{
        max-width:calc(100% - 70px);
        left:35px;
        right:35px;
    }

    .main-slider__item{
        padding-top:350px;
    }

    .main-slide__item__content__title{
        font-size:22px;
    }
    .main-slide__item__content__description{
        font-size:14px;
    }





}