/* TikTac mascot system - home and institutional pages - 2026-10-31 */
#tt-live-mascot,.tt-live-mascot,.tt-panel-mascot{display:none!important}
.tt-section-mascot{width:210px;height:210px;flex:0 0 210px;background-image:url('/assets/mascots/tiktac-mascots-sprite.webp?v=20261031-rollout2');background-repeat:no-repeat;background-size:500% 300%;background-color:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 12px 16px rgba(2,34,64,.18));animation:ttPageMascotIdle 4.5s ease-in-out infinite}
.tt-section-mascot::after{display:none!important}
.tt-section-mascot.hero{position:absolute;right:-28px;top:-18px;z-index:6;width:250px;height:250px;flex-basis:250px;background-position:0 0}
.tt-section-mascot.welcome{background-position:25% 0}
.tt-section-mascot.present{background-position:50% 0}
.tt-section-mascot.agenda{background-position:75% 0}
.tt-section-mascot.calendar{background-position:100% 0}
.tt-section-mascot.messages{background-position:0 50%}
.tt-section-mascot.clients{background-position:25% 50%}
.tt-section-mascot.services{background-position:50% 50%}
.tt-section-mascot.finance{background-position:75% 50%}
.tt-section-mascot.security{background-position:100% 50%}
.tt-section-mascot.alert{background-position:0 100%}
.tt-section-mascot.success{background-position:25% 100%}
.tt-section-mascot.hotel{background-position:50% 100%}
.tt-section-mascot.confidence{background-position:75% 100%}
.tt-section-mascot.neutral{background-position:100% 100%}
.tt-mascot-row{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 0 22px}
.tt-mascot-row.reverse{flex-direction:row-reverse}
.tt-mascot-note{max-width:390px;padding:14px 17px;border:1px solid #d7e7f2;border-radius:18px;background:#fff;color:#17385f;font:700 14px/1.45 Inter,system-ui,sans-serif;box-shadow:0 12px 30px rgba(12,52,113,.09)}
.tt-page-mascot-card{display:flex;float:right;align-items:center;gap:16px;margin:-18px 0 22px 26px;min-width:330px;max-width:470px;padding:10px 16px 10px 10px;border:1px solid #d7e7f3;border-radius:28px;background:linear-gradient(135deg,#fff,#effbff);box-shadow:0 16px 38px rgba(12,52,113,.13)}
.tt-page-mascot-figure{width:150px;height:150px;flex:0 0 150px;background-image:url('/assets/mascots/tiktac-mascots-sprite.webp?v=20261031-rollout2');background-repeat:no-repeat;background-size:500% 300%;filter:drop-shadow(0 10px 13px rgba(12,52,113,.15));animation:ttPageMascotIdle 4.2s ease-in-out infinite}
.tt-page-mascot-copy{font:700 13px/1.45 Inter,system-ui,sans-serif;color:#153457}
.tt-page-mascot-copy b{display:block;font-size:16px;color:#087d78;margin-bottom:4px}
.tt-page-mascot-copy span{display:block}
@keyframes ttPageMascotIdle{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(1deg)}}
@media(max-width:900px){.tt-section-mascot{width:150px;height:150px;flex-basis:150px}.tt-section-mascot.hero{width:190px;height:190px;right:0;top:0}.tt-mascot-note{font-size:13px}.tt-page-mascot-card{min-width:250px;max-width:360px}.tt-page-mascot-figure{width:120px;height:120px;flex-basis:120px}}
@media(max-width:620px){.tt-mascot-row,.tt-mascot-row.reverse{flex-direction:column;margin-bottom:18px;gap:8px}.tt-section-mascot{width:158px;height:158px;flex-basis:158px}.tt-section-mascot.hero{width:170px;height:170px;right:12px;top:6px}.tt-mascot-note{max-width:none;text-align:center}.tt-page-mascot-card{float:none;width:100%;max-width:none;min-width:0;margin:0 0 22px;justify-content:center}.tt-page-mascot-figure{width:128px;height:128px;flex-basis:128px}}
@media(prefers-reduced-motion:reduce){.tt-section-mascot,.tt-page-mascot-figure{animation:none!important}}
/* TikTac institutional mascot aliases v4 - sprite only */
.tt-section-mascot{background-image:url('/assets/mascots/tiktac-mascots-sprite.webp?v=20261031-rollout2')!important;background-repeat:no-repeat!important;background-size:500% 300%!important}
.tt-section-mascot.hero{background-position:0 0!important}
.tt-section-mascot.welcome{background-position:25% 0!important}
.tt-section-mascot.present{background-position:50% 0!important}
.tt-section-mascot.agenda{background-position:75% 0!important}
.tt-section-mascot.calendar{background-position:100% 0!important}
.tt-section-mascot.messages{background-position:0 50%!important}
.tt-section-mascot.clients{background-position:25% 50%!important}
.tt-section-mascot.services{background-position:50% 50%!important}
.tt-section-mascot.finance{background-position:75% 50%!important}
.tt-section-mascot.security{background-position:100% 50%!important}
.tt-section-mascot.alert{background-position:0 100%!important}
.tt-section-mascot.success{background-position:25% 100%!important}
.tt-section-mascot.hotel{background-position:50% 100%!important}
.tt-section-mascot.confidence{background-position:75% 100%!important}
.tt-section-mascot.neutral{background-position:100% 100%!important}
