
/* Variables & Reset */
:root {
    --primary: #e75e0e; /* Safety Orange */
    --dark: #333333;
    --white: #ffffff;
    --light: #f8f9fa;
    --transition: all 0.3s ease;
}

html { scroll-behavior: smooth; }
body { font-family: 'Inter', -apple-system, sans-serif; color: var(--dark); line-height: 1.6; overflow-x: hidden; }

/* Navigation */
.navbar { background: var(--white); box-shadow: 0 2px 15px rgba(0,0,0,0.1); padding: 15px 0; transition: var(--transition); }
.navbar-brand { font-weight: 800; color: var(--primary) !important; font-size: 1.5rem; }
.nav-link { font-weight: 600; color: var(--dark) !important; margin-left: 20px; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 1px; }
.nav-link:hover, .nav-link.active { color: var(--primary) !important; }

/* Hero Section */
#hero { 
    height: 100vh; min-height: 600px;
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url('https://images.unsplash.com/photo-1588776814546-1ffcf47267a5?auto=format&fit=crop&w=1920&q=80');
    background-size: cover; background-position: center;
    display: flex; align-items: center; color: var(--white); text-align: left;
}
.hero-content h1 { font-size: 4rem; font-weight: 800; margin-bottom: 25px; }
.hero-content p { font-size: 1.25rem; margin-bottom: 35px; opacity: 0.9; }

/* Components */
.section-padding { padding: 100px 0; }
.btn-primary { background-color: var(--primary); border: none; padding: 15px 35px; border-radius: 5px; font-weight: 700; transition: var(--transition); }
.btn-primary:hover { background-color: #c54e0c; transform: translateY(-3px); box-shadow: 0 5px 15px rgba(231,94,14,0.3); }

.card-service { border: none; border-radius: 12px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.05); transition: var(--transition); height: 100%; }
.card-service:hover { transform: translateY(-10px); }
.card-img-top { height: 250px; object-fit: cover; }
.price-badge { font-size: 1.5rem; font-weight: 800; color: var(--primary); }

/* Thank You Section (Hidden) */
#thank-you { display: none; text-align: center; padding: 100px 0; background: var(--light); position: fixed; inset: 0; z-index: 9999; display: none; align-items: center; justify-content: center; flex-direction: column; }
#thank-you.active { display: flex; }

/* Footer */
footer { background: var(--dark); color: var(--white); padding: 80px 0 20px; }
footer a { color: #aaa; text-decoration: none; transition: var(--transition); }
footer a:hover { color: var(--primary); }

/* Mobile Handling */
@media (max-width: 991px) {
    .hero-content h1 { font-size: 2.5rem; }
    .nav-link { margin: 10px 0; border-bottom: 1px solid #eee; }
}
