/* A1 customer chat: isolated from Elementor theme controls. */
.a1-chat{--a1-bottom:20px;--a1-keyboard:0px;--a1-available:680px;position:fixed;right:20px;bottom:calc(var(--a1-bottom) + var(--a1-keyboard) + env(safe-area-inset-bottom,0px));z-index:9980;color:#172235;font:400 14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;text-align:left}
.a1-chat *{box-sizing:border-box}.a1-chat [hidden]{display:none!important}
.a1-chat button[type],.a1-chat a,.a1-chat textarea{font-family:inherit!important;text-transform:none!important;letter-spacing:normal!important}
.a1-chat button[type]{appearance:none;cursor:pointer;min-height:44px;border:1px solid transparent;border-radius:10px;padding:10px 14px;font-size:14px;line-height:1.4;font-weight:650;background-image:none!important;box-shadow:none}
.a1-chat button.a1-chat-launch{background:#ae1515;color:#fff;border:2px solid white;min-height:52px;padding:12px 20px;border-radius:28px;box-shadow:0 6px 24px #17223533}
.a1-chat .a1-chat-panel{position:absolute;right:0;bottom:66px;width:420px;max-width:calc(100vw - 40px);height:680px;max-height:var(--a1-available);border:1px solid #d4dce5;border-radius:18px;background:#fff;box-shadow:0 16px 48px #17223540;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain}
.a1-chat .a1-chat-panel header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:#172235;color:white;flex-shrink:0;border-radius:17px 17px 0 0;gap:12px}
.a1-chat .a1-chat-panel header strong{display:block;font-size:19px;line-height:1.3;letter-spacing:-.2px}.a1-chat .a1-chat-panel header small{display:block;color:#d7e1ee;font-size:12px;line-height:1.5;margin-top:3px}
.a1-chat button.a1-chat-close,.a1-chat button.a1-chat-form-close{font-size:26px;line-height:1;background:#ffffff14;color:white;min-width:40px;min-height:40px;padding:0;border-radius:50%}
.a1-chat .a1-chat-messages{flex:1 1 220px;min-height:100px;overflow-y:auto;overscroll-behavior:contain;padding:16px;scroll-behavior:smooth;background:#f5f7fa}
.a1-chat .a1-chat-messages p{font-family:inherit!important;margin:0 0 12px;padding:13px 14px;background:#fff;color:#172235;border:1px solid #e1e6ed;border-radius:4px 14px 14px 14px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.6;text-transform:none}
.a1-chat .a1-chat-messages p:last-child{margin-bottom:0}.a1-chat .a1-chat-messages p.a1-chat-user{background:#fff0ef;border-color:#f2d7d5;margin-left:28px;border-radius:14px 4px 14px 14px}
.a1-chat .a1-chat-messages small{display:block;font-size:11px;line-height:1.5;font-weight:700;margin-bottom:5px;color:#5d6878}
.a1-chat .a1-chat-quick{display:flex;gap:8px;padding:0 16px 14px;flex-direction:column;flex-shrink:0;background:#f5f7fa}
.a1-chat .a1-chat-quick button[type]{font-size:13px;background:#fff;border:1px solid #d0d9e3;color:#29384b;padding:9px 12px;min-height:38px;text-align:left;border-radius:9px}
.a1-chat .a1-chat-quick button:hover{border-color:#a71919;color:#a71919;background:#fff6f5}
.a1-chat .a1-chat-form{padding:12px 16px 0;border-top:1px solid #e1e6ed;margin:0;flex-shrink:0;background:#fff}
.a1-chat .a1-chat-consent{font-family:inherit!important;font-size:12px!important;line-height:1.45!important;text-transform:none!important;display:block;margin:0 0 10px;color:#4c596a;font-weight:400!important}
.a1-chat input[type=checkbox]{appearance:auto;width:18px;height:18px;margin:0 6px 0 0;vertical-align:middle;accent-color:#ae1515}
.a1-chat .a1-chat-input-label{display:block;font-family:inherit!important;font-size:13px!important;line-height:1.4!important;font-weight:650!important;color:#172235;text-transform:none!important}
.a1-chat textarea{display:block;width:100%;min-height:64px;max-height:110px;resize:vertical;padding:10px 12px;margin:6px 0 10px;background:#fff!important;color:#172235!important;border:1px solid #99a7b8!important;border-radius:9px;font-size:16px!important;line-height:1.45!important;box-shadow:none}
.a1-chat textarea::placeholder{color:#637185;opacity:1}.a1-chat .a1-chat-actions{display:flex;gap:8px}.a1-chat .a1-chat-actions button[type=submit]{flex:1;background:#ae1515;color:white}.a1-chat button.a1-chat-clear{background:#f0f3f7;color:#435167;border:1px solid #e1e6ed}
.a1-chat button:disabled{opacity:.6;cursor:wait}.a1-chat .a1-chat-status{margin:8px 16px 10px;font-family:inherit!important;font-size:11px!important;line-height:1.45!important;color:#5d6878;flex-shrink:0}
.a1-chat .a1-chat-panel footer{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #e1e6ed;padding:12px 16px;flex-shrink:0;background:#fff;position:sticky;bottom:0;z-index:1}
.a1-chat .a1-chat-panel footer a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;color:#8e1515;background:#fff5f4;border:1px solid #ebc8c5;border-radius:9px;font-size:12px;line-height:1.35;font-weight:650;text-align:center;text-decoration:none}
.a1-chat .a1-chat-panel footer a:last-child{color:#35465d;background:#f2f5f8;border-color:#d9e1e9}.a1-chat :focus-visible{outline:3px solid #2864c5;outline-offset:2px}
.a1-chat .a1-chat-demo{padding:6px 16px;margin:0;background:#fff1c5;color:#503b00;font-size:12px;flex-shrink:0}.a1-chat .a1-chat-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.a1-chat[data-started=true] .a1-chat-quick{display:none}
@media(max-width:767px){.a1-chat{--a1-bottom:80px;right:12px}.a1-chat .a1-chat-panel{width:calc(100vw - 40px);bottom:0;height:var(--a1-available);max-height:var(--a1-available)}.a1-chat[data-open=true] .a1-chat-launch{visibility:hidden}.a1-chat .a1-chat-panel header{padding:12px 14px}.a1-chat .a1-chat-messages{padding:12px;flex-basis:180px;min-height:80px}.a1-chat .a1-chat-messages p{font-size:14px;padding:11px 12px;line-height:1.5}.a1-chat .a1-chat-form{padding:10px 12px 0}.a1-chat .a1-chat-quick{padding:0 12px 12px}.a1-chat .a1-chat-panel footer{padding:10px 12px}.a1-chat .a1-chat-status{margin:7px 12px}.a1-chat[data-keyboard=true]{--a1-bottom:8px}.a1-chat[data-keyboard=true] .a1-chat-quick{display:none}}
@media(max-width:767px) and (max-height:680px){.a1-chat .a1-chat-quick{display:none}.a1-chat .a1-chat-panel header{padding:8px 12px}.a1-chat .a1-chat-messages{min-height:60px;padding:8px 12px}.a1-chat .a1-chat-consent{font-size:11px!important;line-height:1.35!important;margin-bottom:6px}.a1-chat textarea{min-height:48px;margin:4px 0 6px}.a1-chat .a1-chat-form{padding-top:8px}.a1-chat .a1-chat-status{font-size:10px!important;margin:5px 12px}.a1-chat .a1-chat-panel footer{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.a1-chat .a1-chat-messages{scroll-behavior:auto}}
.a1-chat .a1-chat-form-dialog{position:fixed;inset:0;margin:auto;width:min(660px,calc(100vw - 16px));height:min(820px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid #d4dce5;border-radius:16px;background:white;color:#172235;overflow:hidden}
.a1-chat .a1-chat-form-dialog[open]{display:flex;flex-direction:column}.a1-chat-form-dialog::backdrop{background:#172235b3}.a1-chat .a1-chat-form-dialog header{display:flex;align-items:center;justify-content:space-between;background:#172235;color:white;padding:12px 16px;gap:12px;flex-shrink:0}.a1-chat .a1-chat-form-dialog header strong{font:650 17px/1.4 system-ui,sans-serif}
.a1-chat .a1-chat-form-notice,.a1-chat .a1-chat-form-feedback{font:400 12px/1.5 system-ui,sans-serif;margin:10px 16px;color:#4c596a;flex-shrink:0}.a1-chat-form-content{flex:1;min-height:0;overflow:auto}.a1-chat-form-content iframe{border:0;display:block;width:100%;height:100%;min-height:300px}
.a1-chat-simulated-form{padding:0 16px 20px}.a1-chat-simulated-form label{display:block;margin:10px 0;font-size:14px}.a1-chat-simulated-form input,.a1-chat-simulated-form select{display:block;width:100%;min-height:44px;font-size:16px;padding:8px;border:1px solid #697386;border-radius:6px}.a1-chat .a1-chat-simulated-form button{background:#ae1515;color:white}
/* Keep Elementor's global hover colours and field corners out of the widget. */
.a1-chat button.a1-chat-launch,.a1-chat .a1-chat-actions button[type=submit]{background-color:#ae1515!important;color:#fff!important}
.a1-chat button.a1-chat-launch:hover,.a1-chat .a1-chat-actions button[type=submit]:hover{background-color:#8e1111!important}
.a1-chat textarea{border-radius:9px!important}
.a1-chat .a1-chat-form-dialog{width:min(600px,calc(100vw - 24px));height:min(660px,calc(100dvh - 24px));box-shadow:0 12px 36px #17223530}
.a1-chat-form-dialog::backdrop{background:#17223566}.a1-chat .a1-chat-form-notice{margin:12px 18px 8px;font-size:13px;line-height:1.5}.a1-chat .a1-chat-form-feedback{margin:8px 18px 12px;font-size:11px;color:#637185}
.a1-chat .a1-chat-form-dialog{height:min(580px,calc(100dvh - 24px))}
.a1-chat button.a1-chat-close,.a1-chat button.a1-chat-form-close{background-color:#ffffff14!important;color:#fff!important}
.a1-chat button.a1-chat-close:hover,.a1-chat button.a1-chat-form-close:hover{background-color:#ffffff2e!important}
@media(max-width:767px){.a1-chat .a1-chat-form-dialog{height:min(740px,calc(100dvh - 24px))}}
@media(max-width:767px) and (max-height:680px){.a1-chat textarea{height:48px!important;min-height:48px!important;padding:8px 10px!important;resize:none}.a1-chat .a1-chat-messages{min-height:52px}.a1-chat .a1-chat-form{padding-top:6px}.a1-chat .a1-chat-status{margin:4px 12px}.a1-chat .a1-chat-panel footer{padding:6px 12px}.a1-chat .a1-chat-panel header{padding:6px 12px}}
