/* Header fixes */
.s-header {
    height: auto;
    padding: 10px 2rem; /* Reduced padding for a more compact layout */
}

header.s-header {
    display: flex;
    justify-content: space-between; /* or flex-start, center, etc. */
    align-items: center;
  }

.s-header__content {
    display: flex;
    align-items: center; /* Ensures all items align vertically */
    justify-content: space-between; /* Space between logo, nav, and button */
    max-width: 1200px; /* Constrain width for centered alignment */
    margin: 0 auto; /* Center the content */
    width: 100%; /* Flexibility for smaller screens */
    height: 80px; /* Ensures uniform height across the header */
}

.s-header__logo {
    flex: 0 0 auto; /* Prevents the logo from stretching */
    max-width: 275px; /* Restricts logo size */
    display: flex; /* Aligns the logo content */
    align-items: center; /* Vertical alignment */
    height: 100%; /* Ensures the logo doesn't exceed the header height */
}

a.btn.btn--primary.btn--small {
    margin-bottom: 0px;
}
.s-header__logo img {
    max-width: 100%; /* Prevents the image from exceeding its container */
    height: auto; /* Maintains aspect ratio */
    margin-bottom: auto;
    width: 275px;
}

.s-header__nav-wrap {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-direction: row-reverse;
}

.s-header__nav {
    display: flex;
    align-items: center; /* Vertically aligns nav items */
    gap: 1.5rem; /* Adds consistent spacing between nav items */
    list-style: none;
    padding: 0;
    margin: 0;
}

.s-header__nav li {
    margin: 0;
}

ul.s-header__nav{
    font-size: 1.5rem;
}
.s-header__content .btn {
    flex: 0 0 auto; /* Prevents it from stretching */
    padding: 10px 20px; /* Standard button padding */
    white-space: nowrap; /* Prevents text wrapping */
    height: 40px; /* Matches the nav and button height */
    display: flex;
    align-items: center; /* Centers text and icon vertically */
}

/* Responsive behavior */
@media screen and (max-width: 768px) {
    .s-header__content {
        flex-direction: column; /* Stacks items on smaller screens */
        align-items: center;
        height: auto; /* Allows dynamic height */
        width: auto;
    }

    .s-header__nav-wrap {
        justify-content: center; /* Centers nav items */
        margin-top: 1rem;
    }

    .s-header__nav {
        flex-wrap: wrap; /* Allows wrapping on small screens */
        gap: 1rem;
    }

    .s-header__logo {
        margin-bottom: 1rem; /* Adds spacing below the logo */
        max-width: 80%;
    }
}

/* Sticky header */
.s-header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.95); /* Slightly darker for contrast */
    z-index: 1000; /* Ensures it stays above other elements */
}
