/* Modern Contact Form Styles */
.contact-us-modern * {
  font-family: 'IBM Plex Sans', sans-serif;
}

.contact-us-modern .text-blk {
  margin: 0;
  line-height: 25px;
}

.contact-us-modern .responsive-cell-block {
  min-height: 75px;
}

.contact-us-modern input:focus,
.contact-us-modern textarea:focus,
.contact-us-modern select:focus {
  outline: none;
  border-color: var(--theme-color);
}

.contact-us-modern .container-block {
  min-height: 75px;
  width: 100%;
  padding: 10px;
  display: block;
}

.contact-us-modern .responsive-container-block {
  min-height: 75px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto 50px;
  padding: 0;
}

.contact-us-modern .responsive-container-block.container {
  position: relative;
  min-height: 75px;
  flex-direction: row;
  z-index: 2;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  padding: 0 30px;
  max-width: 1320px;
  margin: 0 auto;
}

.contact-us-modern .container-block.form-wrapper {
  background-color: white;
  max-width: 450px;
  text-align: center;
  padding: 50px 40px;
  box-shadow: rgba(0, 0, 0, 0.05) 0px 4px 20px 7px;
  border-radius: 6px;
  margin: 90px 0 60px 0;
}

.contact-us-modern .text-blk.contactus-head {
  font-size: 36px;
  line-height: 52px;
  font-weight: 900;
  color: var(--title-color);
  margin-bottom: 10px;
}

.contact-us-modern .text-blk.contactus-subhead {
  color: #9c9c9c;
  width: 100%;
  margin: 0 auto 50px;
  display: block;
  text-align: left;
}

.contact-us-modern .responsive-cell-block.wk-tab-12.wk-mobile-12.wk-desk-12.wk-ipadp-12 {
  margin: 0 0 20px 0;
}

.contact-us-modern .input {
  width: 100%;
  height: 50px;
  padding: 1px 15px;
  border: 2px solid #eeeeee;
  font-size: 16px;
  color: #000000;
  border-radius: 4px;
  transition: all 300ms ease;
}

.contact-us-modern .input:hover {
  border-color: #d0d0d0;
}

.contact-us-modern .textinput {
  width: 100%;
  min-height: 150px;
  padding: 20px 15px;
  border: 2px solid #eeeeee;
  font-size: 16px;
  border-radius: 4px;
  resize: vertical;
  transition: all 300ms ease;
  font-family: 'IBM Plex Sans', sans-serif;
}

.contact-us-modern .textinput:hover {
  border-color: #d0d0d0;
}

.contact-us-modern .submit-btn {
  width: 100%;
  background-color: var(--theme-color);
  height: 60px;
  font-size: 20px;
  font-weight: 700;
  color: white;
  border: none;
  border-radius: 40px;
  cursor: pointer;
  transition: all 300ms ease;
  margin-top: 10px;
}

.contact-us-modern .submit-btn:hover {
  background-color: #b8553f;
  transform: translateY(-2px);
  box-shadow: 0 4px 15px rgba(197, 99, 72, 0.4);
}

.contact-us-modern .form-box {
  z-index: 2;
  margin: 0 48px 0 0;
}

.contact-us-modern .text-blk.input-title {
  text-align: left;
  padding: 0 0 0 10px;
  font-size: 14px;
  margin: 0 0 5px 0;
  color: #9c9c9c;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.contact-us-modern .text-blk.input-title .required {
  color: #ff0000;
  margin-left: 3px;
}

.contact-us-modern ::placeholder {
  color: #dadada;
}

.contact-us-modern .mob-text {
  display: block;
  text-align: left;
  margin: 0 0 25px 0;
}

.contact-us-modern .map-box {
  max-width: 800px;
  max-height: 520px;
  width: 100%;
  height: 520px;
  background-color: #d9d9d9;
  border-radius: 6px;
  overflow: hidden;
}

.contact-us-modern .map-part {
  width: 100%;
  height: 100%;
}

.contact-us-modern .text-blk.map-contactus-head {
  font-weight: 900;
  font-size: 22px;
  line-height: 32px;
  margin: 0 0 10px 0;
  color: var(--theme-color);
}

.contact-us-modern .text-blk.map-contactus-subhead {
  max-width: 100%;
  margin: 0 0 20px 0;
  color: #666;
}

.contact-us-modern .social-media-links.mob {
  margin: 0 0 30px 0;
  width: auto;
  display: flex;
  justify-content: flex-start;
}

.contact-us-modern .social-icon-link {
  margin: 0 25px 0 0;
  padding: 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  background-color: var(--theme-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 18px;
  transition: all 300ms ease;
  text-decoration: none;
}

.contact-us-modern .social-icon-link:hover {
  background-color: #b8553f;
  transform: translateY(-3px);
}

.contact-us-modern .phone-input-wrapper-modern {
  display: flex;
  gap: 10px;
  align-items: stretch;
}

.contact-us-modern .country-code-select-modern {
  width: 140px;
  min-width: 140px;
  height: 50px;
  padding: 1px 15px;
  border: 2px solid #eeeeee;
  font-size: 14px;
  color: #000000;
  border-radius: 4px;
  background-color: white;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  padding-right: 40px;
  cursor: pointer;
  transition: all 300ms ease;
}

.contact-us-modern .country-code-select-modern:hover {
  border-color: #d0d0d0;
}

.contact-us-modern .phone-input-modern {
  flex: 1;
}

.contact-us-modern .select-modern {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  padding-right: 40px;
  cursor: pointer;
}

/* Responsive Grid System */
.wk-desk-1 { width: 8.333333%; }
.wk-desk-2 { width: 16.666667%; }
.wk-desk-3 { width: 25%; }
.wk-desk-4 { width: 33.333333%; }
.wk-desk-5 { width: 41.666667%; }
.wk-desk-6 { width: 50%; }
.wk-desk-7 { width: 58.333333%; }
.wk-desk-8 { width: 66.666667%; }
.wk-desk-9 { width: 75%; }
.wk-desk-10 { width: 83.333333%; }
.wk-desk-11 { width: 91.666667%; }
.wk-desk-12 { width: 100%; }

@media (max-width: 1024px) {
  .wk-ipadp-1 { width: 8.333333%; }
  .wk-ipadp-2 { width: 16.666667%; }
  .wk-ipadp-3 { width: 25%; }
  .wk-ipadp-4 { width: 33.333333%; }
  .wk-ipadp-5 { width: 41.666667%; }
  .wk-ipadp-6 { width: 50%; }
  .wk-ipadp-7 { width: 58.333333%; }
  .wk-ipadp-8 { width: 66.666667%; }
  .wk-ipadp-9 { width: 75%; }
  .wk-ipadp-10 { width: 83.333333%; }
  .wk-ipadp-11 { width: 91.666667%; }
  .wk-ipadp-12 { width: 100%; }

  .contact-us-modern .responsive-container-block.container {
    justify-content: center;
    flex-wrap: wrap;
  }

  .contact-us-modern .map-box {
    max-width: 100%;
    width: 100%;
    max-height: 320px;
    height: 320px;
  }

  .contact-us-modern .responsive-container-block.container {
    padding: 0;
  }

  .contact-us-modern .map-part {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .contact-us-modern .container-block.form-wrapper {
    margin: 0;
  }

  .contact-us-modern .mob-text {
    display: block;
    text-align: center;
  }

  .contact-us-modern .form-box {
    margin: 200px 60px 40px 0;
  }

  .contact-us-modern .text-blk.contactus-subhead {
    display: block;
  }
}

@media (max-width: 768px) {
  .wk-tab-1 { width: 8.333333%; }
  .wk-tab-2 { width: 16.666667%; }
  .wk-tab-3 { width: 25%; }
  .wk-tab-4 { width: 33.333333%; }
  .wk-tab-5 { width: 41.666667%; }
  .wk-tab-6 { width: 50%; }
  .wk-tab-7 { width: 58.333333%; }
  .wk-tab-8 { width: 66.666667%; }
  .wk-tab-9 { width: 75%; }
  .wk-tab-10 { width: 83.333333%; }
  .wk-tab-11 { width: 91.666667%; }
  .wk-tab-12 { width: 100%; }

  .contact-us-modern .submit-btn {
    width: 100%;
  }

  .contact-us-modern .input {
    width: 100%;
  }

  .contact-us-modern .textinput {
    width: 100%;
  }

  .contact-us-modern .container-block.form-wrapper {
    margin: 80px 0 0 0;
    padding: 50px 15px;
  }

  .contact-us-modern .text-blk.input-title {
    padding: 0;
  }

  .contact-us-modern .form-box {
    padding: 0 20px;
    margin: 220px 0 50px 0;
  }

  .contact-us-modern .responsive-container-block.container {
    padding: 0;
  }

  .contact-us-modern .phone-input-wrapper-modern {
    flex-direction: column;
    gap: 10px;
  }

  .contact-us-modern .country-code-select-modern {
    width: 100%;
    min-width: 100%;
  }

  .contact-us-modern .text-blk.contactus-head {
    font-size: 32px;
    line-height: 40px;
  }
}

@media (max-width: 500px) {
  .wk-mobile-1 { width: 8.333333%; }
  .wk-mobile-2 { width: 16.666667%; }
  .wk-mobile-3 { width: 25%; }
  .wk-mobile-4 { width: 33.333333%; }
  .wk-mobile-5 { width: 41.666667%; }
  .wk-mobile-6 { width: 50%; }
  .wk-mobile-7 { width: 58.333333%; }
  .wk-mobile-8 { width: 66.666667%; }
  .wk-mobile-9 { width: 75%; }
  .wk-mobile-10 { width: 83.333333%; }
  .wk-mobile-11 { width: 91.666667%; }
  .wk-mobile-12 { width: 100%; }

  .contact-us-modern .container-block.form-wrapper {
    padding: 50px 15px;
    margin: 60px 0 0 0;
  }

  .contact-us-modern .responsive-container-block {
    margin: 0 0 35px 0;
  }

  .contact-us-modern .text-blk.input-title {
    font-size: 12px;
  }

  .contact-us-modern .text-blk.contactus-head {
    font-size: 26px;
    line-height: 35px;
  }

  .contact-us-modern .input {
    height: 45px;
  }
}

