/* =========================================================
   VIRALMINT AI
   SECONDARY PAGES — MOBILE REFINEMENT
   =========================================================

   Applies to:
   - Login
   - Signup
   - Contact
   - FAQ
   - Blog
   - Other secondary pages

   IMPORTANT:
   Desktop/base pages.css remains untouched.
   This file only refines mobile presentation.
========================================================= */


/* =========================================================
   GLOBAL MOBILE SAFETY
========================================================= */

@media (max-width: 650px) {

    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

}


/* =========================================================
   SECONDARY PAGE NAVBAR
   Smaller + cleaner on mobile
========================================================= */

@media (max-width: 650px) {

    .page-header {
        width: 94%;
        max-width: none;

        margin: 10px auto 0;

        position: relative;
    }

    .page-navbar {
        min-height: 64px;
        height: 64px;

        padding: 0 14px;

        border-radius: 14px;

        gap: 10px;

        display: flex;
        align-items: center;
        justify-content: space-between;

        flex-wrap: nowrap;
    }


    /* Logo */

    .page-logo {
        flex-shrink: 0;
        gap: 8px;
    }

    .page-logo img {
        width: 34px;
        height: 34px;

        border-radius: 9px;
    }

    .page-logo span {
        display: block;

        font-size: 1rem;
        line-height: 1;

        letter-spacing: -0.4px;

        white-space: nowrap;
    }


    /* Navigation links */

    .page-nav-links {
        display: none;
    }


    /* Right-side actions */

    .page-nav-actions {
        width: auto;

        margin-left: auto;

        display: flex;
        align-items: center;
        justify-content: flex-end;

        gap: 8px;

        flex-shrink: 0;
    }


    .page-login-btn,
    .page-primary-btn {
        flex: none;

        height: 42px;

        min-height: 42px;

        padding: 0 13px;

        border-radius: 12px;

        font-size: 0.78rem;

        white-space: nowrap;
    }

}


/* =========================================================
   VERY SMALL PHONES
========================================================= */

@media (max-width: 400px) {

    .page-header {
        width: 94%;
    }

    .page-navbar {
        height: 60px;
        min-height: 60px;

        padding: 0 11px;
    }

    .page-logo img {
        width: 31px;
        height: 31px;
    }

    .page-logo span {
        font-size: 0.92rem;
    }

    .page-login-btn,
    .page-primary-btn {
        height: 39px;
        min-height: 39px;

        padding: 0 11px;

        font-size: 0.73rem;
    }

}


/* =========================================================
   AUTH PAGES
   LOGIN / SIGNUP
========================================================= */

@media (max-width: 650px) {

    .auth-container {
        width: 92%;
        max-width: 520px;

        margin-left: auto;
        margin-right: auto;

        padding: 0;
    }


    .auth-card {
        width: 100%;

        padding: 26px 20px;

        border-radius: 22px;
    }


    .auth-left h1 {
        font-size: 2.15rem;
        line-height: 1.08;

        letter-spacing: -1.5px;

        margin-bottom: 16px;
    }


    .auth-left p {
        font-size: 0.94rem;
        line-height: 1.65;
    }


    .auth-right {
        width: 100%;
    }


    /* Inputs */

    .auth-card input,
    .auth-card textarea,
    .auth-card select {
        width: 100%;
        max-width: 100%;

        min-height: 44px;

        font-size: 0.92rem;
    }


    /* Buttons */

    .auth-card button,
    .auth-card .primary-btn,
    .auth-card .page-primary-btn {
        min-height: 44px;

        border-radius: 12px;

        font-size: 0.86rem;
    }


    /* Footer text under auth forms */

    .auth-footer {
        font-size: 0.86rem;
    }

}


/* =========================================================
   LOGIN / SIGNUP HEADINGS
   Prevent unnecessary mobile wrapping
========================================================= */

@media (max-width: 650px) {

    .auth-left h1 span {
        white-space: nowrap;
    }


    /*
       Login:
       "Welcome Back To ViralMint AI"
       Keep the complete brand phrase together.
    */

    .auth-left h1 {
        max-width: 100%;
    }

}


/* =========================================================
   CONTACT PAGE
========================================================= */

@media (max-width: 650px) {

    .contact-layout {
        width: 92%;
        max-width: 100%;

        margin-left: auto;
        margin-right: auto;

        padding: 0;

        display: grid;
        grid-template-columns: 1fr;

        gap: 18px;
    }


    .contact-info {
        gap: 16px;
    }


    .contact-info .glass-card,
    .contact-form-wrapper .glass-card {
        padding: 22px 18px;

        border-radius: 20px;
    }


    .direct-contact {
        margin-top: 20px;
        padding-top: 18px;
    }


    .direct-contact-text {
        font-size: 0.88rem;
        line-height: 1.6;
    }

}


/* =========================================================
   CONTACT / GENERAL PAGE HERO
========================================================= */

@media (max-width: 650px) {

    .page-hero {
        width: 92%;
        max-width: 100%;

        margin-left: auto;
        margin-right: auto;

        padding-top: 52px;
        padding-bottom: 30px;
    }


    .page-hero h1 {
        font-size: 2rem;

        line-height: 1.08;

        letter-spacing: -1.5px;

        max-width: 100%;

        margin-left: auto;
        margin-right: auto;
    }


    .page-hero p {
        font-size: 0.92rem;

        line-height: 1.65;

        max-width: 100%;
    }

}


/* =========================================================
   FAQ HERO
========================================================= */

@media (max-width: 650px) {

    .faq-hero-section {
        width: 92%;

        padding: 58px 0 32px;

        margin-left: auto;
        margin-right: auto;
    }


    .faq-hero-content {
        width: 100%;
    }


    .faq-hero-content h1 {
        font-size: clamp(2rem, 9vw, 2.55rem);

        line-height: 1.05;

        letter-spacing: -1.5px;

        max-width: 100%;

        margin-left: auto;
        margin-right: auto;
    }


    .faq-hero-content p {
        font-size: 0.91rem;

        line-height: 1.65;

        max-width: 100%;
    }

}


/* =========================================================
   FAQ CONTENT
========================================================= */

@media (max-width: 650px) {

    .faq-page-section {
        width: 92%;

        padding-bottom: 55px;

        margin-left: auto;
        margin-right: auto;
    }


    .faq-category {
        padding: 18px;

        border-radius: 20px;
    }


    .faq-item summary {
        padding: 15px 14px;

        font-size: 0.9rem;

        line-height: 1.45;
    }


    .faq-item p {
        padding: 0 14px 16px;

        font-size: 0.86rem;

        line-height: 1.65;
    }


    .faq-cta-section {
        width: 92%;

        padding-bottom: 60px;

        margin-left: auto;
        margin-right: auto;
    }


    .faq-cta-box {
        padding: 28px 18px;

        border-radius: 22px;
    }


    .faq-cta-box h2 {
        font-size: clamp(1.8rem, 8vw, 2.35rem);

        line-height: 1.08;

        letter-spacing: -1.2px;
    }


    .faq-cta-box p {
        font-size: 0.9rem;

        line-height: 1.65;
    }

}


/* =========================================================
   BLOG HERO
========================================================= */

@media (max-width: 650px) {

    /*
       Blog title should feel strong,
       but not dominate the entire mobile screen.
    */

    .blog-hero,
    .blog-hero-section {
        width: 92%;

        margin-left: auto;
        margin-right: auto;
    }


    .blog-hero h1,
    .blog-hero-section h1 {

        font-size: clamp(2.15rem, 9.5vw, 2.75rem);

        line-height: 1.02;

        letter-spacing: -1.7px;

        max-width: 100%;

        margin-left: auto;
        margin-right: auto;
    }


    .blog-hero p,
    .blog-hero-section p {

        font-size: 0.92rem;

        line-height: 1.65;

        max-width: 100%;
    }

}


/* =========================================================
   BLOG CONTENT / CARDS
========================================================= */

@media (max-width: 650px) {

    .blog-grid {
        width: 92%;

        grid-template-columns: 1fr;

        gap: 18px;

        margin-left: auto;
        margin-right: auto;
    }


    .blog-card {
        border-radius: 20px;
        overflow: hidden;
    }


    .blog-card-content {
        padding: 18px;
    }


    .blog-card h2,
    .blog-card h3 {
        font-size: 1.15rem;

        line-height: 1.2;
    }


    .blog-card p {
        font-size: 0.88rem;

        line-height: 1.6;
    }

}


/* =========================================================
   SECONDARY PAGE FOOTER
   Main mobile reduction
========================================================= */

@media (max-width: 650px) {

    .page-footer {
        width: 100vw !important;
        max-width: none !important;

        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;

        margin-top: 65px !important;

        padding: 46px 0 26px !important;

        border-radius: 0 !important;
    }


    .page-footer-inner {
        width: 88% !important;
        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        display: grid !important;

        grid-template-columns: 1fr !important;

        gap: 26px !important;
    }


    /* Footer brand */

    .page-footer-brand {
        text-align: center;
    }


    /* Footer links */

    .page-footer-links {
        width: 100%;

        display: grid !important;

        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 24px 18px !important;

        text-align: center;
    }


    .page-footer-column h4 {
        margin-bottom: 10px;

        font-size: 0.88rem;
    }


    .page-footer-column a {
        display: block;

        margin-bottom: 7px;

        font-size: 0.82rem;

        line-height: 1.45;
    }


    /* Trust / feature strip */

    .page-footer-strip {
        width: 88% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        padding-top: 20px !important;
        padding-bottom: 20px !important;

        text-align: center;
    }


    /* Bottom */

    .page-footer-bottom {
        width: 88% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        padding-top: 18px !important;

        display: flex !important;

        flex-direction: column !important;

        align-items: center !important;

        justify-content: center !important;

        gap: 8px !important;

        text-align: center !important;
    }

}


/* =========================================================
   OLD .FOOTER SYSTEM
   Some secondary pages still use .footer
========================================================= */

@media (max-width: 650px) {

    .footer {
        width: 100%;

        margin-top: 65px !important;

        padding: 48px 6% 28px !important;

        text-align: center;
    }


    .footer-top {
        display: block !important;

        margin-bottom: 30px !important;
    }


    .footer-brand {
        margin-bottom: 25px !important;
    }


    .footer-logo {
        font-size: 1.55rem;
    }


    .footer-description {
        max-width: 340px;

        margin: 14px auto 18px !important;

        font-size: 0.86rem;

        line-height: 1.6;
    }


    .footer-social {
        justify-content: center !important;

        gap: 12px;
    }


    .footer-grid {
        display: grid !important;

        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 24px 16px !important;

        text-align: center;
    }


    .footer-column h4 {
        margin-bottom: 10px !important;

        font-size: 0.88rem;
    }


    .footer-column a {
        margin-bottom: 7px !important;

        font-size: 0.82rem;
    }


    .footer-trust {
        flex-direction: column !important;

        gap: 9px !important;

        text-align: center;
    }


    .footer-bottom {
        flex-direction: column !important;

        gap: 8px !important;

        text-align: center;
    }

}


/* =========================================================
   MOBILE FOOTER — VERY SMALL DEVICES
========================================================= */

@media (max-width: 400px) {

    .page-footer {
        padding-top: 40px !important;
        padding-bottom: 22px !important;
    }


    .page-footer-links {
        gap: 20px 12px !important;
    }


    .page-footer-column a {
        font-size: 0.78rem;
    }


    .footer {
        padding: 42px 5% 24px !important;
    }


    .footer-grid {
        gap: 20px 12px !important;
    }

}


/* =========================================================
   REMOVE EXCESSIVE MOBILE VERTICAL SPACING
========================================================= */

@media (max-width: 650px) {

    .page-header + main {
        margin-top: 0;
    }


    section:first-child {
        margin-top: 0;
    }


    .page-header {
        margin-bottom: 0;
    }

}


/* =========================================================
   MOBILE TYPOGRAPHY SAFETY
========================================================= */

@media (max-width: 650px) {

    h1,
    h2,
    h3,
    h4,
    p {
        max-width: 100%;
        overflow-wrap: normal;
        word-break: normal;
    }


    img {
        max-width: 100%;
    }


    button,
    a {
        -webkit-tap-highlight-color: transparent;
    }

}


/* =========================================================
   FINAL MOBILE POLISH
========================================================= */

@media (max-width: 650px) {

    .section-tag {
        padding: 8px 14px;

        font-size: 0.72rem;

        border-radius: 999px;
    }


    .glass-card {
        border-radius: 20px;
    }

}

/* =========================================================
   VIRALMINT AI
   SECONDARY PAGES — FINAL MOBILE REFINEMENT
   =========================================================

   Applies to:
   Login
   Signup
   Contact
   FAQ
   Blog
   Other secondary pages

   IMPORTANT:
   - HTML unchanged
   - JS unchanged
   - Desktop unchanged
   - Existing functionality unchanged
   - This block intentionally comes LAST
========================================================= */


/* =========================================================
   1. GLOBAL MOBILE SAFETY
========================================================= */

@media (max-width: 650px) {

    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

}


/* =========================================================
   2. SECONDARY NAVBAR
   Compact + stable across ALL secondary pages
========================================================= */

@media (max-width: 650px) {

    .page-header {
        width: 94% !important;
        max-width: none !important;

        margin: 10px auto 0 !important;

        position: relative;
        z-index: 100;
    }


    .page-navbar {
        width: 100% !important;

        height: 58px !important;
        min-height: 58px !important;

        padding: 0 10px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;

        gap: 8px !important;

        flex-wrap: nowrap !important;

        border-radius: 13px !important;
    }


    /* Logo */

    .page-logo {
        display: flex !important;
        align-items: center !important;

        gap: 7px !important;

        flex-shrink: 1 !important;
        min-width: 0 !important;
    }


    .page-logo img {
        width: 30px !important;
        height: 30px !important;

        flex: 0 0 30px !important;

        border-radius: 8px !important;
    }


    .page-logo span {
        display: block !important;

        font-size: 0.88rem !important;
        line-height: 1 !important;

        letter-spacing: -0.4px !important;

        white-space: nowrap !important;
    }


    /* Desktop navigation links hidden */

    .page-nav-links {
        display: none !important;
    }


    /* Login / Start Free */

    .page-nav-actions {
        width: auto !important;

        margin-left: auto !important;

        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;

        gap: 7px !important;

        flex-shrink: 0 !important;
    }


    .page-login-btn,
    .page-primary-btn {
        flex: none !important;

        height: 38px !important;
        min-height: 38px !important;

        padding: 0 11px !important;

        border-radius: 11px !important;

        font-size: 0.72rem !important;

        line-height: 1 !important;

        white-space: nowrap !important;
    }

}


/* =========================================================
   3. VERY SMALL PHONES
========================================================= */

@media (max-width: 400px) {

    .page-header {
        width: 94% !important;
        margin-top: 8px !important;
    }


    .page-navbar {
        height: 54px !important;
        min-height: 54px !important;

        padding: 0 8px !important;

        border-radius: 12px !important;
    }


    .page-logo {
        gap: 6px !important;
    }


    .page-logo img {
        width: 28px !important;
        height: 28px !important;

        flex-basis: 28px !important;
    }


    .page-logo span {
        font-size: 0.82rem !important;
    }


    .page-nav-actions {
        gap: 5px !important;
    }


    .page-login-btn,
    .page-primary-btn {
        height: 36px !important;
        min-height: 36px !important;

        padding: 0 9px !important;

        font-size: 0.68rem !important;

        border-radius: 10px !important;
    }

}


/* =========================================================
   4. CONTACT / GENERAL PAGE HERO
========================================================= */

@media (max-width: 650px) {

    .page-hero {
        width: 92% !important;
        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        padding-top: 46px !important;
        padding-bottom: 26px !important;
    }


    .page-hero h1 {
        font-size: clamp(1.72rem, 7.2vw, 2.05rem) !important;

        line-height: 1.05 !important;

        letter-spacing: -1.25px !important;

        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        text-wrap: balance;
    }


    .page-hero p {
        font-size: 0.88rem !important;

        line-height: 1.6 !important;

        max-width: 100% !important;
    }

}


/* =========================================================
   5. CONTACT PAGE
========================================================= */

@media (max-width: 650px) {

    .contact-layout {
        width: 92% !important;
        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        padding: 0 !important;

        grid-template-columns: 1fr !important;

        gap: 16px !important;
    }


    .contact-info {
        gap: 14px !important;
    }


    .contact-info .glass-card,
    .contact-form-wrapper .glass-card {
        padding: 20px 16px !important;

        border-radius: 19px !important;
    }


    .direct-contact {
        margin-top: 18px !important;

        padding-top: 16px !important;
    }


    .direct-contact-text {
        font-size: 0.86rem !important;

        line-height: 1.6 !important;
    }

}


/* =========================================================
   6. FAQ HERO
   Smaller, still strong
========================================================= */

@media (max-width: 650px) {

    .faq-hero-section {
        width: 92% !important;

        padding: 48px 0 28px !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }


    .faq-hero-content {
        width: 100% !important;
    }


    .faq-hero-content h1 {
        font-size: clamp(1.95rem, 8.3vw, 2.35rem) !important;

        line-height: 1.04 !important;

        letter-spacing: -1.45px !important;

        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        text-wrap: balance;
    }


    .faq-hero-content p {
        font-size: 0.88rem !important;

        line-height: 1.6 !important;

        max-width: 100% !important;
    }

}


/* =========================================================
   7. FAQ CONTENT
========================================================= */

@media (max-width: 650px) {

    .faq-page-section {
        width: 92% !important;

        padding-bottom: 50px !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }


    .faq-category {
        padding: 17px !important;

        border-radius: 19px !important;
    }


    .faq-item summary {
        padding: 14px 13px !important;

        font-size: 0.88rem !important;

        line-height: 1.4 !important;
    }


    .faq-item p {
        padding: 0 13px 15px !important;

        font-size: 0.84rem !important;

        line-height: 1.6 !important;
    }


    .faq-cta-section {
        width: 92% !important;

        padding-bottom: 55px !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }


    .faq-cta-box {
        padding: 26px 17px !important;

        border-radius: 21px !important;
    }


    .faq-cta-box h2 {
        font-size: clamp(1.7rem, 7.5vw, 2.15rem) !important;

        line-height: 1.06 !important;

        letter-spacing: -1.15px !important;
    }


    .faq-cta-box p {
        font-size: 0.87rem !important;

        line-height: 1.6 !important;
    }

}


/* =========================================================
   8. BLOG HERO
   Target: approximately 2 clean lines
========================================================= */

@media (max-width: 650px) {

    .blog-hero,
    .blog-hero-section {
        width: 92% !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }


    .blog-hero h1,
    .blog-hero-section h1 {
        font-size: clamp(1.95rem, 8.2vw, 2.35rem) !important;

        line-height: 1.01 !important;

        letter-spacing: -1.45px !important;

        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        text-wrap: balance;
    }


    .blog-hero p,
    .blog-hero-section p {
        font-size: 0.88rem !important;

        line-height: 1.6 !important;

        max-width: 100% !important;
    }

}


/* =========================================================
   9. BLOG CONTENT
========================================================= */

@media (max-width: 650px) {

    .blog-grid {
        width: 92% !important;

        grid-template-columns: 1fr !important;

        gap: 16px !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }


    .blog-card {
        border-radius: 19px !important;

        overflow: hidden !important;
    }


    .blog-card-content {
        padding: 17px !important;
    }


    .blog-card h2,
    .blog-card h3 {
        font-size: 1.08rem !important;

        line-height: 1.18 !important;
    }


    .blog-card p {
        font-size: 0.86rem !important;

        line-height: 1.58 !important;
    }

}


/* =========================================================
   10. SECONDARY PAGE FOOTER
   FINAL COMPACT MOBILE VERSION
========================================================= */

@media (max-width: 650px) {

    .page-footer {
        width: 100vw !important;
        max-width: none !important;

        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;

        margin-top: 50px !important;

        padding: 40px 0 22px !important;

        border-radius: 0 !important;
    }


    .page-footer-inner {
        width: 88% !important;
        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;

        display: block !important;
    }


    /* -----------------------------------------
       FOOTER BRAND
    ----------------------------------------- */

    .page-footer-brand {
        width: 100% !important;

        text-align: center !important;

        margin-bottom: 25px !important;
    }


    /* -----------------------------------------
       FOOTER LINK AREA
       2 columns on mobile
    ----------------------------------------- */

    .page-footer-links {
        width: 100% !important;

        display: grid !important;

        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 24px 16px !important;

        text-align: center !important;
    }


    .page-footer-column {
        min-width: 0 !important;
    }


    .page-footer-column h4 {
        margin-bottom: 9px !important;

        font-size: 0.84rem !important;

        line-height: 1.2 !important;
    }


    .page-footer-column a {
        display: block !important;

        margin-bottom: 6px !important;

        font-size: 0.79rem !important;

        line-height: 1.4 !important;
    }


    /* -----------------------------------------
       LEGAL
       Full-width centered row
    ----------------------------------------- */

    .page-footer-column:last-child {
        grid-column: 1 / -1 !important;

        width: 100% !important;

        margin-top: 0 !important;

        text-align: center !important;
    }


    .page-footer-column:last-child h4 {
        text-align: center !important;
    }


    .page-footer-column:last-child a {
        text-align: center !important;
    }


    /* -----------------------------------------
       TRUST STRIP
    ----------------------------------------- */

    .page-footer-strip {
        width: 100% !important;

        margin: 25px auto 0 !important;

        padding: 18px 0 !important;

        text-align: center !important;
    }


    .page-footer-strip > * {
        margin-left: auto !important;
        margin-right: auto !important;
    }


    /* -----------------------------------------
       FOOTER BOTTOM
    ----------------------------------------- */

    .page-footer-bottom {
        width: 100% !important;

        margin: 0 auto !important;

        padding-top: 16px !important;

        display: flex !important;

        flex-direction: column !important;

        align-items: center !important;

        justify-content: center !important;

        gap: 7px !important;

        text-align: center !important;
    }

}


/* =========================================================
   11. OLD FOOTER SYSTEM
   Keep compatibility without making it huge
========================================================= */

@media (max-width: 650px) {

    .footer {
        width: 100% !important;

        margin-top: 50px !important;

        padding: 40px 6% 22px !important;

        text-align: center !important;
    }


    .footer-top {
        display: block !important;

        margin-bottom: 26px !important;
    }


    .footer-brand {
        margin-bottom: 22px !important;
    }


    .footer-logo {
        font-size: 1.45rem !important;
    }


    .footer-description {
        max-width: 330px !important;

        margin: 12px auto 16px !important;

        font-size: 0.84rem !important;

        line-height: 1.55 !important;
    }


    .footer-social {
        justify-content: center !important;

        gap: 10px !important;
    }


    .footer-grid {
        display: grid !important;

        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 23px 14px !important;

        text-align: center !important;
    }


    .footer-column {
        min-width: 0 !important;
    }


    .footer-column h4 {
        margin-bottom: 9px !important;

        font-size: 0.84rem !important;
    }


    .footer-column a {
        margin-bottom: 6px !important;

        font-size: 0.79rem !important;
    }


    /* Legal / final column becomes full width */

    .footer-column:last-child {
        grid-column: 1 / -1 !important;

        text-align: center !important;
    }


    .footer-column:last-child h4,
    .footer-column:last-child a {
        text-align: center !important;
    }


    .footer-trust {
        flex-direction: column !important;

        gap: 8px !important;

        text-align: center !important;
    }


    .footer-bottom {
        flex-direction: column !important;

        gap: 7px !important;

        text-align: center !important;
    }

}


/* =========================================================
   12. VERY SMALL DEVICES
========================================================= */

@media (max-width: 400px) {

    .page-footer {
        padding-top: 36px !important;
        padding-bottom: 20px !important;
    }


    .page-footer-links {
        gap: 21px 11px !important;
    }


    .page-footer-column a {
        font-size: 0.76rem !important;
    }


    .page-footer-strip {
        padding-top: 16px !important;
        padding-bottom: 16px !important;
    }


    .footer {
        padding: 36px 5% 20px !important;
    }


    .footer-grid {
        gap: 20px 11px !important;
    }

}


/* =========================================================
   13. REMOVE EXCESSIVE MOBILE VERTICAL SPACE
========================================================= */

@media (max-width: 650px) {

    .page-header + main {
        margin-top: 0 !important;
    }


    section:first-child {
        margin-top: 0 !important;
    }

}

/* =========================================================
   VIRALMINT AI — FINAL SECONDARY MOBILE NAVBAR
   Compact / Professional / Smooth
========================================================= */

@media (max-width: 850px) {

    /* Navbar container */
    .vm-global-header {
        width: 100% !important;
        overflow: hidden !important;
    }

    .vm-global-nav {
        width: 92% !important;

        height: 60px !important;
        min-height: 60px !important;

        margin: 0 auto !important;

        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;

        gap: 8px !important;

        padding: 0 !important;
    }


    /* =====================================================
       LOGO
    ===================================================== */

    .vm-global-logo {
        display: inline-flex !important;
        align-items: center !important;

        gap: 7px !important;

        max-width: none !important;

        flex: 0 1 auto !important;
        min-width: 0 !important;
    }

    .vm-global-logo img {
        width: 29px !important;
        height: 29px !important;

        min-width: 29px !important;
        max-width: 29px !important;

        border-radius: 8px !important;
    }

    .vm-global-logo span {
        display: inline-block !important;

        font-size: 0.82rem !important;
        line-height: 1 !important;

        font-weight: 800 !important;

        letter-spacing: -0.45px !important;

        white-space: nowrap !important;
    }


    /* =====================================================
       HIDE DESKTOP NAV LINKS
    ===================================================== */

    .vm-global-links {
        display: none !important;
    }


    /* =====================================================
       LOGIN + START FREE
    ===================================================== */

    .vm-global-actions {
        display: flex !important;

        align-items: center !important;
        justify-content: flex-end !important;

        width: auto !important;

        margin: 0 0 0 auto !important;

        gap: 6px !important;

        flex: 0 0 auto !important;
    }


    .nav-login-btn {
        min-width: 0 !important;

        width: auto !important;

        height: 36px !important;
        min-height: 36px !important;

        padding: 0 11px !important;

        border-radius: 10px !important;

        font-size: 0.69rem !important;

        font-weight: 800 !important;

        letter-spacing: -0.15px !important;

        white-space: nowrap !important;
    }


    .nav-start-btn,
    .nav-dashboard-btn {
        min-width: 0 !important;

        width: auto !important;

        height: 36px !important;
        min-height: 36px !important;

        padding: 0 12px !important;

        border-radius: 10px !important;

        font-size: 0.69rem !important;

        font-weight: 800 !important;

        letter-spacing: -0.15px !important;

        white-space: nowrap !important;
    }


    /* Keep dashboard button from inheriting desktop 190px */
    .nav-dashboard-btn {
        min-width: 0 !important;
    }

}


/* =========================================================
   SMALL PHONES
========================================================= */

@media (max-width: 400px) {

    .vm-global-nav {
        width: 93% !important;

        height: 56px !important;
        min-height: 56px !important;

        gap: 6px !important;
    }


    .vm-global-logo {
        gap: 6px !important;
    }


    .vm-global-logo img {
        width: 27px !important;
        height: 27px !important;

        min-width: 27px !important;
        max-width: 27px !important;

        border-radius: 7px !important;
    }


    .vm-global-logo span {
        font-size: 0.77rem !important;

        letter-spacing: -0.35px !important;
    }


    .vm-global-actions {
        gap: 5px !important;
    }


    .nav-login-btn {
        height: 34px !important;
        min-height: 34px !important;

        padding: 0 9px !important;

        border-radius: 9px !important;

        font-size: 0.64rem !important;
    }


    .nav-start-btn,
    .nav-dashboard-btn {
        height: 34px !important;
        min-height: 34px !important;

        padding: 0 10px !important;

        border-radius: 9px !important;

        font-size: 0.64rem !important;
    }

}

/* =========================================================
   MOBILE AUTH NAVBAR LOGIC
   ========================================================= */

/* Dashboard belongs inside the mobile menu,
   not in the mobile top navbar */
@media (max-width: 850px) {

    .vm-global-actions .nav-dashboard-btn {
        display: none !important;
    }

    .vm-mobile-actions {
        display: flex;
        width: 100%;
        margin-top: 18px;
    }

    .vm-mobile-actions .mobile-dashboard-btn {
        width: 100%;
        text-align: center;
    }

}

/* =========================================================
   VIRALMINT AI — SECONDARY MOBILE MENU REFINEMENT
   Target: compact / polished mobile menu
   ========================================================= */

@media (max-width: 850px) {

    /* ---------------------------------------------------------
       MOBILE MENU CONTAINER
       --------------------------------------------------------- */

    .vm-mobile-menu {
        width: calc(100% - 40px) !important;
        margin-left: 20px !important;
        margin-right: 20px !important;

        padding: 26px 18px 12px !important;

        border-radius: 16px !important;

        box-sizing: border-box !important;

        /* Keep the menu compact */
        max-height: calc(100vh - 90px) !important;
        overflow-y: auto !important;

        /* Smooth scrolling without ugly scrollbar */
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    .vm-mobile-menu::-webkit-scrollbar {
        display: none !important;
    }


    /* ---------------------------------------------------------
       SECTION TITLES
       --------------------------------------------------------- */

    .vm-mobile-menu .vm-mobile-group-title {
        display: block !important;

        margin: 0 0 14px 12px !important;

        font-size: 10px !important;
        line-height: 1.2 !important;

        letter-spacing: 0.5px !important;

        font-weight: 700 !important;
    }


    /* ---------------------------------------------------------
       MENU LINKS
       --------------------------------------------------------- */

    .vm-mobile-menu > a {
        display: block !important;

        margin: 0 0 13px 12px !important;

        padding: 0 !important;

        font-size: 12px !important;
        line-height: 1.35 !important;

        font-weight: 600 !important;

        min-height: 0 !important;

        text-decoration: none !important;
    }


    /* ---------------------------------------------------------
       SPACE BETWEEN GROUPS
       --------------------------------------------------------- */

    .vm-mobile-menu .vm-mobile-group-title:not(:first-child) {
        margin-top: 23px !important;
    }


    /* ---------------------------------------------------------
       MOBILE ACTION AREA
       --------------------------------------------------------- */

    .vm-mobile-actions {
        width: 100% !important;

        margin-top: 17px !important;
        padding-top: 14px !important;

        border-top: 1px solid rgba(255, 255, 255, 0.07) !important;

        box-sizing: border-box !important;
    }


    /* ---------------------------------------------------------
       RETURN TO DASHBOARD
       --------------------------------------------------------- */

    .vm-mobile-actions .mobile-dashboard-btn {
        display: flex !important;

        width: 100% !important;
        min-height: 38px !important;

        align-items: center !important;
        justify-content: center !important;

        padding: 10px 14px !important;

        margin: 0 !important;

        border-radius: 10px !important;

        box-sizing: border-box !important;

        font-size: 12px !important;
        line-height: 1 !important;

        font-weight: 700 !important;

        text-align: center !important;
    }


    /* ---------------------------------------------------------
       REMOVE UNNECESSARY EXTRA SPACE
       --------------------------------------------------------- */

    .vm-mobile-menu > .vm-mobile-actions:last-child {
        margin-bottom: 0 !important;
    }

}

/* =========================================================
   AUTH VISIBILITY FIX
   Logged-out users must NEVER see Dashboard button
   ========================================================= */

@media (max-width: 850px) {

    /* Any element explicitly marked hidden must stay hidden */
    .vm-mobile-menu .hidden {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    /* Specifically protect Return to Dashboard */
    .vm-mobile-menu .mobile-dashboard-btn.hidden {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

}

/* =========================================================
   SECONDARY MOBILE NAVBAR FINAL REFINEMENT
   ========================================================= */

@media (max-width: 850px) {

    /* -----------------------------------------------------
       1. LOCK THE PAGE WHEN MOBILE MENU IS OPEN
       ----------------------------------------------------- */

    html:has(body.vm-menu-open),
    body.vm-menu-open {
        overflow: hidden !important;
        overscroll-behavior: none !important;
    }

    body.vm-menu-open {
        touch-action: none !important;
    }

    /* Keep the menu itself usable if its content is taller
       than the available mobile screen */
    body.vm-menu-open .vm-mobile-menu {
        overscroll-behavior: contain !important;
        -webkit-overflow-scrolling: touch !important;
    }


    /* -----------------------------------------------------
       2. REMOVE BOTTOM LINE / OUTLINE FROM NAV ACTIONS
       ----------------------------------------------------- */

    .vm-global-actions .nav-login-btn,
    .vm-global-actions .nav-start-btn,
    .vm-global-actions .nav-dashboard-btn {
        border-bottom: none !important;
        box-shadow: none !important;
        text-decoration: none !important;
    }


    /* Remove possible global anchor underline rules */
    .vm-global-actions a::after,
    .vm-global-actions a::before {
        display: none !important;
        content: none !important;
    }


    /* Keep buttons clean in every state */
    .vm-global-actions .nav-login-btn:hover,
    .vm-global-actions .nav-login-btn:active,
    .vm-global-actions .nav-login-btn:focus,
    .vm-global-actions .nav-start-btn:hover,
    .vm-global-actions .nav-start-btn:active,
    .vm-global-actions .nav-start-btn:focus,
    .vm-global-actions .nav-dashboard-btn:hover,
    .vm-global-actions .nav-dashboard-btn:active,
    .vm-global-actions .nav-dashboard-btn:focus {
        border-bottom: none !important;
        box-shadow: none !important;
        text-decoration: none !important;
    }

}

