* {
    padding: 0;
    margin: 0;
}

:root {
    --lightSkyBlue: #A3E4FF;
    --skyBlue: #20A6DB;
    --darkBlue: #051937;
    --darkBlue2: #1c2d46;
    --font-family-body: Inter, sans-serif;
    --font-family-heading: Lexend, sans-serif;
    --lightGreen: #c5dad0;
    --darkGreen: #66706B;
    --yellow1: #f7cb1e;
    --blue1: #174b9b;
    --textWhite1: #eee;
    --textWhite2: #999;
    --textBlue1: #c4d7ea;
    --textBlue2: #0969a1;
    --textGray: #232628;
}

/*
* {
    outline: 1px solid red;
}
*/
html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: var(--font-family-body);
    background-color: var(--darkBlue);
}
p {
    color: var(--textBlue1);
}
.heading1 {
    font-family: var(--font-family-heading);
    color: var(--textBlue1);
}

.navbar {
    width: 100%;
    margin-left: 20px;
    margin-right: 20px;
    padding: 0;
    background-color: var(--blue1);
    text-align: left;
    overflow: visible;
}
    .navbar .dropdown:hover > .dropdown-menu {
        display: block;
    }
    .navbar .dropdown {
        position: relative;
    }
        /* Invisible hover bridge */
        .navbar .dropdown::after {
            content: "";
            position: absolute;
            left: 0;
            top: 100%; /* place below menu item */
            width: 100%;
            height: 10px; /* gap size */
        }
/* Dropdown menu base */
    .navbar .dropdown-menu {
        margin-top: 10px;
        padding-top: 0px;
        padding-bottom: 0;
        background-color: var(--blue1);
        display: none;
        padding: 6px 6px 12px 6px;
    }

/* Top nav links */
.nav-link {
    color: var(--textWhite1);
    border-radius: 0.375rem;
    padding-left: 10px;
    padding-right: 10px;
}

.navbar .nav-link:hover {
    color: var(--textGray);
    background-color: var(--yellow1);
}

/* Main hover */
.navbar .nav-link:hover {
    color: var(--textGray);
    background-color: var(--yellow1);
}
/* When dropdown is open (hovering anywhere inside it) */
.navbar .dropdown:hover > .nav-link {
    color: var(--textGray);
    background-color: var(--yellow1);
}

/* Active main menu item */
.navbar .nav-link.active {
    color: var(--textGray) !important;
    background-color: var(--yellow1) !important;
}


/* Dropdown links */
.dropdown-item {
    color: var(--textWhite1) !important;
}

    .dropdown-item:hover {
        background-color: var(--skyBlue);
        color: var(--textWhite1);
        border-radius: 8px;
        transform: translateY(4px);
    }


/*.dropdown-menu a:hover {
    color: #fff;*/ /* Bootstrap primary blue text */
    /*background-color: var(--skyBlue);*/ /* Light gray background on hover */
    /*text-decoration: none;
    color: var(--textWhite1);
}
.dropdown-menu .active {
    background-color: var(--darkBlue);*/ /* Light gray background on hover */
    /*color: #fff;*/ /* Bootstrap primary blue text */
    /*text-shadow: 0 0 5px var(--lightSkyBlue), 0 0 10px var(--skyBlue);
    text-decoration: none;
}
.dropdown-item {
    color: var(--textWhite1);
}
.dropdown-item .active{
    color: var(--textWhite1);
}*/

/********************************/
/*           banner             */
/********************************/
.banner {
    width: 100%;
    height: 200px;
    position: relative;
    padding: 0;
}
.background-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    color: #fff;
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

/********************************/
/*           button             */
/********************************/
.primaryBtn {
    color: var(--textWhite1);
    background: var(--skyBlue);
    padding: 4px 10px;
    /*border-radius: 8px;*/
    font-size: 16px;
}

    .primaryBtn:hover {
        background-color: var(--yellow1);
        color: var(--textGray);
    }

.SecondaryBtn {
    color: #fff;
    background: var(--skyBlue);
    padding: 4px 12px;
    font-size: 16px;
}

    .SecondaryBtn:hover {
        background-color: var(--skyBlue);
        color: #fff;
    }
/********************************/
/*           color              */
/********************************/
.textTitleBlue1
{
    color: var(--textBlue1);
}
/********************************/
/*           foot             */
/********************************/
.footer {
    margin-top: 40px;
    font-size: 0.9rem;
    color: var(--textWhite2);
}

/********************************/
/*           common             */
/********************************/
.relative {
    position: relative;
}
.button-container {
    display: flex;
    justify-content: space-evenly;
}

.card {
    background-color: transparent;
}

.card-title {
    color: var(--textBlue1);
}

.card-img-top {
    transition: transform 0.3s ease;
}

.card:hover .card-img-top {
    transform: scale(1.05);
}

.shadow-light {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.shadow-medium {
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

.shadow-strong {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.25);
}