.contact-section{padding:var(--space-24) 0;background:var(--color-bg);min-height:calc(100vh - 73px)}.contact-heading{text-align:center;max-width:720px;margin:0 auto var(--space-16)}.contact-title{font-size:clamp(var(--text-4xl),7vw,var(--text-6xl));font-weight:800;letter-spacing:-.04em;line-height:1.05;color:var(--color-primary);margin-bottom:var(--space-6)}.contact-subtitle{font-size:var(--text-lg);color:var(--color-secondary);line-height:1.6;margin-bottom:var(--space-4)}.contact-email-note{color:var(--color-secondary);font-size:var(--text-sm)}.contact-email-link{color:var(--color-accent)}.contact-email-link:hover{color:var(--color-accent-hover)}.contact-form{gap:var(--space-6);max-width:640px;margin:0 auto}.contact-form,.form-field{display:flex;flex-direction:column}.form-field{gap:var(--space-2)}.form-label{font-size:var(--text-sm);font-weight:600;color:var(--color-primary);letter-spacing:.02em}.form-required{color:var(--color-accent)}.form-optional{color:var(--color-secondary);font-weight:400;font-size:var(--text-xs)}.form-input{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-primary);font-family:inherit;font-size:var(--text-base);border-radius:var(--radius-md);transition:border-color .2s ease}.form-input:focus{outline:none;border-color:var(--color-accent)}.form-textarea{resize:vertical;min-height:140px}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-secondary) 50%),linear-gradient(135deg,var(--color-secondary) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:var(--space-8)}.form-error{color:var(--color-accent);font-size:var(--text-sm)}.form-submit{align-self:flex-start;margin-top:var(--space-2);padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.contact-success{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-12);text-align:center;max-width:640px;margin:0 auto}.contact-success-title{font-size:var(--text-3xl);font-weight:800;color:var(--color-primary);margin-bottom:var(--space-3)}.contact-success-text{color:var(--color-secondary);font-size:var(--text-lg)}