/* Public footer only. Geometry follows the current marketing homepage. */
.footer[data-site-footer] { box-sizing:border-box; width:100%; max-width:none; margin:0; padding:clamp(2.75rem,4.5vw,4.5rem) 0 6.25rem; background:#1c1c1e; color:#d4d4d4; font-family:var(--font-body,Outfit,system-ui,sans-serif); line-height:1.6; text-align:start; }
.footer[data-site-footer] *, .footer[data-site-footer] *::before, .footer[data-site-footer] *::after { box-sizing:border-box; }
.footer[data-site-footer] > .container { width:100%; max-width:1280px; padding:0 1.5rem; margin:0 auto; }
.footer[data-site-footer] .footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1.4fr .8fr .8fr; gap:2rem; margin:0 0 4rem; }
.footer[data-site-footer] .footer-grid > * { min-width:0; }
.footer[data-site-footer] .footer-brand { max-width:300px; }
.footer[data-site-footer] .footer-logo { display:inline-block; margin:0 0 1rem; padding:0; }
.footer[data-site-footer] .footer-logo-svg { display:block; width:140px; height:40px; max-width:100%; }
.footer[data-site-footer] .footer-logo-svg .logo-text { fill:rgba(255,255,255,.9); }
.footer[data-site-footer] .footer-logo-svg .logo-circle { fill:#f9b234; }
.footer[data-site-footer] .footer-tagline { margin:0 0 1.5rem; max-width:none; color:#a3a3a3; font-size:.9375rem; line-height:1.6; }
.footer[data-site-footer] .footer-social { display:flex; flex-wrap:wrap; gap:.5rem; flex-direction:row; }
.footer[data-site-footer] .footer-social-link { display:flex; align-items:center; justify-content:center; width:40px; height:40px; padding:0; border:0; border-radius:8px; background:#2c2c2e; color:#a3a3a3; }
.footer[data-site-footer] .footer-social-link:hover { background:#b34602; color:#fff; }
.footer[data-site-footer] .footer-column-title { margin:0 0 1.5rem; padding:0; color:#a3a3a3; font-family:inherit; font-size:.75rem; font-weight:600; line-height:1.6; letter-spacing:.1em; text-transform:uppercase; }
.footer[data-site-footer] .footer-links { display:flex; flex-direction:column; gap:1rem; list-style:none; padding:0; margin:0; }
.footer[data-site-footer] .footer-links li { list-style:none; padding:0; margin:0; }
.footer[data-site-footer] a { text-decoration:none; }
.footer[data-site-footer] .footer-link { display:inline-block; padding:0; color:#d4d4d4; font-size:.9375rem; line-height:1.6; overflow-wrap:anywhere; }
.footer[data-site-footer] .footer-link:hover { color:#e8c872; }
.footer[data-site-footer] .footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1rem; padding:2rem 0 0; margin:0; border-top:1px solid rgba(255,255,255,.1); }
.footer[data-site-footer] .footer-copyright { margin:0; font-size:.875rem; color:#a3a3a3; line-height:1.6; }
.footer[data-site-footer] .footer-legal { display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; padding:0; margin:0; }
.footer[data-site-footer] .footer-legal-link { color:#a3a3a3; font-size:.875rem; line-height:1.6; }
.footer[data-site-footer] .footer-legal-link:hover { color:#d4d4d4; }
.footer[data-site-footer] .footer-lang-switcher { position:relative; display:inline-block; margin:0; margin-inline-start:auto; max-width:100%; font-family:var(--font-mono,'JetBrains Mono',monospace); }
.footer[data-site-footer] .lang-switcher-toggle { display:inline-flex; align-items:center; gap:.4rem; min-height:44px; max-width:100%; padding:.4rem .85rem; border:1px solid rgba(255,255,255,.3); border-radius:999px; background:transparent; color:#a3a3a3; font:500 .8125rem/1.5 var(--font-mono,'JetBrains Mono',monospace); letter-spacing:.04em; cursor:pointer; text-transform:uppercase; }
.footer[data-site-footer] .lang-switcher-menu { display:none; position:absolute; inset:auto 0 calc(100% + .5rem) auto; width:max-content; min-width:12rem; max-width:calc(100vw - 2rem); max-height:min(70vh,30rem); overflow-y:auto; background:#fff; border:1px solid #e5e5e5; border-radius:8px; box-shadow:0 10px 30px #0003; padding:.35rem; z-index:1000; }
.footer[data-site-footer] .lang-switcher.open .lang-switcher-menu { display:block; }
.footer[data-site-footer] .lang-switcher-menu a { display:block; padding:.5rem .75rem; border-radius:4px; color:#1c1c1e; font:400 .95rem/1.6 var(--font-body,Outfit,system-ui,sans-serif); text-transform:none; }
.footer[data-site-footer] .lang-switcher-menu a:hover { background:#faf7f2; }
.footer[data-site-footer] .lang-switcher-menu a[aria-current] { color:#b34602; font-weight:600; }
.footer[data-site-footer] :is(a,button):focus-visible { outline:3px solid #e8c872; outline-offset:4px; }
.footer[data-site-footer]:dir(rtl) .lang-switcher-menu { left:0; right:auto; }
@media(max-width:1100px) {
 .footer[data-site-footer] .footer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .footer[data-site-footer] .footer-brand { grid-column:1/-1; max-width:35rem; }
}
@media(max-width:600px) {
 .footer[data-site-footer] > .container { padding-inline:1rem; }
 .footer[data-site-footer] .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.75rem 1rem; }
 .footer[data-site-footer] .footer-links { gap:.625rem; }
 .footer[data-site-footer] .footer-bottom { flex-direction:column; align-items:flex-start; }
 .footer[data-site-footer] .footer-lang-switcher { margin-inline-start:0; }
 .footer[data-site-footer] .lang-switcher-menu { left:0; right:auto; }
 .footer[data-site-footer]:dir(rtl) .lang-switcher-menu { left:auto; right:0; }
}
@media(prefers-reduced-motion:reduce) { .footer[data-site-footer] * { transition:none; animation:none; } }
