html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block
}

body {
	line-height: 1
}

ol, ul {
	list-style: none
}

blockquote, q {
	quotes: none
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

a, button, input, select, textarea {
	outline: none
}

a {
	text-decoration: none
}

.container {
	width: 100%;
	max-width: 1540px;
	margin: 0 auto
}

@media (max-width: 1580px) {
	.container {
		max-width: 90%
	}
}

.container-fluid {
	width: calc(100% - 2*$fluidGap);
	margin: 0 5vw
}

:root {
	font-size: 16px
}

body {
	font-size: 1rem;
	font-family: "Jost", sans-serif;
	line-height: 1.45;
	font-weight: 400;
	color: #fff;
	-webkit-font-variant-ligatures: no-common-ligatures;
	font-variant-ligatures: no-common-ligatures
}

body b, body strong {
	font-weight: bold
}

body em {
	font-style: italic
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: "Jost", sans-serif;
	font-weight: 700;
	margin: 30px 0 15px;
	line-height: 1.1em;
	color: #fff
}

h1 em, h2 em, h3 em, h4 em, h5 em, h6 em, .h1 em, .h2 em, .h3 em, .h4 em, .h5 em, .h6 em {
	color: #EB1C31;
	font-style: normal
}

h1, .h1 {
	font-size: 3.75rem
}

h2, .h2 {
	font-size: 3.55rem
}

h3, .h3 {
	font-size: 2.6875rem
}

h4, .h4 {
	font-size: 2rem
}

h5, .h5 {
	font-size: 1.5rem
}

h6, .h6 {
	font-size: 1.125rem
}

.sub h1, .sub .h1 {
	font-size: 3.75rem
}

.sub h2, .sub .h2 {
	font-size: 3.55rem
}

.sub h3, .sub .h3 {
	font-size: 2.6875rem
}

.sub h4, .sub .h4 {
	font-size: 2rem
}

.sub h5, .sub .h5 {
	font-size: 1.5rem
}

.sub h6, .sub .h6 {
	font-size: 1.125rem
}

.lead {
	font-size: 1.3125rem;
	line-height: 1.75
}

p, ul, ol {
	margin-bottom: 16px
}

ul, ol {
	margin-left: 30px
}

ul>li, ol>li {
	margin-bottom: 8px
}

ul>li {
	list-style: disc outside
}

ol>li {
	list-style: decimal outside
}

blockquote {
	display: block;
	padding-left: 90px;
	position: relative;
	margin-bottom: 1rem
}

blockquote em, blockquote small {
	display: block
}

blockquote em {
	font-size: 2rem;
	line-height: 2.5rem;
	font-style: italic;
	margin-bottom: 1rem
}

blockquote small {
	text-align: right;
	font-size: 1rem
}

blockquote::before {
	position: absolute;
	top: 3.5rem;
	left: 0;
	content: "”";
	font-family: serif;
	opacity: 0.1;
	font-size: 180px
}

.well {
	background: rgba(0, 0, 0, 0.05);
	padding: 1rem 1.5rem
}

.text-left, .tl {
	text-align: left
}

.text-center, .tc {
	text-align: center
}

.text-right, .tr {
	text-align: right
}

.bold, .strong, b, strong {
	font-weight: bold
}

.fw-100 {
	font-weight: 100
}

.fw-200 {
	font-weight: 200
}

.fw-300 {
	font-weight: 300
}

.fw-400 {
	font-weight: 400
}

.fw-500 {
	font-weight: 500
}

.fw-600 {
	font-weight: 600
}

.fw-700 {
	font-weight: 700
}

.fw-800 {
	font-weight: 800
}

.fw-900 {
	font-weight: 900
}

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

.responsive-media, .r-m {
	position: relative;
	overflow: hidden;
	padding-top: 56.25%
}

.responsive-media iframe, .r-m iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0
}

.alerts {
	position: relative
}

.alert {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: block;
	padding: 10px 15px;
	margin-bottom: 10px;
	color: white;
	font-weight: bold;
	background-color: #cccccc;
	width: calc(100% - 30px)
}

.alert.alert-success {
	background-color: #008020;
	z-index: 20
}

.alert.alert-warning {
	background-color: #f59f00;
	z-index: 2
}

.alert.alert-danger {
	background-color: #e32416;
	z-index: 1
}

.alert.alert-info {
	background-color: #4babe2;
	z-index: 20
}

.btn {
	background: #EB1C31;
	display: inline-block;
	text-align: center;
	text-decoration: none;
	border: 1px solid #EB1C31;
	border-radius: 0;
	padding: 1rem 2.5rem;
	line-height: 1em;
	font-size: 1rem;
	color: white;
	-webkit-transition: all .2s;
	transition: all .2s;
	font-family: "Jost", sans-serif
}

.btn:hover {
	background: #ee4153;
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
	-webkit-box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2);
	box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2)
}

.btn:focus {
	background: #cc1225;
	-webkit-transform: translateY(1px);
	transform: translateY(1px);
	-webkit-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2)
}

.btn.block {
	display: block
}

.btn.big {
	padding: 1rem 3rem;
	font-size: 1.5rem
}

.btn.small {
	font-size: .9rem;
	padding: .4rem .8rem
}

button {
	cursor: pointer
}

.btn.alt {
	background: transparent;
	color: #EB1C31;
	border: 1px solid #EB1C31
}

.btn.alt:hover {
	color: white;
	background: #EB1C31;
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
	-webkit-box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2);
	box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2)
}

.btn.alt:focus {
	color: white;
	background: #cc1225;
	-webkit-transform: translateY(1px);
	transform: translateY(1px);
	-webkit-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2)
}

.bg-info {
	background: #4babe2;
	border-color: #4babe2
}

.bg-danger {
	background: #e32416;
	border-color: #e32416
}

.bg-warning {
	background: #f59f00;
	border-color: #f59f00
}

.bg-success {
	background: #008020;
	border-color: #008020
}

.bg-primary {
	background: #EB1C31;
	border-color: #EB1C31
}

.bg-secondary {
	background: #fff;
	border-color: #fff
}

.color-white {
	color: white
}

.color-black {
	color: black
}

.color-info {
	color: #4babe2
}

.color-danger {
	color: #e32416
}

.color-warning {
	color: #f59f00
}

.color-success {
	color: #008020
}

.color-primary {
	color: #EB1C31
}

.color-secondary {
	color: #fff
}

.bg-none {
	background: transparent !important
}

.navbar__toggler {
	display: none
}

#navbar {
	background: rgba(0, 0, 0, 0);
	height: 120px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
	-webkit-transition: all 0.2s;
	transition: all 0.2s
}

#navbar .container, #navbar .container-fluid {
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

.logo img {
	height: 57.3px;
	display: block;
	-webkit-transition: all 0.2s;
	transition: all 0.2s
}

#navbar.affix {
	background: rgba(0, 0, 0, 0.8);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	height: 70px
}

#navbar.affix .logo img {
	height: 40px
}

.navbar-nav {
	margin: 0;
	padding: 0;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center
}

.navbar-nav li {
	list-style: none;
	margin-left: 50px;
	margin-bottom: 0;
	position: relative
}

.navbar-nav li:first-child {
	margin-left: 0
}

.navbar-nav a {
	text-decoration: none;
	font-family: "Jost", sans-serif;
	font-size: .875rem;
	text-transform: uppercase;
	font-weight: bold;
	color: #fff;
	padding: 10px 0;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	display: block;
	position: relative;
	overflow: hidden
}

.navbar-nav a::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: -25px;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	background: #EB1C31;
	width: 25px;
	height: 2px
}

.navbar-nav .active>a::after, .navbar-nav a.active::after, .navbar-nav a:hover::after, .navbar-nav a:focus::after {
	left: 0
}

.dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0;
	min-width: 230px;
	background: #fff;
	border-radius: 0;
	-webkit-box-shadow: 0 5px 15px -2px rgba(0, 0, 0, 0.2);
	box-shadow: 0 5px 15px -2px rgba(0, 0, 0, 0.2);
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	opacity: 0;
	-webkit-transform-origin: top;
	transform-origin: top;
	-webkit-transition: all 0.2s;
	transition: all 0.2s
}

li:hover>.dropdown {
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
	opacity: 1
}

.dropdown .dropdown {
	top: 0;
	left: 100%
}

.dropdown .toLeft>.dropdown {
	top: 0;
	right: 100%;
	left: auto
}

.dropdown li {
	margin: 0;
	list-style: none;
	padding: 0;
	display: block;
	width: 100%
}

.dropdown a {
	padding: 10px 15px;
	display: block;
	border-top: 1px solid #e2e2e2;
	line-height: 1.1;
	font-size: 1rem;
	text-transform: none;
	font-weight: normal;
	font-family: "Jost", sans-serif;
	color: #0e0e0e;
	border-radius: 0
}

.dropdown a::after {
	display: none
}

.dropdown>li:hover>a {
	background: #EB1C31;
	color: white
}

.dropdown>li:first-child>a {
	border: 0
}

body {
	width: 100%;
	overflow-x: hidden;
	background-color: #0E0E0E
}

#main a:not(.btn) {
	color: #EB1C31;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	text-decoration: none
}

#main a:not(.btn):hover {
	color: #cc1225;
	text-decoration: underline
}

body {
	border-top: 5px solid #EB1C31
}

.tel {
	color: #EB1C31;
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 1
}

.tel:hover {
	text-decoration: underline
}

.home header {
	height: 100vh;
	background: url(/img/header-bg.jpg) center no-repeat;
	background-size: cover;
	position: relative
}

.home header .swiper-container, .home header .container {
	height: 100%
}

.home header h1 {
	margin-top: 0;
	text-transform: uppercase
}

.home header p {
	margin-bottom: 0;
	font-size: 1.5rem
}

#scroll {
	color: white;
	text-transform: uppercase;
	font-size: .75rem;
	line-height: 1.3;
	position: absolute;
	bottom: 30px;
	left: 5%;
	z-index: 666;
	-webkit-transition: color .2s;
	transition: color .2s
}

#scroll:hover {
	color: #EB1C31
}

#scroll:hover img {
	-webkit-animation-play-state: paused;
	animation-play-state: paused
}

#scroll img {
	display: block;
	margin-right: 15px;
	-webkit-animation: up-and-down 1.5s linear infinite forwards;
	animation: up-and-down 1.5s linear infinite forwards
}

@-webkit-keyframes up-and-down {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
	25% {
		-webkit-transform: translateY(-5px);
		transform: translateY(-5px)
	}
	50% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
	75% {
		-webkit-transform: translateY(5px);
		transform: translateY(5px)
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
}

@keyframes up-and-down {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
	25% {
		-webkit-transform: translateY(-5px);
		transform: translateY(-5px)
	}
	50% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
	75% {
		-webkit-transform: translateY(5px);
		transform: translateY(5px)
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0)
	}
}

#info {
	height: 862.7px;
	padding: 120px 0
}

#info .container {
	height: 862.7px;
	position: relative
}

#info h4 {
	margin-top: 0;
	margin-bottom: 20px
}

#info p {
	margin-bottom: 0;
	font-size: 1.125rem
}

#info .upper-left, #info .upper-right, #info .lower-left, #info .lower-right {
	width: 400px;
	height: 300px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: absolute;
	z-index: 500;
}

#info .upper-left {
	top: 0;
	left: 0
}

#info .upper-right {
	top: 0;
	right: 0;
	text-align: right
}

#info .lower-right {
	right: 0;
	bottom: 0;
	text-align: right
}

#info .lower-left {
	left: 0;
	bottom: 0
}

#info .mozaika {
	position: relative;
	height: 862.7px;
	width: 862.7px;
	margin: 0 auto;
	z-index: 10;
}

#info .mozaika img {
	position: absolute
}

#info .mozaika .mozaika-top {
	top: 0;
	left: calc(50% - 424.3px / 2)
}

#info .mozaika .mozaika-right {
	right: 0;
	top: calc(50% - 424.3px / 2)
}

#info .mozaika .mozaika-bottom {
	bottom: 0;
	left: calc(50% - 424.3px / 2)
}

#info .mozaika .mozaika-left {
	left: 0;
	top: calc(50% - 424.3px / 2)
}

#zakres-dzialalnosci {
	padding-bottom: 120px
}

#zakres-dzialalnosci h2 {
	margin-top: 0;
	margin-bottom: 60px
}

#zakres-dzialalnosci .grid {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr 1fr;
	grid-template-columns: 1fr 1fr 1fr
}

#zakres-dzialalnosci .grid a {
	height: 25vw;
	color: white;
	-webkit-transition: color .2s;
	transition: color .2s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 30px;
	border: 1px solid rgba(235, 28, 49, 0.2);
}

/* #zakres-dzialalnosci .grid a:nth-child(3n) {
	border-right: 0
}

#zakres-dzialalnosci .grid a:last-child, #zakres-dzialalnosci .grid a:nth-last-child(2), #zakres-dzialalnosci .grid a:nth-last-child(3) {
	border-bottom: 0
} */

#zakres-dzialalnosci .grid a:hover {
	color: #EB1C31
}

#zakres-dzialalnosci .grid a:hover img {
	-webkit-transform: translateY(-3px);
	transform: translateY(-3px);
	-webkit-filter: drop-shadow(0 10px 10px black);
	filter: drop-shadow(0 10px 10px black)
}

#zakres-dzialalnosci .grid strong {
	font-weight: bold;
	font-size: 1.125rem;
	line-height: 1.3
}

#zakres-dzialalnosci .grid img {
	height: 100px;
	display: block;
	margin-bottom: 35px;
	-webkit-transition: all .3s;
	transition: all .3s
}

#kwalifikacje {
	padding-bottom: 120px;
}

#kwalifikacje .col-6:first-child {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-right: 30px
}

#kwalifikacje h2 {
	margin-top: 0;
	margin-bottom: 30px
}

#kwalifikacje ul {
	margin-left: 0
}

#kwalifikacje li {
	display: block;
	padding-left: 30px;
	position: relative
}

#kwalifikacje li::before {
	content: '';
	display: block;
	position: absolute;
	top: 8px;
	left: 0;
	width: 12px;
	height: 12px;
	background: url(/img/check.svg) center no-repeat;
	background-size: contain
}

#pliki, #galeria {
	margin-top: 60px
}

.sub {
	padding-top: 120px
}

.sub h1 {
	margin-top: 60px
}

footer {
	background: #0E0E0E;
	padding: 120px 0 60px;
	color: white
}

footer a {
	text-decoration: none
}

footer h5 {
	margin: 0 0 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	font-weight: 900;
	color: white;
	text-transform: uppercase
}

footer form input, footer form textarea {
	background: rgba(255, 255, 255, 0.15);
	color: white
}

footer form input:hover, footer form textarea:hover {
	background: rgba(255, 255, 255, 0.2)
}

footer form input::-webkit-input-placeholder, footer form textarea::-webkit-input-placeholder {
	color: white !important;
	opacity: 1
}

footer form input:-ms-input-placeholder, footer form textarea:-ms-input-placeholder {
	color: white !important;
	opacity: 1
}

footer form input::-ms-input-placeholder, footer form textarea::-ms-input-placeholder {
	color: white !important;
	opacity: 1
}

footer form input::placeholder, footer form textarea::placeholder {
	color: white !important;
	opacity: 1
}

footer form input:focus::-webkit-input-placeholder, footer form textarea:focus::-webkit-input-placeholder {
	opacity: .2
}

footer form input:focus:-ms-input-placeholder, footer form textarea:focus:-ms-input-placeholder {
	opacity: .2
}

footer form input:focus::-ms-input-placeholder, footer form textarea:focus::-ms-input-placeholder {
	opacity: .2
}

footer form input:focus::placeholder, footer form textarea:focus::placeholder {
	opacity: .2
}

footer hr {
	margin: 120px 0 60px;
	height: 1px;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1)
}

.madeby {
	line-height: 1em
}

.madeby img {
	display: block;
	width: 92px
}

.madeby small {
	float: left;
	color: white;
	font-size: .625rem;
	margin: 1.5px 3px 0 0;
	display: inline-block;
	font-family: arial
}

.lg-backdrop.in {
	opacity: .8 !important
}

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

.responsive-media, .r-m {
	position: relative;
	overflow: hidden;
	padding-top: 56.25%
}

.responsive-media iframe, .r-m iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0
}

.alerts {
	position: relative
}

.alert {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: block;
	padding: 10px 15px;
	margin-bottom: 10px;
	color: white;
	font-weight: bold;
	background-color: #cccccc;
	width: calc(100% - 30px)
}

.alert.alert-success {
	background-color: #008020;
	z-index: 20
}

.alert.alert-warning {
	background-color: #f59f00;
	z-index: 2
}

.alert.alert-danger {
	background-color: #e32416;
	z-index: 1
}

.alert.alert-info {
	background-color: #4babe2;
	z-index: 20
}

.fb_slider_right {
	position: fixed;
	top: 180px;
	right: -320px;
	z-index: 10000;
	width: 348px;
	height: 100px;
	overflow: hidden;
	transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out
}

.fb_slider_right .sliderbody {
	float: left;
	width: 320px
}

.fb_slider_right:hover {
	right: 0;
	height: 100%
}

.fb_slider_right .button, .fb_slider_right iframe {
	float: left;
	background: white
}

.sub #main li li {
	margin-top: 5px
}

.card-title--link {
	color: white;
}