/* =========================================
   NEVMORY — RESPONSIVE
========================================= */


@media (max-width: 900px) {

    .main-nav {
        padding: 20px;
    }


    .nav-links {
        display: none;
    }


    .language-switch {
        margin-left: auto;
        margin-right: 20px;
    }


    .scroll-indicator {
        left: 20px;
        bottom: 25px;
    }


    section {
        padding: 100px 20px;
    }

    .video-thumbnail {
        width: 100%;
    }

}


@media (max-width: 600px) {

    .hero-logo {
        font-size: 3rem;

        letter-spacing: 0.12em;
    }


    .hero-tagline {
        font-size: 0.65rem;

        letter-spacing: 0.16em;
    }


    .hero-cta {
        margin-top: 40px;
    }

}

@media (max-width: 600px) {

    .release-section {
        padding: 80px 18px;
    }

    .release-container {
        gap: 42px;
    }

    .release-art-frame {
        max-width: 100%;
    }

    .release-info h2 {
        font-size: 54px;
    }

    .release-description {
        font-size: 14px;
    }

    .release-button {
        width: 100%;
        justify-content: center;
    }

}

@media (max-width: 900px) {

    .band-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .band-member img {
        height: 560px;
    }

}

@media (min-width: 901px) and (max-width: 1200px) {

    .band-member img {
        height: 450px;
    }

}

/* =========================================
   MUSIC — RESPONSIVE
   ========================================= */

@media (max-width: 900px) {

    .music-release {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .release-cover {
        max-width: 600px;
        margin: 0 auto;
    }

    .release-info {
        max-width: 100%;
    }

}

@media (max-width: 600px) {

    .music-release {
        margin-top: 35px;
    }

    .release-info h3 {
        font-size: 42px;
    }

    .archive-data {
        grid-template-columns: 1fr;
    }

    .archive-data div + div {
        padding-left: 0;
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.10);
    }

    .signal-status {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

}

/* =========================================
   VIDEOS — RESPONSIVE
   ========================================= */

@media (max-width: 900px) {

    .video-info {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .video-info p {
        grid-column: 1;
        grid-row: auto;

        margin-top: 10px;
    }

    .video-info .release-button {
        grid-column: 1;
    }

}

@media (max-width: 600px) {

    .featured-video {
        margin-top: 35px;
    }

    .play-button {
        width: 60px;
        height: 60px;

        font-size: 17px;
    }

    .video-corner {
        left: 15px;
        bottom: 15px;

        font-size: 8px;
    }

    .video-info h3 {
        font-size: 42px;
    }

}

/* =========================================
   NEVMORY UNIVERSE — RESPONSIVE
========================================= */

@media (max-width: 900px) {

    .universe-fragments {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        margin-top: 35px;
    }

    .universe-fragment {
        min-height: 0 !important;
        height: auto;
        padding: 22px 25px 24px;
    }

    .universe-fragment + .universe-fragment {
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.10);
    }

    .fragment-number {
        margin: 0;
    }

    .fragment-content {
        margin-top: 18px !important;
    }

    .fragment-label {
        margin-bottom: 8px;
    }

    .universe-fragment h3 {
        margin-top: 8px;
        font-size: 24px;
        line-height: 1.15;
    }

    .universe-fragment p {
        margin-top: 10px;
        font-size: 12px;
        line-height: 1.5;
    }

    .universe-timeline {
        margin-top: 35px;
    }

    .universe-closing {
        margin-top: 35px;
    }

}


@media (max-width: 600px) {

    .universe-fragments {
        margin-top: 30px;
    }

    .universe-fragment {
        padding: 18px 22px 20px;
    }

    .fragment-content {
        margin-top: 14px !important;
    }

    .universe-fragment h3 {
        font-size: 22px;
    }

    .universe-fragment p {
        font-size: 11px;
        line-height: 1.45;
    }

    .universe-timeline {
        margin-top: 30px;
    }

    .universe-closing {
        margin-top: 30px;
    }

}

/* =========================================
   JOURNAL — RESPONSIVE
========================================= */

@media (max-width: 900px) {

    .journal-entries {
        grid-template-columns: 1fr;
        margin-top: 40px;
    }

    .journal-entry {
        min-height: auto;
        padding: 22px 25px 24px;
    }

    .journal-entry + .journal-entry {
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.10);
    }

    .journal-entry-content {
        margin-top: 24px;
    }

    .journal-entry h3 {
        font-size: 25px;
        margin-top: 10px;
    }

    .journal-entry p {
        margin-top: 12px;
        font-size: 12px;
        line-height: 1.55;
    }

    .journal-link {
        margin-top: 16px;
    }

}

@media (max-width: 600px) {

    .journal-intro {
        font-size: 13px;
        line-height: 1.6;
    }

    .journal-entries {
        margin-top: 35px;
    }

    .journal-entry {
        padding: 20px 25px 22px;
    }

    .journal-entry-content {
        margin-top: 20px;
    }

    .journal-entry h3 {
        font-size: 23px;
    }

    .journal-entry p {
        font-size: 12px;
        line-height: 1.5;
    }

    .journal-link {
        margin-top: 14px;
    }

    .journal-signature {
        margin-top: 35px;
        font-size: 8px;
        line-height: 1.7;
    }

}

/* =========================================
   MOBILE MENU
========================================= */

@media (max-width: 900px) {

    .nav-container {
        position: relative;
    }

    .menu-toggle {
        display: block;
        position: relative;
        z-index: 1001;
        border: none;
        background: transparent;
        color: #f5f5f7;
        font-size: 28px;
        line-height: 1;
        cursor: pointer;
        padding: 5px;
    }

    .nav-links {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        display: none;
        flex-direction: column;
        align-items: center;
        gap: 0;
        padding: 25px 0;
        background: rgba(5, 5, 10, 0.96);
        border-top: 1px solid rgba(255, 255, 255, 0.10);
        border-bottom: 1px solid rgba(255, 255, 255, 0.10);
        backdrop-filter: blur(15px);
        z-index: 1000;
    }

    .nav-links.mobile-open {
        display: flex;
    }

    .nav-links a {
        display: block;
        width: 100%;
        padding: 15px 25px;
        text-align: center;
    }

    .social-links a,
    .social-links a:hover,
    .social-links a:focus,
    .social-links a:active {
        text-decoration: none !important;
        border-bottom: none !important;
        outline: none;
        -webkit-tap-highlight-color: transparent;
    }

}

/* =========================================
   HERO — MOBILE
========================================= */

@media (max-width: 600px) {

    .hero {
        min-height: 100svh;
        background: #05050a;
    }

    .hero-background {
        background-size: contain;
        background-position: center center;
        background-color: #05050a;
    }

    .hero-background {
        background-image: url("../assets/images/hero-mobile.png");
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
    }

    .hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(3, 5, 15, 0.18) 0%,
                rgba(3, 5, 15, 0.08) 45%,
                rgba(3, 5, 15, 0.72) 100%
            );
    }

    .hero-content {
        left: 50%;
        bottom: 9%;
        width: 92%;
    }

    .hero-logo {
        font-size: clamp(2.8rem, 13vw, 4.5rem);
        letter-spacing: 0.12em;
    }

    .hero-content h1 {
        margin-bottom: 18px;
        font-size: 18px;
        line-height: 1.15;
    }

    .hero-tagline {
        margin-top: 18px;
        font-size: 10px;
        line-height: 1.6;
        letter-spacing: 0.16em;
    }

    .hero-cta {
        margin-top: 8px;
        padding: 14px 22px;
        font-size: 9px;
    }

}