.noise-overlay {
    background-image: url("/assets/images/paper-texture-natural-paper.png");
    opacity: 0.05;
}

.stone-texture {
    background-image: url("/assets/images/stone-texture-rocky-wall.png");
}

.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
}

.ambient-shadow {
    box-shadow: 0 32px 64px -12px rgba(150, 114, 89, 0.12);
}

.parchment-gradient {
    background: linear-gradient(to bottom right, #fcf8f8, #f5f2ed);
}

.hero-animate {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.hero-animate.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.header-logo {
    object-fit: contain;
    display: block;
}

.site-header {
    background-color: transparent;
}

.site-header.is-solid {
    background-color: rgba(252, 248, 248, 0.96);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.site-header.is-solid .header-link,
.site-header.is-solid .secondary-action,
.site-header.is-solid .material-symbols-outlined {
    color: #333434;
    text-shadow: none;
}

.site-header.is-solid .secondary-action {
    border-color: rgba(51, 52, 52, 0.18);
    background-color: rgba(51, 52, 52, 0.02);
}

.site-header.is-solid .primary-action {
    background-color: #333434;
    color: #fcf8f8;
}

.site-header.is-solid .primary-action:hover {
    background-color: #4a4a4a;
}

.site-header.is-solid .dropdown-link {
    color: #5f5e5b;
    text-shadow: none;
}

.site-header.is-scrolled {
    background-color: rgba(56, 58, 58, 0.94);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.site-header.is-scrolled .header-link,
.site-header.is-scrolled .secondary-action {
    color: #fcf8f8;
}

.site-header.is-scrolled .primary-action {
    background-color: #f5f2ed;
    color: #333434;
}

.site-header.is-scrolled .material-symbols-outlined {
    color: #fcf8f8;
}

.dropdown-link {
    border-radius: 0.125rem;
}

.mobile-menu.is-open {
    transform: translateX(0);
}

body.mobile-menu-open {
    overflow: hidden;
}

@keyframes scroll-line {
    0% {
        transform: translateY(-100%);
    }

    100% {
        transform: translateY(200%);
    }
}
