/* Finn: supplied brand artwork, framed with the existing navy and silver. */
.lx-finn-visual{display:block;position:relative;width:min(100%,310px);max-width:310px;min-width:0;margin:3px auto 12px;isolation:isolate}
.lx-finn-scene-frame{padding:6px;background:linear-gradient(145deg,#c9dbe44a,#668ba328 55%,#d43b4c35);border:1px solid #acc6d64a;border-radius:13px;box-shadow:0 18px 35px #020b1640;transform:perspective(900px) rotateX(var(--finn-rotate-x,0deg)) rotateY(var(--finn-rotate-y,0deg)) translateY(var(--finn-depth-y,0px));transition:transform .55s ease-out;transform-origin:center}
.lx-finn-scene-surface{aspect-ratio:1;position:relative;overflow:hidden;border-radius:8px;background:#cdd7dc}
.lx-finn-scene-surface img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:contain;object-position:center;opacity:1!important;clip-path:none!important;filter:none!important;transform:none!important;animation:none!important}
.lx-finn-visual figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#c4d6e2;font:500 15px/1.5 Arial,'Helvetica Neue',sans-serif;margin:12px 3px 0;letter-spacing:.02em}
.lx-finn-scene-number{color:#b8a086;font-size:14px;letter-spacing:.1em}
.lx-system-panel:has(.lx-finn-visual){gap:5px}
.lx-systems:has(.lx-service-circle) .lx-system-panel .lx-finn-visual{height:auto;align-self:center;flex:none}
/* A friendly, readable website guide. The mascot keeps the supplied artwork. */
.lx-finn-guide{position:fixed;right:max(24px,env(safe-area-inset-right));left:auto;bottom:calc(max(22px,env(safe-area-inset-bottom)) + var(--finn-clearance,0px));z-index:700;width:max-content;max-width:calc(100vw - 40px);margin:0;padding:0;border:0;background:none;color:#163047;font:400 16px/1.5 OZ,Arial,sans-serif;transition:bottom .2s ease}
.lx-finn-guide[hidden]{display:none!important}
.lx-finn-trigger{display:flex!important;flex-direction:row-reverse;align-items:flex-end;gap:8px;min-height:56px;margin:0;padding:0!important;border:0;background:none;cursor:pointer;list-style:none!important;user-select:none;position:relative;color:#f3f6f7;font-size:17px;font-weight:500;line-height:1.4;outline-offset:5px;border-radius:12px}
.lx-finn-trigger::-webkit-details-marker{display:none}.lx-finn-trigger::marker{content:''}.lx-finn-trigger:before,.lx-finn-trigger:after{display:none!important}
.lx-finn-trigger>img{display:block;width:auto;height:168px;max-height:none;max-width:100px;object-fit:contain;filter:drop-shadow(0 8px 10px #020b1640);pointer-events:none;transform-origin:50% 94%;animation:finn-ahoy 8s ease-in-out infinite}
.lx-finn-trigger>span{position:relative;display:flex;flex-direction:column;gap:3px;margin-bottom:9px;padding:13px 18px;border:1px solid #9eafbf80;border-radius:13px 13px 0 13px;background:#0c273bdc;backdrop-filter:blur(14px);box-shadow:0 8px 25px #04101e25;text-align:left;white-space:nowrap}
.lx-finn-trigger small{font-size:12px;font-weight:500;letter-spacing:.08em;color:#c1d0d9}.lx-finn-trigger strong{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:18px;font-weight:500;color:#fff}
.lx-finn-trigger b{display:inline-block;font-size:22px;font-weight:400;line-height:1;transition:transform .25s}.lx-finn-guide[open] .lx-finn-trigger b{transform:rotate(45deg)}
.lx-finn-trigger:hover>span{background:#16364d;border-color:#c7d6df}.lx-finn-trigger:hover>img{animation:finn-hello .85s ease-in-out}
.lx-finn-guide[open] .lx-finn-trigger>img{height:84px;max-width:54px;animation:none}.lx-finn-guide[open] .lx-finn-trigger small{display:none}.lx-finn-guide[open] .lx-finn-trigger>span{padding:10px 15px}
.lx-finn-trigger:focus-visible,.lx-finn-panel a:focus-visible,.lx-finn-panel button:focus-visible,.lx-finn-conversation:focus-visible{outline:3px solid #cf3447;outline-offset:4px}
.lx-finn-panel{position:absolute;left:auto;right:0;bottom:calc(100% + 12px);display:flex;flex-direction:column;width:415px;max-width:calc(100vw - 40px);height:min(625px,calc(var(--finn-viewport-height,100dvh) - 136px));max-height:none;overflow:hidden;margin:0;padding:0!important;background:#f4f7f8;border:1px solid #c2ced5;border-radius:18px;box-shadow:0 24px 80px #03101e40;text-align:left;color:#163047;animation:finn-panel-in .28s ease-out}
.lx-finn-guide:not([open])>.lx-finn-panel{display:none}
.lx-finn-panel-head{position:relative;flex:none;padding:22px 58px 20px 24px;background:#102c40;color:#fff;border:0}
.lx-finn-panel .lx-finn-overline{font:500 15px/1.5 OZ,Arial,sans-serif;letter-spacing:.11em;color:#c6d4dd;margin:0 0 9px;text-transform:uppercase}
.lx-finn-panel h2{font-family:OZ,Arial,sans-serif;font-size:27px;line-height:1.13;letter-spacing:-.04em;font-weight:500;color:#fff;margin:0;text-transform:none}
.lx-finn-close{position:absolute;right:12px;top:13px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #b5c5cf4d;border-radius:50%;background:none;color:#fff;font:400 26px/1 Arial,sans-serif;cursor:pointer}.lx-finn-close:hover{background:#ffffff1c}
.lx-finn-language{display:flex;align-items:center;gap:6px;flex:none;padding:9px 21px;border-bottom:1px solid #dce5ea;background:#eaf0f3}.lx-finn-language button{font:500 15px/1 OZ,Arial,sans-serif;min-width:42px;min-height:38px;padding:8px;border:1px solid transparent;border-radius:7px;background:none;color:#536c7e;cursor:pointer}.lx-finn-language button[aria-pressed=true]{border-color:#bbcbd6;background:#fff;color:#193e55}.lx-finn-language>span{font-size:14px;line-height:1.3;margin-left:auto;color:#597486}
.lx-finn-conversation{flex:1;min-height:90px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:19px 21px 9px;scroll-behavior:smooth}
.lx-finn-message{font-size:16px;line-height:1.5;margin:0 0 15px;max-width:100%;overflow-wrap:anywhere;animation:finn-message-in .25s ease-out}.lx-finn-message p{margin:3px 0 0!important;color:#294859;font-size:16px!important;line-height:1.5!important;letter-spacing:0!important}.lx-finn-speaker{font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.08em;color:#6b8495}.lx-finn-message-user{margin-left:34px;padding:11px 14px;background:#dce8ee;border-radius:12px 12px 0 12px}.lx-finn-message-user .lx-finn-speaker{color:#395d74}.lx-finn-message-user p{color:#13384e}
.lx-finn-result-links{display:grid;gap:7px;margin:11px 0 0}.lx-finn-result-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;padding:11px 13px;border:1px solid #c2d3dc;border-radius:8px;background:#fff;color:#163d54;text-decoration:none;font-size:16px;line-height:1.4}.lx-finn-result-links a:hover{background:#e0ebf1;border-color:#7b9fb4;color:#8c2030}.lx-finn-result-links a span:last-child{color:#a93142;font-size:20px}
.lx-finn-suggestions{display:flex;flex-wrap:wrap;gap:7px;flex:none;padding:7px 21px 12px}.lx-finn-suggestions button{min-height:39px;font:500 15px/1.3 OZ,Arial,sans-serif;padding:8px 11px;border:1px solid #c3d2dc;border-radius:20px;background:#fff;color:#285069;cursor:pointer}.lx-finn-suggestions button:hover{border-color:#758d9c;background:#e6eef2}
.lx-finn-panel .lx-finn-form{display:block;flex:none;margin:0;padding:12px 21px 0;border:0;background:#f4f7f8;box-shadow:none}.lx-finn-form label{display:block;margin:0 0 8px;font:500 15px/1.35 OZ,Arial,sans-serif;color:#3d5c70;letter-spacing:0;text-transform:none}.lx-finn-input-row{display:flex;gap:7px;align-items:center}.lx-finn-form input{display:block;min-width:0;width:100%;min-height:49px;padding:12px 13px;border:1px solid #a7bdcb;border-radius:8px;background:white;color:#163d54;font:400 16px/1.4 OZ,Arial,sans-serif;letter-spacing:0}.lx-finn-form input:focus{outline:2px solid #436f86;outline-offset:2px;border-color:#537d95}.lx-finn-form input::placeholder{color:#647c8d;opacity:1}.lx-finn-form button{flex:none;width:49px;height:49px;padding:0;border:0;border-radius:8px;background:#b8293c;color:white;font:500 26px/1 OZ,Arial,sans-serif;cursor:pointer}.lx-finn-form button:hover{background:#962236}
.lx-finn-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;margin:0;padding:11px 21px 14px;color:#597486;font-size:14px;line-height:1.4}.lx-finn-panel-foot button{flex:none;font:500 14px/1.4 OZ,Arial,sans-serif;padding:6px 0 6px 7px;min-height:38px;background:none;border:0;color:#3a596e;white-space:nowrap;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.lx-finn-panel-foot button:hover{color:#a82438}
.lx-finn-actions{display:grid;gap:10px;padding:20px}.lx-finn-actions a{font-size:16px;color:#163d54}
.lx-finn-guide.is-form-near:not([open]) .lx-finn-trigger>img{height:112px;max-width:68px}.lx-finn-guide.is-form-near:not([open]) .lx-finn-trigger small{display:none}
.lx-finn-banner-companion{position:absolute;right:max(24px,calc((100vw - 1390px)/2));bottom:18px;z-index:5;pointer-events:none;width:auto;height:120px}.lx-finn-banner-companion img{display:block;position:static;width:auto;height:120px;max-width:80px;object-fit:contain;filter:drop-shadow(0 5px 10px #0005)}
@keyframes finn-ahoy{0%,40%,100%{transform:translateY(0) rotate(0)}45%{transform:translateY(-8px) rotate(-3deg)}50%{transform:translateY(-5px) rotate(2.5deg)}55%{transform:translateY(-7px) rotate(-2deg)}62%{transform:translateY(0) rotate(0)}}
@keyframes finn-hello{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-10px) rotate(-5deg)}65%{transform:translateY(-5px) rotate(4deg)}}
@keyframes finn-panel-in{from{transform:translateY(15px) scale(.985)}to{transform:translateY(0) scale(1)}}
@keyframes finn-message-in{from{transform:translateY(8px)}to{transform:translateY(0)}}
@media(max-width:650px){.lx-finn-guide{right:max(12px,env(safe-area-inset-right));bottom:calc(max(12px,env(safe-area-inset-bottom)) + var(--finn-clearance,0px));max-width:calc(100vw - 24px)}.lx-finn-trigger{gap:3px}.lx-finn-trigger>img{height:104px;max-width:65px}.lx-finn-trigger>span{padding:10px 13px;margin-bottom:4px}.lx-finn-trigger small{font-size:11px}.lx-finn-trigger strong{font-size:17px;gap:18px}.lx-finn-guide[open] .lx-finn-trigger>img{height:54px;max-width:36px}.lx-finn-guide[open] .lx-finn-trigger>span{padding:8px 12px}.lx-finn-panel{width:390px;max-width:calc(100vw - 24px);height:min(630px,calc(var(--finn-viewport-height,100dvh) - 91px));bottom:calc(100% + 8px);border-radius:14px}.lx-finn-panel-head{padding:17px 60px 15px 19px}.lx-finn-panel h2{font-size:25px}.lx-finn-panel .lx-finn-overline{font-size:12px;margin-bottom:7px}.lx-finn-language{padding:6px 16px}.lx-finn-conversation{padding:15px 16px 5px}.lx-finn-suggestions{padding:7px 16px 8px;gap:6px}.lx-finn-suggestions button{font-size:14px;padding:8px 10px}.lx-finn-panel .lx-finn-form{padding:8px 16px 0}.lx-finn-panel-foot{padding:9px 16px 11px;font-size:12px}.lx-finn-panel-foot button{font-size:14px}.lx-finn-guide.is-form-near:not([open]) .lx-finn-trigger>img{height:80px;max-width:50px}}
@media(max-height:600px){.lx-finn-guide[open] .lx-finn-trigger>img{display:none}.lx-finn-panel{height:calc(100dvh - 94px)}.lx-finn-panel-head{padding:13px 57px 13px 19px}.lx-finn-panel h2{font-size:20px}.lx-finn-panel h2 br{display:none}.lx-finn-panel .lx-finn-overline{display:none}.lx-finn-language{padding-top:3px;padding-bottom:3px}.lx-finn-panel-foot{display:none}.lx-finn-panel .lx-finn-form{padding-bottom:12px}.lx-finn-suggestions{display:none}}
@media(prefers-reduced-motion:reduce){.lx-finn-guide,.lx-finn-trigger b,.lx-finn-scene-frame,.lx-finn-conversation{transition:none!important;scroll-behavior:auto}.lx-finn-trigger>img,.lx-finn-panel,.lx-finn-message{animation:none!important;transform:none!important}.lx-finn-scene-frame{transform:none!important}}
.lx-paused .lx-finn-scene-frame{transform:none!important;transition:none!important}.lx-paused .lx-finn-trigger>img,.lx-paused .lx-finn-panel,.lx-paused .lx-finn-message{animation:none!important}.lx-paused .lx-finn-conversation{scroll-behavior:auto}
@media(forced-colors:active){.lx-finn-trigger>span,.lx-finn-panel,.lx-finn-message-user{background:Canvas;color:CanvasText;border:1px solid ButtonText}.lx-finn-result-links a,.lx-finn-close,.lx-finn-panel h2{color:LinkText}.lx-finn-scene-frame{border:1px solid CanvasText}}
@media print{.lx-finn-guide,.lx-finn-banner-companion{display:none!important}.lx-finn-scene-frame{transform:none!important;box-shadow:none}}

.o-page-body .lx-service-finn .lx-finn-visual{width:min(100%,435px);max-width:435px;margin:0 auto}
.o-page-body .lx-service-finn .lx-finn-visual figcaption{color:#536f83;font-size:14px}
.o-page-body .lx-service-finn .lx-finn-scene-frame{box-shadow:0 22px 50px #142b431a}
.lx-systems:has(.lx-service-circle) .lx-finn-visual{max-width:350px;width:min(100%,350px)}
@media(max-width:650px){.o-page-body .lx-service-finn .lx-finn-visual{max-width:320px}.lx-systems:has(.lx-service-circle) .lx-finn-visual{max-width:290px}}

/* Keep the conversation usable above an on-screen keyboard. */
.lx-finn-guide.is-keyboard-open[open] .lx-finn-trigger{visibility:hidden;height:0;min-height:0}
.lx-finn-guide.is-keyboard-open .lx-finn-panel{bottom:0;height:calc(var(--finn-viewport-height,100dvh) - 24px)}
.lx-finn-guide.is-keyboard-open .lx-finn-panel-head{padding:12px 57px 12px 19px}
.lx-finn-guide.is-keyboard-open .lx-finn-panel h2{font-size:20px}
.lx-finn-guide.is-keyboard-open .lx-finn-panel h2 br{display:none}
.lx-finn-guide.is-keyboard-open .lx-finn-overline,.lx-finn-guide.is-keyboard-open .lx-finn-suggestions,.lx-finn-guide.is-keyboard-open .lx-finn-panel-foot{display:none}
.lx-finn-guide.is-keyboard-open .lx-finn-language{padding-top:3px;padding-bottom:3px}
.lx-finn-guide.is-keyboard-open .lx-finn-form{padding-bottom:12px}

/* Separate the two fixed controls and keep Finn above the sticky header. */
body:has(.lx-finn-guide:not([hidden])) .o-backtop{left:max(24px,env(safe-area-inset-left));right:auto}
@media(max-width:650px){body:has(.lx-finn-guide:not([hidden])) .o-backtop{left:max(12px,env(safe-area-inset-left));right:auto}}

/* Readable chat labels at all sizes. */
.lx-finn-trigger small,.lx-finn-speaker,.lx-finn-panel .lx-finn-overline,.lx-finn-panel-foot{font-size:14px;line-height:1.5}
.lx-finn-message,.lx-finn-message p{font-size:17px!important;line-height:1.6!important}
@media(max-width:650px){.lx-finn-trigger small{display:none}.lx-finn-panel h2{font-size:24px}.lx-finn-panel-foot{gap:10px}.lx-finn-panel-foot>span{max-width:210px}}
