/* Base */
body {
    background-color: #FFFFFF;
    color: #111111;
    overflow-x: hidden;
}

::-webkit-scrollbar {
    width: 6px;
}
::-webkit-scrollbar-track {
    background: #F8F9FA;
}
::-webkit-scrollbar-thumb {
    background: #CCCCCC;
    border-radius: 3px;
}

/* Header */
#main-header {
    height: 60px;
    transition: height 0.3s ease, background-color 0.3s ease;
    display: flex;
    align-items: center;
}

@media (min-width: 768px) {
    #main-header {
        height: 90px;
    }
}

#header-logo {
    display: block;
    max-height: 100%;
    width: auto;
    object-fit: contain;
}

/* Hero Animations */
.rising-line {
    position: absolute;
    width: 1px;
    height: 200px;
    background: linear-gradient(to top, transparent, rgba(0, 0, 0, 0.15), transparent);
    transform: rotate(-35deg);
    opacity: 0;
    pointer-events: none;
    z-index: 1;
}

/* Decorations */
.bg-deco-container {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
}

.shape-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.04;
    background: #111111;
}

.bg-dots {
    background-image: radial-gradient(#111111 1px, transparent 1px);
    background-size: 40px 40px;
    opacity: 0.03;
}

/* GSAP States */
.gsap-fade-up, .gsap-stagger-text > *, .gsap-reveal-left, .gsap-reveal-right {
    opacity: 0;
    visibility: hidden;
}

.draw-line-v {
    height: 0;
    transform-origin: top;
}

/* Mobile Menu */
#mobile-menu {
    transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}

#hero img {
    pointer-events: none;
    user-select: none;
}

.rising-line {
    background: linear-gradient(to top, transparent, rgba(0, 0, 0, 0.25), transparent);
}