*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Poppins', sans-serif;
background:#0f0f0f;
color:white;
line-height:1.7;
}

/* NAVBAR */

nav{
position:fixed;
top:0;
width:100%;

display:flex;
justify-content:center;
align-items:center;

padding:25px 0;

background:rgba(0,0,0,0.6);
backdrop-filter:blur(10px);

z-index:1000;
}

.menu{

list-style:none;

display:flex;

gap:40px;

margin:0;
padding:0;

}
.menu a{

text-decoration:none;
color:white;

font-size:16px;
font-weight:500;

letter-spacing:1px;

transition:0.3s;

}

.menu a:hover{
color:#d4af37;
}
/* HERO */

.hero{
height:100vh;
background-image:url("images/hero.jpg");
background-size:cover;
background-position:center;

display:flex;
align-items:center;
justify-content:center;

text-align:center;
}

.hero-content{
background:rgba(0,0,0,0.35);
padding:50px;
border-radius:12px;
backdrop-filter:blur(5px);

animation:fadeUp 1.2s ease;
}

.hero h1{
font-size:60px;
letter-spacing:2px;
}

.hero p{
margin-top:10px;
font-size:20px;
}

.btn{
margin-top:20px;
display:inline-block;

padding:12px 28px;

background:#d4af37;
color:black;
font-weight:bold;

text-decoration:none;
border-radius:6px;

transition:0.3s;
}

.btn:hover{
transform:translateY(-3px);
}

/* SEKCJE */

.section{
padding:100px 10%;
}

.section h2{
font-size:36px;
margin-bottom:20px;
}

/* PORTFOLIO GRID */

.portfolio-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(350px,1fr));

gap:30px;

margin-top:40px;

}

/* OKŁADKA GALERII */

.portfolio-item{

position:relative;

display:block;

overflow:hidden;

border-radius:12px;

text-decoration:none;

color:white;

}

.portfolio-item img{

width:100%;
height:300px;

object-fit:cover;

transition:0.6s;

}

/* OVERLAY */

.overlay{

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

background:linear-gradient(
to top,
rgba(0,0,0,0.8),
rgba(0,0,0,0.1)
);

display:flex;

flex-direction:column;

justify-content:flex-end;

padding:25px;

opacity:0;

transition:0.4s;

}

.overlay h3{

font-size:22px;

margin-bottom:5px;

}

.overlay p{

font-size:14px;

opacity:0.8;

}

/* HOVER */

.portfolio-item:hover img{

transform:scale(1.1);

}

.portfolio-item:hover .overlay{

opacity:1;

}

/* LIGHTBOX */

.lightbox{
position:fixed;
top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,0.95);

display:none;

align-items:center;
justify-content:center;

z-index:2000;
}

.lightbox-img{
max-width:90%;
max-height:90%;
border-radius:10px;
}

.nav{
position:absolute;
top:50%;
font-size:50px;
color:white;
cursor:pointer;
padding:20px;
}

.prev{left:20px;}
.next{right:20px;}

.close{
position:absolute;
top:20px;
right:30px;
font-size:40px;
cursor:pointer;
}

/* VIDEO GALLERY */

.video-grid{
display:grid;
grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
gap:30px;
margin-top:40px;
}

.video-card{

display:block;

position:relative;

text-decoration:none;

color:white;

transition:0.3s;

}

.video-card img{

width:100%;

border-radius:10px;

}

.video-card:hover{

transform:scale(1.05);

}
.play-button{
position:absolute;
top:50%;
left:50%;

transform:translate(-50%,-50%);

font-size:50px;
color:white;

background:rgba(0,0,0,0.6);

padding:20px;
border-radius:50%;
}

.video-card h3{
margin-top:10px;
font-size:18px;
}

/* VIDEO MODAL */

.video-modal{
position:fixed;

top:0;
left:0;

width:100vw;
height:100vh;

background:rgba(0,0,0,0.95);

display:none;

align-items:center;
justify-content:center;

z-index:9999;
}

.video-container{
width:90%;
max-width:1100px;

aspect-ratio:16/9;

position:relative;
}

.video-container iframe{
position:absolute;

top:0;
left:0;

width:100%;
height:100%;

border:none;
border-radius:10px;
}

.close-video{
position:absolute;

top:30px;
right:40px;

font-size:40px;
cursor:pointer;

color:white;

z-index:4000;
}

/* FORMULARZ */

form{
max-width:500px;
display:flex;
flex-direction:column;
gap:15px;
}

input, textarea, select{
padding:12px;
border:none;
border-radius:6px;
font-size:15px;
}

button{
padding:12px;
background:#d4af37;
border:none;
font-weight:bold;
cursor:pointer;
}

/* FORMULARZ PROFESJONALNY */

.contact-form{
max-width:800px;
margin:auto;
}

.form-row{
display:flex;
gap:20px;
flex-wrap:wrap;
}

.form-group{
flex:1;
display:flex;
flex-direction:column;
margin-bottom:15px;
}

.form-group label{
margin-bottom:6px;
font-size:14px;
}

.checkbox{
flex-direction:row;
align-items:center;
gap:10px;
}

button.btn{
margin-top:10px;
}

/* FOOTER */

footer{
text-align:center;
padding:40px;
background:black;
margin-top:60px;
}

/* ANIMACJA */

@keyframes fadeUp{

from{
opacity:0;
transform:translateY(40px);
}

to{
opacity:1;
transform:translateY(0);
}

}

/* RESPONSYWNOŚĆ */

@media (max-width:768px){

.logo img{
max-height:40px;
}

nav{
padding:15px 20px;
}

.hero h1{
font-size:36px;
}

.hero p{
font-size:18px;
}

.section{
padding:80px 20px;
}

.video-container{
width:95%;
}

}

/* SIATKA ZDJĘĆ */

.gallery-grid{

display:grid;

grid-template-columns:repeat(auto-fill,minmax(300px,1fr));

gap:20px;

margin-top:40px;

}

/* MINIATURY */

.gallery-img{

width:100%;
height:260px;

object-fit:cover;

border-radius:12px;

cursor:pointer;

transition:0.4s;

}

.gallery-img:hover{

transform:scale(1.05);

}

/* LIGHTBOX */

.lightbox{

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,0.95);

display:none;

align-items:center;
justify-content:center;

z-index:2000;

}

.lightbox-img{

max-width:90%;
max-height:90%;

border-radius:10px;

}

/* STRZAŁKI */

.nav{

position:absolute;

top:50%;

font-size:60px;

color:white;

cursor:pointer;

padding:20px;

}

.prev{ left:30px; }

.next{ right:30px; }