/* LIMS-themed header backgrounds */
header {
    position: relative;
    overflow: hidden;
    color: white;
}

.lims-bg-1,
.lims-bg-2,
.lims-bg-3 {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.lims-bg-1 {
    background-image: linear-gradient(180deg, rgba(30, 58, 138, 0.72), rgba(37, 99, 235, 0.72)), url('../images/lims/lab1.svg');
}

.lims-bg-2 {
    background-image: linear-gradient(180deg, rgba(6, 22, 37, 0.68), rgba(2, 6, 23, 0.6)), url('../images/lims/lab2.svg');
}

.lims-bg-3 {
    background-image: linear-gradient(180deg, rgba(15, 23, 42, 0.6), rgba(2, 6, 23, 0.6)), url('../images/lims/lab3.svg');
}

/* Ensure overlay text remains readable */
header h1,
header p,
header .cta {
    position: relative;
    z-index: 2;
}

/* Subtle dark overlay layer if images are light */
header::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.18));
    pointer-events: none;
}

/* Login page background (overrides body background when applied) */
.login-bg {
    background-image: url('../images/login_background.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
}