.contact-page{padding:120px 0 80px;min-height:100vh;background:var(--bg-primary)}.contact-container{max-width:800px}.contact-header{text-align:center;margin-bottom:48px}.contact-title{font-size:2.5rem;font-weight:900;margin-bottom:12px;color:var(--text-primary)}.contact-subtitle{color:var(--text-muted);font-size:1.1rem}.contact-card{background:var(--bg-secondary);border-radius:var(--radius-2xl);padding:48px;box-shadow:var(--shadow-xl);border:1px solid var(--border-color)}.contact-form{display:flex;flex-direction:column;gap:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.95rem;font-weight:700;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.form-group input,.form-group textarea{background:#f8fafc;border:1px solid var(--border-color);padding:14px 18px;border-radius:var(--radius-lg);font-size:1rem;transition:all var(--transition-base);color:var(--text-primary)}[data-theme=dark] .form-group input,[data-theme=dark] .form-group textarea{background:rgba(255,255,255,.05)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 4px rgba(37,99,235,.1);background:var(--bg-secondary)}.btn-submit{background:var(--accent-primary);color:#fff;border:none;padding:16px;border-radius:var(--radius-lg);font-size:1.1rem;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all var(--transition-base);margin-top:12px}.btn-submit:hover:not(:disabled){background:#1d4ed8;transform:translateY(-2px);box-shadow:var(--accent-glow)}.btn-submit.loading{opacity:.7;cursor:not-allowed}.form-error{background:rgba(239,68,68,.1);color:#ef4444;padding:12px;border-radius:var(--radius-lg);display:flex;align-items:center;gap:8px;font-size:.9rem}.contact-success{text-align:center;padding:40px 0}.success-icon{color:#10b981;margin-bottom:24px}.contact-success h2{font-size:1.8rem;font-weight:800;margin-bottom:12px}.contact-success p{color:var(--text-muted);margin-bottom:32px}.btn-retry{background:transparent;border:1px solid var(--border-color);padding:10px 24px;border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer}@media (max-width:768px){.contact-card{padding:24px}.form-grid{grid-template-columns:1fr}.contact-title{font-size:2rem}}