/* Base layout setup to ensure footer at bottom */
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  font-family: 'Roboto', sans-serif;
  background-color: var(--background-color--dark, #0f172a);
  color: var(--color-white, #fff);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  padding-top: var(--header-height, 100px); /* Keep your header height adjustment */
}

/* Main content wrapper */
.main-content {
  display: flex;
  flex-direction: column;
  flex: 1; /* This makes it expand to fill available space */
}

/* Contact section - fills available space in main content */
.contact-section {
  padding: 40px 20px;
  background: var(--background-color--dark, #0f172a);
  width: 100%;
  display: flex;
  flex-direction: column;
  flex: 1; /* Take up available space */
}

/* Contact wrapper adjustments */
.contact-wrapper {
  display: flex;
  justify-content: center;
  flex: 1; /* Take available space */
  align-items: center; /* Center the form vertically */
}

/* Rest of your existing styles */
.top-contact-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  padding-bottom: 40px;
  border-bottom: var(--border-color, 1px solid #1f2d3d);
  margin-bottom: 40px;
}

.contact-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #d1d1d1;
}

.contact-item i {
  color: #00bcd4;
}

.form-container {
  background-color: var(--formbg-color--dark, #1e293b);
  color: var(--color-white, #fff);
  padding: 30px;
  border-radius: 10px;
  width: 100%;
  max-width: 600px;
}

.form-container h2 {
  font-size: 30px;
  margin-bottom: 10px;
}

.form-container p {
  font-size: 14px;
  margin-bottom: 30px;
}

.input-row {
  display: flex;
  gap: 10px;
  margin-bottom: 15px;
}

.input-row input {
  width: 50%;
  padding: 10px;
  border-radius: 5px;
  border: none;
  background-color: #fff;
  color: #000;
}

textarea {
  width: 100%;
  height: 150px;
  padding: 10px;
  margin-bottom: 15px;
  border-radius: 5px;
  border: none;
  background-color: #fff;
  color: #000;
}

.captcha-submit {
  display: flex;
  align-items: center;
  gap: 10px;
}

.captcha-submit span {
  color: var(--color-white, #fff);
}

.captcha-submit input {
  width: 60px;
  padding: 5px;
  border-radius: 5px;
  border: none;
  background-color: #fff;
  color: #000;
}

.captcha-submit button {
  padding: 10px 20px;
  background-color: var(--btn-bg, #00bcd4);
  border: none;
  border-radius: 20px;
  color: var(--btn-text, #fff);
  cursor: pointer;
}

.captcha-submit button:hover {
  background-color: var(--btn-hover-bg, #0097a7);
  color: var(--btn-hover-text, #fff);
}

/* Footer styles to ensure it stays at bottom */
.main-footer {
  background-color: var(--footer-bg, rgba(10, 10, 10, 0.95));
  color: var(--footer-text, #ffffff);
  padding: 2.5rem 0 0;
  border-top: 3px solid var(--color-accent, #0f283b);
  position: relative;
  flex-shrink: 0; /* Prevent footer from shrinking */
}