:root { --gfp-navy: #163a5f; --gfp-blue: #256aa3; --gfp-cyan: #10beca; --gfp-teal: #54868a; --gfp-gold: #ffbf00; --gfp-ink: #203040; --gfp-muted: #627284; --gfp-border: #dce5ec; --gfp-surface: #f5f8fb; }
body { color: var(--gfp-ink); background: rgb(247, 249, 251); }
.main-header { background: linear-gradient(rgb(255, 255, 255) 0%, rgb(244, 248, 251) 100%); border-bottom: 1px solid var(--gfp-border); box-shadow: rgba(20, 54, 84, 0.08) 0px 4px 18px; }
.main-header .navbar-logo { padding: 30px 0px 18px; text-align: center; }
.main-header .navbar-logo img, .main-header .navbar-brand img { width: auto; max-height: 82px; }
.main-header .navbar { position: relative; z-index: 10; min-height: 64px; padding: 0px; border-top: 0px; background: var(--gfp-teal); box-shadow: 0 0 0 100vmax var(--gfp-teal); clip-path: inset(0px -100vmax); }
.main-header .navbar-collapse { justify-content: flex-start !important; }
#primaryNav { align-items: stretch; width: 100%; }
#primaryNav > .nav-item { position: relative; min-width: 150px; text-align: center; }
#primaryNav > .nav-item > .nav-link { display: flex; align-items: center; justify-content: center; min-height: 64px; padding: 14px 28px; font-size: 1.08rem; font-weight: 500; letter-spacing: 0px; transition: background-color 0.18s, color 0.18s; color: rgb(255, 255, 255) !important; }
#primaryNav > .nav-item:first-child > .nav-link, #primaryNav > .nav-item > .nav-link:hover, #primaryNav > .nav-item > .nav-link:focus { background: rgba(0, 0, 0, 0.12); color: var(--gfp-gold) !important; }
#primaryNav > .nav-item:first-child > .nav-link::after { position: absolute; right: 0px; bottom: 0px; left: 0px; height: 3px; background: var(--gfp-gold); content: ""; }
#primaryNav .dropdown-menu { min-width: 320px; margin-top: 0px; padding: 8px; border: 1px solid rgba(22, 58, 95, 0.14); border-radius: 0px 0px 10px 10px; box-shadow: rgba(22, 58, 95, 0.18) 0px 14px 32px; }
#primaryNav .dropdown-item { padding: 10px 14px; color: var(--gfp-navy); white-space: normal; line-height: 1.35; }
#primaryNav .dropdown-item:hover, #primaryNav .dropdown-item:focus { color: var(--gfp-navy); background: rgb(237, 245, 246); }
.page-content { padding-top: 0px; }
.container > .row > .col-md-8:has(.site-about) { display: grid; grid-template-columns: minmax(270px, 31%) minmax(0px, 1fr); gap: 30px; flex: 0 0 100%; max-width: 100%; align-items: start; padding-top: 38px; padding-bottom: 50px; }
.container > .row > .col-md-4:has(.pkp_block) { display: none; }
.site-about { margin: 0px; padding: 34px 28px; color: rgb(255, 255, 255); background: radial-gradient(circle at 90% 10%, rgba(16, 190, 202, 0.35), transparent 34%), linear-gradient(160deg, rgb(18, 52, 82) 0%, rgb(32, 92, 140) 100%); border-radius: 16px; box-shadow: rgba(18, 52, 82, 0.18) 0px 18px 45px; }
.site-about h1 { margin: 0px 0px 18px; color: rgb(255, 255, 255); font-size: 2rem; line-height: 1.15; }
.site-about h2 { margin: 25px 0px 9px; color: rgb(255, 255, 255); font-size: 1.08rem; }
.site-about p { max-width: none; margin: 0px 0px 13px; color: rgba(255, 255, 255, 0.9); font-size: 0.97rem; line-height: 1.68; }
.site-about p:first-of-type { margin-bottom: 18px; color: rgb(255, 255, 255); font-size: clamp(1.75rem, 2.5vw, 2.35rem); font-weight: 700; line-height: 1.14; }
.site-about p:nth-of-type(3), .site-about p:nth-of-type(5) { margin-top: 24px; margin-bottom: 9px; color: rgb(255, 255, 255); font-size: 1.08rem; font-weight: 700; line-height: 1.35; }
.site-about br, .site-journal-description br { display: none; }
.site-journals { min-width: 0px; margin: 0px; }
.site-journals::before { display: block; margin: 0px 0px 20px; color: var(--gfp-navy); font-size: clamp(1.65rem, 3vw, 2.2rem); font-weight: 700; line-height: 1.2; content: "Our Journals"; }
.site-journals-list { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 22px; }
.site-journal { display: flex; min-width: 0px; min-height: 260px; padding: 26px; background: rgb(255, 255, 255); border-top: 5px solid var(--gfp-blue); border-radius: 14px; box-shadow: rgba(31, 70, 104, 0.08) 0px 8px 24px; transition: transform 0.2s, box-shadow 0.2s; margin: 0px !important; }
.site-journal:hover { transform: translateY(-3px); box-shadow: rgba(31, 70, 104, 0.13) 0px 14px 32px; }
.site-journal:nth-child(2n) { border-top-color: var(--gfp-cyan); }
.site-journal-img { display: none; }
.site-journal-body { display: flex; flex: 1 1 0%; flex-direction: column; min-width: 0px; }
.site-journal-title { margin: 0px 0px 14px; font-size: 1.25rem; line-height: 1.35; }
.site-journal-title a { color: var(--gfp-navy); text-decoration: none; }
.site-journal-description { display: -webkit-box; overflow: hidden; color: var(--gfp-muted); line-height: 1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 5; }
.site-journal .links { margin: auto 0px 0px; padding-top: 18px; }
.site-journal .btn { margin: 4px 8px 4px 0px; padding: 9px 15px; color: rgb(255, 255, 255); background: var(--gfp-blue); border: 1px solid var(--gfp-blue); border-radius: 7px; font-size: 0.92rem; font-weight: 600; }
.site-journal .btn + .btn { color: var(--gfp-blue); background: rgb(255, 255, 255); }
.site-footer { border-top: 4px solid var(--gfp-blue); background: rgb(16, 47, 75); }
.site-footer, .site-footer p, .site-footer a { color: rgba(255, 255, 255, 0.88); }
@media (max-width: 991px) {
  .main-header .navbar { min-height: 54px; padding: 8px 0px; }
  .main-header .navbar-toggler { margin-left: auto; background: rgba(255, 255, 255, 0.9); }
  #primaryNav > .nav-item { min-width: 0px; text-align: left; }
  #primaryNav > .nav-item > .nav-link { justify-content: flex-start; min-height: 48px; padding: 10px 16px; }
  #primaryNav > .nav-item:first-child > .nav-link::after { display: none; }
  #primaryNav .dropdown-menu { min-width: 0px; border-radius: 8px; box-shadow: none; }
  .container > .row > .col-md-8:has(.site-about) { grid-template-columns: minmax(235px, 34%) minmax(0px, 1fr); gap: 22px; }
  .site-journals-list { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .main-header .navbar-logo { display: none; }
  .container > .row > .col-md-8:has(.site-about) { display: block; padding-top: 22px; }
  .site-about { margin: 0px 0px 30px; padding: 28px 22px; border-radius: 14px; }
  .site-journal { min-height: 220px; padding: 22px; }
}
@media (min-width: 992px) {
  .container > .row > .col-md-8:has(.site-about) { grid-template-columns: 225px minmax(0px, 1fr); gap: 24px; margin-left: -14px; width: calc(100% + 14px); }
  .site-about { padding: 22px 18px; border-radius: 10px; }
  .site-about h1 { margin-bottom: 12px; font-size: 1.35rem; }
  .site-about h2, .site-about p:nth-of-type(3), .site-about p:nth-of-type(5) { margin-top: 18px; font-size: 0.96rem; }
  .site-about p, .site-about p:first-of-type { margin-bottom: 10px; font-size: 0.82rem; line-height: 1.55; }
  .site-journal { min-height: 235px; padding: 22px; }
}
.main-header, .main-header .navbar, .main-header .navbar-collapse, #primaryNav { overflow: visible; }
.main-header .navbar { clip-path: none; box-shadow: none; }
#primaryNav .dropdown-menu { z-index: 1050; }
body:has(.site-journals) .main-header .navbar-logo { padding: 14px 0px 12px; }
body:has(.site-journals) .main-header .navbar-logo img { max-height: 60px; }
body:has(.site-journals) .main-header .navbar { min-height: 48px; background: rgb(22, 58, 95); border-bottom: 3px solid rgb(216, 178, 103); }
body:has(.site-journals) #primaryNav > .nav-item > .nav-link { min-height: 48px; padding: 10px 22px; font-size: 1rem; }
body:has(.site-journals) .site-journal { box-shadow: rgba(20, 54, 84, 0.06) 0px 3px 12px; border-radius: 6px; border-top-width: 3px; padding: 24px; min-height: 280px; }
body:has(.site-journals) .site-journal-title { font-size: 1.35rem; line-height: 1.35; min-height: 3.6em; }
body:has(.site-journals) .site-journal-description { font-size: 0.95rem; line-height: 1.6; -webkit-line-clamp: 5; }
body:has(.site-journals) .site-journal-description p { margin: 0px 0px 8px; }
body:has(.site-journals) .site-journal-description p:empty { display: none; }
body:has(.site-journals) .site-about { box-shadow: none; border-radius: 6px; }
body:has(.site-journals) .site-about a { color: rgb(255, 255, 255); text-decoration: underline; text-underline-offset: 4px; }
body:has(.site-journals) .site-about h2 { font-size: 1rem; margin-top: 24px; }
body:has(.site-journals) .site-about p:first-of-type { font-weight: 400; }
body:has(.site-journals) .site-journals-list { gap: 20px; }
body:has(.site-journals) .site-footer { border-top-color: rgb(216, 178, 103); }
@media (max-width: 767px) {
  body:has(.site-journals) .site-about p, body:has(.site-journals) .site-about p:first-of-type { font-size: 0.95rem; line-height: 1.6; }
  body:has(.site-journals) .site-journal-title { min-height: 0px; }
}
/* Publisher balanced three-column layout */
body:has(.site-journals) .container{max-width:1640px;width:94%}
.container>.row>.col-md-8:has(.site-about){display:grid;grid-template-columns:230px minmax(0,1fr) 250px;gap:28px;margin-left:0;width:100%;max-width:100%;padding-top:34px}
body:has(.site-journals) .site-about{display:contents}
.gfp-home-left,.gfp-home-right{padding:26px 22px;border-radius:8px;min-width:0;overflow-wrap:anywhere}
.gfp-home-left{grid-column:1;grid-row:1;background:linear-gradient(155deg,#163a5f,#245d87);color:#fff}
.gfp-home-right{grid-column:3;grid-row:1;background:#edf3f7;border:1px solid #dce5ec;color:#203040}
.site-journals{grid-column:2;grid-row:1}
.site-about br{display:none}
.site-about ul{padding-left:17px;margin:0 0 18px;font-size:.88rem;line-height:1.55}
.site-about li{margin-bottom:10px}
body:has(.site-journals) .site-about h1{font-size:1.45rem;line-height:1.25;margin:0 0 16px}
body:has(.site-journals) .site-about h2{font-size:1.04rem;line-height:1.3;margin:26px 0 12px}
body:has(.site-journals) .site-about p,body:has(.site-journals) .site-about p:first-of-type{font-size:.86rem;line-height:1.65;font-weight:400;margin:0 0 16px}
body:has(.site-journals) .gfp-home-right h2{color:#163a5f}
body:has(.site-journals) .gfp-home-right h2:first-child{margin-top:0}
body:has(.site-journals) .gfp-home-right p{color:#627284}
body:has(.site-journals) .gfp-home-right a{color:#245d87;text-decoration:none}
body:has(.site-journals) .site-about a:hover{text-decoration:underline}
.site-journals>h2{display:none}
.site-journals-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.site-journal-img{display:none!important}
body:has(.site-journals) .site-journal-description{display:block;-webkit-line-clamp:unset;overflow:visible}
.site-journal-description img{display:block;width:170px;max-width:100%;height:auto;margin:0 auto 20px;box-shadow:0 5px 14px #163a5f20}
body:has(.site-journals) .site-journal-title{font-size:1.3rem;min-height:3.6em}
@media(min-width:1200px){body:has(.site-journals) .site-journal{padding:26px}}
@media(min-width:992px) and (max-width:1250px){.container>.row>.col-md-8:has(.site-about){grid-template-columns:195px minmax(0,1fr) 210px;gap:20px}.gfp-home-left,.gfp-home-right{padding:20px 16px}body:has(.site-journals) .site-journal{padding:18px}.site-journal .btn{font-size:.8rem;padding:8px 10px}}
@media(max-width:991px){.container>.row>.col-md-8:has(.site-about){grid-template-columns:220px minmax(0,1fr);gap:22px}.gfp-home-right{grid-column:1;grid-row:2}.gfp-home-left{grid-column:1;grid-row:1}.site-journals{grid-column:2;grid-row:1 / span 2}.site-journals-list{grid-template-columns:1fr}}
@media(max-width:767px){body:has(.site-journals) .container{width:100%}.container>.row>.col-md-8:has(.site-about){display:flex;flex-direction:column;gap:24px;padding:22px 15px 36px}.site-journals{order:1;width:100%}.gfp-home-left{order:2;width:100%}.gfp-home-right{order:3;width:100%}.site-journals-list{grid-template-columns:1fr}body:has(.site-journals) .site-journal-title{min-height:0}.site-journal-description img{width:155px}.gfp-home-left,.gfp-home-right{box-sizing:border-box}}
