/* 
Theme Name: Greencogen
Theme URI: http://mastafu.info/
Author: Mastafu Design
Author URI: http://mastafu.info/
Description: Theme designed for Greencogen website.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: Greencogen
*/

/*** General ***/
body {
    font-family: niveau-grotesk, sans-serif;
    font-size: 18px;
	font-weight: 400;
    line-height: 1.45;
    color: #9a9a9a;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
	background-color: #e7eaea;
}

/** Misc **/
.no-padding {
	padding-left: 0;
	padding-right: 0;
}

.img-responsive {
	max-width: 100%; 
	height: auto;
	display: block
}

.list-style-no {
	list-style: none;
	margin: 0;
	padding: 0
}

.align-left {
	text-align: left
}

.align-right {
	text-align: right
}

.align-center {
	text-align: center
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

a {
    color: #9a9a9a;
}

a:hover {
    color: #1e1e1e;
}

p > b,
p > strong {
	font-weight: 900
}

.threeDots {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.wp-caption {
    background: #fff;
    max-width: 100%; /* Image does not overflow the content area */
    padding: 0;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 100%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 12px;
    line-height: 17px;
    margin: 0;
    padding: 10px;
	border-left: 1px solid #eee;
	border-right: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0
}

a:hover {
	text-decoration: none;
}

.container-fluid {
	position: relative;
}

.element-invisible {
	position: absolute;
	top: -999999em;
	left: auto;
	width: 1px;
	height: 1px;
	overflow:hidden;
}

.modal.fade.show {
	background: rgba(0,0,0,0.8);
}

.modal {
	z-index: 9999;
}

.modal-dialog {
	max-width: 1200px
}

.modal.show .modal-dialog {
	height: 100%;
}

.modal .close {
	font-size: 40px;
	position: absolute;
	z-index: 25;
	top: 12px;
	right: 12px;
	border: none;
	line-height: 30px;
	cursor: pointer;
	 transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-moz-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-webkit-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
}

.modal-header,
.modal-footer {
	text-align: left;
}

.modal-header h4 {
	margin: 0;
}

.modal-footer p {
	margin: 0;
	text-align: center;
	font-size: 14px;
}

.modal-body {
	padding: 45px;
}

.modal-body .modalDesc p {
	font-size: 34px;
	line-height: 1;
	font-weight: 700;
	max-width: 330px;
	display: inline-block;
	margin-bottom: 30px
}

.modal-body .modalDesc p:last-child {
	font-weight: 200;
	margin-bottom: 0
}

.noMargin {
	margin: 0;
}

.noPadding {
	padding-left: 0;
	padding-right: 0;
}

blockquote {
	font-weight: 200;
	font-size: 20px;
	color: #ee2324;
	padding: 25px 15px 25px 50px;
	position: relative;
	border: none;
	margin: 20px 0 0;
}

blockquote::before {
	font-family: "Times new roman";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 90px;
	line-height: 1;
	content: "“";
	color: #ee2324;
	bottom: 0;
}

blockquote p {
	font-weight: 300;
	font-size: 22px !important;
	color: #ee2324;
	line-height: 1.25;
	margin: 0 !important;
	font-style: italic;
}

.popover {
	z-index: 10001;
}

.popoverElement {
	cursor: pointer;
	font-weight: 500;
	color: #9a9a9a;
	text-decoration: underline;
}

.height100vh {
	height: 100vh;
	min-height: 790px
}

.height100 {
	height: 100%;
}

.simplebar-scrollbar::before {
	background-color: #c6c6c6;
}

.simplebar-track.simplebar-vertical {
	right: 5px;
}

/* Buttons */
.contactForm .wpcf7-submit,
.btn {
	border-radius: 5px;
}

a.realizacjeBtn,
.btn-link {
	font-size: 16px;
	color: #9a9a9a !important;
}

.realizacjeBtn:hover {
	text-decoration: underline;
}

.btn-link i {
	transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-moz-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-webkit-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
}

.btn-link i:first-child {
	margin-left: 5px;
	color: #fff;
}

.btn-link i.hidden {
	color: #fff;
	transform: translate3d(-8px,0,0);
}

.btn-link:hover i.hidden {
	transform: translate3d(0,0,0);
}

a.realizacjeBtn:hover,
.btn-link:hover {
	text-decoration: none;
	color: #125470
}

.contactForm .wpcf7-submit {
	background: #7e7e7b;
	color: #fff;
	border: 1px solid #7e7e7b;
}

.contactForm .wpcf7-submit:hover {
	background: #1e1e1e;
}

.contactForm .wpcf7-submit.focus, 
.contactForm .wpcf7-submit:focus {
	box-shadow: 0 0 0 .2rem rgba(21,102,137,.5) !important;
	background: #9a9a9a !important;
}

.btn-primary {
	background: #7e7e7b;
	color: #fff;
	border: 1px solid #7e7e7b;
}

.btn-secondary {
	background: #fff;
	color: #7e7e7b;
	border: 1px solid #fff;
}

.btn-warning {
	background: #000;
	color: #fff;
	border: 1px solid #000;
}

.btn-warning.focus,
.btn-warning:focus,
.btn-primary.focus, 
.btn-primary:focus,
.btn-secondary.focus, 
.btn-secondary:focus {
    box-shadow: 0 0 0 .2rem rgba(45,102,135,.5) !important;
	background: #fff !important;
}

.btn-warning.hover,
.btn-warning:hover,
.btn-primary.hover, 
.btn-primary:hover,
.btn-secondary.hover, 
.btn-secondary:hover {
    opacity: 0.65;
	box-shadow: 0 0 10px 10px rgba(76, 76, 76, 0.2) !important;
}

.contactForm .wpcf7-submit,
.btn-group-lg > .btn, 
.btn-lg {
	padding: 12px 30px;
	font-weight: 700;
}

.btn-group-lg > .btn i, 
.btn-lg i {
	font-size: 24px;
	display: inline-block;
	vertical-align: sub;
	margin-left: 10px;
}

.btn-warning:hover {
  color: #fff;
  background-color: #7e7e7b;
  border-color: #7e7e7b;
}

/** Menu i Logo **/
.absoluteNavbar {
	position: absolute;
	top: 45px;
	left: 0;
	right: 0;
	padding-left: 30px;
	padding-right: 30px;
	z-index: 1000;
	width: 100%;
	margin: 0 auto;
}

.fixedNavbar {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 1001;
	transform: translate3d(0,-100px,0);
	background-color: #7e7e7b;
	height: 70px;
	-webkit-transition: all .55s ease-in-out;
	transition: all .55s ease-in-out
}

body:not(.home) .fixedNavbar,
.nav-fix .fixedNavbar {
	transform: translate3d(0,0,0);
}

.nav-open .fixedNavbar {
	transform: translate3d(0,-100px,0);
}

.navbarLockup {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}

.fixedNavbar .navbarLockup  {
	height: 100%;
}

#footer .footerColLogo img,
.fixedNavbar #logoHeaderSmall img,
.fixedNavbar #logoHeaderSmall svg {
	height: 48px;
	width: auto;
	filter: brightness(0) invert(1);
}

.fixedNavbar .mobile-nav-toggle {
	display: none;
	width: 22px;
	height: 18px;
	cursor: pointer;
	z-index: 1001;
	margin: 0 30px 0 0;
	-webkit-transition: all .55s ease-in-out;
	transition: all .55s ease-in-out;
	transform: translate3d(0,0,0);
}

.nav-open .fixedNavbar .mobile-nav-toggle {
	transform: translate3d(-100px,0,0);
}

.fixedNavbar .mobile-nav-toggle:hover {
	opacity: 0.85
}

.fixedNavbar .mobile-nav-toggle span {
	display: block;
	width: 22px;
	height: 3px;
	margin-bottom: 4px;
	background-color: #fff;
}

.slideOutNav {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1002;
	max-width: 360px;
	width: 90%;
	height: 100vh;
	max-height: 1080px;
	transform: translate3d(-360px,0,0);
	background-color: #1e1e1e;
	-webkit-transition: all .55s ease-in-out;
	transition: all .55s ease-in-out;
	-webkit-box-shadow: 0 0 15px 0 rgba(0,0,0,0.15);
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.15);
}

.nav-open.slideOutNav {
	transform: translate3d(0,0,0);
}

.navbarLockup {
	position: relative;
}

#menuWrap {
	width: calc(100% - 140px);
	height: 100%;
}

#menuWrap nav,
#menuWrap nav > div,
#menuWrap nav div > ul,
#menuWrap nav div > ul > li,
#menuWrap nav div > ul > li > a {
	height: 100%;
	line-height: 70px;
}

#logoHeaderBig,
#logoHeaderBig img {
	width: 250px;
	height: auto;
}

#menuWrapAbsolute {
	width: calc(100% - 230px)
}

#mainMenuHome {
	margin-left: 50px;
}

#mainMenuHome ul.nav > li {
	margin-left: 42px;
	position: relative;
	z-index: 1;
}

#mainMenuHome ul.nav > li a {
	font-size: 20px;
	color: #9a9a9a;
	display: inline-block;
	-webkit-transition: all .25s ease-in-out;
	transition: all .25s ease-in-out;
}

.home #mainMenuHome ul.nav > li.menu-item-has-children::after,
.home #mainMenuHome ul.nav > li.home a::before,
.home #mainMenuHome ul.nav > li:not(.home)::before ,
.home #mainMenuHome ul.nav > li.home a,
.home #mainMenuHome ul.nav > li a {
	color: #fff;
}

.fixedNavbar #menuWrap ul.nav > li > a {
	border-top: 5px solid #7e7e7b;
	border-bottom: 5px solid #7e7e7b;
}

.fixedNavbar #menuWrap ul.nav > li.current-menu-item:not(.anchorActive) > a,
.fixedNavbar #menuWrap ul.nav > li > a:hover {
	border-bottom-color: #fff;
}

#mainMenuHome ul.nav > li.home a {
	position: relative;
	width: 20px;
	visibility: hidden;
	color: #fff
}

#mainMenuHome ul.nav > li.home a:before {
	position: absolute;
	left: 0;
	visibility: visible;
	display: inline-block;
	font-family: "Font Awesome 5 Pro";
	font-weight: 400;
	vertical-align: middle;
	content: "\f015";
	color: #9a9a9a;
	width: 20px;
	height: 20px;
	font-size: 20px;
}


.single #mainMenuHome ul.nav > li.home a:before,
.page:not(.home) #mainMenuHome ul.nav > li.home a:before,
#mainMenuHome ul.nav > li.home a:before {
	color: #fff;
}

#mainMenuHome ul.nav > li:not(.home):before {
	content:"·";
	position: absolute;
	left: -23px;
	top: 1px;
	color: #9a9a9a;
}

body:not(.home) #mainMenuHome ul.nav > li:not(.home):before {
	left: -24px;
	top: 4px;
}

.single #mainMenuHome ul.nav > li:not(.home):before,
.page:not(.home) #mainMenuHome ul.nav > li:not(.home):before,
.fixedNavbar #mainMenuHome ul.nav > li:not(.home):before {
	color: #fff;	
}

.fixedNavbar #mainMenuHome ul.nav > li a {
	color: #fff;
}

#mainMenuHome ul.nav > li a:hover {
	color: #fff
}

#mainMenuHome ul.nav > li.menu-item-has-children .fa {
	display: none;
}

#mainMenuHome ul.nav > li.menu-item-has-children::after {
	position: absolute;
	right: -20px;
	top: 4px;
	visibility: visible;
	display: inline-block;
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	vertical-align: middle;
	content: "\f107";
	color: #9a9a9a;
	width: 14px;
	padding-left: 10px;
	height: 100%;
	font-size: 16px;
}

body:not(.home) #mainMenuHome ul.nav > li.menu-item-has-children::after,
.nav-fix #mainMenuHome ul.nav > li.menu-item-has-children::after {
	color: #fff;
	top: 24px;
	line-height: 2;
}

#mainMenuHome ul.nav li ul.dropdown-menu {
	display: block;
	position: absolute;
	width: auto;
	min-width: 60px;
	right: 0;
	top: 80px;
	z-index: 2;
	line-height: 1;
	margin: 0;
	padding: 0; 
	background: #9a9a9a;
	border-radius: 6px;
	border: none;
	float: none;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	transform: translate3d(-35%,-20px,0);
	opacity: 0;
	visibility: hidden;
}

.absoluteNavbar #mainMenuHome ul.nav li ul.dropdown-menu {
	top: 50px;
}

ul.nav li.offerMenu ul.dropdown-menu {
	width: 300px !important;
}

#mainMenuHome ul.nav li:hover ul {
	transform: translate3d(-35%,0,0);
	opacity: 1;
	visibility: visible
}

#mainMenuHome ul.nav li ul li {
	display: inline-block;
	width: 100%;
	margin: 0;
	border-bottom: 1px solid #197f9e;
}

#mainMenuHome ul.nav li ul li:last-child {
	border-bottom: none;
}

#mainMenuHome ul.nav li ul li a {
	color: #fff;
	font-size: 16px;
	padding: 13px 20px;
	display: inline-block;
	width: 100%;
	-webkit-transition: all .15s ease-in-out;
	transition: all .15s ease-in-out;
}

#mainMenuHome ul.nav li ul li.current-menu-item a,
#mainMenuHome ul.nav li ul li.current-menu-parent a, 
#mainMenuHome ul.nav li ul li:hover a {
	background-color: #fff;
	cursor: pointer;
	color: #9a9a9a
}

#mainMenuHome ul.nav li ul li.lang-item:hover a {
	border-radius: 5px !important;
}

#mainMenuHome ul.nav li ul li:first-child:hover a {
	border-radius: 6px 6px 0 0;
}

#mainMenuHome ul.nav li ul li:last-child:hover a {
	border-radius: 0 0 6px 6px;
}

#mainMenuHome ul.nav li ul::before {
	position: absolute;
	top: -7px;
	left: 0;
	right: 0;
	content: "";
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7px 7px 7px;
	border-color: transparent transparent #9a9a9a transparent;
}

#mainMenuHome ul.nav li ul:hover::before {
	border-color: transparent transparent #fff transparent;
}

#mainMenuHome ul.nav li ul li:first-child a {
	border-radius: 5px 5px 0 0 !important;
}

#mainMenuHome ul.nav li ul li:last-child a {
	border-radius: 0 0 5px 5px !important;
}

#mainMenuSlide {
	height: calc(100vh - 200px);
}

#mainMenuSlide ul.nav > li {
	width: 100%;
	margin-bottom: 10px;
	border-bottom: 4px solid transparent;
}

#mainMenuSlide ul.nav > li.menu-item-has-children {
	margin-bottom: 20px;
}

#mainMenuSlide ul.nav li ul.dropdown-menu {
	display: block;
	position: initial;
	top: initial;
	left: initial;
	float: none;
	border: none;
	padding: 0;
	margin: 10px 0 0;
	background: transparent;
}

#mainMenuSlide ul.nav > li > a {
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	padding: 0 50px;
	width: 100%;
	display: inline-block;
	position: relative;
}

#mainMenuSlide ul.nav > li a::before {
	position: absolute;
	top: 0;
	left: 50px;
	content: "·";
	position: absolute;
	left: -23px;
	top: -9px;
	color: #fff;
}

#mainMenuSlide ul.nav > li > ul > li > a {
	color: #23b9ce;
	font-size: 18px;
	font-weight: 400;
	padding: 10px 50px;
	width: 100%;
	display: inline-block;
}

#mainMenuSlide ul.nav li:hover a,
#mainMenuSlide ul.nav li.current-menu-item a,
#mainMenuSlide ul.nav > li > ul > li.current-menu-item > a,
#mainMenuSlide ul.nav > li > ul > li.current-page-ancestor > a,
#mainMenuSlide ul.nav > li > ul > li > a:hover {
	color: #fff;
}

.slideOutNav #logoWrap {
	position: relative;
	padding: 40px 50px;
}

.slideOutNav #logoHeaderSmall,
.slideOutNav #logoHeaderSmall svg,
.slideOutNav #logoHeaderSmall img {
	width: 160px;
	height: auto;
	filter: brightness(0) invert(1);
}

.slideOutNav .mobile-nav-toggle {
	position: absolute;
	top: 44px;
	right: 45px;
	z-index: 1;
	cursor: pointer;
	-webkit-transition: all .55s ease-in-out;
	transition: all .55s ease-in-out
}

.slideOutNav .mobile-nav-toggle span {
	display: block;
	width: 20px;
	height: 3px;
	margin-bottom: 4px;
	background-color: #fff;
	-webkit-transition: all .35s ease-in-out;
	transition: all .35s ease-in-out
}

.slideOutNav .mobile-nav-toggle:hover span {
	background-color: #fff;
	opacity: 1;
}

.slideOutNav .mobile-nav-toggle span:nth-child(2) {
	-webkit-transform: rotate(45deg) translate3d(0,5px,0);
	transform: rotate(45deg) translate3d(0,5px,0);
}

.slideOutNav .mobile-nav-toggle span:nth-child(3) {
	-webkit-transform: rotate(-45deg) translate3d(0,-5px,0);
	transform: rotate(-45deg) translate3d(0,-5px,0);
}

.logoImg.svgIcon .st0 {
	fill:#056689;
	-webkit-transition: all .25s ease-in-out;
	transition: all .25 ease-in-out
}

#footer .logoImg.svgIcon .st0,
body:not(.home) #masthead .logoImg.svgIcon .st0,
.nav-fix #masthead .logoImg.svgIcon .st0 {
	fill:#fff;
}

.logoImg.svgIcon .st1 {
	fill:#28B8CE;
}

/** Sekcje **/
/* Home - sekcja 1 */
#heroWrap {
	background-size: cover;
	overflow-x: hidden;
	height: 768px;
}

#heroWrap #videoHeader {
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
}
 
#videoHeader video {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: cover;
	height: 100vh;
	width: 100vw;
}

#heroCenter {
	padding-top: 40%;
	position: relative;
	z-index: 101;
}

#heroWrap h1 {
	font-size: 55px;
	color: #fff;
}

#heroWrap h1 span {
	display: block;
}

#heroWrap h1 span.slogan1Line {
	font-weight: 700
}

#heroWrap h1 span.slogan2Line {
	font-weight: 700;
	text-shadow: 1px 1px #000;
}

#underHero {
	margin-top: -100px;
	position: relative;
	z-index: 100;
}

#underHero h2,
#underHero h3 {
	margin-bottom: 15px;
	color: #fff;
	font-weight: 400;
}

#underHero .descBlockhero {
	background: #4a4d50;
	border-radius: 10px;
	color: #fff;
	padding: 50px;
}

#underHero .trangleDn {
	position: absolute;
	bottom: -20px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 40px 40px 0 40px;
	border-color: #4a4d50 transparent transparent transparent;
}

#underHero .descBlockheroImg {
	position: absolute;
	top: 1px;
	right: 200px;
	transform: translateY(-100%);
}

/* Widok 3 Oferta */
.site-offer {
	margin-top: 30px;
	margin-bottom: 0;
}

.offerElement {
	margin-bottom: 30px
}

.site-offer .offerTitle {
	margin-top: 55px;
	margin-bottom: 35px;
}

.site-offer .offerTitle h3 {
	font-size: 36px;
	font-weight: 400;
	color: #4A4D50;
}

.site-offer .offerElementInner {
	position: relative;
	z-index: 1;
	background: #fff;
	padding: 45px;
	height: 100%;
	border-radius: 5px;
	box-shadow:2.868px 4.096px 15px 0px rgba(224, 224, 224, 0.41);
	overflow: hidden;
	border: 1px solid #e9e9e9;
}

.site-offer .offerIcon {
	height: 100px;
	width: auto;
	margin-bottom: 30px
}

.site-offer .offerElementTitle {
	font-size: 22px;
	font-weight: 700;
	margin: 0 0 20px 0
}

.site-offer .offerElementDesc p {
	font-size: 16px;
	font-weight: 300;
	position: relative;
	padding-left: 25px;
}

.site-offer .offerElementDesc p:before {
	font-family: "Font Awesome 5 Pro";
	display: inline-block;
	content: "\f00c";
	font-size: 17px;
	font-weight: 300;
	position: absolute;
	top: 3px;
	left: 0;
	width: 17px;
	height: 17px;
}

.site-offer .offerElementBtn {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	height: 100%;
	width: 100%;
	z-index: 2;
	background: rgba(255,255,255,0.8);
	transform: translate3d(0,-20px,0);
	-webkit-transition: all .35s ease-in-out;
	transition: all .35s ease-in-out;
	opacity: 0;
	visibility: hidden;
}

.site-offer .offerElementInner:hover .offerElementBtn {
	transform: translate3d(0,0,0);
	opacity: 1;
	visibility: visible;
}

/* Kontakt nad stopką */
.site-contact {
	background-color: #fff;
	padding-bottom: 100px;
	padding-top: 100px;
}

.archive .site-contact {
	margin-top: -100px
}

.site-contact .contactColDec h3 {
	margin: 0 0 45px 0
}

.site-contact .contactColDec ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-contact .contactColDec ul li {
	margin-bottom: 5px;
}

.site-contact .contactColDec ul li em,
.site-contact .contactColDec p em {
	font-style: normal;
	min-width: 80px;
	display: inline-block;
	vertical-align: top;
}

.site-contact .contactColDec a:hover {
	text-decoration: underline;
}

#pageWrap {
	margin-top: 100px
}

/* Realizacje */
.realizacjeSwiper {
	background-color: #fff;
	background-image: url(img/cloudsBG.png);
	background-repeat: no-repeat;
	background-position: 50% 0;
	background-size: contain;
	padding-top: 140px;
	padding-bottom: 75px;
}

.realizacjeSwiper > .row {
	position: relative;
}

.realizacjeSwiper .relTitle {
    margin-bottom: 35px;
}

.realizacjeSwiper .relTitle h3 {
	font-size: 36px;
	font-weight: 400;
}


.realizacjeSwiper .swiper-button-disabled {
	opacity: 0;
	visibility: hidden;
}

.realizacjeSwiper .swiper-button-prev,
.realizacjeSwiper .swiper-button-next {
	background-image: url("img/arrow.png");
}

.realizacjeSwiper .swiper-button-prev {
	transform: rotateY(180deg)
}

.realizacjeImgInner {
	padding: 20px;
}

.realizacjeImgInner h4 {
	color: #fff;
	margin: 0 0 15px 0;
	text-shadow: 1px 1px #104f58;
}

.realizacjeImgInner h4 a {
	color: #fff;
}

.realizacjeCats span {
	color: #9a9a9a;
	background: #fff;
	padding: 2px 10px;
	margin: 0 5px 5px 0;
	display: inline-block;
	vertical-align: top;
	font-size: 13px;
	border-radius: 5px;
}

.realizacjeInner .realizacjeImg {
	height: 265px;
	border-radius: 5px;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;
}

.realizacjeDesc {
	font-size: 14px;
	margin: 30px 0 20px 0
}

/* Form */
.contactFormShort.contactForm {
	padding: 45px;
	border-radius: 5px;
	background-color: #fff;
	transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-moz-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-webkit-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
}

.contactForm .formBody {
	border: 1px solid #ddd;
	 border-radius: 6px;
}

.contactFormShort {
	max-width: 440px;
}

.contactForm .element-legend {
	color: #fff;
	text-align: center;
	font-size: 16px;
	margin-bottom: 40px
}

.contactForm .formField {
	margin-bottom: 25px;
	position: relative;
}

.formFooter .contact-form-wrap-checkbox,
.formFooter .formFooterBtn,
.contactForm .formLeftCol,
.contactForm .formRightCol {
	width: 46%;
}

.formFooter .formFooterBtn {
	position: relative;
}

.contactForm .formLeftCol .formField:last-child,
.contactForm .formRightCol .formField:last-child {
	margin-bottom: 0
}

.contactFormFull .formFieldCheckboxTop {
	margin-bottom: 25px;
}

.contactForm .modal-field.formSend,
.contactForm .modal-field.formField {
	display: none;
}

.contactForm input[type=text],
.contactForm input[type=number],
.contactForm input[type=email],
.contactForm input[type=tel],
.contactForm select,
.contactForm textarea {
	border: none;
	border-radius: 10px;
	width: 100%;
	color: #9a9a9a;
	background: #fff;
}

.contactForm textarea {
	padding: 17px;
    border-radius: 10px;
	max-height: 276px;
	border-bottom: 1px solid #ddd;
	border-radius: 0 !important;
}

.contactForm input[type=text],
.contactForm input[type=number],
.contactForm input[type=email],
.contactForm input[type=tel],
.contactForm select {
	position: relative;
	transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-moz-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	-webkit-transition: all .35s cubic-bezier(0.694,0.0482,0.335,1);
	padding: 10px 20px;
	line-height: 1.25;
	display: inline-block;
	width: 100%;
	vertical-align: top;
	height: 50px;
	border-bottom: 1px solid #ddd;
	border-radius: 0 !important;
}

.contactForm .formRightCol .wpcf7-submit {
	width: 50%;
	text-transform: initial
}

.contactForm .formFieldCheckboxRight input[type=text] {
	padding-right: 180px
}

.contactForm select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: 0;
	box-shadow: none;
	cursor: pointer;
}

.formFooterBtn .wpcf7-response-output {
	margin: 0 0 0 30px !important;
	font-size: 14px;
	line-height: 1.25;
	padding: 14px 10px !important;
	width: 100%;
}

.wpcf7 form.sent .wpcf7-response-output {
	background: #eff9f0 !important;
	border: 1px solid #7BD785 !important;
	color: #7BD785;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	background-color: #fcf5f5 !important;
	border: 1px solid #EE8F8F !important;
	color: #EE8F8F;
}


.wpcf7-spinner {
	position: absolute;
	top: 13px;
	left: 13px;
}

.formBody .wpcf7-form-control-wrap {
	position: initial;
}

.contactForm .select-wrap .wpcf7-form-control-wrap::after {
	content: "";
	position: absolute;
	top: 5px;
	right: 0;
	width: 10px;
	height: 6px;
	display: inline-block;
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	vertical-align: middle;
	content: "\f107";
	color: #9a9a9a;
	cursor: pointer;
	pointer-events: none;
	-webkit-transition: .25s all ease;
	-o-transition: .25s all ease;
	transition: .25s all ease;
}

.contactForm .select-wrap .wpcf7-form-control-wrap:focus::after,
.contactForm .select-wrap .wpcf7-form-control-wrap:active::after,
.contactForm .select-wrap .wpcf7-form-control-wrap:hover::after {
	transform: rotate(-90deg);
}

/* Stylowany checkbox */
input[type="checkbox"].wpcf7-checkbox.cost-input, 
.wpcf7-form .wpcf7-acceptance input[type="checkbox"] {
	visibility: hidden;
	display: none;
}

.wpcf7-acceptance .wpcf7-checkbox input {
	position: relative;
	visibility: hidden;
	margin: 0 5px 0 0;
	font-size: 16px;
}

.wpcf7-acceptance .wpcf7-list-item > label {
	margin: 0;
}

.wpcf7-acceptance .wpcf7-list-item > label {
	display: flex;
	flex-wrap: wrap;
	height: 60px;
	align-items: center !important;
}

.wpcf7-acceptance .wpcf7-list-item { 
	position: relative;
}

.formFieldWithCheckbox. a.popoverElement a {
	color: #fff;
}

.formFieldWithCheckbox.formFieldCheckboxTop .contact-form-wrap-checkbox a,
.formFieldWithCheckbox.formFieldCheckboxLeft .contact-form-wrap-checkbox a {
	position: absolute;
	top: 13px;
	right: -10px;
	z-index: 1;
}

.formFieldWithCheckbox .wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
	line-height: .96;
	padding-left: 60px;
	text-align: left;
}

.wpcf7-acceptance .wpcf7-list-item-label {
	cursor: pointer;
	color: #9a9a9a;
	font-size: 14px;
	line-height: 1;
}

.wpcf7-acceptance .wpcf7-list-item-label::before {
	content:"";
	display: block;
	position: absolute;
	border-radius: 10px;
	width: 50px;
	height: 50px;
	left: 0;
	top: 5px;
	background: #fff;
}

.wpcf7-acceptance .wpcf7-list-item-label::after {
	position: absolute;
	display: inline-block;
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	vertical-align: middle;
	content: "\f00c";
	color: #9a9a9a;
	opacity: 0.4;
	width: 20px;
	height: 20px;
	font-size: 20px;
	left: 15px;
	top: 20px;
	padding-top: 2px;
	text-align: center;
	webkit-transition: .25s all ease;
	-o-transition: .25s all ease;
	transition: .25s all ease;
}

.wpcf7-acceptance input:checked + span.wpcf7-list-item-label::after {
	content: "";
	position: absolute;
	left: 15px;
	top: 20px;
	width: 20px;
	height: 20px;
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	vertical-align: middle;
	content: "\f00c";
	opacity: 1;
	color: #9a9a9a;
	cursor: pointer;
	pointer-events: none;
	-webkit-transition: .25s all ease;
	-o-transition: .25s all ease;
	transition: .25s all ease;
}

.privicySend {
	margin: 2px
}

.privicySend a {
	color: #78a6d3 !important;
	font-size: 12px;
}

.privicySend a:hover {
	text-decoration: underline;
}
 
 /* Remove IE arrow */
select::-ms-expand {
  display: none;
}

.contactForm .wpcf7-submit {
	display: inline-block;
	vertical-align: top;
	text-align: center;
	width: 100%;
}

.contactForm .formFooterBtn:before {
	display: inline-block;
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	vertical-align: middle;
	content: "\f1d8";
	position: absolute;
	right: 30px;
	top: 10px;
	z-index: 10px;
	width: 20px;
	height: 20px;
	font-size: 20px;
	color: #fff;
}

.element-label {
	font-size: 14px;
	color: #9a9a9a;
	margin: 0 0 0 5px;
}

.formFooter {
	position: relative;
	z-index: 1;
	margin-top: 25px;
	width: 100%;
	padding-right: 25px;
}

.formBody .formFooter .formFieldWithCheckbox,
.contactFormFull .formFieldRows,
.contactFormFull .formFieldWrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.contactFormFull .formFieldRows {
	width: 100%;
}

.contactFormFull .formFieldRows .formField {
	width: 48%
}

div.wpcf7-form .formFooter .ajax-loader {
	position: absolute;
	top: -8px;
	left: -4px;
	right: 0;
	bottom: 0;
	z-index: 100;
	background-image: url('img/ajax-loader.png') !important;
	width: calc(100% + 8px) !important;
	height: 58px !important;
	display: block;
	margin: auto;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-color: rgb(255, 215, 77);
	border-radius: 10px;
	visibility: hidden;
}

div.wpcf7-form .formFooterBtn .ajax-loader:before {
	display: none
}

div.wpcf7-form.submitting .formFooterBtn .ajax-loader {
	visibility: visible;
}

div.wpcf7-response-output {
    position: relative;
	margin: 5px 0;
	padding: 20px 30px;
    border-radius: 5px;
	width: 100%; 
	background: #fff;
}

div.wpcf7-form.submitting div.wpcf7-response-output {
	display: none;
}

div.wpcf7-form.sent div.wpcf7-response-output,
.wpcf7-mail-sent-ok {
	background: #398f14 !important;
	border-color: #327c12 !important;
	color: #fff;
	font-size: 14px;
	display: inline-block !important;
	margin-top: 30px !important
}

div.wpcf7-form.invalid div.wpcf7-response-output,
.wpcf7-validation-errors {
	display: inline-block;
	background-color: #a94442 !important;
	border-color: #993a38 !important;
	color: #fff;
	font-size: 14px;
	display: inline-block !important;
	margin-top: 30px !important
}

span.wpcf7-not-valid-tip {
    color: #fff;
	font-size: 14px;
	font-weight: normal;
	display: block;
	position: absolute;
	bottom: -14px;
	left: 20px;
	background: #a94442;
    border-radius: 10px;
    padding: 2px 8px;
}

/* Realizacje */
#simplePage,
#realizacjeHeader {
	padding-top: 190px;
	padding-bottom: 45px;
	background-repeat: no-repeat;
	background-position: 50% 100%;
	background-size: contain;
}

#realizacjeLista {
	background-color: #fff;
}

#realizacjeLista #realizacjeListaInner {
	transform: translateY(-210px);
}

#headerLista {
	margin-bottom: 50px;
}

#headerLista h1 {
	color: #23b9ce;
	font-weight: 400;
	text-align: center;
	margin-bottom: 30px;
}

#realizacjeLista .relElement {
	margin-top: 30px;
	margin-bottom: 30px;
}

/* Uniwersalny blok z sekcjami */	
.universal-container {
	background-color: #e7eaea;
	padding-top: 100px;
	padding-bottom: 100px;
}

.universal-container.whiteSection {
	background-color: #fff;
}

.universal-container > .row {
	height: 100%; 
}

.universal-container .row.alterSection {
	flex-direction: row-reverse;
}

.universal-container > .row > div {
	margin-bottom: 50px
}

.universal-container .boxInner {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.universal-container .boxInner img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

#simplePage h1 {
	color: #4A4D50;
	font-weight: 700;
	margin-bottom: 30px;
}

.universal-container .boxInner h1 {
	color: #000;
	font-weight: 700;
	margin-bottom: 30px;
}

#simplePage h2,
#simplePage h3,
#simplePage h4,
#simplePage h5,
#simplePage h6 {
	color: #9a9a9a;
	font-weight: 300;
	margin-bottom: 30px;
}

.universal-container .boxInner h2,
.universal-container .boxInner h3,
.universal-container .boxInner h4,
.universal-container .boxInner h5,
.universal-container .boxInner h6 {
    color: #171717;
	font-weight: 500;
	margin-bottom: 30px;
}

.universal-container .boxInner ul {
	list-style: none;
	padding-left: 28px;
}

.universal-container .boxInner ol li,
.universal-container .boxInner ul li {
	position: relative;
	margin-bottom: 10px
}

.universal-container .boxInner ul li::before {
	font-family: "Font Awesome 5 Pro";
	color: #fff;
	display: inline-block;
	content: "\f105";
	font-size: 17px;
	font-weight: 900;
	position: absolute;
	top: 3px;
	left: -28px;
	content: "";
	width: 17px;
	height: 17px;
}

#simplePage ol li,
#simplePage ul li,
#simplePage p,
#simplePage a,
.universal-container .boxInner .boxInnerDesc ol li,
.universal-container .boxInner .boxInnerDesc ul li,
.universal-container .boxInner .boxInnerDesc p,
.universal-container .boxInner .boxInnerDesc a {
	color: #9a9a9a;
	font-weight: 400;
}

.universal-container .boxInner .boxInnerDesc ol li,
.universal-container .boxInner .boxInnerDesc ul li,
#simplePage ol li,
#simplePage ul li {
	margin-bottom: 30px;
}

.universal-container .boxInner .boxInnerDesc ol li:last-child,
.universal-container .boxInner .boxInnerDesc ul li:last-child,
#simplePage ol li:last-child,
#simplePage ul li:last-child {
	margin-bottom: 0
}

.universal-container .boxInner h1 em, 
.universal-container .boxInner h2 em,
.universal-container .boxInner h3 em, 
.universal-container .boxInner h4 em, 
.universal-container .boxInner h5 em, 
.universal-container .boxInner h6 em {
    color: #9a9a9a;
    font-style: 700;
}

.universal-container .boxInner .boxInnerDesc ol:last-child,
.universal-container .boxInner .boxInnerDesc ol li:last-child,
.universal-container .boxInner .boxInnerDesc ul:last-child,
.universal-container .boxInner .boxInnerDesc ul li:last-child,
.universal-container .boxInner .boxInnerDesc p:last-child,
.universal-container .boxInner .boxInnerDesc a:last-child {
	margin-bottom: 0
}

.universal-container .iconCol .boxInner p {
	font-size: 16px;
}

.universal-container .boxInner .svgIcon {
	margin-bottom: 20px;
}

.universal-container .boxInner.iconLeft .svgIcon {
	margin-right: 20px;
	margin-bottom: 0
}

.universal-container .smallBlock .boxInner .svgIcon {
	height: 50px;
	line-height: 50px;
}

.universal-container .mediumBlock .boxInner .svgIcon {
	height: 70px;
	line-height: 70px;
}

.universal-container .largeBlock .boxInner .svgIcon {
	height: 90px;
	line-height: 100px;;
}

.universal-container .boxInner .nrBlock {
	color: #fff;
	margin-bottom: 20px;
}

.universal-container .boxInner.iconLeft .nrBlock {
	margin-right: 20px;
	margin-bottom: 0
}

.universal-container .smallBlock .boxInner .nrBlock {
	font-size: 50px;
}

.universal-container .mediumBlock .boxInner .nrBlock {
	font-size: 68px;
}

.universal-container .largeBlock .boxInner .nrBlock {
	font-size: 100px;
	line-height: 100px;
	max-height: 100px; 
}


.universal-container iframe {
	width: 100%;
	height: 350px;
	overflow: hidden;
	border-radius: 10px;
}

.boxInnerDesc ul li{
    margin-bottom: 15px !important;
    list-style: none;
}

.boxInnerDesc ul li::before{
  content: "\2022" !important; 
  color: #fff !important;
  font-weight: bold !important;
  display: inline-block !important;
  width: 1em !important;
  margin-left: -1em !important;
	left:0 !important;
}

/* Zwykła podstrona */
#simplePage {
	border-bottom: 50px solid #fff
}

/* Historia */
#historyWrap {
	background: #fff;
}

#historyWrap .row > div {
	margin-top: -170px;
}

#historyWrap .historyElement {
	margin: 0 auto;
	max-width: 1000px;
	position: relative;
	z-index: 1;
	padding-bottom: 70px;
}

#historyWrap .historyElement:before {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 2px;
	height: 100%;
	content: "";
	background: #fff;
	margin: 0 auto;
}

#historyWrap .historyElement:nth-child(even) {
	flex-direction: row-reverse;
}

#historyWrap .historyElement > div > div {
	height: 100%;
	min-height: 136px;
}

#historyWrap .historyElementYear {
	width: 136px;
	height: 136px;
	border-radius: 250px;
	font-size: 40px;
	background: #fff;
	position: relative;
	z-index: 2
}

#historyWrap .historyElementYear > div {
	width: 136px;
	height: 136px;
	border-radius: 250px;
	background: #fff;
	position: relative;
	z-index: 2;
	border: 2px solid #fff;
}

#historyWrap .historyElementYear:after {
	position: absolute;
	z-index: -1;
	bottom: 0;
	left: -35px;
	right: 0;
	top: 0;
	width: calc(100% + 70px);
	border-bottom: 3px dotted #fff;
	height: 0;
	content: "";
	margin: auto;
}

#historyWrap .historyElement:first-child .historyElementYear > div {
	background: #fff;
	color: #fff;
}

#historyWrap .historyElementImg,
#historyWrap .historyElementDesc {
	width: calc(50% - 68px);
}

#historyWrap .historyElement:nth-child(even) .historyElementImg {
	padding-left: 45px;
}

#historyWrap .historyElement:nth-child(even) .historyElementDesc {
	padding-right: 45px;
	text-align: right
}

#historyWrap .historyElement:nth-child(even) .historyElementDesc > div {
	justify-content: end
}

#historyWrap .historyElement:nth-child(even) .historyElementDesc > div p {
	text-align: right !important;
    display: block;
    width: 100%;
}

#historyWrap .historyElement:nth-child(odd) .historyElementImg {
	padding-right: 45px;
}

#historyWrap .historyElement:nth-child(odd) .historyElementImg img {
	margin-left: auto;
}

#historyWrap .historyElement:nth-child(odd) .historyElementDesc {
	padding-left: 45px;
}

#historyWrap .historyElementImg img {
	max-height: 136px;
	width: auto;
}

#historyWrap .historyElementDesc p:last-child {
	margin-bottom: 0;
}

/* News navigation */
#navigator {
	text-align: center;
	margin-bottom: 30px;
	margin-top: 30px;
	padding: 0;
}

#navigator li {
	display: inline-block;
	vertical-align: middle;
	padding: 20px;
}	

#navigator li a {
	display: inline-block;
	vertical-align: middle;
	color: #fff;
	font-size: 20px;
	text-transform: uppercase;
	font-weight: 700;
	text-decoration: none;
	position: relative;
}

#navigator li a:hover {
	color: #9a9a9a
}

#navigator li.prev a::before {
	position: absolute;
	top: 6px;
	left: -30px;
	content: "";
	width: 16px;
	height: 16px;
	background-image: url(img/svg_small_icons_orange/arrow-left-solid-orange.svg);
	background-size: 16px 16px;
	background-position: 0 0;
	background-repeat: no-repeat;
}

#navigator li.next a::after {
	position: absolute;
	top: 6px;
	right: -30px;
	content: "";
	width: 16px;
	height: 16px;
	background-image: url(img/svg_small_icons_orange/arrow-right-solid-orange.svg);
	background-size: 16px 16px;
	background-position: 0 0;
	background-repeat: no-repeat;
}

/* Galeria we wpisie */
.gallery dl {
	float: left;
	padding: 0;
	box-sizing: border-box;
	margin: 0 0 10px 0;
	padding: 0 10px; 
}

.gallery dl dt a {
	position: relative;
	width: auto;
	height: 100%;
	display: inline-block;
	z-index: 10;
}

.gallery dl dt a {
	overflow: hidden;
}

.gallery dl dt a::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: rgba(0,0,0,0.5);
	-webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
	opacity: 0
}

.gallery dl dt a::before {
	font-family: "Font Awesome 5 Pro";
	color: #fff;
	display: inline-block;
	content: "\f002";
	width: 24px;
	height: 24px;
	font-size: 1.4rem;
	font-weight: 900;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 12;
	line-height: 1;
	bottom: 0;
	margin: auto;
	-webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
	opacity: 0;
	-webkit-transform: translate3d(0,30px,0);
	transform: translate3d(0,30px,0);
}

.gallery dl dt a:hover::before,
.gallery dl dt a:hover::after {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.gallery dl dd {
	padding-right: 30px;	
	font-size: 12px;
	padding: 5px 0;
	text-align: center;
	box-sizing: border-box;
}

.gallery dl img {
	border: none !important;
	border-radius: 5px;
	overflow: hidden;
	max-width: 100%;
	height: auto;
	display: block;
}

/* Ajax loader */
#readMoreBtns {
	margin-top: 30px	
}

.ajax-row__loader {
    display: none;
}

@keyframes lds-rolling {
    0% {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg)
    }
    100% {
        -webkit-transform: translate(-50%, -50%) rotate(360deg);
        transform: translate(-50%, -50%) rotate(360deg)
    }
}

@-webkit-keyframes lds-rolling {
    0% {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
        transform: translate(-50%, -50%) rotate(0deg)
    }
    100% {
        -webkit-transform: translate(-50%, -50%) rotate(360deg);
        transform: translate(-50%, -50%) rotate(360deg)
    }
}

.lds-rolling {
    position: relative;
	width: 100%;
	height: 100%;
}

.lds-rolling div,
.lds-rolling div::after {
    position: absolute;
    width: 160px;
    height: 160px;
    border: 20px solid #000;
    border-top-color: transparent;
    border-radius: 50%
}

.lds-rolling div {
    -webkit-animation: lds-rolling 1s linear infinite;
    animation: lds-rolling 1s linear infinite;
    top: 100px;
    left: 100px;
    left: 50%;
    transform: translateX(-50%);
    right: 0
}

.lds-rolling div::after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.lds-rolling {
    height: 125px !important;
    transform: scale(0.2)
}

/* Footer */
#footer {
	background-color: #454545;
	padding-top: 100px;
	padding-bottom: 100px;
}

#footer-lower {
	border-top: 1px solid #fff;
	background-color: #454545;
	padding-top: 45px;
	padding-bottom: 45px;
}

#footer a {
	color: #fff;
	font-size: 16px;
	font-weight: 300;
	webkit-transition: .25s all ease;
	-o-transition: .25s all ease;
	transition: .25s all ease;
}

#footer-lower p,
#footer-lower a {
	color: #fff;
	font-size: 14px;
	font-weight: 300;
	margin: 0;
}

#footer a:hover,
#footer-lower a:hover {
	color: #fff
}

#footer h4 {
	color: #fff;
	font-size: 18px;
	font-weight: 500;
	margin-bottom: 20px;
	max-width: 200px
}

#footer ul,
#footer-lower ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#footer ul li a {
	font-size: 14px;
	webkit-transition: .25s all ease;
	-o-transition: .25s all ease;
	transition: .25s all ease;
}

#footer ul li a i {
	margin-right: 10px;
	color: #23b9ce;
	min-width: 18px;
}

#footer-lower ul li {
	display: inline-block;
	margin-left: 10px;
	position: relative;
	vertical-align: top;
	line-height: 1;
}

#footer-lower ul li::before {
	content: "|";
	color: #fff;
	font-size: 20px;
	font-weight: 300;
	display: inline-block;
	vertical-align: top;
	padding-right: 10px;
}

#footer-lower .footer-lower-copy {
	height: 100%;
	line-height: 1;
}

#footer-lower ul li:first-child::before {
	display:none
}

#footer .footerColDesc a:hover {
	text-decoration: underline;
}

#footer .footerColLogo img {
	width: 150px;
	height: auto;
}

/* Cookies */
#cookie-law-info-bar {
	box-shadow: 0 0 20px 0 rgba(0,0,0,0.2);
}

#cookie-law-info-bar br {
	display: none;
}

#cookie-law-info-bar span {
	display: inline-block;
	width: 100%;
	vertical-align: top
}

#cookie-law-info-bar span div.cookieDesc {
	display: inline-block;
	width: calc(100% - 210px);
	font-size: 14px;
	text-align: right;
	padding: 0 0 0 20%;
}

#cookie-law-info-bar span div.cookiBtns {
	display: inline-block;
	width: 200px
}

.grecaptcha-badge {
	visibility: hidden;
	opacity: 0;
	z-index: -1;
}

.nopageWrapp {
	padding: 0 30px;
}

.nopageWrapp h1 {
	font-size: 100px;
	margin: 0 auto 60px auto;
	font-weight: 700;
	text-align: center;
}

/* RWD Min rozdzielczości */
@media (min-width: 768px), (min-width: 768px) and (-webkit-min-device-pixel-ratio: 1.5) {
	.realizacjeSwiper > .row:after {
		position: absolute;
		z-index: 1;
		top: 0;
		bottom: 0;
		right: 0;
		width: 150px;
		height: 100%;
		content: "";
		background: rgb(255,255,255);
		background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 85%, rgba(255,255,255,1) 100%);
	}

	.realizacjeSwiper > .row:before {
		position: absolute;
		z-index: 2;
		top: 0;
		bottom: 0;
		left: 0;
		width: 150px;
		height: 100%;
		content: "";
		background: rgb(255,255,255);
		background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 15%, rgba(255,255,255,0) 100%);
	}

	body.single article {
		padding: 0 45px;
	}
	
	body.single article .newsCover {
		width: 310px;
	}
	
	body.single article .newsWrap {
		width: calc(100% - 310px);
		padding-left: 45px;
	}
	
}

@media (min-width: 992px), (min-width: 992px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
}

@media (min-width: 1024px), (min-width: 1024px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
}

@media (min-width: 1366px), (min-width: 1366px) and (-webkit-min-device-pixel-ratio: 1.5) {

}

@media (min-width: 1400px), (min-width: 1400px) and (-webkit-min-device-pixel-ratio: 1.5) {
	.container {
		max-width: 1310px;
		padding-left: 15px;
		padding-right: 15px; 
	}
}

@media (min-width: 1680px), (min-width: 1680px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
	
}

@media (min-width: 1800px), (min-width: 1800px) and (-webkit-min-device-pixel-ratio: 1.5) {	
	
}

/* RWD Max rozdzielczości */
@media (max-width: 1800px), (max-width: 1800px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
}

@media (max-width: 1680px), (max-width: 1680px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
}

@media (max-width: 1600px), (max-width: 1600px) and (-webkit-min-device-pixel-ratio: 1.5) {
	.universal-container .boxInner h1, 
	.universal-container .boxInner h2 {
		font-size: 50px;
		margin-bottom: 40px;
		line-height: 1;
	}
	
	.universal-container .boxInner h3 {
		font-size: 36px;
		margin-bottom: 30px;
		line-height: 1;
	}
	
	.universal-container .boxInner h5, 
	.universal-container .boxInner h6, 
	.universal-container .boxInner h4 {
		font-size: 20px;
	}
}

@media (max-width: 1440px), (max-width: 1440px) and (-webkit-min-device-pixel-ratio: 1.5) {
	body {
		font-size: 16px;
	}
		
	.pt-5, .py-5 {
		padding-top: 2rem !important;
	}
	
	.mt-5, .my-5 {
		margin-top: 2rem !important;
	}
	
	#cookie-law-info-bar span div.cookieDesc {
		padding: 0 0 0 10%;
	}
}

@media (max-width: 1366px), (max-width: 1366px) and (-webkit-min-device-pixel-ratio: 1.5) {
	#menuWrap {
		padding-right: 30px;
	}
	
	.fixedNavbar .navbarLockup {
		padding-left: 30px;
	}
}

@media (max-width: 1280px), (max-width: 1280px) and (-webkit-min-device-pixel-ratio: 1.5) {
	#underHero .descBlockheroImg {
		right: 100px;
	}
	
	#cookie-law-info-bar span div.cookieDesc {
		padding: 0 0 0 20px;
	}
}

@media (max-width: 1200px), (max-width: 1200px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
}

@media (max-width: 1199px), (max-width: 1199px) and (-webkit-min-device-pixel-ratio: 1.5) {
	.height100vh {
		height: initial;
		min-height: initial;
	}
	
	.d-flex.d-none {
		display: none !important;
	}

	.modal-body {
		padding: 0
	}
	
	.modal .close {
		top: 6px;
		right: 6px;
	}
	
	#underHero .descBlockheroImg {
		right: 50px;
	}
}

@media (max-width: 1024px), (max-width: 1024x) and (-webkit-min-device-pixel-ratio: 1.5) {
	.logoImg.svgIcon .st0 {
		fill:#fff;
	}

	.absoluteNavbar {
		display: none;
	}
	
	#mainMenuHome ul.nav > li.menu-item-has-children::after {
		color: #fff;
	}

	.fixedNavbar {
		transform: translate3d(0,0,0);
	}
	
	.fixedNavbar .mobile-nav-toggle {
		display: block;
	}
	
	.fixedNavbar #menuWrap {
		display: none !important;
	}
}

@media (max-width: 991px), (max-width: 991px) and (-webkit-min-device-pixel-ratio: 1.5) {	
	#simplePage, 
	#realizacjeHeader {
		padding-top: 120px
	}
	
	.contactForm input[type="text"], 
	.contactForm input[type="number"], 
	.contactForm input[type=email],
	.contactForm input[type=tel],
	.contactForm select, 
	.contactForm textarea {
		font-size: 16px;
	}
	
	.contactForm .formFooterBtn::before {
		display: none;
	}
	
	.realizacjeSwiper {
		padding-top: 120px;
	}
	
	.universal-container,
	.site-contact {
		padding-top: 50px;
		padding-bottom: 50px
	}
	
	.single  .container-fluid > .container,
	.page:not(.home) .container-fluid >.container {
		padding-left: 0;
		padding-right: 0;
	}
	
	#footer {
		padding-top: 50px;
		padding-bottom: 30px
	}
		
	#footer .footerCol  {
		margin-bottom: 30px;
	}
	
	#cookie-law-info-bar span div.cookieDesc {
		padding: 10px;
		width: 100%;
		text-align: left;
		font-size: 12px;
	}
	
	#cookie-law-info-bar span div.cookiBtns {
		width: 100%
	}
}

@media (max-width: 767px), (max-width: 767px) and (-webkit-min-device-pixel-ratio: 1.5) {
	#mainMenuSlide ul.nav > li:last-of-type {
		padding-bottom: 30px 
	} 
	
	.realizacjeSwiper .swiper-button-prev, 
	.realizacjeSwiper .swiper-button-next {
	    background-color: #fff;
		padding: 5px !important;
		border-radius: 5px;
		width: 36px;
		height: 53px;
		margin-top: -175px;
	}
	
	.realizacjeSwiper .swiper-button-next {
		right: 11px;
	}
	
	.realizacjeSwiper .swiper-button-prev {
		left: 11px;
	}
	
	#contact-upper-1 {
		margin-bottom: 30px
	}
	
	#heroWrap {
		height: 100%;
	}
	
	#underHero {
		margin-top: 30px;
	}
	
	#heroWrap h1 {
		font-size: 38px;
	}
	
	#simplePage h1 {
		font-size: 28px;
	}
	
	#underHero .descBlockheroImg img {
		max-height: 160px;
	}
	
	#heroCenter {
		padding-top: 46vh;
		padding-bottom: 30px;
	}
	
	#underHero .descBlockhero {
		padding: 25px;
	}
	
	#historyWrap .row > div {
		margin-top: initial
	}
	
	#simplePage {
		padding-bottom: 60px;
	}
	
	#historyWrap .historyElement {
		flex-wrap: wrap;
		overflow-x: hidden
	}
	
	#historyWrap .historyElement > div > div {
		margin: 0 auto;
	}
	
	#historyWrap .historyElement:nth-child(even) .historyElementDesc > div p {
		text-align: center !important;
	}
	
	#historyWrap .historyElement:nth-child(2n+1) .historyElementImg,
	#historyWrap .historyElement:nth-child(2n) .historyElementImg {
		padding: 0;
	}
	
	#historyWrap .historyElementImg {
		width: 100%;
	}
	
	#historyWrap .historyElementImg img {
		max-height: 100px;
		margin: 0 auto 20px auto;
	}
	
	#historyWrap .historyElementDesc {
		margin-top: 20px;
	}
	
	#historyWrap .historyElementDesc br {
		display: none
	}
	
	#historyWrap .historyElementYear {
		width: 100%;
		height: 80px;
		font-size: 20px;
	}
	
	#historyWrap .historyElementYear > div {
		width: 80px;
	}
	
	#historyWrap .historyElement > div > div {
		min-height: initial
	}
	
	#historyWrap .historyElementDesc {
		width: 100%;
	}
	
	#historyWrap .historyElement::before {
		display: none;
	}
	
	#historyWrap .historyElement:nth-child(2n) .historyElementDesc,
	#historyWrap .historyElement:nth-child(2n+1) .historyElementDesc {
		padding: 0;
		text-align: center;
	}
	
	#historyWrap #historyInner .historyElement .historyElementDesc > div {
		justify-content: center;
	}
	
	#simplePage h1 {
		text-align: left !important;
	}
	
	#simplePage, 
	#realizacjeHeader {
		padding-top: 100px
	}
	
	.universal-container, 
	.site-contact {
		padding-top: 0;
		padding-bottom: 30px;
	}
	
	.universal-container .boxInner div.gallery,
	.universal-container .boxInner iframe,
	.universal-container .boxInner img {
		margin-top: 45px !important;
	}
	
	.universal-container .boxInner .gallery img {
		margin-top: 0 !important
	}
	
	.universal-container .boxInner h1, 
	.universal-container .boxInner h2 {
		font-size: 36px;
		margin-bottom: 40px;
		line-height: 1;
	}
	
	.formFooter .contact-form-wrap-checkbox,
	.formFooter .formFooterBtn, 
	.contactForm .formLeftCol, 
	.contactForm .formRightCol {
		width: 100%;
	}
	
	.formFooter .contact-form-wrap-checkbox,
	.contactForm .formLeftCol {
		margin-bottom: 25px;
	}
	
	.btn-secondary {
		width: 100%;
		margin-bottom: 45px;
	}
	
	body.single article .newsCover {
		margin-bottom: 30px
	}

	#footer p, 
	#footer-lower a, 
	#footer-lower p {
		font-size: 12px;
	}
	
	#footer-lower-1 {
		margin: 15px 0
	}
	
	#footer-lower-inner .row .col {
		flex: 0 0 100%;
		max-width: 100%;
	}
	
	#footer-lower-inner .row .col > div {
		flex-wrap: wrap;
		justify-content: start !important;
	}
	
	#footer-lower ul li:first-child {
		margin-left: 0;
	}
			
	#footer-lower ul li::before {
		font-size: 15px;
	}
}

@media (max-width: 576px), (max-width: 576px) and (-webkit-min-device-pixel-ratio: 1.5) {	
	.slideOutNav #logoHeaderSmall, 
	.slideOutNav #logoHeaderSmall svg, 
	.slideOutNav #logoHeaderSmall img {
		width: 200px;
	}
}

@media (max-width: 414px), (max-width: 414px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
}

@media (max-width: 380px), (max-width: 380px) and (-webkit-min-device-pixel-ratio: 1.5) {
	
}

@media (max-width: 360px), (max-width: 360px) and (-webkit-min-device-pixel-ratio: 1.5) {
	.slideOutNav #logoWrap {
		padding: 30px;
	}
	
	.slideOutNav #logoHeaderSmall, 
	.slideOutNav #logoHeaderSmall svg, 
	.slideOutNav #logoHeaderSmall img {
		width: 180px;
	}
}

@media (max-width: 320px), (width-max: 320px) and (-webkit-min-device-pixel-ratio: 1.5) {
	.slideOutNav #logoHeaderSmall, 
	.slideOutNav #logoHeaderSmall svg, 
	.slideOutNav #logoHeaderSmall img {
		width: 160px;
	}
	
	.slideOutNav #logoWrap {
		padding: 20px;
	}	
}