.chat-toggle-button{position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#10b981);border:none;color:#fff;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.15);z-index:1000;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.chat-toggle-button:hover{transform:scale(1.1);box-shadow:0 15px 40px rgba(0,0,0,.2)}.chat-toggle-button:active{transform:scale(.95)}.chat-toggle-button.hidden{opacity:0;pointer-events:none}.chat-toggle-button svg{width:24px;height:24px}.chat-widget{position:fixed;bottom:24px;right:24px;width:400px;height:600px;background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.15);z-index:1001;display:flex;flex-direction:column;transition:all .3s ease;overflow:hidden}.chat-widget.closed{opacity:0;pointer-events:none;transform:translateY(20px) scale(.95)}.chat-widget.open{opacity:1;pointer-events:all;transform:translateY(0) scale(1)}.chat-header{background:linear-gradient(135deg,#14b8a6,#10b981);color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center;border-radius:16px 16px 0 0}.chat-header .chat-header-content{display:flex;align-items:center;gap:12px}.chat-header .chat-avatar{font-size:32px}.chat-header .chat-header-text h3{margin:0;font-size:18px;font-weight:600}.chat-header .chat-header-text p{margin:0;font-size:14px;opacity:.9}.chat-header .chat-close-button{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background .2s}.chat-header .chat-close-button:hover{background:hsla(0,0%,100%,.2)}.chat-messages{flex:1 1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;background:#f8fafc}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#64748b}.chat-message{display:flex;gap:12px;animation:fadeIn .3s ease}.chat-message.user{flex-direction:row-reverse}.chat-message.user .message-bubble{background:#14b8a6;color:#fff;border-radius:18px 18px 4px 18px}.chat-message.user .message-timestamp{text-align:right}.chat-message.assistant .message-bubble{background:#fff;color:#0f172a;border-radius:18px 18px 18px 4px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.chat-message.assistant .streaming-cursor{display:inline-block;margin-left:2px;animation:blink 1s step-end infinite;color:#14b8a6;font-weight:700}.chat-message .message-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#10b981);display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-message .message-avatar .avatar-icon{font-size:18px}.chat-message .message-content-wrapper{display:flex;flex-direction:column;gap:8px;max-width:75%}.chat-message .message-bubble{padding:12px 16px;line-height:1.5}.chat-message .message-bubble .message-text{margin:0;font-size:15px;white-space:pre-wrap;word-break:break-word}.chat-message .message-timestamp{font-size:12px;color:#64748b;margin-left:4px}.chat-message .message-widget{margin-top:8px}.typing .typing-dots{display:flex;gap:4px;padding:8px 0}.typing .typing-dots span{width:8px;height:8px;background:#64748b;border-radius:50%;animation:typing 1.4s infinite}.typing .typing-dots span:nth-child(2){animation-delay:.2s}.typing .typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-8px);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.chat-input-container{border-top:1px solid #e2e8f0;background:#fff;padding:16px}.chat-input-container .chat-input-form{display:flex;gap:8px;align-items:flex-end}.chat-input-container .chat-textarea{flex:1 1;border:1px solid #e2e8f0;border-radius:12px;padding:12px;font-size:15px;font-family:inherit;resize:none;max-height:120px;overflow-y:auto;transition:border-color .2s}.chat-input-container .chat-textarea:focus{outline:none;border-color:#14b8a6}.chat-input-container .chat-textarea:disabled{background:#f1f5f9;cursor:not-allowed}.chat-input-container .chat-send-button{width:40px;height:40px;border-radius:10px;border:none;background:#14b8a6;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.chat-input-container .chat-send-button:hover:not(:disabled){background:#0f8a7d;transform:scale(1.05)}.chat-input-container .chat-send-button:disabled{background:#e2e8f0;cursor:not-allowed}.chat-input-container .chat-footer{margin-top:8px;text-align:center;font-size:12px;color:#64748b}.chat-error{padding:12px;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:14px;text-align:center}.widget-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.widget-card h3{margin:0 0 12px;font-size:18px;color:#0f172a}.widget-card h4{margin:0 0 8px;font-size:16px;color:#0f172a}.widget-card p{margin:0 0 12px;color:#64748b;line-height:1.5}.widget-icon{font-size:32px;text-align:center;margin-bottom:12px}.widget-button{padding:10px 20px;border-radius:8px;border:none;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;width:100%;margin-top:8px}.widget-button.primary{background:#14b8a6;color:#fff}.widget-button.primary:hover{background:#0f8a7d}.widget-button.secondary{background:#fff;color:#14b8a6;border:1px solid #14b8a6}.widget-button.secondary:hover{background:#baf8f1}.calendly-widget .widget-purpose{font-size:15px;color:#0f172a}.calendly-widget .preferred-time{font-size:14px;color:#64748b;margin-top:8px}.roi-calculator-widget .progress-bar{height:4px;background:#e2e8f0;border-radius:2px;margin-bottom:8px;overflow:hidden}.roi-calculator-widget .progress-bar .progress-fill{height:100%;background:#14b8a6;transition:width .3s ease}.roi-calculator-widget .step-indicator{font-size:13px;color:#64748b;margin-bottom:16px}.roi-calculator-widget .question-container{margin:20px 0}.roi-calculator-widget .question-container .question label{display:block;font-size:15px;font-weight:500;color:#0f172a;margin-bottom:12px}.roi-calculator-widget .question-container .question input[type=number],.roi-calculator-widget .question-container .question input[type=text],.roi-calculator-widget .question-container .question select{width:100%;padding:12px;border:1px solid #e2e8f0;border-radius:8px;font-size:15px;transition:border-color .2s}.roi-calculator-widget .question-container .question input[type=number]:focus,.roi-calculator-widget .question-container .question input[type=text]:focus,.roi-calculator-widget .question-container .question select:focus{outline:none;border-color:#14b8a6}.roi-calculator-widget .question-container .question input[type=range]{width:100%;margin:12px 0}.roi-calculator-widget .question-container .question .range-value{text-align:center;font-size:20px;font-weight:600;color:#14b8a6;margin-top:8px}.roi-calculator-widget .widget-actions{display:flex;gap:12px;margin-top:20px}.roi-calculator-widget .widget-actions button{flex:1 1}.roi-calculator-widget .roi-results .roi-highlights{display:flex;flex-direction:column;gap:16px;margin:20px 0}.roi-calculator-widget .roi-results .roi-highlights .roi-metric{background:#f8fafc;padding:16px;border-radius:8px;display:flex;flex-direction:column;gap:4px}.roi-calculator-widget .roi-results .roi-highlights .roi-metric.primary{background:linear-gradient(135deg,#14b8a6,#10b981);color:#fff}.roi-calculator-widget .roi-results .roi-highlights .roi-metric.primary .metric-value{color:#fff}.roi-calculator-widget .roi-results .roi-highlights .roi-metric .metric-label{font-size:13px;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.roi-calculator-widget .roi-results .roi-highlights .roi-metric .metric-value{font-size:24px;font-weight:700;color:#0f172a}.roi-calculator-widget .roi-results .roi-breakdown{margin-top:20px;padding-top:20px;border-top:1px solid #e2e8f0}.roi-calculator-widget .roi-results .roi-breakdown h4{margin-bottom:16px}.roi-calculator-widget .roi-results .roi-breakdown .breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e2e8f0;font-size:14px}.roi-calculator-widget .roi-results .roi-breakdown .breakdown-item:last-child{border-bottom:none}.roi-calculator-widget .roi-results .roi-breakdown .breakdown-item.highlight{background:#f8fafc;padding:12px;border-radius:8px;border:none;margin-top:8px;font-size:15px}.roi-calculator-widget .roi-results .roi-breakdown .breakdown-item strong{color:#14b8a6;font-weight:600}.service-card-widget .services-grid{display:flex;flex-direction:column;gap:16px}.service-card-widget .service-item{background:#f8fafc;padding:16px;border-radius:8px;border:1px solid #e2e8f0}.service-card-widget .service-item h4{color:#14b8a6;margin-bottom:8px}.service-card-widget .service-item p{font-size:14px;margin-bottom:12px}.service-card-widget .service-item .service-features{list-style:none;padding:0;margin:12px 0}.service-card-widget .service-item .service-features li{font-size:13px;color:#64748b;margin-bottom:6px;padding-left:4px}.service-card-widget .service-item .widget-button{margin-top:12px}.meeting-confirmation-widget .widget-card.success{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#10b981}.meeting-confirmation-widget .success-icon{font-size:48px;text-align:center;margin-bottom:16px}.meeting-confirmation-widget .meeting-details{background:#fff;border-radius:8px;padding:16px;margin:16px 0}.meeting-confirmation-widget .detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e2e8f0}.meeting-confirmation-widget .detail-row:last-child{border-bottom:none}.meeting-confirmation-widget .detail-row .detail-label{font-weight:600;color:#64748b;font-size:14px}.meeting-confirmation-widget .detail-row .detail-value{text-align:right;color:#0f172a;font-size:14px}.meeting-confirmation-widget .booking-details{background:#fff;border-radius:8px;padding:16px;margin:16px 0;text-align:center}.meeting-confirmation-widget .booking-details .meeting-time{font-size:16px;margin-bottom:12px;color:#0f172a}.meeting-confirmation-widget .booking-details .attendee-info{font-size:14px;color:#64748b;margin-bottom:12px}.meeting-confirmation-widget .booking-details .meeting-url{margin-top:16px}.meeting-confirmation-widget .booking-details .meeting-url a{color:#14b8a6;text-decoration:none;font-weight:600;font-size:15px}.meeting-confirmation-widget .booking-details .meeting-url a:hover{text-decoration:underline}.meeting-confirmation-widget .calendar-buttons{margin:20px 0}.meeting-confirmation-widget .calendar-buttons h4{font-size:14px;font-weight:600;color:#0f172a;margin-bottom:12px}.meeting-confirmation-widget .calendar-buttons .calendar-button-group{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn{padding:10px;font-size:13px;text-align:center;text-decoration:none;border-radius:8px;font-weight:500;transition:all .2s}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn span{margin-right:4px}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.google{background:#4285f4;color:#fff}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.google:hover{background:#1266f1}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.outlook{background:#0078d4;color:#fff}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.outlook:hover{background:#005ba1}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.apple{background:#555;color:#fff}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.apple:hover{background:#3c3c3c}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.ical{background:#e5e7eb;color:#0f172a}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn.ical:hover{background:#c8ccd5}.meeting-confirmation-widget .confirmation-note{font-size:13px;color:#64748b;text-align:center;margin-top:16px}.meeting-confirmation-widget .error-message{background:#fee;border:1px solid #fcc;border-radius:8px;padding:12px;margin:12px 0}.meeting-confirmation-widget .error-message p{color:#c33;font-size:14px;margin:0}@media(max-width:768px){.chat-widget{width:100vw;height:100vh;height:100dvh;bottom:0;right:0;border-radius:0;max-width:100%;max-height:100%;padding-bottom:env(safe-area-inset-bottom)}.chat-toggle-button{bottom:20px;right:20px;width:56px;height:56px;bottom:calc(20px + env(safe-area-inset-bottom));right:calc(20px + env(safe-area-inset-right))}.chat-toggle-button:before{content:"";position:absolute;top:-8px;left:-8px;right:-8px;bottom:-8px}.chat-header{border-radius:0;padding:calc(16px + env(safe-area-inset-top)) 20px 16px}.chat-header .chat-header-text h3{font-size:17px}.chat-header .chat-header-text p{font-size:13px}.chat-header .chat-close-button{width:40px;height:40px;font-size:22px}.chat-messages{padding:16px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.chat-message .message-content-wrapper{max-width:85%}.chat-message .message-bubble .message-text{font-size:14px}.chat-message .message-avatar{width:28px;height:28px}.chat-message .message-avatar .avatar-icon{font-size:16px}.chat-input-container{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.chat-input-container .chat-textarea{font-size:16px;padding:10px 12px}.chat-input-container .chat-send-button{width:44px;height:44px;border-radius:12px}.chat-input-container .chat-footer{font-size:11px;margin-top:6px}.widget-card{padding:16px}.widget-card h3{font-size:16px}.widget-card h4{font-size:15px}.widget-card p{font-size:14px}.widget-button{padding:12px 20px;font-size:15px;min-height:44px}.roi-calculator-widget .question-container .question input[type=number],.roi-calculator-widget .question-container .question input[type=text],.roi-calculator-widget .question-container .question select{font-size:16px;padding:12px;min-height:44px}.roi-calculator-widget .question-container .question input[type=range]{height:40px}.roi-calculator-widget .roi-results .roi-highlights .roi-metric{padding:14px}.roi-calculator-widget .roi-results .roi-highlights .roi-metric .metric-label{font-size:12px}.roi-calculator-widget .roi-results .roi-highlights .roi-metric .metric-value{font-size:22px}.meeting-confirmation-widget .calendar-buttons .calendar-button-group{grid-template-columns:1fr 1fr;gap:10px}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn{padding:12px 8px;font-size:13px;min-height:44px}.service-card-widget .service-item{padding:14px}.service-card-widget .service-item p{font-size:13px}.service-card-widget .service-item .service-features li{font-size:12px}}@media(max-width:480px){.chat-toggle-button{bottom:16px;right:16px;width:52px;height:52px;bottom:calc(16px + env(safe-area-inset-bottom));right:calc(16px + env(safe-area-inset-right))}.chat-messages{padding:12px;gap:12px}.chat-input-container{padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.chat-message .message-content-wrapper{max-width:82%}.chat-message .message-bubble{padding:10px 14px}.chat-message .message-bubble .message-text{font-size:14px}.widget-card{padding:14px}.widget-card h3{font-size:15px}.widget-card p{font-size:13px}.meeting-confirmation-widget .calendar-buttons .calendar-button-group{grid-template-columns:1fr}.meeting-confirmation-widget .calendar-buttons .calendar-button-group .calendar-btn{padding:12px;font-size:14px}}@media(max-width:768px)and (orientation:landscape){.chat-widget{height:100vh;height:100dvh}.chat-header{padding:calc(12px + env(safe-area-inset-top)) 20px 12px}.chat-header .chat-header-text h3{font-size:16px}.chat-header .chat-header-text p{font-size:12px}.chat-messages{padding:12px 16px}.chat-input-container{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}}