.contact{max-width:560px;margin:var(--space-7) auto;padding:0 var(--page-gutter);position:relative}.contact__head{margin-bottom:var(--space-6)}.contact__eyebrow{display:inline-block;font-size:var(--text-caption);text-transform:uppercase;letter-spacing:var(--ls-widest);font-weight:var(--fw-semibold);background:var(--gradient-link);-webkit-background-clip:text;background-clip:text;color:transparent;margin:0 0 var(--space-3)}.contact__title{font-family:var(--font-display);font-size:clamp(1.75rem,2.6vw,2.25rem);line-height:1.05;letter-spacing:var(--ls-tighter);font-weight:var(--fw-bold);margin:0 0 var(--space-3)}.contact__lead{color:var(--text-muted);font-size:var(--text-lead);line-height:var(--lh-snug);margin:0;max-width:46ch}.contact__card{position:relative;background:var(--neutral-0);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:clamp(1.5rem,3.5vw,2.25rem);box-shadow:var(--shadow-md);overflow:hidden}.contact__card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-link);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.form-grid{display:grid;gap:var(--space-5)}.form-field{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:14px;letter-spacing:-.005em;color:var(--text-default)}.form-label .optional{font-weight:var(--fw-regular);font-size:12px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.02em;text-transform:lowercase}.form-input,.form-textarea{width:100%;font:inherit;font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-snug);color:var(--text-default);background:var(--bg-default);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:12px 14px;min-height:44px;transition:border-color var(--transition-base),background-color var(--transition-base),box-shadow var(--transition-base);-webkit-appearance:none;appearance:none}.form-textarea{resize:vertical;min-height:132px;line-height:var(--lh-body)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted);opacity:.7}.form-input:hover,.form-textarea:hover{border-color:var(--border-strong)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.form-field.has-error .form-input,.form-field.has-error .form-textarea{border-color:var(--status-error);background:color-mix(in srgb,var(--status-error) 5%,var(--bg-default))}.form-field.has-error .form-input:focus,.form-field.has-error .form-textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--status-error) 35%,transparent)}.form-error{font-size:var(--text-small);line-height:1.45;color:color-mix(in srgb,var(--status-error) 65%,var(--neutral-900));display:none;min-height:0}.form-field.has-error .form-error{display:block}.form-field--honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.form-submit-row{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}@media(min-width:540px){.form-submit-row{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-5)}}.contact .btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:16px;line-height:1;letter-spacing:-.005em;white-space:nowrap;padding:14px 28px;min-height:48px;border:1px solid var(--brand-primary);background:var(--brand-primary);color:var(--text-on-brand);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.contact .btn:hover{background:var(--brand-primary-700);border-color:var(--brand-primary-700)}.contact .btn:active{background:var(--brand-primary-900);border-color:var(--brand-primary-900);transform:translateY(1px)}.contact .btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.form-foot-note{font-size:var(--text-caption);color:var(--text-muted);line-height:1.4;max-width:36ch;margin:0}.form-submit-error{font-size:var(--text-small);line-height:1.45;color:color-mix(in srgb,var(--status-error) 70%,var(--neutral-900));margin:var(--space-3) 0 0}.form-submit-error a{color:var(--brand-primary)}.js-submit[disabled]{opacity:.6;cursor:progress}.success-panel{display:none;padding:var(--space-2) 0}.contact.is-sent .form-grid{display:none}.contact.is-sent .success-panel{display:block}.success-panel__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--brand-accent) 18%,transparent);color:var(--brand-accent);margin:0 0 var(--space-4)}.success-panel__icon svg{width:28px;height:28px}.success-panel__title{font-family:var(--font-display);font-size:var(--text-h3);line-height:1.15;letter-spacing:var(--ls-tight);font-weight:var(--fw-bold);margin:0 0 var(--space-3)}.success-panel__body{color:var(--text-muted);line-height:var(--lh-snug);margin:0}.success-panel__body a{color:var(--brand-primary)}.contact__after{margin-top:var(--space-5);font-size:var(--text-small);color:var(--text-muted)}.contact__after a{color:var(--brand-primary)}
