* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

body {
	font-family: 'raleway', sans-serif;
}
.blue-text1 {
	color: #0086f3;
}
/*nawigacja*/

.underline {
	margin: 0 auto 40px;
	width: 60px;
	height: 4px;
	background-color: #0086f3;
}

nav {
	z-index: 1;
	height: 100px;
}

.nav {
	height: 50px;
	background-color: #333;
	text-align: center;
	line-height: 50px;
}

.nav-link,
.navbar-nav .show > .nav-link,
.navbar-brand,
.fa-bars {
	color: #fff;
	text-transform: uppercase;
}

.nav-link:focus,
.nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .show > .nav-link .navbar-brand {
	color: #0086f3;
}

.navbar-toggler {
	padding: 10px 15px;

	color: #fff;
}

.navbar-brand:focus,
.navbar-brand:hover {
	color: #0086f3;
}

.navbar-brand {
	font-weight: bold;
	padding: 70px;
}

.nav1 {
	height: 50px;
	background-color: #333;
	text-align: center;
	line-height: 50px;
	font-size: 1;
}

.nav-item {
	display: inline-block;
	margin-right: auto;
}

.nav-item a {
	padding: 0 50px;
	color: #ffffff96;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	letter-spacing: 2px;
	transition: color 0.3s;
}

.nav-item a:hover {
	color: #0086f3;
}
.navbar-nav .nav-link:focus {
    color: rgba(255, 255, 255, 0.55); /* Standardowy kolor Bootstrap dla linków w ciemnym menu */
}

.my-button {
	text-transform: uppercase;
	padding: 10px 20px;
	margin-top: 40px;
	border: 2px solid #fff;
	background-color: none;
	color: #fff;
	border-radius: 5px;
	text-decoration: none;
	display: inline-block;
	font-size: 24px;
}

.header-img1 {
	position: relative;
	color: #fff;
	height: 100vh;
	background-image: url('../img/koło.jpg');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	z-index: 0;
}
h1 {
	text-transform: uppercase;
}

.header-shadow1 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgb(0, 0, 0, 0.3);
	z-index: -5;
}
.header-text1 {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: 100%;
	font-size: 26px;
}

.header-text1 h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 46px;
}
.header-text1 p {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 26px;
}
.fa-chevron-down {
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	bottom: 20px;
	font-size: 30px;
	color: #ddd;
}

/* header */

.header-img {
	position: relative;
	height: 600px;
	background-image: url('../img/koło.jpg');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	z-index: 0;
}

.header-text {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	z-index: 1;
}
.header-text h1 {
	margin-bottom: 10px;
	letter-spacing: 2px;
}

.header-bg {
	position: absolute;
	height: 100%;
	width: 100%;
	background-color: rgba(0, 0, 0, 0.6);
}

/*main*/
main {
	margin: 40px auto;
	width: 1500px;
}

main h2 {
	margin-bottom: 30px;
	text-transform: uppercase;
	text-align: center;
	font-size: 26px;
}
.us {
	display: relative;
	justify-content: center;
	align-items: center;
	text-align: center;
	padding: 20px 0px;
	font-size: 26px;
}

.section-tittle {
	font-size: 26px;
	text-align: center;
}
.section-tittle1 {
	font-size: 26px;
	text-align: center;
	color: #ccc3c3;
}
.section-tittle1 a {
	font-size: 26px;
	text-align: center;
	text-decoration: none;
	color: #ccc3c3;
}

.about-us-box {
	position: relative;
	margin: 40px 0;
	height: 300px;
	background-size: cover;
	background-position: 0 65%;
}
.about-us-box1 {
	position: relative;
	margin: 40px 0;
	height: 800px;
	background-size: cover;
	background-position: 0 65%;
}
.top {
	background-image: url('../img/factory-small.jpg');
}
.middle {
	background-image: url('../img/kominek.jpg');
}
.bottom {
	background-image: url('../img/cutting.jpg');
}

.office {
	background-image: url('../img/office.jpg');
}

.about-us-text {
	position: absolute;
	bottom: 5px;
	padding: 20px 40px;
	text-align: center;
	color: #fff;
}
.about-us-text1 {
	position: relative;
	bottom: 5px;
	padding: 20px 40px;
	text-align: center;
	font-size: 16px;
	color: #ccc3c3;
}
.about-us-text2 {
	position: relative;
	bottom: 5px;
	padding: 20px 40px;
	text-align: center;
	font-size: 24px;
	color: #ccc3c3;
}
.about-us-text3 {
	position: relative;
	bottom: 5px;
	padding: 20px 40px;
	text-align: left;
	font-size: 24px;
	color: #333;
}
.about-us-text4 {
    text-indent: 30px;
	position: relative;
	bottom: 5px;
	padding: 20px 40px;
	font-size: 16px;
	color: #ccc3c3;
}
.about-us-text4 p {
   text-indent: 30px;
   text-align: left;
   text-align-last:left;
   text-justify: inter-word;
}

.about-us-text h3 {
	position: relative;
	margin-bottom: 10px;
	text-align: center;
	text-transform: uppercase;
}

.about-us-bg {
	position: absolute;
	bottom: 0;
	height: 35%;
	width: 100%;
	background-color: rgb(0, 0, 0, 0.4);
}

.services-list {
	display: inline-block;
	margin-left: -310px;
	width: 900px;
	text-align: left;
}

.services-list a {
	text-decoration: none;
	color: #333;
}
.services-list a:hover {
	color: #0086f3;
}

.services-list1 {
	display: inline-block;
	margin-right: -550px;
	width: 500px;
	height: 200px;
	text-align: left;
}

.services-list1 a {
	text-decoration: none;
	color: #333;
}
.services-list1 a:hover {
	color: #0086f3;
}

.row a {
	text-decoration: none;
	color: #333;
}

.row a:hover {
	text-decoration: none;
	color: #0086f3;
}
.card a {
	text-decoration: none;
	color: #333;
}
.card h5 {

    font-size: 20px;
	font-weight: bold;

}

.card-group {

	justify-content: center;
}

/*kontakt*/

.contact .fas {
	margin-right: 10px;
	font-size: 26px;
}

.contact .lokalization {
	margin-right: 10px;
	font-size: 36px;
}
.contact {
	position: relative;
	text-align: center;
	text-transform: uppercase;
	background-position: bottom;
	background-attachment: fixed;
	background-color: cover;
	z-index: 0;
}
.contact-shadow {
	position: absolute;
}

.sektor {
	display: inline-block;
	text-align: right;
}
.sektor1 {
	display: inline-block;
	text-align: right;
}
.realization {
	text-align: center;
	text-transform: uppercase;
	margin: 10px;
	font-size: 26px;
}

.wrapper a {
	display: inline-block;
	margin-right: auto;
}
.wrapper {
	margin: 0 auto;
	width: 100%;
	height: 100%;
	max-width: 1400px;
	max-height: 1200px;
}

.navbar-brand {
	padding: 20px;
}

/*.product {
    position: relative;
    height: 300px;
    background-size: cover;
    background-position: center;
    text-align: center;
    font-size: 16px;
    
    
}

.product p {
    text-transform: uppercase;
    transition: .3s;  
}
.product:hover p {

    transform: scale(1.2); 
}

/* footer */

.carousel-control-prev-icon,
.carousel-control-next-icon {
    /* Tworzy obrys wokół strzałki, czyniąc ją grubszą */
    filter: drop-shadow(1px 0 0 white) drop-shadow(-1px 0 0 white) drop-shadow(0 1px 0 white) drop-shadow(0 -1px 0 white);
    width: 4rem;  /* Opcjonalnie: powiększenie ikony */
    height: 4rem;
}
.carousel-indicators [data-bs-target] {
    width: 60px;       /* Domyślnie 30px - zwiększa długość */
    height: 6px;       /* Domyślnie 3px - zwiększa grubość */
    margin-right: 6px; /* Większy odstęp między przyciskami */
    margin-left: 6px;
}

.custom-accordion {
    max-width: 1000px;
    margin: 0 auto;
}

/* Styl pojedynczego elementu details */
.info-item {
    background: #2b2b2b; /* Ciemne tło pasujące do bg-dark */
    border: 1px solid #444;
    border-radius: 8px;
    margin-bottom: 15px;
    overflow: hidden;
    transition: all 0.3s ease;
}

.info-item[open] {
    border-color: #fff; /* Kolor blue-text przy otwarciu */
    box-shadow: 0 5px 15px rgba(0, 123, 255, 0.1);
}

/* Styl nagłówka (summary) */
.info-item summary {
    padding: 10px;
    list-style: none; /* Ukrywa domyślną strzałkę */
    cursor: pointer;
    display: flex;
    justify-content:space-between;
    align-items: center;
    font-weight: bold;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Usuwa standardowy trójkącik w Chrome/Safari */
.info-item summary::-webkit-details-marker {
    display: none;
}

/* Styl własnej strzałki FontAwesome */
.info-item summary .arrow {
    transition: transform 0.3s ease;
    color: #007bff;
}

.info-item[open] summary .arrow {
    transform: rotate(180deg);
	
	
}

/* Styl wnętrza po rozwinięciu */
.details-content {
    padding: 0 20px 20px 20px;
    color: #ccc;
    line-height: 1.6;
    border-top: 1px solid #3d3d3d;
}

/* Poprawka dla nagłówków wewnątrz */
.powietrze, .prąd {
    color: #007bff;
    font-size: 1.25rem;
    margin-top: 20px;
    margin-bottom: 10px;
    font-weight: 700;
}

.cena {
    color: #28a745; /* Zielony dla kwot */
    font-weight: bold;
    font-size: 1.2rem;
}

/* Linki wewnątrz rozwijanej listy */
.nav-link1 {
    color: #007bff;
    text-decoration: underline;
}

.nav-link1:hover {
    color: #fff;
}
footer {
	height: 80px;
	line-height: 80px;
	color: #ddd;
	background-color: #333;
	text-align: center;
	font-size: 20px;
}

.icon-box {
	margin-left: 50px;
}

.icon-box a {
	margin: 0 5px;
	color: #ddd;
	font-size: 30px;
	transition: color 0.3s;
}
.icon-box a:hover {
	color: #0086f3;
}

.carousel-item {
	height: 700px;
}
.carousel-caption {
	left: 0px;
	right: 0px;
	font-size: 22px;
	background-color: rgb(0, 0, 0, 0.3);
}
.crousel-indicators {
	padding-bottom: 20px;
}

.oferta i {
	margin-top: 20px;
	font-size: 62px;
}
.oferta-hover:hover {
	color: #0086f3;
}

.aboutus-card-tittle1 {
	font-size: 20px;
	text-transform: uppercase;
}
.aboutus-card-text1 {
	font-size: 14px;
}
.prąd {
	font-weight: bold;
}
.prąd1 {
	font-size: 30px;
	font-weight: bold;
}
.powietrze {
	font-weight: bold;
}
.program {
	font-weight: bold;
	font-size: 26px;
}
.card-title {
font-size: 20px;
}
.bg-transparent {

	font-size: 20px;
}

.navbar-nav .nav-link {
    line-height: 10px;
	
    padding-bottom: 15px;
	
	 /* Teraz wszystkie elementy, w tym dropdown, będą miały tę samą wysokość */
}
.nav-link.dropdown-toggle {
    display: flex;
  align-items: center;
}

.nav-link.dropdown-toggle i {
    margin-right: 12px; /* Odstęp ikony od tekstu */
	padding: 6px
}

@media (min-width: 375px) {
	.header-text1 {
		p {
			font-size: 16px;
			text-align: center;
		}
		h1 {
			font-size: 32px;
		}

	}
	.bg-transparent {

	font-size: 20px;
               }
	.header-text {
		p {
			font-size: 14px;
			text-align: center;
		}
	}
	.header-img1 {
		background-image: url('../img/koło.jpg');
	}
	.header-img {
		background-image: url('../img/koło.jpg');
	}

	.about-us-text1 {
		font-size: 16px;
	}

	.us {
		font-size: 16px;
	}
}

@media (min-width: 414px) {
	.about-us-text1 {
		font-size: 22px;
	}

	.header-img1 {
		background-image: url('../img/koło-small.jpg');
	}
	.header-img {
		background-image: url('../img/koło-small.jpg');
	}
}

@media (min-width: 768px) {
	.header-img1 {
		background-image: url('../img/koło.jpg');
	}
	.header-text1 {
		p {
			font-size: 26px;
		}
	}
	.about-us-text4 {
	font-size: 20px;

}
}

@media (min-width: 1200px) {
	.header-img1 {
		background-image: url('../img/koło.jpg');
	}
	.header-text1 {
		h1 {
			font-size: 86px;
		}
		
		p {
			font-size: 16px;
		}
	}
	.header-text {
		p {
			font-size: 20px;       
		}
	}

	.us {
		font-size: 26px;
	}
	.section-tittle {
		font-size: 26px;
	}
	.about-us-text4 p {
	
	font-size: 22px;

}


}
.card {
	display: inline-block;
	position: relative;

	margin: 20px 10px;
	height: 770px;
	perspective: 900px;
}

.img {
	width: 100%;
	height: 95%;
	background-position: center;
	background-size: cover;
	border-radius: 15px;
	transition: 0.8s;
}

.one {
	background-image: url('../img/projekt 2/forest-4434387_1280.jpg');
}
.two {
	background-image: url('../img/projekt 2/alpine-5455013_1280.jpg');
}
.three {
	background-image: url('../img/projekt 2/tree-64310_1280.jpg');
}

.text {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	padding: 30px;
	text-align: center;
	opacity: 0;
	background-image: linear-gradient(315deg, #fee2f8 0%, #dcf8ef 74%);
	transition: 0.8s;
}

/*h3 {


    margin-top: 450px;
    margin-bottom: 20px;

}*/

.text-one {
	transform: rotateX(-180deg);
}
.text-two {
	transform: rotateY(-180deg);
}

.card:hover .text {
	transform: rotateX(0);
	opacity: 1;
}

.card:hover .one {
	transform: rotateX(180deg);
	opacity: 0;
}
.card:hover .two {
	transform: rotateY(-180deg);
	opacity: 0;
}

.card:hover .three {
	animation: up 0.8s;
}

.card:hover .text-three {
	animation: down 0.8s;
}

@keyframes up {
	0% {
		transform: translateY(0);
		opacity: 1;
	}

	50% {
		transform: translateY(-60%);
		opacity: 1;
	}

	80% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes down {
	0% {
		transform: translateY(0);
		opacity: 1;
	}

	50% {
		transform: translateY(60%);
		opacity: 1;
	}

	100% {
		z-index: 1;
	}
}
summary {
	
	font-size: 26px;
	background: none;
	
	
}

summary::-webkit-details-marker {
	display: none;
}

/* Dodajemy własny symbol + przed tekstem */
summary::before {
	content: '+ ';
	color: #0086f3;
}

/* Zmiana na - po otwarciu */
details[open] summary::before {
	content: '- ';
	color: #fff;
}

li {
	margin: 0 20px;
	font-size: 24px;
	background-color: rgb(175, 175, 175);
}
span1 {
	margin: 10px 30px;
}
.oferta-hover i {
    transition: color 0.3s ease, transform 0.3s ease;
}

/* Zmiana koloru na niebieski PAROCHEM przy najechaniu na kartę */
.oferta-hover:hover i {
    color: #0d6efd !important; /* kolor niebieski Bootstrap / Parochem */
    transform: scale(1.1);
}
.oferta.bg-light {
    background-color: #f8f9fa !important;
}

/* Styl karty oferty */
.oferta-hover {
    background-color: #ffffff;
    border-radius: 15px;
    padding: 30px 20px;
    margin-bottom: 20px; /* Margines dla wersji mobilnej */
    border: 1px solid #ececec;
    transition: all 0.3s ease-in-out;
    height: 100%; /* wyrównanie wysokości */
}

/* Efekt najechania - karta unosi się i dostaje mocniejszy cień */
.oferta-hover:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
    border-color: #0d6efd; /* Kolor niebieski Parochem */
}

/* Styl ikon wewnątrz kart */
.oferta-hover i {
    font-size: 3rem;
    color: #333;
    margin-bottom: 15px;
    transition: transform 0.3s ease;
}

.oferta-hover:hover i {
    transform: scale(1.1);
}

/* Styl linków (tytułów) */
.aboutus-card-tittle1 a {
    color: #212529 !important; /* Ciemny tekst */
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    transition: color 0.3s;
}

.oferta-hover:hover .aboutus-card-tittle1 a {
    color: #0d6efd !important;
}

/* Wyśrodkowanie podkreślenia pod nagłówkiem */
.underline {
    width: 70px;
    height: 4px;
    background-color: #0d6efd;
    margin: 10px auto 40px;
}
#oferta-energetyka {
    background-color: #ffffff;
    background-image: 
        radial-gradient(at 0% 0%, rgba(177, 198, 227, 0.05) 0px, transparent 50%),
        radial-gradient(at 100% 100%, rgba(51, 54, 58, 0.08) 0px, transparent 50%) !important;
}
.separator-line {
    height: 5px;
    width: 60%; /* Linia nie zajmuje całej szerokości */
    margin: 0 auto; /* Wyśrodkowanie */
    background: linear-gradient(to right, transparent, rgba(4, 10, 19, 0.2), transparent);
}
.navbar-nav .nav-link {
    display: flex;
    align-items: center; /* Centrowanie tekstu linku w pionie */
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

/* Wyrównanie obrazka logo z tekstem */
.navbar-brand {
    display: flex;
    align-items: center;
}

