.contact-page{max-width:1400px;margin:0 auto;padding:var(--afs-space-9) var(--afs-space-5)}.contact-page__title{font-family:var(--afs-font-display);font-size:clamp(2rem,5vw,3.5rem);line-height:1.1;color:var(--afs-color-fg);margin-bottom:var(--afs-space-7)}.contact-form{display:flex;flex-direction:column;gap:var(--afs-space-5)}.contact-form__field{display:flex;flex-direction:column;gap:var(--afs-space-2)}.contact-form__label{font-family:var(--afs-font-mono);font-size:14px;color:var(--afs-color-fg-muted);letter-spacing:.02em}.contact-form__label--required:after{content:" *";color:#f87171}.contact-form__input,.contact-form__textarea{font-family:var(--afs-font-body);font-size:16px;line-height:1.5;color:var(--afs-color-fg);background:var(--afs-color-surface);border:1px solid var(--afs-color-border);border-radius:var(--afs-radius-md);padding:var(--afs-space-3) var(--afs-space-4);transition:border-color var(--afs-motion-fast) var(--afs-ease);width:100%}.contact-form__input:focus,.contact-form__textarea:focus{outline:none;border-color:var(--afs-accent-cloud);box-shadow:0 0 0 2px color-mix(in srgb,var(--afs-accent-cloud) 25%,transparent)}.contact-form__input--error,.contact-form__textarea--error{border-color:#f87171}.contact-form__input--error:focus,.contact-form__textarea--error:focus{border-color:#f87171;box-shadow:0 0 0 2px color-mix(in srgb,#f87171 25%,transparent)}.contact-form__textarea{min-height:160px;resize:vertical}.contact-form__error{font-size:13px;color:#f87171;margin:0}.contact-form__submit{font-family:var(--afs-font-mono);font-size:16px;font-weight:500;color:var(--afs-color-canvas);background:var(--afs-accent-cloud);border:none;border-radius:var(--afs-radius-md);padding:var(--afs-space-3) var(--afs-space-6);cursor:pointer;transition:opacity var(--afs-motion-fast) var(--afs-ease);align-self:flex-start;margin-top:var(--afs-space-3)}.contact-form__submit:hover{opacity:.9}.contact-form__submit:focus-visible{outline:2px solid var(--afs-accent-cloud);outline-offset:2px}.contact-form__submit:disabled{opacity:.5;cursor:not-allowed}.contact-success{background:color-mix(in srgb,var(--afs-accent-interactive) 10%,var(--afs-color-surface));border:1px solid var(--afs-accent-interactive);border-radius:var(--afs-radius-md);padding:var(--afs-space-5);margin-bottom:var(--afs-space-6)}.contact-success__message{color:var(--afs-accent-interactive);font-family:var(--afs-font-body);font-size:16px;margin:0}.contact-error-banner{background:color-mix(in srgb,#f87171 10%,var(--afs-color-surface));border:1px solid #f87171;border-radius:var(--afs-radius-md);padding:var(--afs-space-4) var(--afs-space-5);margin-bottom:var(--afs-space-5)}.contact-error-banner__message{color:#f87171;font-family:var(--afs-font-body);font-size:14px;margin:0}.contact-social{margin-top:var(--afs-space-9);padding-top:var(--afs-space-7);border-top:1px solid var(--afs-color-border)}.contact-social__title{font-family:var(--afs-font-mono);font-size:14px;color:var(--afs-color-fg-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--afs-space-5)}.contact-social__list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--afs-space-4)}.contact-social__link{font-family:var(--afs-font-body);font-size:16px;color:var(--afs-accent-cloud);text-decoration:none;padding:var(--afs-space-2) var(--afs-space-4);border:1px solid var(--afs-color-border);border-radius:var(--afs-radius-md);transition:border-color var(--afs-motion-fast) var(--afs-ease),color var(--afs-motion-fast) var(--afs-ease)}.contact-social__link:hover{border-color:var(--afs-accent-cloud);color:var(--afs-color-fg)}.contact-social__link:focus-visible{outline:2px solid var(--afs-accent-cloud);outline-offset:2px}@media (max-width:480px){.contact-page{padding:var(--afs-space-7) var(--afs-space-5)}.contact-page__title{margin-bottom:var(--afs-space-6)}.contact-form__input,.contact-form__textarea{min-height:50px}.contact-form__textarea{min-height:120px}.contact-form__submit{align-self:stretch;width:100%;min-height:52px}.contact-social{margin-top:var(--afs-space-7);padding-top:var(--afs-space-6)}.contact-social__link{display:inline-flex;align-items:center;min-height:44px}}.contact-form__hp{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}.contact-form__turnstile{min-height:0}.contact-form__turnstile:not(:empty){margin-top:var(--afs-space-2)}