/* PG Footer — scoped to .pg-footer (no bare `footer{}` rules, so the theme's
   own footer is never touched). Ported from the DRobb inner-page + home footers. */

.pg-footer{ background:var(--pg-bone); border-top:1px solid var(--pg-ink-hair); }

/* ---------- Editorial (inner pages) ---------- */
.pg-footer--editorial{ padding:96px 56px 56px; }
.pg-footer--editorial .pgf-container{
  max-width:1320px; margin:0 auto;
  display:grid; grid-template-columns:1fr auto 1fr; gap:56px; align-items:end;
}
.pg-footer .pgf-mast{
  font-family:var(--pg-font-display); font-weight:400; font-variation-settings:"opsz" 72;
  font-size:18px; margin-bottom:8px; color:var(--pg-ink);
}
.pg-footer .pgf-mast em{ font-style:italic; color:var(--pg-terracotta); }
.pg-footer .pgf-meta{
  font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase;
  letter-spacing:.24em; font-size:10px; color:var(--pg-ink-soft);
}
.pg-footer .pgf-center{ display:flex; gap:24px; }
.pg-footer .pgf-center a{
  font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase;
  letter-spacing:.22em; font-size:10px; color:var(--pg-ink-soft);
  text-decoration:none; transition:color 600ms var(--pg-ease);
}
.pg-footer .pgf-center a:hover{ color:var(--pg-terracotta); }
.pg-footer .pgf-right{
  text-align:right; font-family:var(--pg-font-italic); font-style:italic;
  font-size:16px; color:var(--pg-ink-soft);
}
.pg-footer .pgf-right em{ color:var(--pg-terracotta); font-style:italic; }
.pg-footer .pgf-compass{
  width:14px; height:14px; color:var(--pg-ink-soft);
  display:inline-block; vertical-align:-2px; margin-left:4px;
}

/* ---------- Publication (home) ---------- */
.pg-footer--publication{ padding:100px 80px 56px; }
.pg-footer--publication .pgf-container{ max-width:1440px; margin:0 auto; }
.pg-footer .pgf-top-row{
  display:flex; justify-content:space-between; align-items:flex-end;
  margin-bottom:80px; padding-bottom:48px; border-bottom:1px solid var(--pg-ink-hair); gap:48px;
}
.pg-footer .pgf-name{
  font-family:var(--pg-font-display); font-weight:300; text-transform:uppercase;
  letter-spacing:.32em; font-size:clamp(22px,2vw,30px); color:var(--pg-ink);
  line-height:1; font-variation-settings:"opsz" 144;
}
.pg-footer .pgf-pubname{
  font-family:var(--pg-font-italic); font-style:italic; font-size:17px;
  color:var(--pg-ink-soft); margin-top:8px;
}
.pg-footer .pgf-closing{
  font-family:var(--pg-font-display); font-weight:300; font-size:clamp(22px,1.8vw,30px);
  line-height:1.3; max-width:520px; text-align:right; margin:0;
  font-variation-settings:"opsz" 144; text-transform:lowercase;
}
.pg-footer .pgf-closing em{ font-style:italic; color:var(--pg-terracotta); }
.pg-footer .pgf-grid{
  display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:48px;
  padding-bottom:64px; border-bottom:1px solid var(--pg-ink-hair); margin-bottom:32px;
}
.pg-footer .pgf-col h4{
  font-family:var(--pg-font-sans); font-weight:400; text-transform:uppercase;
  letter-spacing:.28em; font-size:10px; color:var(--pg-ink-pale); margin:0 0 20px;
}
.pg-footer .pgf-col a, .pg-footer .pgf-col p{
  display:block; font-family:var(--pg-font-italic); font-size:17px; line-height:1.6;
  color:var(--pg-ink); text-decoration:none; margin:0 0 6px;
  transition:color 500ms var(--pg-ease);
}
.pg-footer .pgf-col a:hover{ color:var(--pg-terracotta); }
.pg-footer .pgf-col p{ color:var(--pg-ink-soft); }
.pg-footer .pgf-col em{ font-style:italic; color:var(--pg-terracotta); }
.pg-footer .pgf-legal{
  display:flex; justify-content:space-between; align-items:center;
  font-family:var(--pg-font-sans); font-weight:300; text-transform:uppercase;
  letter-spacing:.22em; font-size:10px; color:var(--pg-ink-pale);
}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .pg-footer--editorial .pgf-container{ grid-template-columns:1fr; gap:32px; }
  .pg-footer--editorial .pgf-right{ text-align:left; }
}
@media (max-width:880px){
  .pg-footer--publication{ padding:60px 24px 32px; }
  .pg-footer .pgf-top-row{ flex-direction:column; align-items:flex-start; gap:24px; }
  .pg-footer .pgf-closing{ text-align:left; }
  .pg-footer .pgf-grid{ grid-template-columns:1fr 1fr; gap:32px; }
  .pg-footer .pgf-legal{ flex-direction:column; gap:12px; align-items:flex-start; }
}
