/* Article pages and the journal listing cards. Self-contained: every class used by
   an article page or a listing card is defined in this file alone. */
.article-page{max-width:1080px;margin:0 auto;padding:44px 28px 76px}
.article-header{margin-bottom:32px}
.breadcrumb{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone-soft);margin-bottom:18px}
.breadcrumb a{color:var(--stone-soft)}
.breadcrumb a:hover{color:var(--sea-deep)}
.breadcrumb-sep{margin:0 8px;color:var(--line)}
.article-h1{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;
  font-size:44px;line-height:1.16;color:var(--ink);margin:0 0 18px;letter-spacing:-.01em}
.card-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--sea-deep);margin-bottom:14px}
.card-meta .article-cat{color:var(--sea-deep)}
.card-meta .article-date{color:var(--stone-soft)}
.author-byline{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--stone);
  padding-bottom:22px;border-bottom:1px solid var(--line)}
.author-name{color:var(--ink)}
.author-sep{color:var(--line)}
.article-hero-img{width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:3px;margin:28px 0 34px}
.article-lead{font-size:20px;line-height:1.7;color:var(--stone);margin-bottom:26px}
.article-body{max-width:760px;margin:0 auto;font-size:16.5px;line-height:1.82;color:var(--stone)}
.article-body h2{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;font-size:29px;color:var(--ink);margin:42px 0 14px}
.article-body h3{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;font-size:21px;color:var(--ink);margin:30px 0 10px}
.article-body p{margin:0 0 1.15em}
.article-body ul,.article-body ol{padding-left:22px;margin:0 0 1.2em}
.article-body li{margin-bottom:9px}
.article-body img{border-radius:3px;margin:26px 0}
.article-body blockquote{margin:28px 0;padding:18px 26px;border-left:3px solid var(--shell);
  background:var(--foam);color:var(--ink);font-style:italic}
.article-body a{color:var(--sea-deep);text-decoration:underline}
.author-bio-card{max-width:760px;margin:46px auto 0;display:flex;gap:20px;align-items:flex-start;
  background:var(--sand);border:1px solid var(--line);border-radius:3px;padding:26px 28px}
.author-bio-avatar{width:66px;height:66px;border-radius:50%;object-fit:cover;flex:none;background:var(--sand-deep)}
.author-bio-name{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:19px;color:var(--ink);margin:0 0 2px}
.author-bio-title{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--sea-deep);margin:0 0 10px}
.author-bio-text{font-size:14.5px;color:var(--stone);margin:0}
.faq-section{max-width:760px;margin:48px auto 0;border-top:1px solid var(--line);padding-top:34px}
.faq-section h2{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;font-size:27px;color:var(--ink);margin:0 0 18px}
#faq-items{display:block}
#faq-items > div{border-bottom:1px solid var(--line);padding:18px 0}
#faq-items h3{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;font-size:18px;color:var(--ink);margin:0 0 7px}
#faq-items p{margin:0;font-size:15px;color:var(--stone)}
.cta-banner{display:none}
.related-section{max-width:1080px;margin:56px auto 0;padding:0 28px}
.rel-title{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;font-size:26px;color:var(--ink);margin:0 0 22px}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rel-card{background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:20px;
  font-size:15px;color:var(--stone)}

/* Journal listing cards (the container the publishing pipeline writes into) */
.article-card{background:var(--paper);border:1px solid var(--line);border-radius:3px;overflow:hidden;
  box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.article-thumb{width:100%;height:206px;object-fit:cover;display:block}
.article-card .article-body{max-width:none;margin:0;padding:22px 24px 26px;font-size:15px}
.article-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.article-cat{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--sea-deep)}
.article-date{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone-soft)}
.article-card h2{font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:600;font-size:20px;line-height:1.3;margin:0 0 10px}
.article-excerpt{font-size:14.5px;color:var(--stone);margin:0 0 14px}
.article-link{color:var(--ink);text-decoration:none}
.article-link:hover{color:var(--sea-deep);text-decoration:underline}

@media (max-width:1024px){
  .rel-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
  .article-h1{font-size:34px}
  .article-page{padding:32px 18px 56px}
  .author-bio-card{flex-direction:column;gap:14px;padding:22px}
  .rel-grid{grid-template-columns:1fr}
  .related-section{padding:0 18px}
}

/* Header and footer rules the article template relies on.
   Copied verbatim from style-base.css so an article page styles correctly
   from this file alone, and so the two cannot drift apart. */
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{max-width:1220px;margin:0 auto;padding:18px 30px;display:flex;align-items:center;
  justify-content:space-between;gap:24px;flex-wrap:wrap}
.header-logo{display:flex;align-items:center;gap:12px;color:var(--ink)}
.header-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.nav-link{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);font-weight:500}
.site-footer{background:var(--ink);color:#a9bcbe}
.footer-inner{max-width:900px;margin:0 auto;padding:22px 30px;text-align:center}
.footer-bottom{border-top:1px solid var(--line-dark);padding:21px 30px;text-align:center;font-size:13px;color:#7b8e90}
