/* ============ Footer ============ */
footer{background:var(--c-bg-tertiary);border-top:1px solid var(--c-border);padding:clamp(3.25rem,6vw,4.75rem) 0 2rem;}
.foot-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:clamp(2rem,5vw,4rem);align-items:start;margin-bottom:3rem;padding-bottom:2.5rem;border-bottom:1px solid var(--c-border);}
.foot-brand .iq-logo{margin-bottom:1rem;}
.foot-brand p{color:var(--c-fg-muted);font-size:.92rem;line-height:1.65;margin-bottom:1.35rem;max-width:560px;}
.foot-iso{display:flex;gap:.6rem;margin-bottom:1.25rem;flex-wrap:wrap;}
.foot-iso span{font-family:var(--font-mono);font-size:.7rem;color:var(--c-fg-secondary);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:.25rem .5rem;}
.foot-group{display:inline-flex;align-items:center;gap:.65rem;max-width:320px;}
.foot-group-kicker{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-fg-muted);white-space:nowrap;transition:color var(--t-fast);}
.foot-group-logo{flex-shrink:0;display:inline-flex;}
.foot-group-logo img{height:24px;width:auto;opacity:.9;transition:opacity var(--t-fast);}
.foot-group:hover .foot-group-logo img{opacity:1;}
.foot-group:hover .foot-group-kicker{color:var(--c-fg-secondary);}
.foot-contact{border-left:1px solid var(--c-border);padding-left:2rem;}
.foot-contact h2{font-size:.78rem;font-weight:700;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-fg-muted);margin-bottom:1rem;}
.foot-contact-links{display:grid;gap:.55rem;max-width:340px;}
.foot-contact-links a{color:var(--c-fg-secondary);font-size:.9rem;line-height:1.45;transition:color var(--t-fast);}
.foot-contact-links a:hover{color:var(--c-accent-blue);}
.foot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.5rem,4vw,3rem);margin-bottom:3rem;}
.foot-col h2{font-size:.78rem;font-weight:700;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-fg-muted);margin-bottom:1.05rem;}
.foot-col ul{list-style:none;display:grid;gap:.58rem;}
.foot-col li{min-width:0;}
.foot-col a{color:var(--c-fg-secondary);font-size:.88rem;line-height:1.45;transition:color var(--t-fast);}
.foot-col a:hover{color:var(--c-accent-blue);}
.foot-more-item{margin-top:.25rem;}
.foot-col .foot-more{display:inline-flex;align-items:center;gap:.25rem;color:#fff;font-weight:600;}
.foot-more span{transition:transform var(--t-fast);}
.foot-more:hover span{transform:translateX(2px);}
.foot-bottom{border-top:1px solid var(--c-border);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;}
.foot-bottom .legal{font-size:.78rem;color:var(--c-fg-muted);font-family:var(--font-mono);line-height:1.6;}
.foot-bottom .legal-links{display:flex;gap:1.2rem;font-size:.8rem;}
.foot-bottom .legal-links a{color:var(--c-fg-muted);}
.foot-bottom .legal-links a:hover{color:var(--c-fg-secondary);}
@media (max-width:1180px){.foot-head{grid-template-columns:1fr;}.foot-contact{border-left:0;border-top:1px solid var(--c-border);padding:2rem 0 0;}.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.foot-grid{grid-template-columns:1fr;}.foot-head{margin-bottom:2.4rem;padding-bottom:2rem;}.foot-bottom{flex-direction:column;align-items:flex-start;}}

/* ============ Кнопка «вгору» ============ */
.iq-top{position:fixed;right:1.5rem;bottom:1.5rem;z-index:90;width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--c-border-strong);border-radius:var(--radius-full);background:var(--c-bg-secondary);color:#fff;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity var(--t-base),transform var(--t-base),visibility var(--t-base),background var(--t-fast),border-color var(--t-fast);box-shadow:var(--shadow-md);}
.iq-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);}
.iq-top:hover{background:var(--c-accent-red);border-color:var(--c-accent-red);box-shadow:0 0 26px var(--c-glow-red);}
.iq-top:focus-visible{outline:2px solid var(--c-accent-blue);outline-offset:2px;}
.iq-top svg{display:block;}
@media (max-width:640px){.iq-top{right:1rem;bottom:1rem;width:42px;height:42px;}}
@media (prefers-reduced-motion:reduce){.iq-top{transition:opacity var(--t-fast),visibility var(--t-fast);transform:none;}.iq-top.is-visible{transform:none;}}
