/* Hero background using BG.png */
.hero {
    background-image:
        linear-gradient(180deg, rgba(255,255,255,0.55) 0%, rgba(248,250,252,0.75) 100%),
        url('assets/images/bg.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.hero-content {
    /* Protects text with a soft white glow so it stays readable */
    text-shadow: 0 1px 30px rgba(255,255,255,0.9), 0 1px 8px rgba(255,255,255,0.7);
}

.hero .lead {
    text-shadow: 0 1px 20px rgba(255,255,255,0.95), 0 1px 6px rgba(255,255,255,0.8);
}

.service-hero {
    background-image:
        linear-gradient(180deg, rgba(255,255,255,0.6) 0%, rgba(248,250,252,0.8) 100%),
        url('assets/images/bg.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.service-hero h1, .service-hero p {
    text-shadow: 0 1px 24px rgba(255,255,255,0.9);
}

.page-header {
    background-image:
        linear-gradient(180deg, rgba(255,255,255,0.6) 0%, rgba(248,250,252,0.8) 100%),
        url('assets/images/bg.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.page-header h1, .page-header .lead {
    text-shadow: 0 1px 24px rgba(255,255,255,0.9);
}

@media (max-width: 768px) {
    .hero, .service-hero, .page-header {
        background-attachment: scroll;
    }
}
