/* ============================================================================
   VERBA STUDIES — Journal stylesheet  (v2)
   International Journal of Language, Literature & Philology
   For the OJS 3.5 Default Theme (reader-facing frontend).
   Upload: Settings > Website > Appearance > Advanced > Journal style sheet
   ----------------------------------------------------------------------------
   v2 changes: force the journal wordmark into the serif brand face (the theme
   rule was overriding it), and make the tagline attach directly to the title
   so it can't collide with the navigation.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500&family=Archivo:wght@400;500;600;700&display=swap');

:root {
	--v-ink:        #16263c;
	--v-ink-deep:   #0e1b2c;
	--v-ink-soft:   #33475c;
	--v-garnet:     #7c2d33;
	--v-garnet-2:   #9a3b41;
	--v-paper:      #f7f4ee;
	--v-paper-2:    #efe9dd;
	--v-line:       #ddd6c8;
	--v-muted:      #6b7683;
	--v-white:      #ffffff;

	--v-serif:  'Spectral', Georgia, 'Times New Roman', serif;
	--v-sans:   'Archivo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	--v-radius: 3px;
}

/* ---- 1. Base & reading typography -------------------------------------- */
body {
	background: var(--v-paper);
	color: var(--v-ink-soft);
	font-family: var(--v-serif);
	font-size: 1.02rem;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
.pkp_structure_page { background: var(--v-paper); }
.pkp_structure_content { background: var(--v-white); }
p { line-height: 1.7; }

h1, h2, h3, h4, h5 {
	font-family: var(--v-serif);
	color: var(--v-ink);
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.005em;
}

.pkp_structure_content a,
.obj_article_details a,
.item a {
	color: var(--v-garnet);
	text-decoration: none;
	border-bottom: 1px solid rgba(124, 45, 51, 0.25);
	transition: color .15s ease, border-color .15s ease;
}
.pkp_structure_content a:hover,
.obj_article_details a:hover {
	color: var(--v-garnet-2);
	border-bottom-color: var(--v-garnet-2);
}

/* ---- 2. Masthead / header ---------------------------------------------- */
.pkp_structure_head {
	background: var(--v-ink);
	background-image: linear-gradient(180deg, #1a2d47 0%, var(--v-ink) 100%);
	border-bottom: 3px solid var(--v-garnet);
}
.pkp_head_wrapper { padding-top: 1.1rem; padding-bottom: 1.1rem; }

/* Wordmark — force the serif brand face over the theme default (needs !important) */
.pkp_site_name,
.pkp_site_name a,
.pkp_site_name a:link,
.pkp_site_name a:visited,
.pkp_site_name_wrapper .pkp_site_name a,
.pkp_head_wrapper .pkp_site_name a {
	font-family: var(--v-serif) !important;
	color: var(--v-white) !important;
	font-weight: 700 !important;
	letter-spacing: 0.01em;
}
.pkp_site_name a { font-size: 2.1rem; line-height: 1.1; }

/* Tagline directly under the wordmark */
.pkp_site_name::after {
	content: 'Language · Literature · Philology';
	display: block;
	width: 100%;
	clear: both;
	margin-top: .35rem;
	font-family: var(--v-sans);
	font-size: .66rem;
	font-weight: 500;
	letter-spacing: 0.26em;
	text-transform: uppercase;
	color: rgba(247, 244, 238, 0.62);
}

/* ---- 3. Navigation ------------------------------------------------------ */
/* Unify the nav bar with the masthead (override the theme's lighter blue) */
.pkp_site_nav_menu,
.pkp_navigation_primary_row,
.pkp_navigation_primary_wrapper {
	background: var(--v-ink) !important;
	background-image: none !important;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.pkp_navigation_primary a,
.pkp_navigation_user a {
	font-family: var(--v-sans);
	font-size: .82rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(247, 244, 238, 0.86);
	transition: color .15s ease;
}
.pkp_navigation_primary a:hover,
.pkp_navigation_primary a:focus,
.pkp_navigation_user a:hover { color: var(--v-white); }
.pkp_search input[type="search"] {
	border-radius: var(--v-radius);
	border: 1px solid rgba(255,255,255,0.2);
}

/* ---- 4. Page title + flanked section headings (signature) -------------- */
.page_title, h1.page_title {
	font-family: var(--v-serif);
	color: var(--v-ink);
	font-weight: 700;
	font-size: 2rem;
	margin-bottom: 1.4rem;
	padding-bottom: .9rem;
	border-bottom: 1px solid var(--v-line);
}
.obj_issue_toc > h2,
.sections .section > h2,
.section_title {
	font-family: var(--v-serif);
	color: var(--v-ink);
	font-weight: 600;
	text-align: center;
	overflow: hidden;
	letter-spacing: 0.01em;
}
.obj_issue_toc > h2 span,
.sections .section > h2 span,
.section_title span { display: inline-block; position: relative; padding: 0 1.1rem; }
.obj_issue_toc > h2 span::before, .obj_issue_toc > h2 span::after,
.sections .section > h2 span::before, .sections .section > h2 span::after {
	content: ''; position: absolute; top: 50%; width: 40vw; height: 1px; background: var(--v-line);
}
.obj_issue_toc > h2 span::before, .sections .section > h2 span::before { right: 100%; }
.obj_issue_toc > h2 span::after,  .sections .section > h2 span::after  { left: 100%; }

.obj_article_details .item .label,
.item .label {
	font-family: var(--v-sans);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: .74rem;
	font-weight: 600;
	color: var(--v-garnet);
}

/* ---- 5. Issue TOC & article summaries ---------------------------------- */
.obj_article_summary { padding: 1.4rem 0; border-bottom: 1px solid var(--v-line); }
.obj_article_summary .title {
	font-family: var(--v-serif); font-size: 1.28rem; line-height: 1.3; font-weight: 600;
}
.obj_article_summary .title a { color: var(--v-ink); border-bottom: none; }
.obj_article_summary .title a:hover { color: var(--v-garnet); }
.obj_article_summary .authors, .obj_article_summary .meta {
	font-family: var(--v-sans); font-size: .86rem; color: var(--v-muted); margin-top: .35rem;
}
.obj_article_summary .galleys a, .obj_galley a, .galleys_links a {
	font-family: var(--v-sans); font-size: .72rem; font-weight: 600; letter-spacing: 0.05em;
	text-transform: uppercase; display: inline-block; padding: .3rem .7rem;
	border: 1px solid var(--v-garnet); border-radius: var(--v-radius);
	color: var(--v-garnet) !important; background: transparent;
}
.obj_article_summary .galleys a:hover, .obj_galley a:hover {
	background: var(--v-garnet); color: var(--v-white) !important; border-color: var(--v-garnet);
}

/* ---- 6. Article details ------------------------------------------------- */
.obj_article_details .page_title { font-size: 1.9rem; line-height: 1.28; text-align: left; }
.obj_article_details .item.abstract { font-size: 1.05rem; line-height: 1.75; }
.obj_article_details .item.abstract .label,
.obj_article_details .item.keywords .label { display: block; margin-bottom: .5rem; }
.obj_article_details .item.keywords .value, .item.keywords {
	font-family: var(--v-sans); font-size: .9rem; color: var(--v-ink-soft);
}
.obj_article_details .authors .author { font-family: var(--v-sans); }
.obj_article_details .authors .name { font-weight: 600; color: var(--v-ink); }

/* ---- 7. Buttons & downloads -------------------------------------------- */
.pkp_button, a.cmp_button, .cmp_button,
.obj_galley_link.pdf, .obj_galley_link.file {
	font-family: var(--v-sans) !important; font-weight: 600; letter-spacing: 0.03em;
	background: var(--v-ink) !important; color: var(--v-white) !important;
	border: 1px solid var(--v-ink) !important; border-radius: var(--v-radius); padding: .55rem 1.1rem;
	transition: background .15s ease, border-color .15s ease;
}
.pkp_button:hover, a.cmp_button:hover, .cmp_button:hover,
.obj_galley_link.pdf:hover, .obj_galley_link.file:hover {
	background: var(--v-garnet) !important; border-color: var(--v-garnet) !important; color: var(--v-white) !important;
}

/* ---- 8. Sidebar blocks -------------------------------------------------- */
.pkp_block .pkp_block_content h2, .pkp_block .title {
	font-family: var(--v-sans); text-transform: uppercase; letter-spacing: 0.09em;
	font-size: .78rem; font-weight: 700; color: var(--v-ink);
	padding-bottom: .5rem; margin-bottom: .8rem; border-bottom: 2px solid var(--v-garnet);
}
.pkp_block { font-family: var(--v-sans); font-size: .9rem; }

/* ---- 9. Footer ---------------------------------------------------------- */
.pkp_structure_footer_wrapper, .pkp_structure_footer {
	background: var(--v-ink-deep); color: rgba(247, 244, 238, 0.72); border-top: 3px solid var(--v-garnet);
}
.pkp_footer_content { font-family: var(--v-sans); font-size: .88rem; }
.pkp_structure_footer a { color: rgba(247, 244, 238, 0.9); }
.pkp_structure_footer a:hover { color: var(--v-white); }
.pkp_brand_footer { opacity: .8; }

/* ---- 10. Quality floor -------------------------------------------------- */
a:focus-visible, button:focus-visible, input:focus-visible {
	outline: 2px solid var(--v-garnet); outline-offset: 2px;
}
@media (max-width: 767px) {
	.pkp_site_name a { font-size: 1.6rem; }
	.page_title, h1.page_title { font-size: 1.55rem; }
	.pkp_site_name::after { letter-spacing: 0.18em; }
	.obj_issue_toc > h2 span::before, .obj_issue_toc > h2 span::after,
	.sections .section > h2 span::before, .sections .section > h2 span::after { width: 18vw; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }
