
/*! BSCRS MOBILE MENU & HOME PERFECT FINAL - v20260830mobileperfect */

/* Reset older mobile menu rules that expanded everything */
html body.fascrs-reference-mode .final-simple-public-nav,
html body.fascrs-reference-mode .final-mobile-perfect-nav{
    background:transparent!important;
}

/* Desktop nav */
@media(min-width:881px){
    html body.fascrs-reference-mode .nav-toggle{
        display:none!important;
    }
    html body.fascrs-reference-mode .isj-mobile-menu-trigger{
        display:none!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        gap:6px!important;
        flex-wrap:wrap!important;
        padding:8px 0!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav a{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        min-height:40px!important;
        padding:10px 13px!important;
        border-radius:999px!important;
        color:#ffffff!important;
        text-decoration:none!important;
        font-weight:900!important;
        line-height:1!important;
        background:rgba(255,255,255,.08)!important;
        border:1px solid rgba(255,255,255,.12)!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav a:hover{
        background:#10b9c9!important;
        color:#fff!important;
        transform:translateY(-1px)!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav .nav-cta{
        background:#10b9c9!important;
        color:#fff!important;
    }
}

/* Header compact identity */
html body.fascrs-reference-mode .isj-top-identity{
    background:#ffffff!important;
    border-bottom:1px solid #d9e6f3!important;
}
html body.fascrs-reference-mode .isj-top-identity-inner{
    min-height:72px!important;
}
html body.fascrs-reference-mode .isj-journal-brand{
    gap:12px!important;
    min-width:0!important;
}
html body.fascrs-reference-mode .isj-journal-brand img{
    width:58px!important;
    height:58px!important;
    object-fit:contain!important;
    flex:0 0 58px!important;
}
html body.fascrs-reference-mode .isj-journal-brand span{
    min-width:0!important;
}
html body.fascrs-reference-mode .isj-journal-brand strong{
    display:block!important;
    color:#07143f!important;
    font-size:clamp(19px,3.2vw,28px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    word-break:normal!important;
}

/* Mobile hamburger + closed menu by default */
@media(max-width:880px){
    html body.fascrs-reference-mode .isj-top-identity-inner{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) 58px!important;
        align-items:center!important;
        gap:10px!important;
        padding:10px 12px!important;
    }
    html body.fascrs-reference-mode .isj-journal-brand img{
        width:52px!important;
        height:52px!important;
        flex-basis:52px!important;
    }
    html body.fascrs-reference-mode .isj-journal-brand strong{
        font-size:22px!important;
        line-height:1.08!important;
    }
    html body.fascrs-reference-mode .isj-journal-brand small,
    html body.fascrs-reference-mode .isj-header-meta{
        display:none!important;
    }
    html body.fascrs-reference-mode .isj-mobile-menu-trigger{
        display:grid!important;
        width:52px!important;
        height:52px!important;
        border-radius:16px!important;
        place-items:center!important;
        background:#07143f!important;
        border:1px solid rgba(7,20,63,.12)!important;
        box-shadow:0 10px 24px rgba(7,20,63,.18)!important;
        cursor:pointer!important;
        z-index:10001!important;
    }
    html body.fascrs-reference-mode .isj-mobile-menu-trigger span{
        display:block!important;
        width:28px!important;
        height:3px!important;
        background:#fff!important;
        border-radius:99px!important;
        margin:0!important;
        transition:transform .2s ease,opacity .2s ease!important;
    }
    html body.fascrs-reference-mode .isj-mobile-menu-trigger span + span{
        margin-top:6px!important;
    }
    html body.fascrs-reference-mode .isj-main-menu-bar{
        background:#07143f!important;
        border:0!important;
        box-shadow:0 14px 34px rgba(7,20,63,.18)!important;
    }
    html body.fascrs-reference-mode .isj-menu-container{
        display:block!important;
        padding:0!important;
        position:relative!important;
    }
    html body.fascrs-reference-mode .nav-toggle{
        position:absolute!important;
        opacity:0!important;
        pointer-events:none!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav{
        display:none!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
        padding:12px!important;
        background:#07143f!important;
        max-height:calc(100vh - 94px)!important;
        overflow:auto!important;
        -webkit-overflow-scrolling:touch!important;
    }
    html body.fascrs-reference-mode .nav-toggle:checked ~ .final-mobile-perfect-nav{
        display:grid!important;
        animation:mobileMenuDrop .18s ease-out both!important;
    }
    @keyframes mobileMenuDrop{
        from{opacity:0;transform:translateY(-8px)}
        to{opacity:1;transform:none}
    }
    html body.fascrs-reference-mode .nav-toggle:checked ~ .final-mobile-perfect-nav::before{
        content:"Menu"!important;
        grid-column:1/-1!important;
        color:#8eeaff!important;
        font-weight:900!important;
        letter-spacing:.08em!important;
        text-transform:uppercase!important;
        font-size:12px!important;
        padding:2px 4px!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav a{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        min-height:46px!important;
        width:100%!important;
        padding:10px 9px!important;
        border-radius:14px!important;
        background:rgba(255,255,255,.08)!important;
        border:1px solid rgba(255,255,255,.12)!important;
        color:#ffffff!important;
        font-weight:900!important;
        text-decoration:none!important;
        text-align:center!important;
        line-height:1.15!important;
        box-shadow:none!important;
        white-space:normal!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav a:first-of-type{
        grid-column:1/-1!important;
        background:#0d4fa3!important;
        border-color:#10b9c9!important;
    }
    html body.fascrs-reference-mode .final-mobile-perfect-nav .nav-cta{
        grid-column:1/-1!important;
        background:#10b9c9!important;
        color:#ffffff!important;
        min-height:52px!important;
    }
    html body.fascrs-reference-mode .nav-toggle:checked ~ .final-mobile-perfect-nav + *{
        margin-top:0!important;
    }
}

/* Home page mobile reduction - no giant hero overflow */
html body.fascrs-reference-mode .clean-production-home{
    padding-top:18px!important;
}
html body.fascrs-reference-mode .clean-hero{
    overflow:hidden!important;
}
html body.fascrs-reference-mode .clean-hero-text h1{
    max-width:920px!important;
}
html body.fascrs-reference-mode .clean-hero-guide{
    align-content:start!important;
}
@media(max-width:880px){
    html body.fascrs-reference-mode .clean-production-home{
        padding:14px 0 30px!important;
    }
    html body.fascrs-reference-mode .clean-hero{
        grid-template-columns:1fr!important;
        gap:14px!important;
        padding:22px!important;
        border-radius:20px!important;
        margin-top:0!important;
    }
    html body.fascrs-reference-mode .clean-hero h1,
    html body.fascrs-reference-mode .clean-hero-text h1{
        font-size:34px!important;
        line-height:1.04!important;
        letter-spacing:-.045em!important;
        margin:6px 0 10px!important;
    }
    html body.fascrs-reference-mode .clean-hero p{
        font-size:15.5px!important;
        line-height:1.55!important;
        font-weight:700!important;
    }
    html body.fascrs-reference-mode .clean-hero-buttons{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:10px!important;
        margin-top:16px!important;
    }
    html body.fascrs-reference-mode .clean-hero-buttons .btn{
        width:100%!important;
        min-height:48px!important;
    }
    html body.fascrs-reference-mode .clean-hero-guide{
        padding:12px!important;
        border-radius:16px!important;
    }
    html body.fascrs-reference-mode .clean-hero-guide a,
    html body.fascrs-reference-mode .clean-hero-guide button{
        min-height:48px!important;
        border-radius:12px!important;
    }
    html body.fascrs-reference-mode .clean-actions,
    html body.fascrs-reference-mode .clean-path-grid,
    html body.fascrs-reference-mode .clean-content-grid{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:12px!important;
        margin:14px 0!important;
    }
    html body.fascrs-reference-mode .clean-action-card{
        min-height:112px!important;
        padding:16px!important;
    }
    html body.fascrs-reference-mode .home-about-hero-card h2{
        font-size:30px!important;
    }
    html body.fascrs-reference-mode .home-about-longform{
        max-height:none!important;
    }
}

/* General mobile page polish */
@media(max-width:720px){
    html body.fascrs-reference-mode .container,
    html body.fascrs-reference-mode main.container.main,
    html body.fascrs-reference-mode main.main.journaltheme-main-container{
        width:100%!important;
        max-width:100%!important;
        padding-left:12px!important;
        padding-right:12px!important;
        box-sizing:border-box!important;
    }
    html body.fascrs-reference-mode .card,
    html body.fascrs-reference-mode .clean-panel,
    html body.fascrs-reference-mode .ojs-content-card,
    html body.fascrs-reference-mode .portal-hero,
    html body.fascrs-reference-mode .admin-dashboard-hero{
        border-radius:18px!important;
    }
    html body.fascrs-reference-mode .grid,
    html body.fascrs-reference-mode .grid-2,
    html body.fascrs-reference-mode .grid-3,
    html body.fascrs-reference-mode .grid-4{
        display:grid!important;
        grid-template-columns:1fr!important;
    }
    html body.fascrs-reference-mode table{
        min-width:640px!important;
    }
    html body.fascrs-reference-mode input,
    html body.fascrs-reference-mode select,
    html body.fascrs-reference-mode textarea{
        font-size:16px!important;
    }
}

/* Remove old forced mobile expanded menu artifacts */
@media(max-width:880px){
    html body.fascrs-reference-mode .about-menu-dropdown,
    html body.fascrs-reference-mode .about-menu-dropdown .dropdown-panel,
    html body.fascrs-reference-mode .nav-dropdown,
    html body.fascrs-reference-mode .nav-dropdown .dropdown-panel{
        position:static!important;
        display:contents!important;
        background:transparent!important;
        box-shadow:none!important;
        border:0!important;
        padding:0!important;
        margin:0!important;
    }
}
