/* ============================================
   NEUSCIENCE THEME - Science Advances Style
   Version: 5.0 | Dec 30, 2025
   Publisher: NeucitePress
   FULL WIDTH HEADER + FOOTER
   ============================================ */

/* === VARIABLES === */
:root {
    --ns-red: #B31B1B;
    --ns-red-dark: #8B0000;
    --ns-navy: #1a1a2e;
    --ns-navy-light: #2d2d44;
    --ns-charcoal: #212121;
    --ns-white: #ffffff;
    --ns-gray-50: #f9fafb;
    --ns-gray-100: #f3f4f6;
    --ns-gray-200: #e5e7eb;
    --ns-gray-300: #9ca3af;
    --ns-gray-400: #6b7280;
    --ns-gray-500: #4b5563;
    --ns-text: #333333;
    --ns-max-width: 1200px;
}

/* === MASTER FULL WIDTH RESET === */
/* Remove ALL OJS container constraints */
.pkp_structure_page {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pkp_structure_head,
.pkp_structure_footer_wrapper,
.pkp_head_wrapper,
.pkp_site_name_wrapper,
.pkp_navigation_primary_wrapper,
.pkp_navigation_primary_row,
.pkp_navigation_user_wrapper,
.pkp_site_nav_menu {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* === HEADER STRUCTURE === */
.pkp_structure_head {
    background: var(--ns-white) !important;
    border-bottom: none !important;
    box-shadow: none !important;
    position: relative !important;
}

/* Logo Area - White background full width */
.pkp_head_wrapper {
    background: var(--ns-white) !important;
    width: 100% !important;
    padding: 0 !important;
}

.pkp_site_name_wrapper {
    background: var(--ns-white) !important;
    padding: 1rem calc((100% - var(--ns-max-width)) / 2 + 1rem) !important;
}

/* Logo styling */
.pkp_site_name {
    margin: 0 !important;
    padding: 0 !important;
}

.pkp_site_name a {
    display: inline-block !important;
}

.pkp_site_name img {
    max-height: 60px !important;
    width: auto !important;
}

/* Hide mobile toggle on desktop */
.pkp_site_nav_toggle {
    display: none !important;
}

/* === PRIMARY NAVIGATION - FULL WIDTH RED BAR === */
.pkp_site_nav_menu {
    background: transparent !important;
}

.pkp_navigation_primary_row {
    background: var(--ns-red) !important;
    width: 100% !important;
}

.pkp_navigation_primary_wrapper {
    background: var(--ns-red) !important;
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

/* Primary nav menu items */
.pkp_navigation_primary {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
}

.pkp_navigation_primary > li {
    display: inline-block !important;
    margin: 0 !important;
}

.pkp_navigation_primary > li > a {
    display: block !important;
    color: var(--ns-white) !important;
    padding: 1rem 1.25rem !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    text-transform: none !important;
    transition: background 0.2s !important;
}

.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li.current > a {
    background: rgba(0,0,0,0.15) !important;
}

/* Dropdown menus */
.pkp_navigation_primary ul {
    background: var(--ns-white) !important;
    border: 1px solid var(--ns-gray-200) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    border-radius: 4px !important;
    min-width: 200px !important;
}

.pkp_navigation_primary ul a {
    color: var(--ns-text) !important;
    padding: 0.75rem 1rem !important;
}

.pkp_navigation_primary ul a:hover {
    background: var(--ns-gray-100) !important;
    color: var(--ns-red) !important;
}

/* Search link */
.pkp_navigation_search_wrapper {
    margin-left: auto !important;
}

.pkp_search {
    color: var(--ns-white) !important;
    padding: 1rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

.pkp_search:hover {
    background: rgba(0,0,0,0.15) !important;
}

/* === USER NAVIGATION - FULL WIDTH RED BAR (BOTTOM) === */
.pkp_navigation_user_wrapper {
    background: var(--ns-red) !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
}

.pkp_navigation_user {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0.5rem 1rem !important;
    display: flex !important;
    justify-content: flex-end !important;
    list-style: none !important;
}

.pkp_navigation_user > li {
    display: inline-block !important;
}

.pkp_navigation_user a {
    color: var(--ns-white) !important;
    font-size: 0.875rem !important;
    padding: 0.25rem 0.75rem !important;
    text-decoration: none !important;
}

.pkp_navigation_user a:hover {
    text-decoration: underline !important;
}

/* === CONTENT AREA === */
.pkp_structure_content {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 2rem 1rem !important;
    background: var(--ns-white) !important;
}

.pkp_structure_main {
    background: var(--ns-white) !important;
}

/* === PAGE ELEMENTS === */
/* Page titles */
.page_index_journal h2,
.page h2,
.pkp_page_title {
    color: var(--ns-text) !important;
    font-size: 1.75rem !important;
    font-weight: 700 !important;
    margin-bottom: 0.5rem !important;
}

/* Journal description */
.homepage_about,
.journal_description {
    color: var(--ns-gray-400) !important;
    font-size: 1rem !important;
    margin-bottom: 1.5rem !important;
}

/* Sections with red left border */
.cmp_block,
.obj_announcement_summary,
section {
    border-left: 3px solid var(--ns-red) !important;
    padding-left: 1rem !important;
    margin-bottom: 1.5rem !important;
    background: var(--ns-gray-50) !important;
    padding: 1.25rem !important;
    border-radius: 0 4px 4px 0 !important;
}

section h2,
.cmp_block h2 {
    color: var(--ns-text) !important;
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    margin-bottom: 0.75rem !important;
}

/* Links */
a {
    color: var(--ns-red) !important;
    text-decoration: none !important;
}

a:hover {
    text-decoration: underline !important;
}

/* Buttons */
.cmp_button,
.pkp_button,
button[type="submit"],
input[type="submit"] {
    background: var(--ns-red) !important;
    color: var(--ns-white) !important;
    border: none !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 4px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: background 0.2s !important;
}

.cmp_button:hover,
.pkp_button:hover,
button[type="submit"]:hover,
input[type="submit"]:hover {
    background: var(--ns-red-dark) !important;
}


/* ============================================
   FOOTER - SCIENCE ADVANCES STYLE
   ============================================ */

/* === FOOTER JOURNAL FAMILY BAR === */
.ncp-footer-journals {
    background: var(--ns-navy) !important;
    width: 100% !important;
    padding: 1.5rem 0 !important;
}

.ncp-footer-journals-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
}

.ncp-footer-journals h4 {
    color: var(--ns-gray-300) !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    margin-bottom: 1rem !important;
    font-weight: 500 !important;
}

.ncp-journal-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.5rem 2rem !important;
}

.ncp-journal-list li {
    display: inline-block !important;
}

.ncp-journal-list a {
    color: var(--ns-gray-300) !important;
    text-decoration: none !important;
    font-size: 0.9rem !important;
    transition: color 0.2s !important;
}

.ncp-journal-list a:hover {
    color: var(--ns-white) !important;
    text-decoration: none !important;
}

.ncp-journal-list a.active {
    color: var(--ns-red) !important;
    font-weight: 600 !important;
}

.ncp-journal-list .coming-soon {
    font-size: 0.7rem !important;
    color: var(--ns-gray-400) !important;
    margin-left: 0.25rem !important;
    font-style: italic !important;
}

/* === FOOTER MAIN LINKS === */
.ncp-footer-main {
    background: var(--ns-charcoal) !important;
    width: 100% !important;
    padding: 3rem 0 !important;
}

.ncp-footer-main-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 2rem !important;
}

.ncp-footer-col h5 {
    color: var(--ns-white) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    margin-bottom: 1rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

.ncp-footer-col ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ncp-footer-col li {
    margin-bottom: 0.5rem !important;
}

.ncp-footer-col a {
    color: var(--ns-gray-300) !important;
    font-size: 0.875rem !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
}

.ncp-footer-col a:hover {
    color: var(--ns-white) !important;
    text-decoration: none !important;
}

/* === FOOTER PUBLISHER INFO === */
.ncp-footer-publisher {
    background: var(--ns-navy) !important;
    width: 100% !important;
    padding: 2rem 0 !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
}

.ncp-footer-publisher-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.ncp-publisher-info {
    display: flex !important;
    align-items: center !important;
    gap: 1rem !important;
}

.ncp-publisher-info img {
    height: 40px !important;
    width: auto !important;
}

.ncp-publisher-text {
    color: var(--ns-gray-300) !important;
    font-size: 0.875rem !important;
    line-height: 1.5 !important;
}

.ncp-publisher-text strong {
    color: var(--ns-white) !important;
    display: block !important;
}

.ncp-publisher-text .tagline {
    font-style: italic !important;
    color: var(--ns-gray-400) !important;
}

.ncp-social-links {
    display: flex !important;
    gap: 1rem !important;
}

.ncp-social-links a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    background: rgba(255,255,255,0.1) !important;
    border-radius: 50% !important;
    color: var(--ns-gray-300) !important;
    text-decoration: none !important;
    transition: all 0.2s !important;
    font-size: 0.875rem !important;
}

.ncp-social-links a:hover {
    background: var(--ns-red) !important;
    color: var(--ns-white) !important;
}

/* === FOOTER LEGAL BAR === */
.ncp-footer-legal {
    background: var(--ns-navy) !important;
    width: 100% !important;
    padding: 1rem 0 !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
}

.ncp-footer-legal-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.ncp-copyright {
    color: var(--ns-gray-400) !important;
    font-size: 0.8rem !important;
}

.ncp-legal-links {
    display: flex !important;
    gap: 1.5rem !important;
}

.ncp-legal-links a {
    color: var(--ns-gray-400) !important;
    font-size: 0.8rem !important;
    text-decoration: none !important;
}

.ncp-legal-links a:hover {
    color: var(--ns-white) !important;
}

/* Hide old footer content */
.pkp_structure_footer,
.pkp_footer_content,
.pkp_brand_footer {
    display: none !important;
}

/* === RESPONSIVE === */
@media (max-width: 992px) {
    .ncp-footer-main-inner {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .pkp_site_name_wrapper {
        padding: 1rem !important;
    }
    
    .pkp_navigation_primary_wrapper {
        padding: 0 !important;
    }
    
    .pkp_navigation_primary > li > a {
        padding: 0.75rem 1rem !important;
        font-size: 0.875rem !important;
    }
    
    .ncp-journal-list {
        flex-direction: column !important;
        gap: 0.5rem !important;
    }
    
    .ncp-footer-main-inner {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    .ncp-footer-publisher-inner,
    .ncp-footer-legal-inner {
        flex-direction: column !important;
        gap: 1rem !important;
        text-align: center !important;
    }
}

@media (max-width: 480px) {
    .ncp-footer-main-inner {
        grid-template-columns: 1fr !important;
    }
}


/* ============================================
   HOMEPAGE - HERO SECTION
   Step 1: Cover Image + Issue Info
   ============================================ */

/* Hero Container */
.ns-hero {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
    padding: 3rem 0 !important;
    margin-bottom: 2rem !important;
}

.ns-hero-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    display: grid !important;
    grid-template-columns: 300px 1fr !important;
    gap: 3rem !important;
    align-items: start !important;
}

/* Cover Image */
.ns-hero-cover {
    position: relative !important;
}

.ns-hero-cover img {
    width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.2) !important;
    transition: transform 0.3s ease !important;
}

.ns-hero-cover img:hover {
    transform: translateY(-5px) !important;
}

/* Placeholder if no cover */
.ns-cover-placeholder {
    width: 100% !important;
    aspect-ratio: 3/4 !important;
    background: linear-gradient(135deg, var(--ns-red) 0%, var(--ns-red-dark) 100%) !important;
    border-radius: 8px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--ns-white) !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.2) !important;
}

.ns-logo-large {
    font-size: 5rem !important;
    font-weight: 700 !important;
    font-family: Georgia, serif !important;
}

.ns-cover-placeholder .ns-journal-name {
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    margin-top: 0.5rem !important;
}

.ns-cover-placeholder .ns-vol {
    font-size: 0.9rem !important;
    opacity: 0.8 !important;
    margin-top: 0.25rem !important;
}

/* Hero Content */
.ns-hero-content {
    padding-top: 1rem !important;
}

.ns-label {
    display: inline-block !important;
    background: var(--ns-red) !important;
    color: var(--ns-white) !important;
    padding: 0.25rem 0.75rem !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    border-radius: 3px !important;
    margin-bottom: 1rem !important;
}

.ns-issue-title {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: var(--ns-text) !important;
    margin: 0 0 1rem 0 !important;
    line-height: 1.2 !important;
}

.ns-issue-desc {
    font-size: 1.1rem !important;
    color: var(--ns-gray-500) !important;
    line-height: 1.6 !important;
    margin-bottom: 1.5rem !important;
}

/* Featured Articles */
.ns-hero-featured {
    background: var(--ns-white) !important;
    border-left: 3px solid var(--ns-red) !important;
    padding: 1rem 1.25rem !important;
    margin-bottom: 1.5rem !important;
    border-radius: 0 4px 4px 0 !important;
}

.ns-featured-label {
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    color: var(--ns-gray-400) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    display: block !important;
    margin-bottom: 0.5rem !important;
}

.ns-featured-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ns-featured-list li {
    padding: 0.25rem 0 !important;
    color: var(--ns-text) !important;
    font-size: 0.95rem !important;
}

.ns-featured-list li::before {
    content: "→ " !important;
    color: var(--ns-red) !important;
    font-weight: bold !important;
}

/* Hero Buttons */
.ns-hero-buttons {
    display: flex !important;
    gap: 1rem !important;
    flex-wrap: wrap !important;
}

.ns-btn {
    display: inline-block !important;
    padding: 0.875rem 1.5rem !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
}

.ns-btn-primary {
    background: var(--ns-red) !important;
    color: var(--ns-white) !important;
}

.ns-btn-primary:hover {
    background: var(--ns-red-dark) !important;
    text-decoration: none !important;
}

.ns-btn-secondary {
    background: var(--ns-white) !important;
    color: var(--ns-red) !important;
    border: 2px solid var(--ns-red) !important;
}

.ns-btn-secondary:hover {
    background: var(--ns-red) !important;
    color: var(--ns-white) !important;
    text-decoration: none !important;
}

/* About Section */
.ns-about {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto 2rem !important;
    padding: 2rem !important;
    background: var(--ns-white) !important;
    border-left: 3px solid var(--ns-red) !important;
    border-radius: 0 8px 8px 0 !important;
}

.ns-about h2 {
    font-size: 1.5rem !important;
    color: var(--ns-text) !important;
    margin-bottom: 1rem !important;
}

.ns-about-content {
    color: var(--ns-gray-500) !important;
    line-height: 1.7 !important;
}

.ns-link {
    display: inline-block !important;
    color: var(--ns-red) !important;
    font-weight: 500 !important;
    margin-top: 1rem !important;
    text-decoration: none !important;
}

.ns-link:hover {
    text-decoration: underline !important;
}

/* Current Issue Section */
.ns-current-issue {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto 2rem !important;
    padding: 0 1rem !important;
}

.ns-current-issue h2 {
    font-size: 1.5rem !important;
    color: var(--ns-text) !important;
    margin-bottom: 1.5rem !important;
    padding-bottom: 0.5rem !important;
    border-bottom: 2px solid var(--ns-gray-200) !important;
}

/* Responsive */
@media (max-width: 768px) {
    .ns-hero-inner {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    
    .ns-hero-cover {
        max-width: 250px !important;
        margin: 0 auto !important;
    }
    
    .ns-issue-title {
        font-size: 1.5rem !important;
    }
    
    .ns-hero-buttons {
        flex-direction: column !important;
    }
    
    .ns-btn {
        text-align: center !important;
    }
}


/* ============================================
   HOMEPAGE - FULL WIDTH FIX
   ============================================ */

/* Remove container constraints from homepage */
.page_index_journal {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Hero Section - FULL WIDTH */
.ns-hero {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
    padding: 3rem 0 !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
}

/* About Section - FULL WIDTH with white bg */
.ns-about {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: var(--ns-white) !important;
    padding: 3rem 0 !important;
    margin-bottom: 0 !important;
    border-left: none !important;
    border-radius: 0 !important;
}

.ns-about-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    border-left: 3px solid var(--ns-red) !important;
    padding-left: 1.5rem !important;
}

/* Current Issue Section - FULL WIDTH */
.ns-current-issue {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: var(--ns-gray-50) !important;
    padding: 3rem 0 !important;
    margin-bottom: 0 !important;
}

.ns-current-issue-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
}

/* Fix content area constraints */
.pkp_structure_content {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.pkp_structure_main {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove any left borders from main sections */
.page_index_journal > section,
.page_index_journal > .ns-hero,
.page_index_journal > .ns-about {
    border-left: none !important;
}


/* ============================================
   ARTICLE GRID SECTION - FULL WIDTH
   Step 2: 3x2 Grid of Article Cards
   ============================================ */

.ns-articles {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: var(--ns-gray-50) !important;
    padding: 4rem 0 !important;
    border: none !important;
}

.ns-articles-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
}

/* Header with title and "View All" link */
.ns-articles-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 2rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 2px solid var(--ns-gray-200) !important;
}

.ns-articles-header h2 {
    font-size: 1.75rem !important;
    font-weight: 700 !important;
    color: var(--ns-charcoal) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ns-view-all {
    color: var(--ns-red) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    font-size: 0.95rem !important;
    transition: color 0.2s ease !important;
}

.ns-view-all:hover {
    color: var(--ns-red-dark) !important;
    text-decoration: underline !important;
}

/* 3-Column Grid */
.ns-articles-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 1.5rem !important;
}

/* Article Card */
.ns-article-card {
    background: var(--ns-white) !important;
    border-radius: 8px !important;
    padding: 1.5rem !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
    border: 1px solid var(--ns-gray-200) !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
}

.ns-article-card:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
    transform: translateY(-4px) !important;
    border-color: var(--ns-red) !important;
}

/* Article Type Badge */
.ns-article-type {
    display: inline-block !important;
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 0.3rem 0.6rem !important;
    border-radius: 4px !important;
    margin-bottom: 0.75rem !important;
    width: fit-content !important;
}

.ns-type-research {
    background: #e3f2fd !important;
    color: #1565c0 !important;
}

.ns-type-review {
    background: #f3e5f5 !important;
    color: #7b1fa2 !important;
}

.ns-type-brief {
    background: #e8f5e9 !important;
    color: #2e7d32 !important;
}

.ns-type-perspective {
    background: #fff3e0 !important;
    color: #ef6c00 !important;
}

.ns-type-editorial {
    background: #fce4ec !important;
    color: #c2185b !important;
}

/* Article Title */
.ns-article-title {
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 0 0.75rem 0 !important;
    flex-grow: 1 !important;
}

.ns-article-title a {
    color: var(--ns-charcoal) !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.ns-article-title a:hover {
    color: var(--ns-red) !important;
}

/* Article Authors */
.ns-article-authors {
    font-size: 0.85rem !important;
    color: var(--ns-gray-500) !important;
    margin: 0 0 0.5rem 0 !important;
    font-style: italic !important;
}

/* Article Meta (Date, DOI) */
.ns-article-meta {
    font-size: 0.75rem !important;
    color: var(--ns-gray-400) !important;
    margin: 0 !important;
    padding-top: 0.75rem !important;
    border-top: 1px solid var(--ns-gray-100) !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.ns-article-date {
    font-weight: 500 !important;
}

.ns-article-doi {
    font-family: 'Monaco', 'Menlo', monospace !important;
    font-size: 0.7rem !important;
}

/* Responsive: 2 columns on tablet */
@media (max-width: 992px) {
    .ns-articles-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Responsive: 1 column on mobile */
@media (max-width: 640px) {
    .ns-articles-grid {
        grid-template-columns: 1fr !important;
    }
    
    .ns-articles-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.5rem !important;
    }
    
    .ns-article-card {
        padding: 1.25rem !important;
    }
}


/* ============================================
   ARTICLES PLACEHOLDER - When No Issue Yet
   ============================================ */

.ns-articles-placeholder {
    text-align: center !important;
    padding: 4rem 2rem !important;
    background: var(--ns-white) !important;
    border-radius: 12px !important;
    border: 2px dashed var(--ns-gray-300) !important;
}

.ns-placeholder-icon {
    font-size: 4rem !important;
    margin-bottom: 1rem !important;
}

.ns-articles-placeholder h3 {
    font-size: 1.5rem !important;
    color: var(--ns-charcoal) !important;
    margin-bottom: 0.75rem !important;
}

.ns-articles-placeholder p {
    color: var(--ns-gray-500) !important;
    font-size: 1.1rem !important;
    max-width: 500px !important;
    margin: 0 auto 1.5rem auto !important;
}

/* ============================================
   CALL FOR PAPERS BANNER - FULL WIDTH
   Step 3: Red banner with CTA
   ============================================ */

.ns-cfp {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: linear-gradient(135deg, var(--ns-red) 0%, var(--ns-red-dark) 100%) !important;
    padding: 3rem 0 !important;
    border: none !important;
}

.ns-cfp-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 2rem !important;
}

.ns-cfp-content h2 {
    color: var(--ns-white) !important;
    font-size: 1.75rem !important;
    margin: 0 0 0.5rem 0 !important;
}

.ns-cfp-content p {
    color: rgba(255,255,255,0.9) !important;
    font-size: 1.1rem !important;
    margin: 0 !important;
}

.ns-btn-white {
    background: var(--ns-white) !important;
    color: var(--ns-red) !important;
    padding: 0.875rem 2rem !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
}

.ns-btn-white:hover {
    background: var(--ns-gray-100) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2) !important;
}

/* Responsive CFP */
@media (max-width: 768px) {
    .ns-cfp-inner {
        flex-direction: column !important;
        text-align: center !important;
    }
    
    .ns-cfp-content h2 {
        font-size: 1.5rem !important;
    }
}

/* ============================================
   ANNOUNCEMENTS SECTION - Improved
   ============================================ */

.ns-announcements {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: var(--ns-white) !important;
    padding: 3rem 0 !important;
    border: none !important;
}

.ns-announcements-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
}

.ns-announcements-inner h2 {
    font-size: 1.75rem !important;
    color: var(--ns-charcoal) !important;
    margin-bottom: 1.5rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 2px solid var(--ns-gray-200) !important;
}


/* ============================================
   HERO SECTION - Additional Dynamic Styles
   ============================================ */

.ns-issue-subtitle {
    font-size: 1.25rem !important;
    font-weight: 500 !important;
    color: var(--ns-red) !important;
    margin: 0.25rem 0 1rem 0 !important;
    font-style: italic !important;
}

.ns-issue-desc {
    font-size: 0.95rem !important;
    color: var(--ns-gray-500) !important;
    line-height: 1.6 !important;
    margin-bottom: 1.5rem !important;
}

.ns-issue-desc p {
    margin: 0 0 0.5rem 0 !important;
}

.ns-issue-desc ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0.75rem 0 !important;
}

.ns-issue-desc li {
    padding: 0.25rem 0 !important;
    color: var(--ns-gray-500) !important;
}

/* ============================================
   ARTICLES PLACEHOLDER - Status Items
   ============================================ */

.ns-placeholder-status {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 1rem !important;
    margin: 1.5rem 0 !important;
}

.ns-status-item {
    background: var(--ns-gray-100) !important;
    color: var(--ns-gray-500) !important;
    padding: 0.5rem 1rem !important;
    border-radius: 20px !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
}

.ns-status-item::before {
    content: none !important;
}

/* Responsive status items */
@media (max-width: 640px) {
    .ns-placeholder-status {
        flex-direction: column !important;
        align-items: center !important;
    }
}

/* ============================================
   SVG ICON STYLING - MODERN ICONS
   ============================================ */

.ns-benefit-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 64px !important;
    height: 64px !important;
    margin: 0 auto 1rem auto !important;
    background: linear-gradient(135deg, var(--ns-red) 0%, #d32f2f 100%) !important;
    border-radius: 16px !important;
}

.ns-benefit-icon svg {
    color: white !important;
    stroke: white !important;
}

.ns-discipline svg {
    color: var(--ns-red) !important;
    stroke: var(--ns-red) !important;
    flex-shrink: 0 !important;
}

.ns-placeholder-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 1rem !important;
}

.ns-placeholder-icon svg {
    color: var(--ns-gray-400) !important;
    stroke: var(--ns-gray-400) !important;
}

.ns-status-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    background: var(--ns-gray-100) !important;
    color: var(--ns-gray-500) !important;
    padding: 0.5rem 1rem !important;
    border-radius: 20px !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
}

.ns-status-item svg {
    color: #10b981 !important;
    stroke: #10b981 !important;
}

.ns-cfp-content h2 {
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
}

.ns-cfp-content h2 svg {
    color: white !important;
    stroke: white !important;
}

/* ============================================
   WHY PUBLISH SECTION - SVG VERSION
   ============================================ */

.ns-why-publish {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: var(--ns-gray-50) !important;
    padding: 4rem 0 !important;
}

.ns-why-publish-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
}

.ns-why-publish-inner h2 {
    text-align: center !important;
    font-size: 2rem !important;
    color: var(--ns-charcoal) !important;
    margin-bottom: 2.5rem !important;
}

.ns-benefits-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 1.5rem !important;
}

.ns-benefit-card {
    background: var(--ns-white) !important;
    padding: 2rem 1.5rem !important;
    border-radius: 12px !important;
    text-align: center !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.ns-benefit-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 32px rgba(179,27,27,0.15) !important;
}

.ns-benefit-card h3 {
    font-size: 1.1rem !important;
    color: var(--ns-charcoal) !important;
    margin-bottom: 0.75rem !important;
    font-weight: 600 !important;
}

.ns-benefit-card p {
    font-size: 0.9rem !important;
    color: var(--ns-gray-500) !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

@media (max-width: 992px) {
    .ns-benefits-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 640px) {
    .ns-benefits-grid {
        grid-template-columns: 1fr !important;
    }
    .ns-why-publish-inner h2 {
        font-size: 1.5rem !important;
    }
}

/* ============================================
   SCOPE & DISCIPLINES SECTION - SVG VERSION
   ============================================ */

.ns-scope {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: var(--ns-white) !important;
    padding: 4rem 0 !important;
    border-top: 1px solid var(--ns-gray-200) !important;
}

.ns-scope-inner {
    max-width: var(--ns-max-width) !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    text-align: center !important;
}

.ns-scope-inner h2 {
    font-size: 2rem !important;
    color: var(--ns-charcoal) !important;
    margin-bottom: 0.75rem !important;
}

.ns-scope-intro {
    font-size: 1.1rem !important;
    color: var(--ns-gray-500) !important;
    margin-bottom: 2rem !important;
}

.ns-disciplines-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 1rem !important;
    margin-bottom: 2rem !important;
}

.ns-discipline {
    background: var(--ns-gray-50) !important;
    padding: 1.25rem 1rem !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
    transition: all 0.2s ease !important;
    border: 1px solid transparent !important;
}

.ns-discipline:hover {
    background: var(--ns-white) !important;
    border-color: var(--ns-red) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(179,27,27,0.1) !important;
}

.ns-discipline-name {
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    color: var(--ns-charcoal) !important;
}

.ns-link-center {
    display: inline-block !important;
    color: var(--ns-red) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    font-size: 1rem !important;
    transition: color 0.2s ease !important;
}

.ns-link-center:hover {
    color: var(--ns-red-dark) !important;
    text-decoration: underline !important;
}

@media (max-width: 992px) {
    .ns-disciplines-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 640px) {
    .ns-disciplines-grid {
        grid-template-columns: 1fr !important;
    }
    .ns-scope-inner h2 {
        font-size: 1.5rem !important;
    }
    .ns-scope-intro {
        font-size: 1rem !important;
    }
}
/* ========================================
   UPCOMING ARTICLES GRID - v4
   NeuScience Homepage Enhancement
   ======================================== */

/* Submissions Invited Badge */
.ns-submissions-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: white !important;
    padding: 6px 14px !important;
    border-radius: 20px !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
}

.ns-submissions-badge svg {
    color: white !important;
    stroke: white !important;
}

/* Upcoming Articles Grid */
.ns-upcoming-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 1.5rem !important;
    margin-top: 2rem !important;
}

@media (max-width: 992px) {
    .ns-upcoming-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 640px) {
    .ns-upcoming-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Upcoming Article Card */
.ns-upcoming-card {
    background: white !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 1.5rem !important;
    text-align: center !important;
    position: relative !important;
    transition: all 0.3s ease !important;
    min-height: 220px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

.ns-upcoming-card:hover {
    border-color: #B31B1B !important;
    box-shadow: 0 8px 25px rgba(179, 27, 27, 0.1) !important;
    transform: translateY(-4px) !important;
}

/* Coming Soon Badge */
.ns-upcoming-badge {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    background: #f3f4f6 !important;
    color: #6b7280 !important;
    padding: 4px 10px !important;
    border-radius: 12px !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.ns-upcoming-badge svg {
    color: #6b7280 !important;
    stroke: #6b7280 !important;
}

/* Article Type in Upcoming Card */
.ns-upcoming-card .ns-article-type {
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    background: #B31B1B !important;
    color: white !important;
    padding: 4px 10px !important;
    border-radius: 4px !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Placeholder Icon Container */
.ns-upcoming-placeholder {
    width: 80px !important;
    height: 80px !important;
    background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 1rem !important;
}

.ns-upcoming-placeholder svg {
    color: #9ca3af !important;
    stroke: #9ca3af !important;
}

.ns-upcoming-card:hover .ns-upcoming-placeholder {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%) !important;
}

.ns-upcoming-card:hover .ns-upcoming-placeholder svg {
    color: #B31B1B !important;
    stroke: #B31B1B !important;
}

/* Upcoming Text */
.ns-upcoming-text {
    color: #6b7280 !important;
    font-size: 0.9rem !important;
    margin: 0 !important;
    font-style: italic !important;
}

/* Submit CTA Card - Special Styling */
.ns-submit-card {
    background: linear-gradient(135deg, #B31B1B 0%, #991b1b 100%) !important;
    border: none !important;
    color: white !important;
}

.ns-submit-card:hover {
    background: linear-gradient(135deg, #991b1b 0%, #7f1d1d 100%) !important;
    box-shadow: 0 8px 25px rgba(179, 27, 27, 0.3) !important;
}

.ns-submit-icon {
    width: 70px !important;
    height: 70px !important;
    background: rgba(255, 255, 255, 0.2) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 1rem !important;
}

.ns-submit-icon svg {
    color: white !important;
    stroke: white !important;
}

.ns-submit-card h3 {
    color: white !important;
    font-size: 1.1rem !important;
    margin: 0 0 0.5rem 0 !important;
}

.ns-submit-card p {
    color: rgba(255, 255, 255, 0.85) !important;
    margin: 0 0 1rem 0 !important;
    font-size: 0.9rem !important;
}

.ns-btn-small {
    padding: 8px 20px !important;
    font-size: 0.85rem !important;
}

.ns-submit-card .ns-btn-primary {
    background: white !important;
    color: #B31B1B !important;
}

.ns-submit-card .ns-btn-primary:hover {
    background: #f9fafb !important;
}

/* Upcoming Status Bar */
.ns-upcoming-status {
    display: flex !important;
    justify-content: center !important;
    gap: 2rem !important;
    margin-top: 2rem !important;
    padding-top: 1.5rem !important;
    border-top: 1px solid #e5e7eb !important;
    flex-wrap: wrap !important;
}

.ns-upcoming-status .ns-status-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #4b5563 !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
}

.ns-upcoming-status .ns-status-item svg {
    color: #10b981 !important;
    stroke: #10b981 !important;
}
/* ========================================
   UPCOMING ARTICLES LIST - v5
   Matches Cover Image Style
   ======================================== */

/* Submissions Invited Badge */
.ns-submissions-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: white !important;
    padding: 6px 14px !important;
    border-radius: 20px !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
}

.ns-submissions-badge svg {
    stroke: white !important;
}

/* Upcoming Articles List Container */
.ns-upcoming-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin-top: 1.5rem !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: white !important;
}

/* Individual Upcoming Article Item */
.ns-upcoming-item {
    padding: 1.25rem 1.5rem !important;
    border-bottom: 1px solid #e5e7eb !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0.5rem !important;
    transition: all 0.2s ease !important;
    position: relative !important;
}

.ns-upcoming-item:last-child {
    border-bottom: none !important;
}

.ns-upcoming-item:hover {
    background: #fafafa !important;
}

/* Featured First Article */
.ns-upcoming-item.ns-upcoming-featured {
    background: linear-gradient(135deg, #fef2f2 0%, #fff 100%) !important;
    border-left: 4px solid #B31B1B !important;
}

.ns-upcoming-item.ns-upcoming-featured:hover {
    background: linear-gradient(135deg, #fee2e2 0%, #fef2f2 100%) !important;
}

/* Article Type Badge */
.ns-upcoming-item .ns-article-type {
    display: inline-block !important;
    background: #B31B1B !important;
    color: white !important;
    padding: 3px 10px !important;
    border-radius: 4px !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    width: fit-content !important;
}

/* Article Title */
.ns-upcoming-item h3 {
    margin: 0 !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    line-height: 1.4 !important;
}

.ns-upcoming-item.ns-upcoming-featured h3 {
    font-size: 1.25rem !important;
    color: #B31B1B !important;
}

/* Article Description */
.ns-upcoming-item p {
    margin: 0 !important;
    font-size: 0.9rem !important;
    color: #6b7280 !important;
    line-height: 1.5 !important;
}

/* Status Badge */
.ns-status-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    background: #f3f4f6 !important;
    color: #4b5563 !important;
    padding: 4px 10px !important;
    border-radius: 12px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    width: fit-content !important;
    margin-top: 0.25rem !important;
}

.ns-status-badge::before {
    content: "" !important;
    width: 6px !important;
    height: 6px !important;
    background: #10b981 !important;
    border-radius: 50% !important;
}

/* Submit CTA Button */
.ns-upcoming-cta {
    text-align: center !important;
    margin-top: 2rem !important;
}

/* Status Bar */
.ns-upcoming-status-bar {
    display: flex !important;
    justify-content: center !important;
    gap: 2rem !important;
    margin-top: 2rem !important;
    padding-top: 1.5rem !important;
    border-top: 1px solid #e5e7eb !important;
    flex-wrap: wrap !important;
}

.ns-upcoming-status-bar .ns-status-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #4b5563 !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
}

.ns-upcoming-status-bar .ns-status-item svg {
    stroke: #10b981 !important;
}

/* Dynamic Content Container */
.ns-upcoming-dynamic {
    margin-top: 1.5rem !important;
}
/* ========================================
   HEADER LOGO - Journal Name Text
   Replace NeucitePress logo with NeuScience
   ======================================== */

/* Hide the logo image */
.pkp_site_nav_logo img,
.pkp_head_wrapper .pkp_site_name img,
.site-logo img,
.navbar-brand img,
header .logo img,
.pkp_structure_head .pkp_site_name a img {
    display: none !important;
}

/* Style the journal name link as the logo */
.pkp_site_name a,
.pkp_structure_head .pkp_site_name a {
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
    font-size: 0 !important; /* Hide any default text */
}

/* Create "NeuScience" text logo */
.pkp_site_name a::before,
.pkp_structure_head .pkp_site_name a::before {
    content: "NeuScience" !important;
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #B31B1B !important;
    letter-spacing: -0.5px !important;
    font-family: 'Georgia', 'Times New Roman', serif !important;
}

/* Alternative: Split styling for Neu + Science */
/*
.pkp_site_name a::before {
    content: "Neu" !important;
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #B31B1B !important;
    font-family: 'Georgia', serif !important;
}

.pkp_site_name a::after {
    content: "Science" !important;
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    font-family: 'Georgia', serif !important;
}
*/

/* Ensure logo area has proper spacing */
.pkp_site_name {
    padding: 1rem 0 !important;
}

/* Remove any tagline/description under logo */
.pkp_site_name .is_text,
.pkp_site_name small,
.pkp_site_name .tagline {
    display: none !important;
}
/* ========================================
   HEADER LOGO - NeuScience Styled
   ======================================== */

/* Hide the logo image completely */
.pkp_site_nav_logo img,
.pkp_head_wrapper .pkp_site_name img,
.site-logo img,
.navbar-brand img,
header .logo img,
.pkp_structure_head .pkp_site_name a img,
.pkp_site_name a img {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

/* Style the journal name link */
.pkp_site_name a,
.pkp_structure_head .pkp_site_name a {
    display: inline-flex !important;
    align-items: baseline !important;
    text-decoration: none !important;
    font-size: 0 !important;
    gap: 0 !important;
}

/* "Neu" in Red */
.pkp_site_name a::before,
.pkp_structure_head .pkp_site_name a::before {
    content: "Neu" !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #B31B1B !important;
    letter-spacing: -0.5px !important;
    font-family: 'Georgia', 'Times New Roman', serif !important;
}

/* "Science" in Dark Navy */
.pkp_site_name a::after,
.pkp_structure_head .pkp_site_name a::after {
    content: "Science" !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    letter-spacing: -0.5px !important;
    font-family: 'Georgia', 'Times New Roman', serif !important;
}

/* Logo container styling */
.pkp_site_name {
    padding: 0.75rem 0 !important;
}

/* Hide tagline/description */
.pkp_site_name .is_text,
.pkp_site_name small,
.pkp_site_name .tagline,
.pkp_site_name span:not(:empty) {
    display: none !important;
}

/* Header background white */
.pkp_structure_head,
.pkp_head_wrapper {
    background: #ffffff !important;
}
/* ========================================
   HEADER LOGO - νSc (Nu + Sc)
   Greek nu (frequency) + Science
   ======================================== */

/* Hide the logo image completely */
.pkp_site_nav_logo img,
.pkp_head_wrapper .pkp_site_name img,
.site-logo img,
.navbar-brand img,
header .logo img,
.pkp_structure_head .pkp_site_name a img,
.pkp_site_name a img {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

/* Style the journal name link */
.pkp_site_name a,
.pkp_structure_head .pkp_site_name a {
    display: inline-flex !important;
    align-items: baseline !important;
    text-decoration: none !important;
    font-size: 0 !important;
    gap: 0 !important;
}

/* "ν" (Greek nu) in Red */
.pkp_site_name a::before,
.pkp_structure_head .pkp_site_name a::before {
    content: "ν" !important;
    font-size: 2.4rem !important;
    font-weight: 400 !important;
    color: #B31B1B !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: italic !important;
}

/* "Sc" in Dark Navy */
.pkp_site_name a::after,
.pkp_structure_head .pkp_site_name a::after {
    content: "Sc" !important;
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    font-family: 'Georgia', 'Times New Roman', serif !important;
    margin-left: 2px !important;
}

/* Logo container styling */
.pkp_site_name {
    padding: 0.75rem 0 !important;
}

/* Hide tagline/description */
.pkp_site_name .is_text,
.pkp_site_name small,
.pkp_site_name .tagline,
.pkp_site_name span:not(:empty) {
    display: none !important;
}

/* Header background white */
.pkp_structure_head,
.pkp_head_wrapper {
    background: #ffffff !important;
}
/* ========================================
   HEADER LOGO - νScience (Science Advances Style)
   ======================================== */

/* Hide the logo image completely */
.pkp_site_nav_logo img,
.pkp_head_wrapper .pkp_site_name img,
.site-logo img,
.navbar-brand img,
header .logo img,
.pkp_structure_head .pkp_site_name a img,
.pkp_site_name a img {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

/* Style the journal name link */
.pkp_site_name a,
.pkp_structure_head .pkp_site_name a {
    display: inline-flex !important;
    align-items: baseline !important;
    text-decoration: none !important;
    font-size: 0 !important;
    gap: 0 !important;
}

/* "ν" (Greek nu) - Red, Italic like "Science" in Science Advances */
.pkp_site_name a::before,
.pkp_structure_head .pkp_site_name a::before {
    content: "ν" !important;
    font-size: 2.5rem !important;
    font-weight: 400 !important;
    color: #B31B1B !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: italic !important;
    letter-spacing: -1px !important;
}

/* "Science" - Black, Bold like "Advances" in Science Advances */
.pkp_site_name a::after,
.pkp_structure_head .pkp_site_name a::after {
    content: "Science" !important;
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #000000 !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: normal !important;
    letter-spacing: -0.5px !important;
}

/* Logo container styling */
.pkp_site_name {
    padding: 0.75rem 0 !important;
}

/* Hide tagline/description */
.pkp_site_name .is_text,
.pkp_site_name small,
.pkp_site_name .tagline,
.pkp_site_name span:not(:empty) {
    display: none !important;
}

/* Header background white */
.pkp_structure_head,
.pkp_head_wrapper {
    background: #ffffff !important;
}
/* ========================================
   HEADER LOGO - [νS] Badge + NeuScience
   Professional Badge Style
   ======================================== */

/* Hide the logo image completely */
.pkp_site_nav_logo img,
.pkp_head_wrapper .pkp_site_name img,
.site-logo img,
.navbar-brand img,
header .logo img,
.pkp_structure_head .pkp_site_name a img,
.pkp_site_name a img {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

/* Style the journal name link */
.pkp_site_name a,
.pkp_structure_head .pkp_site_name a {
    display: inline-flex !important;
    align-items: center !important;
    text-decoration: none !important;
    font-size: 0 !important;
    gap: 10px !important;
}

/* [νS] Badge - Red background, white text */
.pkp_site_name a::before,
.pkp_structure_head .pkp_site_name a::before {
    content: "νS" !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: italic !important;
    background: #B31B1B !important;
    padding: 6px 12px !important;
    border-radius: 4px !important;
    letter-spacing: 1px !important;
}

/* "NeuScience" - Full name */
.pkp_site_name a::after,
.pkp_structure_head .pkp_site_name a::after {
    content: "NeuScience" !important;
    font-size: 1.8rem !important;
    font-weight: 400 !important;
    color: #1a1a2e !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: normal !important;
    letter-spacing: -0.5px !important;
}

/* Logo container styling */
.pkp_site_name {
    padding: 0.75rem 0 !important;
}

/* Hide tagline/description */
.pkp_site_name .is_text,
.pkp_site_name small,
.pkp_site_name .tagline,
.pkp_site_name span:not(:empty) {
    display: none !important;
}

/* Header background white */
.pkp_structure_head,
.pkp_head_wrapper {
    background: #ffffff !important;
}
/* ========================================
   HEADER LOGO - NeuScience (Science Advances Style)
   Neu = Red Italic | Science = Black Bold
   ======================================== */

/* Hide the logo image completely */
.pkp_site_nav_logo img,
.pkp_head_wrapper .pkp_site_name img,
.site-logo img,
.navbar-brand img,
header .logo img,
.pkp_structure_head .pkp_site_name a img,
.pkp_site_name a img {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

/* Style the journal name link */
.pkp_site_name a,
.pkp_structure_head .pkp_site_name a {
    display: inline-flex !important;
    align-items: baseline !important;
    text-decoration: none !important;
    font-size: 0 !important;
    gap: 0 !important;
}

/* "Neu" - Red, Italic */
.pkp_site_name a::before,
.pkp_structure_head .pkp_site_name a::before {
    content: "Neu" !important;
    font-size: 2.2rem !important;
    font-weight: 400 !important;
    color: #B31B1B !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: italic !important;
    letter-spacing: -0.5px !important;
}

/* "Science" - Black, Bold */
.pkp_site_name a::after,
.pkp_structure_head .pkp_site_name a::after {
    content: "Science" !important;
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #000000 !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: normal !important;
    letter-spacing: -0.5px !important;
}

/* Logo container styling */
.pkp_site_name {
    padding: 0.75rem 0 !important;
}

/* Hide tagline/description */
.pkp_site_name .is_text,
.pkp_site_name small,
.pkp_site_name .tagline,
.pkp_site_name span:not(:empty) {
    display: none !important;
}

/* Header background white */
.pkp_structure_head,
.pkp_head_wrapper {
    background: #ffffff !important;
}
/* ========================================
   LOGO FIX - Hide ALL images, show text
   ======================================== */

/* NUCLEAR OPTION: Hide ANY image in header */
.pkp_structure_head img,
.pkp_site_name img,
.pkp_site_name a img,
.pkp_site_name * img,
header img,
.pkp_head_wrapper img {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    position: absolute !important;
    left: -9999px !important;
}

/* Reset the link to show pseudo-elements */
.pkp_site_name a {
    display: flex !important;
    align-items: baseline !important;
    text-decoration: none !important;
    font-size: 0 !important;
    line-height: 1 !important;
}

/* "Neu" - Red Italic */
.pkp_site_name a::before {
    content: "Neu" !important;
    font-size: 2.4rem !important;
    font-weight: 400 !important;
    color: #B31B1B !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: italic !important;
    letter-spacing: -0.5px !important;
    display: inline !important;
    visibility: visible !important;
}

/* "Science" - Black Bold */
.pkp_site_name a::after {
    content: "Science" !important;
    font-size: 2.4rem !important;
    font-weight: 700 !important;
    color: #000000 !important;
    font-family: 'Times New Roman', Georgia, serif !important;
    font-style: normal !important;
    letter-spacing: -0.5px !important;
    display: inline !important;
    visibility: visible !important;
}

/* ============================================
   DROPDOWN MENU FIX - Dark text on white bg
   ============================================ */

/* Dropdown menu container */
.pkp_navigation_primary .dropdown-menu,
.pkp_nav_list .dropdown-menu,
.navbar-nav .dropdown-menu,
.nav .dropdown-menu,
ul.pkp_nav_list ul,
.pkp_navigation_primary ul ul,
.dropdown-menu {
    background: #ffffff !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    padding: 8px 0 !important;
    min-width: 200px !important;
}

/* Dropdown menu items */
.pkp_navigation_primary .dropdown-menu a,
.pkp_navigation_primary .dropdown-menu li a,
.pkp_nav_list .dropdown-menu a,
.navbar-nav .dropdown-menu a,
.nav .dropdown-menu a,
ul.pkp_nav_list ul a,
ul.pkp_nav_list ul li a,
.pkp_navigation_primary ul ul a,
.pkp_navigation_primary ul ul li a,
.dropdown-menu a,
.dropdown-menu li a {
    color: #333333 !important;
    background: transparent !important;
    padding: 10px 20px !important;
    display: block !important;
    text-decoration: none !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* Dropdown hover state */
.pkp_navigation_primary .dropdown-menu a:hover,
.pkp_navigation_primary .dropdown-menu li a:hover,
.pkp_nav_list .dropdown-menu a:hover,
ul.pkp_nav_list ul a:hover,
ul.pkp_nav_list ul li a:hover,
.pkp_navigation_primary ul ul a:hover,
.dropdown-menu a:hover,
.dropdown-menu li a:hover {
    background: #f5f5f5 !important;
    color: #B31B1B !important;
}

/* Fix any white text issues */
.pkp_navigation_primary ul ul li,
ul.pkp_nav_list ul li,
.dropdown-menu li {
    background: #ffffff !important;
}

/* ============================================
   DROPDOWN Z-INDEX FIX
   Ensure dropdown appears above user nav bar
   ============================================ */

/* Primary navigation container - higher z-index */
.pkp_navigation_primary_wrapper,
.pkp_navigation_primary_row {
    position: relative !important;
    z-index: 1000 !important;
}

/* Dropdown menu - very high z-index */
.pkp_navigation_primary .dropdown-menu,
.pkp_navigation_primary ul ul,
.pkp_nav_list .dropdown-menu,
ul.pkp_nav_list ul,
.dropdown-menu {
    position: absolute !important;
    z-index: 9999 !important;
    background: #ffffff !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    min-width: 200px !important;
}

/* User navigation bar - lower z-index */
.pkp_navigation_user_wrapper {
    position: relative !important;
    z-index: 100 !important;
}

/* Ensure dropdown items are visible */
.pkp_navigation_primary > li {
    position: relative !important;
    z-index: 1001 !important;
}

.pkp_navigation_primary > li:hover {
    z-index: 9998 !important;
}

/* ============================================
   AGGRESSIVE DROPDOWN FIX - OVERRIDE ALL
   ============================================ */

/* Make the entire header site nav wrapper highest priority */
.pkp_site_nav_menu,
.pkp_navigation_primary_wrapper,
nav.pkp_navigation_primary_wrapper {
    position: relative !important;
    z-index: 99999 !important;
}

/* The dropdown UL itself */
.pkp_navigation_primary ul.dropdown-menu,
.pkp_navigation_primary .show > ul,
.pkp_navigation_primary li ul,
nav ul ul,
.pkp_nav_list ul {
    z-index: 999999 !important;
    position: absolute !important;
    background: white !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.2) !important;
}

/* Force user navigation bar to be BEHIND */
.pkp_navigation_user_wrapper,
.pkp_navigation_user,
nav.pkp_navigation_user_wrapper {
    z-index: 10 !important;
    position: relative !important;
}

/* The red second bar specifically */
.pkp_head_wrapper .pkp_navigation_user_wrapper {
    z-index: 1 !important;
}

/* ============================================
   CONTENT MARGINS FOR INNER PAGES
   Adds proper padding/margins to article/page content
   NOT affecting banner and footer
   ============================================ */

/* Main content area on all pages */
.pkp_structure_main,
main.pkp_structure_main {
    padding: 2rem 1.5rem !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

/* Article/page content wrapper */
.page_content,
.article-details,
.pkp_page_content,
.obj_article_details,
.static-page-content {
    padding: 1.5rem 2rem !important;
    max-width: 900px !important;
    margin: 0 auto !important;
    line-height: 1.7 !important;
}

/* Submission pages, about pages, etc */
.page,
.pkp_page_about,
.pkp_page_submissions,
.pkp_page_contact,
.pkp_page_privacy,
.pkp_page_search {
    padding: 2rem !important;
}

/* Inner page headings */
.page_title,
h1.page_title,
.pkp_page_title {
    margin-bottom: 1.5rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 2px solid #B31B1B !important;
}

/* Article text content */
.article-full-text,
.article-abstract,
.section,
.item.abstract,
.item.keywords {
    padding: 1rem 0 !important;
    margin: 1rem 0 !important;
}

/* Form pages - submissions, register, login */
.pkp_form,
form.pkp_form {
    max-width: 700px !important;
    margin: 2rem auto !important;
    padding: 2rem !important;
    background: #f9fafb !important;
    border-radius: 8px !important;
}

/* Sidebar on inner pages */
.pkp_structure_sidebar {
    padding: 1.5rem !important;
}

/* Archives page */
.issues_archive,
.obj_issue_summary {
    padding: 1rem !important;
    margin: 1rem 0 !important;
}

/* Announcements page */
.announcements,
.obj_announcement_summary,
.obj_announcement_full {
    padding: 1.5rem !important;
    margin: 1rem 0 !important;
}

/* Search results */
.search_results,
.obj_article_summary {
    padding: 1rem !important;
    margin: 0.5rem 0 !important;
    border-bottom: 1px solid #eee !important;
}

/* User profile pages */
.profile,
.pkp_page_user {
    padding: 2rem !important;
    max-width: 800px !important;
    margin: 0 auto !important;
}

/* ============================================
   STATIC PAGE CONTENT STYLES
   Added: Dec 31, 2025
   ============================================ */

/* Fix duplicate titles - hide H1 in static page content since OJS adds title */
.static_pages .page_content > h1:first-child {
    display: none !important;
}

/* Gold Banner - Free Publication Promo */
.gold-banner {
    background: linear-gradient(135deg, #f5a623 0%, #f7931e 50%, #e8850c 100%) !important;
    color: white !important;
    padding: 25px 30px !important;
    border-radius: 12px !important;
    margin: 25px 0 !important;
    text-align: center !important;
    box-shadow: 0 4px 15px rgba(245, 166, 35, 0.4) !important;
}
.gold-banner h3 {
    color: white !important;
    margin: 0 0 10px !important;
    font-size: 1.5rem !important;
    border: none !important;
    padding: 0 !important;
}
.gold-banner p { margin: 0 !important; font-size: 1.1rem !important; }
.gold-banner .deadline {
    font-size: 1.3rem !important;
    font-weight: bold !important;
    margin-top: 10px !important;
}

/* Highlight Box */
.highlight-box {
    background: #f8f9fa !important;
    border-left: 4px solid #B31B1B !important;
    padding: 20px 25px !important;
    margin: 25px 0 !important;
    border-radius: 0 8px 8px 0 !important;
}
.highlight-box h4 {
    color: #B31B1B !important;
    margin: 0 0 12px !important;
    font-size: 1.1rem !important;
}

/* Info Box */
.info-box {
    background: #e8f4fd !important;
    border: 1px solid #b8daff !important;
    border-radius: 8px !important;
    padding: 20px !important;
    margin: 20px 0 !important;
}

/* Success Box */
.success-box {
    background: #d4edda !important;
    border: 1px solid #c3e6cb !important;
    border-radius: 8px !important;
    padding: 20px !important;
    margin: 20px 0 !important;
}

/* Warning Box */
.warning-box {
    background: #fff3cd !important;
    border: 1px solid #ffc107 !important;
    border-radius: 8px !important;
    padding: 20px !important;
    margin: 20px 0 !important;
}

/* Timeline - Review Process */
.timeline {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    margin: 25px 0 !important;
}
.timeline-item {
    background: #f8f9fa !important;
    padding: 20px !important;
    border-radius: 8px !important;
    text-align: center !important;
    border-top: 3px solid #B31B1B !important;
}
.timeline-item .big-number {
    font-size: 2rem !important;
    font-weight: bold !important;
    color: #B31B1B !important;
    display: block !important;
}
.timeline-item .time {
    font-size: 0.9rem !important;
    color: #666 !important;
}
.timeline-item strong {
    display: block !important;
    margin-bottom: 8px !important;
    color: #333 !important;
}

/* Contact Grid */
.contact-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 20px !important;
    margin: 25px 0 !important;
}
.contact-card {
    background: #f8f9fa !important;
    padding: 25px !important;
    border-radius: 8px !important;
    text-align: center !important;
    border: 1px solid #e5e7eb !important;
}
.contact-card h4 {
    color: #B31B1B !important;
    margin: 0 0 10px !important;
}
.contact-card .email a {
    color: #B31B1B !important;
    font-weight: 600 !important;
}

/* Editor Grid - Editorial Team */
.editor-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 25px !important;
    margin: 25px 0 !important;
}
.editor-card {
    background: white !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    padding: 25px !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05) !important;
}
.editor-card h4 {
    color: #B31B1B !important;
    margin: 0 0 5px !important;
    font-size: 1.1rem !important;
}
.editor-card .role {
    color: #666 !important;
    font-style: italic !important;
    margin-bottom: 10px !important;
}

/* Info Grid */
.info-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 20px !important;
    margin: 25px 0 !important;
}
.info-card {
    background: #f8f9fa !important;
    padding: 20px !important;
    border-radius: 8px !important;
    text-align: center !important;
}

/* Two Column Layout */
.two-col {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 30px !important;
    margin: 25px 0 !important;
}

/* Buttons */
.btn {
    display: inline-block !important;
    padding: 12px 24px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    margin: 10px 10px 10px 0 !important;
    transition: all 0.2s !important;
}
.btn-gold {
    background: linear-gradient(135deg, #f5a623, #e8850c) !important;
    color: white !important;
}
.btn-gold:hover {
    background: linear-gradient(135deg, #e8850c, #d4780a) !important;
    color: white !important;
}
.btn-secondary {
    background: #6b7280 !important;
    color: white !important;
}
.btn-secondary:hover {
    background: #4b5563 !important;
}

/* Checklist */
.checklist {
    list-style: none !important;
    padding-left: 0 !important;
}
.checklist li {
    padding: 8px 0 8px 30px !important;
    position: relative !important;
}
.checklist li::before {
    content: "☐" !important;
    position: absolute !important;
    left: 0 !important;
    color: #B31B1B !important;
    font-size: 1.2rem !important;
}

/* Tables in content */
.page_content table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 20px 0 !important;
}
.page_content table th,
.page_content table td {
    padding: 12px 15px !important;
    text-align: left !important;
    border-bottom: 1px solid #e5e7eb !important;
}
.page_content table th {
    background: #f8f9fa !important;
    font-weight: 600 !important;
    color: #333 !important;
}
.page_content table tr:hover {
    background: #f9fafb !important;
}

/* Responsive */
@media (max-width: 768px) {
    .timeline {
        grid-template-columns: 1fr 1fr !important;
    }
    .two-col {
        grid-template-columns: 1fr !important;
    }
    .editor-grid {
        grid-template-columns: 1fr !important;
    }
}
@media (max-width: 480px) {
    .timeline {
        grid-template-columns: 1fr !important;
    }
}
/* Fix duplicate titles - hide first H1 in static page content */
.page.page_static_page .page_content > h1:first-child,
.page .page_content > h1:first-of-type { display: none !important; }
/* Hide duplicate H1 title in static page content */
.page .page-preview > h1:first-child,
.page > div > h1:first-child { display: none !important; }
/* Remove page-preview styling since its just a wrapper */
.page-preview { display: contents !important; }
/* Legal bar - horizontal links */
.ncp-footer-legal-inner {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 1rem 2rem !important;
}
.ncp-footer-legal .legal-links {
    display: flex !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 1.5rem !important;
}
.ncp-footer-legal .legal-links li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.ncp-footer-legal .legal-links li::before {
    display: none !important;
    content: none !important;
}
.ncp-footer-legal .legal-links a {
    color: #B31B1B !important;
}

/* Footer Publisher Row Improvements */
.ns-footer-publisher {
    padding: 1.5rem 0 !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
}
.ns-footer-publisher .ns-publisher-tagline {
    font-style: italic !important;
    opacity: 0.85 !important;
    margin-left: 0.5rem !important;
}
.ns-footer-publisher .ns-social-icons a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,0.1) !important;
    margin-left: 10px !important;
    transition: background 0.2s !important;
}
.ns-footer-publisher .ns-social-icons a:hover {
    background: #B31B1B !important;
}

/* Footer Legal Row Improvements */
.ns-footer-legal {
    padding: 1rem 0 !important;
    font-size: 0.85rem !important;
    border-top: 1px solid rgba(255,255,255,0.05) !important;
    background: #0f0f1a !important;
}
.ns-footer-legal a {
    margin-left: 1.5rem !important;
    opacity: 0.8 !important;
    transition: opacity 0.2s !important;
}
.ns-footer-legal a:hover {
    opacity: 1 !important;
    color: #B31B1B !important;
}



/* HIDE HEADER LOGO RED SQUARE */
.pkp_site_name a::before { display: none !important; }

/* HEADER LOGO - NeuScience */
.pkp_site_name a::after { content: "NeuScience" !important; font-size: 2.8rem !important; font-style: normal !important; font-weight: 700 !important; }

/* HEADER LOGO - NeuScience (high specificity) */
.pkp_site_name a::after,
.pkp_structure_head .pkp_site_name a::after { content: "NeuScience" !important; font-size: 2.8rem !important; font-style: normal !important; font-weight: 700 !important; }

/* REMOVE CONTAINER LINES */
.pkp_structure_content,
.pkp_structure_main,
main.pkp_structure_main,
.pkp_structure_page,
.page,
.container {
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* ================================================
   AGGRESSIVE LINE REMOVAL - Dec 31, 2024
   Remove ALL borders, shadows, outlines everywhere
   ================================================ */

/* Target the header-to-content transition */
.pkp_structure_head,
.pkp_structure_head *,
header.pkp_structure_head,
#headerNavigationContainer {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Target ALL structural elements */
.pkp_structure_page,
.pkp_structure_content,
.pkp_structure_main,
main.pkp_structure_main,
.page,
.container,
.pkp_structure_page > *,
.pkp_structure_content > *,
body > * {
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Target the hero section specifically */
.ns-hero,
.ns-hero-section,
.homepage-image,
.additional_content,
section.ns-hero {
    border: none !important;
    border-top: none !important;
    box-shadow: none !important;
    outline: none !important;
    margin-top: 0 !important;
}

/* Remove any hr or separator elements */
.pkp_structure_head + hr,
.pkp_structure_head + .separator,
hr {
    display: none !important;
    border: none !important;
    height: 0 !important;
}

/* Target pkp_navigation elements */
.pkp_navigation_primary_row,
.pkp_navigation_primary_wrapper,
.pkp_nav_primary,
nav.pkp_navigation_primary {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* ================================================
   VERTICAL LINE REMOVAL - Dec 31, 2024
   ================================================ */

/* Remove vertical borders from ALL elements */
.pkp_structure_page,
.pkp_structure_content,
.pkp_structure_main,
main,
.page,
.container,
body,
html,
#pkp_content_main,
.pkp_page_index,
article,
section,
div {
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
}

/* Target specific OJS wrapper classes */
.pkp_structure_main,
.pkp_structure_content,
.obj_issue_toc,
.cmp_announcements,
.pkp_block,
.additional_content,
.homepage_about,
.ns-hero,
.ns-hero-content,
.ns-about,
.ns-cfp {
    border-left: none !important;
    border-right: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Remove any left/right borders on page wrapper */
[class*= pkp_],
[class*=page],
[class*=content],
[class*=main],
[class*=wrapper] {
    border-left: none !important;
    border-right: none !important;
}

/* Specifically target max-width containers that might have borders */
.pkp_structure_content,
.pkp_structure_main {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* ================================================
   REVERSE WIDTH - Restore container max-width
   ================================================ */

.pkp_structure_content,
.pkp_structure_main {
    max-width: 1200px !important;
    width: auto !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
    border: none !important;
    border-left: none !important;
    border-right: none !important;
}

/* ================================================
   TARGETED VERTICAL LINE FIX - Dec 31, 2024
   Based on actual HTML structure
   ================================================ */

/* Main page wrapper - no vertical borders */
.pkp_structure_page {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Content wrapper - this is likely the culprit */
.pkp_structure_content {
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
}

/* Main content area */
.pkp_structure_main {
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Page index journal wrapper */
.page_index_journal {
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
}

/* Footer wrapper */
.pkp_structure_footer_wrapper {
    border: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
}

/* Remove any pseudo-element borders */
.pkp_structure_content::before,
.pkp_structure_content::after,
.pkp_structure_main::before,
.pkp_structure_main::after,
.pkp_structure_page::before,
.pkp_structure_page::after {
    display: none !important;
    border: none !important;
}

/* ================================================
   OPTION 6: Science Advances Style Banner
   Editorial Elegance with Left Red Border
   Dec 31, 2024
   ================================================ */

/* Hero Section - Clean White with Red Left Border */
.ns-hero {
    background: #ffffff !important;
    border-left: 6px solid #B31B1B !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: 1px solid #e5e7eb !important;
    padding: 50px 40px 50px 50px !important;
}

.ns-hero-inner {
    display: grid !important;
    grid-template-columns: 280px 1fr !important;
    gap: 50px !important;
    align-items: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

/* Cover Image Styling */
.ns-hero-cover {
    width: 280px !important;
    min-width: 280px !important;
}

.ns-hero-cover img {
    width: 100% !important;
    height: auto !important;
    border-radius: 4px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.15) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.ns-hero-cover img:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.2) !important;
}

/* Content Styling - Elegant Typography */
.ns-hero-content {
    padding: 0 !important;
}

.ns-hero-content .ns-label,
.ns-hero-content span.ns-label {
    color: #B31B1B !important;
    font-weight: 700 !important;
    font-size: 0.85rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    margin-bottom: 12px !important;
    display: inline-block !important;
    background: transparent !important;
    padding: 0 !important;
}

.ns-hero-content .ns-issue-title,
.ns-hero-content h1 {
    color: #212121 !important;
    font-size: 2.5rem !important;
    font-weight: 400 !important;
    margin-bottom: 8px !important;
    line-height: 1.2 !important;
}

.ns-hero-content .ns-issue-subtitle,
.ns-hero-content h2 {
    color: #757575 !important;
    font-size: 1.4rem !important;
    font-weight: 300 !important;
    font-style: italic !important;
    margin-bottom: 20px !important;
}

.ns-hero-content .ns-issue-desc,
.ns-hero-content .ns-issue-desc p {
    color: #616161 !important;
    font-size: 1rem !important;
    line-height: 1.7 !important;
    margin-bottom: 25px !important;
}

.ns-hero-content .ns-issue-desc ul {
    color: #616161 !important;
    margin: 15px 0 !important;
    padding-left: 20px !important;
}

.ns-hero-content .ns-issue-desc li {
    margin-bottom: 8px !important;
}

/* Button - Outlined Style */
.ns-hero-buttons .ns-btn,
.ns-hero-content .ns-btn {
    background: transparent !important;
    color: #B31B1B !important;
    border: 2px solid #B31B1B !important;
    padding: 12px 28px !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: all 0.2s ease !important;
}

.ns-hero-buttons .ns-btn:hover,
.ns-hero-content .ns-btn:hover {
    background: #B31B1B !important;
    color: #ffffff !important;
}

/* Responsive */
@media (max-width: 900px) {
    .ns-hero-inner {
        grid-template-columns: 1fr !important;
        text-align: center !important;
    }
    
    .ns-hero-cover {
        margin: 0 auto !important;
    }
    
    .ns-hero {
        border-left: none !important;
        border-top: 6px solid #B31B1B !important;
    }
}

/* ================================================
   AGGRESSIVE LINE REMOVAL - Dec 31, 2024
   Remove ALL borders, shadows, outlines everywhere
   ================================================ */

/* Target the header-to-content transition */
.pkp_structure_head,
.pkp_structure_head *,
header.pkp_structure_head,
#headerNavigationContainer {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Target ALL structural elements */
.pkp_structure_page,
.pkp_structure_content,
.pkp_structure_main,
main.pkp_structure_main,
.page,
.container,
.pkp_structure_page > *,
.pkp_structure_content > *,
body > * {
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Target the hero section specifically */
.ns-hero,
.ns-hero-section,
.homepage-image,
.additional_content,
section.ns-hero {
    border: none !important;
    border-top: none !important;
    box-shadow: none !important;
    outline: none !important;
    margin-top: 0 !important;
}

/* Remove any hr or separator elements */
.pkp_structure_head + hr,
.pkp_structure_head + .separator,
hr {
    display: none !important;
    border: none !important;
    height: 0 !important;
}

/* Target pkp_navigation elements */
.pkp_navigation_primary_row,
.pkp_navigation_primary_wrapper,
.pkp_nav_primary,
nav.pkp_navigation_primary {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Nuclear option - all elements */
* {
    border-color: transparent !important;
}

/* Re-enable specific borders we want */
.ns-hero-badge,
.pkp_block,
input,
textarea,
select,
table,
table td,
table th {
    border-color: revert !important;
}

/* === TOP UTILITY BAR FIX === */
.pkp_navigation_user_wrapper {
    background: transparent !important;
    border: none !important;
    padding: 8px 0 !important;
}

.pkp_navigation_user a {
    color: #333 !important;
    text-decoration: none !important;
    font-size: 0.85rem !important;
}

.pkp_navigation_user a:hover {
    color: #B31B1B !important;
    text-decoration: underline !important;
}

/* === MOVE USER NAV TO TOP === */
.pkp_structure_head {
    display: flex !important;
    flex-direction: column !important;
}

.pkp_navigation_user_wrapper {
    order: -1 !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    width: 100% !important;
    padding: 8px 1rem !important;
}

.pkp_navigation_user {
    justify-content: flex-end !important;
}

/* === POSITION USER NAV AT TOP === */
.pkp_structure_head {
    position: relative !important;
    padding-top: 35px !important;
}

.pkp_navigation_user_wrapper {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    padding: 8px 0 !important;
}

.pkp_navigation_user {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 2rem !important;
    justify-content: flex-end !important;
}

/* === FIX USER NAV POSITION === */
.pkp_navigation_user_wrapper {
    z-index: 1000 !important;
    background: #fff !important;
}

.pkp_navigation_user {
    gap: 20px !important;
}

.pkp_navigation_user > li {
    margin: 0 !important;
}

/* === FORCE USER NAV TO VERY TOP === */
.pkp_head_wrapper {
    position: relative !important;
    padding-top: 40px !important;
}

.pkp_navigation_user_wrapper {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background: transparent !important;
    z-index: 9999 !important;
}

.pkp_navigation_user a {
    color: #333 !important;
}

/* === REGISTER/LOGIN INTO RED NAV BAR === */
.pkp_navigation_user_wrapper {
    position: absolute !important;
    top: auto !important;
    bottom: 0 !important;
    right: 120px !important;
    left: auto !important;
    background: transparent !important;
    padding: 0 !important;
    z-index: 100 !important;
}

.pkp_navigation_user {
    display: flex !important;
    gap: 15px !important;
}

.pkp_navigation_user a {
    color: #fff !important;
    line-height: 50px !important;
}

.pkp_head_wrapper {
    padding-top: 0 !important;
}

/* === FIX: Position relative to red bar === */
.pkp_navigation_primary_row {
    position: relative !important;
}

.pkp_navigation_user_wrapper {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    right: 140px !important;
    bottom: auto !important;
}

/* === FIX: Common parent as reference === */
.pkp_site_nav_menu {
    position: relative !important;
}

.pkp_navigation_user_wrapper {
    position: absolute !important;
    top: 0 !important;
    right: 130px !important;
    transform: none !important;
    height: 50px !important;
    display: flex !important;
    align-items: center !important;
}

/* === DEBUG: Make user nav visible === */
.pkp_navigation_user_wrapper {
    background: yellow !important;
    z-index: 99999 !important;
    padding: 10px !important;
}

.pkp_navigation_user a {
    color: black !important;
    font-weight: bold !important;
}

/* === FINAL FIX: Reset and place in red bar === */
#navigationUserWrapper {
    position: static !important;
    display: block !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
    width: auto !important;
    transform: none !important;
    z-index: auto !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
}

#navigationUser {
    display: flex !important;
    gap: 20px !important;
}

#navigationUser a {
    color: #fff !important;
}

/* === Move Register/Login into red bar === */
#navigationUserWrapper {
    position: absolute !important;
    top: 0 !important;
    right: 130px !important;
    height: 50px !important;
    display: flex !important;
    align-items: center !important;
    background: transparent !important;
}

#navigationUser {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
}

#navigationUser a {
    color: #fff !important;
    text-decoration: none !important;
}

/* === Position relative to RED BAR === */
.pkp_navigation_primary_row {
    position: relative !important;
}

#navigationUserWrapper {
    position: absolute !important;
    top: 50% !important;
    right: 130px !important;
    transform: translateY(-50%) !important;
    z-index: 9999 !important;
}

/* === Fix position - more space from Search === */
#navigationUserWrapper {
    right: 180px !important;
}

#navigationUser {
    gap: 25px !important;
}

/* === Register Login closer, Search separate === */
#navigationUserWrapper {
    right: 140px !important;
}

#navigationUser {
    gap: 15px !important;
}

/* === Proper spacing: Register Login | gap | Search === */
#navigationUserWrapper {
    right: 220px !important;
}

#navigationUser {
    gap: 20px !important;
}

/* Add margin to Search for clear separation */
.pkp_navigation_search_wrapper {
    margin-left: 30px !important;
}

/* === Standard logic: Search far right, user nav to its left === */
.pkp_navigation_search_wrapper {
    position: absolute !important;
    right: 2rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

#navigationUserWrapper {
    right: calc(2rem + 100px + 30px) !important;
}

/* === Fix: Push Register/Login further left === */
#navigationUserWrapper {
    right: 180px !important;
}

/* === CLEAN LAYOUT: Nav left, User right, Search separate === */

/* Hide Search from red bar - put in separate row */
.pkp_navigation_search_wrapper {
    position: static !important;
    display: none !important;
}

/* Red bar is flexbox container */
.pkp_navigation_primary_row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 0 2rem !important;
}

/* Main nav (Current/Archives/About) on LEFT */
.pkp_navigation_primary_wrapper {
    position: static !important;
    margin: 0 !important;
}

.pkp_navigation_primary {
    display: flex !important;
    gap: 30px !important;
}

/* User nav (Register/Login) on RIGHT */
#navigationUserWrapper {
    position: static !important;
    right: auto !important;
    transform: none !important;
    margin-left: auto !important;
}

#navigationUser {
    display: flex !important;
    gap: 25px !important;
}

/* === FIX: Register/Login inside red bar, white text === */
#navigationUserWrapper {
    position: absolute !important;
    top: 50% !important;
    right: 2rem !important;
    transform: translateY(-50%) !important;
    background: transparent !important;
}

#navigationUser li a {
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
    text-decoration: none !important;
}

/* Show Search again */
.pkp_navigation_search_wrapper {
    display: block !important;
    position: absolute !important;
    right: 200px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

.pkp_navigation_search_wrapper a,
.pkp_navigation_search_wrapper button {
    color: #ffffff !important;
}

/* === Simple: Shift nav items to left === */
.pkp_navigation_primary {
    justify-content: flex-start !important;
    padding-left: 2rem !important;
}

/* === FIX: Nav to LEFT, User to RIGHT === */
.pkp_navigation_primary_wrapper {
    display: flex !important;
    justify-content: flex-start !important;
    width: 100% !important;
    padding-left: 2rem !important;
}

.pkp_navigation_primary {
    margin: 0 !important;
    justify-content: flex-start !important;
}

/* === Move Search below red bar, white background === */
.pkp_navigation_search_wrapper {
    position: absolute !important;
    top: 100% !important;
    right: 2rem !important;
    background: #ffffff !important;
    padding: 8px 15px !important;
    border-radius: 4px !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important;
    z-index: 100 !important;
}

.pkp_navigation_search_wrapper a {
    color: #333 !important;
    text-decoration: none !important;
}

.pkp_navigation_search_wrapper .fa-search {
    color: #B31B1B !important;
}

/* === Search: transparent bg, 10px gap from red bar === */
.pkp_navigation_search_wrapper {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin-top: 10px !important;
}

/* === Search: more gap, bigger, fix click === */
.pkp_navigation_search_wrapper {
    margin-top: 15px !important;
    z-index: 9999 !important;
    pointer-events: auto !important;
}

.pkp_navigation_search_wrapper a {
    font-size: 1.1rem !important;
    pointer-events: auto !important;
    cursor: pointer !important;
}

.pkp_navigation_search_wrapper .fa-search {
    font-size: 1.2rem !important;
}

/* === Fix Search clickable - position relative to header === */
.pkp_structure_head {
    position: relative !important;
    z-index: 1000 !important;
}

.pkp_navigation_search_wrapper {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    float: right !important;
    margin-right: 2rem !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

/* === REVERT: Search back to below red bar === */
.pkp_navigation_search_wrapper {
    position: absolute !important;
    top: 100% !important;
    right: 2rem !important;
    float: none !important;
    margin: 15px 0 0 0 !important;
}

/* === FIX CLICK: Make sure nothing covers it === */
.ns-hero {
    position: relative !important;
    z-index: 1 !important;
}

.pkp_site_nav_menu {
    position: relative !important;
    z-index: 9999 !important;
}

/* === Fix overflow - allow search to be visible and clickable === */
.pkp_navigation_primary_wrapper {
    overflow: visible !important;
}

.pkp_navigation_primary_row {
    overflow: visible !important;
}

.pkp_head_wrapper {
    overflow: visible !important;
}

.pkp_structure_head {
    overflow: visible !important;
}

/* === Smooth Search - no gray background === */
.pkp_navigation_search_wrapper {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.pkp_navigation_search_wrapper a {
    background: transparent !important;
    border: none !important;
    padding: 5px 0 !important;
}

.pkp_navigation_search_wrapper a:hover {
    background: transparent !important;
    color: #B31B1B !important;
}

/* === Fix: Keep clickable, smooth hover === */
.pkp_navigation_search_wrapper a:hover {
    background: none !important;
    opacity: 0.8 !important;
}

.pkp_navigation_search_wrapper a:active,
.pkp_navigation_search_wrapper a:focus {
    background: none !important;
}

/* === Force Search clickable === */
.pkp_navigation_search_wrapper {
    z-index: 99999 !important;
    pointer-events: auto !important;
    position: relative !important;
    display: inline-block !important;
    margin-top: 15px !important;
    margin-right: 2rem !important;
    float: right !important;
}

.pkp_navigation_search_wrapper * {
    pointer-events: auto !important;
}

/* === RESTORE: Search below red bar === */
.pkp_navigation_search_wrapper {
    position: absolute !important;
    top: 100% !important;
    right: 2rem !important;
    float: none !important;
    margin: 15px 0 0 0 !important;
    display: block !important;
}

/* === FIX CLICK ONLY - lower hero z-index === */
.ns-hero {
    z-index: 1 !important;
}

.pkp_structure_content {
    z-index: 1 !important;
}

.page_index_journal {
    z-index: 1 !important;
}

/* === FIX CLICK - nav above content === */
.pkp_site_nav_menu {
    position: relative !important;
    z-index: 9999 !important;
}

.pkp_navigation_primary_row {
    position: relative !important;
    z-index: 9999 !important;
}

/* === Check: Remove any pseudo-elements that might cover === */
.pkp_head_wrapper::after,
.pkp_head_wrapper::before,
.pkp_navigation_primary_row::after,
.pkp_navigation_primary_row::before,
.pkp_site_nav_menu::after,
.pkp_site_nav_menu::before {
    display: none !important;
    content: none !important;
}

/* === Give header wrapper padding to include search area === */
.pkp_head_wrapper {
    padding-bottom: 50px !important;
}

/* === UNDO hover damage - restore clickable anchor === */
.pkp_navigation_search_wrapper a {
    display: block !important;
    padding: 10px 15px !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    background: transparent !important;
}

/* === Make entire Search area clickable === */
.pkp_navigation_search_wrapper a {
    display: inline-block !important;
    padding: 15px 25px !important;
    margin: -10px !important;
}

/* === Push Search further down to clear overlap === */
.pkp_navigation_search_wrapper {
    margin-top: 25px !important;
}

/* === Register page: Full width header and footer === */
.pkp_page_user .pkp_structure_head,
.pkp_page_user .pkp_head_wrapper,
.pkp_page_user .pkp_navigation_primary_row,
.pkp_page_user .pkp_site_nav_menu {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.pkp_page_user .pkp_structure_footer_wrapper,
.pkp_page_user .ncp-footer-journals,
.pkp_page_user .ncp-footer-main,
.pkp_page_user .ncp-footer-publisher,
.pkp_page_user .ncp-footer-legal {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* === Register/Login pages: Force full width layout === */
.pkp_page_user .pkp_structure_page {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.pkp_page_user .pkp_structure_head {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
}

.pkp_page_user .pkp_structure_footer_wrapper {
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
}

/* ============================================
   FINAL FIX: Search position + About clickable
   ============================================ */

/* Search wrapper - position below nav bar on right */
.pkp_navigation_search_wrapper {
    position: absolute !important;
    top: 100% !important;
    right: 2rem !important;
    left: auto !important;
    float: none !important;
    margin: 15px 0 0 0 !important;
    padding: 0 !important;
    display: block !important;
    z-index: 100 !important;
    width: auto !important;
}

/* Ensure primary nav wrapper allows absolute positioning */
.pkp_navigation_primary_row {
    position: relative !important;
}

/* About dropdown - hidden by default */
#navigationPrimary > li > ul {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    background: #fff !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    min-width: 200px !important;
    padding: 8px 0 !important;
    z-index: 9999 !important;
}

/* Show dropdown on hover */
#navigationPrimary > li:hover > ul {
    display: block !important;
}

/* Dropdown items */
#navigationPrimary > li > ul > li > a {
    color: #333 !important;
    padding: 10px 20px !important;
    display: block !important;
}

#navigationPrimary > li > ul > li > a:hover {
    background: #f5f5f5 !important;
    color: #B31B1B !important;
}

/* ============================================
   FIX: Hide dropdown submenu, show on hover
   ============================================ */

/* Hide ALL submenus by default - use same selectors as line 2485 */
.pkp_navigation_primary li ul,
.pkp_navigation_primary ul ul,
nav ul ul,
.pkp_nav_list ul,
#navigationPrimary li ul {
    left: -9999px !important;
    top: 100% !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Show submenu on hover */
.pkp_navigation_primary li:hover > ul,
.pkp_navigation_primary ul li:hover > ul,
nav li:hover > ul,
.pkp_nav_list li:hover > ul,
#navigationPrimary li:hover > ul {
    left: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* ============================================
   NUCLEAR FIX: Force About link clickable
   ============================================ */

/* Target the specific About menu item (3rd item in nav) */
#navigationPrimary > li:nth-child(3) {
    position: relative !important;
    z-index: 100000 !important;
}

#navigationPrimary > li:nth-child(3) > a {
    position: relative !important;
    z-index: 100001 !important;
    pointer-events: auto !important;
    display: inline-block !important;
}

/* Kill any pseudo-elements that might be overlaying */
#navigationPrimary > li:nth-child(3)::before,
#navigationPrimary > li:nth-child(3)::after,
#navigationPrimary > li:nth-child(3) > a::before,
#navigationPrimary > li:nth-child(3) > a::after {
    display: none !important;
    content: none !important;
    pointer-events: none !important;
}

/* Ensure the submenu is completely off-screen until hover */
#navigationPrimary > li:nth-child(3) > ul {
    position: absolute !important;
    left: -99999px !important;
    top: 100% !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

/* Only show submenu on hover, and below the link */
#navigationPrimary > li:nth-child(3):hover > ul {
    left: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 100002 !important;
}

/* Make sure nothing from header is overlapping nav */
.pkp_structure_head,
.pkp_head_wrapper,
.pkp_site_name_wrapper,
.pkp_site_name {
    pointer-events: none !important;
}

.pkp_structure_head a,
.pkp_head_wrapper a,
.pkp_site_name a,
#navigationPrimary,
#navigationPrimary a,
#navigationUser,
#navigationUser a {
    pointer-events: auto !important;
}

/* ============================================
   FIX: User nav bar blocking primary nav
   The #navigationUser was 1160px wide, covering About
   ============================================ */

/* User navigation - shrink to content, don't block */
#navigationUserWrapper,
.pkp_navigation_user_wrapper,
div.pkp_navigation_user_wrapper {
    width: auto !important;
    max-width: fit-content !important;
    pointer-events: none !important;
}

#navigationUser,
.pkp_navigation_user,
ul.pkp_navigation_user {
    width: auto !important;
    max-width: fit-content !important;
    display: inline-flex !important;
    pointer-events: none !important;
}

/* But links inside should still be clickable */
#navigationUser a,
#navigationUser li,
.pkp_navigation_user a,
.pkp_navigation_user li {
    pointer-events: auto !important;
}

/* ============================================
   FIX: Make dropdown items clickable
   ============================================ */

/* Dropdown menu itself needs pointer-events */
#navigationPrimary ul,
#navigationPrimary li ul,
.pkp_navigation_primary ul,
.pkp_navigation_primary li ul,
.pkp_nav_list ul,
.dropdown-menu {
    pointer-events: auto !important;
}

/* All dropdown items and links */
#navigationPrimary ul li,
#navigationPrimary ul li a,
.pkp_navigation_primary ul li,
.pkp_navigation_primary ul li a,
.dropdown-menu li,
.dropdown-menu li a {
    pointer-events: auto !important;
}

/* ============================================
   FIX: Dropdown menu above all content
   ============================================ */

/* Dropdown menu - highest z-index, above hero */
#navigationPrimary .dropdown-menu,
#navigationPrimary > li > ul,
.pkp_navigation_primary .dropdown-menu,
ul.dropdown-menu {
    z-index: 999999 !important;
    position: absolute !important;
    pointer-events: auto !important;
}

/* All items in dropdown clickable */
.dropdown-menu li,
.dropdown-menu li a,
#navigationPrimary .dropdown-menu li,
#navigationPrimary .dropdown-menu li a {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 999999 !important;
    display: block !important;
}

/* Hero and content below nav bar */
.ns-hero,
.ns-hero-inner,
.pkp_structure_content,
.pkp_structure_main {
    z-index: 1 !important;
}

/* ============================================
   FIX: Dropdown position - connect to parent
   ============================================ */

/* Remove any transform that pushes dropdown away */
#navigationPrimary > li > ul,
#navigationPrimary .dropdown-menu,
.pkp_navigation_primary .dropdown-menu,
.pkp_navigation_primary > li > ul {
    transform: none !important;
    top: 100% !important;
    left: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Parent li needs to contain the dropdown */
#navigationPrimary > li,
.pkp_navigation_primary > li {
    position: relative !important;
}

/* Add a small invisible bridge to prevent gap */
#navigationPrimary > li > ul::before,
.pkp_navigation_primary .dropdown-menu::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: -10px !important;
    left: 0 !important;
    right: 0 !important;
    height: 10px !important;
    background: transparent !important;
}

/* ============================================
   NEUSCIENCE - NAV BAR FIX (Step 2.3)
   Full-width red bar with centered content
   Added: 2026-01-03
   ============================================ */

/* === NAVIGATION - FULL WIDTH STRUCTURE === */

/* The outer row - FULL WIDTH background */
.pkp_navigation_primary_row {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background: #B31B1B !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 1000 !important;
    box-sizing: border-box !important;
}

/* Inner wrapper - CENTERED content */
.pkp_navigation_primary_wrapper {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

/* The nav menu container */
.pkp_site_nav_menu {
    background: transparent !important;
    width: 100% !important;
}

/* Primary nav list */
.pkp_navigation_primary {
    display: flex !important;
    flex-direction: row !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

/* Nav items */
.pkp_navigation_primary > li {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Nav links */
.pkp_navigation_primary > li > a {
    display: block !important;
    padding: 14px 18px !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: background 0.2s ease !important;
    white-space: nowrap !important;
}

.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li.current > a {
    background: rgba(0, 0, 0, 0.2) !important;
    color: #ffffff !important;
}

/* Search wrapper alignment */
.pkp_navigation_search_wrapper {
    margin-left: auto !important;
}

/* User navigation (Register/Login) */
.pkp_navigation_user_wrapper {
    background: transparent !important;
}

.pkp_navigation_user {
    display: flex !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

.pkp_navigation_user > li > a {
    display: block !important;
    padding: 14px 18px !important;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 13px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.pkp_navigation_user > li > a:hover {
    background: rgba(0, 0, 0, 0.2) !important;
    color: #ffffff !important;
}

/* Remove any borders/lines on nav */
.pkp_navigation_primary_row,
.pkp_navigation_primary_wrapper,
.pkp_navigation_primary,
.pkp_navigation_user {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Skip nav - hide */
.cmp_skip_to_content {
    position: absolute !important;
    left: -9999px !important;
}

