/* Homepage footer structure, using each editorial page's existing palette.
   Deliberately no color-mix(), :has(), or translucent text: older Safari safe. */
#siteFooter.caseFooter{
  background:var(--paper,var(--card-solid,#fffaf5))!important;
  color:var(--ink,var(--text,#2c2926));
  padding:32px 0 28px!important;
  border-top:1px solid var(--line)!important;
}
#siteFooter.caseFooter .footerGrid{
  width:calc(100% - 40px);max-width:1180px;margin:0 auto;
  display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.8fr);
  gap:22px 36px;align-items:start;
}
#siteFooter.caseFooter .footerContactBlock{min-width:0;display:grid;gap:4px}
#siteFooter.caseFooter .footerRole{margin:0 0 5px;font-size:.76rem;letter-spacing:.2em;font-weight:800;color:inherit}
#siteFooter.caseFooter .footerName{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.65rem,3vw,2.1rem);line-height:1.1;color:inherit}
#siteFooter.caseFooter .footerDetails{display:grid;gap:6px;margin:10px 0 0;font-size:.9rem;font-style:normal;line-height:1.5;color:inherit}
#siteFooter.caseFooter a{color:inherit;overflow-wrap:break-word;word-wrap:break-word;text-decoration:none}
#siteFooter.caseFooter a:hover{text-decoration:underline;text-underline-offset:3px}
#siteFooter.caseFooter a:focus{outline:2px solid currentColor;outline-offset:4px}
#siteFooter.caseFooter .footerDetails a{overflow-wrap:anywhere;word-break:break-word}
#siteFooter.caseFooter .footerActions{grid-column:1;grid-row:2;display:flex;flex-wrap:wrap;gap:10px;margin:0}
#siteFooter.caseFooter .footerActions .btn{display:flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:inherit;box-shadow:none;font-size:.84rem;font-weight:700;line-height:1.3;white-space:normal;text-align:center}
#siteFooter.caseFooter .footerActions .btn.primary{background:var(--ink,var(--text,#2c2926));color:var(--paper,var(--card-solid,#fffaf5));border-color:transparent}
#siteFooter.caseFooter .footerSeoLinks{grid-column:2;grid-row:1 / span 2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start;margin:0}
#siteFooter.caseFooter .footerSeoGroup{min-width:0;display:grid;gap:9px;align-content:start}
#siteFooter.caseFooter .footerSeoGroup h3{font-family:Georgia,'Times New Roman',serif;font-size:1.02rem;line-height:1.3;margin:0 0 3px;color:inherit}
#siteFooter.caseFooter .footerSeoGroup a{display:block;font-size:.88rem;line-height:1.5;margin:0}
#siteFooter.caseFooter .footerMeta{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:0;padding-top:18px;border-top:1px solid var(--line);font-size:.8rem;line-height:1.5}
#siteFooter.caseFooter .footerCopyright{margin-right:auto;font-size:inherit}
#siteFooter.caseFooter .footerLegal{display:flex;flex-wrap:wrap;gap:12px 22px;margin:0;padding:0;border:0;font-size:inherit}
#siteFooter.caseFooter .footerLegal a{font-size:inherit}
@media(max-width:1050px){
  #siteFooter.caseFooter .footerGrid{grid-template-columns:1fr}
  #siteFooter.caseFooter .footerActions{grid-column:1;grid-row:auto}
  #siteFooter.caseFooter .footerSeoLinks{grid-column:1;grid-row:auto}
}
@media(max-width:600px){
  #siteFooter.caseFooter{padding:26px 0 100px!important}
  #siteFooter.caseFooter .footerGrid{gap:20px}
  #siteFooter.caseFooter .footerActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #siteFooter.caseFooter .footerActions .btn:last-child{grid-column:1/-1}
  #siteFooter.caseFooter .footerSeoLinks{grid-template-columns:1fr;gap:18px}
  #siteFooter.caseFooter .footerSeoGroup{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;padding-top:16px;border-top:1px solid var(--line)}
  #siteFooter.caseFooter .footerSeoGroup h3{grid-column:1/-1;margin-bottom:6px}
  #siteFooter.caseFooter .footerSeoGroup a{display:flex;align-items:center;min-height:44px;font-size:.84rem;padding:4px 0}
  #siteFooter.caseFooter .footerMeta{display:grid;grid-template-columns:1fr;gap:12px}
  #siteFooter.caseFooter .footerCopyright{margin:0}
  #siteFooter.caseFooter .footerLegal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  #siteFooter.caseFooter .footerLegal a{display:flex;align-items:center;min-height:44px}
}
