/* w3K LLC: contact panel in the Signal dark-green and mint palette. */
.w3k-contact-open{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid #294b40;border-radius:50%;background:transparent;color:#68f7b1;font:400 30px/1 Arial,sans-serif;cursor:pointer}
.w3k-contact-open:hover,.w3k-contact-open:focus-visible{background:#174638;color:#a4ffd2;border-color:#68f7b1}
.signal-contact-item{display:flex;align-items:center;justify-content:center}
dialog.w3k-contact-panel{position:fixed;inset:0 0 0 auto;box-sizing:border-box;margin:0;width:min(420px,100%);max-width:100%;height:100dvh;max-height:100dvh;padding:80px 36px max(80px,env(safe-area-inset-bottom));border:0;border-left:1px solid #3d6357;background:#102522;color:#c2dfd1;box-shadow:-16px 0 60px #0005;overflow:auto;font:400 16px/1.7 SignalInter,Inter,Arial,sans-serif}
dialog.w3k-contact-panel:not([open]){display:none}
.w3k-contact-panel::backdrop{background:#07131699}
.w3k-contact-panel .w3k-contact-eyebrow{color:#68f7b1;font-size:11px;letter-spacing:.16em;margin:0 0 22px}
.w3k-contact-panel h2{color:#f5fcf9;font:800 36px/1.2 SignalInter,Inter,Arial,sans-serif;margin:0 0 24px}
.w3k-contact-panel h3{color:#68f7b1;font:600 14px/1.4 SignalInter,Inter,Arial,sans-serif;letter-spacing:.12em;margin:38px 0 20px}
.w3k-contact-panel p{margin:0 0 20px;color:inherit}.w3k-contact-panel address{font:inherit;color:inherit}
.w3k-contact-panel a{color:#f5fcf9;text-decoration:none}.w3k-contact-panel a:hover{color:#68f7b1;text-decoration:underline}
.w3k-contact-panel .w3k-contact-close{position:absolute;right:16px;top:16px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #64887b;border-radius:50%;background:transparent;color:#f5fcf9;font:400 30px/1 Arial,sans-serif;cursor:pointer}
.w3k-contact-panel .w3k-contact-close:hover{background:#174638;color:#68f7b1}
.w3k-contact-panel :focus-visible,.w3k-contact-open:focus-visible{outline:2px solid #68f7b1;outline-offset:4px}
.w3k-contact-panel .cx-panel-admin{position:fixed;bottom:16px;right:16px;width:44px;height:44px;background:#071316;color:#68f7b1;border-color:#68f7b1}
@media(max-width:1100px){.signal-contact-item{justify-content:flex-start;padding:8px 20px}#cx-site-menu .w3k-contact-open{margin:8px 20px}}
@media(max-width:400px){dialog.w3k-contact-panel{padding-left:24px;padding-right:24px}}
/* Override the theme's section-heading !important rules only in this dialog. */
.w3k-signal dialog.w3k-contact-panel h2{font-size:36px!important;line-height:1.2!important;color:#f5fcf9!important;letter-spacing:0}
.w3k-signal dialog.w3k-contact-panel h3{font-size:14px!important;line-height:1.4!important;font-weight:600!important;color:#68f7b1!important;letter-spacing:.12em}
dialog.w3k-contact-panel :focus-visible{outline:2px solid #68f7b1!important;outline-offset:4px}

/* Draw the plus geometrically so font baselines cannot shift it off center. */
.w3k-contact-open{position:relative;box-sizing:border-box}
.w3k-contact-open>span{font-size:0!important;line-height:0}
.w3k-contact-open::before,.w3k-contact-open::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:16px;height:2px;border-radius:1px;background:currentColor;pointer-events:none}
.w3k-contact-open::after{width:2px;height:16px}
@keyframes w3k-contact-ring{0%,100%{box-shadow:0 0 0 0 #68f7b140}50%{box-shadow:0 0 0 3px #68f7b180}}
.w3k-contact-open:hover,.w3k-contact-open:focus-visible,
#cx-site-menu .cx-nav-icon:hover,#cx-site-menu .cx-nav-icon:focus-visible,
.signal-avada-menu .signal-nav-icon>.awb-menu__main-a:hover,.signal-avada-menu .signal-nav-icon>.awb-menu__main-a:focus-visible{animation:w3k-contact-ring 1.5s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.w3k-contact-open,#cx-site-menu .cx-nav-icon,.signal-avada-menu .signal-nav-icon>.awb-menu__main-a{animation:none!important}}
.signal-paused .w3k-contact-open{animation:none!important}
/* Phone contact sheet drops from the top without shifting the underlying page. */
@keyframes w3k-contact-drop{from{transform:translateY(-100%);opacity:.4}to{transform:translateY(0);opacity:1}}
@media(max-width:600px){
 dialog.w3k-contact-panel{inset:0 0 auto;width:100%;height:auto;max-height:100dvh;padding-top:76px;padding-bottom:calc(32px + env(safe-area-inset-bottom));border-left:0;border-bottom:1px solid #3d6357;border-radius:0 0 16px 16px;box-shadow:0 16px 60px #0005}
 dialog.w3k-contact-panel[open]{animation:w3k-contact-drop .24s ease-out}
 .w3k-contact-panel .cx-panel-admin{position:relative;bottom:auto;right:auto;margin:24px 0 0 auto}
}
@media(prefers-reduced-motion:reduce){dialog.w3k-contact-panel[open]{animation:none!important}}
.signal-paused dialog.w3k-contact-panel[open]{animation:none!important}
