.contact-hero{margin-top:var(--block-space);align-items:start;gap:clamp(18px,2.4vw,32px);display:grid}@media (width>=900px){.contact-hero{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}}.contact-form-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);background:#fff;padding:clamp(20px,2.8vw,36px)}.contact-form-card__title{font-size:var(--text-lg);letter-spacing:-.2px;margin:0;font-weight:900}.contact-form-card__intro{max-width:62ch;color:var(--color-muted);font-size:var(--text-sm);margin:8px 0 0;line-height:1.65}.contact-form{margin-top:var(--heading-space);gap:16px;display:grid}.contact-field{gap:6px;min-width:0;margin:0;display:grid}.contact-field label{color:var(--color-ink);font-size:var(--text-base)}.contact-field label span{color:var(--color-accent-ink)}.contact-field input,.contact-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-ink);font-family:inherit;font-size:var(--text-base);transition:border-color var(--duration-micro) ease;background:#fff;padding:11px 14px;line-height:1.5}.contact-field input{min-height:44px;padding-block:0}.contact-field textarea{resize:vertical;min-height:118px}.contact-field input:hover,.contact-field textarea:hover{border-color:#d5d1cc}.contact-field input[aria-invalid=true],.contact-field textarea[aria-invalid=true]{border-color:#b3261e}.contact-field__hint{color:var(--color-muted);font-size:var(--text-sm);line-height:1.5}.contact-field__error{color:#b3261e;font-size:var(--text-sm);font-weight:700;line-height:1.5}.contact-consent{align-items:flex-start;gap:10px;margin:0;display:flex}.contact-consent input{width:18px;height:18px;accent-color:var(--color-accent-surface);flex:none;margin:3px 0 0}.contact-consent label{color:var(--color-muted);font-size:var(--text-sm);line-height:1.6}.contact-consent a{color:var(--color-accent-ink);font-weight:700}.contact-form__actions{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.contact-form__send{border:1px solid var(--color-accent-surface);border-radius:var(--radius-sm);background:var(--color-accent-surface);color:#fff;min-height:46px;font-size:var(--text-base);transition:background var(--duration-micro) ease, border-color var(--duration-micro) ease;justify-content:center;align-items:center;padding:0 26px;font-weight:700;text-decoration:none;display:inline-flex}.contact-form__send:hover{border-color:var(--color-accent-surface-hover);background:var(--color-accent-surface-hover)}.contact-form__send--alt{border-color:var(--color-border);color:var(--color-ink);background:#fff}.contact-form__send--alt:hover{background:var(--color-surface-soft);border-color:#d5d1cc}.contact-form__status{color:#157347;font-size:var(--text-sm);margin:0;font-weight:700;line-height:1.6}.contact-form__status:empty{display:none}.contact-panel{border-radius:var(--radius-lg);background:var(--color-accent-surface);color:#fff;--focus-ring:#fff;padding:clamp(22px,2.8vw,34px)}.contact-panel__title{margin:0 0 var(--heading-space);font-size:var(--text-xl);letter-spacing:-.2px;font-weight:900}.contact-panel__list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.contact-panel__row{align-items:flex-start;gap:14px;display:flex}.contact-panel__icon{opacity:.9;flex:none;width:20px;height:20px;margin-top:3px}.contact-panel__text{min-width:0;font-size:var(--text-base);gap:2px;line-height:1.5;display:grid}.contact-panel__label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.4px;opacity:.85}.contact-panel__value{color:inherit;text-underline-offset:3px;overflow-wrap:anywhere;font-weight:700;text-decoration:underline}.contact-panel__value:hover{text-decoration-thickness:2px}.contact-panel__follow-title{font-size:var(--text-md);margin:clamp(22px,2.6vw,30px) 0 0;font-weight:900}.contact-panel__social{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.contact-panel__social a{border-radius:var(--radius-sm);color:#fff;width:44px;height:44px;transition:background var(--duration-micro) ease;place-items:center;display:grid}.contact-panel__social a:hover{background:#ffffff2e}.contact-panel__social svg{width:22px;height:22px}@media (prefers-reduced-motion:reduce){.contact-field input,.contact-field textarea,.contact-form__send,.contact-panel__social a{transition:none}}
