/* Contact page additions; canonical design-system styles remain untouched. */
.contact-page .page-intro{padding-bottom:42px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:44px;align-items:start;padding-bottom:80px}
.contact-card{background:var(--cdr-color-surface);border:1px solid var(--cdr-color-line);border-radius:24px;padding:32px;box-shadow:0 12px 36px #26223608}
.contact-card h2,.contact-direct h2{font-size:26px;line-height:1.25;letter-spacing:-.035em;margin:0 0 12px}
.contact-card>p,.contact-direct p{font-size:16px;line-height:1.75;color:var(--cdr-color-muted)}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px;margin-top:26px}
.contact-field{min-width:0}
.contact-field-wide{grid-column:1/-1}
.contact-field label{display:block;font-size:15px;font-weight:650;margin-bottom:8px;color:var(--cdr-color-ink)}
.contact-optional{font-weight:400;color:var(--cdr-color-muted)}
.contact-field input,.contact-field select,.contact-field textarea{display:block;box-sizing:border-box;width:100%;min-height:48px;border:1px solid var(--cdr-color-field-line);border-radius:10px;background:var(--cdr-color-surface);color:var(--cdr-color-ink);font:inherit;font-size:16px;line-height:1.5;padding:11px 13px}
.contact-field textarea{resize:vertical;min-height:150px}
.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline:0;box-shadow:inset 0 -3px 0 var(--cdr-color-purple)}
.contact-field [aria-invalid=true]{border-color:var(--cdr-color-danger)}
.contact-field-error{color:var(--cdr-color-danger);font-size:14px;line-height:1.5;margin-top:7px}
.contact-hint{font-size:14px;line-height:1.65;color:var(--cdr-color-muted);margin-top:8px}
.contact-privacy{font-size:13px;line-height:1.75;color:var(--cdr-color-muted);margin:24px 0 20px}
.contact-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.contact-actions .button:disabled{cursor:wait;transform:none;opacity:.75}
.contact-status{margin-top:20px;border-radius:12px;padding:15px 18px;font-size:15px;line-height:1.65;overflow-wrap:anywhere}
.contact-status[data-state=error]{background:var(--cdr-color-danger-background);color:var(--cdr-color-danger)}
.contact-status[data-state=success]{background:var(--cdr-color-success-background);color:var(--cdr-color-success)}
.contact-status[data-state=sending]{background:var(--cdr-color-soft-purple);color:var(--cdr-color-ink)}
.contact-success-next{margin-top:16px}
.contact-direct{padding-top:12px;min-width:0}
.contact-direct .eyebrow{margin-bottom:18px}
.contact-direct article+article{border-top:1px solid var(--cdr-color-line);margin-top:28px;padding-top:28px}
.contact-direct-link{display:inline-flex;align-items:center;min-height:44px;color:var(--cdr-color-purple);font-size:clamp(16px,2.1vw,21px);font-weight:700;text-underline-offset:5px;overflow-wrap:anywhere;max-width:100%}
.contact-direct .contact-human{background:#fff8bc;border:1px solid #ece2a4;border-radius:18px;padding:24px;margin-top:28px}
.contact-human strong{font-size:20px;line-height:1.4}
.contact-human p{margin:12px 0 0;color:#51452f}
.contact-honeypot{display:none}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:30px}.contact-direct{padding-top:0}}
@media(max-width:480px){.contact-card{padding:24px 20px}.contact-fields{grid-template-columns:1fr;gap:20px}.contact-field-wide{grid-column:auto}.contact-card h2,.contact-direct h2{font-size:24px}.contact-actions .button{width:100%}}
@media(forced-colors:active){.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline:2px solid Highlight;outline-offset:2px;box-shadow:none}.contact-status{border:1px solid CanvasText}.contact-human{border-color:CanvasText}}
