/* SimplyIrfan Magazine v2.10.11 — six separately structured footer designs. */
html body footer.site-footer {
  --f-bg:#07182d; --f-panel:#10243d; --f-text:#f7f9fc; --f-muted:#b2bfd0;
  --f-line:rgba(255,255,255,.14); --f-accent:#f5b82e;
  position:relative!important; display:block!important; width:100%!important; max-width:none!important;
  margin:clamp(48px,7vw,88px) 0 0!important; padding:0!important; overflow:hidden!important;
  isolation:isolate; clear:both!important; box-sizing:border-box!important; border:0!important;
  background:var(--f-bg)!important; color:var(--f-text)!important; box-shadow:none!important;
  font-size:14px; line-height:1.55;
}
html body footer.site-footer, html body footer.site-footer * { box-sizing:border-box; }
html body footer.site-footer a { color:inherit; text-decoration:none; }
html body footer.site-footer a:hover { color:var(--f-accent); }
html body footer.site-footer > .footer-main.page-shell {
  display:grid!important; width:min(1320px,calc(100% - 64px))!important; max-width:1320px!important;
  min-width:0!important; margin:0 auto!important; padding:46px 0 40px!important;
  align-items:start!important; gap:34px!important; background:transparent!important;
}
html body footer.site-footer .footer-brand,
html body footer.site-footer .footer-list,
html body footer.site-footer .footer-links,
html body footer.site-footer .footer-newsletter {
  display:block!important; position:static!important; float:none!important; width:auto!important;
  min-width:0!important; max-width:none!important; margin:0!important; padding:0!important;
  border:0!important; background:transparent!important; box-shadow:none!important; color:var(--f-text)!important;
  grid-column:auto!important; align-self:start!important;
}
html body footer.site-footer .footer-brand { display:flex!important; flex-direction:column!important; align-items:flex-start!important; }
html body footer.site-footer .footer-brand__identity { display:flex; align-items:center; max-width:100%; min-width:0; line-height:1; }
html body footer.site-footer .footer-brand .brand-word,
html body footer.site-footer .footer-brand .si-footer-site-title {
  display:inline-block!important; max-width:100%!important; color:var(--f-text)!important; -webkit-text-fill-color:var(--f-text)!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(27px,2.4vw,36px)!important; font-weight:850!important; letter-spacing:-1.7px!important;
  line-height:1.05!important; white-space:normal!important; transform:none!important;
}
html body footer.site-footer .footer-brand .custom-logo-link { display:inline-flex!important; align-items:center; max-width:100%; }
html body footer.site-footer .footer-brand .custom-logo,
html body footer.site-footer .footer-brand img.custom-logo {
  display:block!important; position:static!important; width:auto!important; height:auto!important;
  max-width:min(100%,220px)!important; max-height:66px!important; object-fit:contain!important;
}
html body footer.site-footer .footer-brand > p {
  display:block!important; width:100%!important; max-width:330px!important; margin:14px 0 0!important;
  padding:0!important; color:var(--f-muted)!important; font-size:13px!important; line-height:1.8!important; overflow-wrap:anywhere;
}
html body footer.site-footer .footer-brand .social-links.footer-social-icons {
  display:flex!important; flex-direction:row!important; flex-wrap:wrap!important; align-items:center!important;
  justify-content:flex-start!important; gap:8px!important; width:auto!important; max-width:100%!important;
  margin:20px 0 0!important; padding:0!important;
}
html body footer.site-footer .footer-brand .footer-social-icons>a {
  display:inline-flex!important; position:static!important; flex:0 0 36px!important; align-items:center!important; justify-content:center!important;
  width:36px!important; height:36px!important; min-width:36px!important; margin:0!important; padding:8px!important;
  border:1px solid var(--f-line)!important; border-radius:9px!important; background:var(--f-panel)!important;
  color:var(--footer-social-icon-color,var(--f-text))!important; line-height:1!important; transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
html body footer.site-footer .footer-brand .footer-social-icons>a:hover { transform:translateY(-2px); background:var(--f-accent)!important; border-color:var(--f-accent)!important; color:#111827!important; }
html body footer.site-footer .footer-brand .footer-social-icons>a svg { display:block!important; width:18px!important; height:18px!important; min-width:18px; fill:currentColor!important; }
html body footer.site-footer .footer-list h2,
html body footer.site-footer .footer-links h2,
html body footer.site-footer .footer-newsletter h2 {
  display:block!important; margin:2px 0 17px!important; padding:0 0 11px!important; border:0!important;
  border-bottom:1px solid var(--f-line)!important; color:var(--f-text)!important; font-size:11px!important;
  font-weight:800!important; line-height:1.35!important; letter-spacing:.13em!important; text-transform:uppercase!important;
}
html body footer.site-footer .footer-story {
  display:flex!important; align-items:center!important; gap:11px!important; min-width:0!important;
  margin:0 0 12px!important; padding:0 0 12px!important; border:0!important; border-bottom:1px solid var(--f-line)!important;
  background:transparent!important;
}
html body footer.site-footer .footer-story:last-child { margin-bottom:0!important; padding-bottom:0!important; border-bottom:0!important; }
html body footer.site-footer .footer-story>img,
html body footer.site-footer .footer-story__placeholder {
  display:block!important; flex:0 0 52px!important; width:52px!important; height:52px!important; min-width:52px!important;
  max-width:52px!important; margin:0!important; padding:0!important; border:0!important; border-radius:8px!important;
  object-fit:cover!important; background:var(--f-panel)!important; color:var(--f-muted)!important;
}
html body footer.site-footer .footer-story__placeholder { display:flex!important; align-items:center!important; justify-content:center!important; font-size:18px!important; font-weight:800!important; }
html body footer.site-footer .footer-story__content { display:block; min-width:0; }
html body footer.site-footer .footer-story a { display:block!important; color:var(--f-text)!important; font-size:12px!important; font-weight:700!important; line-height:1.42!important; overflow-wrap:anywhere; }
html body footer.site-footer .footer-story time { display:block!important; margin-top:4px!important; color:var(--f-muted)!important; font-size:10px!important; line-height:1.35!important; }
html body footer.site-footer .footer-empty { color:var(--f-muted)!important; font-size:12px!important; }
html body footer.site-footer .footer-nav { display:flex!important; flex-direction:column!important; align-items:flex-start!important; gap:10px!important; list-style:none!important; margin:0!important; padding:0!important; }
html body footer.site-footer .footer-nav>li { display:block!important; margin:0!important; padding:0!important; list-style:none!important; }
html body footer.site-footer .footer-nav a { display:inline-block!important; padding:0!important; color:var(--f-muted)!important; font-size:12px!important; line-height:1.5!important; }
html body footer.site-footer .footer-bottom { width:100%!important; margin:0!important; padding:0!important; border:0!important; background:rgba(0,0,0,.18)!important; color:var(--f-muted)!important; }
html body footer.site-footer .footer-bottom__inner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; width:min(1320px,calc(100% - 64px)); margin:0 auto; padding:17px 0; }
html body footer.site-footer .footer-bottom p { margin:0!important; padding:0!important; color:var(--f-muted)!important; font-size:11px!important; }
html body footer.site-footer .footer-copyright { color:var(--f-text); font-weight:750; }
html body footer.site-footer .footer-legal { display:flex; align-items:center; flex-wrap:wrap; gap:10px 22px; }
html body footer.site-footer .footer-legal a { color:var(--f-muted)!important; font-size:11px!important; }
html body footer.site-footer .footer-links--bottom { display:block!important; }
html body footer.site-footer .footer-links--bottom h2 { display:none!important; }
html body footer.site-footer .footer-links--bottom .footer-nav { flex-direction:row!important; flex-wrap:wrap!important; gap:8px 18px!important; }
html body footer.site-footer .footer-links--bottom .footer-nav a { font-size:11px!important; }

/* 1. Classic — dark four-column magazine footer. */
html body footer.site-footer.site-footer--classic { --f-bg:#06172b; --f-panel:#102945; --f-text:#f8fafc; --f-muted:#b8c7d9; --f-line:rgba(170,198,228,.2); --f-accent:#f7bd36; }
html body footer.site-footer.site-footer--classic>.footer-main { grid-template-columns:minmax(210px,1.18fr) minmax(0,1fr) minmax(0,1fr) minmax(130px,.68fr)!important; gap:32px!important; }
html body footer.site-footer.site-footer--classic .footer-brand { padding-right:18px!important; }
html body footer.site-footer.site-footer--classic .footer-list h2,html body footer.site-footer.site-footer--classic .footer-links h2 { letter-spacing:.14em!important; }
html body footer.site-footer.site-footer--classic .footer-bottom__inner { border-top:1px solid var(--f-line); }

/* 2. Compact — airy horizontal white footer. */
html body footer.site-footer.site-footer--compact { --f-bg:#fff; --f-panel:#f4f6f9; --f-text:#172033; --f-muted:#68758a; --f-line:#e5e9ef; --f-accent:#1769e8; background:var(--f-bg)!important; color:var(--f-text)!important; border-top:1px solid #e8ebf0!important; }
html body footer.site-footer.site-footer--compact>.footer-main { grid-template-columns:minmax(210px,1.05fr) minmax(0,1fr) minmax(0,1fr)!important; gap:38px!important; padding-top:34px!important; padding-bottom:30px!important; }
html body footer.site-footer.site-footer--compact .footer-brand { justify-content:center!important; min-height:190px; padding-right:28px!important; border-right:1px solid var(--f-line)!important; }
html body footer.site-footer.site-footer--compact .footer-brand .brand-word,html body footer.site-footer.site-footer--compact .footer-brand .si-footer-site-title { color:#172033!important; -webkit-text-fill-color:#172033!important; }
html body footer.site-footer.site-footer--compact .footer-brand .footer-social-icons>a { background:#fff!important; border-color:#dfe4eb!important; color:#172033!important; }
html body footer.site-footer.site-footer--compact .footer-list h2 { color:#172033!important; border-color:var(--f-line)!important; }
html body footer.site-footer.site-footer--compact .footer-story { border-color:#edf0f4!important; }
html body footer.site-footer.site-footer--compact .footer-story a { color:#182235!important; }
html body footer.site-footer.site-footer--compact .footer-story time { color:#758197!important; }
html body footer.site-footer.site-footer--compact .footer-story>img,html body footer.site-footer.site-footer--compact .footer-story__placeholder { border-radius:7px!important; }
html body footer.site-footer.site-footer--compact .footer-bottom { background:#fff!important; border-top:1px solid #e8ebf0!important; }
html body footer.site-footer.site-footer--compact .footer-bottom__inner { padding-top:16px; padding-bottom:16px; }
html body footer.site-footer.site-footer--compact .footer-bottom p,html body footer.site-footer.site-footer--compact .footer-legal a,html body footer.site-footer.site-footer--compact .footer-links--bottom .footer-nav a { color:#68758a!important; }
html body footer.site-footer.site-footer--compact .footer-copyright { color:#182235!important; }

/* 3. Editorial — warm canvas with an elevated identity card. */
html body footer.site-footer.site-footer--light { --f-bg:#fff6f1; --f-panel:#fff; --f-text:#202536; --f-muted:#657084; --f-line:#eadfd9; --f-accent:#c45a35; background:var(--f-bg)!important; color:var(--f-text)!important; border:1px solid #f0e4de!important; border-radius:16px!important; }
html body footer.site-footer.site-footer--light>.footer-main { grid-template-columns:minmax(205px,.92fr) minmax(0,1fr) minmax(0,1fr) minmax(120px,.62fr)!important; gap:24px!important; padding:20px!important; }
html body footer.site-footer.site-footer--light .footer-brand--card { padding:24px 20px!important; border:1px solid #eee3dd!important; border-radius:13px!important; background:#fff!important; box-shadow:0 5px 16px rgba(53,39,29,.06)!important; }
html body footer.site-footer.site-footer--light .footer-brand .brand-word,html body footer.site-footer.site-footer--light .footer-brand .si-footer-site-title { color:#182235!important; -webkit-text-fill-color:#182235!important; }
html body footer.site-footer.site-footer--light .footer-brand>p { color:#667185!important; }
html body footer.site-footer.site-footer--light .footer-brand .footer-social-icons>a { color:#172033!important; background:#fff!important; border-color:#e1e5eb!important; }
html body footer.site-footer.site-footer--light .footer-brand__cta { display:flex!important; align-items:center!important; justify-content:space-between!important; gap:12px!important; margin-top:20px!important; padding:12px 14px!important; border-radius:8px!important; background:#0d1c31!important; color:#fff!important; font-size:12px!important; font-weight:750!important; }
html body footer.site-footer.site-footer--light .footer-brand__cta span { font-size:18px; line-height:1; }
html body footer.site-footer.site-footer--light .footer-list h2,html body footer.site-footer.site-footer--light .footer-links h2 { color:#252b39!important; border-color:#e8ddd7!important; }
html body footer.site-footer.site-footer--light .footer-story { border-color:#eee4df!important; }
html body footer.site-footer.site-footer--light .footer-story a { color:#202536!important; }
html body footer.site-footer.site-footer--light .footer-story time,html body footer.site-footer.site-footer--light .footer-nav a { color:#687285!important; }
html body footer.site-footer.site-footer--light .footer-story>img,html body footer.site-footer.site-footer--light .footer-story__placeholder { border-radius:7px!important; }
html body footer.site-footer.site-footer--light .footer-bottom { background:transparent!important; border-top:1px solid #e9ddd7!important; }
html body footer.site-footer.site-footer--light .footer-bottom__inner { padding:16px 20px; }
html body footer.site-footer.site-footer--light .footer-bottom p,html body footer.site-footer.site-footer--light .footer-legal a { color:#687285!important; }
html body footer.site-footer.site-footer--light .footer-copyright { color:#202536!important; }

/* 4. Newsletter — dramatic dark masthead, signup panel and post list. */
html body footer.site-footer.site-footer--newsletter { --f-bg:#071735; --f-panel:#102653; --f-text:#f8faff; --f-muted:#b9c6df; --f-line:rgba(164,190,255,.2); --f-accent:#2e83ff; background:radial-gradient(ellipse at 86% 4%,rgba(67,49,185,.48),transparent 34%),linear-gradient(112deg,#071735 0%,#06132d 60%,#17144a 100%)!important; }
html body footer.site-footer.site-footer--newsletter>.footer-main { grid-template-columns:minmax(205px,.95fr) minmax(260px,1.1fr) minmax(0,1fr)!important; gap:34px!important; padding-top:44px!important; padding-bottom:38px!important; }
html body footer.site-footer.site-footer--newsletter .footer-brand { padding:8px 28px 8px 0!important; border-right:1px solid var(--f-line)!important; }
html body footer.site-footer.site-footer--newsletter .footer-brand .footer-social-icons>a { background:rgba(255,255,255,.08)!important; border-color:rgba(255,255,255,.2)!important; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter { padding:2px 0 2px 2px!important; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter h2 { margin-bottom:13px!important; padding:0!important; border:0!important; font-size:20px!important; line-height:1.25!important; letter-spacing:-.02em!important; text-transform:none!important; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter>p { max-width:360px; margin:0 0 17px; color:var(--f-muted); font-size:13px; line-height:1.7; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter__form { display:grid; gap:9px; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter__form input { width:100%; min-width:0; min-height:43px; padding:11px 14px; border:1px solid #d9e0eb; border-radius:7px; background:#fff; color:#182235; font:inherit; font-size:13px; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter__form button,html body footer.site-footer.site-footer--newsletter .footer-newsletter__rss { display:inline-flex; justify-content:center; align-items:center; gap:10px; min-height:42px; padding:10px 16px; border:0; border-radius:7px; background:#1769ef; color:#fff!important; font-size:13px; font-weight:750; cursor:pointer; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter__form button:hover,html body footer.site-footer.site-footer--newsletter .footer-newsletter__rss:hover { background:#4388ff; color:#fff!important; }
html body footer.site-footer.site-footer--newsletter .footer-newsletter>small { display:block; margin-top:10px; color:#9aaccb; font-size:10px; line-height:1.5; }
html body footer.site-footer.site-footer--newsletter .footer-list h2 { margin-bottom:15px!important; }
html body footer.site-footer.site-footer--newsletter .footer-story>img,html body footer.site-footer.site-footer--newsletter .footer-story__placeholder { flex-basis:48px!important; width:48px!important; height:48px!important; min-width:48px!important; max-width:48px!important; }
html body footer.site-footer.site-footer--newsletter .footer-bottom { background:rgba(2,9,24,.52)!important; border-top:1px solid var(--f-line)!important; }
html body footer.site-footer.site-footer--newsletter .footer-bottom__inner { padding-top:15px; padding-bottom:15px; }
html body footer.site-footer.site-footer--newsletter .footer-legal a { color:#c1cee3!important; }

/* 5. Stacked — centered identity above two balanced story groups. */
html body footer.site-footer.site-footer--stacked { --f-bg:#fff; --f-panel:#f0f3f7; --f-text:#182235; --f-muted:#667388; --f-line:#e3e8ef; --f-accent:#1769e8; background:#fff!important; color:#182235!important; border-top:1px solid #e7ebf0!important; }
html body footer.site-footer.site-footer--stacked>.footer-main { display:block!important; width:min(1160px,calc(100% - 64px))!important; padding-top:34px!important; padding-bottom:24px!important; }
html body footer.site-footer.site-footer--stacked .footer-brand--stacked { display:flex!important; align-items:center!important; text-align:center!important; padding-bottom:25px!important; border-bottom:1px solid var(--f-line)!important; }
html body footer.site-footer.site-footer--stacked .footer-brand__identity { justify-content:center; }
html body footer.site-footer.site-footer--stacked .footer-brand .brand-word,html body footer.site-footer.site-footer--stacked .footer-brand .si-footer-site-title { color:#172033!important; -webkit-text-fill-color:#172033!important; }
html body footer.site-footer.site-footer--stacked .footer-brand>p { max-width:560px!important; margin:9px auto 0!important; color:#68758a!important; }
html body footer.site-footer.site-footer--stacked .footer-brand .footer-social-icons { justify-content:center!important; margin-top:13px!important; }
html body footer.site-footer.site-footer--stacked .footer-brand .footer-social-icons>a { background:#fff!important; border-color:#e1e6ed!important; color:#172033!important; }
html body footer.site-footer.site-footer--stacked .footer-stacked-stories { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px; padding:23px 0 20px; }
html body footer.site-footer.site-footer--stacked .footer-list h2 { color:#182235!important; border-color:#e3e8ef!important; }
html body footer.site-footer.site-footer--stacked .footer-list .footer-story { border:0!important; padding:0!important; margin:0 0 10px!important; }
html body footer.site-footer.site-footer--stacked .footer-list .footer-story>img,html body footer.site-footer.site-footer--stacked .footer-story__placeholder { flex-basis:38px!important; width:38px!important; height:38px!important; min-width:38px!important; max-width:38px!important; border-radius:6px!important; }
html body footer.site-footer.site-footer--stacked .footer-story a { color:#182235!important; }
html body footer.site-footer.site-footer--stacked .footer-story time { color:#6f7b8d!important; }
html body footer.site-footer.site-footer--stacked .footer-bottom { background:#f2f4f7!important; border-top:1px solid #e6e9ee!important; }
html body footer.site-footer.site-footer--stacked .footer-bottom__inner { justify-content:center; text-align:center; }
html body footer.site-footer.site-footer--stacked .footer-bottom p,html body footer.site-footer.site-footer--stacked .footer-legal a { color:#68758a!important; }
html body footer.site-footer.site-footer--stacked .footer-copyright { color:#182235!important; }

/* 6. Minimal — quiet four-column utility footer with subtle separators. */
html body footer.site-footer.site-footer--minimal { --f-bg:#fff; --f-panel:#f1f4f8; --f-text:#172033; --f-muted:#68758a; --f-line:#e5e9ef; --f-accent:#1268df; background:#fff!important; color:#172033!important; border-top:1px solid #e7ebf0!important; }
html body footer.site-footer.site-footer--minimal>.footer-main { grid-template-columns:minmax(205px,1.22fr) minmax(105px,.62fr) minmax(105px,.62fr) minmax(220px,1fr)!important; gap:30px!important; padding-top:38px!important; padding-bottom:34px!important; }
html body footer.site-footer.site-footer--minimal .footer-brand { padding-right:23px!important; border-right:1px solid var(--f-line)!important; }
html body footer.site-footer.site-footer--minimal .footer-brand .brand-word,html body footer.site-footer.site-footer--minimal .footer-brand .si-footer-site-title { color:#172033!important; -webkit-text-fill-color:#172033!important; }
html body footer.site-footer.site-footer--minimal .footer-brand>p { color:#68758a!important; }
html body footer.site-footer.site-footer--minimal .footer-brand .footer-social-icons>a { background:#fff!important; border-color:#dfe4eb!important; color:#172033!important; }
html body footer.site-footer.site-footer--minimal .footer-links h2,html body footer.site-footer.site-footer--minimal .footer-list h2 { color:#172033!important; border-color:#e5e9ef!important; }
html body footer.site-footer.site-footer--minimal .footer-nav { gap:10px!important; }
html body footer.site-footer.site-footer--minimal .footer-nav a { color:#59667b!important; }
html body footer.site-footer.site-footer--minimal .footer-list-recent .footer-story>img,html body footer.site-footer.site-footer--minimal .footer-story__placeholder { flex-basis:43px!important; width:43px!important; height:43px!important; min-width:43px!important; max-width:43px!important; border-radius:6px!important; }
html body footer.site-footer.site-footer--minimal .footer-story { border-color:#edf0f4!important; }
html body footer.site-footer.site-footer--minimal .footer-story a { color:#182235!important; }
html body footer.site-footer.site-footer--minimal .footer-story time { color:#748096!important; }
html body footer.site-footer.site-footer--minimal .footer-bottom { background:#fff!important; border-top:1px solid #e7ebf0!important; }
html body footer.site-footer.site-footer--minimal .footer-bottom__inner { padding-top:16px; padding-bottom:16px; }
html body footer.site-footer.site-footer--minimal .footer-bottom p,html body footer.site-footer.site-footer--minimal .footer-legal a { color:#68758a!important; }
html body footer.site-footer.site-footer--minimal .footer-copyright { color:#182235!important; }

/* Theme-aware dark mode for light presets without erasing their layouts. */
html[data-theme="dark"] body footer.site-footer.site-footer--compact,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal { --f-bg:#141821; --f-panel:#202735; --f-text:#f2f5fa; --f-muted:#b2bdce; --f-line:#303846; background:#141821!important; color:#f2f5fa!important; border-color:#303846!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-brand .brand-word,
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-brand .si-footer-site-title,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-brand .brand-word,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-brand .si-footer-site-title,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal .footer-brand .brand-word,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal .footer-brand .si-footer-site-title { color:#f2f5fa!important; -webkit-text-fill-color:#f2f5fa!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-story a,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-story a,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal .footer-story a,
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-list h2,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-list h2,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal .footer-list h2,
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-links h2,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-links h2,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal .footer-links h2 { color:#f2f5fa!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-brand .footer-social-icons>a,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-brand .footer-social-icons>a,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal .footer-brand .footer-social-icons>a { background:#202735!important; border-color:#3a4352!important; color:#f2f5fa!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-bottom,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-bottom,
html[data-theme="dark"] body footer.site-footer.site-footer--minimal .footer-bottom { background:#10141b!important; border-color:#303846!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--light { --f-bg:#171a21; --f-text:#f2f4f8; --f-muted:#c0c6d1; --f-line:#343945; background:#171a21!important; border-color:#343945!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-brand--card { background:#20242d!important; border-color:#373d49!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-brand .brand-word,
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-brand .si-footer-site-title,
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-list h2,
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-links h2,
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-story a { color:#f2f4f8!important; -webkit-text-fill-color:#f2f4f8!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-brand>p,
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-story time,
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-nav a { color:#c0c6d1!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-brand .footer-social-icons>a { background:#20242d!important; border-color:#3a414e!important; color:#f2f4f8!important; }
html[data-theme="dark"] body footer.site-footer.site-footer--light .footer-brand__cta { background:#f2f4f8!important; color:#171a21!important; }

/* Tablet and phone layouts: no horizontal scroll and no squeezed columns. */
@media (max-width:1050px) {
  html body footer.site-footer.site-footer--classic>.footer-main,html body footer.site-footer.site-footer--light>.footer-main { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html body footer.site-footer.site-footer--minimal>.footer-main { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html body footer.site-footer.site-footer--newsletter>.footer-main { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html body footer.site-footer.site-footer--newsletter .footer-brand { border-right:0!important; padding-right:0!important; }
  html body footer.site-footer.site-footer--newsletter .footer-list { grid-column:2; }
  html body footer.site-footer.site-footer--compact>.footer-main { grid-template-columns:minmax(190px,.85fr) minmax(0,1fr) minmax(0,1fr)!important; gap:24px!important; }
  html body footer.site-footer.site-footer--compact .footer-brand { padding-right:18px!important; }
}
@media (max-width:700px) {
  html body footer.site-footer>.footer-main.page-shell { width:calc(100% - 36px)!important; padding-top:30px!important; padding-bottom:28px!important; gap:25px!important; }
  html body footer.site-footer.site-footer--classic>.footer-main,html body footer.site-footer.site-footer--light>.footer-main,html body footer.site-footer.site-footer--compact>.footer-main,
  html body footer.site-footer.site-footer--newsletter>.footer-main,html body footer.site-footer.site-footer--minimal>.footer-main { grid-template-columns:minmax(0,1fr)!important; }
  html body footer.site-footer.site-footer--compact .footer-brand { min-height:0; border-right:0!important; border-bottom:1px solid var(--f-line)!important; padding:0 0 22px!important; }
  html body footer.site-footer.site-footer--newsletter .footer-list { grid-column:auto; }
  html body footer.site-footer.site-footer--light>.footer-main { padding:14px!important; }
  html body footer.site-footer.site-footer--light .footer-brand--card { padding:22px!important; }
  html body footer.site-footer.site-footer--stacked>.footer-main { width:calc(100% - 36px)!important; }
  html body footer.site-footer.site-footer--stacked .footer-stacked-stories { grid-template-columns:minmax(0,1fr); gap:20px; }
  html body footer.site-footer.site-footer--minimal .footer-brand { border-right:0!important; border-bottom:1px solid var(--f-line)!important; padding:0 0 22px!important; }
  html body footer.site-footer .footer-bottom__inner { width:calc(100% - 36px); flex-direction:column; align-items:flex-start; gap:10px; }
  html body footer.site-footer.site-footer--stacked .footer-bottom__inner { align-items:center!important; }
  html body footer.site-footer .footer-legal { gap:9px 16px; }
}
@media (max-width:380px) {
  html body footer.site-footer>.footer-main.page-shell { width:calc(100% - 28px)!important; }
  html body footer.site-footer .footer-story { gap:9px!important; }
  html body footer.site-footer .footer-story>img,html body footer.site-footer .footer-story__placeholder { flex-basis:44px!important; width:44px!important; height:44px!important; min-width:44px!important; max-width:44px!important; }
  html body footer.site-footer.site-footer--light>.footer-main { padding:10px!important; }
  html body footer.site-footer.site-footer--light .footer-brand--card { padding:18px!important; }
}
@media (prefers-reduced-motion:reduce) {
  html body footer.site-footer * { scroll-behavior:auto!important; transition:none!important; }
}

/* 2.10.10 focused fixes based on the supplied live-theme screenshots. */
/* Compact: the identity is one clean horizontal row; remove the stray end rule. */
html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact {
  display:grid!important;
  grid-column:1 / -1!important;
  grid-template-columns:minmax(180px,1fr) minmax(220px,1.2fr) auto!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:18px 30px!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:34px 0 28px!important;
  border:0!important;
  border-bottom:1px solid var(--f-line)!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact .footer-brand__identity {
  width:100%!important;
  justify-content:flex-start!important;
  align-items:center!important;
}
html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact > p {
  width:auto!important;
  max-width:470px!important;
  margin:0 auto!important;
  text-align:center!important;
}
html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact .footer-social-icons {
  justify-content:flex-end!important;
  margin:0!important;
}

/* Compact + Stacked: make the section headings explicit in light mode. */
html:not([data-theme="dark"]) body footer.site-footer.site-footer--compact .footer-list h2,
html:not([data-theme="dark"]) body footer.site-footer.site-footer--stacked .footer-list h2 {
  display:block!important;
  position:static!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  margin:2px 0 17px!important;
  padding:0 0 11px!important;
  border:0!important;
  border-bottom:1px solid #e3e8ef!important;
  background:transparent!important;
  color:#182235!important;
  -webkit-text-fill-color:#182235!important;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1.35!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}
html[data-theme="dark"] body footer.site-footer.site-footer--compact .footer-list h2,
html[data-theme="dark"] body footer.site-footer.site-footer--stacked .footer-list h2 {
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  color:#f2f5fa!important;
  -webkit-text-fill-color:#f2f5fa!important;
  border-bottom-color:#303846!important;
}

/* Newsletter: keep the logo, description and socials directly on the gradient. */
html body footer.site-footer.site-footer--newsletter > .footer-main > .footer-brand.footer-brand--newsletter,
html body footer.site-footer.site-footer--newsletter > .footer-main > .footer-brand.footer-brand--newsletter:hover {
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
html body footer.site-footer.site-footer--newsletter > .footer-main > .footer-brand.footer-brand--newsletter::before,
html body footer.site-footer.site-footer--newsletter > .footer-main > .footer-brand.footer-brand--newsletter::after {
  content:none!important;
  display:none!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Stacked: center the complete logo/identity row, not just its contents. */
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked {
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:0 0 25px!important;
  text-align:center!important;
}
html body footer.site-footer.site-footer--stacked .footer-brand--stacked > .footer-brand__identity {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:0 auto!important;
  text-align:center!important;
}
html body footer.site-footer.site-footer--stacked .footer-brand--stacked > .footer-brand__identity > .custom-logo-link,
html body footer.site-footer.site-footer--stacked .footer-brand--stacked > .footer-brand__identity > .brand-word {
  margin-left:auto!important;
  margin-right:auto!important;
}
html body footer.site-footer.site-footer--stacked .footer-brand--stacked > p {
  width:100%!important;
  max-width:560px!important;
  margin:9px auto 0!important;
  text-align:center!important;
}
html body footer.site-footer.site-footer--stacked .footer-brand--stacked .footer-social-icons {
  width:100%!important;
  justify-content:center!important;
  margin:13px auto 0!important;
}

/* Stacked: align copyright, footer menu and legal links on one balanced baseline. */
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:12px 24px!important;
  text-align:left!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > p {
  grid-column:1!important;
  justify-self:start!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  text-align:left!important;
  white-space:normal!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom {
  grid-column:2!important;
  justify-self:center!important;
  margin:0!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-legal {
  grid-column:3!important;
  justify-self:end!important;
  margin:0!important;
}

@media (max-width:700px) {
  html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact {
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:14px 16px!important;
    padding:0 0 22px!important;
  }
  html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact > p {
    grid-column:1 / -1!important;
    grid-row:2!important;
    max-width:100%!important;
    margin:0!important;
    text-align:left!important;
  }
  html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact .footer-social-icons {
    grid-column:2!important;
    grid-row:1!important;
  }
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner {
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > p,
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom,
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-legal {
    justify-self:auto!important;
    text-align:center!important;
  }
}
@media (max-width:440px) {
  html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact {
    grid-template-columns:minmax(0,1fr)!important;
    justify-items:center!important;
    text-align:center!important;
  }
  html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact .footer-brand__identity,
  html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact > p,
  html body footer.site-footer.site-footer--compact > .footer-main > .footer-brand.footer-brand--compact .footer-social-icons {
    grid-column:1!important;
    grid-row:auto!important;
    justify-content:center!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* v2.10.11: final Stacked centering and bottom-row alignment.
   This is deliberately the last preset rule so the dedicated footer stylesheet wins. */
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked {
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:0 0 25px!important;
  text-align:center!important;
}
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked > .footer-brand__identity {
  display:flex!important;
  flex:0 0 100%!important;
  align-self:stretch!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0 auto 10px!important;
  padding:0!important;
  text-align:center!important;
  transform:none!important;
}
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked > .footer-brand__identity > .custom-logo-link,
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked > .footer-brand__identity > .brand-word {
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  float:none!important;
  position:static!important;
  inset:auto!important;
  margin:0 auto!important;
  padding:0!important;
  text-align:center!important;
  transform:none!important;
}
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked > .footer-brand__identity img.custom-logo {
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:min(100%,260px)!important;
  max-height:72px!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center center!important;
}
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked > p {
  width:100%!important;
  max-width:560px!important;
  margin:0 auto 0!important;
  text-align:center!important;
}
html body footer.site-footer.site-footer--stacked > .footer-main > .footer-brand.footer-brand--stacked > .footer-social-icons {
  display:flex!important;
  width:100%!important;
  justify-content:center!important;
  margin:13px auto 0!important;
}

/* Three zones: copyright at left, menu on the true centerline, Sitemap/legal at right. */
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:12px 24px!important;
  width:min(1160px,calc(100% - 64px))!important;
  max-width:1160px!important;
  margin:0 auto!important;
  padding:16px 0!important;
  text-align:left!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > p {
  grid-column:1!important;
  justify-self:start!important;
  align-self:center!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  line-height:1.5!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom {
  grid-column:2!important;
  justify-self:center!important;
  align-self:center!important;
  display:block!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom > h2 {
  display:none!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom > .footer-nav {
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px 20px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  list-style:none!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom > .footer-nav > li {
  display:block!important;
  margin:0!important;
  padding:0!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom > .footer-nav a {
  display:inline-block!important;
  margin:0!important;
  padding:0!important;
  line-height:1.5!important;
  white-space:nowrap!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-legal {
  grid-column:3!important;
  justify-self:end!important;
  align-self:center!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px 18px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-align:right!important;
}
html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-legal a {
  display:inline-block!important;
  margin:0!important;
  padding:0!important;
  line-height:1.5!important;
  white-space:nowrap!important;
}
html body footer.site-footer.site-footer--stacked .footer-bottom__inner .footer-copyright {
  display:inline!important;
}
@media (max-width:700px) {
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    justify-items:center!important;
    gap:9px!important;
    width:calc(100% - 36px)!important;
    text-align:center!important;
  }
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > p,
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-links--bottom,
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-legal {
    grid-column:1!important;
    justify-self:center!important;
    text-align:center!important;
  }
  html body footer.site-footer.site-footer--stacked > .footer-bottom > .footer-bottom__inner > .footer-legal {
    justify-content:center!important;
  }
}


/*
 * v2.10.43 — Footer social icon sizing guard.
 * Pinterest's source glyph uses a larger viewBox than the other networks.
 * Explicit dimensions in markup plus these constraints keep every glyph
 * inside the same 36px button across all six footer presets.
 */
html body footer.site-footer .footer-brand .footer-social-icons > a {
  display: inline-flex !important;
  position: relative !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
html body footer.site-footer .footer-brand .footer-social-icons > a > svg {
  display: block !important;
  position: static !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  transform: none !important;
  inset: auto !important;
}
html body footer.site-footer .footer-brand .footer-social-icons > a[aria-label="Pinterest"] {
  overflow: hidden !important;
}
