/* "Sign in — coming soon" card (founder 2026-11-16): page blurs, a small card in the middle. */
.soon-back { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; padding: 20px;
  background: rgba(236,240,247,.42); backdrop-filter: blur(12px) saturate(1.1); -webkit-backdrop-filter: blur(12px) saturate(1.1);
  opacity: 0; transition: opacity .25s ease; }
.soon-back.open { opacity: 1; }
.soon-card { position: relative; width: min(420px, 100%); background: #fff; border-radius: 26px; padding: 26px 28px 26px; text-align: center;
  box-shadow: 0 0 0 1px rgba(10,20,60,.06), 0 40px 90px -30px rgba(20,50,140,.45);
  transform: translateY(14px) scale(.97); transition: transform .35s cubic-bezier(.2,.8,.2,1); }
.soon-back.open .soon-card { transform: none; }
.soon-card img { width: 168px; height: 168px; margin: 0 auto 4px; mix-blend-mode: multiply; display: block; }
.soon-card .tag3 { margin: 0 0 12px; }
.soon-card h3 { margin: 0 0 8px; font: 600 27px/1.12 var(--serif); letter-spacing: -.02em; }
.soon-card p { margin: 0 auto 22px; max-width: 320px; font: 400 15px/1.5 var(--desc); color: var(--ink-2); }
.soon-acts { display: grid; gap: 8px; }
.soon-acts .hb { justify-content: center; width: 100%; height: 48px; }
.soon-x { position: absolute; right: 14px; top: 14px; width: 36px; height: 36px; border: 0; border-radius: 10px; background: #f2f4f7; cursor: pointer; }
.soon-x::before, .soon-x::after { content: ""; position: absolute; left: 11px; right: 11px; top: 17px; height: 2px; border-radius: 2px; background: var(--ink-2); }
.soon-x::before { transform: rotate(45deg); } .soon-x::after { transform: rotate(-45deg); }
body.soon-open { overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .soon-back, .soon-card { transition: none; } }
.soon-acts button.hb { border: 0; font: 500 15.5px/1 var(--sans); cursor: pointer; }
.soon-acts .hb:focus-visible { outline: 2px solid var(--cobalt); outline-offset: 2px; }
.soon-acts .hb:focus:not(:focus-visible) { outline: none; }
