footer.footer{padding:var(--spaziatura-xl) var(--spaziatura-lg) var(--spaziatura-md);padding-bottom:calc(var(--spaziatura-md) + env(safe-area-inset-bottom,0px));padding-left:calc(var(--spaziatura-lg) + env(safe-area-inset-left,0px));padding-right:calc(var(--spaziatura-lg) + env(safe-area-inset-right,0px));background-color:var(--colore-primario);color:var(--testo-bianco);margin-top:var(--spaziatura-md);flex-shrink:0;box-shadow:0 -.125rem .25rem rgba(0,0,0,.1);position:relative;z-index:1}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:75rem;margin:0 auto;gap:var(--spaziatura-xxl);column-gap:var(--spaziatura-xxl)}.footer-column{display:flex;flex-direction:column;align-items:flex-start}.footer-column h3{margin-bottom:var(--spaziatura-md);font-weight:500;font-size:.875rem;color:var(--testo-bianco);position:relative;text-transform:uppercase;letter-spacing:.0892857143em}.footer-link{display:flex;align-items:center;gap:var(--spaziatura-md);padding:var(--spaziatura-xs) 0;margin:0;text-decoration:none;color:var(--testo-bianco);font-weight:400;font-size:.875rem;transition:all var(--duration-short-4) cubic-bezier(.34,1.56,.64,1);position:relative;overflow:visible;line-height:1.5;transform-origin:center;will-change:transform;transform:translateZ(0);backface-visibility:hidden}.footer-link:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.2);transform:translate(-50%,-50%);transition:width var(--duration-medium-2) var(--easing-standard),height var(--duration-medium-2) var(--easing-standard),opacity var(--duration-medium-2) var(--easing-standard);opacity:0;pointer-events:none}.footer-link:active:before{width:12.5rem;height:12.5rem;opacity:1;transition:width var(--duration-short-2) var(--easing-standard),height var(--duration-short-2) var(--easing-standard),opacity var(--duration-short-2) var(--easing-standard)}.footer-link:hover{color:var(--testo-bianco);transform:translateY(-3px) scale(1.08) translateZ(0);text-shadow:var(--ombra-leggera)}.footer-link:focus-visible{color:var(--testo-bianco);outline:var(--border-normale) solid rgba(255,255,255,.5);outline-offset:.25rem;border-radius:var(--border-radius-piccolo);box-shadow:none!important;-webkit-box-shadow:none!important}.footer-column address{display:flex;flex-direction:column;gap:0;margin:0;padding:0;padding-left:var(--spaziatura-md);font-style:normal;align-items:flex-start;width:100%;text-align:left}.footer-contact{display:block;margin:var(--spaziatura-xs) 0;margin-left:0!important;margin-right:0!important;padding:0;padding-right:0!important;color:var(--testo-bianco);font-weight:400;font-size:.875rem;line-height:1.5;text-align:left;width:100%}.footer-contact-link{color:var(--testo-bianco);text-decoration:none;transition:color var(--duration-medium-2) ease,text-decoration var(--duration-medium-2) ease;display:inline-block;margin:0;padding:0}.footer-contact-link:hover{color:var(--testo-bianco);text-decoration:underline}footer.footer .content{margin-top:var(--spaziatura-xl);padding-top:var(--spaziatura-md);border-top:var(--border-sottile) solid rgba(255,255,255,.12);font-size:.75rem;color:var(--testo-bianco);text-align:center;font-weight:400;position:relative;z-index:1}@media screen and (max-width: 768px){footer.footer{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spaziatura-lg) var(--spaziatura-md);padding-bottom:calc(var(--spaziatura-md) + env(safe-area-inset-bottom,0px))}footer.footer .container{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.footer-grid{grid-template-columns:1fr;gap:var(--spaziatura-xl);width:100%;max-width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.footer-column{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%}.footer-column h3{text-align:center;width:100%;margin-bottom:var(--spaziatura-md)}.footer-column nav{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.footer-link{justify-content:center;text-align:center;width:100%}.footer-column address{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;text-align:center}.footer-contact{justify-content:center;text-align:center;width:100%}footer.footer .content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;margin-top:var(--spaziatura-lg)}}.chatbot-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:var(--z-index-modal);padding:var(--spaziatura-md);overflow-y:auto;font-family:Montserrat,sans-serif;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;overscroll-behavior-x:none;overscroll-behavior:contain;opacity:0;transition:opacity .25s cubic-bezier(.4,0,.2,1);will-change:opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-modal-overlay.is-open{opacity:1}.chatbot-modal{background:#fff;border-radius:1rem;width:95%;max-width:37.5rem;max-height:calc(90vh - 2rem);display:flex;flex-direction:column;box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);overflow:hidden;margin:auto;position:relative;font-family:Montserrat,sans-serif;transform:translateY(1.5rem) translateZ(0);-webkit-transform:translateY(1.5rem) translateZ(0);opacity:0;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .25s cubic-bezier(.4,0,.2,1);will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-modal-overlay.is-open .chatbot-modal,.chatbot-modal.animate-in{transform:translateY(0) translateZ(0);-webkit-transform:translateY(0) translateZ(0);opacity:1}.chatbot-modal *{font-family:Montserrat,sans-serif}.chatbot-modal .fas,.chatbot-modal .far,.chatbot-modal .fab,.chatbot-modal .fal,.chatbot-modal .fad,.chatbot-modal svg{font-family:"Font Awesome 6 Free"!important}.chatbot-modal-header{background:linear-gradient(135deg,var(--colore-primario) 0%,rgba(var(--colore-primario-rgb),.95) 100%);padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;color:#fff;box-shadow:0 .25rem .5rem rgba(0,0,0,.12);font-family:Montserrat,sans-serif;position:relative;overflow:hidden}.chatbot-modal-header:after{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:headerGlow 8s ease-in-out infinite;pointer-events:none}@keyframes headerGlow{0%,to{transform:translate(0) scale(1);opacity:.3}50%{transform:translate(-10%,-10%) scale(1.1);opacity:.5}}.chatbot-header-content{display:flex;align-items:center;gap:1rem}.chatbot-header-actions{display:flex;align-items:center;gap:.75rem}.chatbot-logo{width:4rem;height:4rem;border-radius:0;object-fit:contain;border:none;box-shadow:none;background:transparent;transition:transform .2s cubic-bezier(.4,0,.2,1),filter .2s cubic-bezier(.4,0,.2,1);position:relative;z-index:1;animation:logoFloat 3s ease-in-out infinite;aspect-ratio:1}@keyframes logoFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-.25rem) scale(1.02)}}.chatbot-logo:hover{transform:scale(1.1) rotate(5deg);filter:drop-shadow(0 .25rem .5rem rgba(0,0,0,.3))}.chatbot-title{margin:0;font-size:1.25rem;font-weight:500;color:#fff;font-family:Montserrat,sans-serif;letter-spacing:.009375em}.chatbot-subtitle{margin:.25rem 0 0;font-size:.875rem;color:rgba(255,255,255,.87);font-weight:400;font-family:Montserrat,sans-serif}.server-status{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500;white-space:nowrap;transition:background-color .2s cubic-bezier(.4,0,.2,1);border:none;font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.0892857143em}.server-status-checking{background:rgba(255,152,0,.2)}.server-status-checking .status-text{color:rgba(255,255,255,.87)}.server-status-online{background:rgba(76,175,80,.2)}.server-status-online .status-text{color:rgba(255,255,255,.87)}.server-status-offline{background:rgba(255,152,0,.2)}.server-status-offline .status-text{color:rgba(255,255,255,.87)}.status-indicator{width:.625rem;height:.625rem;border-radius:50%;display:inline-block;animation:statusPulse 2s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.server-status-checking .status-indicator{background:var(--colore-warning-chiaro);box-shadow:var(--ombra-led-giallo)}.server-status-online .status-indicator{background:var(--colore-successo);box-shadow:var(--ombra-led-verde)}.server-status-offline .status-indicator{background:var(--colore-warning-chiaro);box-shadow:var(--ombra-led-giallo)}.status-text{color:rgba(255,255,255,.87);font-weight:500;font-family:Montserrat,sans-serif}.tts-controls{display:flex;align-items:center;gap:.5rem;transform:translateZ(0);-webkit-transform:translateZ(0);transition:opacity .25s cubic-bezier(.25,.46,.45,.94),transform .35s cubic-bezier(.25,.46,.45,.94),max-width .35s cubic-bezier(.25,.46,.45,.94);will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.voice-selector{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.5rem .75rem;border-radius:20px;font-size:.85rem;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .2s ease;max-width:9.375rem;font-family:Montserrat,sans-serif}.voice-selector:hover{background:rgba(255,255,255,.3)}.voice-selector:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.voice-selector option{background:var(--colore-primario);color:var(--testo-bianco)}.chatbot-tts-btn{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:1rem;width:2.375rem;height:2.375rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;line-height:1;padding:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chatbot-tts-btn:hover{background:rgba(255,255,255,.3);transform:scale(1.1)}.chatbot-tts-btn.active{background:rgba(76,175,80,.3);border-color:rgba(76,175,80,.5);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.8}}.chatbot-stop-speech-btn{background:rgba(244,67,54,.3);border:1px solid rgba(244,67,54,.5);color:#fff;font-size:1rem;width:2.375rem;height:2.375rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;line-height:1;padding:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:blink 1s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.6}}.chatbot-stop-speech-btn:hover{background:rgba(244,67,54,.5);transform:scale(1.1)}.chatbot-stop-speech-btn:active{transform:scale(.95)}.chatbot-clear-chat-btn{background:transparent;border:none;color:rgba(255,255,255,.87);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);line-height:1;font-family:Montserrat,sans-serif;position:relative;overflow:visible;z-index:1;pointer-events:auto}.chatbot-clear-chat-icon{font-size:1.25rem;transition:transform .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);display:block;width:20px;height:20px;position:relative;z-index:2;pointer-events:none}.chatbot-clear-chat-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(244,67,54,.2);transform:translate(-50%,-50%);transition:width .6s,height .6s;pointer-events:none;z-index:0}.chatbot-clear-chat-btn:hover:before{width:300px;height:300px}.chatbot-clear-chat-btn:hover{background:rgba(244,67,54,.1)}.chatbot-clear-chat-btn:hover .chatbot-clear-chat-icon{transform:scale(1.2);color:#f44336}.chatbot-clear-chat-btn:active{background:rgba(244,67,54,.15)}.chatbot-clear-chat-btn:active .chatbot-clear-chat-icon{transform:scale(1.1)}.chatbot-clear-chat-btn:focus-visible{outline:2px solid rgba(244,67,54,.5);outline-offset:2px}.chatbot-close-btn{background:transparent;border:none;color:rgba(255,255,255,.87);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);line-height:1;font-family:Montserrat,sans-serif;position:relative;overflow:visible;z-index:1;pointer-events:auto}.chatbot-close-icon{font-size:1.5rem;transition:transform .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);display:block;position:relative;z-index:2;pointer-events:none}.chatbot-close-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.2);transform:translate(-50%,-50%);transition:width .6s,height .6s;pointer-events:none;z-index:0}.chatbot-close-btn:hover:before{width:300px;height:300px}.chatbot-close-btn:hover{background:rgba(255,255,255,.1)}.chatbot-close-btn:hover .chatbot-close-icon{transform:rotate(90deg) scale(1.2);color:#fff}.chatbot-close-btn:active{background:rgba(255,255,255,.15)}.chatbot-close-btn:active .chatbot-close-icon{transform:rotate(90deg) scale(1.1)}.chatbot-close-btn:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.chatbot-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1rem;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;overscroll-behavior-x:none;background:linear-gradient(to bottom,#fff,#fafafa);font-family:Montserrat,sans-serif;position:relative}.chatbot-messages:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(var(--colore-primario-rgb),.2) 50%,transparent 100%)}.chatbot-message{display:flex;gap:.75rem;align-items:flex-start;animation:messageSlide .3s cubic-bezier(.4,0,.2,1)}@keyframes messageSlide{0%{opacity:0;transform:translateY(8px) translateZ(0);-webkit-transform:translateY(8px) translateZ(0)}to{opacity:1;transform:translateY(0) translateZ(0);-webkit-transform:translateY(0) translateZ(0)}}.bot-message{align-self:flex-start;max-width:85%}.user-message{align-self:flex-end;flex-direction:row-reverse;max-width:80%}.message-avatar{width:48px;height:48px;border-radius:0;object-fit:contain;flex-shrink:0;border:none;box-shadow:none;background:transparent;aspect-ratio:1}.message-content{min-width:0;padding:10px 14px;border-radius:18px;box-shadow:0 1px 2px rgba(0,0,0,.1);font-family:Montserrat,sans-serif;position:relative;overflow:visible;overflow-wrap:break-word;word-break:normal;box-sizing:border-box;white-space:pre-wrap;text-align:left}.bot-message .message-content{background:#fff;color:rgba(0,0,0,.87);border-bottom-left-radius:4px;border:1px solid rgba(0,0,0,.08)}.user-message .message-content{background:var(--colore-primario);color:#fff;border-bottom-right-radius:4px;padding:10px 14px;line-height:1.5;box-shadow:0 1px 2px rgba(0,0,0,.15)}.message-content p{margin:0;font-size:.9375rem;line-height:1.5;font-weight:400;color:inherit;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;font-family:Montserrat,sans-serif}.user-message .message-content p{color:#fff;font-weight:400}.bot-message .message-content p{color:rgba(0,0,0,.87)}.message-speak-btn{background:var(--colore-primario);border:none;color:#fff;padding:6px 12px;border-radius:16px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:.75rem;font-weight:500;margin-top:8px;transition:background-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px rgba(0,0,0,.2);font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.0892857143em;position:relative;overflow:hidden}.message-speak-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.2);transform:translate(-50%,-50%);transition:width .6s,height .6s}.message-speak-btn:hover:before{width:300px;height:300px}.message-speak-btn:hover{background:rgba(var(--colore-primario-rgb),.9);box-shadow:0 4px 8px rgba(0,0,0,.24)}.message-speak-btn:active{box-shadow:0 1px 2px rgba(0,0,0,.2)}.message-speak-btn i{font-size:.875rem}.message-speak-btn.speaking{background:#f44336;animation:speakingPulse 1.5s ease-in-out infinite}@keyframes speakingPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.85}}.message-speak-btn.speaking:hover{background:#d32f2f}.message-delete-btn{background:rgba(255,255,255,.2);border:none;color:#fff;padding:6px;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-top:8px;transition:background .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);font-family:Montserrat,sans-serif;position:relative;overflow:hidden;flex-shrink:0}.message-delete-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .3s,height .3s}.message-delete-btn:hover:before{width:100%;height:100%}.message-delete-btn:hover{background:rgba(255,255,255,.3);transform:scale(1.1)}.message-delete-btn:active{transform:scale(.95)}.message-delete-btn svg{width:14px;height:14px;position:relative;z-index:1}.typing-indicator{color:rgba(0,0,0,.6);font-style:normal;animation:typingPulse 1.5s ease-in-out infinite;display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-family:Montserrat,sans-serif}@keyframes typingPulse{0%,to{opacity:.6}50%{opacity:1}}.score-alert{display:inline-block;padding:8px 16px;border-radius:4px;font-size:.75rem;font-weight:500;margin-bottom:8px;text-transform:uppercase;letter-spacing:.0892857143em;animation:scoreFadeIn .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px rgba(0,0,0,.2);font-family:Montserrat,sans-serif}@keyframes scoreFadeIn{0%{opacity:0;transform:translateY(-4px) translateZ(0);-webkit-transform:translateY(-4px) translateZ(0)}to{opacity:1;transform:translateY(0) translateZ(0);-webkit-transform:translateY(0) translateZ(0)}}.score-alert-green{background:#4caf50;color:#fff}.score-alert-yellow{background:#ff9800;color:#fff}.score-alert-red{background:#f44336;color:#fff}.chatbot-file-input{display:none}.chatbot-file-label{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,rgba(var(--colore-primario-rgb),.08),rgba(var(--colore-primario-rgb),.04));border:2px solid rgba(var(--colore-primario-rgb),.2);cursor:pointer;transition:transform .35s cubic-bezier(.25,.46,.45,.94),background .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);color:rgba(var(--colore-primario-rgb),.7);font-size:1.25rem;flex-shrink:0;position:relative;overflow:hidden;font-family:Montserrat,sans-serif;transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-file-label svg{width:20px;height:20px}.chatbot-file-label:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(0,0,0,.1);transform:translate(-50%,-50%);transition:width .6s,height .6s}.chatbot-file-label:hover:before{width:300px;height:300px}.chatbot-file-label:hover{background:linear-gradient(135deg,rgba(var(--colore-primario-rgb),.15),rgba(var(--colore-primario-rgb),.1));color:var(--colore-primario);border-color:var(--colore-primario);transform:scale(1.1) rotate(5deg);box-shadow:0 4px 8px rgba(var(--colore-primario-rgb),.2)}.chatbot-file-label:active{transform:scale(.95);background:linear-gradient(135deg,rgba(var(--colore-primario-rgb),.2),rgba(var(--colore-primario-rgb),.15))}.image-preview-container{position:absolute;bottom:100%;left:0;right:0;padding:12px 16px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,249,250,.98));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top-left-radius:12px;border-top-right-radius:12px;font-family:Montserrat,sans-serif;box-shadow:0 -4px 12px rgba(0,0,0,.1);z-index:10;display:flex;justify-content:center;align-items:center;gap:12px}.image-preview{position:relative;display:inline-block;max-width:100%;width:auto;border-radius:12px;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.12);border:2px solid rgba(var(--colore-primario-rgb),.25);transition:transform .2s ease,box-shadow .2s ease;background:#fff}.image-preview:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.15)}.image-preview img{width:100%;height:auto;display:block;max-height:150px;max-width:250px;object-fit:contain;background:#fff;padding:4px}.remove-image-btn{position:relative;background:#f44336;color:#fff;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;line-height:1;transition:background-color .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);padding:0;box-shadow:0 2px 8px rgba(244,67,54,.3);font-family:Montserrat,sans-serif;flex-shrink:0}.remove-image-btn svg{width:16px;height:16px}.remove-image-btn:hover{background:#d32f2f;transform:scale(1.1);box-shadow:0 4px 12px rgba(244,67,54,.4)}.remove-image-btn:active{transform:scale(.95);box-shadow:0 1px 4px rgba(244,67,54,.3)}.message-image-container{margin-bottom:.75rem;border-radius:16px;overflow:hidden;max-width:100%}.message-image{width:100%;max-width:300px;height:auto;border-radius:16px;display:block;aspect-ratio:1;object-fit:contain;box-shadow:0 4px 12px rgba(0,0,0,.1)}.chatbot-input-form{display:flex;padding:12px;background:#fff;border-top:1px solid rgba(0,0,0,.12);gap:.5rem;align-items:center;box-shadow:0 -2px 4px rgba(0,0,0,.08);font-family:Montserrat,sans-serif;pointer-events:auto!important;touch-action:manipulation;position:relative;z-index:10;flex-shrink:0}@media (max-width: 768px){.chatbot-input-form{position:sticky!important;bottom:0!important;z-index:100!important}}.chatbot-input{flex:1;padding:14px 16px;border:none;border-bottom:2px solid rgba(0,0,0,.42);border-radius:4px 4px 0 0;font-size:1rem;transition:border-color .2s cubic-bezier(.4,0,.2,1),background .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);font-family:Montserrat,sans-serif;background:linear-gradient(to bottom,transparent 0%,rgba(var(--colore-primario-rgb),.02) 100%);color:rgba(0,0,0,.87);line-height:1.5;outline:none!important;position:relative;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent;z-index:11}.chatbot-input::placeholder{color:rgba(0,0,0,.6)}.chatbot-input:hover{border-bottom-color:rgba(0,0,0,.87)}.chatbot-input:focus{border-bottom-color:var(--colore-primario);border-bottom-width:3px;padding-bottom:13px;background:linear-gradient(to bottom,transparent 0%,rgba(var(--colore-primario-rgb),.04) 100%);box-shadow:0 2px 4px rgba(var(--colore-primario-rgb),.1);outline:none!important}.chatbot-send-btn{background:linear-gradient(135deg,var(--colore-primario) 0%,rgba(var(--colore-primario-rgb),.9) 100%);border:none;color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .35s cubic-bezier(.25,.46,.45,.94),background .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);font-size:1.25rem;box-shadow:0 3px 5px rgba(0,0,0,.2),0 2px 2px rgba(0,0,0,.14);position:relative;overflow:hidden;font-family:Montserrat,sans-serif;transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-send-btn:not(:disabled){animation:sendPulse 2s ease-in-out infinite}@keyframes sendPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.85}}.chatbot-send-btn svg{width:18px;height:18px}.chatbot-send-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}.chatbot-send-btn:hover:before{width:300px;height:300px}.chatbot-send-btn:hover:not(:disabled){background:linear-gradient(135deg,rgba(var(--colore-primario-rgb),.95) 0%,var(--colore-primario) 100%);box-shadow:0 6px 10px rgba(var(--colore-primario-rgb),.4),0 4px 4px rgba(var(--colore-primario-rgb),.3);transform:translateY(-2px) scale(1.05)}.chatbot-send-btn:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 2px 4px rgba(0,0,0,.2),0 1px 2px rgba(0,0,0,.14)}.chatbot-send-btn:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}.chatbot-send-btn:disabled:before{display:none}.chatbot-messages{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.chatbot-messages::-webkit-scrollbar-thumb:hover{background:var(--sfondo-grigio-medio)}@media (max-width: 768px){.chatbot-modal-overlay{padding:0!important;align-items:stretch!important;justify-content:stretch!important;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:3000!important;overflow:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.chatbot-modal{width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;border-radius:0!important;margin:0!important;box-shadow:none!important;position:relative;display:flex;flex-direction:column;overflow:hidden;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1);will-change:opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-modal-overlay.is-open .chatbot-modal,.chatbot-modal.animate-in{opacity:1}.chatbot-modal:before{content:"";position:absolute;top:.75rem;left:50%;transform:translate(-50%);width:3rem;height:.375rem;background:rgba(0,0,0,.25);border-radius:.1875rem;z-index:10;transition:background .2s ease}.chatbot-modal.dragging:before{background:rgba(0,0,0,.4)}.chatbot-modal-header{padding:var(--spaziatura-lg) var(--spaziatura-md);padding-top:calc(var(--spaziatura-lg) + env(safe-area-inset-top,0px));padding-bottom:var(--spaziatura-md);position:relative;flex-shrink:0;z-index:1;display:flex;align-items:center;justify-content:space-between;min-height:fit-content;transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-modal.keyboard-open .chatbot-modal-header{padding:.5rem var(--spaziatura-sm);padding-top:calc(.5rem + env(safe-area-inset-top,0px));padding-bottom:.25rem;min-height:auto;transform:translateZ(0);-webkit-transform:translateZ(0)}.chatbot-modal.keyboard-open .chatbot-logo{transform:scale(.57) translateZ(0);-webkit-transform:scale(.57) translateZ(0);animation:none;transition:transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-title{transform:scale(.8) translateZ(0);-webkit-transform:scale(.8) translateZ(0);transform-origin:left center;transition:transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-subtitle,.chatbot-modal.keyboard-open .tts-controls,.chatbot-modal.keyboard-open .chatbot-clear-chat-btn{display:none}.chatbot-logo,.chatbot-title,.chatbot-subtitle{transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0)}.chatbot-header-content{gap:var(--spaziatura-md);flex:1;min-width:0;display:flex;align-items:center;overflow:hidden}.chatbot-logo{width:3.5rem;height:3.5rem;flex-shrink:0;transform:translateZ(0);-webkit-transform:translateZ(0);transition:transform .2s cubic-bezier(.4,0,.2,1);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-title{font-size:1.25rem;font-weight:600;line-height:1.3;transform:translateZ(0);-webkit-transform:translateZ(0);transition:transform .2s cubic-bezier(.4,0,.2,1);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-subtitle{font-size:.875rem;margin-top:.25rem;opacity:.9;transform:translateZ(0);-webkit-transform:translateZ(0);transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-header-actions{gap:var(--spaziatura-sm);flex-shrink:0;display:flex;align-items:center;flex-wrap:wrap}.server-status{font-size:.75rem;padding:.375rem .75rem;border-radius:1.25rem}.server-status .status-text{display:none}.server-status{padding:.5rem;min-width:auto;justify-content:center;align-items:center}.server-status .status-indicator{margin:0}.tts-controls{gap:var(--spaziatura-sm)}.voice-selector{font-size:.8125rem;padding:.5rem .75rem;max-width:8.75rem;border-radius:1.5rem}.chatbot-messages{padding:var(--spaziatura-md) var(--spaziatura-sm);gap:var(--spaziatura-md);max-height:calc(100vh - 10rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));max-height:calc(100svh - 10rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));scroll-padding-top:var(--spaziatura-md);scroll-padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;overscroll-behavior-x:none;scroll-behavior:smooth;will-change:scroll-position;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;position:relative;z-index:0;display:flex;flex-direction:column}.chatbot-modal.keyboard-open .chatbot-messages{max-height:calc(100svh - 9rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:var(--spaziatura-xs) var(--spaziatura-xs);gap:var(--spaziatura-xs);transform:translateZ(0);-webkit-transform:translateZ(0);scroll-behavior:smooth}.message-avatar{width:3rem;height:3rem;flex-shrink:0;transform:translateZ(0);-webkit-transform:translateZ(0);transition:transform .15s cubic-bezier(.4,0,.2,1);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-modal.keyboard-open .message-avatar{transform:scale(.67) translateZ(0);-webkit-transform:scale(.67) translateZ(0);transition:transform .15s cubic-bezier(.4,0,.2,1);backface-visibility:hidden;-webkit-backface-visibility:hidden}.message-content{font-size:.9375rem;padding:10px 14px;line-height:1.5;overflow:visible;position:relative;box-sizing:border-box}.chatbot-modal.keyboard-open .message-content{padding:8px 12px;line-height:1.4}.user-message .message-content{padding:10px 14px;line-height:1.5}.chatbot-modal.keyboard-open .chatbot-input-form{padding:.5rem var(--spaziatura-sm);padding-bottom:calc(.5rem + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 12px rgba(0,0,0,.15);gap:.375rem;min-height:auto;transform:translateZ(0);-webkit-transform:translateZ(0);transition:box-shadow .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-file-label{transform:scale(.833) translateZ(0);-webkit-transform:scale(.833) translateZ(0);transition:transform .15s cubic-bezier(.4,0,.2,1);backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-modal.keyboard-open .chatbot-file-label svg{transform:scale(.8) translateZ(0);-webkit-transform:scale(.8) translateZ(0);transition:transform .15s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-send-btn{transform:scale(.833) translateZ(0);-webkit-transform:scale(.833) translateZ(0);transition:transform .15s cubic-bezier(.4,0,.2,1);backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-modal.keyboard-open .chatbot-send-btn svg{transform:scale(.8) translateZ(0);-webkit-transform:scale(.8) translateZ(0);transition:transform .15s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-input{padding:.625rem .875rem;min-height:2.5rem;font-size:1rem;border-radius:1.25rem;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.chatbot-input{font-size:1rem;padding:var(--spaziatura-md) var(--spaziatura-lg);min-height:3rem;border-radius:1.5rem;border:1px solid rgba(0,0,0,.12);background:#f8f9fa;scroll-margin-bottom:0;position:relative;z-index:1;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;flex:1;min-width:0;box-sizing:border-box}.chatbot-input:focus{background:#fff;border-color:var(--colore-primario);box-shadow:0 0 0 3px rgba(var(--colore-primario-rgb),.1);transform:translateZ(0)}.chatbot-send-btn{width:3rem;height:3rem;min-width:3rem;min-height:3rem;box-shadow:0 4px 8px rgba(var(--colore-primario-rgb),.3),0 2px 4px rgba(var(--colore-primario-rgb),.2)}.chatbot-send-btn:active{transform:scale(.95);box-shadow:0 2px 4px rgba(var(--colore-primario-rgb),.3),0 1px 2px rgba(var(--colore-primario-rgb),.2)}.chatbot-send-btn svg{width:1.25rem;height:1.25rem}.chatbot-modal.keyboard-open{transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .2s cubic-bezier(.4,0,.2,1);position:relative;top:auto;bottom:auto;margin-top:auto;margin-bottom:auto}.chatbot-modal-overlay:has(.chatbot-modal.keyboard-open){padding-top:calc(1rem + env(safe-area-inset-top,0px))!important;align-items:flex-start!important}.chatbot-modal.keyboard-open .chatbot-input-form{position:sticky;bottom:0;z-index:100;background:#fff}.chatbot-close-btn{width:2.75rem;height:2.75rem;min-width:2.75rem;min-height:2.75rem;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chatbot-close-btn:active{background:rgba(255,255,255,.25);transform:scale(.9)}.chatbot-close-icon{font-size:1.375rem}}@media (max-width: 480px){.chatbot-modal{width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;border-radius:0!important;margin:0!important}.chatbot-modal-header{padding:var(--spaziatura-md) var(--spaziatura-sm);padding-top:calc(var(--spaziatura-md) + env(safe-area-inset-top,0px))}.chatbot-logo{width:3rem;height:3rem}.chatbot-title{font-size:1.125rem}.chatbot-subtitle{font-size:.8125rem}.chatbot-messages{padding:var(--spaziatura-sm) var(--spaziatura-xs);gap:var(--spaziatura-sm)}.message-avatar{width:2.5rem;height:2.5rem}.message-content{font-size:.9375rem;padding:8px 12px}.user-message .message-content{padding:8px 12px}.chatbot-input-form{padding:var(--spaziatura-sm) var(--spaziatura-xs);padding-bottom:calc(var(--spaziatura-sm) + env(safe-area-inset-bottom,0px))}.chatbot-input{padding:var(--spaziatura-sm) var(--spaziatura-md);min-height:2.75rem}.chatbot-send-btn{width:2.75rem;height:2.75rem}.image-preview-container{max-height:120px;padding:8px 12px;overflow-y:auto}.image-preview{max-width:150px}.image-preview img{max-height:100px}.chatbot-modal.keyboard-open .image-preview-container{max-height:80px;padding:6px 10px}.chatbot-modal.keyboard-open .image-preview{max-width:100px}.chatbot-modal.keyboard-open .image-preview img{max-height:70px}}@media (max-width: 768px) and (orientation: landscape){.chatbot-modal{width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;border-radius:0!important;margin:0!important}.chatbot-modal-header{padding:var(--spaziatura-sm) var(--spaziatura-md);padding-top:calc(var(--spaziatura-sm) + env(safe-area-inset-top,0px))}.chatbot-messages{max-height:calc(100vh - 8rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));max-height:calc(100svh - 8rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:var(--spaziatura-md)}.chatbot-modal.keyboard-open .chatbot-messages{max-height:calc(100svh - 6rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:var(--spaziatura-xs)}.chatbot-modal.keyboard-open .chatbot-modal-header{padding:.375rem var(--spaziatura-sm)}}@supports (height: 100svh){@media (max-width: 768px){.chatbot-modal-overlay{padding-top:calc(5rem + env(safe-area-inset-top,0px))}.chatbot-modal{max-height:calc(100svh - 5rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.chatbot-messages{max-height:calc(100svh - 13rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.chatbot-modal.keyboard-open .chatbot-messages{max-height:calc(100svh - 9rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));transform:translateZ(0);-webkit-transform:translateZ(0)}}}@media (max-width: 768px){.chatbot-modal-overlay.is-open,.chatbot-modal.animate-in{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.chatbot-modal{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.chatbot-modal.keyboard-open{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.chatbot-modal.keyboard-open .chatbot-modal-header,.chatbot-modal.keyboard-open .chatbot-logo,.chatbot-modal.keyboard-open .chatbot-title,.chatbot-modal.keyboard-open .chatbot-subtitle,.chatbot-modal.keyboard-open .chatbot-messages,.chatbot-modal.keyboard-open .chatbot-input-form{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;will-change:transform}.chatbot-modal.keyboard-open *{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@supports (-webkit-appearance: none){@media (max-width: 768px){.chatbot-modal{-webkit-transform:translateY(2rem) translateZ(0);transform:translateY(2rem) translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:transform .35s cubic-bezier(.25,.46,.45,.94),opacity .35s cubic-bezier(.25,.46,.45,.94);transition:transform .35s cubic-bezier(.25,.46,.45,.94),opacity .35s cubic-bezier(.25,.46,.45,.94);will-change:transform,opacity}.chatbot-modal-overlay.is-open .chatbot-modal,.chatbot-modal.animate-in{-webkit-transform:translateY(0) translateZ(0);transform:translateY(0) translateZ(0)}.chatbot-modal-header{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.chatbot-messages{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-input-form{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);transition:box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-modal-header{-webkit-transform:translateZ(0);transform:translateZ(0)}.chatbot-modal.keyboard-open .chatbot-logo{-webkit-transform:scale(.57) translateZ(0);transform:scale(.57) translateZ(0);-webkit-transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-title{-webkit-transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-messages{-webkit-transform:translateZ(0);transform:translateZ(0)}.chatbot-modal.keyboard-open .message-avatar{-webkit-transform:scale(.67) translateZ(0);transform:scale(.67) translateZ(0);-webkit-transition:transform .15s cubic-bezier(.4,0,.2,1);transition:transform .15s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-input-form{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-transition:box-shadow .2s cubic-bezier(.4,0,.2,1);transition:box-shadow .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-file-label,.chatbot-modal.keyboard-open .chatbot-send-btn{-webkit-transform:scale(.833) translateZ(0);transform:scale(.833) translateZ(0);-webkit-transition:transform .15s cubic-bezier(.4,0,.2,1);transition:transform .15s cubic-bezier(.4,0,.2,1)}}}@-moz-document url-prefix(){@media (max-width: 768px){.chatbot-modal{-moz-transform:translateZ(0);transform:translateZ(0);-moz-backface-visibility:hidden;backface-visibility:hidden;-moz-transition:transform .3s cubic-bezier(.25,.46,.45,.94),opacity .25s cubic-bezier(.25,.46,.45,.94);transition:transform .3s cubic-bezier(.25,.46,.45,.94),opacity .25s cubic-bezier(.25,.46,.45,.94);will-change:transform,opacity}.chatbot-modal-overlay.is-open .chatbot-modal,.chatbot-modal.animate-in{-moz-transform:translateY(0) translateZ(0);transform:translateY(0) translateZ(0)}.chatbot-modal-header{-moz-transform:translateZ(0);transform:translateZ(0);-moz-backface-visibility:hidden;backface-visibility:hidden;-moz-transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-logo{-moz-transform:scale(.57) translateZ(0);transform:scale(.57) translateZ(0);-moz-transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .message-avatar{-moz-transform:scale(.67) translateZ(0);transform:scale(.67) translateZ(0);-moz-transition:transform .15s cubic-bezier(.4,0,.2,1);transition:transform .15s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-file-label,.chatbot-modal.keyboard-open .chatbot-send-btn{-moz-transform:scale(.833) translateZ(0);transform:scale(.833) translateZ(0);-moz-transition:transform .15s cubic-bezier(.4,0,.2,1);transition:transform .15s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-modal-header{-moz-transform:translateZ(0);transform:translateZ(0)}.chatbot-modal.keyboard-open .chatbot-title{-moz-transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1)}.chatbot-modal.keyboard-open .chatbot-messages{-moz-transform:translateZ(0);transform:translateZ(0)}.chatbot-modal.keyboard-open .chatbot-input-form{-moz-transform:translateZ(0);transform:translateZ(0);-moz-transition:box-shadow .2s cubic-bezier(.4,0,.2,1);transition:box-shadow .2s cubic-bezier(.4,0,.2,1)}}}#chatbot-button-portal{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:transparent;z-index:1000;pointer-events:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;contain:strict;isolation:isolate}.chatbot-button-fixed{position:fixed;bottom:calc(var(--spaziatura-lg) + var(--spaziatura-sm) + env(safe-area-inset-bottom,0));right:calc(var(--spaziatura-lg) + var(--spaziatura-sm) + env(safe-area-inset-right,0));z-index:1001;pointer-events:auto;display:flex;align-items:center;justify-content:center;transform:translateZ(0);backface-visibility:hidden;will-change:opacity;overscroll-behavior:contain}.chatbot-button-fixed.chatbot-button-hidden{display:none}.chatbot-btn-fixed{width:4.375rem;height:4.375rem;border-radius:var(--border-radius-rotondo);background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--elevation-4);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;pointer-events:auto;transform:translateZ(0)}.sgamy-fixed-icon{width:calc(var(--spaziatura-xl) + var(--spaziatura-lg));height:calc(var(--spaziatura-xl) + var(--spaziatura-lg));border-radius:var(--border-radius-rotondo);object-fit:cover}.chatbot-btn-pulse{animation:chatbotPulseIOS 2s ease-in-out infinite}@keyframes chatbotPulseIOS{0%{transform:scale(1);opacity:1}70%{transform:scale(1.1);opacity:.7}to{transform:scale(1);opacity:1}}@media (max-width: 768px){#chatbot-button-portal{width:0!important;height:0!important;overflow:visible!important;contain:none!important;isolation:auto!important;transform:none!important;background:transparent!important;pointer-events:none!important;z-index:1000}.chatbot-button-fixed{bottom:calc(20px + env(safe-area-inset-bottom,0));right:calc(20px + env(safe-area-inset-right,0));z-index:1001}.chatbot-btn-fixed,.sgamy-fixed-icon{visibility:visible!important;opacity:1!important}}.is-ios #chatbot-button-portal,.is-safari.is-mobile #chatbot-button-portal,.is-ios.is-chrome #chatbot-button-portal,.is-firefox-ios #chatbot-button-portal{pointer-events:none!important;visibility:visible!important;opacity:1!important}.is-ios .chatbot-button-fixed,.is-safari.is-mobile .chatbot-button-fixed,.is-ios.is-chrome .chatbot-button-fixed,.is-firefox-ios .chatbot-button-fixed{pointer-events:auto!important;visibility:visible!important;opacity:1!important;z-index:1001!important}.is-ios .chatbot-btn-fixed,.is-safari.is-mobile .chatbot-btn-fixed,.is-ios.is-chrome .chatbot-btn-fixed,.is-firefox-ios .chatbot-btn-fixed{pointer-events:auto!important;visibility:visible!important;opacity:1!important}.is-ios .sgamy-fixed-icon,.is-safari.is-mobile .sgamy-fixed-icon,.is-ios.is-chrome .sgamy-fixed-icon,.is-firefox-ios .sgamy-fixed-icon{pointer-events:none!important;visibility:visible!important;opacity:1!important}@supports (-webkit-appearance: none){@media (max-width: 768px){.is-opera #chatbot-button-portal{position:fixed!important;width:0!important;height:0!important;inset:auto!important;overflow:visible!important;contain:none!important;isolation:auto!important;background:transparent!important;pointer-events:none!important;transform:none!important;z-index:1000!important;-webkit-transform:none!important}.is-opera .chatbot-button-fixed{position:fixed!important;bottom:calc(20px + env(safe-area-inset-bottom,0))!important;right:calc(20px + env(safe-area-inset-right,0))!important;z-index:1001!important;pointer-events:auto!important;transform:translateZ(0)!important;-webkit-transform:translateZ(0)!important;display:flex!important;visibility:visible!important;opacity:1!important;contain:none!important;isolation:isolate!important}.is-opera .chatbot-btn-fixed{pointer-events:auto!important;visibility:visible!important;opacity:1!important}.is-opera .sgamy-fixed-icon{pointer-events:none!important;visibility:visible!important;opacity:1!important}}}.is-opera.is-mobile #chatbot-button-portal{position:fixed!important;width:0!important;height:0!important;overflow:visible!important;contain:none!important;isolation:auto!important;transform:none!important;-webkit-transform:none!important;will-change:auto!important;z-index:1000!important}.is-opera.is-mobile .chatbot-button-fixed{position:fixed!important;bottom:calc(20px + env(safe-area-inset-bottom,0))!important;right:calc(20px + env(safe-area-inset-right,0))!important;z-index:1001!important;display:flex!important;visibility:visible!important;opacity:1!important;contain:none!important;transform:translateZ(0)!important;-webkit-transform:translateZ(0)!important;will-change:auto!important;perspective:none!important;-webkit-perspective:none!important;filter:none!important;margin:0!important;pointer-events:auto!important}.is-opera.is-mobile .chatbot-btn-fixed{pointer-events:auto!important;visibility:visible!important;opacity:1!important}.is-opera.is-mobile .sgamy-fixed-icon{pointer-events:none!important;visibility:visible!important;opacity:1!important}.is-opera.is-mobile #chatbot-button-portal,.is-opera.is-mobile #chatbot-button-portal *{transform:none!important;-webkit-transform:none!important;perspective:none!important;-webkit-perspective:none!important;contain:none!important;filter:none!important;will-change:auto!important}@supports (-moz-appearance: none){@media (max-width: 768px){#chatbot-button-portal{position:fixed!important;width:0!important;height:0!important;inset:auto!important;overflow:visible!important;contain:none!important;isolation:auto!important;background:transparent!important;pointer-events:none!important;transform:none!important;z-index:1000!important;-moz-transform:none!important;-moz-contain:none!important}.chatbot-button-fixed{position:fixed!important;bottom:calc(20px + env(safe-area-inset-bottom,0))!important;right:calc(20px + env(safe-area-inset-right,0))!important;z-index:1001!important;pointer-events:auto!important;transform:translateZ(0)!important;-moz-transform:translateZ(0)!important;display:flex!important;visibility:visible!important;opacity:1!important;contain:none!important;-moz-contain:none!important;isolation:isolate!important;-moz-isolation:isolate!important}.chatbot-btn-fixed{pointer-events:auto!important;visibility:visible!important;opacity:1!important}.sgamy-fixed-icon{pointer-events:none!important;visibility:visible!important;opacity:1!important}}}.is-firefox.is-android.is-mobile #chatbot-button-portal{position:fixed!important;width:0!important;height:0!important;overflow:visible!important;contain:none!important;-moz-contain:none!important;isolation:auto!important;-moz-isolation:auto!important;transform:none!important;-moz-transform:none!important;will-change:auto!important;z-index:1000!important}.is-firefox.is-android.is-mobile .chatbot-button-fixed{position:fixed!important;bottom:calc(20px + env(safe-area-inset-bottom,0))!important;right:calc(20px + env(safe-area-inset-right,0))!important;z-index:1001!important;display:flex!important;visibility:visible!important;opacity:1!important;contain:none!important;-moz-contain:none!important;transform:translateZ(0)!important;-moz-transform:translateZ(0)!important;will-change:auto!important;perspective:none!important;-moz-perspective:none!important;filter:none!important;margin:0!important;pointer-events:auto!important}.is-firefox.is-android.is-mobile .chatbot-btn-fixed{pointer-events:auto!important;visibility:visible!important;opacity:1!important}.is-firefox.is-android.is-mobile .sgamy-fixed-icon{pointer-events:none!important;visibility:visible!important;opacity:1!important}.is-firefox.is-android.is-mobile #chatbot-button-portal,.is-firefox.is-android.is-mobile #chatbot-button-portal *{transform:none!important;-moz-transform:none!important;perspective:none!important;-moz-perspective:none!important;contain:none!important;-moz-contain:none!important;filter:none!important;will-change:auto!important}.is-firefox-ios.is-mobile body,.is-firefox-ios.is-mobile html,.is-firefox-ios.is-mobile #root{transform:none!important;-webkit-transform:none!important;contain:none!important;perspective:none!important;-webkit-perspective:none!important;filter:none!important}.is-firefox-ios.is-mobile #chatbot-button-portal{position:fixed!important;top:0!important;left:0!important;width:100%!important;height:100%!important;z-index:1000!important;pointer-events:none!important;display:block!important;visibility:visible!important;opacity:1!important;background:transparent!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}.is-firefox-ios.is-mobile .chatbot-button-fixed{position:fixed!important;bottom:calc(var(--spaziatura-lg, 24px) + var(--spaziatura-sm, 8px) + env(safe-area-inset-bottom,0px))!important;right:calc(var(--spaziatura-lg, 24px) + var(--spaziatura-sm, 8px) + env(safe-area-inset-right,0px))!important;z-index:1001!important;display:flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;-webkit-transform:translateZ(0)!important;transform:translateZ(0)!important}.app-download-banner-overlay{position:fixed!important;top:0;left:0;right:0;bottom:0;width:100%;height:100%;height:100vh;height:-webkit-fill-available;height:100svh;background-color:rgba(0,0,0,.48);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex!important;align-items:center;justify-content:center;z-index:10000!important;padding:var(--spaziatura-lg);animation:materialFadeIn var(--duration-short-4) var(--easing-standard);-webkit-transform:translateZ(0);transform:translateZ(0);visibility:visible!important;opacity:1!important}@media (max-width: 768px){.app-download-banner-overlay{padding:var(--spaziatura-md);align-items:center;justify-content:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:100vh;min-height:100svh;display:flex!important;flex-direction:column}}.app-download-banner{background-color:var(--sfondo-bianco);border-radius:0;box-shadow:var(--elevation-24);max-width:50rem;width:100%;min-height:18.75rem;position:relative;animation:materialSlideUp var(--duration-medium-2) var(--easing-standard);overflow:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform}@media (max-width: 768px){.app-download-banner{max-width:100%;width:100%;min-height:auto;border-radius:var(--border-radius-medio);margin:auto;max-height:calc(100svh - 2 * var(--spaziatura-md));overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative;flex-shrink:1}}.app-download-banner__close{position:absolute;top:50%;left:calc(50% + 25rem + var(--spaziatura-md));transform:translateY(-50%);background:rgba(255,255,255,.95);border:none;cursor:pointer;padding:0;line-height:1;transition:all var(--duration-medium-2) var(--easing-standard);z-index:10001;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--border-radius-rotondo);overflow:visible;box-shadow:var(--elevation-4);pointer-events:auto}@media (max-width: 768px){.app-download-banner__close{top:var(--spaziatura-sm);right:var(--spaziatura-sm);left:auto;transform:none}}.app-download-banner__close-icon{font-size:2rem;font-weight:300;color:rgba(0,0,0,.87);transition:all var(--duration-medium-2) var(--easing-standard);display:block}.app-download-banner__close:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(0,0,0,.1);transform:translate(-50%,-50%);transition:width var(--duration-medium-4) var(--easing-standard),height var(--duration-medium-4) var(--easing-standard)}.app-download-banner__close:active{background-color:#fff}.app-download-banner__close:active:before{width:12.5rem;height:200px}.app-download-banner__close:active .app-download-banner__close-icon{transform:rotate(90deg) scale(1.1)}.app-download-banner__close:hover{background-color:#fff;box-shadow:var(--elevation-8);transform:translateY(-50%)}.app-download-banner__close:hover .app-download-banner__close-icon{transform:rotate(90deg) scale(1.2);color:rgba(0,0,0,.87)}@media (max-width: 768px){.app-download-banner__close:hover{transform:none}}.app-download-banner__close:focus-visible{outline:var(--border-normale) solid var(--colore-primario);outline-offset:2px}.app-download-banner__content{padding:0;display:flex;flex-direction:row;align-items:stretch;gap:0}@media (max-width: 768px){.app-download-banner__content{flex-direction:column;align-items:stretch}}.app-download-banner__image-container{flex:0 0 50%;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;overflow:hidden;position:relative}.app-download-banner__image{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:3 / 2}@media (max-width: 768px){.app-download-banner__image-container{flex:1 1 60%;width:100%;min-height:0;max-height:none;display:flex;align-items:stretch;justify-content:stretch;flex-basis:60%}.app-download-banner__image{width:100%;height:auto;max-height:40svh;object-fit:cover;object-position:center;display:block}}.app-download-banner__text-container{flex:0 0 50%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spaziatura-xl) var(--spaziatura-lg);gap:var(--spaziatura-md);text-align:center;background-color:var(--colore-primario)}@media (max-width: 768px){.app-download-banner__content{min-height:0;height:100%}.app-download-banner__text-container{flex:0 1 40%;width:100%;padding:var(--spaziatura-lg) var(--spaziatura-md);padding-top:calc(var(--spaziatura-lg) + var(--spaziatura-sm));gap:var(--spaziatura-sm);min-height:auto;justify-content:center}}.app-download-banner__logos{display:flex;align-items:center;justify-content:center;gap:var(--spaziatura-md);margin-bottom:0;margin-top:calc(var(--spaziatura-md) * -1)}.app-download-banner__logo-main,.app-download-banner__logo-partners{height:60px;width:auto;max-width:60px;max-height:60px;object-fit:contain}@media (max-width: 768px){.app-download-banner__logos{margin-top:0;margin-bottom:var(--spaziatura-xs);gap:var(--spaziatura-sm)}.app-download-banner__logo-main,.app-download-banner__logo-partners{height:50px;max-width:50px;max-height:50px}}.app-download-banner__title{font-size:24px;font-weight:500;color:var(--testo-bianco);margin:0;line-height:1.33;letter-spacing:0}.app-download-banner__description{font-size:14px;font-weight:400;color:rgba(255,255,255,.9);margin:0;line-height:1.5;letter-spacing:.009375em}@media (max-width: 768px){.app-download-banner__title{font-size:20px;line-height:1.4;padding:0 var(--spaziatura-xs)}.app-download-banner__description{font-size:13px;line-height:1.5;padding:0 var(--spaziatura-xs)}}.app-download-banner__actions{width:100%;display:flex;justify-content:center;align-items:center;padding-top:var(--spaziatura-sm)}.app-download-banner__link{display:inline-flex;align-items:center;justify-content:center;padding:var(--spaziatura-md) var(--spaziatura-lg);background-color:var(--sfondo-bianco);color:var(--colore-primario);text-decoration:none;border-radius:24px;font-weight:500;font-size:14px;letter-spacing:.0892857143em;text-transform:uppercase;transition:all var(--duration-short-4) var(--easing-standard);min-width:160px;position:relative;overflow:hidden;box-shadow:var(--elevation-2);border:var(--border-normale) solid transparent}@media (max-width: 768px){.app-download-banner__link{width:100%;min-width:auto;padding:var(--spaziatura-md) var(--spaziatura-lg);font-size:13px}.app-download-banner__actions{width:100%;padding-top:var(--spaziatura-sm)}}.app-download-banner__link:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(var(--colore-primario-rgb),.1);transform:translate(-50%,-50%);transition:width var(--duration-medium-4) var(--easing-standard),height var(--duration-medium-4) var(--easing-standard)}.app-download-banner__link:active:before{width:300px;height:300px}.app-download-banner__link:hover{background-color:rgba(255,255,255,.95);color:var(--colore-intermedio);box-shadow:var(--elevation-8);transform:translateY(-1px);border-color:var(--colore-primario)}.app-download-banner__link:active{transform:translateY(0);box-shadow:var(--elevation-2)}.app-download-banner__link:focus-visible{outline:var(--border-normale) solid var(--colore-primario);outline-offset:2px;border-color:var(--colore-primario)}.app-download-banner__link-text{display:inline-block;position:relative;z-index:1}@keyframes materialSlideUp{0%{opacity:0;transform:translateY(24px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes materialFadeIn{0%{opacity:0}to{opacity:1}}html[data-accessibility-contrast=high] .app-download-banner,html[data-accessibility-contrast=high] .app-download-banner__close{border:var(--border-normale) solid #000000;background-color:var(--sfondo-bianco)}html[data-accessibility-contrast=high] .app-download-banner__link{background:#000;color:var(--testo-bianco);border:var(--border-normale) solid #000000}html[data-accessibility-contrast=high] .app-download-banner__link:hover{background:#333;border-color:#333}@supports (-webkit-touch-callout: none){.app-download-banner-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;height:-webkit-fill-available;height:100svh;display:flex!important;align-items:center!important;justify-content:center!important;z-index:10000!important;visibility:visible!important;opacity:1!important;-webkit-transform:translateZ(0)!important;transform:translateZ(0)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background-color:rgba(0,0,0,.55)!important;min-height:100vh;min-height:-webkit-fill-available;min-height:100svh;overflow-y:auto!important;-webkit-overflow-scrolling:touch;animation:none!important}@media (max-width: 768px){.app-download-banner-overlay{justify-content:flex-start!important}}.app-download-banner{position:relative!important;display:block!important;visibility:visible!important;opacity:1!important;-webkit-transform:translateZ(0);transform:translateZ(0);margin:auto!important;flex-shrink:1!important;animation:none!important;background-color:#fff!important;z-index:1!important}.app-download-banner__close{position:absolute!important;display:flex!important;visibility:visible!important;opacity:1!important;z-index:10001!important;pointer-events:auto!important;-webkit-tap-highlight-color:rgba(0,0,0,.1)}@media (max-width: 768px){.app-download-banner__close{top:var(--spaziatura-sm)!important;right:var(--spaziatura-sm)!important;left:auto!important;transform:none!important}}}
