/* Custom styles beyond Tailwind */

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Smooth scroll offset for fixed nav */
section[id] {
    scroll-margin-top: 80px;
}

/* Mobile menu open state */
body.menu-open {
    overflow: hidden;
}

#mobile-menu.open {
    opacity: 1;
    pointer-events: all;
}

/* Hamburger animation */
body.menu-open #menu-line-1 {
    transform: translateY(6px) rotate(45deg);
}
body.menu-open #menu-line-2 {
    opacity: 0;
}
body.menu-open #menu-line-3 {
    transform: translateY(-6px) rotate(-45deg);
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 6px;
}
::-webkit-scrollbar-track {
    background: #faf5ec;
}
::-webkit-scrollbar-thumb {
    background: #d1411e;
    border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
    background: #ac3319;
}

/* Subtle line accents */
.section-line {
    position: relative;
}
.section-line::after {
    content: '';
    position: absolute;
    bottom: -24px;
    left: 0;
    width: 48px;
    height: 1px;
    background: #d1411e;
}
