/* ===== NTTITQ — styles ===== */

/* fixed navbar compensation */
body {
    padding-top: 76px;
}

/* nav-link clicks shouldn't hide headings under the navbar */
section {
    scroll-margin-top: 90px;
}

/* navbar logo sizing */
.navbar-brand img {
    height: 56px;
    width: auto;
}

/* ===== Hero ===== */
header {
    position: relative;
    background-color: #0a86c4;                       /* brand fallback */
    background-image: url("hero.png");       /* root-relative: safe from styles.css */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* dark overlay so white text stays readable over any hero image */
header::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(5, 20, 35, 0.55);
    z-index: 0;
}

header .container {
    position: relative;
    z-index: 1;
}

/* ===== Cards ===== */
.card {
    transition: transform .15s ease, box-shadow .15s ease;
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: 0 .75rem 1.5rem rgba(10, 134, 196, .15) !important;
}
