/* 2026-10-03 — hero service CTA appears only on hover or keyboard focus, in every language. */
.heroServiceCard .svcMore{
 position:absolute!important;left:10px!important;right:10px!important;bottom:26px!important;
 margin-top:0!important;padding:9px 6px!important;border-radius:7px!important;
 background:#f6b51b!important;color:#111!important;
 opacity:0!important;visibility:hidden!important;pointer-events:none!important;
 transform:translateY(18px)!important;
 transition:opacity .25s ease,transform .25s ease,visibility .25s ease!important;
}
.heroServiceCard:hover .svcMore,.heroServiceCard:focus-visible .svcMore{
 opacity:1!important;visibility:visible!important;transform:translateY(0)!important;
}
@media(prefers-reduced-motion:reduce){.heroServiceCard .svcMore{transition:none!important;transform:none!important}}
/* Media Impresa v93 — infinite motion + premium language selector */
header:not(.mvHead) .lang, body>header .lang{
 color-scheme:dark!important;background-color:#111!important;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.025))!important;
 background-repeat:no-repeat!important;background-position:right 16px center,center!important;background-size:12px 8px,100% 100%!important;
 color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;-webkit-text-fill-color:#fff!important;
 appearance:none!important;-webkit-appearance:none!important;min-width:96px!important;padding-left:16px!important;padding-right:40px!important;
}
header:not(.mvHead) .lang option, body>header .lang option{background:#111!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
/* Keep the intentionally infinite marquees moving, including on systems with Reduce Motion enabled. */
.miInfinityTrack{animation:miStatsMarquee 30s linear infinite!important;animation-play-state:running!important}
.miInfinityStats:hover .miInfinityTrack{animation-play-state:running!important}
.clientMarqueeV58__track{animation:clientMarqueeV58 38s linear infinite!important;animation-play-state:running!important}
.clientMarqueeV58__viewport:hover .clientMarqueeV58__track{animation-play-state:running!important}
@media(max-width:760px){.clientMarqueeV58__track{animation-duration:30s!important}}
@media(max-width:700px){.miInfinityTrack{animation-duration:24s!important}}
@media(prefers-reduced-motion:reduce){
 .miInfinityTrack{animation:miStatsMarquee 30s linear infinite!important;animation-play-state:running!important}
 .clientMarqueeV58__track{animation:clientMarqueeV58 38s linear infinite!important;animation-play-state:running!important}
}
/* v94 — visual language flags (CSS-drawn, independent of emoji/font support) */
/* Sidass chat: keep automated replies, choices, hint and composer in separate flex rows. */
#malaikaV20{box-sizing:border-box!important;flex-direction:column!important;overflow:hidden!important}
#malaikaV20 .mvHead,#malaikaV20 .mvProgress,#malaikaV20 .mvChoices,#malaikaV20 .mvHint,#malaikaV20 .mvForm{position:relative!important;inset:auto!important;transform:none!important;z-index:auto!important;flex:0 0 auto!important;min-height:0!important}
#malaikaV20 .mvMsgs{position:relative!important;inset:auto!important;flex:1 1 0!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable}
#malaikaV20 .mvChoices{max-height:min(24vh,165px)!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;padding-bottom:10px!important}
#malaikaV20 .mvHint{display:block!important;flex-shrink:0!important;white-space:normal!important;line-height:1.4!important;padding:9px 14px!important;background:#f5f5f2!important}
#malaikaV20 .mvForm{display:flex!important;flex-shrink:0!important;box-sizing:border-box!important}
#malaikaV20 .mvForm input{min-width:0!important;max-width:100%!important}
@media(max-width:900px){
 #malaikaV20 .mvMsgs{flex:1 1 0!important;min-height:0!important;overflow-y:auto!important}
 #malaikaV20 .mvChoices{flex:0 0 auto!important;max-height:min(25dvh,180px)!important;overflow-y:auto!important}
 #malaikaV20 .mvHint{flex:0 0 auto!important;position:relative!important;inset:auto!important}
 #malaikaV20 .mvForm{flex:0 0 auto!important;position:relative!important;inset:auto!important;padding-bottom:max(10px,env(safe-area-inset-bottom))!important}
}

/* 2026-10-03 — hero service CTA appears only on hover or keyboard focus, in every language. */
.heroServiceCard .svcMore{
 position:absolute!important;left:10px!important;right:10px!important;bottom:26px!important;
 margin-top:0!important;padding:9px 6px!important;border-radius:7px!important;
 background:#f6b51b!important;color:#111!important;
 opacity:0!important;visibility:hidden!important;pointer-events:none!important;
 transform:translateY(18px)!important;
 transition:opacity .25s ease,transform .25s ease,visibility .25s ease!important;
}
.heroServiceCard:hover .svcMore,.heroServiceCard:focus-visible .svcMore{
 opacity:1!important;visibility:visible!important;transform:translateY(0)!important;
}
@media(prefers-reduced-motion:reduce){.heroServiceCard .svcMore{transition:none!important;transform:none!important}}

/* 2026-10-04 — home first-contact offer, shared by IT/EN/FR. */
section.cta:has(.ctaInner [data-i="ctaH"]){padding:52px 0!important;min-height:0!important;height:auto!important}
section.cta .ctaInner{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:24px!important;text-align:center!important}
section.cta .ctaInner>div{width:100%;min-width:0;max-width:960px;margin:0 auto}
section.cta [data-i="first"]{font-size:11px;line-height:1.4;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}
section.cta h2[data-i="ctaH"]{font-size:clamp(30px,3.25vw,46px)!important;line-height:1.12!important;letter-spacing:-.045em!important;margin:0!important;text-wrap:balance}
section.cta .ctaInner button[data-i="start"]{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 26px!important;margin:0!important;border:1px solid rgba(9,9,9,.08);border-radius:14px;background:#fff;color:#090909;font-size:14px;font-weight:850;line-height:1.4;box-shadow:0 6px 18px rgba(79,49,0,.12);transition:transform .2s ease,box-shadow .2s ease;animation:miHomeOfferGlow 5s ease-in-out infinite}
section.cta .ctaInner button[data-i="start"]::after{content:"";position:absolute;inset:-50% auto -50% -65%;width:38%;background:linear-gradient(90deg,transparent,rgba(246,164,0,.18),transparent);transform:skewX(-20deg);pointer-events:none;animation:miHomeOfferShine 5s ease-in-out infinite}
section.cta .ctaInner button[data-i="start"]:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(79,49,0,.2)}
section.cta .ctaInner button[data-i="start"]:focus-visible{outline:3px solid #090909;outline-offset:5px}
section.cta .ctaInner button[data-i="start"]:active{transform:translateY(0)}
@keyframes miHomeOfferGlow{0%,70%,100%{box-shadow:0 6px 18px rgba(79,49,0,.12)}35%{box-shadow:0 7px 24px rgba(79,49,0,.22),0 0 0 5px rgba(255,255,255,.16)}}
@keyframes miHomeOfferShine{0%,65%{left:-65%;opacity:0}70%{opacity:1}90%,100%{left:130%;opacity:0}}
@media(max-width:600px){section.cta:has(.ctaInner [data-i="ctaH"]){padding:36px 0!important}section.cta .ctaInner{gap:22px!important}section.cta .ctaInner>div{max-width:480px}section.cta h2[data-i="ctaH"]{font-size:clamp(28px,8vw,36px)!important}section.cta [data-i="first"]{font-size:10px;letter-spacing:.12em}}
@media(prefers-reduced-motion:reduce){section.cta .ctaInner button[data-i="start"],section.cta .ctaInner button[data-i="start"]::after{animation:none!important;transition:none!important}section.cta .ctaInner button[data-i="start"]:hover{transform:none}}

/* 2026-10-08 — keep the language chevron visible during pointer and keyboard interaction. */
header:not(.mvHead) .lang:hover,header:not(.mvHead) .lang:focus,header:not(.mvHead) .lang:active,body>header .lang:hover,body>header .lang:focus,body>header .lang:active{
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.025))!important;
 background-repeat:no-repeat!important;background-position:right 16px center,center!important;background-size:12px 8px,100% 100%!important;
}
