/* Lapin Group shared bar and footer. One file, copied into every site by hub/tools/sync.py.
   Do not edit the copies: edit hub/shared/lg-shared.css and run the sync.
   White and quiet by default. Follows a dark theme only when the visitor chose one. */
.lgbar, .lgfoot {
  --lg-bg: #FFFFFF; --lg-ink: #1D1D1F; --lg-muted: #6E6E73; --lg-rule: #E3E3E8;
  --lg-sans: "IBM Plex Sans", "Heebo", "Rubik", system-ui, -apple-system, "Segoe UI", sans-serif;
  --lg-head: "Space Grotesk", "Heebo", "Rubik", system-ui, -apple-system, sans-serif;
  box-sizing: border-box; background: var(--lg-bg); color: var(--lg-ink);
  font-family: var(--lg-sans); -webkit-font-smoothing: antialiased; letter-spacing: 0; text-transform: none;
}
:root[data-theme="dark"] .lgbar, :root[data-theme="dark"] .lgfoot,
:root[data-theme="dim"] .lgbar, :root[data-theme="dim"] .lgfoot {
  --lg-bg: #0F0F10; --lg-ink: #F5F5F7; --lg-muted: #A1A1A6; --lg-rule: #2C2C2E;
}
.lgbar *, .lgfoot * { box-sizing: border-box; }
.lgbar { border-bottom: 1px solid var(--lg-rule); font-size: 13px; line-height: 1; position: relative; z-index: 50; }
.lgbar-in { max-width: 1080px; margin: 0 auto; padding: 0 16px; height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
@media (min-width: 760px) { .lgbar-in { padding: 0 36px; } }
.lgbar a { color: var(--lg-muted); text-decoration: none; font-family: var(--lg-sans); font-size: 13px; font-weight: 400; white-space: nowrap; }
.lgbar a:hover { color: var(--lg-ink); }
.lgbar a:focus-visible, .lgfoot a:focus-visible { outline: 2px solid #8A6500; outline-offset: 3px; border-radius: 4px; }
.lgbar-home { display: inline-flex; align-items: center; gap: 8px; color: var(--lg-ink) !important; font-family: var(--lg-head) !important; font-weight: 700 !important; font-size: 14.5px !important; letter-spacing: -.02em; }
.lgbar-home svg { width: 15px; height: 20px; flex: none; display: block; }
.lgbar nav { display: flex; align-items: center; gap: 16px; }
.lgbar-cta { color: #1D1D1F !important; background: #FFD60A; border: 1px solid #FFD60A; border-radius: 999px; padding: 6px 12px; font-weight: 500 !important; }
.lgbar-cta:hover { border-color: #1D1D1F; }

.lgfoot { border-top: 1px solid var(--lg-rule); padding: 34px 0 44px; margin: 0; font-size: 14.5px; line-height: 1.5; text-align: start; }
.lgfoot-in { width: 100%; max-width: 1080px; margin: 0 auto; padding: 0 20px; display: grid; gap: 24px; }
@media (min-width: 760px) { .lgfoot-in { padding: 0 36px; grid-template-columns: 1.15fr 1fr 1fr; gap: 30px; } }
.lgfoot a { color: var(--lg-muted); text-decoration: none; font-family: var(--lg-sans); font-size: 14.5px; font-weight: 400; }
.lgfoot a:hover { color: var(--lg-ink); }
.lgfoot-brand { display: inline-flex; align-items: center; gap: 9px; color: var(--lg-ink) !important; font-family: var(--lg-head) !important; font-weight: 700 !important; font-size: 16px !important; letter-spacing: -.02em; }
.lgfoot-brand svg { width: 18px; height: 24px; flex: none; display: block; }
.lgfoot p { margin: 8px 0 0; color: var(--lg-muted); max-width: 36ch; font-size: 14.5px; }
.lgfoot ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
.lgfoot li { margin: 0; padding: 0; }
.lgfoot h2 { font-family: var(--lg-sans); font-size: 12.5px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--lg-ink); margin: 0 0 10px; line-height: 1.3; }
.lgfoot-legal { margin-top: 16px !important; font-size: 13px !important; }
