/*Google fonts*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');
* {
    font-family: "Poppins", sans-serif;
    margin: 0;
    padding: 0;
    scroll-padding-top: 1rem;
    scroll-behavior: smooth;
    list-style: none;
    text-decoration: none;
    box-sizing: border-box;

}
/*Variables*/
:root {
    --main-color: #0d3a75 ;
    --text-color: #020102;
    --bg-color:#f8f9fa;
    --main-color50:rgba(13, 58, 117, 0.9);
    --bg-color50: rgba(255, 255, 255, 0.41);
}
section{
    padding: 1rem 0rem 2rem;
    background-color: #f8f9fa;
    
}
img {
    width: 100%;
}
body {
    color: var(--text-color)
}
.container {
    max-width: 1300px;
    margin-left: auto;
    margin-right: auto;
    padding: 0;

}
header {
    display: block;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background-color: var(--bg-color);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);

}
.nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 35px;
    
}
#menu-icon {
    font-size: 24px;
    cursor: pointer;
    color: var(--text-color);
    display: none;
}
.phone-icon{
    font-size: 24px;
    cursor: pointer;
    color: var(--text-color);
    display: none;
}
.phone{
    color: var(--bg-color);
    font-size: 1rem;
    font-weight: 600;
    background-color: #0d3a75;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 1rem;
}
.logo {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--text-color);

}
.logo span {
    color: var(--main-color);
}
.logo img {
    width: 200px;
    height: auto;
}
.navbar {
    display: flex;
    column-gap: 2rem;
}

.navbar a {
    color: var(--text-color);
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: 500;
}

.navbar a:hover,
.navbar .active {
    color: var(--main-color);
    border-bottom: 3px solid var(--main-color);

}

.home {
    max-width: 100%;
    margin: auto;
    width: 100%;
    min-height: 640px;
    display: flex;
    align-items: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right;
    background-blend-mode: color-burn;
    background-blend-mode: lighten;
    border-radius: 2rem;
}
.home-text{
    padding: 2rem;
    justify-content: space-between;
}
/*O nas*/
.o-nas {
    background-color: #f8f9fa; /* Jasnoszare tło */
    padding: 40px 20px; /* Padding w sekcji */
    text-align: center; /* Wyśrodkowanie tekstu */
}

.o-nas h2 {
    font-size: 1.5rem; /* Mniejszy rozmiar nagłówka */
    margin-bottom: 20px; /* Odstęp poniżej nagłówka */
    color: var(--main-color); /* Kolor nagłówka */
}

.o-nas p {
    font-size: 0.9rem; /* Mniejszy standardowy rozmiar tekstu */
    margin-bottom: 30px; /* Odstęp poniżej tekstu */
    line-height: 1.5; /* Wysokość linii dla lepszej czytelności */
    color: #333; /* Kolor tekstu */
}

.o-nas-details {
    display: flex; /* Układ w wierszu */
    justify-content: center; /* Wyśrodkowanie */
    flex-wrap: wrap; /* Zawijanie do nowej linii */
    margin-bottom: 30px; /* Odstęp poniżej detali */
}

.detail-box {
    background: white; /* Tło dla boxów */
    border: 1px solid #e1e1e1; /* Lekka ramka */
    border-radius: 8px; /* Zaokrąglenie rogów */
    padding: 15px; /* Mniejszy padding wewnętrzny */
    margin: 10px; /* Odstęp między boxami */
    width: 240px; /* Szerokość boxu */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* Cień dla boxów */
    transition: transform 0.3s; /* Animacja dla transformacji */
}

.detail-box:hover {
    transform: scale(1.05); /* Powiększenie boxu przy najechaniu */
}

.detail-box i {
    font-size: 2rem; /* Rozmiar ikony */
    color: var(--main-color); /* Kolor ikony */
    margin-bottom: 10px; /* Odstęp poniżej ikony */
}

.reasons-list {
    list-style-type: none; /* Usunięcie punktów z listy */
    padding: 0; /* Usunięcie paddingu */
}

.reasons-list li {
    font-size: 0.9rem; /* Mniejszy rozmiar tekstu w liście */
    margin: 10px 0; /* Odstęp między punktami */
    color: #333; /* Kolor tekstu */
}

/*Uslugi*/
.uslugi {
    background-color: #f8f9fa;
}
.uslugi-text {
    padding-top: 50px;
    text-align: center;
}
.uslugi-text span{
    font-weight: 800;
    color: var(--main-color);
    font-size: 1.5rem;
    text-align: center;
    
}
.uslugi-text h3{
    font-size: 0.938rem;
    font-weight: 500;
}
.uslugi-pozycje{
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
}
.uslugi-pozycje .box{
    flex: 1 1 17rem;
    position: relative;
    height: 250px;
    border-radius: 0.5rem;
    overflow: hidden;
    cursor: pointer;
}
.uslugi-pozycje .box img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    overflow: hidden;
}
.uslugi-pozycje .box img:hover{
    transform: scale(1.1);
    transition: 0.5s;
}
.uslugi-pozycje .box h2{
    position: absolute;
    bottom: 1rem;
    left: 1rem;
    font-weight: 400;
    font-size: 1rem;
    background: var(--bg-color);
    padding: 8px;
    border-radius: 0.5rem;
}
.uslugi-pozycje .box:hover h2{
    background: var(--main-color);
    color: var(--bg-color);
}
/*Pomoc drogowa*/
.pomoc-drogowa {
    background-color: #f8f9fa; /* Jasnoszare tło */
    padding: 40px 20px; /* Padding w sekcji */
    text-align: center; /* Wyśrodkowanie tekstu */
}

.pomoc-drogowa h2 {
    font-size: 1.5rem; /* Rozmiar nagłówka */
    margin-bottom: 20px; /* Odstęp poniżej nagłówka */
    color: var(--main-color); /* Kolor nagłówka */
}

.pomoc-drogowa p {
    font-size: 0.9rem; /* Standardowy rozmiar tekstu */
    margin-bottom: 30px; /* Odstęp poniżej tekstu */
    line-height: 1.5; /* Wysokość linii dla lepszej czytelności */
    color: #333; /* Kolor tekstu */
}

/* Główna zawartość sekcji pomoc drogowa - obrazek + usługi obok siebie */
.pomoc-drogowa-content {
    display: flex; /* Układ flexbox - obok siebie */
    justify-content: space-between; /* Odstęp między obrazkiem a usługami */
    align-items: flex-start; /* Wyrównanie elementów do góry */
    gap: 2rem; /* Odstęp między elementami */
}

/* Sekcja z usługami */
.pomoc-drogowa-services {
    flex: 1; /* Zajmowanie reszty miejsca na stronie */
    display: flex;
    flex-direction: column; /* Ułożenie usług w kolumnie */
    gap: 1.5rem; /* Odstępy między usługami */
}

/* Styl okienek z usługami */
.service-box {
    background: white; /* Tło dla boxów */
    border: 1px solid #e1e1e1; /* Lekka ramka */
    border-radius: 8px; /* Zaokrąglenie rogów */
    padding: 15px; /* Padding wewnętrzny */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* Cień dla boxów */
    transition: transform 0.3s; /* Animacja dla transformacji */
}

.service-box:hover {
    transform: scale(1.05); /* Powiększenie boxu przy najechaniu */
}

.service-box i {
    font-size: 2rem; /* Rozmiar ikony */
    color: var(--main-color); /* Kolor ikony */
    margin-bottom: 10px; /* Odstęp poniżej ikony */
}

/* Sekcja dla obrazka */
.pomoc-drogowa-image {
    flex: 30%; /* Stała szerokość obrazka */
    padding-left: 20px; /* Odstęp od lewej strony */
}

.pomoc-drogowa-image img {
    width: 100%; /* Obraz zajmuje 100% szerokości */
    height: auto; /* Zachowanie proporcji obrazu */
    border-radius: 8px; /* Zaokrąglone rogi obrazka */
}

/* Sekcja kontaktowa */
.contact-info {
    margin-top: 30px; /* Odstęp powyżej sekcji kontaktu */
}

.contact-info h3 {
    font-size: 1.2rem; /* Rozmiar nagłówka w sekcji kontaktowej */
}

.contact-info p {
    font-size: 0.9rem; /* Mniejszy rozmiar tekstu w sekcji kontaktowej */
    margin: 5px 0; /* Odstęp między punktami */
}

.contact-info a {
    color: #007bff; /* Kolor linków */
    text-decoration: none; /* Usunięcie podkreślenia */
}

.contact-info a:hover {
    color: var(--main-color); /* Zmiana koloru przy najechaniu */
}

/* Responsywność - zmiana układu na mniejszych ekranach */
@media (max-width: 1000px) {
    .pomoc-drogowa-content {
        flex-direction: column; /* Zmiana układu na kolumnę */
        align-items: center; /* Wyśrodkowanie elementów w kolumnie */
    }

    .pomoc-drogowa-image {
        padding-left: 0; /* Usunięcie odstępu */
        margin-bottom: 20px; /* Dodanie odstępu poniżej obrazka */
    }

    .pomoc-drogowa-services {
        width: 100%; /* Usługi zajmują całą szerokość */
    }
}

/*opinie*/
.opinie-section {
    background-color: #f8f9fa; /* Jasne tło */
    padding: 40px 20px; /* Odstępy */
    text-align: center; /* Wyśrodkowanie tekstu */
}

.opinie-section h2 {
    font-size: 1.5rem; /* Rozmiar nagłówka */
    color: #0d3a75; /* Głęboki niebieski */
    margin-bottom: 20px;
    font-weight: 700;
}

.opinie-section p {
    font-size: 1rem; /* Rozmiar tekstu */
    color: #333; /* Ciemnoszary kolor tekstu */
    margin-bottom: 30px;
    line-height: 1.6; /* Zwiększenie odstępów w liniach */
}

.opinie-wrapper {
    display: flex; /* Flexbox dla przycisków i kontenera */
    align-items: center; /* Wyrównanie w pionie */
    justify-content: center; /* Wyśrodkowanie */
}

.prev-button, .next-button {
    color: var(--main-color); /* Kolor tekstu */
    border: none; /* Brak obramowania */
    padding: 10px; /* Padding wewnętrzny */
    cursor: pointer; /* Zmiana kursora */
    font-size: 1.5rem; /* Rozmiar czcionki */
    border-radius: 5px; /* Zaokrąglone rogi */
    margin: 0 10px; /* Odstępy między przyciskami a kontenerem */
}

.opinie-container {
    display: flex; /* Flexbox - wyświetla recenzje obok siebie */
    gap: 20px; /* Odstępy między recenzjami */
    overflow-x: hidden; /* Włączenie przewijania poziomego */
    scroll-behavior: smooth; /* Płynne przewijanie */
    max-width: 1000px; /* Maksymalna szerokość kontenera */
}

/* Stylizacja pojedynczej opinii jako dymek czatu */
.opinia {
    background-color: #fff; /* Tło dymka */
    padding: 15px; /* Padding */
    border-radius: 15px; /* Zaokrąglone rogi dymka */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); /* Lekki cień */
    text-align: left; /* Wyrównanie tekstu do lewej */
    position: relative; /* Pozwala na zdefiniowanie pseudo-elementów */
    min-width: 250px; /* Minimalna szerokość dymka */
}

/* Nagłówek opinii z ikoną i nazwą autora */
.opinia-header {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    size: 1px 20px;
}
.opinia-avatar {
    width: 50px;
    margin-right: 10px;
}

.opinia-header i {
    font-size: 2rem; /* Rozmiar ikony */
    color: #0d3a75; /* Kolor ikony */
    margin-right: 10px; /* Odstęp między ikoną a tekstem */
}

.opinia-header h4 {
    font-size: 1.1rem; /* Rozmiar imienia */
    color: #0d3a75; /* Kolor imienia */
    margin: 0; /* Usunięcie domyślnych marginesów */
}

.opinia-header span {
    color: #ffd700; /* Złoty kolor dla ocen */
    font-size: 1rem; /* Rozmiar oceny */
}

/* Stylizacja dla responsywności */
@media (max-width: 1000px) {
    .opinie-container {
        flex-direction: row; /* Utrzymanie układu poziomego na mniejszych ekranach */
        align-items: center; /* Wyśrodkowanie dymków */
    }

    .opinia {
        max-width: 30px;
        min-width:200px /* Dymki zajmują całą szerokość na mniejszych ekranach */
    }

    .opinia p {
        font-size: 14px;
    }
}

/*Kontakt*/
.kontakt-box{
    padding: 2rem;
    gap: 1rem;
    display: flex;
    justify-content: space-between;
    padding-bottom: 50px;
    text-align: left;
}
.opis{
    padding-left: 0rem;
    font-size: 1rem;
    padding-top: 50px;
    color: var(--main-color);
    font-weight: 800;
    text-align: center;
}
.kontakt-box .dane{
    display: flex;
    flex-direction: column;
    font-size: 14px;
}
.kontakt-box .dane h3 {
    display: flex;
    line-height: 1.5;
    padding-bottom: 10px;
    font-size: 1.25rem;
    text-align: center;
}
.kontakt-box .dane a{
    color: var(--text-color);
    line-height: 2;
}

.kontakt-box .dane table{
    line-height: 2;
}
.kontakt-box .dane i{
    margin-right: 10px;
}
.kontakt-box td:nth-child(1){
    padding-right: 20px;
}
/*Stopka*/
.footer {
    background: var(--text-color);
    color: #fff;
    border-top: 2px solid var(--main-color);
    width: 100%; 
}

.footer-container {
    padding: 2rem;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    text-align: left;
}
.footer-container .logo{
    color: var(--bg-color);
    margin-bottom: 1rem;
}
.footer-container .footer-box {
display: flex;
flex-direction: column;
}
.social {
    display: flex;
    align-items: center;
}
.social a {
    font-size: 24px;
    color:  var(--bg-color);
    margin-right: 1rem;
}
.footer-box h3 {
    font-size: 1.1rem;
    font-weight: 400;
    margin-bottom: 1rem;
}
.footer-box a,
.footer-box p {
    color: #818181;
    margin-bottom: 3px;
}
.footer-box a:hover {
    color: var(--bg-color);
}
.social a:hover {
    color:  var(--main-color);
}
.copyright {
    padding: 20px;
    font-size: 12px;
    text-align: center;
    color: var(--bg-color);
    background: var(--text-color);
}
/*Making responsible*/

@media (max-width:1300px) {
    .container{
        margin-left: 1rem;
        margin-right: 1rem;

    }
}
@media (max-width: 991px) {
    .nav {
        padding: 15px 20px;
    }
    section {
        padding: 3rem 0 1rem;
    }
    .home-text {
        padding: 2rem;
    }
    .home-text h1 {
        font-size: 2.1 rem;
    }
    .home{
        width:100%;
        padding: 0.5rem;
    }
    .uslugi-text {
        padding-top: 0px;
    }
}
@media (max-width:1015px){
    #search-icon {
        color: var(--text-color);
    }
    #cookies{
        padding-bottom: 1rem;
    }
    #serviceTable{
        max-width: 100%;
    }
    .cennik{
        max-width: 100%;
    }
    
}
@media (max-width: 870px){
    .search-box input{
        padding: 15px;
    }

    .nav{
        padding: 10px 0;
    }
    #menu-icon {
        display: initial;
    }
    .phone-icon{
        display: initial;
    }
    .phone{
        display: none;
    }
    .navbar{
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        display: flex;
        flex-direction: column;
        background: var(--bg-color);
        row-gap: 0.5rem;
        text-align: center;
        box-shadow: 4px 4px 20px rgba(190, 136, 35, 0.2);
        clip-path: circle(0% at 0% 0%);
        transition: 0.6s;
    }
    .navbar a {
        display: block;
        padding: 15px;
    }
    .navbar a:hover,
    .navbar .active {
        border-bottom: none;
        background: var(--main-color);
        color: var(--bg-color);
    }
    
    .navbar.active{
        clip-path: circle(144% at 0% 0%);
    }
    .logo img {
        width: 130px; /* Mniejsza szerokość logo na telefonie */
    }
    .slider{
        margin-top: 10px;
    }
}
    @media (max-width: 607px) {
        .footer-container{
            display: grid;
            grid-template-columns: 1fr 1fr;
            padding: 1rem;
        }
    }
    @media (max-width: 900px) {
        .kontakt-box{
            display: grid;
            padding: 1rem;
        }
        .kontakt-box iframe{
            max-width: 100%;
        }

    }

/*SLIDER*/
.slider{
    display: flex;
	position: relative;
    flex-wrap: wrap;
	width: 100%;
	background: var(--bg-color);
    margin-top: 125px; /* darckblue */
}
.myslide{
	height: 555px;
    width: auto;
    flex: 1 1 17rem;
    position: relative;
	display: none;
	overflow: hidden;
    border-radius: 0.5rem;
    object-fit: cover;
}

.prev, .next{
	position: absolute;
	top: 50%;
	transform: translate(0, -50%);
	font-size: 20px;
	padding: 15px;
	cursor: pointer;
	color: #fff;
	transition: 0.1s;
	user-select: none;
}
.prev:hover, .next:hover{
	color: #3c3f41; /* blue */
}
.next{
	right: 0;
}
.dotsbox{
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	bottom: 20px;
	cursor: pointer;
}
.dot{
	display: inline-block;
	width: 10px;
	height: 10px;
	border: 2px solid #fff;
	border-radius: 50%;
	margin: 0 10px;
	cursor: pointer;
}
/* /2 */

/* javascript */
.active, .dot:hover{
	border-color:var(--main-color); /* blue */
}
/* /javascript */

/* muslide add fade */
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: 0.8}
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: 0.8}
  to {opacity: 1}
}
/* /muslide add fade */

/* 3 */
.txt{
	position: absolute;
	color:var(--text-color);
	letter-spacing: 0.5px;
	line-height: 28px;
	top: 70%;
	left: 10%;
	-webkit-animation-name: posi;
  	-webkit-animation-duration: 2s;
  	animation-name: posi;
  	animation-duration: 2s;
	z-index: 1;
    background-color: var(--bg-color50);
    backdrop-filter: blur(5px);
    border-radius: 1rem;
    background-size: cover;
    padding: 1.25rem;
    line-height: 1.2;
    
}

@-webkit-keyframes posi {
  from {left: 35%;}
  to {left: 10%;}
}


@keyframes posi {
  from {left: 35%;}
  to {left: 10%;}
}

.txt h1{
	color: var(--main-color); /* blue */
	font-size: 34px;
	margin-bottom: 10px;
    font-weight: 800;
}
.txt p{
	font-weight:500;
	font-size: 15px;
    color: var(--text-color);
}
/* /3 */

/* 4 */
.slider .myslide img{
	transform: scale(1.5, 1.5);
	-webkit-animation-name: zoomin;
  	-webkit-animation-duration: 40s;
  	animation-name: zoomin;
  	animation-duration: 40s;
    width: 100%;
    height: 100%;
    object-fit: cover;
    overflow: hidden;
}
@-webkit-keyframes zoomin {
  from {transform: scale(1, 1);}
  to {transform: scale(1.5, 1.5);}
}


@keyframes zoomin {
  from {transform: scale(1, 1);}
  to {transform: scale(1.5, 1.5);}
}
/* /4 */



/* 5 */
@media screen and (max-width: 800px){
	.myslide{
		height: 550px;
        width: auto;
        border-radius: 1rem;
        overflow: hidden;
        
	}
    .myslide .img{
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        overflow: hidden;
    }
	.txt{
		letter-spacing: 0px;
		line-height: 25px;
		top: 70%;
		left: 40%;
		transform: translate(-50%, -50%);
		-webkit-animation-name: posi2;
		-webkit-animation-duration: 2s;
		animation-name: posi2;
		animation-duration: 2s;
	}

	@-webkit-keyframes posi2 {
	  from {top: 35%;}
	  to {top: 70%;}
	}


	@keyframes posi2 {
	  from {top: 35%;}
	  to {top: 70%;}
	}

	.txt h1{
		font-size: 25px;
	}
	.txt p{
		font-size: 12px;
        line-height: 15px;
	}
    .slider{
        margin-top: 60px;
    }

}
/* /5 */

/* 6 */
@media screen and (max-width: 520px){
	.txt h1{
		font-size: 30px;
		margin-bottom: 20px;
}
}
/* /6 */
.cennik{
    display: flex;
    justify-content: center;
    padding-top: 10rem;
    padding-bottom: 1rem;
    font-size: 13px;
    color:var(--bg-color);
    max-width: 100%;
    
}
#serviceTable{
    max-width: 100%;
    width: 800px;
    border-collapse:collapse;
    
}

.table-container{
    background-color: var(--main-color50);
    padding: 1rem;
    border-radius: 1rem;
    overflow-x: auto;

}
.table-container th{
    padding: 5px;
    font-weight: 800;
    font-size: 14px;
    
}
.table-container td{
    padding: 8px;
    font-weight: 200;
    border-bottom: solid #818181;
    padding-top: 0.5rem;
    border-width: 0.5px;
}
.table-container td:nth-child(2){
    text-align: center;
}
.category td{
    font-weight: 600;
    text-align: center;
    background-color: var(--bg-color);
    color: var(--text-color);
    border-radius: 1rem;
    border-bottom: 0;
    padding-top:5px;
}
.opis-cennika{
    margin: auto;
    padding: 1rem;
    text-align: center;
}
#cookies{
    position: fixed;
    width: 100%;
    background-color: var(--main-color50);
    z-index: 1;
    bottom: 0;
    display: none;
    margin: auto;
    

}
.cookies{
    min-height: 70px;
    display: flex;
    justify-content:center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10;
}
.cookies p{
    font-size: 12px;
    color: var(--bg-color);
    padding: 1rem;
}
#cookies-button{
    border-radius: 5px;
    display: flex;
    font-size: 12px;
    padding: 2px;
    border: solid var(--bg-color);
    background-color: var(--bg-color);
    color: var(--text-color);

}
.polityka-prywatnosci{
    padding-top: 13rem;
    padding-bottom: 5rem;
    font-size: 14px;
    max-width: 1200px;
}
.polityka-prywatnosci h1 {
    padding-bottom: 20px;
    font-size: 24px;
}
.polityka-prywatnosci h2 {
    padding-bottom: 5px;
    padding-top: 10px;
    font-size: 18px;
}


