
/***** Cookie banner *****/
#cookie-banner {
    position: sticky; /* Sticks to top when scrolling (optional; remove if not desired) */
    top: 0;
    z-index: 1000;
    display: flex;
    flex-wrap: wrap; /* Allows stacking on small screens */
    align-items: center;
    background-color: #073c70; /* Updated to match site white background */
    color: #073c70; /* Brand heading color */
    padding: 16px 5vw;
    /* font-family: "Proxima Nova", "Helvetica Neue", Arial, sans-serif; */
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

/* Text block centered */
.cookie-banner-text {
    flex: 1 1 auto;
    max-width: 900px;
    margin: 0 auto; /* Centers the text block within the banner */
    text-align: center;
    font-family: 'Roboto'; /* Body font */
    font-size: 14px;
    line-height: 22px;
    color: #505050;
}

/* Button container on the right on wider viewports */
.cookie-banner-button {
    flex: 0 0 auto;
    margin-left: auto; /* Pushes button group to the right edge */
}

/* Headline: larger and bolder than body text */
#cookie-banner h3 {
    margin: 0 0 8px;
    font-weight: 700;
    font-family: 'NexaRustSans'; /* Brand heading font */
    font-size: 16px;
    line-height: 24px;
    color: #FBB644;
    letter-spacing: 0.03em;
}

/* Body text: smaller than H3, good line-height */
#cookie-banner p {
    margin: 0;
    max-width: 100%;
    font-family: 'Roboto';
    font-size: 14px;
    line-height: 22px;
    color: #ffffff;
}

/* Link styling (e.g. Privacy Policy) */
#cookie-banner a {
    color: #00a3e0; /* Site link blue */
    font-weight: bold;
    text-decoration: underline;
}

/* Button styles */
.cookie-button {
    background-color: #FBB644; /* Brand accent orange */
    color: #073c70;
    border: none;
    padding: 10px 24px;
    border-radius: 999px; /* Pill shape */
    font-size: 14px;
    font-family: 'NexaRustSans';
    cursor: pointer;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.1s ease;
}

    /* Hover: invert & subtle lift, fix hex code */
    .cookie-button:hover {
        background-color: #073c70;
        color: #FFFFFF;
        transform: translateY(-1px);
    }

    /* Focus state for accessibility */
    .cookie-button:focus-visible {
        outline: 2px solid #00a3e0;
        outline-offset: 2px;
    }

/* --------- Mobile / narrow view --------- */
@media (max-width: 768px) {
    #cookie-banner {
        flex-direction: column; /* Stack elements vertically */
        text-align: center;
        padding: 12px 16px;
    }

    .cookie-banner-text {
        margin-bottom: 12px;
    }

    .cookie-banner-button {
        margin-left: 0;
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .cookie-button {
        width: 90%;
        max-width: 260px;
    }

    #cookie-banner h3 {
        font-size: 16px;
    }

    #cookie-banner p {
        font-size: 14px;
    }
}


/***** Dev site banner *****/
#devsite-banner {
    position: sticky; /* Sticks to top when scrolling (optional; remove if not desired) */
    top: 0;
    z-index: 1000;
    display: flex;
    flex-wrap: wrap; /* Allows stacking on small screens */
    align-items: center;
    background-color: #ffffff; /* Updated to match site white background */
    color: #073c70; /* Brand heading color */
    padding: 16px 5vw;
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

#devsite-banner h2 {
    font-weight: 700;
    font-family: 'NexaRustSans'; /* Brand heading font */
    font-size: 18px;
    color: #ff0000; /* Red */
    letter-spacing: 0.03em;
}