  /* contact modal */
  .contact-modal{
    position:fixed;inset:0;
    background:rgba(6,16,26,.86);
    display:none;
    align-items:center;justify-content:center;
    padding:24px;
    z-index:110;
  }
  .contact-modal.show{display:flex;}
  .contact-modal__card{
    position:relative;
    width:100%;max-width:460px;
    max-height:90vh;max-height:calc(100dvh - 40px);overflow-y:auto;
    background:var(--ink-2);
    border:1px solid var(--blueline-dim);
    border-radius:var(--radius);
    padding:32px;
  }
  .contact-modal__close{
    position:absolute;top:16px;right:16px;
    background:none;border:1px solid var(--blueline-dim);
    color:var(--paper);
    width:34px;height:34px;
    border-radius:var(--radius);
    font-size:19px;line-height:1;
    cursor:pointer;
  }
  .contact-modal__close:hover{border-color:var(--signal);color:var(--signal);}
  .contact-modal__title{
    font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;
    font-size:24px;line-height:1.05;margin:0 0 8px;
  }
  .contact-modal__sub{color:var(--paper-dim);font-size:14.5px;margin:0 0 22px;}
  .contact-form__field{display:block;margin-bottom:14px;}
  .contact-form__field span{
    display:block;
    font-family:'IBM Plex Mono',monospace;
    font-size:12px;letter-spacing:.05em;text-transform:uppercase;
    color:var(--mute);
    margin-bottom:6px;
  }
  .contact-form__field span em{color:var(--signal);font-style:normal;}
  .contact-form__field input,
  .contact-form__field textarea{
    width:100%;
    background:var(--ink);
    border:1px solid var(--blueline-dim);
    border-radius:var(--radius);
    color:var(--paper);
    font-family:'IBM Plex Sans',sans-serif;
    font-size:14.5px;
    padding:10px 12px;
    box-sizing:border-box;
    transition:border-color .15s ease;
  }
  .contact-form__field input:focus,
  .contact-form__field textarea:focus{border-color:var(--signal);}
  .contact-form__field textarea{resize:vertical;min-height:70px;}
  .contact-form__honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
  .contact-form__consent{
    display:flex;gap:10px;align-items:flex-start;
    font-size:13px;color:var(--paper-dim);
    margin-bottom:20px;cursor:pointer;
  }
  .contact-form__consent input{accent-color:var(--signal);margin-top:3px;flex-shrink:0;}
  .contact-form__consent a{color:var(--blueline);text-decoration:underline;}
  .contact-form__consent a:hover{color:var(--signal);}
  .contact-form__submit{width:100%;justify-content:center;border:none;font-family:'IBM Plex Mono',monospace;}
  .contact-form__submit:disabled{opacity:.6;cursor:default;transform:none;}
  .contact-form__status{
    font-size:13px;color:var(--signal-dim);
    background:rgba(255,106,57,.1);
    border:1px solid var(--signal-dim);
    border-radius:var(--radius);
    padding:10px 12px;margin-bottom:16px;
  }
  .contact-modal__success{text-align:center;}
  .contact-modal__success .btn{margin:4px auto 0;}


.contact-modal .btn--ghost{background:transparent;}
