.contact-dialog{width:min(620px,calc(100% - 36px));max-height:calc(100dvh - 36px);margin:auto;padding:34px;border:1px solid #ffffff20;border-radius:20px;color:var(--ink);background:radial-gradient(ellipse at 0 0,#ff3d6e0b,transparent 55%),#111117;box-shadow:0 30px 110px #000b;overflow:auto;overscroll-behavior:contain}
.contact-dialog::backdrop{background:#000b;backdrop-filter:blur(10px)}
.contact-close{position:absolute;top:19px;right:19px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #ffffff14;border-radius:10px;color:#a7a7b6;background:#ffffff04;font-size:16px;line-height:1;transition:color .2s,border-color .2s}
.contact-close:hover{color:var(--ink);border-color:#ff3d6e70}
.contact-heading{display:block;padding-right:30px;margin-bottom:24px}
.contact-heading .eyebrow{font-family:var(--display);font-size:8px;letter-spacing:1.6px;color:var(--pink)}
.contact-heading h2{font-size:29px;line-height:1.45;font-weight:650;letter-spacing:-.7px;margin:15px 0 13px}
.contact-heading>p{font-size:12px;line-height:1.95;color:#9292a3;margin:0}
.contact-grid{display:grid;grid-template-columns:1fr;gap:12px}
.contact-card{--contact-accent:var(--pink);display:grid;grid-template-columns:42px minmax(0,1fr) 18px;column-gap:18px;align-items:center;min-height:112px;padding:19px 21px;border:1px solid #ffffff12;border-radius:12px;background:linear-gradient(130deg,#ffffff02,transparent 60%),#191920;transition:border-color .2s,background .2s,transform .2s;position:relative}
.contact-card:hover{border-color:color-mix(in srgb,var(--contact-accent) 55%,transparent);background:linear-gradient(130deg,color-mix(in srgb,var(--contact-accent) 7%,transparent),transparent 75%),#191920;transform:translateY(-2px)}
.contact-card:focus-visible{outline:2px solid var(--contact-accent);outline-offset:3px}
.contact-x{--contact-accent:#f4f3ee}.contact-mail{--contact-accent:#b69aee}
.contact-icon{width:42px;height:42px;border-radius:12px;border:1px solid color-mix(in srgb,var(--contact-accent) 18%,transparent);background:color-mix(in srgb,var(--contact-accent) 7%,transparent);color:var(--contact-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-icon svg{height:23px;width:23px;display:block}.contact-x .contact-icon svg{height:18px;width:18px}
.contact-info{min-width:0;display:block}
.contact-platform{display:block;color:#9393a4;font-size:10px;line-height:1.5;letter-spacing:.4px}
.contact-info strong{display:block;font-family:var(--display);font-size:16px;line-height:27px;letter-spacing:-.4px;font-weight:500;margin-top:3px;color:var(--ink);white-space:nowrap}
.contact-mail .contact-info strong{font-family:var(--font);font-size:17px;letter-spacing:-.2px;font-weight:550}
.contact-action{display:block;font-size:10px;line-height:1.7;color:#808092;margin-top:4px;transition:color .2s}
.contact-card:hover .contact-action{color:var(--contact-accent)}
.contact-arrow{font-size:21px;line-height:1;color:#737383;transition:color .2s,transform .2s}
.contact-card:hover .contact-arrow{color:var(--contact-accent);transform:translate(2px,-2px)}
.footer-links{display:flex;align-items:center;gap:20px}
.site-footer .contact-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#d0d0dc;font-size:10px;padding:6px 10px;border:1px solid #ffffff18;border-radius:6px;background:#ffffff03;transition:border-color .2s,color .2s}
.site-footer .contact-trigger:hover{color:var(--ink);border-color:#ff3d6e70}
.contact-trigger-dot{width:4px;height:4px;border-radius:50%;background:var(--pink)}
@media(max-width:760px){
  .contact-dialog{width:calc(100% - 32px);max-width:520px;max-height:calc(100dvh - 32px);padding:27px 24px;border-radius:17px}
  .contact-close{top:15px;right:15px;width:31px;height:31px;border-radius:9px;font-size:14px}
  .contact-heading{padding-right:17px;margin-bottom:22px}.contact-heading h2{font-size:26px;margin-top:16px;letter-spacing:-.5px}
  .contact-heading>p{font-size:11px;line-height:1.9}.contact-heading .eyebrow{font-size:7px;letter-spacing:1.2px}
  .contact-card{grid-template-columns:38px minmax(0,1fr) 14px;column-gap:14px;padding:17px 15px;min-height:105px}
  .contact-icon{width:38px;height:38px;border-radius:10px}.contact-icon svg{width:21px;height:21px}
  .contact-info strong{font-size:15px}.contact-mail .contact-info strong{font-size:16px}.contact-arrow{font-size:19px}
  .footer-links{gap:16px}
}
@media(max-width:380px){
  .contact-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:25px 17px;border-radius:15px}
  .contact-heading{padding-right:18px}.contact-heading h2{font-size:23px}.contact-heading>p{font-size:10px}
  .contact-card{grid-template-columns:32px minmax(0,1fr) 12px;column-gap:10px;padding:15px 12px;min-height:99px}
  .contact-icon{width:32px;height:32px;border-radius:9px}.contact-icon svg{width:19px;height:19px}.contact-x .contact-icon svg{width:16px;height:16px}
  .contact-info strong{font-size:13px}.contact-mail .contact-info strong{font-size:14px}.contact-action{font-size:9px;margin-top:2px}.contact-arrow{font-size:17px}
}
