/* The race's ink, gold, ivory, and condensed lettering carry into its contact form. */
.contact-page{background:var(--paper);min-height:100svh;display:flex;flex-direction:column}
.contact-page::selection{background:var(--lime);color:var(--deep)}
.contact-page .contact-header{padding-inline:7%;gap:24px}
.contact-page .brand small{font-size:11px}
.contact-back{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.contact-back .ui-icon{width:18px;height:18px}
.contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%;width:min(1360px,100%);margin-inline:auto;padding:76px 7% 84px;flex:1}
.contact-intro h1{font-size:clamp(54px,6.4vw,88px);line-height:.96;letter-spacing:-.025em;margin-bottom:28px;text-wrap:balance}
.contact-intro>p{max-width:38ch}
.contact-intro .contact-direct{margin-top:38px;font-size:14px;line-height:1.8}
.contact-direct a{font-weight:600;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.contact-faq{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-top:6px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.contact-form-wrap{min-width:0;border-top:2px solid var(--ink);padding-top:24px}
.contact-form-wrap h2{font-size:36px;letter-spacing:-.015em;line-height:1.05;margin-bottom:10px}
.contact-form-note{color:var(--muted);font-size:14px;margin-bottom:24px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}
.contact-field{min-width:0}
.contact-field-wide{grid-column:1/-1}
.contact-field label{display:block;font-size:14px;font-weight:700;margin-bottom:7px}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;min-height:48px;border:1px solid #a79b85;border-radius:4px;background:#fff;color:var(--ink);padding:11px 13px;font:400 16px/1.5 var(--body);caret-color:var(--gold-deep)}
.contact-field textarea{min-height:166px;resize:vertical}
.contact-field input:hover,.contact-field select:hover,.contact-field textarea:hover{border-color:var(--muted)}
.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px;border-color:var(--gold-deep)}
.contact-field [aria-invalid=true]{border-color:#934121}
.contact-hint{font-size:13px;line-height:1.5;color:var(--muted);margin:8px 0 0;max-width:65ch}
.contact-error{font-size:14px;line-height:1.5;color:#934121;margin:8px 0 0}
.contact-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-notice{margin:24px 0 0;font-size:15px;line-height:1.65;padding:14px 16px;border:1px solid var(--gold-deep);border-radius:4px;background:#efe5cf;color:var(--ink)}
.contact-notice[data-state=error]{background:#f4e9e0;border-color:#934121;color:#713018}
.contact-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:26px}
.contact-actions .button{min-height:48px;gap:28px}
.contact-actions .button:disabled{cursor:default;transform:none;background:#dfd4be;color:#5c5140}
.contact-fields :disabled{opacity:.75;cursor:default}
#contact-form[aria-busy=true] .contact-fields :disabled{cursor:wait}
.contact-notice:focus-visible{outline:2px solid var(--gold-deep);outline-offset:4px}
.contact-another{padding:12px 0;min-height:44px;background:none;color:var(--ink);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.contact-noscript{font-size:14px;margin-top:20px}
.contact-noscript a{text-decoration:underline;overflow-wrap:anywhere}
.contact-page .contact-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:24px 7%;background:var(--navy);color:var(--ivory);font-size:14px}
.contact-page .contact-footer p{margin:0;color:var(--ivory);font-size:14px}
.contact-footer a{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
.contact-page [hidden]{display:none!important}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:38px;padding-block:44px 52px}.contact-intro h1{font-size:clamp(54px,9.5vw,76px);margin-bottom:22px}.contact-intro>p{max-width:55ch}.contact-intro .contact-direct{margin-top:24px}.contact-form-wrap{padding-top:22px}}
@media(max-width:520px){.contact-page .contact-header{height:auto;min-height:90px;padding:14px 6%;gap:18px;flex-wrap:wrap}.contact-page .brand strong{font-size:25px}.contact-back{font-size:13px;gap:8px}.contact-back .ui-icon{width:16px;height:16px}.contact-layout{padding-inline:6%;padding-top:34px}.contact-fields{grid-template-columns:1fr;gap:20px}.contact-form-wrap h2{font-size:32px}.contact-actions .button{width:100%;justify-content:space-between}.contact-page .contact-footer{padding-inline:6%;font-size:13px}}
@media(prefers-reduced-motion:reduce){.contact-page .button{transition:none}.contact-page .button:hover{transform:none}}
