.contact-form{display:flex;flex-direction:column;gap:var(--space-4);width:100%;max-width:40rem;margin:var(--space-6) auto 0;padding:clamp(1.25rem,3vw,2rem);color:var(--color-text);background:var(--surface-raised, var(--color-bg));border:1px solid color-mix(in srgb, var(--color-border) 88%, transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-card, var(--shadow-md))}.contact-form__honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.contact-form__fields{display:grid;gap:var(--space-4)}.contact-form__field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.contact-form__label{color:var(--color-text);font-size:.88rem;font-weight:var(--weight-bold)}.contact-form__input,.contact-form__textarea{width:100%;min-height:46px;padding:.72rem .85rem;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:inset 0 1px 0 rgba(15,23,42,.03);transition:border-color 140ms ease,box-shadow 140ms ease,background-color 140ms ease}.contact-form__textarea{min-height:8rem;resize:vertical}.contact-form__input:hover,.contact-form__textarea:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, var(--color-border))}.contact-form__input:focus,.contact-form__textarea:focus{outline:0;border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-primary) 18%, transparent)}.contact-form__actions{display:flex;justify-content:flex-start}.contact-form__submit{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.78rem 1.2rem;color:#fff;background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);box-shadow:0 10px 26px color-mix(in srgb, var(--color-primary) 22%, transparent);cursor:pointer;font-weight:var(--weight-bold);line-height:1;transition:background-color 140ms ease,border-color 140ms ease,transform 140ms ease}.contact-form__submit:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px)}.contact-form__submit:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.contact-form__submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-form__status,.contact-form__error{padding:var(--space-3);border-radius:var(--radius-md);font-size:.95rem}.contact-form__status{color:var(--color-success);background:color-mix(in srgb, var(--color-success) 12%, transparent);border:1px solid color-mix(in srgb, var(--color-success) 30%, transparent)}.contact-form__error{color:var(--color-error);background:color-mix(in srgb, var(--color-error) 12%, transparent);border:1px solid color-mix(in srgb, var(--color-error) 30%, transparent)}.contact-form--two-column .contact-form__fields{grid-template-columns:1fr}@media(min-width: 640px){.contact-form--two-column .contact-form__fields{grid-template-columns:repeat(2, minmax(0, 1fr))}.contact-form--two-column .contact-form__field--message,.contact-form--two-column .contact-form__field--service{grid-column:1/-1}}.contact-form--inline{max-width:none}@media(min-width: 820px){.contact-form--inline{flex-direction:row;align-items:flex-end}.contact-form--inline .contact-form__fields{flex:1 1 auto;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr))}.contact-form--inline .contact-form__actions{flex:0 0 auto}}