:root { --brand: #f5a623; --dark: #13231b; --nav-h: 72px; }
html { scroll-behavior: smooth; }
body { font-family: Manrope, sans-serif; color: #18201c; background: #f5f6f5; }

/* Navbar */
#mainNav { background: transparent; height: var(--nav-h); transition: background .25s, box-shadow .25s; }
#mainNav.scrolled { background: var(--dark); box-shadow: 0 4px 18px rgba(0,0,0,.2); }
#mainNav .navbar-brand { color: #fff; font-weight: 800; display: flex; align-items: center; }
#mainNav .nav-link { color: rgba(255,255,255,.8); font-weight: 600; }
#mainNav .nav-link:hover, #mainNav .nav-link.active { color: var(--brand); }
#mainNav .navbar-toggler { border-color: rgba(255,255,255,.5); }
#mainNav .navbar-toggler-icon { filter: invert(1); }
.brand-mark { width: 36px; height: 36px; border-radius: 10px; background: var(--brand); color: var(--dark);
    display: inline-flex; align-items: center; justify-content: center; margin-right: 10px; font-size: 1.2rem; }
@media (max-width: 991.98px) {
    #mainNav { background: var(--dark); }
    #mainNav .navbar-collapse { padding: 12px 0; }
}

/* Sections: offset so the fixed navbar doesn't cover headings */
section[id] { scroll-margin-top: var(--nav-h); }
.section { padding: 90px 0; }
.tag { font-size: .72rem; letter-spacing: .13em; text-transform: uppercase; font-weight: 800; color: var(--brand); }
.tag.text-secondary { color: #6c757d !important; }

/* Hero */
.hero { min-height: 100vh; padding: calc(var(--nav-h) + 40px) 0 60px; color: #fff;
    background: linear-gradient(rgba(19,35,27,.82), rgba(19,35,27,.82)),
        url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1800&q=80') center/cover, var(--dark); }
.btn-brand { background: var(--brand); border-color: var(--brand); color: var(--dark); font-weight: 800; }
.btn-brand:hover { background: #e0951a; border-color: #e0951a; color: var(--dark); }
.stats strong { display: block; font-size: 2rem; font-weight: 800; color: var(--brand); }
.stats span { font-size: .85rem; opacity: .85; }

/* About */
.check-list li { padding: 6px 0; font-weight: 600; }
.check-list i { color: var(--brand); margin-right: 8px; }

/* Services */
.service-card { background: #f5f6f5; border-radius: 20px; padding: 32px; transition: transform .2s, box-shadow .2s; }
.service-card:hover { transform: translateY(-5px); box-shadow: 0 14px 34px rgba(0,0,0,.09); }
.service-card .icon { width: 56px; height: 56px; border-radius: 14px; background: var(--dark); color: var(--brand);
    display: flex; align-items: center; justify-content: center; font-size: 1.6rem; margin-bottom: 18px; }

/* Testimonials */
.testimonial-card { background: #fff; border-radius: 20px; padding: 32px; display: flex; flex-direction: column;
    box-shadow: 0 12px 34px rgba(0,0,0,.07); transition: transform .2s; }
.testimonial-card:hover { transform: translateY(-5px); }
.testimonial-card .stars { color: var(--brand); }
.testimonial-card .quote { color: #4a554f; font-size: 1.02rem; line-height: 1.7; }
.testimonial-card .avatar { width: 46px; height: 46px; border-radius: 50%; background: var(--dark); color: var(--brand);
    display: inline-flex; align-items: center; justify-content: center; font-weight: 800; margin-right: 12px; flex-shrink: 0; }

/* Contact */
.contact-info { background: var(--dark); color: #fff; border-radius: 20px; padding: 36px; }
.contact-info i { color: var(--brand); margin-right: 10px; }
.contact-form { background: #f5f6f5; border-radius: 20px; padding: 32px; }

/* Footer */
.footer { background: var(--dark); color: rgba(255,255,255,.75); }
.footer a { color: var(--brand); text-decoration: none; }
