/* --------------- Contact --------------- */
.contact-sa .box {
  padding: 40px 20px;
  background-image: url(../imgs/header/g-back.png);
  background-size: cover;
  background-position: center center;
  border-radius: 30px;
  overflow: hidden; }

@media (min-width: 768px) {
  .contact-sa .box {
    padding: 100px 80px;
  }
}

.contact-sa .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 100%; }

.contact-sa .contact-form label {
  font-size: 14px;
  margin-bottom: 5px; }
  .contact-sa .contact-form label .star {
    color: red;
    padding-left: 5px; }

.contact-sa .contact-form input,
.contact-sa .contact-form textarea {
  color: #fff;
  background: transparent;
  width: 100%;
  padding: 0 0 10px;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  font-size: 18px; }

.contact-sa .contact-form button {
  background: transparent;
  color: #fff; }

/* Contact Form Styles */

/* Loading Spinner */
.spinner {
    width: 20px;
    height: 20px;
    border: 2px solid transparent;
    border-top: 2px solid currentColor;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    position: relative;
    top: 10px;
    left: 10px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Disabled button state */
button:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Honeypot field - ensure it's hidden */
input[name="website"] {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
