.contact {
  background: linear-gradient(180deg, var(--color-background) 0%, var(--color-surface) 100%);
}

.contact-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-4xl);
  align-items: start;
}

.contact-info {
  position: sticky;
  top: 100px;
}

.contact-title {
  font-size: var(--font-size-5xl);
  font-weight: var(--font-weight-extrabold);
  margin-bottom: var(--spacing-lg);
  color: var(--color-foreground);
}

.contact-description {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-relaxed);
  color: var(--color-text-secondary);
  margin-bottom: var(--spacing-2xl);
}

.contact-features {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
  margin-bottom: var(--spacing-2xl);
}

.contact-feature {
  display: flex;
  gap: var(--spacing-md);
  align-items: start;
}

.feature-icon-small {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(139, 197, 63, 0.1) 0%, rgba(0, 163, 224, 0.1) 100%);
  border-radius: var(--radius-lg);
  flex-shrink: 0;
}

.feature-title-small {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-foreground);
  margin-bottom: var(--spacing-xs);
}

.feature-desc-small {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
}

.contact-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-lg);
  padding: var(--spacing-xl);
  background: white;
  border-radius: var(--radius-xl);
  border: 1px solid var(--color-border);
}

.stat-item {
  text-align: center;
}

.stat-value {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-primary);
  margin-bottom: var(--spacing-xs);
}

.stat-label {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-medium);
}

.contact-form-wrapper {
  background: white;
  border-radius: var(--radius-2xl);
  padding: var(--spacing-3xl);
  box-shadow: var(--shadow-xl);
  border: 1px solid var(--color-border);
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lg);
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-lg);
}

.form-label {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-foreground);
}

.form-input {
  padding: var(--spacing-md) var(--spacing-lg);
  font-size: var(--font-size-base);
  font-family: var(--font-family-body);
  color: var(--color-text);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  transition: all var(--duration-fast) var(--easing-standard);
}

.form-input:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(139, 197, 63, 0.1);
}

.form-textarea {
  resize: vertical;
  min-height: 120px;
}

select.form-input {
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236D7877' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right var(--spacing-lg) center;
  padding-right: var(--spacing-3xl);
}

.btn-loader svg {
  animation: spin 1s linear infinite;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.form-message {
  padding: var(--spacing-md) var(--spacing-lg);
  border-radius: var(--radius-lg);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  text-align: center;
}

.form-message.success {
  background: var(--color-success);
  color: white;
}

.form-message.error {
  background: var(--color-error);
  color: white;
}

@media (max-width: 768px) {
  .contact-wrapper {
    grid-template-columns: 1fr;
    gap: var(--spacing-2xl);
  }
  
  .contact-info {
    position: static;
  }
  
  .contact-title {
    font-size: var(--font-size-4xl);
  }
  
  .contact-description {
    font-size: var(--font-size-lg);
  }
  
  .contact-stats {
    grid-template-columns: 1fr;
  }
  
  .contact-form-wrapper {
    padding: var(--spacing-xl);
  }
  
  .form-row {
    grid-template-columns: 1fr;
  }
}
