/* ── AGRL Shared Stylesheet ── */
:root {
  --ngeo:#005c55;--ngeo-dk:#003d38;--ngeo-lt:#e6f4f2;
  --ink:#222;--ink-soft:#444;--ink-muted:#767676;
  --rule:#d8dde1;--rule-lt:#eef0f2;--paper:#f8f8f6;
  --white:#fff;--link:#025f8f;--link-hov:#013d5c;
  --warn:#c85a00;--warn-lt:#fdf0e6;
  --font-serif:'Libre Baskerville',Georgia,serif;
  --font-body:'Merriweather',Georgia,serif;
  --font-ui:'Hind',Arial,sans-serif;
  --radius:2px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--font-ui);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;line-height:1.6}
a{color:var(--link);text-decoration:none}
a:hover{color:var(--link-hov);text-decoration:underline}
img{max-width:100%;display:block}
ul{list-style:none}
.container{max-width:1060px;margin:0 auto;padding:0 20px}
/* Util bar */
.util-bar{background:var(--ink);color:rgba(255,255,255,.6);font-size:.71rem;font-family:var(--font-ui)}
.util-bar .container{display:flex;justify-content:space-between;align-items:center;height:30px}
.util-bar a{color:rgba(255,255,255,.6)}
.util-bar a:hover{color:#fff;text-decoration:none}
.util-bar-right{display:flex;gap:16px}
/* Header */
.j-header{background:var(--white);border-bottom:2px solid var(--ngeo);position:sticky;top:0;z-index:200;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.j-header-top{display:flex;align-items:center;height:52px}
.j-logo{display:flex;flex-direction:column;justify-content:center;padding-right:22px;border-right:1px solid var(--rule);flex-shrink:0}
.j-logo a{text-decoration:none}
.j-logo-name{font-family:var(--font-serif);font-size:1.08rem;font-weight:700;color:var(--ink);line-height:1.15}
.j-logo-name em{font-style:italic;font-weight:400;color:var(--ngeo)}
.j-logo-pub{font-family:var(--font-ui);font-size:.61rem;color:var(--ink-muted);letter-spacing:.03em;margin-top:1px}
.j-nav{display:flex;height:52px;flex:1}
.j-nav-item{position:relative}
.j-nav-btn{font-family:var(--font-ui);font-size:.81rem;font-weight:500;color:var(--ink-soft);padding:0 16px;height:52px;display:flex;align-items:center;gap:4px;border:none;border-bottom:3px solid transparent;background:none;cursor:pointer;transition:.15s;white-space:nowrap}
.j-nav-btn:hover,.j-nav-item.active .j-nav-btn{color:var(--ink);border-bottom-color:var(--ngeo)}
.j-nav-dropdown{display:none;position:absolute;top:100%;left:0;background:var(--white);border:1px solid var(--rule);border-top:2px solid var(--ngeo);min-width:240px;box-shadow:0 4px 18px rgba(0,0,0,.1);z-index:300;padding:8px 0}
.j-nav-item:hover .j-nav-dropdown{display:block}
.j-nav-dropdown a{display:block;font-family:var(--font-ui);font-size:.79rem;color:var(--ink-soft);padding:7px 18px}
.j-nav-dropdown a:hover{background:var(--paper);color:var(--ngeo);text-decoration:none}
.dd-divider{border:none;border-top:1px solid var(--rule);margin:5px 0}
.dd-section{font-family:var(--font-ui);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);padding:7px 18px 2px;cursor:default}
.j-nav-right{margin-left:auto;display:flex;align-items:center;gap:12px;padding-left:16px;border-left:1px solid var(--rule)}
.j-nav-right a{font-family:var(--font-ui);font-size:.77rem;color:var(--link)}
.caret{font-size:.58rem;opacity:.6}
/* Breadcrumb */
.breadcrumb{background:var(--paper);border-bottom:1px solid var(--rule);padding:6px 0}
.breadcrumb ol{display:flex;gap:0;font-family:var(--font-ui);font-size:.74rem;color:var(--ink-muted)}
.breadcrumb li+li::before{content:"›";margin:0 7px;color:var(--rule)}
.breadcrumb a{color:var(--link)}
/* Page layout */
.page-body{padding:30px 0 50px}
.page-grid{display:grid;grid-template-columns:1fr 240px;gap:44px}
/* Main content area */
.page-main h1{font-family:var(--font-serif);font-size:1.7rem;font-weight:700;color:var(--ink);margin-bottom:22px;line-height:1.25;border-bottom:2px solid var(--ink);padding-bottom:10px}
.page-main h2{font-family:var(--font-serif);font-size:1.15rem;font-weight:700;color:var(--ink);margin:26px 0 10px;padding-top:8px}
.page-main h3{font-family:var(--font-ui);font-size:.9rem;font-weight:700;color:var(--ink);margin:18px 0 7px}
.page-main p{font-family:var(--font-body);font-size:.88rem;line-height:1.82;color:var(--ink-soft);margin-bottom:14px}
.page-main ul.content-list{list-style:none;margin:0 0 16px 0;display:flex;flex-direction:column;gap:5px}
.page-main ul.content-list li{font-family:var(--font-body);font-size:.86rem;color:var(--ink-soft);line-height:1.6;padding-left:16px;position:relative}
.page-main ul.content-list li::before{content:"•";position:absolute;left:0;color:var(--ngeo);font-size:.8rem}
.page-main ol.content-list{list-style:none;counter-reset:item;display:flex;flex-direction:column;gap:5px;margin:0 0 16px 0}
.page-main ol.content-list li{font-family:var(--font-body);font-size:.86rem;color:var(--ink-soft);line-height:1.6;padding-left:24px;position:relative;counter-increment:item}
.page-main ol.content-list li::before{content:counter(item)".";position:absolute;left:0;color:var(--ngeo);font-weight:700;font-size:.8rem}
.page-main hr.section-rule{border:none;border-top:1px solid var(--rule);margin:24px 0}
.page-main .format-box{background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--ngeo);padding:16px 18px;margin:14px 0 18px;border-radius:var(--radius)}
.page-main .format-box h4{font-family:var(--font-ui);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ngeo);margin-bottom:9px}
.page-main .format-box ul{list-style:none;display:flex;flex-direction:column;gap:4px}
.page-main .format-box ul li{font-family:var(--font-ui);font-size:.8rem;color:var(--ink-soft);line-height:1.55;padding-left:14px;position:relative}
.page-main .format-box ul li::before{content:"–";position:absolute;left:0;color:var(--ink-muted)}
.page-main .info-box{background:var(--ngeo-lt);border:1px solid #b3dcd7;padding:16px 18px;margin:14px 0 18px;border-radius:var(--radius)}
.page-main .info-box p{font-family:var(--font-ui);font-size:.82rem;color:var(--ngeo-dk);margin:0;line-height:1.6}
.page-main .warn-box{background:var(--warn-lt);border:1px solid #f0c090;padding:14px 16px;margin:14px 0 18px;border-radius:var(--radius)}
.page-main .warn-box p{font-family:var(--font-ui);font-size:.82rem;color:var(--warn);margin:0;line-height:1.6}
.page-main table.metrics-table{width:100%;border-collapse:collapse;font-family:var(--font-ui);font-size:.84rem;margin-bottom:20px}
.page-main table.metrics-table th{background:var(--ink);color:#fff;padding:9px 14px;text-align:left;font-weight:600;font-size:.76rem;letter-spacing:.03em}
.page-main table.metrics-table td{padding:9px 14px;border-bottom:1px solid var(--rule);color:var(--ink-soft)}
.page-main table.metrics-table tr:nth-child(even) td{background:var(--paper)}
.page-main .editor-card{border:1px solid var(--rule);padding:20px;margin-bottom:18px;border-radius:var(--radius)}
.page-main .editor-card h3{font-family:var(--font-serif);font-size:1rem;font-weight:700;color:var(--ink);margin:0 0 3px}
.page-main .editor-card .editor-role{font-family:var(--font-ui);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ngeo);margin-bottom:9px}
.page-main .editor-card p{font-size:.82rem;line-height:1.72;margin-bottom:6px}
.page-main .editor-card .editor-email{font-family:var(--font-ui);font-size:.78rem;color:var(--link)}
.btn{display:inline-flex;align-items:center;gap:5px;padding:8px 16px;border-radius:var(--radius);font-family:var(--font-ui);font-size:.8rem;font-weight:600;cursor:pointer;border:1.5px solid transparent;transition:.18s;text-decoration:none}
.btn-green{background:var(--ngeo);color:#fff;border-color:var(--ngeo)}
.btn-green:hover{background:var(--ngeo-dk);border-color:var(--ngeo-dk);text-decoration:none;color:#fff}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-outline:hover{background:var(--ink);color:#fff;text-decoration:none}
/* Sidebar */
.page-sidebar{}
.sidebar-nav-block{margin-bottom:22px}
.sidebar-nav-block h3{font-family:var(--font-ui);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--ink);padding-bottom:6px;margin-bottom:10px}
.sidebar-nav-block ul{display:flex;flex-direction:column;gap:0}
.sidebar-nav-block ul li a{display:block;font-family:var(--font-ui);font-size:.79rem;color:var(--link);padding:5px 0;border-bottom:1px solid var(--rule-lt)}
.sidebar-nav-block ul li a:hover{color:var(--ngeo);text-decoration:none;padding-left:4px}
.sidebar-nav-block ul li a.active{font-weight:700;color:var(--ink);border-left:2px solid var(--ngeo);padding-left:6px}
.sidebar-submit{background:var(--ngeo);padding:18px;border-radius:var(--radius);text-align:center;margin-bottom:20px}
.sidebar-submit p{font-family:var(--font-ui);font-size:.8rem;color:rgba(255,255,255,.8);margin-bottom:10px;line-height:1.5}
/* Footer nav */
.footer-nav{background:var(--paper);border-top:2px solid var(--ink);padding:28px 0}
.footer-nav-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;border-bottom:1px solid var(--rule);padding-bottom:22px;margin-bottom:20px}
.footer-nav-col{padding:0 22px}
.footer-nav-col:first-child{padding-left:0}
.footer-nav-col+.footer-nav-col{border-left:1px solid var(--rule)}
.footer-nav-col h3{font-family:var(--font-ui);font-size:.77rem;font-weight:700;color:var(--ink);margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid var(--rule)}
.footer-nav-col ul{display:flex;flex-direction:column;gap:5px}
.footer-nav-col ul li a{font-family:var(--font-ui);font-size:.77rem;color:var(--link)}
.footer-nav-col ul li a:hover{color:var(--link-hov)}
.footer-nav-col .fn-divider{height:1px;background:var(--rule-lt);margin:4px 0}
.footer-bottom-row{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.footer-search label{font-family:var(--font-ui);font-size:.77rem;font-weight:600;color:var(--ink);display:block;margin-bottom:6px}
.footer-search select{font-family:var(--font-ui);font-size:.75rem;padding:5px 8px;border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink);background:var(--white);margin-bottom:6px;display:block;width:100%}
.footer-search-row{display:flex;gap:6px}
.footer-search-row input{flex:1;font-family:var(--font-ui);font-size:.77rem;padding:6px 10px;border:1px solid var(--rule);border-radius:var(--radius);outline:none}
.footer-search-row input:focus{border-color:var(--ngeo)}
.footer-search-row button{background:var(--ngeo);color:#fff;border:none;padding:6px 13px;border-radius:var(--radius);font-size:.77rem;font-weight:600;cursor:pointer}
.footer-search-row button:hover{background:var(--ngeo-dk)}
.footer-search a{font-family:var(--font-ui);font-size:.73rem;color:var(--link);display:block;margin-top:5px}
.footer-ql h4{font-family:var(--font-ui);font-size:.73rem;font-weight:700;color:var(--ink);margin:14px 0 6px}
.footer-ql ul{display:flex;flex-direction:column;gap:4px}
.footer-ql ul li a{font-family:var(--font-ui);font-size:.75rem;color:var(--link)}
.footer-issn{font-family:var(--font-ui);font-size:.75rem;color:var(--ink-muted);line-height:1.85}
.footer-issn strong{color:var(--ink-soft)}
/* Site footer */
.site-footer{background:var(--ink);color:rgba(255,255,255,.55)}
.site-footer-inner{padding:26px 0}
.site-footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:20px}
.sf-col h3{font-family:var(--font-ui);font-size:.69rem;font-weight:700;color:rgba(255,255,255,.8);margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1);text-transform:uppercase;letter-spacing:.04em}
.sf-col ul{display:flex;flex-direction:column;gap:4px}
.sf-col ul li a{font-family:var(--font-ui);font-size:.73rem;color:rgba(255,255,255,.45)}
.sf-col ul li a:hover{color:rgba(255,255,255,.8);text-decoration:none}
.sf-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:14px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.sf-legal{display:flex;gap:13px;flex-wrap:wrap}
.sf-legal a{font-family:var(--font-ui);font-size:.7rem;color:rgba(255,255,255,.35)}
.sf-legal a:hover{color:rgba(255,255,255,.7);text-decoration:none}
.sf-copy{font-family:var(--font-ui);font-size:.7rem;color:rgba(255,255,255,.25)}
@media(max-width:860px){
  .page-grid{grid-template-columns:1fr}
  .page-sidebar{display:none}
  .footer-nav-grid{grid-template-columns:1fr}
  .footer-nav-col+.footer-nav-col{border-left:none;padding-left:0}
  .footer-bottom-row{grid-template-columns:1fr}
  .site-footer-grid{grid-template-columns:1fr 1fr}
  .j-nav{display:none}
}
