/* Global Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', sans-serif;
    line-height: 1.6;
    color: #333;
    overflow-x: hidden;
}

/* Hide native side scrollbar but keep scrolling */
html, body {
    -ms-overflow-style: none;    /* IE 10+ and old Edge */
    scrollbar-width: none;       /* Firefox */
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
    width: 0;
    height: 0;
}

/* Native smooth scroll for in-page anchors */
html {
    scroll-behavior: smooth;
    /* Reserve space at top so anchored sections aren’t hidden under fixed header */
    scroll-padding-top: 80px;
}

/* Ensure any section with an id respects the fixed header height */
section[id] {
    scroll-margin-top: 80px;
}

/* Adjust offset on smaller screens if header is shorter */
@media (max-width: 768px) {
    html { scroll-padding-top: 64px; }
    section[id] { scroll-margin-top: 64px; }
}

/* Main Content */
#main {
    position: relative;
    margin-top: 0;
    background-color: #fff;
}

/* Bottom scroll progress bar */
.scroll-progress {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 6px;
    background: transparent;
    z-index: 9999;
    pointer-events: none;
}

.scroll-progress__bar {
    width: 0%;
    height: 100%;
    background: linear-gradient(90deg, #0a2540 0%, #0d3b66 40%, #0a2540 100%);
    box-shadow: 0 -1px 8px rgba(13, 59, 102, 0.35);
    transition: width 0.12s ease-out;
}

@media (max-width: 768px) {
    .scroll-progress { height: 4px; }
}
