/* Icon-only call and text controls. Contact options also appear in the mobile menu. */
/* Two persistent contact actions on phones and tablets, including touch tablet landscape. */
@media (max-width:1100px), (hover:none) and (pointer:coarse){
  html body.experience-ready .experience-contact-dock {
    position:fixed;
    display:grid!important;
    grid-template-columns:64px;
    grid-template-rows:64px 64px;
    gap:10px;
    right:max(14px,env(safe-area-inset-right));
    bottom:max(14px,calc(14px + env(safe-area-inset-bottom)));
    z-index:10030;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }
  html body.experience-ready .experience-contact-dock__button {
    display:grid;
    place-items:center;
    grid-column:1;
    width:64px;
    height:64px;
    min-width:64px;
    min-height:64px;
    padding:0;
    border:1px solid transparent;
    border-radius:50%;
    color:#fff;
    text-decoration:none;
    box-shadow:0 5px 20px #20224c26;
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
  }
  html body.experience-ready .experience-contact-dock__button svg { width:32px; height:32px; }
  html body.experience-ready .experience-contact-dock__button--call { grid-row:1; background:#3431a3; border-color:#3431a3; }
  html body.experience-ready .experience-contact-dock__button--call svg { fill:currentColor; }
  html body.experience-ready .experience-contact-dock__button--text { grid-row:2; background:#3431a3; border-color:#3431a3; }
  html body.experience-ready .experience-contact-dock__button--text svg { fill:none; }
  html body.experience-ready .experience-contact-dock__button--call:hover { background:#292680; }
  html body.experience-ready .experience-contact-dock__button--text:hover { background:#292680; }
  html body.experience-ready .experience-contact-dock__button:focus-visible { outline:3px solid #6865df; outline-offset:3px; }
  /* Let the final menu and footer links scroll above the fixed controls. */
  html body.experience-ready > #mobileDrawer.experience-drawer .mobile-menu { padding-bottom:calc(168px + env(safe-area-inset-bottom))!important; }
  html body.experience-ready.has-experience-contact footer { padding-bottom:calc(176px + env(safe-area-inset-bottom))!important; }
}
@media(prefers-reduced-motion:reduce){
  html body .experience-contact-dock,html body .experience-contact-dock__button { transition:none!important; transform:none!important; }
}

html body.experience-ready.menu-open .experience-contact-dock{display:none!important}

html body.experience-ready .experience-menu-actions .mobile-menu-text{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;background:#3431a3;color:#fff}
html body.experience-ready .experience-menu-actions .mobile-menu-text svg{width:22px;height:22px;min-width:22px;flex-shrink:0}
/* The contact section's text button complements the persistent phone controls. */
html body a.mobile-text-cta{display:none!important}
@media(max-width:900px){html body a.mobile-text-cta{display:inline-flex!important;align-items:center;justify-content:center;min-height:48px;background:#3431a3!important;border:1px solid #3431a3!important;color:#fff!important}}
