.contact-section{min-height:100vh;padding:120px 1.5rem 4rem}.contact-content{max-width:700px;margin:0 auto}.contact-header{text-align:center;margin-bottom:3rem}.contact-icon{margin-bottom:1rem}.contact-title{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.contact-subtitle{color:var(--color-text-muted);font-size:1.05rem}.contact-form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:2rem;margin-bottom:3rem;backdrop-filter:blur(8px)}.contact-form-success{text-align:center;padding:2rem 0}.contact-form-success svg{margin:0 auto 1rem}.contact-form-success h3{font-size:1.3rem;color:var(--color-text);margin-bottom:.5rem}.contact-form-success p{color:var(--color-text-muted);margin-bottom:1.5rem}.contact-field{margin-bottom:1.25rem}.contact-field label{display:block;font-size:.875rem;font-weight:500;color:var(--color-text);margin-bottom:.4rem}.contact-field input,.contact-field textarea{width:100%;padding:.75rem 1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);font-size:.95rem;font-family:inherit;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.contact-field input:focus,.contact-field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f126}.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--color-text-muted)}.contact-field textarea{resize:vertical;min-height:120px}.contact-select-wrapper{position:relative}.contact-select-wrapper select{width:100%;padding:.75rem 2.25rem .75rem 1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);font-size:.95rem;font-family:inherit;cursor:pointer;transition:border-color .2s,box-shadow .2s;appearance:none;-webkit-appearance:none;-moz-appearance:none;box-sizing:border-box}.contact-select-wrapper select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f126}.contact-select-wrapper select option{background:var(--color-surface);color:var(--color-text)}.contact-select-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-muted)}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-charcount{display:block;text-align:right;font-size:.75rem;color:var(--color-text-muted);margin-top:.3rem}.contact-form-error{background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:#fca5a5;padding:.75rem 1rem;border-radius:10px;font-size:.9rem;margin-bottom:1rem}.contact-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s;border:none;font-family:inherit}.contact-btn-primary{background:var(--color-primary);color:#fff;width:100%;justify-content:center}.contact-btn-primary:hover{background:var(--color-primary-hover)}.contact-btn-primary:disabled{opacity:.6;cursor:not-allowed}.contact-btn-secondary{background:var(--color-surface);color:var(--color-text)}.contact-btn-secondary:hover{background:var(--color-border)}.contact-btn-content{display:inline-flex;align-items:center;gap:.5rem}.contact-spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:contact-spin .6s linear infinite}@keyframes contact-spin{to{transform:rotate(360deg)}}.contact-direct-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:2rem;backdrop-filter:blur(8px)}.contact-direct-title{font-size:1.1rem;font-weight:600;color:var(--color-text);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}.contact-direct-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;color:var(--color-text-muted);font-size:.95rem}.contact-direct-item:not(:last-child){border-bottom:1px solid var(--color-border)}.contact-link{color:var(--color-primary);text-decoration:none;font-weight:500}.contact-link:hover{text-decoration:underline}@media(max-width:640px){.contact-section{padding:100px 1rem 3rem}.contact-title{font-size:1.8rem}.contact-row{grid-template-columns:1fr;gap:0}.contact-form-card,.contact-direct-card{padding:1.25rem}}
