/* Подвал, стрелка наверх, cookie-полоска */
.site-footer{margin-top:var(--gap);padding:clamp(48px,6vw,88px) var(--pad-x) 0;background:var(--color-background);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-text) 10%,transparent)}
.site-footer__grid{display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1.3fr;gap:clamp(24px,4vw,64px);position:relative;z-index:1}
.site-footer__col{display:grid;gap:10px;align-content:start;font-size:16px;color:var(--color-text-muted)}
.site-footer__col a{text-decoration:none;color:var(--color-text);width:fit-content;border-bottom:1px solid transparent}
.site-footer__h{font-family:var(--ff-display);font-weight:800;font-size:20px;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:6px}
.site-footer__sub{max-width:24ch;margin-top:12px;color:var(--color-text-muted)}
.site-logo--foot .site-logo__word{font-size:40px}
.site-footer__legal{position:relative;z-index:1;margin-top:clamp(36px,5vw,64px);padding-top:18px;border-top:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);font-size:14px;color:var(--color-text-muted)}
.site-footer__echo{position:relative;z-index:0;margin:clamp(20px,3vw,44px) calc(var(--pad-x) * -1) 0;height:clamp(110px,19vw,300px);overflow:hidden;font-size:clamp(150px,28vw,460px);line-height:.8;text-align:center;font-weight:900;white-space:nowrap;color:transparent;background:linear-gradient(to bottom,color-mix(in srgb,var(--color-text) 20%,transparent),color-mix(in srgb,var(--color-text) 0%,transparent) 88%);-webkit-background-clip:text;background-clip:text;user-select:none;order:3}
.site-footer{display:flex;flex-direction:column}
.site-footer__grid{order:1}
.site-footer__legal{order:2}
@media (hover:hover) and (pointer:fine){.site-footer__col a:hover{border-bottom-color:var(--color-text)}}
@media (max-width:900px){.site-footer__grid{grid-template-columns:1fr 1fr}.site-footer__col:first-child{grid-column:1/-1}}
@media (max-width:560px){.site-footer__grid{grid-template-columns:1fr}}

.to-top{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(108px,calc(env(safe-area-inset-bottom) + 100px));z-index:50;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--color-surface-elevated);color:var(--color-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-text) 18%,transparent),0 14px 30px -12px rgba(0,0,0,.7);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .3s,transform .3s,background-color .25s}
.to-top.is-on{opacity:1;transform:none;pointer-events:auto}
@media (hover:hover) and (pointer:fine){.to-top:hover{background:var(--color-primary)}}

.cookie{position:fixed;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:90;display:flex;align-items:center;gap:18px;width:min(640px,calc(100vw - 24px));padding:12px 14px 12px 20px;border-radius:calc(20px * var(--round));background:color-mix(in srgb,var(--color-surface) 82%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-text) 16%,transparent),0 24px 50px -20px rgba(0,0,0,.7);font-size:15px;line-height:1.4}
.cookie a{text-decoration:underline;text-underline-offset:3px}
.cookie .btn{flex:none}
body:has(.gf-ff-bar) .cookie{bottom:88px}
@media (min-width:900px){.cookie{left:max(12px,env(safe-area-inset-left));transform:none}}

/* логотип в подвале (раньше жил в header.css) */
.site-logo{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:var(--color-text);flex:0 0 auto;-webkit-tap-highlight-color:transparent}
.site-logo__mark{display:block;height:54px;color:var(--color-primary)}
.site-logo__mark svg{height:100%;width:auto}
.site-logo__word{font-family:var(--ff-display);font-weight:900;font-size:28px;line-height:1;letter-spacing:.04em;padding-top:2px}
