/* An open channel, in the same paper-and-ink language as the rest of the site. */
body.contact-body{background:var(--wow-ice);color:var(--wow-black)}
.contact-body::before{display:none}
.contact-page{max-width:1400px;margin:0 auto;padding:80px 5vw 32px}
.conversation-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr;gap:0 clamp(36px,6vw,100px);align-items:start;padding:45px 0 60px}
.conversation-intro{padding-top:16px}
.conversation-intro > :last-child{margin-bottom:0}
/* The form column spans both rows so the fallback block stays directly under the intro on desktop. */
.conversation-channel{grid-column:2;grid-row:1/span 2;min-width:0}
.conversation-kicker{font:500 .72rem/1.5 var(--wow-mono);letter-spacing:.12em;text-transform:uppercase}
.conversation-intro h1{font:600 clamp(4.5rem,9vw,9rem)/.82 var(--wow-display);letter-spacing:-.08em;text-transform:uppercase;margin:32px 0}
.conversation-intro h1 em{font-family:var(--wow-serif);font-weight:500;text-transform:none;color:var(--wow-blue)}
.conversation-intro > p:not(.conversation-kicker){max-width:38ch;font-size:1.1rem;line-height:1.65}
.conversation-alternative{grid-column:1;grid-row:2;margin-top:42px;padding-top:20px;border-top:2px solid currentColor}
.conversation-alternative p{font:400 .72rem/1.5 var(--wow-mono);margin:0 0 12px}
.conversation-alternative a{font-size:1rem;text-underline-offset:5px;overflow-wrap:anywhere}
.conversation-form{background:var(--wow-acid);color:var(--wow-black);border:3px solid var(--wow-black);box-shadow:12px 12px 0 var(--wow-black);padding:clamp(22px,3vw,42px)}
.conversation-form label{display:block;font:500 .75rem/1.5 var(--wow-mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
.conversation-form input,.conversation-form textarea{display:block;box-sizing:border-box;width:100%;min-width:0;border:2px solid var(--wow-black);border-radius:0;background:var(--wow-ice);color:var(--wow-black);font:400 1rem/1.5 var(--wow-sans);padding:12px 14px;margin:0 0 24px}
.conversation-form textarea{min-height:180px;resize:vertical}
.conversation-form input:focus-visible,.conversation-form textarea:focus-visible,.conversation-form button:focus-visible{outline:3px solid var(--wow-blue);outline-offset:4px}
.conversation-form .conversation-hint{font-size:.8rem;line-height:1.5;margin:-14px 0 24px}
.conversation-form .conversation-error{font-size:.8rem;line-height:1.5;font-weight:500;color:#a31b09;margin:-14px 0 24px}
.conversation-form .conversation-error:empty{display:none}
.conversation-form [aria-invalid="true"]{border-color:#a31b09;box-shadow:inset 0 0 0 1px #a31b09}
.conversation-form button{display:flex;align-items:center;justify-content:center;min-height:52px;width:100%;padding:12px 20px;border:2px solid var(--wow-black);border-radius:0;background:var(--wow-black);color:var(--wow-ice);font:500 .84rem/1.5 var(--wow-mono);cursor:pointer}
.conversation-form button:hover{background:var(--wow-blue)}
.conversation-form button:disabled,.conversation-form button[aria-disabled="true"]{cursor:wait;opacity:.7}
.conversation-form button[aria-disabled="true"]:hover{background:var(--wow-black)}
.conversation-form .conversation-privacy{font-size:.78rem;line-height:1.5;margin:18px 0 0}
.conversation-trap{display:none!important}
/* Two lines are reserved while empty so a message does not shift the page; longer text may still grow. */
.conversation-status{min-height:calc(3.1em + 32px);margin:24px 0 0;padding:14px;border:2px solid transparent;color:var(--wow-black);font-size:.95rem;line-height:1.55;overflow-wrap:anywhere;scroll-margin-top:90px}
.conversation-status[data-state]{border-color:currentColor;background:var(--wow-ice)}
.conversation-status[data-state="error"]{border-color:#a31b09}
.conversation-status[data-state="success"]{border-color:var(--wow-blue)}
.conversation-status:focus{outline:2px solid var(--wow-blue);outline-offset:4px}
.conversation-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;border-top:2px solid currentColor;padding:24px 0;font:400 .72rem/1.5 var(--wow-mono)}
.conversation-footer p{margin:0}
.conversation-footer nav{display:flex;flex-wrap:wrap;gap:22px}
.contact-body a:focus-visible{outline:3px solid var(--wow-blue);outline-offset:4px}
:root[data-theme="dark"] body.contact-body{background:var(--wow-black);color:var(--wow-ice)}
:root[data-theme="dark"] .conversation-intro h1 em{color:var(--wow-acid)}
:root[data-theme="dark"] .conversation-form{box-shadow:12px 12px 0 var(--wow-blue)}
:root[data-theme="dark"] .contact-body a:focus-visible{outline-color:var(--wow-acid)}
:root[data-theme="dark"] .conversation-status:focus{outline-color:var(--wow-acid)}
@media(max-width:850px){.conversation-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:none;gap:36px}.conversation-channel,.conversation-alternative{grid-column:auto;grid-row:auto}.conversation-intro{padding:0}.conversation-intro h1{font-size:clamp(4.5rem,14vw,7rem)}.conversation-alternative{margin-top:0}.conversation-intro > p:not(.conversation-kicker){max-width:55ch}}
@media(max-width:480px){.contact-page{padding:75px 22px 20px}.conversation-grid{padding-top:20px}.conversation-form{padding:22px 18px;box-shadow:7px 7px 0 var(--wow-black)}.conversation-intro h1{font-size:clamp(4rem,20vw,6rem)}:root[data-theme="dark"] .conversation-form{box-shadow:7px 7px 0 var(--wow-blue)}}
@media(forced-colors:active){.conversation-form{box-shadow:none}.conversation-form button{border:2px solid ButtonText}.conversation-form input,.conversation-form textarea{border-color:CanvasText}}
