
body{margin:0;font-family:Lato,sans-serif;color:#222;}

.top-bar{background:black;color:white;text-align:center;padding:10px 0;font-size:15px;letter-spacing:2px;}

.main-header{text-align:center;padding:30px 0 10px 0;position:relative;}
.main-logo{height:140px;}

.desktop-nav{display:flex;justify-content:center;margin-top:15px;}
.desktop-nav ul{display:flex;gap:40px;list-style:none;margin:0;padding:0;}
.desktop-nav a{text-decoration:none;color:black;font-family:Poppins;font-size:17px;font-weight:600;letter-spacing:3px;position:relative;padding-bottom:6px;}
.desktop-nav a::after{content:'';position:absolute;width:0;height:2px;left:0;bottom:0;background:#A4161A;transition:0.3s;}
.desktop-nav a:hover::after{width:100%;}

.hamburger{display:none;flex-direction:column;cursor:pointer;position:absolute;right:30px;top:40px;}
.hamburger span{width:30px;height:3px;background:black;margin:4px 0;border-radius:2px;}

.mobile-menu{position:fixed;right:-260px;top:0;width:260px;height:100%;background:white;box-shadow:-2px 0 10px rgba(0,0,0,0.2);padding-top:120px;transition:0.3s;z-index:2000;}
.mobile-menu ul{list-style:none;padding-left:20px;}
.mobile-menu a{text-decoration:none;color:black;font-size:20px;display:block;padding:15px 0;font-family:Poppins;}

.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);opacity:0;pointer-events:none;transition:0.3s;z-index:1500;}

@media(max-width:900px){
    .desktop-nav{display:none;}
    .hamburger{display:flex;}
}

.mobile-menu.open{right:0;}
.overlay.show{opacity:1;pointer-events:auto;}

.hero{
    height:75vh;background:url('/assets/images/hero.jpg') center/cover;
    display:flex;justify-content:center;align-items:center;text-align:center;
}
.hero-inner h1{font-family:Poppins;font-size:55px;color:white;text-shadow:0 2px 8px rgba(0,0,0,0.5);}
.hero-inner p{color:white;font-size:22px;}

.btn-primary{background:#A4161A;color:white;padding:16px 32px;border-radius:6px;display:inline-block;margin-top:20px;}

.section{padding:100px 50px;}
.heading{text-align:center;font-size:28px;margin-bottom:60px;font-family:Poppins;}

.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;}
.card{background:white;padding:35px;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,0.1);}

.footer{background:#f5f5f5;padding:60px 50px;margin-top:60px;}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;}
