/* The chat button (src/content/tracking.mjs, production builds only): LiveChat loads only when it is pressed, and its
   own window then takes over. One round control in the corner, forest with a white icon (everyday icon rules) and a
   light ring, so it stands out on the forest heroes as well as on light sections. Focus adds a forest ring outside
   the light one: one of the two always shows. It sits under the header (120) and any dialog, and gives way to the
   phone menu, which covers the whole screen. */
.chat-launch{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:100;display:grid;place-items:center;width:56px;height:56px;margin:0;padding:0;border:0;border-radius:50%;background:#244140;color:#fff;cursor:pointer;box-shadow:0 0 0 2px #f8faf7,0 10px 28px -10px rgba(23,59,48,.55),0 2px 6px rgba(23,59,48,.16);-webkit-tap-highlight-color:transparent;transition:transform .16s cubic-bezier(.23,1,.32,1),background-color .16s ease}
.chat-launch svg{display:block;width:24px;height:24px}
@media(hover:hover){.chat-launch:hover{background:#2e504d}}
.chat-launch:active{transform:scale(.96)}
.chat-launch:focus-visible{outline:2px solid transparent;outline-offset:4px;box-shadow:0 0 0 2px #f8faf7,0 0 0 4px #244140,0 10px 28px -10px rgba(23,59,48,.55)}
.chat-launch[aria-busy="true"]{cursor:progress}
.chat-launch[aria-busy="true"] svg{animation:chat-launch-wait .9s ease-in-out infinite alternate}
@keyframes chat-launch-wait{to{opacity:.45}}
@media(max-width:760px){.chat-launch{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:52px;height:52px}}
body:has(.site-navigation[data-mobile-open]) .chat-launch{display:none}
@media(prefers-reduced-motion:reduce){.chat-launch{transition:none}.chat-launch:active{transform:none}.chat-launch[aria-busy="true"] svg{animation:none;opacity:.6}}
@media print{.chat-launch{display:none}}
