/* ─── Floating Contact Widget ─────────────────────────────────────── */

.contact-fab {
  position: fixed;
  bottom: var(--space-lg);
  right: var(--space-lg);
  z-index: 1000;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-sm);
}

.contact-fab__trigger {
  background: rgba(181, 136, 44, 0.25);
  color: var(--color-brass);
  border: 1px solid rgba(181, 136, 44, 0.3);
  padding: var(--space-sm) var(--space-md);
  font-family: var(--font-family);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  transition: background var(--transition-normal), border-color var(--transition-normal), color var(--transition-normal);
  line-height: var(--line-height-tight);
}

.contact-fab__trigger:hover,
.contact-fab--open .contact-fab__trigger {
  background: var(--color-brass);
  border-color: var(--color-brass);
  color: #fff;
}

.contact-fab__panel {
  display: flex;
  flex-direction: column;
  gap: 1px;
  background: var(--color-brass);
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px) scale(0.95);
  transform-origin: bottom right;
  transition: opacity var(--transition-normal), transform var(--transition-normal);
  overflow: hidden;
}

.contact-fab--open .contact-fab__panel {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.contact-fab__link {
  display: block;
  padding: var(--space-sm) var(--space-md);
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-family);
  font-size: var(--font-size-sm);
  text-decoration: none;
  white-space: nowrap;
  transition: background var(--transition-fast), color var(--transition-fast);
}

.contact-fab__link:hover {
  background: var(--color-brass);
  color: #fff;
}

@media (max-width: 600px) {
  .contact-fab {
    bottom: var(--space-md);
    right: var(--space-md);
  }
}
