/* Compact footer with shared alignment and readable social links. */
.footer{padding:48px 0 24px}
.footer__grid{gap:28px;align-items:start}
.footer__brand img{display:block;width:220px;max-width:100%}
.footer__brand p,.footer__grid>div>p{font-size:12px;line-height:1.9;color:rgba(255,255,255,.72);margin:14px 0 0}
.footer__grid h3{font-size:13px;line-height:1.6;margin:0 0 12px}
.footer__grid>div:not(.footer__brand)>a{font-size:12px;line-height:1.8;margin:0;padding:7px 0;color:rgba(255,255,255,.76)}
.footer .instagram-icon-link{color:rgba(255,255,255,.9)!important;border-color:rgba(255,255,255,.35)!important;margin:16px 0 0!important;padding:0!important}
.footer .instagram-icon-link:hover{background:rgba(255,255,255,.1)}
.footer__grid>div>a.footer-button{padding:9px 18px;min-height:40px;text-align:center}
.footer__bottom{align-items:center;gap:20px;margin-top:36px;padding:18px 0 0;font-size:11px;color:rgba(255,255,255,.65)}
.footer__bottom>p{line-height:1.8}
.footer__signature{justify-self:start;gap:10px;padding:0;transform:none;color:inherit}
.footer__signature>span{font-size:10px;line-height:1.8}
.footer__signature-logo{width:82px;height:auto}
@media(min-width:48rem) and (max-width:63.99rem){
 .footer__grid{grid-template-columns:1.3fr 1fr 1fr;gap:24px}
 .footer__grid>div:last-child{grid-column:1/-1;display:flex;align-items:center;gap:16px}
 .footer__grid>div:last-child h3,.footer__grid>div:last-child p{margin:0}
 .footer__grid>div:last-child .instagram-icon-link{margin:0!important}
 .footer__grid>div:last-child .footer-button{margin:0!important;padding:8px 16px}
}
@media(max-width:47.99rem){
 .footer{padding:32px 0 22px}
 .footer .shell{width:calc(100% - 48px)}
 .footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;text-align:center;justify-items:stretch}
 .footer__grid>div{align-items:center;min-width:0}
 .footer__brand,.footer__contact{grid-column:1/-1;align-items:center!important;text-align:center}
 .footer__brand img{width:192px;margin-inline:auto}
 .footer__brand p{max-width:30ch;margin:12px auto 0;font-size:12px;line-height:1.9;color:rgba(255,255,255,.72)}
 .footer__grid h3{font-size:12px;font-weight:600;margin-bottom:8px;color:#fff}
 .footer__grid>div:not(.footer__brand)>a{margin-inline:auto;font-size:12px;min-height:40px;padding:8px 0}
 .footer__grid .footer__contact{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:4px 18px;align-items:center!important;justify-items:start;padding:20px 0;border-top:1px solid rgba(255,255,255,.18);text-align:start}
 .footer__contact h3{grid-column:1;grid-row:1;margin:0}
 .footer__grid>div.footer__contact>p{grid-column:1;grid-row:2;max-width:30ch;margin:0;text-align:start;font-size:11px;line-height:1.9}
 .footer .footer__contact .instagram-icon-link{grid-column:2;grid-row:1/3;margin:0!important;min-height:44px;width:44px!important;height:44px;border-radius:50%}
 .footer__bottom{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px 12px;margin-top:0;padding-top:16px;direction:ltr;text-align:center}
 .footer__bottom>p:first-child{grid-column:2;grid-row:1;justify-self:end;text-align:right;align-self:center;margin:0;font-size:10px}
 .footer__bottom>p:nth-child(2){grid-column:1;grid-row:1;justify-self:start;align-self:center;margin:0;font-size:10px;letter-spacing:.04em}
 .footer__bottom>*{width:auto}
 .footer__signature{grid-column:1/-1;grid-row:2;justify-self:center;justify-content:center;align-self:center;gap:10px;padding:0}
 .footer__signature>span{font-size:10px;color:rgba(255,255,255,.6)}
 .footer__signature-logo{width:72px}
}

.footer__social{display:flex;flex-direction:row;align-items:center;gap:10px;direction:ltr;margin-top:16px}
.footer .footer__social .instagram-icon-link,.footer .footer-social-link{display:grid!important;place-items:center;flex:0 0 44px;width:44px!important;height:44px;min-height:44px;padding:0!important;margin:0!important;border:1px solid rgba(255,255,255,.35);border-radius:50%;color:rgba(255,255,255,.9)!important}
.footer-social-link svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.footer .footer-social-link:hover{background:rgba(255,255,255,.1)}
@media(min-width:48rem) and (max-width:63.99rem){.footer__social{margin-top:0}}
@media(max-width:47.99rem){.footer__grid .footer__contact{grid-template-columns:minmax(0,1fr) 98px;column-gap:16px}.footer__social{grid-column:2;grid-row:1/3;margin:0}.footer .footer__social .instagram-icon-link{margin:0!important}}
.footer .footer__social .footer__whatsapp{border-color:transparent;background:transparent;overflow:hidden}
.footer .footer__social .footer__whatsapp:hover{opacity:.8;background:transparent}
