/* ===== Junglemania · модалка «Обсудить проект» (стекло, в цвет страницы) ===== */
.contact{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;
  padding:24px;opacity:0;pointer-events:none;transition:.4s ease;font-family:'Inter',sans-serif}
.contact.open{opacity:1;pointer-events:auto}
.contact-backdrop{position:absolute;inset:0;background:rgba(3,7,5,.62);
  backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.contact-card{position:relative;z-index:2;width:min(460px,94vw);max-height:90vh;overflow-y:auto;
  background:rgba(12,18,16,.55);border:1px solid rgba(255,255,255,.16);border-radius:22px;
  backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);
  box-shadow:0 30px 80px rgba(0,0,0,.5);padding:26px 26px 24px;
  transform:translateY(18px) scale(.98);transition:.45s cubic-bezier(.2,.8,.2,1)}
.contact.open .contact-card{transform:none}
.contact-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}
.contact-title{font-family:'Sora',sans-serif;font-weight:800;font-size:24px;line-height:1.1;color:var(--ink,#F2FBEF)}
.contact-close{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.2);
  background:rgba(0,0,0,.2);color:var(--ink,#F2FBEF);cursor:pointer;font-size:16px;line-height:1;transition:.2s;
  display:flex;align-items:center;justify-content:center}
.contact-close:hover{border-color:var(--accent,#6FE36A);color:var(--accent,#6FE36A);transform:rotate(90deg)}
.contact-intro{font-size:14.5px;line-height:1.55;color:var(--muted,#BFD6BC);margin:6px 0 18px}
/* прямые контакты */
.contact-methods{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
.contact-method{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:14px;text-decoration:none;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);transition:.22s}
.contact-method:hover{border-color:var(--accent,#6FE36A);background:rgba(255,255,255,.07);transform:translateX(3px)}
.contact-method .ic{flex:none;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.06);color:var(--accent,#6FE36A)}
.contact-method .ic svg{width:18px;height:18px;display:block}
.contact-method .mlab{font-size:12px;color:var(--muted,#BFD6BC);line-height:1.3}
.contact-method .mval{font-family:'Sora',sans-serif;font-weight:600;font-size:15px;color:var(--ink,#F2FBEF);line-height:1.3}
/* разделитель */
.contact-or{display:flex;align-items:center;gap:12px;margin:2px 0 16px;color:var(--muted,#BFD6BC);font-size:11.5px;
  letter-spacing:.12em;text-transform:uppercase}
.contact-or::before,.contact-or::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.12)}
/* форма */
.contact-form{display:flex;flex-direction:column;gap:12px}
.contact-form .field{display:flex;flex-direction:column;gap:6px}
.contact-form label{font-size:12.5px;color:var(--muted,#BFD6BC)}
.contact-form input,.contact-form textarea{font-family:'Inter',sans-serif;font-size:15px;color:var(--ink,#F2FBEF);
  background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:12px 14px;
  outline:none;transition:.2s;width:100%}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,.32)}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent,#6FE36A);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--accent,#6FE36A) 22%, transparent)}
.contact-form textarea{resize:vertical;min-height:78px}
.contact-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;pointer-events:none}
.contact-submit{font-family:'Sora',sans-serif;font-weight:600;font-size:16px;padding:14px 24px;border:none;border-radius:14px;
  background:var(--accent,#6FE36A);color:#10140F;cursor:pointer;transition:.25s;margin-top:4px}
.contact-submit:hover{transform:translateY(-2px);box-shadow:0 12px 30px color-mix(in srgb, var(--accent,#6FE36A) 35%, transparent)}
.contact-submit:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}
.contact-status{font-size:14px;min-height:20px;line-height:1.4;margin-top:2px}
.contact-status.ok{color:var(--accent2,#4FD4C4)}
.contact-status.err{color:#ff7a7a}
@media(max-width:480px){.contact-card{padding:22px 18px}}
