/*
**====================================================================================
**====================================================================================
**			ELEMENTY
**====================================================================================
**====================================================================================
**/

/* Nagłówek podstronowy */
.pg-header, .tm_pb_builder #tm_builder_outer_content .tm_pb_section.pg-header {
    background-image: url("../images/bg-header-bottom.png");
    background-size: initial;
    background-repeat: no-repeat;
    background-position: bottom;
    padding: 55px 0px 85px;
}
.pg-header::before, .tm_pb_builder #tm_builder_outer_content .tm_pb_section.pg-header::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    bottom: 51px;
    right: 0px;
    background: #FF6705;
    z-index: -2;
}
.pg-header::after, .tm_pb_builder #tm_builder_outer_content .tm_pb_section.pg-header::after {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    bottom: 51px;
    right: 0px;
    background-image: url("../images/bg-header-image.png");
    background-size: initial;
    background-repeat: no-repeat;
    background-position: 300% bottom;
    z-index: -1;
}
.pg-header h1, #tm_builder_outer_content .tm_pb_section.pg-header h1 {
    font-size: 58px;
    text-transform: none;
}
@media (min-width: 992px) and (max-width: 1199px) { 
    .pg-header h1, #tm_builder_outer_content .tm_pb_section.pg-header h1 { font-size: 43px; }
}
@media (min-width: 768px) and (max-width: 991px) {
    .pg-header h1, #tm_builder_outer_content .tm_pb_section.pg-header h1 {	font-size: 38px; }
}
@media (max-width: 767px) {
    .pg-header h1, #tm_builder_outer_content .tm_pb_section.pg-header h1 {	font-size: 35px; }
}

/* Nagłóweki ogólnie */
.pg-content *[class*="pg-t-"] {
    margin: 0px;
    padding: 0px;
    font-weight: 500;
}

/* Nagłówek główny */
.pg-content .pg-t-1 {
    text-align: center;
    margin-bottom: 30px;
}

/* Nagłówek sekcyjny */
.pg-content .pg-t-2 {
    font-size: 30px;
    margin-bottom: 50px;
    text-align: center;
    line-height: 35px;
    text-transform: none;
    position: relative;
}
.pg-content .pg-t-2.pg-t-2--blue {
    color: #00aeef;
}
.pg-content .pg-t-2::after {
    content: "";
    position: absolute;
    top: auto;
    right: 0px;
    bottom: -20px;
    left: 0px;
    width: 100%;
    max-width: 300px;
    height: 1px;
    margin: 0px auto;
    background: -moz-linear-gradient(left,  rgba(0,174,239,0) 0%, rgba(0,174,239,1) 50%, rgba(0,174,239,0) 100%);
    background: -webkit-linear-gradient(left,  rgba(0,174,239,0) 0%,rgba(0,174,239,1) 50%,rgba(0,174,239,0) 100%);
    background: linear-gradient(to right,  rgba(0,174,239,0) 0%,rgba(0,174,239,1) 50%,rgba(0,174,239,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0000aeef', endColorstr='#0000aeef',GradientType=1 );
}

/* Nagłówek kontentowy */
.pg-content .pg-t-3 {
	text-transform: none;
	font-size: 20px;
	letter-spacing: 0px;
	position: relative;
	padding: 0px 0px 15px 0px;
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	color: #00aeef;
}
.pg-content .pg-t-3::before, .pg-content .pg-t-3::after {
    content: "";
    position: absolute;
    top: 7px;
    left: 0px;
    border-radius: 50px;
    display: none;
}
.pg-content .pg-t-3::before {
    width: 18px;
    height: 18px;
    border: 2px solid #FF6705;
}
.pg-content .pg-t-3::after {
    width: 10px;
    height: 10px;
    border: 2px solid #FF6705;
    margin: 4px 0px 0px 4px;
    content: "";
    line-height: 0px;
    font-size: 11px;
    text-align: left;
    padding-left: 1px;
    color: #FF6705;
}

/* Nagłówki różne ustawienia */
.pg-content .pg-t-3 + ul, #tm_builder_outer_content .tm_pb_module.pg-content .pg-t-3 + ul { margin-top: 25px; }
.pg-content p + .pg-t-3, #tm_builder_outer_content .tm_pb_module.pg-content p + .pg-t-3 { margin-top: 40px; }
.pg-content__ct-center, #tm_builder_outer_content .tm_pb_text_align_left.pg-content__ct-center { text-align: center; }
.pg-content__ct-center .pg-t-3 { display: inline-block; }
.pg-content h1.contact-title, .pg-content h2.contact-title {
    font-size: 23px;
    line-height: 35px;
    padding: 0px 0px 30px 0px;
    margin: 0;
    letter-spacing: 0px;
    text-align: center
}
.pg-content h1.contact-title::before, .pg-content h2.contact-title::before {
    display: none;
}
.pg-content p + h2.pg-t-2 {
    margin-top: 40px;
}
.pg-content ul + .pg-t-3, .pg-content p + .pg-t-3 { margin-top: 35px; }

/* Nagłówki RWD */
@media (max-width: 1199px) {
    .pg-content .pg-t-1 { font-size: 35px !important; }
    .pg-content .pg-t-2 { font-size: 29px !important; }
}
@media (max-width: 767px) {
    .pg-content .pg-t-1 { font-size: 31px !important; }
    .pg-content .pg-t-2 { font-size: 20px !important; line-height: 24px; }
    .pg-content .pg-t-3 { text-align: center; font-size: 19px; padding-left: 0px; padding-top: 35px; }
    .pg-content.pg-section-3col .pg-t-3 { text-align: left; padding-top: 0px; }
    .pg-content .pg-t-3::before, .pg-content .pg-t-3::after { right:0px; margin: 0px auto; }
}

/* Różne */
.block-center, .block-center p, .text-center { text-align: center; }
.pg-content p { color: #5D5D5D; text-align: justify; }
.pg-content p:last-of-type { margin-bottom: 0px; }
.pg-content p:last-of-type + .pg-list { margin-top: 5px; }
.pg-content *[class*="pg-t-"] + p { margin-top: 0px; }

/* Przycisk */
.pg-btn-wrapper--center { text-align: center; }
.pg-btn, form input[type="submit"] {
    background-color: RGB(1, 174, 240);
    color: rgb(255, 255, 255);
    border: 2px solid RGB(1, 174, 240);
    padding: 11px 41px;
    font-size: 14px;
    width: auto;
    font-weight: 600;
    box-shadow: none;
    border-radius: 3px;
    display: inline-block;
}
.pg-btn.pg-btn--icon { padding: 11px 41px 11px 61px; position: relative; }
.pg-btn:hover, .pg-btn:focus {
    background-color: white;
    color: RGB(1, 174, 240);
}
.invert .pg-btn {
    background-color: rgb(255, 255, 255);
    color: #FF6705;
    border: 2px solid rgb(255, 255, 255);
}
.invert .pg-btn:hover {
    background-color: #FF6705;
    color: white;
}
.pg-btn .fa::before {
    font-size: 25px;
    margin-right: 10px;
    position: absolute;
    top: 10px;
    left: 35px;
}
.pg-btn .fa.fa-envelope::before { font-size: 19px; }
@media (min-width: 1200px) { .pg-btn-wrapper.pbw-center-lg { text-align: center; } .pg-btn-wrapper.pbw-right-lg { text-align: right; } }
@media (min-width: 992px) and (max-width: 1199px) { .pg-btn-wrapper.pbw-center-md { text-align: center; } .pg-btn-wrapper.pbw-right-md { text-align: right; } }
@media (min-width: 768px) and (max-width: 991px) { .pg-btn-wrapper.pbw-center-sm { text-align: center; } .pg-btn-wrapper.pbw-right-sm { text-align: right; } }
@media (max-width: 767px) { .pg-btn-wrapper.pbw-center-xs { text-align: center; } .pg-btn-wrapper.pbw-right-xs { text-align: right; } .pg-btn { font-size: 14px; } }

@media (max-width: 450px) {
    .pg-btn.pg-btn--icon.pg-btn--wide { padding: 11px 20px 11px 20px; }
    .pg-btn.pg-btn--wide .fa::before {
        margin: 0px auto;
        position: relative;
        top: 0;
        left: 0;
        display: block;
    }
}


/*
**====================================================================================
**====================================================================================
**			BLOKI
**====================================================================================
**====================================================================================
**/

.pg-block-t { padding-top: 55px; }
.pg-block-b { padding-bottom: 55px; }
.pg-block-t-half { padding-top: 22px; }
.pg-block-b-half { padding-bottom: 22px; }

.pg-col-l-t, #tm_builder_outer_content .tm_pb_column.pg-col-l-t, .pg-col-r-t, #tm_builder_outer_content .tm_pb_column.pg-col-r-t { padding-top: 55px; }
.pg-col-l-b, #tm_builder_outer_content .tm_pb_column.pg-col-l-b, .pg-col-r-b, #tm_builder_outer_content .tm_pb_column.pg-col-r-b { padding-bottom: 55px; }
.pg-col-l-l, #tm_builder_outer_content .tm_pb_column.pg-col-l-l, .pg-col-r-l, #tm_builder_outer_content .tm_pb_column.pg-col-r-l { padding-left: 55px; }
.pg-col-l-r, #tm_builder_outer_content .tm_pb_column.pg-col-l-r, .pg-col-r-r, #tm_builder_outer_content .tm_pb_column.pg-col-r-r { padding-right: 55px; }

.pg-block--light, #tm_builder_outer_content .tm_pb_section.pg-block--light {
    background: silver;
}

.pg-cta-block, .tm_pb_builder #tm_builder_outer_content .tm_pb_section.pg-cta-block {
    background-image: url("../images/bg-cta.png");
    background-size: initial;
    background-repeat: no-repeat;
    background-position: top;
    padding: 75px 0px 55px;
}
.pg-cta-block::before, .tm_pb_builder #tm_builder_outer_content .tm_pb_section.pg-cta-block::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 51px;
    bottom: 0px;
    right: 0px;
    background: #FF6705;
    z-index: -2;
}
.pg-cta-block h3 {
    text-transform: none;
}

.lg-show, .md-show, .sm-show, .xs-show { display: none; }
@media (min-width: 1200px) { .lg-show { display: block !important; } }
@media (min-width: 992px) and (max-width: 1199px) { .md-show {display: block !important; } }
@media (min-width: 768px) and (max-width: 991px) { .sm-show {display: block !important; } }
@media (max-width: 767px) { .xs-show { display: block !important; } }	

.content-center { text-align: center; }
@media (min-width: 1200px) { .lg-content-center { text-align: center; } }
@media (min-width: 992px) and (max-width: 1199px) { .md-content-center { text-align: center; } }
@media (min-width: 768px) and (max-width: 991px) { .sm-content-center { text-align: center; } }
@media (max-width: 767px) { .xs-content-center { text-align: center; } }	

.v-spacer { height: 52px; display: none; clear: both; }
@media (min-width: 1200px) { .v-spacer.vs-lg {display: block;} }
@media (min-width: 992px) and (max-width: 1199px) { .v-spacer.vs-md {display: block;} }
@media (min-width: 768px) and (max-width: 991px) { .v-spacer.vs-sm {display: block;} }
@media (max-width: 767px) { .v-spacer.vs-xs {display: block;} }

/*
**====================================================================================
**====================================================================================
**			KONTAKT BOX LISTA
**====================================================================================
**====================================================================================
**/

.pg-contact-box {
    padding: 0px;
    margin: 0px;
    list-style-type: none;
}
.pg-contact-box li, #tm_builder_outer_content ul.pg-contact-box li {
    padding-left: 26px;
    position: relative;
    margin: 0px;
}
.pg-contact-box .fa {
    position: absolute;
    left: 0px;
    top: 5px;
    font-size: 20px;
    color: rgb(204, 204, 204);
}
.pg-contact-box .fa.fa-map-marker {	font-size: 30px; }
.pg-contact-box .fa.fa-phone { left:3px; font-size: 22px; }
.pg-contact-box .pg-cb-spacer {
    height: 23px;
    margin-top: 0px !important;
}
.pg-contact-box span {
    margin-bottom: 5px;
    display: inline-block;
}

.widget-area .widget .pg-contact-box li {
    padding-left: 0px;
    position: relative;
    margin: 0px;
}
.widget-area .widget .pg-contact-box .fa {
    position: relative;
    top: 0px;
    display: block;
}
.widget-area .widget .pg-contact-box .fa.fa-phone {
    display: inline-block;
    padding-right: 9px;
    top: 4px;
}

@media (max-width: 767px) {
    .pg-contact-box li, #tm_builder_outer_content ul.pg-contact-box li, .widget-area .widget ul.pg-contact-box li { padding-left: 0;text-align: center; }
    .pg-contact-box .fa { position: relative; left: 0px !important; right: 0px !important; display: block; margin-bottom: 5px; }
    .pg-contact-box span { margin-bottom: 10px; }
}


/*
**====================================================================================
**====================================================================================
**			LISTA ULLI
**====================================================================================
**====================================================================================
**/

.pg-list, #tm_builder_outer_content .tm_pb_module .pg-list {
    list-style-type: none;
    padding: 0px;
    margin: 0px 0 20px;
}
.pg-list.pg-list--padleft, #tm_builder_outer_content .tm_pb_module .pg-list.pg-list--padleft {
    margin-left: 25px;
}
.pg-list li, #tm_builder_outer_content .tm_pb_module .pg-list li {
    position: relative;
    padding-left:17px;
}
.pg-list li::before, #tm_builder_outer_content .tm_pb_module .pg-list li::before {
	content: '\ea21';
	position: absolute;
	top: 7px;
	bottom: 0px;
	left: 0px;
	width: auto;
	height: auto;
	background: transparent;
	border-radius: 0px;
	font: normal normal normal 12px/1 'nc-icon-mini';
	color: #00aeef;
}
.tm_pb_text ul.pg-list:last-of-type, .pg-list, #tm_builder_outer_content .tm_pb_module ul.pg-list:last-of-type {
    margin-bottom: 0px;
}
.pg-list + p {
    margin-top: 25px;
}
p + .pg-list {
    margin-top: -20px;
}

@media (max-width: 544px) {
    .pg-list li::before, #tm_builder_outer_content .tm_pb_module .pg-list li::before {
        top: 9px;
        width: 7px;
        height: 7px;
    }
}


/*
**====================================================================================
**====================================================================================
**			FORMULARZ KONTAKTOWY CF7
**====================================================================================
**====================================================================================
**/

.cf-row input:not(.pg-btn), .cf-row textarea, .cf-row select {
    background: #f6f6f6;
    padding: 13px 20px 13px 32px;
    border: 0px;
    font-size: 15px;
    margin-top: 6px;
    box-sizing: border-box;
    width: 100%;
    text-transform: none;
    color: #999999;
}
.cf-row input[type="text"], .cf-row input[type="tel"], .cf-row input[type="email"], .cf-row select {
    height: 48px;
}
.cf-row textarea {
    max-height: 200px;
}
.cf-row .cf-col {
    width: 100%;
}
.cf-row.cf-row-col2 .cf-col {
    width: 48%;
}
.cf-row.cf-row-col3 .cf-col {
    width: 31%;
}
.cf-row[class*="cf-row-col"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.cf-row .cf-col {
    margin: 0px 0px 25px 0px;
}
.cf-row h5 {
    color: black;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    text-align: left;
    line-height: normal;
    letter-spacing: 0em;
    padding: 0px;
    margin: 0px;
    text-transform: none;
}
.cf-row span.wpcf7-form-control-wrap {
    height: auto;
    display: block;
    box-sizing: unset;
}
.cf-row.cf-aligncenter { text-align: center; }
.cf-row input:not(.pg-btn), .cf-row textarea, .cf-row select { border: 1px solid #e3e2e7; box-shadow: none; }
.cf-row input:not(.pg-btn):focus, .cf-row textarea:focus, .cf-row select:focus { border: 1px solid RGB(236, 236, 238); background: white; }
.cf-row .wpcf7-checkbox .wpcf7-list-item { position: relative;padding-left: 23px;margin-left: 0px; color: black; }
.cf-row .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"] {
    position: absolute;
    left: 0px;
    top: 0px;
}
/*ikonki*/
.cf-row span.wpcf7-form-control-wrap::before, .cf-row .cf-wrap-field-submit::before {
    content: "";
    font-family: 'FontAwesome';
    font-size: 16px;
    line-height:normal;
    font-style: normal;
    position: absolute;
    top: 22px;
    left: 11px;
    color: #999999;
}
.cf-row span.your-name::before { content: "\f007"; }
.cf-row span.your-email::before { content: "\f0e0"; }
.cf-row span.your-phone::before { content: "\f10b"; font-size: 22px; top: 19px; }
.cf-row span.your-message::before {	content: "\f040"; }
.cf-row span.captcha-form::before {	content: "\f023"; }
.cf-row .cf-wrap-field-submit::before {
    content: "\f1d8";
    color: white;
    top: 20px;
}
/* ikonki koniec */
.wpcf7 .cf-row input.wpcf7-not-valid {
    border: 1px solid transparent;
    background: #FFEEF1;
}
.cf-row span.wpcf7-not-valid-tip {
    font-size: 11px;
    line-height: 16px;
    left: 0;
    top: 0;
    position: relative;
    text-align: center;
    right: 0px;
    font-style: normal;
    font-weight: bold;
    color: white;
    margin-top: 3px;
    text-transform: none;
}
.cf-row .cf-wrap-field-captcha {
    margin-bottom: 25px;
    display: inline-block;
    position: relative;
}
.cf-row .cf-wrap-field-captcha img.wpcf7-form-control.wpcf7-captchac {
    display: inline-block;
    border-radius: 0px;
    margin-right: 10px;
    vertical-align: top;
    position: relative;	
    top: 17px;
    z-index: 3;
}
.cf-row .cf-wrap-field-captcha .wpcf7-form-control.wpcf7-captchar {
    margin-bottom: 0px;
    display: inline-block;
    vertical-align: top;
    max-width: 115px;
}
.cf-row .cf-wrap-field-captcha span.wpcf7-form-control-wrap { display: inline-block; }
.cf-row .cf-wrap-field-captcha .wpcf7-not-valid-tip { max-width:115px;  }
.cf-row.cf-row-submit {
    position: relative;
}
.cf-row .cf-wrap-field-submit {
    display: inline-block;
    position: relative;
}
.cf-row.cf-row-submit .wpcf7-form-control.wpcf7-submit {
    height: auto;
    width: auto;
    vertical-align: middle;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.wpcf7 .cf-row .ajax-loader {
    display: inline-block;
    margin: 0 0 0 15px;
    background-color: white;
    border-radius: 25px;
    vertical-align: middle;
    background-image: url('images/cf-loader.gif');
    width: 36px;
    height: 36px;
}
.wpcf7 .cf-row div.ajax-loader {
    display: none !important;
}
.wpcf7 .cf-row.cf-aligncenter .ajax-loader {
    position: relative;
    top: 0;
    left: 0;
    margin: 12px auto 0px;
}
body div.wpcf7-response-output {
    margin: 15px 0 !important;
}
body div.wpcf7-validation-errors { background: rgb(227, 126, 126) !important; }
body div.wpcf7-response-output.wpcf7-mail-sent-ng {	background: rgb(234, 156, 54) !important; }
body div.wpcf7-response-output.wpcf7-mail-sent-ok { background: rgb(95, 204, 50) !important; }
body div.wpcf7-response-output { 
    border: 0px solid transparent !important;
    color: rgb(255, 255, 255) !important;
    box-shadow: 1px 0.7px 3px 0px rgba(0, 0, 0, 0.1);
    text-shadow: none !important;
}

.cf-row ::-webkit-input-placeholder { color: #D5D5D5 !important; }
.cf-row :-ms-input-placeholder { color: #D5D5D5 !important; }
.cf-row :placeholder-shown { color: #D5D5D5 !important; }
.cf-row :-moz-placeholder { color: #D5D5D5 !important; } 

@media (max-width: 1300px) {
    .cf-row.cf-row-col3 .cf-col { width: calc(48%); }
}
@media (max-width: 1199px) {
    .cf-row[class*="cf-row-col"] .cf-col {
        width: 100%;
    }
}
@media (max-width: 767px) {
    .cf-row.cf-row-captcha, .cf-row.cf-row-submit { text-align: center; }
    .cf-row .cf-wrap-field-submit { margin-left: 51px; }
    body div.wpcf7-response-output { text-align: center; }
}


/*
**====================================================================================
**====================================================================================
**			NGG
**====================================================================================
**====================================================================================
**/

.gallery-section {
    text-align: center;
    font-size: 0px;
}

.gallery-section .ngg-gallery-thumbnail-box {
    float: none;
    display: inline-block;
    margin: 1px 1px;
    width: calc(25% - 2px);
}
.gallery-section .ngg-gallery-thumbnail {
    border: 0px solid RGB(169, 169, 169);
}
.gallery-section .ngg-gallery-thumbnail a, .gallery-section .ngg-gallery-thumbnail {
    margin: 0px;
}
.gallery-section .ngg-gallery-thumbnail a {
    position: relative;
}
.gallery-section .gs-zoom {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    background: white;
    opacity: 0;
    padding: 0px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.gallery-section .gs-zoom::before {
    content: '\f002';
    font: normal normal normal 32px/1 FontAwesome;
    position: relative;
    top: 40%;
    color: #222222;
    -webkit-transform: rotate(90deg) scale(0);
    transform: rotate(90deg) scale(0);
    display: block;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.gallery-section .ngg-gallery-thumbnail a:hover .gs-zoom {
    opacity: 0.9;
}
.gallery-section .ngg-gallery-thumbnail a:hover .gs-zoom::before {
    -webkit-transform: rotate(0deg) scale(1);
    transform: rotate(0deg) scale(1);
    top: 43%;
}
.gallery-section-small:not(.gss-center) .gallery-section {
    text-align: left;
}
.gallery-section-small .gallery-section .ngg-gallery-thumbnail-box {
    width: calc(12% - 2px);
}
.gallery-section-small .gallery-section .gs-zoom::before {
    font-size: 21px;
    top: 36%;
}
.gallery-section-small .gallery-section .ngg-gallery-thumbnail a:hover .gs-zoom::before {
    top: 40%;
}

/*flex*/
.gallery-section.ngg-galleryoverview {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.gallery-section .ngg-gallery-thumbnail-box {
    margin: 0 0 19px;
    width: auto;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33%;
    flex: 0 0 33%;
    max-width: 376px !important; /*ustalona szerokość miniatury*/
    box-sizing: border-box;
}
.gallery-section  .ngg-clear {
    display: none;
}
.gallery-section .gs-zoom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.gallery-section .gs-zoom::before, .gallery-section .ngg-gallery-thumbnail a:hover .gs-zoom::before {	top: 0px; }
/*flex end*/
/* wzornictwo eleganckie */
.gallery-section .ngg-gallery-thumbnail-box {
    margin: 0 0 3px;
}
.gallery-section .ngg-gallery-thumbnail a {
    padding: 0px; /*Ramka animowana poza zdjęciem jak > 0*/
}
.gallery-section .gs-zoom::after {
    background: none;
    position: absolute;
    bottom: 3px;
    top: 3px;
    left: 3px;
    right: auto;
    width: 0%;
    height: auto;
    margin: 0px;
    content: "";
    border-top: 1px solid #c3c3c3;
    border-bottom: 1px solid #c3c3c3;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: all 0.8s ease;
}
.gallery-section .gs-zoom::before {
    content: '';
    font: normal normal normal 32px/150px FontAwesome;
    background: none;
    position: absolute;
    bottom: 3px;
    top: auto;
    left: 3px;
    right: 3px;
    width: auto;
    height: 0;
    margin: 0px;
    border-left: 1px solid #c3c3c3;
    border-right: 1px solid #c3c3c3;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: all 0.7s ease;
    -moz-transition: all 0.7s ease;
    -o-transition: all 0.7s ease;
    transition: all 0.7s ease;
}
.gallery-section .ngg-gallery-thumbnail:hover .gs-zoom::after {
    width: calc(100% - 6px);
}
.gallery-section .ngg-gallery-thumbnail:hover .gs-zoom::before {
    height: calc(100% - 6px);
    top: auto !important;
}
.gallery-section .ngg-gallery-thumbnail .gs-zoom i {
    font: normal normal normal 32px/20px FontAwesome;
    opacity: 0;
    color: #c3c3c3;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.gallery-section .ngg-gallery-thumbnail a:hover .gs-zoom i {
    opacity: 1;
}
.gallery-section .ngg-gallery-thumbnail .gs-zoom {
    background: transparent;
}
.gallery-section .gs-zoom ul {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    position: absolute;
    left: 0px;
    top: 0px;
    right: -1px;
    bottom: 0px;
    z-index: -1;
}
.gallery-section .gs-zoom ul li, #tm_builder_outer_content .gallery-section .gs-zoom ul li {
    height: 33.33%;
    width: 33.33%;
    background: #3bacec;
    opacity: 0;
    margin: 0px !important;
}
.gallery-section .gs-zoom ul li::before { display: none !important; }
.gallery-section .gs-zoom ul li:first-child { -webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;transition: all 0.3s ease; }
.gallery-section .gs-zoom ul li:nth-child(2) { -webkit-transition: all 0.5s ease;-moz-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease; }
.gallery-section .gs-zoom ul li:nth-child(3) { -webkit-transition: all 0.9s ease;-moz-transition: all 0.9s ease;-o-transition: all 0.9s ease;transition: all 0.9s ease; }
.gallery-section .gs-zoom ul li:nth-child(4) { -webkit-transition: all 0.7s ease;-moz-transition: all 0.7s ease;-o-transition: all 0.7s ease;transition: all 0.7s ease; }
.gallery-section .gs-zoom ul li:nth-child(5) { -webkit-transition: all 1.1s ease;-moz-transition: all 1.1s ease;-o-transition: all 1.1s ease;transition: all 1.1s ease; }
.gallery-section .gs-zoom ul li:nth-child(6) { -webkit-transition: all 1.3s ease;-moz-transition: all 1.3s ease;-o-transition: all 1.3s ease;transition: all 1.3s ease; }
.gallery-section .gs-zoom ul li:nth-child(7) { -webkit-transition: all 0.9s ease;-moz-transition: all 0.9s ease;-o-transition: all 0.9s ease;transition: all 0.9s ease; }
.gallery-section .gs-zoom ul li:nth-child(8) { -webkit-transition: all 1.5s ease;-moz-transition: all 1.5s ease;-o-transition: all 1.5s ease;transition: all 1.5s ease; }
.gallery-section .gs-zoom ul li:last-child { -webkit-transition: all 1.7s ease;-moz-transition: all 1.7s ease;-o-transition: all 1.7s ease;transition: all 1.7s ease; }
.gallery-section .ngg-gallery-thumbnail a:hover .gs-zoom ul li, #tm_builder_outer_content .gallery-section .ngg-gallery-thumbnail a:hover .gs-zoom ul li { opacity: 0.9; }
/* wzornictwo eleganckie end */

@media (max-width: 991px) {
    .gallery-section .ngg-gallery-thumbnail-box {
        width: calc(50% - 2px);
    }
}
@media (max-width: 420px) {
    .gallery-section .ngg-gallery-thumbnail-box {
        width: 100%;
        margin: 1px 0px;
    }
}

/*flex*/
@media (max-width: 1220px) {
    .gallery-section .ngg-gallery-thumbnail-box {
        padding: 0px 4px;
    }
}
@media (max-width: 650px) {
    .gallery-section .ngg-gallery-thumbnail-box {
        margin: 0 0 3px;
        padding: 0px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 33%;
        flex: 0 0 33%;
    }
}
@media (max-width: 395px) {
    .gallery-section .ngg-gallery-thumbnail-box {
        margin: 0 0 3px;
        padding: 0px 2px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    }
}
@media (max-width: 320px) {
    .gallery-section.ngg-galleryoverview {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .gallery-section .ngg-gallery-thumbnail-box {
        margin: 0 0 3px;
        padding: 0px 0px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    }
}
/*flex end*/