/* ═══════════════════════════════════════════════════════════
   NJT Journals — frontend styles v1.2
   Headings: Libre Baskerville  ·  Body: Heebo
   ═══════════════════════════════════════════════════════════ */
.njtj-wrap, .njtj-band {
	--njtj-navy:        #0b2f5e;
	--njtj-navy-dark:   #071f3f;
	--njtj-accent:      #0b5fa5;
	--njtj-accent-dark: #08477c;
	--njtj-gold:        #c9a24b;   /* wow-accent for details          */
	--njtj-ink:         #22262c;
	--njtj-muted:       #66707f;
	--njtj-paper:       #ffffff;
	--njtj-soft:        #f4f6f9;
	--njtj-line:        #e2e6ec;
	--njtj-serif:       'Libre Baskerville', Georgia, 'Times New Roman', serif;
	--njtj-sans:        'Heebo', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	--njtj-radius:      8px;
	--njtj-shadow:      0 1px 2px rgba(11,47,94,.05), 0 4px 16px rgba(11,47,94,.06);
}

.njtj-wrap {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 22px 0 80px !important;
	font-family: var(--njtj-sans) !important;
	font-size: 15px !important;
	color: var(--njtj-ink) !important;
	line-height: 1.6 !important;
}
.njtj-wrap *, .njtj-wrap *::before, .njtj-wrap *::after,
.njtj-band *, .njtj-band *::before, .njtj-band *::after { box-sizing: border-box !important; }
.njtj-wrap img { max-width: 100% !important; height: auto !important; display: block !important; }
.njtj-wrap a { text-decoration: none !important; color: var(--njtj-accent) !important; }
.njtj-wrap a:hover { text-decoration: underline !important; }
.njtj-wrap a:focus-visible,
.njtj-wrap .njtj-btn:focus-visible { outline: 2px solid var(--njtj-accent) !important; outline-offset: 3px !important; }

/* ── Title band ───────────────────────────────────────────── */
.njtj-band {
	position: relative !important;
	background:
		radial-gradient(900px 260px at 85% -60%, rgba(64,130,214,.45), transparent 60%),
		linear-gradient(92deg, var(--njtj-navy-dark) 0%, var(--njtj-navy) 58%, #17457f 100%);
	overflow: hidden !important;
}
.njtj-band::after {
	content: '' !important;
	position: absolute !important; inset: 0 !important;
	background: repeating-linear-gradient(115deg, rgba(255,255,255,.028) 0 2px, transparent 2px 9px) !important;
	pointer-events: none !important;
}
.njtj-band-inner {
	position: relative !important; z-index: 1 !important;
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 20px 4% 22px !important;
}
.njtj-band-eyebrow {
	font-family: var(--njtj-sans) !important;
	font-size: 11px !important; font-weight: 600 !important;
	letter-spacing: .22em !important; text-transform: uppercase !important;
	color: rgba(255,255,255,.65) !important;
	margin: 0 0 5px !important;
}
.njtj-band-title {
	font-family: var(--njtj-serif) !important;
	font-weight: 700 !important;
	font-size: clamp(21px, 2.4vw, 28px) !important;
	line-height: 1.3 !important;
	color: #ffffff !important;
	margin: 0 !important;
	padding: 0 !important;
}
.njtj-band-title::after {
	content: '' !important;
	display: block !important;
	width: 46px !important; height: 3px !important;
	margin-top: 10px !important;
	background: var(--njtj-gold) !important;
	border-radius: 2px !important;
}

/* ── Type (hard overrides vs theme headings) ──────────────── */
.njtj-eyebrow {
	font-size: 11px !important; letter-spacing: .16em !important; text-transform: uppercase !important;
	color: var(--njtj-accent) !important; font-weight: 600 !important; margin: 0 0 8px !important;
}
.njtj-eyebrow a { color: inherit !important; }

.njtj-wrap .njtj-page-title,
.njtj-wrap .njtj-title {
	font-family: var(--njtj-serif) !important;
	font-weight: 700 !important;
	color: var(--njtj-ink) !important;
	margin: 0 0 10px !important;
	line-height: 1.25 !important;
}
.njtj-wrap .njtj-page-title { font-size: clamp(26px, 3.2vw, 34px) !important; }
.njtj-wrap .njtj-title      { font-size: clamp(22px, 2.6vw, 28px) !important; }

.njtj-wrap .njtj-section-title {
	font-family: var(--njtj-serif) !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	color: var(--njtj-ink) !important;
	line-height: 1.3 !important;
	margin: 0 0 18px !important;
	padding: 0 0 10px !important;
	border-bottom: 1px solid var(--njtj-line) !important;
	position: relative !important;
}
.njtj-wrap .njtj-section-title::after {
	content: '' !important;
	position: absolute !important; left: 0 !important; bottom: -1px !important;
	width: 54px !important; height: 3px !important;
	background: var(--njtj-navy) !important;
	border-radius: 2px !important;
}
.njtj-wrap .njtj-sub-title {
	font-family: var(--njtj-serif) !important;
	font-size: 16px !important; font-weight: 700 !important;
	margin: 0 0 8px !important;
}

.njtj-page-head { margin-bottom: 38px !important; max-width: 640px !important; }
.njtj-page-sub  { color: var(--njtj-muted) !important; margin: 0 !important; }
.njtj-empty     { color: var(--njtj-muted) !important; background: var(--njtj-soft) !important; padding: 20px 22px !important; border-radius: var(--njtj-radius) !important; font-size: 14px !important; }

/* ── Breadcrumb ───────────────────────────────────────────── */
.njtj-crumb { padding:10px;background:beige;font-size: 12.5px !important; color: var(--njtj-muted) !important; margin-bottom: 30px !important; }
.njtj-crumb a { color: var(--njtj-muted) !important; }
.njtj-crumb a:hover { color: var(--njtj-accent) !important; }
.njtj-crumb-sep { margin: 0 7px !important; opacity: .55 !important; }
.njtj-crumb-here { color: var(--njtj-ink) !important; font-weight: 500 !important; }

/* ── Info bar ─────────────────────────────────────────────── */
.njtj-infobar {
	display: flex !important; align-items: center !important; justify-content: space-between !important;
	gap: 16px !important; flex-wrap: wrap !important;
	background: var(--njtj-paper) !important;
	border: 1px solid var(--njtj-line) !important;
	border-radius: var(--njtj-radius) !important;
	box-shadow: var(--njtj-shadow) !important;
	padding: 12px 18px !important;
	margin-bottom: 26px !important;
}
.njtj-infobar-left, .njtj-infobar-right { display: flex !important; align-items: center !important; gap: 14px !important; flex-wrap: wrap !important; }
.njtj-infobar-logo img { width: 44px !important; height: 44px !important; object-fit: cover !important; border-radius: 4px !important; border: 1px solid var(--njtj-line) !important; }
.njtj-infobar-pub  { font-weight: 500 !important; font-size: 14px !important; }
.njtj-infobar-issn { font-size: 13px !important; color: var(--njtj-muted) !important; }

/* ── Buttons ──────────────────────────────────────────────── */
.njtj-btn {
	display: inline-flex !important; align-items: center !important; gap: 8px !important;
	font-family: var(--njtj-sans) !important; font-weight: 600 !important; font-size: 13px !important;
	letter-spacing: .02em !important;
	padding: 9px 18px !important; border-radius: 5px !important; cursor: pointer !important;
	transition: background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}
.njtj-btn-solid { background: var(--njtj-navy) !important; color: #fff !important; box-shadow: 0 2px 8px rgba(11,47,94,.28) !important; }
.njtj-btn-solid:hover { background: var(--njtj-navy-dark) !important; text-decoration: none !important; transform: translateY(-1px) !important; box-shadow: 0 5px 14px rgba(11,47,94,.32) !important; }
.njtj-btn-ghost { border: 1px solid var(--njtj-navy) !important; color: var(--njtj-navy) !important; }
.njtj-btn-ghost:hover { background: var(--njtj-navy) !important; color: #fff !important; text-decoration: none !important; transform: translateY(-1px) !important; }
.njtj-btn-dl { background: var(--njtj-navy) !important; color: #fff !important; width: 100% !important; justify-content: center !important; }
.njtj-btn-dl:hover { background: var(--njtj-navy-dark) !important; text-decoration: none !important; transform: translateY(-1px) !important; }

/* ── Layout ───────────────────────────────────────────────── */
.njtj-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 280px !important;
	gap: 38px !important;
	align-items: start !important;
}
.njtj-main { min-width: 0 !important; }

/* ── Sidebar (Sage "Browse journal" style) ────────────────── */
.njtj-sidebar { display: flex !important; flex-direction: column !important; gap: 20px !important; position: sticky !important; top: 90px !important; }
.njtj-side-box {
	position: relative !important;
	background: var(--njtj-paper) !important;
	border: 1px solid var(--njtj-line) !important;
	border-radius: var(--njtj-radius) !important;
	padding: 16px 0 8px !important;
	box-shadow: var(--njtj-shadow) !important;
	overflow: hidden !important;
}
.njtj-side-box::before {
	content: '' !important;
	position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important;
	height: 3px !important;
	background: linear-gradient(90deg, var(--njtj-navy), #2a6cb8 70%, var(--njtj-gold)) !important;
}
.njtj-wrap .njtj-side-heading {
	font-family: var(--njtj-serif) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: 0 !important;
	color: var(--njtj-navy) !important;
	margin: 4px 18px 10px !important;
	padding: 0 0 9px !important;
	border-bottom: 1px solid var(--njtj-line) !important;
}
.njtj-side-nav { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.njtj-side-nav li { margin: 0 !important; }
.njtj-side-nav a {
	position: relative !important;
	display: block !important; padding: 9px 18px !important;
	color: var(--njtj-ink) !important; font-size: 14px !important;
	border-left: 3px solid transparent !important;
	transition: background .15s ease, border-color .15s ease, color .15s ease, padding-left .15s ease !important;
}
.njtj-side-nav a:hover { background: var(--njtj-soft) !important; text-decoration: none !important; color: var(--njtj-accent) !important; padding-left: 22px !important; }
.njtj-side-nav a.is-active {
	background: #e9f0f8 !important;
	border-left-color: var(--njtj-navy) !important;
	color: var(--njtj-navy) !important;
	font-weight: 600 !important;
}
.njtj-side-box .njtj-pub-details-stack { padding: 0 18px 10px !important; }

/* ── Panels + switch animation ────────────────────────────── */
.njtj-panel { display: none !important; }
.njtj-panel.is-active { display: block !important; animation: njtjFade .32s ease both !important; }
@keyframes njtjFade {
	from { opacity: 0; transform: translateY(8px); }
	to   { opacity: 1; transform: none; }
}

/* ── About / issue header card ────────────────────────────── */
.njtj-about-card {
	display: grid !important;
	grid-template-columns: 122px minmax(0, 1fr) !important;
	gap: 20px !important;
	align-items: start !important;
	background: var(--njtj-soft) !important;
	border: 1px solid var(--njtj-line) !important;
	border-radius: var(--njtj-radius) !important;
	padding: 18px !important;
	margin-bottom: 30px !important;
}
.njtj-about-card.njtj-no-desc { grid-template-columns: 122px !important; justify-content: start !important; }
.njtj-about-cover img {
	width: 100% !important; aspect-ratio: 3 / 4 !important; object-fit: cover !important;
	border-radius: 4px !important; border: 1px solid var(--njtj-line) !important;
	box-shadow: 0 6px 18px rgba(11,47,94,.18) !important;
	transition: transform .25s ease !important;
}
.njtj-about-cover:hover img { transform: scale(1.025) rotate(-.4deg) !important; }
.njtj-about-text { font-size: 14.5px !important; }
.njtj-about-text .njtj-desc { margin: 0 !important; }
.njtj-desc p { margin: 0 0 12px !important; }
.njtj-desc p:last-child { margin-bottom: 0 !important; }
.njtj-wrap .njtj-issue-name {
	font-family: var(--njtj-serif) !important;
	font-size: 18px !important; font-weight: 700 !important;
	margin: 0 0 4px !important; color: var(--njtj-ink) !important;
	line-height: 1.3 !important;
}

/* ── Publication details ──────────────────────────────────── */
.njtj-pub-details { margin: 0 0 16px !important; display: grid !important; gap: 8px 26px !important; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)) !important; }
.njtj-pub-details-stack { grid-template-columns: 1fr !important; gap: 9px !important; }
.njtj-pub-details div { display: flex !important; flex-direction: column !important; }
.njtj-pub-details dt { font-size: 10.5px !important; text-transform: uppercase !important; letter-spacing: .11em !important; color: var(--njtj-muted) !important; font-weight: 600 !important; }
.njtj-pub-details dd { margin: 1px 0 0 !important; font-size: 14px !important; }

/* ── Current issue head ───────────────────────────────────── */
.njtj-current-head {
	margin-bottom: 16px !important;
	padding: 12px 16px !important;
	background: var(--njtj-soft) !important;
	border-left: 3px solid var(--njtj-navy) !important;
	border-radius: 0 6px 6px 0 !important;
}
.njtj-current-title {
	font-family: var(--njtj-serif) !important;
	font-size: 16.5px !important; font-weight: 700 !important;
	color: var(--njtj-navy) !important;
}
.njtj-issue-label { color: var(--njtj-muted) !important; font-size: 13px !important; margin: 3px 0 0 !important; }
.njtj-view-issue { margin-top: 22px !important; }

/* ── TOC ──────────────────────────────────────────────────── */
.njtj-toc { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.njtj-toc-row {
	display: flex !important; align-items: flex-start !important; gap: 16px !important;
	padding: 15px 10px !important;
	margin: 0 -10px !important;
	border-bottom: 1px solid var(--njtj-line) !important;
	border-radius: 6px !important;
	transition: background .15s ease !important;
}
.njtj-toc-row:hover { background: var(--njtj-soft) !important; }
.njtj-toc-row:first-child { border-top: 1px solid var(--njtj-line) !important; }
.njtj-toc-main { flex: 1 1 auto !important; min-width: 0 !important; }
.njtj-toc-title {
	font-family: var(--njtj-serif) !important;
	font-size: 15px !important; font-weight: 700 !important; line-height: 1.45 !important;
	color: var(--njtj-accent) !important;
	background-image: linear-gradient(currentColor, currentColor) !important;
	background-size: 0% 1px !important; background-repeat: no-repeat !important; background-position: 0 100% !important;
	transition: background-size .25s ease !important;
}
.njtj-toc-title:hover { text-decoration: none !important; background-size: 100% 1px !important; }
.njtj-toc-authors { margin: 4px 0 0 !important; font-size: 13px !important; color: var(--njtj-muted) !important; }
.njtj-toc-side { flex: 0 0 auto !important; display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 6px !important; }
.njtj-toc-pages { font-size: 12px !important; color: var(--njtj-muted) !important; }
.njtj-toc-dl {
	font-size: 12px !important; font-weight: 600 !important;
	border: 1px solid var(--njtj-navy) !important; color: var(--njtj-navy) !important;
	padding: 5px 13px !important; border-radius: 99px !important; white-space: nowrap !important;
	transition: background .15s ease, color .15s ease, transform .15s ease !important;
}
.njtj-toc-dl:hover { background: var(--njtj-navy) !important; color: #fff !important; text-decoration: none !important; transform: translateY(-1px) !important; }

/* ── Latest chapters ──────────────────────────────────────── */
.njtj-recent-list { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.njtj-recent-row { padding: 15px 10px !important; margin: 0 -10px !important; border-bottom: 1px solid var(--njtj-line) !important; border-radius: 6px !important; transition: background .15s ease !important; }
.njtj-recent-row:hover { background: var(--njtj-soft) !important; }
.njtj-recent-row:first-child { border-top: 1px solid var(--njtj-line) !important; }
.njtj-recent-meta { font-size: 12px !important; color: var(--njtj-muted) !important; margin: 0 0 5px !important; display: flex !important; align-items: center !important; gap: 8px !important; flex-wrap: wrap !important; }
.njtj-tag {
	font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .07em !important;
	background: #e9f0f8 !important; color: var(--njtj-navy) !important;
	padding: 2px 8px !important; border-radius: 3px !important;
}
.njtj-recent-title {
	font-family: var(--njtj-serif) !important; font-size: 15px !important; font-weight: 700 !important; line-height: 1.45 !important;
	color: var(--njtj-accent) !important; display: inline-block !important; margin-bottom: 3px !important;
}
.njtj-recent-row .njtj-toc-dl { margin-top: 8px !important; display: inline-block !important; }

/* ── Cards ────────────────────────────────────────────────── */
.njtj-grid { display: grid !important; gap: 22px !important; }
.njtj-grid-journals { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important; }
.njtj-grid-issues   { grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)) !important; }
.njtj-card {
	display: flex !important; flex-direction: column !important;
	background: var(--njtj-paper) !important;
	border: 1px solid var(--njtj-line) !important;
	border-radius: var(--njtj-radius) !important;
	overflow: hidden !important;
	transition: box-shadow .22s ease, transform .22s ease, border-color .22s ease !important;
}
.njtj-card:hover {
	text-decoration: none !important;
	border-color: var(--njtj-navy) !important;
	box-shadow: 0 12px 28px rgba(11,47,94,.15) !important;
	transform: translateY(-4px) !important;
}
.njtj-card-cover { aspect-ratio: 3 / 4 !important; background: var(--njtj-soft) !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; }
.njtj-card-cover img { width: 100% !important; height: 100% !important; object-fit: cover !important; transition: transform .35s ease !important; }
.njtj-card:hover .njtj-card-cover img { transform: scale(1.05) !important; }
.njtj-cover-fallback {
	font-family: var(--njtj-serif) !important; font-weight: 700 !important; font-size: 14px !important;
	color: var(--njtj-navy) !important; text-align: center !important; padding: 16px !important; line-height: 1.4 !important;
}
.njtj-card-body { padding: 13px 14px 15px !important; }
.njtj-wrap .njtj-card-title {
	text-align:center;
	font-family: var(--njtj-serif) !important;
	font-size: 24px !important; font-weight: 500 !important;
	margin: 0 0 4px !important; color: var(--njtj-ink) !important; line-height: 1.35 !important;
}
.njtj-card-meta  { font-size: 12.5px !important; color: var(--njtj-muted) !important; margin: 0 0 4px !important; }
.njtj-card-count { font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .08em !important; color: var(--njtj-accent) !important; margin: 0 !important; }

/* ── Chapter page ─────────────────────────────────────────── */
.njtj-chapter-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 280px !important;
	gap: 38px !important; align-items: start !important;
}
.njtj-chapter-authors { font-size: 15px !important; color: var(--njtj-muted) !important; margin: 0 0 22px !important; }
.njtj-chapter-desc, .njtj-pubinfo { margin-top: 24px !important; font-size: 14.5px !important; }
.njtj-chapter-side { position: sticky !important; top: 90px !important; }
.njtj-side-card {
	position: relative !important;
	background: var(--njtj-paper) !important;
	border: 1px solid var(--njtj-line) !important;
	border-radius: var(--njtj-radius) !important;
	padding: 20px 18px !important;
	box-shadow: var(--njtj-shadow) !important;
	overflow: hidden !important;
}
.njtj-side-card::before {
	content: '' !important;
	position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important;
	background: linear-gradient(90deg, var(--njtj-navy), #2a6cb8 70%, var(--njtj-gold)) !important;
}
.njtj-side-note { font-size: 12px !important; color: var(--njtj-muted) !important; text-align: center !important; margin: 9px 0 16px !important; }

/* ── Pagination ───────────────────────────────────────────── */
.njtj-pagination { margin-top: 38px !important; }
.njtj-pagination .page-numbers {
	display: inline-block !important; padding: 7px 13px !important; margin-right: 6px !important;
	border: 1px solid var(--njtj-line) !important; border-radius: 4px !important;
	color: var(--njtj-ink) !important; font-size: 13px !important;
}
.njtj-pagination .page-numbers.current,
.njtj-pagination .page-numbers:hover { background: var(--njtj-navy) !important; border-color: var(--njtj-navy) !important; color: #fff !important; text-decoration: none !important; }

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 960px) {
	.njtj-layout, .njtj-chapter-layout { grid-template-columns: 1fr !important; gap: 28px !important; }
	.njtj-sidebar, .njtj-chapter-side { position: static !important; }
	.njtj-sidebar { order: -1 !important; }
	.njtj-side-nav { display: flex !important; flex-wrap: wrap !important; gap: 4px !important; padding: 0 12px 8px !important; }
	.njtj-side-nav a { border-left: 0 !important; border-radius: 99px !important; padding: 7px 14px !important; }
	.njtj-side-nav a:hover { padding-left: 14px !important; }
	.njtj-side-nav a.is-active { border-left: 0 !important; }
}
@media (max-width: 620px) {
	.njtj-about-card { grid-template-columns: 1fr !important; }
	.njtj-about-cover { max-width: 150px !important; }
	.njtj-toc-row { flex-direction: column !important; gap: 10px !important; }
	.njtj-toc-side { flex-direction: row !important; align-items: center !important; gap: 14px !important; }
	.njtj-infobar { flex-direction: column !important; align-items: flex-start !important; }
}

/* ── Shortcode: [njt_journals] ────────────────────────────── */
.njtj-sc { margin: 0 !important; }

/* Category tabs — plain text style (matches Books page) */
.njtj-cat-tabs {
	display: flex !important; flex-wrap: wrap !important;
	justify-content: center !important;
	gap: 10px 30px !important;
	margin: -20px 0 34px !important;
}
.njtj-cat-tab {
	appearance: none !important; -webkit-appearance: none !important;
	background: none !important;
	border: 0 !important;
	padding: 0 !important;
	font-family: 'Heebo', var(--njtj-sans, sans-serif) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	color: #111 !important;
	cursor: pointer !important;
	line-height: 1.6 !important;
	transition: color .18s ease !important;
}
.njtj-cat-tab:hover,
.njtj-cat-tab.is-active { color: #c5247a !important; }

/* Cards — open layout, no box */
.njtj-grid-sc { grid-template-columns: repeat(4, 1fr) !important; gap: 34px 28px !important; }
.njtj-sc .njtj-card-min {
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
}
.njtj-sc .njtj-card-min:hover {
	box-shadow: none !important;
	transform: none !important;
	border: 0 !important;
}
.njtj-sc .njtj-card-min .njtj-card-cover {
	border-radius: 6px !important;
	box-shadow: 0 6px 18px rgba(0,0,0,.12) !important;
	transition: box-shadow .25s ease, transform .25s ease !important;
}
.njtj-sc .njtj-card-min:hover .njtj-card-cover {
	box-shadow: 0 14px 30px rgba(0,0,0,.18) !important;
	transform: translateY(-4px) !important;
}
.njtj-sc .njtj-card-min .njtj-card-body { padding: 14px 2px 0 !important; }
.njtj-wrap .njtj-sc .njtj-card-min .njtj-card-title {
	font-size: 18px !important;
	line-height: 1.4 !important;
}
.njtj-card-min[hidden] { display: none !important; }

/* Category badge on cover */
.njtj-cover-badge {
	position: absolute !important; top: 10px !important; left: 10px !important;
	background: var(--njtj-navy) !important;
	color: #fff !important;
	font-size: 10px !important; font-weight: 700 !important;
	text-transform: uppercase !important; letter-spacing: .08em !important;
	padding: 4px 10px !important; border-radius: 3px !important;
	line-height: 1.2 !important;
	max-width: calc(100% - 20px) !important;
	overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important;
}
.njtj-card-min .njtj-card-cover { position: relative !important; }

.njtj-sc-empty { margin-top: 10px !important; text-align: center !important; }

@media (max-width: 960px) {
	.njtj-grid-sc { grid-template-columns: repeat(3, 1fr) !important; gap: 26px 20px !important; }
}
@media (max-width: 620px) {
	.njtj-cat-tabs { gap: 8px 18px !important; margin-bottom: 24px !important; }
	.njtj-grid-sc { grid-template-columns: repeat(2, 1fr) !important; gap: 22px 16px !important; }
	.njtj-wrap .njtj-sc .njtj-card-min .njtj-card-title { font-size: 15.5px !important; }
}

/* Nested wrap fix — when the shortcode sits inside an archive/page template */
.njtj-wrap .njtj-wrap.njtj-sc { max-width: none !important; padding: 0 !important; margin: 0 !important; }

/* ── Single Journal hero (no band) ────────────────────────── */
.njtj-jhero {
	display: grid !important;
	grid-template-columns: 240px minmax(0, 1fr) !important;
	gap: 32px !important;
	align-items: start !important;
	margin-bottom: 40px !important;
}
.njtj-jhero-cover img,
.njtj-ihero-cover img { width: 100% !important; height: auto !important; display: block !important; border-radius: 6px !important; box-shadow: 0 8px 22px rgba(0,0,0,.14) !important; }
.njtj-jhero-cover .njtj-cover-fallback,
.njtj-ihero-cover .njtj-cover-fallback {
	display: flex !important; align-items: center !important; justify-content: center !important;
	aspect-ratio: 3 / 4 !important; background: var(--njtj-soft) !important; border-radius: 6px !important;
}
.njtj-wrap .njtj-jhero-title {
	font-family: var(--njtj-serif) !important; font-size: 30px !important; font-weight: 700 !important;
	color: var(--njtj-ink) !important; margin: 0 0 6px !important; line-height: 1.25 !important;
}
.njtj-jhero-pub { font-size: 13px !important; color: var(--njtj-muted) !important; margin: 0 0 16px !important; }
.njtj-jhero-desc { font-size: 15px !important; line-height: 1.75 !important; margin: 0 0 12px !important; }
.njtj-jhero-more { font-size: 13.5px !important; font-weight: 600 !important; text-decoration: underline !important; }

.njtj-overview { margin-top: 10px !important; }

/* ── All Issues page ──────────────────────────────────────── */
.njtj-wrap .njtj-issues-title {
	font-family: var(--njtj-serif) !important; font-size: 26px !important; font-weight: 700 !important;
	color: var(--njtj-ink) !important; margin: 0 0 24px !important;
}

/* Year tabs — Sage-style underline */
.njtj-year-tabs {
	display: flex !important; flex-wrap: wrap !important; justify-content: center !important; gap: 4px !important;
	border-bottom: 1px solid var(--njtj-line) !important;
	margin: 0 0 30px !important;
}
.njtj-year-tab {
	appearance: none !important; -webkit-appearance: none !important;
	background: none !important; border: 0 !important; cursor: pointer !important;
	padding: 10px 16px 12px !important;
	font-family: 'Heebo', var(--njtj-sans, sans-serif) !important;
	font-size: 15px !important; font-weight: 500 !important; color: #111 !important;
	border-bottom: 3px solid transparent !important;
	margin-bottom: -1px !important;
	transition: color .18s ease, border-color .18s ease !important;
}
.njtj-year-tab:hover { color: #c5247a !important; }
.njtj-year-tab.is-active { color: var(--njtj-navy) !important; border-bottom-color: var(--njtj-navy) !important; font-weight: 700 !important; }

/* Issues grid — 2 columns, open layout */
.njtj-issues-grid {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 40px 40px !important;
}
.njtj-issue-item { }
.njtj-issue-thumb { display: block !important; width: 120px !important; margin-bottom: 12px !important; }
.njtj-issue-thumb img { width: 100% !important; height: auto !important; display: block !important; border-radius: 4px !important; box-shadow: 0 4px 14px rgba(0,0,0,.14) !important; transition: transform .22s ease, box-shadow .22s ease !important; }
.njtj-issue-thumb:hover img { transform: translateY(-3px) !important; box-shadow: 0 10px 22px rgba(0,0,0,.2) !important; }
.njtj-issue-thumb .njtj-cover-fallback { aspect-ratio: 3 / 4 !important; display: flex !important; align-items: center !important; justify-content: center !important; background: var(--njtj-soft) !important; border-radius: 4px !important; font-size: 11px !important; }
.njtj-issue-link {
	font-size: 15px !important; font-weight: 500 !important;
	color: var(--njtj-navy) !important; text-decoration: underline !important;
	display: inline-block !important; margin-bottom: 4px !important;
}
.njtj-issue-link:hover { color: #c5247a !important; }
.njtj-issue-current {
	font-size: 12px !important; font-weight: 700 !important; letter-spacing: .1em !important;
	text-transform: uppercase !important; color: var(--njtj-ink) !important;
	margin: 2px 0 !important;
}
.njtj-issue-pp { font-size: 13px !important; color: var(--njtj-muted) !important; margin: 2px 0 0 !important; }

/* ── Single Issue hero ────────────────────────────────────── */
.njtj-ihero {
	display: grid !important;
	grid-template-columns: 160px minmax(0, 1fr) auto !important;
	gap: 28px !important;
	align-items: start !important;
	margin-bottom: 36px !important;
}
.njtj-wrap .njtj-ihero-title {
	font-family: var(--njtj-serif) !important; font-size: 26px !important; font-weight: 700 !important;
	color: var(--njtj-ink) !important; margin: 0 0 8px !important; line-height: 1.3 !important;
}
.njtj-ihero-nav { display: flex !important; gap: 26px !important; padding-top: 6px !important; white-space: nowrap !important; }
.njtj-issue-nav {
	font-size: 13.5px !important; font-weight: 500 !important; color: var(--njtj-ink) !important;
	text-decoration: underline !important; display: inline-flex !important; align-items: center !important; gap: 6px !important;
}
.njtj-issue-nav:hover { color: #c5247a !important; }
.njtj-issue-nav.is-off { color: var(--njtj-muted) !important; text-decoration: none !important; cursor: default !important; }
.njtj-issue-nav-arrow {
	display: inline-flex !important; align-items: center !important; justify-content: center !important;
	width: 22px !important; height: 22px !important; border: 1.5px solid currentColor !important; border-radius: 50% !important;
	font-size: 12px !important; line-height: 1 !important;
}

/* Chapter meta line in TOC */
.njtj-toc-meta { font-size: 12.5px !important; color: var(--njtj-muted) !important; margin: 0 0 5px !important; display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 6px !important; }

/* ── Responsive (new layouts) ─────────────────────────────── */
@media (max-width: 960px) {
	.njtj-ihero { grid-template-columns: 130px minmax(0,1fr) !important; }
	.njtj-ihero-nav { grid-column: 1 / -1 !important; padding-top: 0 !important; }
}
@media (max-width: 620px) {
	.njtj-jhero { grid-template-columns: 1fr !important; }
	.njtj-jhero-cover { max-width: 190px !important; }
	.njtj-ihero { grid-template-columns: 1fr !important; gap: 18px !important; }
	.njtj-ihero-cover { max-width: 140px !important; }
	.njtj-issues-grid { grid-template-columns: 1fr !important; gap: 30px !important; }
	.njtj-year-tab { padding: 8px 12px 10px !important; font-size: 14px !important; }
}

/* ═══════════════════════════════════════════════════════════
   Single Journal v2 — Studera-style light theme
   Palette: black / grey  ·  accent #c5247a  ·  bands #F2F2F2
   ═══════════════════════════════════════════════════════════ */

.njtj-jsingle,
.njtj-light {
	--njtj-navy:        #1a1a1a;
	--njtj-navy-dark:   #000000;
	--njtj-accent:      #c5247a;
	--njtj-accent-dark: #9c1c60;
	--njtj-gold:        #c5247a;
	--njtj-ink:         #333333;
	--njtj-muted:       #777777;
	--njtj-soft:        #f2f2f2;
	--njtj-line:        #e6e6e6;
	--njtj-band:        #f2f2f2;
	--njtj-shadow:      0 1px 2px rgba(0,0,0,.04), 0 6px 22px rgba(0,0,0,.07);
}
.njtj-wrap.njtj-jsingle { padding: 0 0 0 !important; }
.njtj-jsingle a, .njtj-light a { color: #ffffff !important; }
.njtj-jsingle a:hover, .njtj-light a:hover { color: #ffffff !important; }

/* Top rule under the site header */
.njtj-jx-top { border-top: 1px solid #F2F2F2 !important; }

/* Tabs band is a full-width sibling of the hero wrap */
.njtj-jx-tabsec, .njtj-jx-tabsec * , .njtj-jx-tabsec *::before, .njtj-jx-tabsec *::after {
	box-sizing: border-box !important;
}
.njtj-jx-tabsec { font-family: var(--njtj-sans) !important; color: var(--njtj-ink) !important; }
.njtj-jx-tabsec img { max-width: 100% !important; height: auto !important; }
.njtj-jx-tabsec a { text-decoration: none !important; }
.njtj-jx-tabsec-inner {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 4% !important;
}

/* ── Hero grid ────────────────────────────────────────────── */
.njtj-jx-hero {
	display: grid !important;
	grid-template-columns: 1fr minmax(300px, 380px) 1fr !important;
	gap: 48px !important;
	align-items: start !important;
	padding: 56px 24px 64px !important;
}
.njtj-jx-col { min-width: 0 !important; }

/* Center cover */
.njtj-jx-cover-frame {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 320px !important;
}
.njtj-jx-cover-frame img {
	width: 100% !important;
	border-radius: 2px !important;
	box-shadow: 0 2px 6px rgba(0,0,0,.10), 0 14px 40px rgba(0,0,0,.16) !important;
}
.njtj-jx-cover-frame .njtj-cover-fallback {
	width: 100% !important;
	background: var(--njtj-soft) !important;
	border: 1px solid var(--njtj-line) !important;
	font-family: var(--njtj-serif) !important;
	font-size: 17px !important;
	color: var(--njtj-muted) !important;
	text-align: center !important;
	padding: 90px 16px !important;
}

/* ── Left column ──────────────────────────────────────────── */
.njtj-jx-kicker {
	font-size: 13px !important;
	color: var(--njtj-muted) !important;
	margin: 0 0 14px !important;
	letter-spacing: .01em !important;
}
.njtj-jx-kicker a { color: var(--njtj-muted) !important; }
.njtj-jx-kicker a:hover { color: var(--njtj-accent) !important; text-decoration: none !important; }

.njtj-jsingle .njtj-jx-title {
	font-family: var(--njtj-serif) !important;
	font-weight: 400 !important;
	font-size: clamp(24px, 2.5vw, 31px) !important;
	line-height: 1.28 !important;
	color: #111111 !important;
	margin: 0 0 22px !important;
	padding: 0 !important;
	letter-spacing: -.01em !important;
}
.njtj-jsingle .njtj-jx-title::after { content: none !important; }

.njtj-jx-editor {
	font-family: var(--njtj-serif) !important;
	font-size: 19px !important;
	line-height: 1.42 !important;
	color: #222222 !important;
	margin: 0 0 6px !important;
}
.njtj-jx-lbl {
	display: block !important;
	font-family: var(--njtj-sans) !important;
	font-size: 10.5px !important; font-weight: 600 !important;
	letter-spacing: .16em !important; text-transform: uppercase !important;
	color: var(--njtj-muted) !important;
	margin-bottom: 2px !important;
}
.njtj-jx-val { color: #222222 !important; }

.njtj-jx-subhead {
	font-family: var(--njtj-sans) !important;
	font-size: 11px !important; font-weight: 700 !important;
	letter-spacing: .16em !important; text-transform: uppercase !important;
	color: var(--njtj-muted) !important;
	margin: 30px 0 10px !important; padding: 0 !important;
}
.njtj-jx-about p {
	margin: 0 !important;
	font-size: 14.5px !important;
	line-height: 1.72 !important;
	color: #444444 !important;
}
.njtj-jx-more {
	display: inline-block !important; margin-top: 12px !important;
	font-size: 13px !important; font-weight: 600 !important;
	color: var(--njtj-accent) !important;
}
.njtj-jx-more:hover { color: var(--njtj-accent-dark) !important; }

/* ── Right column ─────────────────────────────────────────── */
.njtj-jx-meta {
	margin: 0 !important; padding: 22px 0 0 !important;
	border-top: 1px solid #d9d9d9 !important;
}
.njtj-jx-meta > div {
	display: flex !important; gap: 8px !important;
	padding: 0 0 12px !important;
	font-size: 14.5px !important;
}
.njtj-jx-meta dt {
	flex: 0 0 auto !important;
	margin: 0 !important; padding: 0 !important;
	font-family: var(--njtj-sans) !important;
	font-size: 14.5px !important; font-weight: 400 !important;
	letter-spacing: 0 !important; text-transform: none !important;
	color: var(--njtj-muted) !important;
}
.njtj-jx-meta dt::after { content: ' :' !important; }
.njtj-jx-meta dd {
	margin: 0 !important; padding: 0 !important;
	font-size: 14.5px !important; font-weight: 500 !important;
	color: #222222 !important;
}
.njtj-jx-meta dd a { color: #222222 !important; }
.njtj-jx-meta dd a:hover { color: var(--njtj-accent) !important; }

.njtj-jsingle .njtj-jx-btn {
	display: block !important; width: 100% !important;
	text-align: center !important;
	margin: 18px 0 0 !important;
	background: transparent !important;
	border: 1px solid #1a1a1a !important;
	color: #1a1a1a !important;
	padding: 13px 16px !important;
	border-radius: 0 !important;
	font-size: 14px !important; font-weight: 500 !important;
	letter-spacing: .01em !important;
	transition: background .18s ease, color .18s ease, border-color .18s ease !important;
}
.njtj-jsingle .njtj-jx-btn:hover {
	background: #1a1a1a !important; color: #ffffff !important;
	text-decoration: none !important;
}
.njtj-jx-pdf {
	display: inline-block !important;
	margin-top: 20px !important;
	font-size: 14px !important;
	color: var(--njtj-ink) !important;
	text-decoration: underline !important;
}
.njtj-jx-pdf:hover { color: var(--njtj-accent) !important; }

/* ── Tabs band ────────────────────────────────────────────── */
.njtj-jx-tabsec {
	background: var(--njtj-band) !important;
	border-top: 1px solid #F2F2F2 !important;
	padding: 46px 0 60px !important;
	margin: 0 !important;
}
.njtj-jx-tabbar {
	display: flex !important; flex-wrap: wrap !important;
	justify-content: center !important;
	gap: 0 !important;
	border-bottom: 1px solid #dcdcdc !important;
	margin: 0 auto 30px !important;
	max-width: 1140px !important;
}
.njtj-jsingle .njtj-jx-tab {
	appearance: none !important; background: transparent !important;
	border: 0 !important; border-bottom: 2px solid transparent !important;
	margin-bottom: -1px !important;
	padding: 10px 26px 14px !important; cursor: pointer !important;
	font-family: var(--njtj-serif) !important;
	font-size: 17px !important; font-weight: 400 !important;
	letter-spacing: 0 !important; text-transform: none !important;
	color: #333333 !important;
	transition: color .18s ease, border-color .18s ease !important;
}
.njtj-jsingle .njtj-jx-tab:hover { color: var(--njtj-accent) !important; }
.njtj-jsingle .njtj-jx-tab.is-active {
	color: var(--njtj-accent) !important;
	border-bottom-color: var(--njtj-accent) !important;
}

.njtj-jx-panel { padding-bottom: 4px !important; }
.njtj-jx-rich {
	font-size: 15px !important; line-height: 1.78 !important;
	color: #3a3a3a !important;
	max-width: 1100px !important; margin: 0 auto !important;
}
.njtj-jx-rich p { margin: 0 0 18px !important; }
.njtj-jx-rich h2, .njtj-jx-rich h3 {
	font-family: var(--njtj-serif) !important;
	font-weight: 400 !important;
	color: #111111 !important;
	margin: 28px 0 12px !important;
}
.njtj-jx-rich ul, .njtj-jx-rich ol { padding-left: 20px !important; margin: 0 0 18px !important; }
.njtj-jx-rich li { margin-bottom: 7px !important; }
.njtj-jx-rich a { color: var(--njtj-accent) !important; text-decoration: underline !important; }

/* ── Issues accordion ─────────────────────────────────────── */
.njtj-jx-acc {
	max-width: 1100px !important; margin: 0 auto !important;
	background: #ffffff !important;
	border: 1px solid #e2e2e2 !important;
	border-radius: 2px !important;
	overflow: hidden !important;
}
.njtj-jx-acc-item + .njtj-jx-acc-item { border-top: 1px solid #ececec !important; }

.njtj-jx-acc-head {
	position: relative !important;
	width: 100% !important; text-align: left !important;
	appearance: none !important; border: 0 !important; cursor: pointer !important;
	background: #ffffff !important;
	padding: 18px 54px 18px 22px !important;
	font-family: var(--njtj-sans) !important;
	transition: background .18s ease !important;
}
.njtj-jx-acc-head:hover { background: #fafafa !important; }
.njtj-jx-acc-item.is-open .njtj-jx-acc-head { background: #fafafa !important; }

.njtj-jx-acc-title {
	display: block !important;
	font-family: var(--njtj-serif) !important;
	font-size: 17px !important; font-weight: 400 !important;
	color: #111111 !important; line-height: 1.38 !important;
}
.njtj-jx-acc-item.is-open .njtj-jx-acc-title { color: var(--njtj-accent) !important; }
.njtj-jx-chip {
	display: inline-block !important; vertical-align: middle !important;
	margin-left: 10px !important; font-style: normal !important;
	font-family: var(--njtj-sans) !important;
	font-size: 9.5px !important; font-weight: 700 !important;
	letter-spacing: .14em !important; text-transform: uppercase !important;
	color: #ffffff !important; background: var(--njtj-accent) !important;
	padding: 4px 9px !important; border-radius: 2px !important;
}
.njtj-jx-acc-meta {
	display: block !important; margin-top: 5px !important;
	font-size: 12.5px !important; color: var(--njtj-muted) !important;
}
.njtj-jx-acc-ico {
	position: absolute !important; right: 22px !important; top: 50% !important;
	width: 9px !important; height: 9px !important;
	margin-top: -7px !important;
	border-right: 1.5px solid #666666 !important;
	border-bottom: 1.5px solid #666666 !important;
	transform: rotate(45deg) !important;
	transition: transform .22s ease, border-color .18s ease !important;
}
.njtj-jx-acc-item.is-open .njtj-jx-acc-ico {
	transform: rotate(-135deg) !important; margin-top: -3px !important;
	border-color: var(--njtj-accent) !important;
}

.njtj-jx-acc-body {
	padding: 2px 22px 22px !important;
	background: #ffffff !important;
	animation: njtjFade .28s ease both !important;
}
.njtj-jx-chaps { list-style: none !important; margin: 0 0 14px !important; padding: 0 !important; }
.njtj-jx-chaps li {
	position: relative !important;
	padding: 13px 78px 13px 0 !important;
	border-bottom: 1px solid #f0f0f0 !important;
}
.njtj-jx-chaps li:last-child { border-bottom: 0 !important; }
.njtj-jx-chap-title {
	display: block !important;
	font-family: var(--njtj-serif) !important;
	font-size: 15px !important; font-weight: 400 !important;
	color: #222222 !important; line-height: 1.45 !important;
}
.njtj-jx-chap-title:hover { color: var(--njtj-accent) !important; }
.njtj-jx-chap-meta {
	display: block !important; margin-top: 3px !important;
	font-size: 12.5px !important; color: var(--njtj-muted) !important;
}
.njtj-jx-chap-dl {
	position: absolute !important; right: 0 !important; top: 13px !important;
	font-family: var(--njtj-sans) !important;
	font-size: 11px !important; font-weight: 600 !important;
	letter-spacing: .1em !important; text-transform: uppercase !important;
	border: 1px solid #cccccc !important;
	color: #444444 !important;
	padding: 6px 13px !important; border-radius: 2px !important;
	transition: background .18s ease, color .18s ease, border-color .18s ease !important;
}
.njtj-jx-chap-dl:hover {
	background: var(--njtj-accent) !important; border-color: var(--njtj-accent) !important;
	color: #ffffff !important; text-decoration: none !important;
}
.njtj-jx-empty { color: var(--njtj-muted) !important; font-size: 14px !important; margin: 10px 0 14px !important; }
.njtj-jx-acc-link {
	display: inline-block !important; font-size: 13px !important; font-weight: 600 !important;
	color: var(--njtj-accent) !important;
}
.njtj-jx-allissues {
	display: block !important; text-align: center !important;
	margin-top: 26px !important;
	font-size: 13.5px !important; font-weight: 600 !important;
	color: var(--njtj-accent) !important;
}


/* ═══════════════════════════════════════════════════════════
   Light theme for Issues / Single Issue / Chapters pages
   Same palette + type as the single journal page.
   Layout is unchanged — colours and fonts only.
   ═══════════════════════════════════════════════════════════ */

.njtj-light { border-top: 1px solid #F2F2F2 !important; padding-top: 34px !important; }

/* ── Breadcrumb ───────────────────────────────────────────── */
.njtj-light .njtj-crumb {
	background: transparent !important;
	padding: 0 !important;
	margin-bottom: 26px !important;
	font-size: 13px !important;
	color: var(--njtj-muted) !important;
}
.njtj-light .njtj-crumb a { color: var(--njtj-muted) !important; }
.njtj-light .njtj-crumb a:hover { color: var(--njtj-accent) !important; }
.njtj-light .njtj-crumb-here { color: #222222 !important; font-weight: 500 !important; }

/* ── Headings ─────────────────────────────────────────────── */
.njtj-light .njtj-section-title,
.njtj-light.njtj-wrap .njtj-issues-title,
.njtj-light.njtj-wrap .njtj-ihero-title,
.njtj-light.njtj-wrap .njtj-issue-name,
.njtj-light .njtj-chapter-title {
	font-family: var(--njtj-serif) !important;
	font-weight: 400 !important;
	color: #111111 !important;
	letter-spacing: -.01em !important;
}
.njtj-light .njtj-section-title::after,
.njtj-light .njtj-eyebrow { color: var(--njtj-muted) !important; }

/* ── Year tabs ────────────────────────────────────────────── */
.njtj-light .njtj-year-tabs { border-bottom-color: #dcdcdc !important; }
.njtj-light .njtj-year-tab {
	font-family: var(--njtj-serif) !important;
	font-size: 16px !important; font-weight: 400 !important;
	color: #333333 !important;
	border-bottom-width: 2px !important;
}
.njtj-light .njtj-year-tab:hover { color: var(--njtj-accent) !important; }
.njtj-light .njtj-year-tab.is-active {
	color: var(--njtj-accent) !important;
	border-bottom-color: var(--njtj-accent) !important;
	font-weight: 400 !important;
}

/* ── Issue cards ──────────────────────────────────────────── */
.njtj-light .njtj-issue-link {
	font-family: var(--njtj-serif) !important;
	font-weight: 400 !important;
	color: #222222 !important;
	text-decoration: none !important;
}
.njtj-light .njtj-issue-link:hover { color: var(--njtj-accent) !important; text-decoration: underline !important; }
.njtj-light .njtj-issue-current { color: var(--njtj-accent) !important; }
.njtj-light .njtj-issue-thumb img { border-radius: 2px !important; }

/* ── Single issue hero ────────────────────────────────────── */
.njtj-light .njtj-issue-nav { color: #333333 !important; }
.njtj-light .njtj-issue-nav:hover { color: var(--njtj-accent) !important; }
.njtj-light .njtj-about-card {
	background: var(--njtj-soft) !important;
	border-color: var(--njtj-line) !important;
	border-radius: 2px !important;
}
.njtj-light .njtj-about-cover img { box-shadow: 0 6px 18px rgba(0,0,0,.14) !important; border-radius: 2px !important; }
.njtj-light .njtj-current-head {
	background: var(--njtj-soft) !important;
	border-left: 3px solid var(--njtj-accent) !important;
	border-radius: 0 !important;
}
.njtj-light .njtj-current-title { color: #111111 !important; font-weight: 400 !important; }

/* ── Table of contents ────────────────────────────────────── */
.njtj-light .njtj-toc-title {
	font-weight: 400 !important;
	color: #222222 !important;
}
.njtj-light .njtj-toc-title:hover { color: var(--njtj-accent) !important; }
.njtj-light .njtj-toc-row:hover { background: #fafafa !important; }
.njtj-light .njtj-toc-dl {
	border: 1px solid #cccccc !important;
	color: #444444 !important;
	border-radius: 2px !important;
	text-transform: uppercase !important;
	letter-spacing: .1em !important;
	font-size: 11px !important;
}
.njtj-light .njtj-toc-dl:hover {
	background: var(--njtj-accent) !important;
	border-color: var(--njtj-accent) !important;
	color: #ffffff !important; transform: none !important;
}

/* ── Latest chapters / tags ───────────────────────────────── */
.njtj-light .njtj-recent-row:hover { background: #fafafa !important; }
.njtj-light .njtj-recent-title { font-weight: 400 !important; color: #222222 !important; }
.njtj-light .njtj-recent-title:hover { color: var(--njtj-accent) !important; }
.njtj-light .njtj-tag {
	background: var(--njtj-accent) !important;
	color: #ffffff !important;
	border-radius: 2px !important;
}

/* ── Buttons ──────────────────────────────────────────────── */
.njtj-light .njtj-btn { border-radius: 0 !important; font-weight: 500 !important; font-size: 14px !important; }
.njtj-light .njtj-btn-solid,
.njtj-light .njtj-btn-dl {
	background: transparent !important;
	border: 1px solid #1a1a1a !important;
	color: #1a1a1a !important;
	box-shadow: none !important;
	padding: 12px 18px !important;
}
.njtj-light .njtj-btn-solid:hover,
.njtj-light .njtj-btn-dl:hover {
	background: #1a1a1a !important; color: #ffffff !important;
	transform: none !important; box-shadow: none !important;
}
.njtj-light .njtj-btn-ghost { border: 1px solid #1a1a1a !important; color: #1a1a1a !important; padding: 12px 18px !important; }
.njtj-light .njtj-btn-ghost:hover { background: #1a1a1a !important; color: #ffffff !important; transform: none !important; }

/* ── Sidebar / side cards ─────────────────────────────────── */
.njtj-light .njtj-side-box,
.njtj-light .njtj-side-card {
	border-radius: 2px !important;
	border-color: var(--njtj-line) !important;
	box-shadow: none !important;
}
.njtj-light .njtj-side-box::before,
.njtj-light .njtj-side-card::before { background: var(--njtj-accent) !important; height: 2px !important; }
.njtj-light.njtj-wrap .njtj-side-heading {
	font-weight: 400 !important;
	color: #111111 !important;
	border-bottom-color: var(--njtj-line) !important;
}
.njtj-light .njtj-side-nav a { color: #333333 !important; }
.njtj-light .njtj-side-nav a:hover { background: var(--njtj-soft) !important; color: var(--njtj-accent) !important; }
.njtj-light .njtj-side-nav a.is-active {
	background: var(--njtj-soft) !important;
	border-left-color: var(--njtj-accent) !important;
	color: var(--njtj-accent) !important;
	font-weight: 500 !important;
}

/* ── Publication details (Price : style rows) ─────────────── */
.njtj-light .njtj-pub-details dt {
	font-size: 14px !important; font-weight: 400 !important;
	letter-spacing: 0 !important; text-transform: none !important;
	color: var(--njtj-muted) !important;
}
.njtj-light .njtj-pub-details dt::after { content: ' :' !important; }
.njtj-light .njtj-pub-details dd { color: #222222 !important; font-weight: 500 !important; }

/* ── Info bar / empty state / pagination ──────────────────── */
.njtj-light .njtj-infobar { border-radius: 2px !important; box-shadow: none !important; }
.njtj-light .njtj-empty { background: var(--njtj-soft) !important; border-radius: 2px !important; }
.njtj-light .njtj-pagination .page-numbers { border-radius: 0 !important; border-color: #dcdcdc !important; }
.njtj-light .njtj-pagination .page-numbers.current,
.njtj-light .njtj-pagination .page-numbers:hover {
	background: #1a1a1a !important; border-color: #1a1a1a !important; color: #ffffff !important;
}

/* ── Chapter page ─────────────────────────────────────────── */
.njtj-light .njtj-chapter-authors { color: var(--njtj-muted) !important; }
.njtj-light .njtj-desc, .njtj-light .njtj-chapter-desc, .njtj-light .njtj-pubinfo { color: #3a3a3a !important; line-height: 1.78 !important; }

/* ═══════════════════════════════════════════════════════════
   Responsive hardening — nothing may exceed the viewport
   ═══════════════════════════════════════════════════════════ */

/* 1) Overflow guards.
   The tabs band is a full-width sibling of the hero wrap, so it has no
   parent to cap its width. Without these caps a nowrap tab row (or one
   long unbroken word) stretches the section past the viewport on phones. */
.njtj-jx-tabsec {
	max-width: 100vw !important;
	overflow-x: hidden !important;
}
.njtj-jx-tabsec-inner {
	width: 100% !important;
	min-width: 0 !important;
}
.njtj-jx-tabbar {
	width: 100% !important;
	min-width: 0 !important;
	max-width: min(1140px, 100%) !important;
}
.njtj-jx-acc {
	width: 100% !important;
	max-width: min(1100px, 100%) !important;
}
.njtj-jx-rich { max-width: min(1100px, 100%) !important; }
.njtj-jsingle, .njtj-light { max-width: 100% !important; overflow-wrap: break-word !important; }
.njtj-jx-col, .njtj-jx-panel { min-width: 0 !important; max-width: 100% !important; }

/* 2) Long unbroken strings (DOI, ISSN, URLs, long titles) must wrap. */
.njtj-jx-title, .njtj-jx-editor, .njtj-jx-about p,
.njtj-jx-meta dd, .njtj-jx-acc-title, .njtj-jx-acc-meta,
.njtj-jx-chap-title, .njtj-jx-chap-meta, .njtj-jx-rich,
.njtj-light .njtj-toc-title, .njtj-light .njtj-pub-details dd {
	overflow-wrap: break-word !important;
	word-break: break-word !important;
}

/* 3) Images never exceed their column. */
.njtj-jsingle img, .njtj-light img, .njtj-jx-tabsec img {
	max-width: 100% !important; height: auto !important;
}


/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — single source of truth
   ───────────────────────────────────────────────────────────
   3-column hero is kept all the way down to 768px; only the
   cover and type shrink. Below 768px it stacks into one column.
   Breakpoints MUST stay in descending order (1200 → 1024 → 900
   → 768 → 767 → 480): they all match on a phone at once, so the
   smallest has to come last or a wider rule wins.
   Side padding is set on .njtj-jx-hero at every width — never
   remove it, the hero has no other gutter.
   ═══════════════════════════════════════════════════════════ */

/* ── ≤1200px ─────────────────────────────────────────────── */
@media (max-width: 1200px) {
	.njtj-jx-hero {
		grid-template-columns: 1fr minmax(260px, 320px) 1fr !important;
		gap: 38px !important;
		padding: 50px 24px 56px !important;
	}
	.njtj-jx-tabsec-inner { padding: 0 24px !important; }
}

/* ── ≤1024px — 3 columns, smaller cover + type ───────────── */
@media (max-width: 1024px) {
	.njtj-jx-hero {
		grid-template-columns: 1fr 250px 1fr !important;
		gap: 30px !important;
		padding: 42px 24px 48px !important;
	}
	.njtj-jsingle .njtj-jx-title { font-size: 23px !important; margin-bottom: 18px !important; }
	.njtj-jx-editor { font-size: 17px !important; }
	.njtj-jx-about p { font-size: 13.5px !important; line-height: 1.68 !important; }
	.njtj-jx-subhead { margin-top: 24px !important; }
	.njtj-jx-meta > div, .njtj-jx-meta dt, .njtj-jx-meta dd { font-size: 13.5px !important; }
	.njtj-jx-meta { padding-top: 18px !important; }
	.njtj-jsingle .njtj-jx-btn { padding: 11px 14px !important; font-size: 13.5px !important; }
	.njtj-jsingle .njtj-jx-tab { padding: 10px 20px 13px !important; font-size: 16px !important; }
}

/* ── ≤900px ──────────────────────────────────────────────── */
@media (max-width: 900px) {
	.njtj-jx-hero {
		grid-template-columns: 1fr 205px 1fr !important;
		gap: 24px !important;
		padding: 36px 22px 42px !important;
	}
	.njtj-jx-tabsec-inner { padding: 0 22px !important; }
	.njtj-jx-cover-frame { min-height: 0 !important; }
	.njtj-jsingle .njtj-jx-title { font-size: 21px !important; margin-bottom: 15px !important; }
	.njtj-jx-editor { font-size: 15.5px !important; }
	.njtj-jx-lbl { font-size: 9.5px !important; }
	.njtj-jx-about p { font-size: 13px !important; }
	.njtj-jx-meta > div, .njtj-jx-meta dt, .njtj-jx-meta dd { font-size: 13px !important; }
	.njtj-jx-meta > div { padding-bottom: 10px !important; }
	.njtj-jsingle .njtj-jx-btn { padding: 10px 12px !important; font-size: 13px !important; }
	.njtj-jsingle .njtj-jx-tab { padding: 9px 16px 12px !important; font-size: 15px !important; }
	.njtj-light .njtj-issues-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 32px !important; }
}

/* ── ≤768px — last 3-column step ─────────────────────────── */
@media (max-width: 768px) {
	.njtj-jx-hero {
		grid-template-columns: 1fr 170px 1fr !important;
		gap: 18px !important;
		padding: 30px 20px 36px !important;
	}
	.njtj-jx-tabsec-inner { padding: 0 20px !important; }
	.njtj-jsingle .njtj-jx-title { font-size: 19px !important; margin-bottom: 13px !important; }
	.njtj-jsingle .njtj-jx-title::after { margin: 11px 0 13px !important; }
	.njtj-jx-editor { font-size: 14px !important; margin-bottom: 5px !important; }
	.njtj-jx-lbl { font-size: 9px !important; letter-spacing: .12em !important; }
	.njtj-jx-about p { font-size: 12.5px !important; line-height: 1.62 !important; }
	.njtj-jx-subhead { font-size: 10px !important; margin-top: 20px !important; }
	.njtj-jx-more { font-size: 12px !important; }
	.njtj-jx-meta { padding-top: 14px !important; }
	.njtj-jx-meta > div, .njtj-jx-meta dt, .njtj-jx-meta dd { font-size: 12.5px !important; }
	.njtj-jx-meta > div { padding-bottom: 9px !important; gap: 5px !important; }
	.njtj-jsingle .njtj-jx-btn { padding: 10px 10px !important; font-size: 12.5px !important; margin-top: 14px !important; }
	.njtj-jx-tabbar { justify-content: flex-start !important; }
	.njtj-jsingle .njtj-jx-tab { padding: 9px 14px 12px !important; font-size: 14.5px !important; }
}

/* ── ≤767px — stacked, mobile ────────────────────────────── */
@media (max-width: 767px) {
	.njtj-wrap.njtj-jsingle { padding: 0 !important; }

	/* Flex column, not block — `order` must keep working so the cover
	   stays on top, and no leftover grid column can survive. */
	.njtj-jx-hero {
		display: flex !important;
		flex-direction: column !important;
		grid-template-columns: none !important;
		gap: 0 !important;
		padding: 26px 18px 32px !important;
	}
	.njtj-jx-cover {
		order: -1 !important;
		width: 100% !important;
		max-width: 240px !important;
		margin: 0 auto 24px !important;
	}
	.njtj-jx-left  { order: 1 !important; width: 100% !important; margin-bottom: 24px !important; }
	.njtj-jx-right { order: 2 !important; width: 100% !important; margin-bottom: 0 !important; }
	.njtj-jx-cover-frame { min-height: 0 !important; }
	.njtj-jx-meta { display: block !important; padding-top: 18px !important; }

	/* Type back up to comfortable reading size once stacked */
	.njtj-jsingle .njtj-jx-title { font-size: 24px !important; margin-bottom: 16px !important; }
	.njtj-jx-editor { font-size: 17px !important; }
	.njtj-jx-lbl { font-size: 10px !important; }
	.njtj-jx-about p { font-size: 14px !important; line-height: 1.7 !important; }
	.njtj-jx-meta > div, .njtj-jx-meta dt, .njtj-jx-meta dd { font-size: 14px !important; }
	.njtj-jsingle .njtj-jx-btn { max-width: none !important; padding: 12px 16px !important; font-size: 14px !important; }

	.njtj-light { padding-left: 18px !important; padding-right: 18px !important; }
	.njtj-jx-tabsec { padding: 32px 0 40px !important; }
	.njtj-jx-tabsec-inner { padding: 0 18px !important; }

	/* Tab row scrolls and bleeds to the screen edges */
	.njtj-jx-tabbar {
		flex-wrap: nowrap !important;
		justify-content: flex-start !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 -18px 24px !important;
		padding: 0 18px !important;
		overflow-x: auto !important;
		overscroll-behavior-x: contain !important;
		-webkit-overflow-scrolling: touch !important;
		scrollbar-width: none !important;
		scroll-snap-type: x proximity !important;
	}
	.njtj-jx-tabbar::-webkit-scrollbar { display: none !important; }
	.njtj-jsingle .njtj-jx-tab {
		flex: 0 0 auto !important;
		scroll-snap-align: start !important;
		white-space: nowrap !important;
		padding: 9px 16px 12px !important;
		font-size: 15px !important;
	}

	.njtj-light .njtj-year-tabs {
		flex-wrap: nowrap !important;
		justify-content: flex-start !important;
		overflow-x: auto !important;
		scrollbar-width: none !important;
		margin-left: -18px !important; margin-right: -18px !important;
		padding: 0 18px !important;
	}
	.njtj-light .njtj-year-tabs::-webkit-scrollbar { display: none !important; }
	.njtj-light .njtj-year-tab { flex: 0 0 auto !important; white-space: nowrap !important; }
	.njtj-light .njtj-issues-grid { grid-template-columns: 1fr !important; gap: 26px !important; }

	.njtj-jx-acc-head { padding: 15px 44px 15px 16px !important; }
	.njtj-jx-acc-body { padding: 2px 16px 18px !important; }
	.njtj-jx-chaps li { padding-right: 0 !important; padding-bottom: 44px !important; }
	.njtj-jx-chap-dl { top: auto !important; bottom: 12px !important; left: 0 !important; right: auto !important; }
}

/* ── ≤480px — small phones ───────────────────────────────── */
@media (max-width: 480px) {
	.njtj-jx-hero { padding: 22px 14px 28px !important; }
	.njtj-jx-cover { max-width: 200px !important; margin-bottom: 20px !important; }
	.njtj-jsingle .njtj-jx-title { font-size: 22px !important; }
	.njtj-jx-editor { font-size: 16px !important; }
	.njtj-jx-about p { font-size: 13.5px !important; }
	.njtj-jx-meta > div { flex-wrap: wrap !important; }

	.njtj-light { padding-left: 14px !important; padding-right: 14px !important; }
	.njtj-jx-tabsec-inner { padding: 0 14px !important; }
	.njtj-jx-tabbar { margin: 0 -14px 20px !important; padding: 0 14px !important; }
	.njtj-jsingle .njtj-jx-tab { padding: 8px 14px 11px !important; font-size: 14.5px !important; }
	.njtj-light .njtj-year-tabs { margin-left: -14px !important; margin-right: -14px !important; padding: 0 14px !important; }

	.njtj-jx-acc-title { font-size: 15.5px !important; }
	.njtj-jx-chip { margin-left: 0 !important; margin-top: 6px !important; }
	.njtj-jx-acc-head { padding: 14px 38px 14px 14px !important; }
	.njtj-jx-acc-ico { right: 16px !important; }
	.njtj-jx-acc-body { padding: 2px 14px 16px !important; }
	.njtj-jx-chap-dl { width: 100% !important; text-align: center !important; }
	.njtj-light .njtj-toc-row { padding-left: 0 !important; padding-right: 0 !important; margin: 0 !important; }
	.njtj-light .njtj-toc-dl { width: 100% !important; text-align: center !important; }
}

/* ══════════════════════════════════════════════════════════════
   Page gutters
   ──────────────────────────────────────────────────────────────
   .njtj-wrap had no horizontal padding, so every page except the
   single-journal layout ran straight into the screen edges once the
   viewport dropped below the 1200px max-width.

   The gutter is a variable so each breakpoint only re-declares one
   value, and max-width grows by the same amount to keep the content
   column at 1200px on wide screens, matching .njtj-jx-wrap inside
   the single-journal layout.

   Breakpoints stay in descending order to match the block above.
   ══════════════════════════════════════════════════════════════ */

.njtj-wrap {
	--njtj-gutter: 32px;
	box-sizing: border-box !important;
	max-width: calc(1200px + (var(--njtj-gutter) * 2)) !important;
	padding-left: var(--njtj-gutter) !important;
	padding-right: var(--njtj-gutter) !important;
}

/* Single journal manages its own side spacing section by section. */
.njtj-wrap.njtj-jsingle {
	--njtj-gutter: 0px;
	max-width: 1200px !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Nested wrap from the shortcode must not double up on gutters. */
.njtj-wrap .njtj-wrap.njtj-sc {
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

@media (max-width: 1200px) {
	.njtj-wrap { --njtj-gutter: 28px; }
}

@media (max-width: 1024px) {
	.njtj-wrap { --njtj-gutter: 26px; }
}

@media (max-width: 900px) {
	.njtj-wrap { --njtj-gutter: 24px; }
}

@media (max-width: 768px) {
	.njtj-wrap { --njtj-gutter: 20px; }
}

@media (max-width: 480px) {
	.njtj-wrap { --njtj-gutter: 16px; }
}
