@charset "utf-8";

/* Copyright ENDEA */

@import url('https://fonts.googleapis.com/css2?family=Titillium+Web:wght@400;600;700&display=swap');


html, body {
	background: #FFFFFF; 
	font-family: 'Titillium Web', sans-serif;
	line-height: 1.7;
	color: #141414;
}

body {
    padding-top: 60px;
    padding-bottom: 0px;
	font-size: 16px;
}

body.main-page {
	padding-top: 60px;
}


@media (min-width: 992px) {

	body {
		padding-top: 85px;
		font-size: 17px;
	}
	
	body.main-page {
		padding-top: 0;
	}
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4  {
	line-height: 1.5;
	margin-top: 40px;
	margin-bottom: 20px;
}

h1, .h1 {
	font-size: 22px;
	font-weight: 600;
}

h2, .h2 {
	font-size: 19px;
	font-weight: 600;
}

h3, .h3 {
	font-size: 17px;
	font-weight: 600;
}

h4, .h4 {
	font-size: 17px;
	font-weight: 400;
}


@media (min-width: 768px) {

	h1, .h1 {
	  font-size: 33px;
	}
	h2, .h2 {
		font-size: 26px;
	}
	h3, .h3 {
		font-size: 21px;
	}
	h4, .h4 {
		font-size: 19px;
	}
}

a {
    color: #0177CA;
    text-decoration: none;
	transition: color .3s ease-in-out;
}

a:hover,
a:focus {
	text-decoration: none;
	color: #707070;
}


/* --- strona główna: banner --- */

.mb-wrapper {
	position: relative;
	margin-bottom: 50px;
}

.m-banner {
	position: relative;
	margin: 0;
	background: url(../img/baner.jpeg);
	background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
	height: 320px;
}

.mb-bcg {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 200px;
	background: rgba(0, 0, 0, 0.6);
}

@media (min-width: 576px) {

	.mb-bcg {
		height: 220px;
		background: linear-gradient(90deg, rgba(0, 0, 0, 0.6) 50%, rgba(20, 20, 20, 0) 50%);
	}
}

@media (min-width: 768px) {

	.mb-bcg {
		height: 250px;
	}
}

@media (min-width: 992px) {

	.mb-bcg {
		height: 310px;
	}
}

@media (min-width: 1200px) {

	.mb-bcg {
		height: 330px;
	}
}

.m-banner-fx {
	display: flex;
	align-items: flex-end;
	height: 320px;
	position: relative;
	z-index: 1;
}

.m-banner-txt {
	width: 100%;
}

@media (min-width: 576px) {

	.m-banner-txt {
		width: 50%;
	}
}

.m-banner-txt h1 {
	margin: 0 0 30px;
	font-size: 30px;
	font-weight: 600;
	color: #F4F4F4;
	line-height: 1.3;
}

.hd-sp {
	color: #0797FA;
}

@media (min-width: 576px) {

	.m-banner-txt h1 {
		font-size: 36px;	
	}
}

@media (min-width: 768px) {

	.m-banner {
		height: 400px;
	}
	.m-banner-fx {
		height: 400px;
	}
	.m-banner-txt h1 {
		font-size: 46px;	
	}
}

@media (min-width: 992px) {

	.m-banner {
		height:clamp(400px,100vh,600px);
	}
	.m-banner-fx {
		height:clamp(400px,100vh,600px);
	}
	.m-banner-txt h1 {
		font-size: 54px;
		font-weight: 700;	
	}
}

@media (min-width: 1200px) {

	.m-banner {
		height:clamp(400px,100vh,620px);
	}
	.m-banner-fx {
		height:clamp(400px,100vh,620px);
	}
	.m-banner-txt h1 {
		font-size: 58px;	
	}
}

@media (min-width: 1970px) {
	.m-banner {
		width: 1920px;
		margin-left: auto; margin-right: auto;
	}
}

.ban-btn {
	margin-bottom: 30px;
}

.ban-btn a {
	display: inline-block;
	color: #FFFFFF;
	font-size: 16px;
	font-weight: 600;
	line-height: 1;
	text-transform: uppercase;
}

@media (min-width: 992px) {

	.ban-btn {
		margin-bottom: 50px;
	}
	.ban-btn a {
		font-size: 18px;
	}
}

.ban-btn-box {
	position: relative;
	padding: 10px 65px 10px 30px;
	background-color: #0177CA;
	transition: background-color .3s ease-in-out;
}

@media (min-width: 992px) {

	.ban-btn-box {
		padding: 15px 75px 15px 35px;
	}
}

.ban-btn a:hover .ban-btn-box {
	background-color: #707070;
}

.ban-btn-box > img {
	position: absolute;
	top: 13px;
	margin-left: 10px;
	transition: margin-left .3s ease-in-out;
}

@media (min-width: 992px) {

	.ban-btn-box > img {
		top: 17px;
	}
}

.ban-btn a:hover .ban-btn-box > img {
	margin-left: 20px;
}

.ban-btn-box img {
	width: 25px;
}

@media (min-width: 992px) {

	.ban-btn-box img {
		width: 30px;
	}
}


/* --- animation (strona główna) --- */

.animH1 {
	position: relative;
	animation: fromBottomH1 2.0s ease-in-out;
}
@keyframes fromBottomH1 {
	0%   {opacity: 0;}
	15%   {opacity: 0; left:-30px; top:0px;}
	100%  {opacity: 1; left:0px; top:0px;}
}

.animB1 {
	position: relative;
	animation: fromBottomB1 2.5s ease-in-out;
}
@keyframes fromBottomB1 {
	0%   {opacity: 0;}
	50%	 {opacity: 0; left:-30px; top:0px;}
	100%  {opacity: 1; left:0px; top:0px;}
}


/* --- strona główna: kategorie --- */

.category-wrapper {
	margin: 50px 0;
}

@media (min-width: 992px) {

	.category-wrapper {
		margin: 50px 0 100px;
	}
}

@media (min-width: 992px) {

	.category-wrapper {
		margin: 100px 0 150px;
	}
}

.category-box {
	width: 100%;
	margin-top: 50px;
}

.ctg-bcg-01 {
	background: url(../img/01-wypalanie-laserowe.jpg);
}
.ctg-bcg-02 {
	background: url(../img/02-gięcie-blachy.jpg);
}
.ctg-bcg-03 {
	background: url(../img/03-spawanie-tig-mig.jpg);
}
.ctg-bcg-04 {
	background: url(../img/04-spawanie-laserowe.jpg);
}
.ctg-bcg-05 {
	background: url(../img/05-grawerowanie-laserowe.jpg);
}
.ctg-bcg-06 {
	background: url(../img/06-zadruk-elementów.jpg);
}

.ctg-bcg-01, .ctg-bcg-02, .ctg-bcg-03, .ctg-bcg-04, .ctg-bcg-05, .ctg-bcg-06 {
	background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.category-box-up {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: auto;
	margin: 0;
	padding: 20px 30px;
	background-color: rgba(20, 20, 20, 0);
	transition: background-color .3s ease-in-out;
}

.category-box-up:hover,
.category-box-up:focus,
.category-box-up:active {
	background-color: rgba(20, 20, 20, 0.7);
}

@media (min-width: 768px) {

	.category-box-up {
		height: 106px;
		overflow: hidden;
	}
}

.category-box-name {
	font-size: 18px;
    font-weight: 700;
	line-height: 1.5;
    color: #FFFFFF;
	text-transform: uppercase;
}

@media (min-width: 768px) {

	.category-box-name {
		width: 40%;
		font-size: 22px;
	}
}

.ctg-box-nr {
	font-size: 52px;
	font-weight: 700;
	line-height: 1;
	color: rgba(255, 255, 255, 0.5);
}

.category-box-down {
	border-bottom: 1px solid #0177CA;
	transition: border-bottom .3s ease-in-out;
	pointer-events: none;
}

.category-box-down:hover {
	border-bottom: 1px solid #707070;
}

.category-box-txt {
	padding: 20px 30px 0px;
	font-size: 15px;
}

@media (min-width: 768px) {

	.category-box-txt {
		font-size: 16px;
		height: 85px;
		overflow: hidden;
	}
}

.ctg-btn {
	text-align: right;
}

.ctg-btn a {
	display: inline-block;
	color: #FFFFFF;
	font-size: 13px;
	line-height: 1;
	text-transform: uppercase;
	pointer-events: auto;
}

.ctg-btn-box {
	position: relative;
	padding: 8px 50px 8px 25px;
	background-color: #0177CA;
	transition: background-color .3s ease-in-out;
}

.ctg-btn a:hover .ctg-btn-box {
	background-color: #707070;
}

.ctg-btn-box > img {
	position: absolute;
	top: 10px;
	margin-left: 10px;
	transition: margin-left .3s ease-in-out;
}

.ctg-btn a:hover .ctg-btn-box > img {
	margin-left: 20px;
}

.ctg-btn-box img {
	width: 20px;
}


/* --- strona główna: mf-site-fx --- */

.mf-site-fx {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 50px 0;
}

@media (min-width: 992px) {

	.mf-site-fx {
		flex-direction: row;
		margin: 80px 0;
		gap: 20px;
	}
}

@media (min-width: 1200px) {

	.mf-site-fx {
		margin: 100px 0;
		gap: 30px;
	}
}

@media (min-width: 1900px) {

	.mf-site-fx {
		margin: 130px 0;
	}
}


/* --- strona główna: o firmie --- */

.mf-wrapper {
	background: url(../img/about-bcg.jpeg);
	background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media (min-width: 1970px) {
	.mf-wrapper {
		width: 1920px;
		margin-left: auto; margin-right: auto;
	}
}

.mf-site-content {
	width: 100%;
	background-color: rgba(20, 20, 20, 0.8);
	padding: 15px;
	line-height: 1.7;
    overflow: hidden;
}

@media (min-width: 400px) {

	.mf-site-content {
		padding: 30px;
	}
}

@media (min-width: 992px) {

	.mf-site-content {
		width: 70%;
		padding: 50px 80px;
	}
}

.mf-hd h2 {
	color: #FFFFFF;
	font-size: 33px;
	margin: 0 0 30px 0;
	font-weight: 700;
	text-transform: uppercase;
}

@media (min-width: 576px) {

	.mf-hd h2 {
		font-size: 36px;
	}
}
@media (min-width: 768px) {

	.mf-hd h2 {
		font-size: 40px;
	}
}
@media (min-width: 992px) {

	.mf-hd h2 {
		font-size: 44px;
	}
}
@media (min-width: 1200px) {

	.mf-hd h2 {
		font-size: 48px;
		margin: 0 0 45px 0;
	}
}
@media (min-width: 1900px) {

	.mf-hd h2 {
		font-size: 52px;
	}
}

.mf-site-txt {
	color: #FFFFFF;
}

@media (min-width: 992px) {

	.mf-site-txt {
		text-align: justify;
	}
}

.btn-content {
	margin-top: 30px;
}

@media (min-width: 1200px) {

	.btn-content {
		margin-top: 45px;
	}
}

.btn-content a {
	display: table;
	color: #FFFFFF;
	font-size: 15px;
	line-height: 1;
	text-transform: lowercase;
}

@media (min-width: 992px) {

	.btn-content a {
		font-size: 17px;
	}
}

.btn-content-box {
	position: relative;
	padding: 13px 55px 13px 25px;
	background-color: #0177CA;
	transition: background-color .3s ease-in-out;
}

.btn-content a:hover .btn-content-box  {
	background-color: #707070;
}

@media (min-width: 992px) {

	.btn-content-box {
		padding: 13px 60px 13px 35px;
	}
}

.btn-content-box > img {
	position: absolute;
	top: 16px;
	margin-left: 10px;
	transition: margin-left .3s ease-in-out;
}

@media (min-width: 992px) {

	.btn-content-box > img {
		top: 16px;
	}
}

.btn-content a:hover .btn-content-box > img {
	margin-left: 20px;
}

.btn-content-box img {
	width: 23px;
}

.mf-btn-content {
	width: 100%;
	margin: 30px 0 0;
	display: flex;
	flex-direction: column;
	gap: 30px;
}

@media (min-width: 576px) {

	.mf-btn-content {
		flex-direction: row;
	}
}

@media (min-width: 992px) {

	.mf-btn-content {
		width: 30%;
		margin: 0;
		flex-direction: column;
		gap: 20px;
	}
}

@media (min-width: 1200px) {

	.mf-btn-content {
		gap: 30px;
	}
}

.mf-btn-content a {
	width: 100%;
}

.btn-box {
	background-color: rgba(20, 20, 20, 0.8);
	color: #FFFFFF;
	font-size: 20px;
	text-align: center;
	width: 100%;
	padding: 40px 0;
	transition: background-color .3s ease-in-out;
}

@media (min-width: 992px) {

	.btn-box {
		padding: 50px 0;
		font-size: 24px;
	}
}

.mf-btn-content a:hover .btn-box {
	background-color: rgba(20, 20, 20, 1);
}

.name-btn {
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 10px;
}

@media (min-width: 992px) {

	.name-btn {
		font-size: 26px;
	}
}

@media (min-width: 1200px) {

	.name-btn {
		font-size: 33px;
	}
}

.btn-box img {
	height: 35px;
	margin-right: 10px;
}


/* --- strona główna: m-site-fx --- */

.m-site-fx {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 50px 0;
}

@media (min-width: 992px) {

	.m-site-fx {
		flex-direction: row;
		margin: 80px 0;
		gap: 60px;
	}
}

@media (min-width: 1200px) {

	.m-site-fx {
		margin: 120px 0;
		gap: 80px;
	}
}

@media (min-width: 1900px) {

	.m-site-fx {
		margin: 150px 0;
	}
}


/* --- strona główna: produkty ze stali --- */

.m-site-content {
	width: 100%;
	line-height: 1.7;
    overflow: hidden;
}

@media (min-width: 992px) {

	.m-site-content {
		width: 50%;
	}
	.m-site-txt {
		text-align: justify;
	}
}

.m-hd h2 {
	font-size: 33px;
	margin: 0 0 30px 0;
	font-weight: 700;
	text-transform: uppercase;
}

@media (min-width: 576px) {

	.m-hd h2 {
		font-size: 36px;
	}
}
@media (min-width: 768px) {

	.m-hd h2 {
		font-size: 40px;
	}
}
@media (min-width: 992px) {

	.m-hd h2 {
		font-size: 44px;
	}
}
@media (min-width: 1200px) {

	.m-hd h2 {
		font-size: 48px;
		margin: 0 0 45px 0;
	}
}
@media (min-width: 1900px) {

	.m-hd h2 {
		font-size: 52px;
	}
}

.m-site-img {
	width: 100%;
	margin: 50px 0 0;
}

@media (min-width: 576px) {

	.m-site-img {
		width: 60%;
		margin: 50px auto 0;
	}
}

@media (min-width: 992px) {

	.m-site-img {
		width: 50%;
		margin: 0;
	}
}

.m-site-img img {
	max-width: 100%;
}


/* --- podstrona --- */

.s-hd h1 {
    margin: 20px 0 30px;
	padding: 0;
	font-weight: 700;
	font-size: 30px;
    color: #0177CA;
}

@media (min-width: 576px) {

	.s-hd h1 {
		font-size: 39px;
	}
}
@media (min-width: 768px) {

	.s-hd h1 {
		font-size: 43px;
	}
}
@media (min-width: 992px) {

	.s-hd h1 {
		font-size: 47px;
		margin: 30px 0 40px;
	}
}
@media (min-width: 1200px) {

	.s-hd h1 {
		font-size: 51px;
		margin: 50px 0;
	}
}
@media (min-width: 1900px) {

	.s-hd h1 {
		font-size: 55px;
	}
}

.content-wrapper-subpage h1,
.content-wrapper-subpage h2 {
	color: #0177CA;
}


/* --- stopka --- */

.footer-main {
	width: 100%;
	margin-top: 50px;
	padding-top: 20px;
	padding-bottom: 30px;
	background: #141414;
	font-size: 13px;
	font-weight: 400;
	color: #F4F4F4;
}

.footer-main a {
	color: #F4F4F4;
}
.footer-main a:hover {
	color: #0797FA;
}

.footer-boxes {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
}

.footer-box {
	width: 100%;
}

.footer-logo-box {
	display: none;
}

.footer-adress-box, .footer-contact-box, .footer-reg-box {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	padding: 20px 0 0 0;
}

.footer-adress-img, .footer-contact-img, .footer-reg-img {
	width: 60px;
}

.footer-adress-img img, .footer-contact-img img {
	height: 30px;
	margin-top: 7px;
}

.footer-adress-img img {
	margin-left: 12px;
}

.footer-reg-img img {
	height: 30px;
	margin-top: 18px;
	margin-left: 10px;
}

.footer-sub {
	width: 100%;
	padding-top: 20px;
	padding-bottom: 20px;
	font-size: 14px;
	background: #FFFFFF;
	font-weight: 400;
	color: #141414;
}

.footer-sub a {
	font-weight: 600;
	color: #0177CA;
}
.footer-sub a:hover {
	color: #707070;
}

.footer-sub-boxes {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
}

.footer-sub-box {
	width: auto;
}

.footer-sub-toright {
	padding-top: 15px;
	text-align: left;
}

@media (min-width: 992px) {

	.footer-main {
		margin-top: 70px;
		padding: 0;
		background: linear-gradient(90deg, #030202 20%, #141414 20%);
	}
	.dif-bcg {
		background-color: #030202;
	}
	.footer-boxes {
		flex-direction: row;
	}
	.footer-box {
		width: 25%;
		height: 216px;
		padding-top: 50px;
		padding-bottom: 50px;
		overflow: hidden;
	}
	.footer-logo-box {
		height: 116px;
		display: flex;
		align-items: center;
	}
	.footer-logo-box img {
		height: 30px;
	}
	.footer-adress-box, .footer-contact-box, .footer-reg-box {
		padding: 0;
		flex-direction: column;
		align-items: center;
	}
	.footer-adress-img, .footer-contact-img, .footer-reg-img {
		width: auto;
		padding-bottom: 15px;
	}
	.footer-adress-img img, .footer-contact-img img, .footer-reg-img img {
		height: 35px;
		margin-top: 0;
		margin-left: 0;
	}
	.footer-sub {
		font-size: 15px;
	}
	.footer-sub-boxes {
		flex-direction: row;
	}
	.footer-sub-box {
		width: 50%;
	}
	.footer-sub-toright {
		padding-top: 0;
		text-align: right;
	}
	
}

@media (min-width: 1800px) {

	.footer-main {
		background: linear-gradient(90deg, #030202 30%, #141414 30%);
	}
}

@media (min-width: 2700px) {

	.footer-main {
		background: linear-gradient(90deg, #030202 35%, #141414 35%);
	}
}

@media (min-width: 3800px) {

	.footer-main {
		background: linear-gradient(90deg, #030202 40%, #141414 40%);
	}
}


/* --- all: listy i punktory --- */

.c-list {
	list-style-image: url(../img/list-image1.svg);
    padding-left: 35px;
}
.c-list li {
	padding: 3px 0 5px 5px;
	border-bottom: 0px;
}

.c-list-2 {
	list-style-image: url(../img/list-image2.svg);
    padding-left: 35px;
}
.c-list-2 li {
	padding: 3px 0 5px 5px;
	border-bottom: 0px;
}


/* --- cta-box-1 --- */
.cta-box-1 {
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
	border-radius: 0;
	margin-top: 60px;
	margin-bottom: 60px;
}

.cta-bx1-txt,
.cta-bx1-act {
	box-sizing: border-box;
	width: 100%;
	height: auto;
	padding: 30px 15px 30px 25px;
	color: #FFF;
	font-size: 19px;
	font-weight: 600;
}

.cta-bx1-txt {
	border-radius: 0;
	background: #000;
	text-align: center;
}

.cta-bx1-act {
	border-radius: 0;
	background: #0177CA;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
}

.cta-bx1-act-icon {
	width: 50px;
}

.cta-bx1-act-icon img {
	max-height: 30px;
}

.cta-bx1-act-link a {
	color: #FFF;
}

.cta-bx1-act-link a:hover,
.cta-bx1-act-link a:focus {
	color: #000;
}

@media (min-width: 992px) {

	.cta-box-1 {
		flex-direction: row;
	}
	.cta-bx1-txt {
		width: 50%;
		height: 90px;
		border-radius: 0;
		text-align: left;
	}
	.cta-bx1-act {
		width: 50%;
		height: 90px;
		border-radius: 0;
		justify-content: left;
	}

}

@media (min-width: 1200px) {

	.cta-bx1-txt,
	.cta-bx1-act {
		height: 100px;
		font-size: 29px;
		padding: 27px 15px 30px 25px;
	}

}