body {
    font-family: Arial, sans-serif;
    margin: 0;
}
body.loading #main-content {
    display: none;
}

/* Loader overlay styles */
#loader-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #003366;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    font-size: 2em;
}

header {
    background: #1B406A;
    color: #fff;
    padding: 1em 2em;
}

nav {
    float: right;
}

/* nav a { color: #fff; margin-left: 1em; text-decoration: none; font-weight: bold; } */
nav a {
    color: #fff;
    margin-left: 1em;
    text-decoration: none;
    font-weight: bold;
    background: rgba(0, 0, 0, 0.1);
    padding: 0.5em 1em;
    border-radius: 4px;
    transition: background 0.2s, color 0.2s;
}


svg {
    font-family: 'Racing Sans One', sans-serif;
}

.hero {
    background: #e6f2ff;
    padding: 3em 2em;
    text-align: center;
}

.services {
    padding: 2em 0;
    text-align: center;
}

/* .service-list { display: flex; gap: 2em; justify-content: center; margin-top: 2em; }
        .card { background: #fff; border-radius: 8px; box-shadow: 0 2px 8px #ccc; padding: 2em; width: 250px; text-align: center; } */
.card-img-top-ws {
    background: #e6f2ff;
    border-radius: 16px;
    padding: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 1em;
    width: 40%;
    /* Reduce width to 40% of the card */
    min-width: 100px;
    /* Prevents it from getting too small on mobile */
    max-width: 140px;
    /* Prevents it from getting too large on desktop */
    margin-left: auto;
    margin-right: auto;
}

.card-img-top-ws svg {
    background: none;
    /* Remove background from SVG itself if present */
    border: none;
    border-radius: 0;
    padding: 0;
    width: 82px;
    height: 82px;
}

.captains {
    background: #f9f9f9;
    padding: 2em;
    text-align: center;
}

.captain-list {
    display: flex;
    gap: 2em;
    justify-content: center;
    margin-top: 2em;
}

.captain {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 8px #ccc;
    padding: 1em;
    width: 180px;
    text-align: center;
}

.captain p.location {
    font-style: italic;
    color: #666;
    margin-bottom: 0.5em;
}

.captain button {
    background: #0077cc;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    border-radius: 4px;
    cursor: pointer;
}

.icon-wrapper {
    align-items: center;
    background: rgba(17, 146, 229, 0.1);
    border-radius: 0.7rem;
    display: flex;
    min-height: 6rem;
    justify-content: center;
    margin-bottom: 1rem;
    width: 6rem;
}

/* ...existing styles... */
.service-list {
    display: flex;
    gap: 2em;
    justify-content: center;
    margin-top: 2em;
    flex-wrap: wrap;
}

.global-map {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 21px;
    width: 100%;
}

gmp-map {
    margin: 0 auto;
    display: block;
}

.hero-section-2 {
    width: 80%;
    background-color: #1B406A;
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
    border: 1px solid #ccc;
    border-bottom: none;
    margin: 0 auto;
    padding: 0;
}

/* footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.footer-links,
.footer-social {
    display: flex;
    gap: 1em;
}

.footer-social a {
    color: #fff;
} */