/* ============================================================
   alongside · shared dialog
   One dialog frame for the whole site. Used by the readiness
   check (capacity-sprint) and the "Start a conversation" modal
   (assets/js/contact.js). Tokens from site.css only.
   ============================================================ */

/* ---------- frame (shared by every dialog) ---------- */
/* site.css resets every margin to 0, which also removes the browser's centering of <dialog>; margin:auto restores it */
.als-dialog{margin:auto;border:0;border-radius:var(--r-lg);padding:0;max-width:640px;width:calc(100% - 48px);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow:auto;background:var(--white);color:var(--ink);font-family:var(--font)}
.als-dialog::backdrop{background:rgba(17,20,16,.45)}
.als-dialog-in{padding:clamp(24px,4vw,44px)}
.als-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.als-dialog h2{font-size:24px;font-weight:600;line-height:1.25;letter-spacing:-0.01em}
.als-dialog h2:focus{outline:none}
.als-dialog .als-sub{margin-top:8px;color:var(--ink-soft);font-size:16px}
.als-close{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--white);cursor:pointer;color:var(--ink);font-size:22px;line-height:1;display:grid;place-items:center;transition:border-color 180ms var(--ease),color 180ms var(--ease)}
.als-close:hover{border-color:var(--danube);color:var(--danube)}
@media(max-width:600px){.als-dialog{width:calc(100% - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}}

/* ---------- start a conversation ---------- */
.als-contact-email{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.als-contact-address{font-size:19px;font-weight:600;letter-spacing:-0.005em;color:var(--ink);user-select:all;-webkit-user-select:all}
.als-copy{font-family:var(--font);font-size:14px;font-weight:500;line-height:1.2;padding:8px 14px;border-radius:var(--pill);border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;min-height:36px;transition:border-color 180ms var(--ease),color 180ms var(--ease),background 180ms var(--ease)}
.als-copy:hover{border-color:var(--danube);color:var(--danube)}
.als-copy[data-copied]{border-color:var(--danube);background:var(--danube-wash);color:var(--danube)}
.als-contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.als-contact-note{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);font-size:16px;line-height:1.5;color:var(--ink)}
@media(max-width:600px){
  .als-contact-actions{flex-direction:column}
  .als-contact-actions .btn{justify-content:center}
  .als-contact-note{margin-top:22px;padding-top:16px}
}
