.site-footer { color:#fff; background:#333d5d; }
.site-footer__inner { display:grid; grid-template-columns:minmax(215px,1.62fr) repeat(3,minmax(120px,1fr)) minmax(145px,.9fr); gap:clamp(25px,3.1vw,66px); width:min(100% - 64px,1680px); margin:0 auto; padding:49px 0 34px; }
.site-footer__brand { min-width:0; }
.site-footer__wordmark { display:inline-flex; flex-direction:column; color:#fff; text-decoration:none; }
.site-footer__wordmark strong { font-size:clamp(26px,2vw,38px); font-weight:800; line-height:1; letter-spacing:-.055em; }
.site-footer__wordmark span { margin-top:8px; color:#e0e5f0; font-size:9px; font-weight:750; letter-spacing:.1em; }
.site-footer__brand p { max-width:250px; margin:30px 0 0; color:#c4cbdc; font-size:14px; line-height:1.55; }
.site-footer__group { display:flex; flex-direction:column; align-items:flex-start; gap:17px; min-width:0; }
.site-footer__group h2 { margin:2px 0 8px; color:#fff; font-size:17px; font-weight:700; line-height:1.15; }
.site-footer__group a { color:#fff; font-size:14px; line-height:1.1; text-decoration:none; transition:color .18s ease,transform .18s ease; }
.site-footer__group a:hover,.site-footer__email:hover { color:#f0bd54; }
.site-footer__group a:hover { transform:translateX(3px); }
.site-footer__community { padding-left:0; border-left:0; }
.site-footer__community a { display:inline-flex; align-items:center; gap:12px; }
.site-footer__community svg { width:16px; height:16px; flex:none; fill:none; stroke:currentColor; stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; }
.site-footer__community .site-footer__fill { fill:currentColor; stroke:none; }
.site-footer__bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; width:min(100% - 64px,1680px); min-height:60px; margin:0 auto; padding:12px 0 15px; border-top:1px solid rgba(255,255,255,.12); color:#c4cbdc; font-size:12px; }
.site-footer__contact-links { display:flex; align-items:center; justify-content:flex-end; gap:10px; }
.footer-contact-icon { display:inline-grid; width:30px; height:30px; place-items:center; border-radius:50%; color:#fff; background:#a4a7ad; text-decoration:none; transition:background .18s ease,transform .18s ease; }
.footer-contact-icon svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.footer-contact-icon svg path:not(:last-child) { fill:currentColor; stroke:none; }
.footer-contact-icon--whatsapp:hover { background:#25d366; }
.footer-contact-icon--telegram:hover { background:#2aabee; }
.footer-contact-icon--email:hover { background:#5b6a86; }
.footer-contact-icon:hover { transform:translateY(-2px); }
.site-footer__email { margin-left:4px; color:#fff; font-size:14px; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
@media (max-width:1120px) { .site-footer__inner { grid-template-columns:1.45fr repeat(3,1fr); } .site-footer__community { padding-left:0; border-left:0; } }
@media (max-width:720px) { .site-footer__inner,.site-footer__bottom { width:min(100% - 40px,560px); } .site-footer__inner { grid-template-columns:repeat(2,minmax(0,1fr)); gap:31px 24px; padding:40px 0 30px; } .site-footer__brand { grid-column:1 / -1; } .site-footer__brand p { max-width:300px; margin-top:18px; } .site-footer__group { gap:13px; } .site-footer__group h2 { margin-bottom:4px; font-size:16px; } .site-footer__group a { font-size:13px; } .site-footer__bottom { align-items:flex-start; flex-direction:column-reverse; padding:18px 0 21px; } .site-footer__contact-links { justify-content:flex-start; flex-wrap:wrap; } }
@media (max-width:420px) { .site-footer__inner,.site-footer__bottom { width:min(100% - 32px,400px); } .site-footer__wordmark strong { font-size:28px; } .site-footer__email { width:100%; margin-left:0; } }
