.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:#999;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:0.2s}.typing-indicator span:nth-child(3){animation-delay:0.4s}@keyframes typing{0%,60%,100%{opacity:0.3;transform:scale(0.8)}30%{opacity:1;transform:scale(1)}}.chatbot-widget{position:fixed;bottom:24px;right:24px;z-index:1050}.chatbot-widget .chatbot-toggle{width:56px;height:56px;display:flex;align-items:center;justify-content:center}.chatbot-widget .chatbot-window{position:absolute;bottom:70px;right:0;width:380px;border-radius:12px;overflow:hidden;background:#fff}@media (max-width: 767px){.chatbot-widget .chatbot-window{position:fixed;bottom:0;right:0;left:0;width:100%;height:100vh;border-radius:0}.chatbot-widget .chatbot-window .chatbot-iframe{height:calc(100vh - 56px) !important}}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.team-page .team-title{font-family:"Playfair Display", serif;font-weight:700;color:#003f8d}.team-page .team-description{max-width:600px;margin:0 auto}.team-page .team-section-title{font-family:"Playfair Display", serif;border-bottom:2px solid #003f8d;padding-bottom:10px}.team-page .team-section-title i{color:#003f8d}.team-page .team-card{transition:transform 0.2s, box-shadow 0.2s}.team-page .team-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,63,141,0.15) !important}.team-page .team-card .team-avatar{width:120px;height:120px;object-fit:cover;border:3px solid #003f8d}.team-page .team-card .team-name{font-weight:600}.team-page .team-card .team-column-badge{font-size:0.75rem}.team-page .team-card .team-articles-count{font-size:0.75rem}.contact-header{background:linear-gradient(135deg, #003f8d 0%, #4a90e2 100%);color:white;padding:60px 0;text-align:center;margin-bottom:0}.contact-header .page-title{font-size:2.5rem;font-weight:700;margin-bottom:15px}.contact-header .page-title i{font-size:2.2rem}.contact-header .page-description{font-size:1.1rem;opacity:0.95;max-width:600px;margin:0 auto}.contact-form-container{background:white;padding:30px;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,0.08)}.contact-form-container .section-title{color:#003f8d;font-size:1.5rem;font-weight:600}.contact-form .form-group{margin-bottom:1.5rem}.contact-form .form-label{font-weight:600;color:#333;margin-bottom:8px;font-size:0.95rem}.contact-form .form-control{border:2px solid #e0e0e0;border-radius:8px;padding:12px 16px;font-size:1rem;transition:all 0.3s ease}.contact-form .form-control:focus{border-color:#003f8d;box-shadow:0 0 0 0.2rem rgba(0,63,141,0.15)}.contact-form textarea.form-control{resize:vertical;min-height:150px}.contact-form .btn-primary{background:#003f8d;border:none;border-radius:8px;padding:14px 40px;font-weight:600;font-size:1.05rem;transition:all 0.3s ease}.contact-form .btn-primary:hover{background:#4a90e2;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,63,141,0.3)}.contact-form .btn-primary:focus,.contact-form .btn-primary:active{background:#003f8d !important;box-shadow:0 0 0 0.25rem rgba(0,63,141,0.25) !important}.contact-info-card{background:white;padding:30px;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,0.08)}.contact-info-card .section-title{color:#003f8d;font-size:1.5rem;font-weight:600}.contact-info-item{display:flex;align-items:start;gap:20px;padding:20px 0;border-bottom:1px solid #f0f0f0}.contact-info-item:last-child{border-bottom:none;padding-bottom:0}.contact-info-item:first-child{padding-top:0}.contact-info-item i{font-size:1.8rem;color:#003f8d;min-width:30px}.contact-info-item h5{font-size:1.1rem;font-weight:600;color:#333;margin-bottom:5px}.contact-info-item p{color:#666;margin:0;line-height:1.6}.contact-map-container{background:white;padding:30px;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,0.08)}.contact-map-container .section-title{color:#003f8d;font-size:1.5rem;font-weight:600}.contact-map{width:100%;height:400px;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.1)}@media (max-width: 768px){.contact-header{padding:40px 20px}.contact-header .page-title{font-size:2rem}.contact-header .page-title i{font-size:1.8rem}.contact-header .page-description{font-size:1rem}.contact-form-container,.contact-info-card,.contact-map-container{padding:20px}.contact-info-item{padding:15px 0;gap:15px}.contact-info-item i{font-size:1.5rem}.contact-info-item h5{font-size:1rem}.contact-map{height:300px}.contact-form .btn-primary{width:100%}}
