/* JSJA visual cleanup, 20 October 2026. Original stylesheet backed up. */
:root { --jsja-navy:#092c43; --jsja-gold:#e7b929; }
body { color:#263746; line-height:1.65; }
#header { background:#092c43 !important; position:relative !important; height:auto !important; padding:12px 0; }
#header > .container { max-width:1320px; width:100%; gap:16px; flex-wrap:wrap; }
#header .logo img { max-width:160px !important; max-height:76px; height:auto; }
#header #navbar { padding:0; min-width:0; flex:1 1 500px; }
#header ul._pkp_navigation_primary { display:flex; flex-direction:row; flex-wrap:wrap; gap:4px; }
#header .nav-link { color:#fff !important; opacity:1 !important; padding:10px 12px; white-space:nowrap; }
#header .nav-link:hover, #header .nav-link:focus { color:#f3ce57 !important; }
#header .dropdown-menu a { color:#18364a !important; white-space:normal; }
#header ul._pkp_navigation_primary > li:has(> a[href$="/announcement"]),
#header ul._pkp_navigation_primary > li:has(> a[href$="/about/contact"]),
#header ul._pkp_navigation_primary > li:has(> a[href$="/search/search"]) { display:none; }
#header ul._pkp_navigation_primary > li:has(> a[href$="/issue/current"]) { order:1; }
#header ul._pkp_navigation_primary > li:has(> a[href$="/issue/archive"]) { order:2; }
#header ul._pkp_navigation_primary > li:has(> a[href$="/about/editorialTeam"]) { order:3; }
#header ul._pkp_navigation_primary > li:has(> a[href$="/about/submissions"]) { order:4; }
#hero { background:#092c43 !important; padding:56px 0 72px !important; height:auto !important; min-height:0 !important; }
#hero .wave { display:none; }
#hero h1 { font-size:clamp(2rem,3.4vw,3rem); line-height:1.15; }
#hero p { color:#f7f8fa; line-height:1.65; }
#hero .iphone-wrap .phone-2 { position:relative !important; top:auto !important; left:auto !important; margin:0 auto !important; width:min(100%,250px) !important; height:auto !important; display:block; border-radius:6px; }
#hero .iphone-wrap { align-self:center; }
#hero .btn { background:#e7b929; color:#092c43; border-color:#e7b929; padding:14px 22px !important; font-weight:700; }
.jsja-forthcoming { border-radius:8px; margin:36px 0 !important; }
.jsja-forthcoming img { box-shadow:0 10px 24px #092c4326; border-radius:3px; }
.jsja-forthcoming h2 { font-family:Georgia,serif; font-size:clamp(2rem,3vw,2.8rem); }
.jsja-forthcoming a { color:#0b4d73; text-decoration:underline; }
.obj_article_summary { padding:24px; margin:16px 0; border:1px solid #dce3e8; border-left:4px solid #e7b929; border-radius:6px; background:#fff; }
.obj_article_summary h4 { font-size:1.28rem; line-height:1.4; margin-bottom:12px; }
.obj_article_summary .title a { color:#092c43; }
.obj_article_summary .authors { color:#405568; line-height:1.6; }
.obj_galley_link.btn { background:#092c43 !important; color:#fff !important; padding:10px 18px; font-weight:600; }
a:focus-visible, button:focus-visible { outline:3px solid #d19f00; outline-offset:3px; }
@media (max-width:991px) {
 #header > .container { justify-content:center !important; }
 #header #navbar { flex-basis:100%; justify-content:center; }
 #header ul._pkp_navigation_primary { display:flex !important; justify-content:center; width:100%; }
 #header .nav-link { padding:8px 10px; }
 #hero { padding:36px 0 !important; }
 #hero .iphone-wrap { margin-top:24px; }
 #hero .iphone-wrap .phone-2 { width:180px !important; }
 .jsja-forthcoming { padding:24px !important; }
}
@media (max-width:575px) {
 #header .logo img { max-width:135px !important; }
 #header .nav-link { font-size:14px; padding:8px; }
 .jsja-forthcoming { padding:20px !important; }
 .jsja-forthcoming > div { gap:24px !important; }
 .jsja-forthcoming > div > * { min-width:0; }
 .obj_article_summary { padding:18px; }
}
/* Match the theme's fixed-height inner row and OJS-sanitized content. */
#hero > .container > .row { height:auto !important; min-height:0 !important; }
.jsja-forthcoming { padding:32px; background:#f7f5ef; border-top:5px solid #e7b929; }
.jsja-forthcoming > div { display:flex; flex-wrap:wrap; gap:32px; align-items:center; }
.jsja-forthcoming > div > a { display:block; flex:0 1 320px; max-width:100%; }
.jsja-forthcoming img { width:100%; max-width:320px; height:auto; }
.jsja-forthcoming > div > div { flex:1 1 260px; }
.jsja-forthcoming p { color:#253746; line-height:1.6; }
.jsja-forthcoming p:first-child { font-size:.82rem; font-weight:bold; letter-spacing:.1em; }
.jsja-forthcoming h2 { color:#092c43; line-height:1.15; }
@media (max-width:575px) { .jsja-forthcoming > div > div { flex-basis:100%; } }
