/* JPSB footer (from the original site footer code) */
.jpsb-footer{position:relative;isolation:isolate;font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased;}
.jpsb-footer{
  --ink:#0A1622;
  --ink2:#0F2036;
  --brass:#B08D46;
  --brass-light:#E8CD8F;
  --brass-deep:#8A6526;
  --parchment:#F7F1E2;
  --parchment2:#EFE6CE;
  --card:#FBF7EC;
  --teal:#1B6459;
  --teal-tint:#DCEAE3;
  --muted:#6B6252;
  --muted-dark:#C3CBDB;
  --line:#DCD1AF;
  --line-dark:#233248;
}
.jpsb-footer, .jpsb-footer *{box-sizing:border-box;}
.jpsb-footer a{color:inherit;text-decoration:none;}

.jpsb-footer .footer-main{
  background:linear-gradient(160deg, var(--ink) 0%, var(--ink2) 60%, #08131F 100%);
  color:#F4F1E4;
  position:relative;overflow:hidden;
  width:100%;
 
  padding:52px 24px 32px;
}
.jpsb-footer .footer-main::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(600px 220px at 88% 0%, rgba(176,141,70,.14), transparent 60%);
  pointer-events:none;
}
.jpsb-footer .footer-inner{
  max-width:1400px;margin:0 auto;position:relative;z-index:2;
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;
}

.jpsb-footer .f-brand{display:flex;gap:14px;}
.jpsb-footer .brand-mark{
  width:52px;height:52px;border-radius:50%;flex:0 0 auto;
  box-shadow:0 4px 10px rgba(0,0,0,.25);
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.jpsb-footer .brand-mark img{width:100%;height:100%;object-fit:cover;display:block;}
.jpsb-footer .f-brand h2{
  font-family:"Fraunces",serif;font-weight:560;font-style:italic;
  font-size:clamp(16px,2.2vw,20px);line-height:1.25;color:#F4F1E4;margin:0 0 8px;
}
.jpsb-footer .f-brand .issn{
  font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.04em;
  color:var(--brass-light);margin:0 0 14px;
}
.jpsb-footer .f-brand p{
  font-size:13px;line-height:1.7;color:var(--muted-dark);max-width:34ch;margin:0;
}

.jpsb-footer .f-col h4{
  font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--brass-light);margin:0 0 16px;
}
.jpsb-footer .f-col a{
  display:block;font-size:13.5px;font-weight:500;color:var(--muted-dark);
  padding:0 0 12px;transition:.15s ease;
}
.jpsb-footer .f-col a:hover{color:var(--brass-light);}

.jpsb-footer .footer-bottom{
  background:var(--parchment2);
  border-top:1px solid var(--line);
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
.jpsb-footer .footer-bottom-inner{
  max-width:1160px;margin:0 auto;padding:16px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
}
.jpsb-footer .footer-bottom-inner p{
  font-size:12.5px;color:var(--muted);margin:0;
}
.jpsb-footer .footer-bottom-links{display:flex;gap:20px;flex-wrap:wrap;}
.jpsb-footer .footer-bottom-links a{
  font-size:12.5px;font-weight:600;color:var(--ink2);
}
.jpsb-footer .footer-bottom-links a:hover{color:var(--teal);}

@media (max-width:880px){
  .jpsb-footer .footer-inner{grid-template-columns:1fr 1fr;}
  .jpsb-footer .f-brand{grid-column:1 / -1;}
}

@media (max-width:680px){
  .jpsb-footer .footer-main{padding:40px 18px 28px;}
  .jpsb-footer .footer-inner{grid-template-columns:1fr 1fr;gap:28px;}
  .jpsb-footer .footer-bottom-inner{padding:14px 18px;flex-direction:column;align-items:flex-start;}
}
