
#research-contact { box-sizing:border-box; width:min(600px, calc(100% - 32px)); max-height:calc(100dvh - 32px); padding:clamp(24px,4vw,38px); border:1px solid #555b5e; background:#16191b; color:#eef1f1; font-family:'Instrument Sans',sans-serif; overflow:auto; overscroll-behavior:contain; color-scheme:dark; }
#research-contact::backdrop { background:rgba(0,0,0,.74); }
#research-contact *, #research-contact *::before { box-sizing:border-box; }
#research-contact .contact-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:12px; }
#research-contact h2 { font-size:clamp(26px,3vw,32px); font-weight:500; line-height:1.2; margin:0; }
#research-contact p { font-size:15px; line-height:1.6; color:#bfc5c7; margin:0 0 24px; }
#research-contact .contact-close { flex:none; min-width:40px; min-height:40px; margin:-8px -8px 0 0; border:0; background:transparent; color:#eef1f1; font-size:28px; cursor:pointer; }
#research-contact .contact-fields { display:grid; gap:18px; }
#research-contact label { display:block; font-size:14px; line-height:1.4; color:#eef1f1; }
#research-contact label span { color:#9aa3a8; }
#research-contact input, #research-contact textarea { display:block; width:100%; margin-top:7px; padding:12px 13px; background:#101315; border:1px solid #596268; border-radius:0; color:#f2f6f6; font:16px/1.4 'Instrument Sans',sans-serif; }
#research-contact textarea { min-height:115px; resize:vertical; }
#research-contact :focus-visible, [data-contact-open]:focus-visible { outline:2px solid #eef1f1; outline-offset:4px; }
#research-contact .contact-privacy { font-size:12px; line-height:1.55; margin:20px 0; color:#adb5b9; }
#research-contact .contact-privacy a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
#research-contact .contact-submit { width:100%; padding:14px 20px; background:#e8e8e8; color:#101315; border:1px solid #e8e8e8; font:500 16px/1.4 'Instrument Sans',sans-serif; cursor:pointer; }
#research-contact .contact-submit:disabled { opacity:.65; cursor:wait; }
#research-contact .contact-status { margin:16px 0 0; font-size:14px; color:#eef1f1; }
#research-contact .contact-status:empty { display:none; }
#research-contact .contact-honey { display:none !important; }
#research-contact .contact-preview { font-size:12px; margin-bottom:18px; border-left:2px solid #9aa3a8; padding-left:12px; }
