/* A quiet contact surface using the site's existing colours and typography. */
.contact-dialog{position:fixed;width:min(650px,calc(100% - 36px));max-height:calc(100svh - 36px);margin:auto;padding:42px;border:1px solid #b4d9fa38;border-radius:24px;background:radial-gradient(ellipse at 100% 0,#14385270,transparent 62%),#071321;color:#eaf1f4;box-shadow:0 30px 110px #0009;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#496477 transparent}
.contact-dialog::backdrop{background:#010711b8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.contact-dialog [hidden]{display:none!important}
.contact-close{position:absolute;top:16px;right:17px;width:40px;height:40px;border:1px solid #d0edff24;border-radius:50%;background:#d0edff07;font-size:26px;font-weight:400;line-height:1;color:#bed7e7;display:grid;place-items:center}
.contact-close:hover{background:#d0edff15;color:#fff}
.contact-eyebrow{margin:1px 50px 23px 0;color:#9bb9ce;font-size:10px;letter-spacing:.16em;line-height:1.5}
.contact-dialog h2{font-size:clamp(31px,5vw,43px);font-weight:400;line-height:1.09;letter-spacing:-.04em;max-width:490px}
.contact-intro{color:#afc7d7;font-size:14px;line-height:1.65;margin:14px 0 26px;max-width:430px}
.contact-field{display:flex;flex-direction:column;gap:9px;margin:0 0 19px;min-width:0}
.contact-field>span{font-size:12px;line-height:1.5;color:#c3d8e6}
.contact-field input,.contact-field textarea,.contact-field select{display:block;box-sizing:border-box;width:100%;max-width:100%;border:1px solid #b4d9fa30;border-radius:10px;color:#edf7fc;background:#0a1a2a;min-height:48px;padding:12px 14px;font:inherit;font-size:16px;line-height:1.5;box-shadow:0 1px 0 #0002 inset;transition:border-color .2s,background .2s}
.contact-field textarea{resize:vertical;min-height:117px}
.contact-field select{padding-right:30px;color-scheme:dark}
.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus{outline:2px solid #a5dfff;outline-offset:2px;border-color:#a5dfff80;background:#0d2033}
.contact-field input:disabled,.contact-field textarea:disabled,.contact-field select:disabled{opacity:.6;cursor:wait}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-reason{margin-bottom:23px}
.contact-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
.contact-note{font-size:11px;line-height:1.7;color:#96b3c7;margin:0 0 13px}
.contact-provider{display:block;color:#8ba6ba;font-size:10px;margin-top:3px}.contact-provider a{text-decoration:underline;text-underline-offset:3px}
.contact-privacy{display:inline;border:0;padding:0;background:none;color:#c9e5f5;font-size:inherit;text-decoration:underline;text-underline-offset:3px}
.contact-status{font-size:12px;line-height:1.65;color:#b9d8eb;margin:0}
.contact-status:not(:empty){margin:4px 0 17px}
.contact-status-error{color:#f4c3bd}
.contact-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:18px}
.contact-direct-wrap{margin-top:18px}.contact-direct{display:inline-block}
.contact-submit{min-width:177px}
.contact-submit:disabled{opacity:.7;cursor:wait;transform:none}
.contact-success{padding:6px 0 15px}
.contact-success-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#cce9fb12;border:1px solid #cce9fb4d;color:#cce9fb;font-size:25px;margin:0 0 26px}
.contact-success p{font-size:15px;line-height:1.8;color:#b8d2e4;max-width:420px;margin:20px 0 29px}
.contact-dialog button:focus-visible,.contact-dialog a:focus-visible{outline:2px solid #a5dfff;outline-offset:4px}
.contact-success h2:focus{outline:none}
@media(max-width:540px){.contact-dialog{padding:33px 23px 26px;width:calc(100% - 24px);max-height:calc(100svh - 24px);border-radius:19px}.contact-eyebrow{margin-bottom:25px}.contact-dialog h2{font-size:33px}.contact-intro{font-size:13px;margin-bottom:22px}.contact-grid{grid-template-columns:1fr;gap:0}.contact-field{margin-bottom:15px}.contact-reason{margin-bottom:19px}.contact-actions{align-items:flex-start;gap:15px;flex-direction:column}.contact-submit{width:100%}.contact-field textarea{min-height:104px}.contact-close{top:13px;right:13px}}
@media(prefers-reduced-motion:reduce){.contact-dialog *{transition:none!important}}
