/* Information, media and contact page */
.contact-hero { background: var(--soft); }
.contact-hero h1 { max-width: 900px; }
.contact-jumps { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:28px; font-weight:800; }
.contact-jumps a { text-decoration:underline; text-underline-offset:5px; }
.contact-section { padding-block:64px; scroll-margin-top:150px; overflow-x:clip; }
.contact-resources { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.contact-resources article { padding:24px; border:1px solid var(--line); border-top:4px solid var(--navy); border-radius:10px; min-width:0; }
.contact-resources h3,.contact-downloads h3 { margin-top:0; color:var(--navy); font-family:Georgia,serif; font-size:1.5rem; }
.contact-status { margin:28px 0 0; color:var(--muted); }
.contact-columns { display:grid; grid-template-columns:minmax(0,0.9fr) minmax(420px,1.1fr); gap:40px; align-items:start; }
.contact-columns > * { min-width:0; max-width:100%; }
.contact-email,.contact-choice a,.contact-columns a { overflow-wrap:anywhere; word-break:break-word; }
.contact-downloads { background:white; border:1px solid var(--line); border-radius:12px; padding:28px; }
.contact-downloads a { display:block; padding:16px 0; border-top:1px solid var(--line); font-weight:800; }
.contact-downloads span { display:block; color:var(--muted); font-weight:400; font-size:.9rem; margin-top:4px; }
.contact-form { box-sizing:border-box; width:100%; max-width:100%; background:var(--soft); border:1px solid var(--line); border-radius:12px; padding:28px; overflow:hidden; }
.contact-form-intro { margin-top:0; font-size:.9rem; }
.contact-form label { display:block; font-weight:750; margin:18px 0 6px; }
.contact-form label span { font-weight:400; }
.contact-form input:not([type=hidden]),.contact-form select,.contact-form textarea { box-sizing:border-box; display:block; width:100%; max-width:100%; min-width:0; font:inherit; color:var(--ink); background:white; border:1px solid #8090a4; border-radius:6px; padding:11px 12px; }
.contact-form textarea { resize:vertical; }
.contact-form :is(input,select,textarea,button):focus-visible,.contact-jumps a:focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.contact-form-note { font-size:.9rem; line-height:1.6; color:var(--muted); }
.contact-form button { font:inherit; font-weight:800; cursor:pointer; margin-top:8px; max-width:100%; }
.contact-honeypot[hidden] { display:none; }
@media(max-width:1100px) { .contact-columns { grid-template-columns:minmax(0,1fr) minmax(380px,1fr); gap:28px; } .contact-choice { grid-template-columns:1fr !important; } }
@media(max-width:900px) { .contact-columns,.contact-resources { grid-template-columns:1fr; gap:24px; } .contact-section { padding-block:40px; } .contact-form { width:100%; } }
@media(max-width:600px) { .contact-form,.contact-downloads { padding:20px; } .contact-columns { gap:20px; } }
