/* Reset & Base */
body{margin:0;font-family:Arial,sans-serif;background:#f4f4f4;color:#222}
h1,h2,h3{margin:0 0 15px}
p,ul,li{margin:0 0 10px}

/* Header & Navigation */
header{background:#222;color:#fff;text-align:center;padding:20px;position:sticky;top:0;z-index:1000}
nav ul{list-style:none;padding:0;margin:0;display:flex;justify-content:center;flex-wrap:wrap}
nav ul li{margin:0 10px}
nav a{color:#fff;text-decoration:none;padding:6px 12px;border-radius:4px;transition:0.3s}
nav a:hover, nav a.active{background:#444}

/* Hero Section */
.hero{position:relative;background:#000;height:400px;display:flex;align-items:center;justify-content:center;color:white;overflow:hidden}
.hero-img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0;z-index:0;opacity:0.7}
.hero-text{position:relative;z-index:1;text-align:center}
.btn{display:inline-block;padding:10px 20px;background:#222;color:white;text-decoration:none;border-radius:5px;margin-top:10px}
.btn:hover{background:#444}

/* Columns Section */
.columns{display:flex;gap:20px;padding:20px;flex-wrap:wrap}
.column{background:white;padding:20px;border-radius:8px;flex:1;min-width:250px;box-shadow:0 2px 5px rgba(0,0,0,0.1)}

/* Gallery Section */
.gallery{padding:20px;text-align:center}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}
.gallery-grid img{width:100%;height:150px;object-fit:cover;border-radius:8px}

/* Services Section */
.services-list{padding:20px;display:flex;flex-direction:column;gap:20px}
.service-item{background:white;padding:20px;border-radius:8px;display:flex;flex-direction:column;align-items:center;box-shadow:0 2px 5px rgba(0,0,0,0.1)}
.service-item img{width:100%;max-width:300px;border-radius:8px;margin-bottom:15px}

/* Pricing Table */
.pricing-table{padding:20px;overflow-x:auto}
table{width:100%;border-collapse:collapse;background:white;border-radius:8px;overflow:hidden;box-shadow:0 2px 5px rgba(0,0,0,0.1)}
th,td{border:1px solid #333;padding:10px;text-align:center}
th{background:#222;color:white}

/* Contact Page */
.contact-page{padding:20px;max-width:600px;margin:auto;background:white;border-radius:8px;box-shadow:0 2px 5px rgba(0,0,0,0.1)}
.contact-page form{display:flex;flex-direction:column}
.contact-page label{margin-top:10px}
.contact-page input, .contact-page select, .contact-page textarea{padding:10px;margin-top:5px;border:1px solid #ccc;border-radius:5px;width:100%;box-sizing:border-box}
.contact-page button{padding:10px;background:#222;color:white;border:none;margin-top:15px;border-radius:5px;cursor:pointer}
.contact-page button:hover{background:#444}

/* Animations */
.fade-in{animation:fade 1.5s ease forwards;opacity:0}
.slide-up{animation:slideup 1.5s ease forwards;opacity:0}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes slideup{from{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}

/* Footer */
footer{text-align:center;padding:20px;background:#222;color:white;margin-top:20px}

/* Responsive */
@media(max-width:900px){.columns{flex-direction:column}}
@media(max-width:600px){.hero{height:300px}.hero-text h2{font-size:24px}}