/* RC2.2 — site-wide Direct Conversation visual system. */
body.inquiry-open{overflow:hidden}

.site-conversation-float.project-team-float{
  position:fixed;
  right:28px;
  bottom:26px;
  z-index:70;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:64px;
  max-width:min(360px,calc(100vw - 40px));
  padding:7px 18px 7px 8px;
  border:1px solid rgba(133,151,255,.30);
  border-radius:999px;
  background:rgba(12,26,46,.96);
  color:#fff;
  box-shadow:0 18px 46px rgba(4,12,24,.26),0 0 0 1px rgba(117,104,255,.04);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  font:inherit;
  text-align:left;
  cursor:pointer;
  animation:projectTeamFloatIntro .72s cubic-bezier(.2,.72,.2,1) 1s 1 both;
  transition:opacity .24s ease,visibility .24s ease,transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .2s ease,background .2s ease,border-color .2s ease;
}
.site-conversation-float.project-team-float:hover{background:#112542;border-color:rgba(143,129,255,.50);box-shadow:0 22px 54px rgba(4,12,24,.32),0 0 0 4px rgba(117,104,255,.06);transform:translateY(-2px)}
.site-conversation-float.project-team-float.is-hidden,
.site-conversation-float.project-team-float.is-footer-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(14px) scale(.94)}
.site-conversation-float .project-team-float-mark{position:relative;width:50px;height:50px;flex:0 0 50px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#655cff 0%,#476fff 100%);box-shadow:0 8px 20px rgba(73,88,255,.28),inset 0 0 0 1px rgba(255,255,255,.18)}
.site-conversation-float .project-team-float-mark::before{content:"";position:absolute;inset:-4px;border:1px solid rgba(132,119,255,.42);border-radius:50%;pointer-events:none}
.site-conversation-float .project-team-float-mark::after{content:"";position:absolute;right:-4px;bottom:3px;width:14px;height:11px;border-radius:7px 7px 7px 3px;background:#fff;box-shadow:0 3px 8px rgba(4,12,24,.22);pointer-events:none}
.site-conversation-float .project-team-float-mark img{width:25px;height:26px;display:block;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.10))}
.site-conversation-float .project-team-float-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.site-conversation-float .project-team-float-copy strong{font-size:14px;line-height:1.14;font-weight:780;letter-spacing:-.01em;white-space:nowrap}
.site-conversation-float .project-team-float-copy>span{max-width:245px;overflow:hidden;text-overflow:ellipsis;color:#aebbd0;font-size:10.5px;line-height:1.2;white-space:nowrap;transition:opacity .16s ease,transform .16s ease}
.site-conversation-float.is-updating .project-team-float-copy>span{opacity:.3;transform:translateY(2px)}
@keyframes projectTeamFloatIntro{0%{opacity:0;transform:translateY(12px) scale(.94)}60%{opacity:1;transform:translateY(-2px) scale(1.025)}100%{opacity:1;transform:translateY(0) scale(1)}}

/* Homepage retains its approved dock behavior while using the same global button. */
.site-conversation-float.project-team-float.is-docked{position:relative;right:auto;bottom:auto;z-index:2;width:100%;min-height:64px;margin:0;animation:none;transform:none;box-shadow:0 12px 30px rgba(4,12,24,.14)}
.site-conversation-float.project-team-float.is-docked:hover{transform:translateY(-1px)}

.direct-conversation-dialog.inquiry-dialog{position:fixed;inset:0 0 0 auto;width:min(560px,94vw);height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:18px 0 0 18px;background:#fff;color:#14171d;box-shadow:-24px 0 70px rgba(7,13,22,.16);overflow:auto;overscroll-behavior:contain}
.direct-conversation-dialog.inquiry-dialog[open]{animation:projectTeamDrawerIn .34s cubic-bezier(.2,.7,.2,1) both}
.direct-conversation-dialog.inquiry-dialog::backdrop{background:rgba(7,13,22,.58);backdrop-filter:blur(2px)}
@keyframes projectTeamDrawerIn{from{opacity:0;transform:translateX(34px)}to{opacity:1;transform:translateX(0)}}
.direct-conversation-dialog .inquiry-shell{position:relative;min-height:100%;padding:34px 30px 40px;display:flex;flex-direction:column}
.direct-conversation-dialog .inquiry-close{position:absolute;top:20px;right:20px;width:38px;height:38px;border:1px solid #dfe2e7;border-radius:999px;background:#fff;color:#3b4049;font:inherit;font-size:23px;line-height:1;cursor:pointer}
.direct-conversation-dialog .inquiry-head{padding-right:44px;margin-bottom:22px}
.direct-conversation-dialog .inquiry-kicker{margin:0 0 12px;color:#7568ff;font-size:10px;line-height:1;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.direct-conversation-dialog .inquiry-head h2{margin:0;max-width:440px;font-size:34px;line-height:1.04;letter-spacing:-.045em;font-weight:750}
.direct-conversation-dialog .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.direct-conversation-dialog .inquiry-form-direct{display:flex;flex:1;min-height:0;flex-direction:column;margin-top:0}
.direct-conversation-dialog .inquiry-hp{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.direct-conversation-dialog .direct-conversation-prompts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.direct-conversation-dialog .direct-conversation-prompt{appearance:none;border:1px solid #d9dde4;border-radius:999px;background:#fff;color:#343942;padding:9px 12px;font:inherit;font-size:12px;line-height:1.25;cursor:pointer}
.direct-conversation-dialog .direct-conversation-prompt:hover,
.direct-conversation-dialog .direct-conversation-prompt.is-active{border-color:#8b7cff;background:#f7f5ff;color:#3f3598}
.direct-conversation-dialog .direct-conversation-thread{display:flex;flex:1;min-height:100px;max-height:38vh;overflow:auto;flex-direction:column;gap:10px;margin:0 0 14px;padding:4px 2px 2px}
.direct-conversation-dialog .direct-conversation-thread[hidden]{display:none}
.direct-conversation-dialog .direct-conversation-bubble{max-width:88%;padding:11px 13px;border-radius:14px;font-size:13px;line-height:1.55;white-space:pre-line}
.direct-conversation-dialog .direct-conversation-bubble.is-visitor{align-self:flex-end;background:#101a2c;color:#fff;border-bottom-right-radius:5px}
.direct-conversation-dialog .direct-conversation-bubble.is-team{align-self:flex-start;background:#f3f5f7;color:#343942;border-bottom-left-radius:5px}
.direct-conversation-dialog .direct-conversation-composer{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:8px;align-items:end;margin-top:auto;padding:7px;border:1px solid #d9dde4;border-radius:14px;background:#fff}
.direct-conversation-dialog .direct-conversation-composer textarea{width:100%;min-height:44px;max-height:150px;padding:11px 10px;border:0;border-radius:8px;resize:vertical;outline:none;box-shadow:none;background:#fff;color:#181b21;font:inherit;line-height:1.45}
.direct-conversation-dialog .direct-conversation-composer textarea:focus{border:0;box-shadow:none}
.direct-conversation-dialog .direct-conversation-send{display:flex;align-items:center;justify-content:center;width:46px;min-width:46px;max-width:46px;min-height:46px;height:46px;margin:0;padding:0;border:0;border-radius:11px;background:#101a2c;color:#fff;font:inherit;font-size:20px;cursor:pointer}
.direct-conversation-dialog .direct-conversation-status{margin-top:10px;padding:11px 12px;border-radius:7px;font-size:12px;line-height:1.5}
.direct-conversation-dialog .direct-conversation-status.is-success{background:#f0f8f3;color:#24563a}
.direct-conversation-dialog .direct-conversation-status.is-error{background:#fff2f2;color:#8a3030}
.direct-conversation-dialog .direct-conversation-after{margin-top:14px;padding-top:14px;border-top:1px solid #e4e7eb}
.direct-conversation-dialog .direct-conversation-after[hidden],
.direct-conversation-dialog .direct-conversation-contact[hidden],
.direct-conversation-dialog .direct-conversation-contact-status[hidden],
.direct-conversation-dialog .direct-conversation-reference[hidden]{display:none}
.direct-conversation-dialog .direct-conversation-reference{margin:0 0 9px;color:#7a818b;font-size:11px;line-height:1.4}
.direct-conversation-dialog .direct-conversation-contact-toggle{appearance:none;padding:0;border:0;background:transparent;color:#4f44bd;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}
.direct-conversation-dialog .direct-conversation-contact{margin-top:14px;padding:14px;border:1px solid #e1e4e8;border-radius:12px;background:#fafbfc}
.direct-conversation-dialog .direct-conversation-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.direct-conversation-dialog .form-field{display:block}
.direct-conversation-dialog .form-field>span{display:block;margin-bottom:7px;color:#343942;font-size:11.5px;line-height:1.25;font-weight:680}
.direct-conversation-dialog .form-field input{width:100%;height:48px;padding:0 13px;border:1px solid #d9dde4;border-radius:7px;background:#fff;color:#181b21;font:inherit;outline:none}
.direct-conversation-dialog .form-field input:focus{border-color:#8b7cff;box-shadow:0 0 0 3px rgba(90,70,246,.09)}
.direct-conversation-dialog .direct-conversation-contact-save{appearance:none;margin-top:12px;padding:10px 13px;border:0;border-radius:8px;background:#101a2c;color:#fff;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.direct-conversation-dialog .direct-conversation-contact-save:disabled,
.direct-conversation-dialog .direct-conversation-send:disabled{opacity:.58;cursor:wait}
.direct-conversation-dialog .direct-conversation-contact-status{margin-top:9px;font-size:12px;line-height:1.45}
.direct-conversation-dialog .direct-conversation-contact-status.is-success{color:#24563a}
.direct-conversation-dialog .direct-conversation-contact-status.is-error{color:#8a3030}

body.nav-open .site-conversation-float.project-team-float,
body.inquiry-open .site-conversation-float.project-team-float{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(12px) scale(.96)!important}

@media (max-width:980px){.site-conversation-float.project-team-float{right:18px;bottom:18px}}
@media (max-width:680px){
  .site-conversation-float.project-team-float{right:14px;bottom:14px;min-height:58px;padding:5px;border-radius:50%}
  .site-conversation-float .project-team-float-mark{width:48px;height:48px;flex-basis:48px}
  .site-conversation-float .project-team-float-copy{display:none}
  .site-conversation-float.project-team-float.is-docked{width:100%;min-height:58px;padding:6px 14px 6px 6px;border-radius:999px}
  .site-conversation-float.project-team-float.is-docked .project-team-float-copy{display:flex}
  .direct-conversation-dialog.inquiry-dialog{width:100vw;height:100dvh;border-radius:0}
  .direct-conversation-dialog .inquiry-shell{padding:26px 18px 34px}
  .direct-conversation-dialog .inquiry-head{margin-bottom:18px}
  .direct-conversation-dialog .direct-conversation-prompts{gap:7px;margin-bottom:16px}
  .direct-conversation-dialog .direct-conversation-prompt{padding:8px 10px;font-size:11.5px}
  .direct-conversation-dialog .direct-conversation-thread{max-height:34vh}
  .direct-conversation-dialog .direct-conversation-contact-fields{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .site-conversation-float.project-team-float{animation:none;transition:none}
  .direct-conversation-dialog.inquiry-dialog[open]{animation:none}
}
/* RC2.7 · Minimal form-data notice. */
.form-data-notice{
  margin:10px 0 0;
  max-width:720px;
  color:#7a818b;
  font-size:12px;
  line-height:1.55;
}
.direct-conversation-contact .form-data-notice{
  margin-top:10px;
  max-width:440px;
}
