/* ==========================================================================
   HEADER CONTAINER
   ========================================================================== */
header {
    position: sticky;
    top: 0;
    left: 0;         /* Ensures it starts at the very edge */
    width: 100%;      /* Forces it to span the whole screen */
    max-height: 90px;
    z-index: 1000;
    
    display: inline-flex;
    justify-content: space-between;
    align-items: center;    
    overflow: visible; 

    /* Background properties */
    background-image: url("../assets/header_bg.png");
    background-repeat: repeat-x;
    background-position: top;
    background-size: auto 100%; /* Fits image height to header height */

}

.header-left, 
.header-right {
    flex: 1; /* Forces both sides to take up equal space */    
    height: 90px;
}


.header-center {
    flex: 0; /* Let the logo define its own width */
    text-align: center;
    position: relative;
    justify-content: center;
    align-items: center;
}

header a {
    text-decoration: none;
    width: fit-content;
}

.header-logo {
    margin-bottom: -30px;
    max-height: 150px;
    position: relative;
    top: 20px; /* Pushes the logo down past the bottom of the sticky bar */
    filter: drop-shadow(0 4px 10px rgba(0,0,0,0.3)); /* Makes it "float" over content */
}

/* ==========================================================================
   CTA BUTTONS
   ========================================================================== */
.cta-bar {
    margin: 10px;
    gap: 20px;
    display: flex;
}

.cta-left {
    justify-content: right;    
    padding-inline-end: 10%;
}

.cta-right {
    justify-content: left;    
    padding-inline-start: 10%;
}

header .btn-cta {
    height: fit-content;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 24px;
    border-radius: 8px;
    border: 3px solid black;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    transition: var(--transition-smooth); /* Use global transition variable */
    cursor: pointer;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.btn-primary { 
    background-color: var(--bg-btn-cta); /* Linked to #1e293b in main.css */
    color: var(--text-btn-cta);
}

.btn-secondary {
    background-color: var(--bg-btn-discord); /* Linked to #5865F2 in main.css */
    color: var(--text-btn); 
}

.btn-demo {
    background-color: var(--demo-btn); /* Linked to in main.css */
    color: var(--text-btn); 
}

/* Hover & Active States */
header .btn-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    filter: brightness(1.1);
}

header .btn-cta:active {
    transform: translateY(0);
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
}


/* ==========================================================================
   MOBILE RESPONSIVENESS
   ========================================================================== */
@media (max-width: 768px) {
    header .btn-cta {
        padding: 10px 16px;
        font-size: 0.85rem;
    }
    
    .header-inner {
        justify-content: space-between;
        padding-inline-end: 10px;
        padding-inline-start: 10px;
        gap: 10px;
    }

    .header-logo {
        margin-bottom: 0px;
        max-height: 80px;
        top: 0px;
    }
}