.site-footer{
padding:72px 0 26px;
--footer-title-color:#f8fafc;
--footer-text-color:#94a3b8;
--footer-link-color:#cbd5e1;
--footer-link-hover-color:#ffffff;
--footer-logo-width:180px;
--footer-logo-width-mobile:140px;
--footer-logo-max-height:72px;
--footer-logo-margin-bottom:0px;
--footer-logo-align:flex-start;
--footer-logo-text-align:left;
color:var(--footer-text-color);
}
.footer-shell{display:block}
.footer-container{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:clamp(26px,3.2vw,44px);
align-items:start;
margin-bottom:clamp(30px,4.2vw,46px)
}
.footer-col{
display:flex;
flex-direction:column;
gap:13px;
min-width:0
}
.footer-brand-stack{display:flex;flex-direction:column;gap:14px;align-items:var(--footer-logo-align);text-align:var(--footer-logo-text-align)}
.footer-logo{width:min(var(--footer-logo-width),100%);max-width:100%;max-height:var(--footer-logo-max-height);height:auto;display:block;object-fit:contain;align-self:var(--footer-logo-align);margin-bottom:var(--footer-logo-margin-bottom)}
.footer-brand{width:100%;color:var(--footer-title-color);font-size:24px;font-weight:800;letter-spacing:-.03em;line-height:1.2;margin:0}
.footer-desc{font-size:14px;line-height:1.82;max-width:320px;margin:0;color:var(--footer-text-color)}
.footer-contact{
display:flex;
flex-direction:column;
gap:6px;
margin-top:2px;
font-size:12px;
line-height:1.45;
color:var(--footer-text-color)
}
.footer-contact span{
display:block;
word-break:break-word
}
.footer-social{display:flex;gap:10px;padding-top:6px}
.footer-social-link{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:var(--footer-link-color);transition:transform var(--dur-fast,.18s) var(--ease,ease),background-color var(--dur,.22s) var(--ease,ease),color var(--dur,.22s) var(--ease,ease)}
.footer-social-link:hover{background:rgba(255,255,255,.14);color:var(--footer-link-hover-color);transform:translateY(-2px)}
.footer-heading{
color:var(--footer-title-color);
font-size:12px;
font-weight:700;
letter-spacing:.1em;
margin:0 0 12px;
text-transform:uppercase
}
.footer-nav{display:flex;flex-direction:column;gap:10px}
.footer-nav-tight{gap:10px}
.footer-link{
display:inline-flex;
align-items:center;
gap:6px;
width:fit-content;
font-size:14px;
line-height:1.62;
transition:opacity var(--dur,.22s) var(--ease,ease),color var(--dur,.22s) var(--ease,ease),transform var(--dur-fast,.18s) var(--ease,ease);
text-decoration:none;
color:var(--footer-link-color)
}
.footer-link:hover{opacity:1;color:var(--footer-link-hover-color);transform:translateX(2px)}
.footer-promises{display:flex;flex-direction:column;gap:11px;font-size:14px}
.footer-promises span{display:flex;align-items:flex-start;gap:8px;line-height:1.58;color:var(--footer-text-color)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.footer-copy{font-size:12px;color:var(--footer-text-color);margin:0}
.footer-powered{font-size:11px;color:var(--footer-text-color);margin:0}
.footer-storly{color:var(--footer-link-color);font-weight:600;text-decoration:none;transition:color var(--dur-fast,.18s) var(--ease,ease)}
.footer-storly:hover{color:var(--footer-link-hover-color)}
@media (max-width: 1024px){
.site-footer{padding-top:64px}
.footer-container{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 768px){
.site-footer{padding-top:56px}
.footer-container{
grid-template-columns:1fr;
gap:30px
}
.footer-logo{width:min(var(--footer-logo-width-mobile,var(--footer-logo-width)),100%)}
.footer-bottom{justify-content:flex-start;align-items:flex-start}
}
