/* Media Impresa Footer V56 — ricostruito dal layout approvato */
.mediaFooter{position:relative;background:#000;color:#929292;padding:92px 0 34px;margin-top:0;font-family:inherit;isolation:isolate}.footerWave{position:absolute;left:0;right:0;top:-142px;height:145px;overflow:hidden;pointer-events:none}.footerWave svg{width:100%;height:100%;display:block}.footerV56Grid{display:grid;grid-template-columns:1.05fr 1.3fr 1.05fr 2fr;gap:54px;align-items:start}.footerCol h3,.footerNewsletter h3{color:#f4f4f4;font-size:14px;line-height:1.2;letter-spacing:.02em;font-weight:850;margin:0 0 28px}.footerCol ul{list-style:none;padding:0;margin:0}.footerCol li{font-size:15px;line-height:1.9;color:#9b9b9b}.footerCol a,.footerNewsletter a{color:inherit;text-decoration:none;transition:.2s}.footerCol a:hover,.footerNewsletter a:hover{color:#f6a800}.footerNewsletter{padding-left:28px;border-left:1px solid #292929}.newsletterForm{display:grid;gap:17px}.newsletterForm>input{box-sizing:border-box;width:100%;height:42px;border:1px solid #777;border-radius:24px;background:#000;color:#eee;padding:0 19px;outline:none;font:inherit;font-size:13px}.newsletterForm>input:focus{border-color:#f6a800;box-shadow:0 0 0 3px rgba(246,168,0,.12)}.newsletterForm>input::placeholder{color:#777}.newsletterPrivacy{display:flex;gap:8px;align-items:flex-start;font-size:11px;line-height:1.4;color:#777}.newsletterPrivacy input{margin-top:2px;accent-color:#f6a800}.newsletterForm button{justify-self:start;border:0;border-radius:18px;background:#f6a800;color:#080808;font-weight:800;padding:13px 18px;cursor:pointer;font:inherit;font-size:13px;transition:.2s}.newsletterForm button:hover{transform:translateY(-1px);background:#ffb20b}.newsletterStatus{min-height:18px;margin:0;font-size:12px}.footerV56Bottom{display:grid;grid-template-columns:230px 1fr;gap:28px;align-items:center;margin-top:58px;padding-top:0}.footerBrand img{width:218px;max-width:100%;height:auto;display:block}.footerV56Bottom p{margin:0;font-size:13px;color:#818181}.srOnly{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.footerV56Grid{grid-template-columns:1fr 1fr;gap:42px}.footerNewsletter{padding-left:0;border-left:0;border-top:1px solid #292929;padding-top:28px}.footerV56Bottom{grid-template-columns:190px 1fr}.footerBrand img{width:180px}}
@media(max-width:640px){.mediaFooter{padding-top:68px}.footerWave{top:-78px;height:80px}.footerV56Grid{grid-template-columns:1fr;gap:34px}.footerCol h3,.footerNewsletter h3{margin-bottom:16px}.footerNewsletter{border-top:1px solid #292929}.footerV56Bottom{grid-template-columns:1fr;gap:20px;margin-top:42px}.footerBrand img{width:190px}.footerV56Bottom p{font-size:11px;line-height:1.6}.newsletterForm button{width:100%}}

/* V57 — CTA/footer overlap fix
   The black wave is decorative only and must never cover the CTA copy. */
.cta{position:relative;z-index:3;overflow:visible;padding-bottom:clamp(105px,8vw,145px)}
.cta .ctaInner{position:relative;z-index:4}
.mediaFooter{z-index:1}
.mediaFooter .footerWave{z-index:-1}
@media(max-width:900px){.cta{padding-bottom:105px}}
@media(max-width:640px){.cta{padding-bottom:78px}}

/* V60 — inner-page footer correction + universal form/chat UX */
.mediaFooter .footerWave{display:none}
.cta + .mediaFooter .footerWave{display:block}
.otherServiceV60{margin-top:10px}
.otherServiceV60[hidden]{display:none!important}
.otherServiceLabelV60{display:block;font-size:12px;font-weight:850;margin:0 0 6px;color:inherit}
.otherServiceInputV60{box-sizing:border-box;width:100%;border:1px solid #ccc;border-radius:10px;padding:12px;background:#fff;color:#111;font:inherit}
.malaikaLauncherV60{position:fixed;right:18px;bottom:18px;z-index:99990;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#0b0b0b;color:#fff;box-shadow:0 14px 42px rgba(0,0,0,.28);padding:10px 16px 10px 10px;display:flex;align-items:center;gap:10px;cursor:pointer;font:inherit;transition:transform .2s ease,box-shadow .2s ease}
.malaikaLauncherV60:hover{transform:translateY(-3px);box-shadow:0 18px 48px rgba(0,0,0,.36)}
.malaikaLauncherV60__spark{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#f6a400;color:#111;font-size:18px;font-weight:900}
.malaikaLauncherV60 span:last-child{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}.malaikaLauncherV60 b{font-size:13px}.malaikaLauncherV60 small{font-size:9px;color:#aaa;margin-top:4px;letter-spacing:.08em;text-transform:uppercase}
#malaikaV20.open ~ .malaikaLauncherV60{opacity:0;pointer-events:none}
@media(max-width:640px){.malaikaLauncherV60{right:12px;bottom:12px;padding:8px}.malaikaLauncherV60 span:last-child{display:none}.malaikaLauncherV60__spark{width:42px;height:42px}}

/* Media Impresa v7 — Sidass always-on animated AI robot */
.miBotIcon{position:relative;display:block;width:30px;height:30px;animation:miBotFloat 2.8s ease-in-out infinite;filter:drop-shadow(0 0 7px rgba(246,164,0,.35))}
.miBotFace{position:absolute;left:4px;top:8px;width:22px;height:17px;border:2px solid currentColor;border-radius:7px;display:block;box-sizing:border-box;background:rgba(255,255,255,.08);animation:miBotWork 3.2s ease-in-out infinite}
.miBotFace b{position:absolute;top:5px;width:3px;height:3px;border-radius:50%;background:currentColor;animation:miBotBlink 3.6s infinite}.miBotFace b:first-child{left:4px}.miBotFace b:nth-child(2){right:4px}.miBotFace em{position:absolute;left:7px;bottom:3px;width:6px;height:1.5px;border-radius:2px;background:currentColor;opacity:.72}
.miBotAntenna{position:absolute;left:14px;top:2px;width:2px;height:7px;background:currentColor;border-radius:2px;transform-origin:bottom;animation:miBotAntenna 1.7s ease-in-out infinite}.miBotAntenna:before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:#f6a400;left:-1.5px;top:-2px;box-shadow:0 0 0 0 rgba(246,164,0,.65);animation:miBotBeacon 1.7s infinite}
.miBotSignal{position:absolute;border:1.5px solid #f6a400;border-left:0;border-bottom:0;border-radius:0 10px 0 0;opacity:0;transform:rotate(45deg)}.miBotSignal1{width:7px;height:7px;right:-2px;top:4px;animation:miBotSignal 1.7s .15s infinite}.miBotSignal2{width:11px;height:11px;right:-6px;top:0;animation:miBotSignal 1.7s .45s infinite}
.malaikaLauncherV60__spark{overflow:visible!important;background:linear-gradient(145deg,#ffbd35,#f39a00)!important;color:#0b0b0b!important;box-shadow:0 0 0 0 rgba(246,164,0,.45);animation:miBotHalo 2.2s ease-out infinite!important}.malaikaLauncherV60{isolation:isolate}.malaikaLauncherV60:before{content:"";position:absolute;inset:-5px;border-radius:999px;border:1px solid rgba(246,164,0,.26);opacity:.5;animation:miBotOuter 3s ease-in-out infinite;pointer-events:none}.malaikaLauncherV60 small{color:#f6a400!important}.malaikaLauncherV60:hover .miBotIcon{animation-duration:1.2s}
.mvAvatar{overflow:visible!important;background:linear-gradient(145deg,#ffbd35,#f39a00)!important;color:#111!important}.mvAvatar .miBotIcon{width:31px;height:31px}.mvAvatar:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#39d98a;right:0;bottom:1px;border:2px solid #080808;box-shadow:0 0 10px #39d98a;animation:miBotOnline 1.6s ease-in-out infinite}.mvAvatar{position:relative}
@keyframes miBotFloat{0%,100%{transform:translateY(1px) rotate(-1deg)}50%{transform:translateY(-2px) rotate(1deg)}}@keyframes miBotWork{0%,100%{transform:translateX(0)}25%{transform:translateX(1px)}50%{transform:translateX(-1px)}75%{transform:translateX(.5px)}}@keyframes miBotBlink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.12)}}@keyframes miBotAntenna{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes miBotBeacon{0%{box-shadow:0 0 0 0 rgba(246,164,0,.65)}70%{box-shadow:0 0 0 7px rgba(246,164,0,0)}100%{box-shadow:0 0 0 0 rgba(246,164,0,0)}}@keyframes miBotSignal{0%,25%{opacity:0;transform:rotate(45deg) scale(.65)}45%{opacity:1}75%,100%{opacity:0;transform:rotate(45deg) scale(1.15)}}@keyframes miBotHalo{0%{box-shadow:0 0 0 0 rgba(246,164,0,.38)}70%{box-shadow:0 0 0 11px rgba(246,164,0,0)}100%{box-shadow:0 0 0 0 rgba(246,164,0,0)}}@keyframes miBotOuter{50%{transform:scale(1.035);opacity:.9}}@keyframes miBotOnline{50%{opacity:.5;transform:scale(.78)}}
@media(prefers-reduced-motion:reduce){.miBotIcon,.miBotFace,.miBotAntenna,.miBotAntenna:before,.miBotSignal,.malaikaLauncherV60__spark,.malaikaLauncherV60:before,.mvAvatar:after{animation-duration:5s!important}}

/* Align footer content with the 1500px page/portfolio container. */
body .mediaFooter > .wrap{width:calc(100% - 48px)!important;max-width:1500px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box}
@media(max-width:700px){body .mediaFooter > .wrap{width:calc(100% - 36px)!important}}

/* Keep a gentle logo light pulse when reduced motion is requested. */
@keyframes miFooterLogoLight{0%,100%{opacity:1}50%{opacity:.55}}
@media(prefers-reduced-motion:reduce){body .mediaFooter .footerBrand .mi-footer-vector .mi-logo-star{animation:miFooterLogoLight 3.6s ease-in-out infinite!important;transform:none!important;filter:none!important}}
