/* Global Styles */

/* ========================================
   HEADER - Truly Flexible & Reusable
   ======================================== */

#hd {
    background-color: #00658F05;
    padding: 0.5rem 0;
}

/* Row - flex layout, logo always at top and pushed to right edge */
#hd .row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    flex-wrap: nowrap !important;
}

/* Left column - title on own line, extra content on same line */
#hd .col-md-6:first-child {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    flex: 1 1 auto;
    gap: 0.5rem 1rem;
}

/* Title takes full width to force onto its own line */
#hd .col-md-6:first-child .page-title {
    flex-basis: 100%;
}

/* Right column - logo at right edge, fixed at top (exact pixel position) */
#hd .col-md-6:last-child {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    flex: 0 0 auto;
}

/* Page title - no specific styling beyond appearance */
.page-title {
    color: #00588F;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.3;
    margin: 0;
    padding: 0;
}

/* Logo - responsive sizing */
.logo-img-global {
    max-width: 180px;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    display: block;
}

/* Index chart image - centered with fixed height */
.index-chart-image {
    display: block;
    margin: 20px auto;
    max-width: 100%;
    height: 350px;
    object-fit: contain;
}

/* ========================================
   RESPONSIVE ADJUSTMENTS
   ======================================== */

@media (max-width: 768px) {
    #hd .page-title {
        font-size: 1.2rem;
    }

    #hd .logo-img-global {
        max-width: 140px;
    }
}

@media (max-width: 390px) {
    #hd .page-title {   
        font-size: 1.1rem;
    }

    #hd .logo-img-global {
        max-width: 100px;
    }
}
    