/* EVENT86 r95: one independent visual foundation for both legacy and modern footers.
   Deliberately scoped to footer.footer; does not affect headers or page content. */
footer.footer,footer.footer *,footer.footer *::before,footer.footer *::after{box-sizing:border-box}
footer.footer{display:block;width:100%;margin:0;background:#101010;color:#fff;padding:52px 0 24px;position:relative;clear:both}
footer.footer a{text-decoration:none;color:#c9c9c9}
footer.footer a:hover,footer.footer a:focus-visible{color:#fff}
footer.footer :is(.container,.wrap){width:min(1200px,calc(100% - 48px));max-width:1200px;margin-left:auto;margin-right:auto}
/* Canonical footer generated from the home template. */
footer.footer .footer-main{display:grid;grid-template-columns:minmax(165px,1.05fr) minmax(100px,.7fr) minmax(120px,.8fr) minmax(130px,.85fr) minmax(190px,1.1fr);gap:24px;align-items:start;padding-bottom:34px}
footer.footer .footer-brand,footer.footer .footer-brand a{display:block;max-width:195px}
footer.footer .footer-brand img{display:block;width:min(176px,100%);height:auto;max-height:78px;object-fit:contain;object-position:left center}
footer.footer .footer-col{display:flex;flex-direction:column;gap:12px}
footer.footer .footer-col>a{display:block;font-size:13px;line-height:1.35;white-space:normal}
footer.footer .footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right;min-width:0}
footer.footer .footer-contact .phone{color:#fff;font-size:17px;font-weight:750;line-height:1.3;white-space:nowrap}
footer.footer .footer-contact .footer-email{font-size:12px;color:#c9c9c9;overflow-wrap:anywhere}
footer.footer .footer-contact p{font-size:12px;line-height:1.5;margin:0;color:#a9a9a9}
footer.footer .footer-contact .social-links{display:flex;gap:9px;justify-content:flex-end;margin-top:6px}
footer.footer .footer-contact .social-links>a{display:grid;place-items:center;width:34px;height:34px;border:1px solid #454545;border-radius:50%;color:#fff}
footer.footer .footer-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-top:1px solid #323232;padding-top:21px;font-size:12px;line-height:1.5;color:#919191}
/* Legacy CMS footer: preserve all existing contact/legal data but render it coherently. */
footer.footer > .footer-grid{display:grid;grid-template-columns:minmax(170px,.9fr) minmax(380px,1.65fr) minmax(200px,1fr);gap:44px;align-items:start;padding-bottom:34px}
footer.footer > .footer-grid > .footer-brand-image{display:block;width:190px;max-width:100%;align-self:start}
footer.footer > .footer-grid > .footer-brand-image img{display:block;width:176px;max-width:100%;height:auto;max-height:74px;object-fit:contain;object-position:left center}
footer.footer > .footer-grid > nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 30px;min-width:0;align-items:start}
footer.footer > .footer-grid > nav>a{display:block;line-height:1.35;font-size:13px;min-width:0;white-space:normal}
/* The legal policy links are duplicated below; keep the primary grid focused. */
footer.footer > .footer-grid > nav>a[href="/privacy"],footer.footer > .footer-grid > nav>a[href="/terms"],footer.footer > .footer-grid > nav>a[href="/requisites"],footer.footer > .footer-grid > nav>a[href="/cookies"]{display:none}
footer.footer > .footer-grid > .footer-contact{align-items:flex-end;text-align:right;gap:9px}
footer.footer > .footer-grid > .footer-contact>a[href^="tel:"]{font-size:17px;font-weight:750;color:#fff;white-space:nowrap}
footer.footer > .footer-grid > .footer-contact>a[href^="mailto:"]{font-size:13px;overflow-wrap:anywhere}
footer.footer > .footer-grid > .footer-contact>small{font-size:12px;color:#969696;line-height:1.5}
footer.footer > .site-legal-details{display:grid;grid-template-columns:minmax(185px,1.1fr) minmax(240px,1.6fr) minmax(220px,1fr);align-items:start;gap:26px;border-top:1px solid #323232;padding-top:23px;margin-top:0;font-size:12px;line-height:1.55;color:#9d9d9d}
footer.footer .site-legal-identity{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
footer.footer .site-legal-identity strong{display:block;color:#eee;font-weight:650}
footer.footer .site-legal-address{min-width:0;overflow-wrap:anywhere}
footer.footer .site-legal-address>span{color:#eee}
footer.footer .site-legal-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;min-width:0}
footer.footer .site-legal-links>a{font-size:12px;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:1050px){
 footer.footer .footer-main{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
 footer.footer .footer-main>.footer-contact{grid-column:1/-1;align-items:flex-start;text-align:left}
 footer.footer>.footer-grid{grid-template-columns:minmax(160px,1fr) minmax(300px,1.5fr);gap:26px}
 footer.footer>.footer-grid>.footer-contact{grid-column:1/-1;align-items:flex-start;text-align:left}
 footer.footer>.site-legal-details{grid-template-columns:1fr 1.5fr}
 footer.footer .site-legal-links{grid-column:1/-1}
}
@media(max-width:680px){
 footer.footer{padding:35px 0 22px}
 footer.footer :is(.container,.wrap){width:calc(100% - 36px)}
 footer.footer .footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px;padding-bottom:25px}
 footer.footer .footer-main>.footer-brand{grid-column:1/-1}
 footer.footer .footer-main>.footer-contact{grid-column:1/-1}
 footer.footer .footer-brand img{width:155px;max-height:65px}
 footer.footer .footer-col{gap:0}
 footer.footer .footer-col>a{min-height:39px;padding:11px 0 8px;border-bottom:1px solid #292929;font-size:13px}
 footer.footer .footer-bottom{display:flex;flex-direction:column;gap:6px;padding-top:17px}
 footer.footer>.footer-grid{grid-template-columns:1fr;gap:24px;padding-bottom:26px}
 footer.footer>.footer-grid>.footer-brand-image img{width:155px;max-height:65px}
 footer.footer>.footer-grid>nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
 footer.footer>.footer-grid>nav>a{min-height:42px;padding:11px 0 9px;border-bottom:1px solid #2a2a2a;font-size:13px}
 footer.footer>.footer-grid>.footer-contact{gap:7px}
 footer.footer>.site-legal-details{grid-template-columns:1fr;gap:13px;padding-top:18px}
 footer.footer .site-legal-links{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
}
@media(max-width:370px){footer.footer :is(.container,.wrap){width:calc(100% - 28px)}footer.footer .footer-main{gap:18px 10px}}
