
/* Footer system */
.site-footer{position:relative;overflow:hidden;background:radial-gradient(circle at 16% 10%,color-mix(in oklch,var(--red-650) 18%,transparent),transparent 30%),linear-gradient(180deg,var(--blue-900),var(--blue-950));color:var(--white);border-top:1px solid color-mix(in oklch,var(--white) 10%,transparent)}
.site-footer:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.13;background-image:radial-gradient(circle at 1px 1px,color-mix(in oklch,var(--white) 32%,transparent) 1px,transparent 0);background-size:18px 18px}
.footer__marquee{display:flex;gap:2rem;white-space:nowrap;overflow:hidden;border-bottom:1px solid color-mix(in oklch,var(--white) 10%,transparent);color:color-mix(in oklch,var(--white) 20%,transparent);font-family:Gabarito,Afacad,sans-serif;font-size:clamp(3.2rem,8vw,8.5rem);line-height:.8;letter-spacing:-.08em;padding:1.1rem 0 .9rem;transform:translateX(-2vw)}
.footer__marquee span{flex:0 0 auto}
.footer__inner{position:relative;z-index:1;max-width:1320px;margin:0 auto;padding:clamp(3rem,6vw,5.5rem) clamp(1rem,5vw,4rem) 1.4rem}
.footer__hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(1.5rem,4vw,4rem);align-items:end;padding-bottom:clamp(2rem,4vw,3.5rem);border-bottom:1px solid color-mix(in oklch,var(--white) 12%,transparent)}
.footer__brand{display:inline-flex;background:var(--white);border-radius:18px;padding:.45rem .65rem;margin-bottom:1.4rem;box-shadow:inset 0 1px 0 color-mix(in oklch,var(--white) 24%,transparent)}
.footer__brand img{width:clamp(190px,18vw,260px);height:auto;display:block}
.footer__hero h2{font-family:Gabarito,Afacad,sans-serif;font-size:clamp(2.6rem,6vw,6.7rem);line-height:.88;letter-spacing:-.08em;max-width:950px;margin:0;text-wrap:balance}
.footer__actions{display:grid;gap:.75rem;min-width:min(360px,100%)}
.footer__actions .button{width:100%;min-height:54px}
.footer__grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:1px;margin-top:clamp(1.5rem,3vw,2.8rem);background:color-mix(in oklch,var(--white) 12%,transparent);border:1px solid color-mix(in oklch,var(--white) 12%,transparent)}
.footer__panel{background:color-mix(in oklch,var(--blue-950) 70%,transparent);padding:clamp(1.15rem,2.5vw,2rem);display:flex;flex-direction:column;gap:.68rem;min-height:230px}
.footer__label{margin:0 0 .55rem;color:var(--red-650);font-size:.78rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.footer__panel a{width:max-content;max-width:100%;color:color-mix(in oklch,var(--white) 84%,transparent);font-weight:800;text-decoration:none;border-bottom:1px solid transparent;padding-bottom:.08rem;transition:color 180ms var(--ease-out),border-color 180ms var(--ease-out),transform 180ms var(--ease-out)}
.footer__panel a:hover{color:var(--white);border-color:var(--red-650);transform:translateX(3px)}
.footer__panel p:not(.footer__label){max-width:460px;margin:.65rem 0 0;color:color-mix(in oklch,var(--white) 58%,transparent);line-height:1.45}
.footer__bottom{display:flex;justify-content:space-between;gap:1rem;padding-top:1.25rem;color:color-mix(in oklch,var(--white) 48%,transparent);font-size:.92rem;font-weight:700}
.footer__bottom p{margin:0}
@media(max-width:900px){.footer__hero,.footer__grid{grid-template-columns:1fr}.footer__actions{min-width:0}.footer__panel{min-height:auto}.footer__bottom{display:grid}.footer__marquee{font-size:clamp(2.7rem,14vw,6rem)}}
@media(max-width:620px){.footer__inner{padding-inline:1rem}.footer__brand img{width:190px}.footer__hero h2{font-size:clamp(2.35rem,12vw,4rem)}.footer__grid{margin-top:1.25rem}.footer__panel{padding:1.15rem}.footer__marquee{padding:.8rem 0 .65rem}}
