*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{
background:
linear-gradient(135deg,rgba(255,79,163,0.25),rgba(11,16,38,0.85)),
url("images/Chopstx/bg.jpeg") center/cover no-repeat fixed;
color:#fff;
line-height:1.6;
scroll-behavior:smooth;
}

img,
picture{
max-width:100%;
height:auto;
display:block;
}

.contact-section{
width:100%;
min-height:45vh;
background:url('images/Chopstx/mainphoto.png') center/cover no-repeat;
position:relative;
overflow:hidden;
}

.contact-actions{
position:absolute;
top:30px;
left:50%;
transform:translateX(-50%);
display:flex;
gap:40px;
z-index:5;
animation:slideFadeIn 1s ease forwards;
}

.contact-actions a{
font-size:1rem;
font-weight:600;
letter-spacing:1px;
text-decoration:none;
color:#fff;
position:relative;
}

.contact-actions a::after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:0;
height:2px;
background:#ff4fa3;
transition:.3s;
}

.contact-actions a:hover::after{width:100%;}

.gallery-header{
text-align:center;
padding:120px 20px 60px;
}

.gallery-header h1{
font-size:3rem;
letter-spacing:3px;
color:#ffffff;
margin-bottom:15px;
}

.gallery-header p{
font-size:1.1rem;
opacity:.85;
}

.gallery{
padding:80px 60px 120px;
content-visibility:auto;
contain-intrinsic-size:auto 1200px;
}

.gallery-images{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
max-width:1400px;
margin:auto;
}

.gallery-images img{
width:100%;
height:320px;
object-fit:cover;
border-radius:18px;
box-shadow:0 20px 40px rgba(0,0,0,.5);
cursor:pointer;

opacity:0;
filter:blur(12px);
transform:translateY(60px) scale(.96);

transition:
transform 1s cubic-bezier(0.19,1,0.22,1),
opacity 1s ease,
filter 1s ease,
box-shadow .6s ease,
filter .6s ease;
}

.gallery-images img.active{
opacity:1;
filter:blur(0);
transform:translateY(0) scale(1);
}

.gallery-images img:hover{
transform:translateY(-8px) scale(1.07);
filter:brightness(.75);
box-shadow:
0 40px 80px rgba(0,0,0,.85),
0 0 25px rgba(255,79,163,.35);
}


.footer{
text-align:center;
padding:40px;
background:#0b1026;
color:#aaa;
letter-spacing:2px;
font-size:.9rem;
}

@keyframes slideFadeIn{
from{
opacity:0;
transform:translate(-50%,-20px);
}
to{
opacity:1;
transform:translate(-50%,0);
}
}

@media(max-width:1024px){

.gallery{
padding:60px 30px 100px;
}

.gallery-header h1{
font-size:2.4rem;
}

}

@media(max-width:768px){

.gallery-images{
grid-template-columns:1fr;
gap:25px;
}

.gallery-images img{
height:260px;
}

.gallery-header{
padding:100px 20px 50px;
}

.gallery-header h1{
font-size:2rem;
}

.gallery{
padding:40px 20px 80px;
}

.contact-section{
min-height:40vh;
}

.contact-actions{
gap:15px;
top:15px;
font-size:0.85rem;
}

}

@media(max-width:600px){

.gallery{
padding:30px 15px 60px;
}

.gallery-header{
padding:80px 15px 40px;
}

.gallery-header h1{
font-size:1.6rem;
}

.gallery-header p{
font-size:0.95rem;
}

.gallery-images{
grid-template-columns:1fr;
gap:15px;
}

.gallery-images img{
height:220px;
border-radius:12px;
}

.footer{
padding:30px 15px;
font-size:0.85rem;
}

.contact-actions{
gap:10px;
font-size:0.75rem;
top:10px;
flex-wrap:wrap;
}

.contact-actions a{
white-space:nowrap;
}

}

@media(max-width:480px){

.gallery{
padding:20px 10px 40px;
}

.gallery-header{
padding:60px 10px 30px;
}

.gallery-header h1{
font-size:1.4rem;
}

.gallery-header p{
font-size:0.9rem;
}

.gallery-images{
grid-template-columns:1fr;
gap:12px;
}

.gallery-images img{
height:200px;
border-radius:10px;
}

.footer{
padding:20px 10px;
font-size:0.8rem;
}

.contact-section{
min-height:35vh;
}

.contact-actions{
gap:8px;
top:8px;
font-size:0.7rem;
}

}
