@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap');

html {
    scroll-behavior: smooth;
}

body {
    background-color: #04070F;
    color: #E5E7EB;
}

/* Navbar */
#navbar {
    background: transparent;
    transition: background-color 0.4s ease, box-shadow 0.4s ease; 
}

#navbar.nav-scrolled {
    background: rgba(4, 7, 15, 0.92);
    backdrop-filter: blur(12px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}

#navbar .max-w-7xl {
    transition: padding 0.4s ease;
}

#navbar.nav-scrolled .max-w-7xl {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}

/* Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #0D1422;
}

::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.12);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.22);
}

::selection {
    background: rgba(194, 150, 75, 0.3);
    color: #ffffff;
}

/* Hero Slider */
.hero-slide {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 0;
    transform: scale(1.05);
    transition: opacity 1.2s ease, transform 10s ease;
}

.hero-slide.is-active {
    opacity: 1;
    transform: scale(1.02);
}

/* Glass Card Utility */
.glass-card {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

/* Mobile Menu hidden scrollbar */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Detail Page Hero Background */
.detail-hero {
    position: relative;
    overflow: hidden;
}

.detail-hero::before,
.detail-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.detail-hero::before {
    background-image: var(--detail-bg, none);
    background-size: cover;
    background-position: center;
    transform: scale(1.08);
    filter: blur(18px);
    opacity: 0.28;
}

.detail-hero::after {
    background: linear-gradient(180deg, rgba(20, 20, 20, 0.85) 0%, rgba(20, 20, 20, 0.9) 40%, rgba(20, 20, 20, 0.98) 100%);
}

.detail-hero > * {
    position: relative;
    z-index: 1;
}
