*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Montserrat',sans-serif;
}

body{
background:#111;
color:white;
overflow-x:hidden;
padding-top:120px;

min-height:100vh;
display:flex;
flex-direction:column;
}
/* ===== NAV ===== */

nav{
position:fixed;
top:0;
width:100%;
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 40px;
background:rgba(0,0,0,0.9);
z-index:1000;
border-bottom:3px solid #ffd000;
}

.logo img{
height:90px;
width:auto;
display:block;
}

.nav-links{
display:flex;
gap:25px;
}

nav a{
color:white;
text-decoration:none;
font-weight:600;
font-size:14px;
}

nav a:hover{
color:#ffd000;
}

/* ===== HERO ===== */

.hero{
min-height:80vh;
background:
linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.85)),
url('https://images.unsplash.com/photo-1597007066703-8f4c70d0a6d0');
background-size:cover;
background-position:center;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
padding:40px 20px 40px;
}

.hero h1{
font-size:48px;
font-weight:800;
color:#ffd000;
text-shadow:0 0 20px rgba(255,208,0,0.5);
}

.hero p{
margin-top:15px;
font-size:18px;
opacity:0.9;
}

/* ===== BOOKING ===== */

.booking-wrapper{
margin-top:-60px;
display:flex;
justify-content:center;
padding:0 15px 60px;
}

.booking-box{
background:rgba(0,0,0,0.9);
border:2px solid #ffd000;
border-radius:20px;
padding:25px;
width:100%;
max-width:1000px;
box-shadow:0 0 40px rgba(255,208,0,0.3);
}

.booking-box h2{
margin-bottom:25px;
text-align:center;
font-size:22px;
color:#ffd000;
}

.form-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:15px;
}

input, textarea{
padding:14px;
border-radius:10px;
border:2px solid #333;
background:#1c1c1c;
color:white;
font-size:14px;
width:100%;
max-width:100%;
box-sizing:border-box;
}

input:focus, textarea:focus{
border-color:#ffd000;
outline:none;
}

textarea{
grid-column:1/-1;
resize:none;
height:90px;
}

button{
grid-column:1/-1;
padding:16px;
border:none;
border-radius:10px;
background:#ffd000;
color:black;
font-size:16px;
font-weight:800;
cursor:pointer;
}

button:hover{
background:black;
color:#ffd000;
border:2px solid #ffd000;
}

/* ===== FEATURES ===== */

.features{
padding:70px 20px;
background:#181818;
text-align:center;
}

.features h2{
margin-bottom:40px;
font-size:26px;
color:#ffd000;
}

.feature-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
max-width:1200px;
margin:auto;
}

.feature-card{
background:#222;
padding:25px;
border-radius:15px;
border:1px solid #333;
}

footer{
background:black;
padding:25px;
text-align:center;
border-top:2px solid #ffd000;
font-size:14px;
margin-top:auto;
}

/* ========================= */
/* 📱 MOBILE VERSION */
/* ========================= */

@media(max-width:768px){

    body{
padding-top:120px;
}

nav{
flex-direction:column;
gap:10px;
padding:15px;
}

.nav-links{
flex-direction:row;
justify-content:center;
flex-wrap:wrap;
gap:15px;
}

.hero h1{
font-size:30px;
}

.hero p{
font-size:15px;
}

.booking-wrapper{
margin-top: -40px;
}

.form-grid{
grid-template-columns:1fr;
}

.feature-grid{
grid-template-columns:1fr;
}

.booking-box{
padding:20px;
}

button{
font-size:18px;
padding:18px;
}

/* LOGO NA TELEFONIE */
.logo img{
height:130px;
width:auto;
}

}
/* ===== DATE & TIME FIX ===== */

.form-field{
display:flex;
flex-direction:column;
}

.form-field label{
font-size:13px;
margin-bottom:5px;
color:#aaa;
}

.form-field input{
width:100%;
}

/* FIX DATE & TIME */

input[type="date"],
input[type="time"]{
width:100%;
max-width:100%;
box-sizing:border-box;
display:block;
-webkit-appearance:none;
appearance:none;
border:2px solid #333;
background:#1c1c1c;
color:white;
border-radius:10px;
}

input[type="date"]::-webkit-calendar-picker-indicator,
input[type="time"]::-webkit-calendar-picker-indicator{
filter:invert(1);
opacity:0.8;
}

/* iPhone fix */

@media(max-width:768px){

input[type="date"],
input[type="time"]{
font-size:16px;
height:48px;
padding:10px;
}

.booking-box{
overflow:hidden;
}

}

/* PROMOCJA BLIK */

.promo-box{
display:flex;
align-items:center;
justify-content:center;
gap:25px;
margin-bottom:40px;
padding:20px;

border:2px solid #ffd000;
border-radius:20px;

background:rgba(0,0,0,0.85);

max-width:700px;
margin-left:auto;
margin-right:auto;

box-shadow:0 0 30px rgba(255,208,0,0.25);
}

@media(max-width:768px){

.promo-box{
position:relative;
top:50px;
}

}


.promo-box img{
width:160px;
height:auto;
}

.promo-text h3{
color:#ffd000;
font-size:22px;
margin-bottom:6px;
}

.promo-text p{
font-size:15px;
color:#ddd;
}

.promo-text strong{
color:#ffd000;
}

/* TELEFONY */

@media(max-width:768px){

.promo-box{
flex-direction:column;
text-align:center;
padding:18px;
}

.promo-box img{
width:140px;
}

}

@media (max-width:768px){

.passengers-field{
order:5;
}

.name-field{
order:6;
}

}

/* ===== COOKIE BANER ===== */

#cookie-banner{
position:fixed;
bottom:0;
left:0;
width:100%;
background:#000;
color:white;
padding:20px;
display:flex;
justify-content:space-between;
align-items:center;
gap:20px;
flex-wrap:wrap;
z-index:9999;
border-top:2px solid #ffd000;
}

#cookie-banner p{
font-size:14px;
max-width:700px;
line-height:1.5;
}

#cookie-banner a{
color:#ffd000;
text-decoration:none;
font-weight:600;
}

#cookie-banner button{
background:#ffd000;
color:black;
border:none;
padding:14px 28px;
font-weight:800;
border-radius:10px;
cursor:pointer;
font-size:16px;
transition:0.2s;
}

#cookie-banner button:hover{
background:white;
}

/* ===== MOBILE ===== */

@media(max-width:768px){

#cookie-banner{
flex-direction:column;
text-align:center;
padding:18px;
}

#cookie-banner p{
font-size:15px;
}

#cookie-banner button{
width:100%;
max-width:300px;
font-size:18px;
padding:16px;
}

}

/* ===== COOKIE ANIMATION ===== */

#cookie-banner{
transform:translateY(100%);
opacity:0;
animation:cookieSlideUp 0.6s ease forwards;
}

@keyframes cookieSlideUp{
to{
transform:translateY(0);
opacity:1;
}
}

/* ===== PAGE HEIGHT FIX ===== */

.features,
.booking-wrapper,
.hero{
min-height:60vh;
}

/* ===== CENNIK PAGE FIX ===== */

.cennik-page{
min-height:70vh;
}

/* MOBILE SPACING FIX */

@media(max-width:768px){

.promo-box{
margin-bottom:40px;
}

.booking-wrapper{
margin-top:30px;
}

}

/* ODSTĘP RAMKA → TRANSFERY NA MOBILE */

@media(max-width:768px){

.hero h1{
margin-top:40px;
}

}

/* ===== INFORMACJA RODO POD FORMULARZEM ===== */
/* mały tekst pod przyciskiem ZAMÓW TAXI */

.rodo-text{
grid-column:1/-1; /* rozciąga tekst na całą szerokość formularza */
font-size:12px; /* mały tekst */
text-align:center; /* wyśrodkowanie */
opacity:0.7; /* lekko przygaszony kolor */
margin-top:8px; /* odstęp od przycisku */
}

.rodo-text a{
color:#ffd000; /* żółty link jak na stronie */
text-decoration:none;
font-weight:600;
}

.rodo-text a:hover{
text-decoration:underline;
}

/* PROMO HOTEL */

.promo-highlight{
font-size:18px;
font-weight:800;
color:#ffd000;
margin-top:8px;
}

/* DESKTOP */

@media(min-width:769px){

.promo-text h3{
font-size:26px;
}

.promo-text p{
font-size:16px;
}

.promo-highlight{
font-size:20px;
}

}

.blik{
color: #ffd000;
font-weight: bold;
}

.promo-note{
font-size:9px !important;
color:#888;
margin-top:6px;
line-height:1.3;
opacity:0.8;
}