/* General Styles */
body { margin:0; font-family:'Roboto',sans-serif; color:#333; }
header { background:#000; color:#fff; padding:1rem 2rem; display:flex; justify-content:space-between; align-items:center; }
.nav-links { list-style:none; display:flex; gap:1rem; }
.nav-links li a { color:#fff; text-decoration:none; }
.hero { display:flex; overflow:hidden; height:70vh; position:relative; }
.hero-slide { flex:0 0 100%; background-size:cover; background-position:center; transition:transform 1s ease-in-out; }
.intro { text-align:center; padding:3rem 1rem; }
.intro .btn { background:#000; color:#fff; padding:0.7rem 1.5rem; text-decoration:none; border-radius:5px; }
section h1 { margin-bottom:1rem; }
footer { text-align:center; padding:1rem; background:#000; color:#fff; }
.gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1rem; padding:2rem; }
.gallery-item img { width:100%; height:auto; cursor:pointer; border-radius:5px; transition:transform 0.3s; }
.gallery-item img:hover { transform:scale(1.05); }
.contact form { max-width:500px; margin:2rem auto; display:flex; flex-direction:column; gap:1rem; }
.contact input,.contact textarea { padding:0.7rem; border-radius:5px; border:1px solid #ccc; }
.contact button { padding:0.7rem; border:none; border-radius:5px; background:#000; color:#fff; cursor:pointer; }
/* Responsive */
@media(max-width:768px) { .nav-links { flex-direction:column; gap:0.5rem; } .hero { height:50vh; } }