html, body{
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
   overflow-x: hidden;
            margin: 0;
}
.nav-link{
  font-family: "Teko", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  text-transform: uppercase;
  font-size: 1.5rem
}
.lead{
	background-color:#eee;
	padding:80px 0px;
}
.lead p{
	margin-top:40px;
	font-weight:200;
	font-size:1.4rem;
	line-height:1.5;
}
h1, h2, h3, h4, h5{
font-family: "Teko", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  text-transform: uppercase;
  color:#21586E;
}
h1{
	font-size:3rem;
}

.accordion h3{
	margin-bottom:0px !important;
}
.pakiety{
	padding:80px 0px;
	background-color:#123965;
		
}
.logo img{
	border-radius:20px;
}

.about{
	padding:80px 30px;
	
	font-weight:300;
	font-size:1.3rem;
	line-height:2.5;	
}

.overview{
	padding:80px 0px;
	background-color:#123965;
	color:#fff;
}

.overview a{
	color:#fff;
	text-decoration:none;	
}	

.overview i{
	font-size:3rem;
	margin-bottom:15px;
}

.overview strong{
	font-weight:600 !important;
}


.overview .col-md-2 {
    margin-bottom:10px;
    cursor: pointer;
    padding: 10px;
}

.overview .col-md-2 i {
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.overview .col-md-2 p {
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    margin: 0;
}

.overview .col-md-2:hover i {
    transform: scale(1.3); /* Większe powiększenie ikony */
}

.overview .col-md-2:hover p {
    transform: scale(1.15); /* Mniejsze powiększenie tekstu */
}


.branze{
	padding:80px 0px;
	background-color:#224E80;
	color:#fff;
}

.branze a{
	color:#fff;
	text-decoration:none;	
}	

.branze i{
	font-size:3rem;
	margin-bottom:15px;
}

.branze strong{
	font-weight:600 !important;
}
/* Efekt shake dla ikon po najechaniu na col-md */
.branze .col-md {
    cursor: auto;
    transition: transform 0.3s ease;
}

.branze .col-md:hover {
    transform: translateY(-5px); /* Lekkie uniesienie całego elementu */
}

.branze .col-md:hover i {
    animation: shake 0.5s ease-in-out;
    display: inline-block; /* Ważne dla transformacji */
}

.branze1{
		padding:80px 0px;
	
}



.branze1 {
    display: block; 
}

.branze {
    display: none;
}

/* Poniżej 1100px: odwrotnie */
@media (max-width: 1100px) {
    .branze1 {
        display: none;
    }
    
    .branze {
        display: block; 
    }
}


.reference{
	padding:80px 0px;
	background-color:#fff;
}


.pagetxt, .pagetxt p, .pagetxt li{
	font-size:1.2rem;
}

.pagetxt p{
	text-align:justify;
}

.pagetxt  img{
	max-width:100% !important;
	height:auto !important;
}

.footer{
	padding:80px 0px;
	background-color:#021832;
}

/* Definicja animacji shake */
@keyframes shake {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-3px); }
    20%, 40%, 60%, 80% { transform: translateX(3px); }
}


.news{
	margin-top:20px;
	border:1px solid #ccc;
	border-radius:10px;
	padding:5px;
	background:#fff;
}

.news img{
	border-radius:10px;
}
.news h5{
	margin-top:15px;
	padding:5px;
}


.single_news{
	
}

.single_news .lead_news{
	
	font-weight:600;
	font-size:1.2rem;
	line-height:1.5;
}

.single_news .txt_news{
	font-weight:400;
	font-size:1.2rem;
	line-height:1.5;
}

.single_news img{
	max-width:100%;
	height:auto !important;
}

.carousel-item {
    display: flex;
    align-items: center; /* Wyśrodkowanie pionowe */
    justify-content: center; /* Wyśrodkowanie poziome */
    height: 50vh; /* Taka sama wysokość jak zdjęcie */
}

.carousel-item img {
    max-height: 50vh;
    width: auto !important;
    max-width: 100%; /* Zapobiega wychodzeniu poza ekran */
}
/* BARDZO SZYBKA WERSJA */
.animated-image {
    position: fixed;
    top: 50%;
    right: -50vw; /* Początkowo poza ekranem po prawej (całkowicie schowany) */
    transform: translateY(-50%);
    width: 50vw;
    max-height: 80vh;
    transition: all 0.3s ease-out; /* Płynniejsze przejście */
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
    opacity: 0;
        display: flex;
    flex-direction: column; /* TYLKO TO DODAJ */
    align-items: center; 
}

.animated-image a.btn {
    pointer-events: auto;
}

.animated-image.active {
    right: 0; /* Pozycja końcowa - przy prawej krawędzi */
    opacity: 1;
}

.animated-image img {
    max-width: 90%;
    max-height: 80vh;
    object-fit: contain;
}