/*********************************************************************************************\
*       COPYRIGHT � 2020 ENVISION INFORMATION TECHNOLOGIES, LLC.    ALL RIGHTS RESERVED.      *
*       DISTRIBUTION, UNAUTHORIZED USE AND MODIFICATION IS STRICTLY PROHIBITED                *
*       ENVISION IT, MADISON, WI    http://www.envisionitllc.com   info@envisionitllc.com     *
\*********************************************************************************************/

.contact_half.address_maps {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  padding-top: 100px;
  height: calc(100% - 100px);
}

.address_maps img {
  height: auto;
  margin: 1vw auto;
  width: 30vw;
}

.address_maps p {
  font-size: 2.5vw;
  margin: 0 0 6.667vw;
  text-transform: uppercase;
}

.address_maps span {
  font-size: 24px;
  text-transform: uppercase;
}

.contact_background_image_dimensions {
  background-size: cover;
  text-align: center;
}

.contact_background_image_dimensions h2 {
  border: .3vw solid #FFF;
  color: #FFF;
  display: inline-block;
  font-size: 2.5vw;
  font-weight: 400;
  margin: 20vw 0;
  padding: .8334vw;
  text-transform: uppercase;
}

.contact_background_image_dimensions.business_hours h2 {
  text-shadow: 1px 0px 6px #8C8C8C;
}

.contact_form {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 80%;
}

.contact_form .contact_form_question {
  width: 100%;
}

.contact_form .contact_form_question label {
  width: 100%;
}

.contact_form .contact_form_question input,
.contact_form .contact_form_question select,
.contact_form .contact_form_question textarea {
  background: transparent;
  border: .10415vw solid #4F4F4F;
  color: #4F4F4F;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.75vw;
  max-width: none;
}

.contact_form .contact_form_question input {
  width: 98%;
}

.contact_form .contact_form_question input#contact_form_first_name,
.contact_form .contact_form_question input#contact_form_last_name {
  width: 48.1%;
}

.contact_form .contact_form_question select {
  width: 99%;
}

.contact_form .contact_form_question textarea {
  width: 97.7%;
}

.contact_form .contact_form_submit_section #contact_form_submit_button {
  margin-top: .6vw;
  width: 16.667vw;
}

.contact_form #recaptcha_area {
  margin: .8333vw auto;
  width: 304px;
}

.contact_form span {
  font-size: 45px;
}

.contact_form .ui-button-text {
  font-size: 24px;
}

.contact_half {
  height: 100%;
  width: 50%;
}

.contact_half.business_hours_list {
  align-items: center;
  display: flex;
  font-family: "Open Sans", sans-serif;
  flex-direction: column;
  justify-content: center;
}

.contact_half.business_hours_list h3 {
  font-weight: 400;
  font-size: 2.083vw;
  margin-top: 1.0416vw;
  margin-bottom: 1.0416vw;
}

.contact_half.business_hours_list .all_hours {
  font-size: 1.302vw;
  margin-top: .78125vw;
}

.contact_half.business_hours_list .business_closure_dates_columns p {
  column-count: 2;
  font-size: 1.5625vw;
  margin: 0;
}

.contact_half.business_hours_list .business_hours_columns {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 45%;
}

.contact_half.business_hours_list .business_hours_columns p {
  font-size: 1.823vw;
  margin: 0;
}

.contact_half.invoice_questions_prompt {
  display: flex;
  align-items: center;
}

.contact_half.invoice_questions_prompt p {
  display: block;
  font-size: 2vw;
  margin: 45px auto;
  text-align: center;
  width: 80%;
}

.contact_half.invoice_questions_prompt p a {
  color: #efbe1c;
  text-decoration: none;
}

.contact_half form.contact_form {
  margin: 4vw auto;
}

.contact_width {
  display: flex;
  flex-direction: row;
  height: 50vw;
  width: 100%;
}

.business_hours {
  background-image: url(/templates/Home_2020/images/lone-tree-on-rodeside.jpg);
}

.email_phone {
  background-image: url(/templates/Home_2020/images/phone-and-laptop.jpg);
}

.invoice_questions {
  background-image: url(/templates/Home_2020/images/invoice-questions.jpg);
}

.snail_mail_directions {
  background-image: url(/templates/Home_2020/images/snail-on-moss.jpg);
}

/* 1920+ MEDIA QUERIES ===================================================================== */
@media (min-device-width: 1921px), (min-width: 1921px) {
  .contact_half.address_maps {
    padding-top: 5.208vw;
    height: calc(100% - 5.208vw);
  }

  .address_maps p {
    font-size: 2.5vw;
    margin: 0 0 6.667vw;
  }

  .address_maps span,
  .contact_form .ui-button-text {
    font-size: 1.25vw;
  }

  .contact_half form.contact_form {
    margin: 4vw auto;
  }

  .contact_form .contact_form_question input#contact_form_first_name,
  .contact_form .contact_form_question input#contact_form_last_name,
  .contact_form .contact_form_question input,
  .contact_form .contact_form_question select,
  .contact_form .contact_form_question textarea {
    margin-top: .55vw;
  }

  .contact_form #recaptcha_area {
    margin: .8334vw auto;
  }

  .contact_form span {
    font-size: 2.34vw;
  }
}

/* DESKTOP/TABLET MEDIA QUERIES ============================================================ */
@media (max-device-width: 1400px), (max-width: 1400px) {
  .address_maps span,
  .contact_form .ui-button-text {
    font-size: 1.71vw;
  }

  .contact_form .contact_form_question input {
    width: 96.1%;
  }

  .contact_form .contact_form_question input#contact_form_first_name,
  .contact_form .contact_form_question input#contact_form_last_name {
    width: 47%;
  }

  .contact_form .contact_form_question textarea {
    width: 96%;
  }

  .contact_form .contact_form_question select {
    width: 97.8%;
  }

  .contact_form span {
    font-size: 3.214vw;
  }
}

/* MOBILE MEDIA QUERIES ==================================================================== */
@media (max-device-width: 800px), (max-width: 800px) {
  .contact_half.address_maps {
    padding-top: 0;
    height: 100%;
  }

  .address_maps p {
    font-size: 6vw;
  }

  .address_maps img {
    margin: 4vw auto;
    width: 75vw;
  }

  .address_maps span,
  .contact_form .ui-button-text {
    font-size: 4vw;
  }

  .contact_background_image_dimensions {
    height: 66vw;
  }

  .contact_background_image_dimensions h2 {
    border: 1vw solid #FFF;
    font-size: 12vw;
    font-weight: 500;
    margin: 0 3vw;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
  }

  .contact_form .contact_form_question input,
  .contact_form .contact_form_question textarea,
  .contact_form .contact_form_question select {
    font-size: 5.5vw;
  }

  .contact_form .contact_form_question input {
    width: 100%;
  }
  .contact_form .contact_form_question input#contact_form_first_name,
  .contact_form .contact_form_question input#contact_form_last_name {
    width: 100%;
  }

  .contact_form .contact_form_question select {
    width: 102%;
  }

  .contact_form .contact_form_question textarea {
    width: 99.5%;
  }

  .contact_form .contact_form_submit_section #contact_form_submit_button {
    margin: 4vw auto 0;
    width: 69vw;
  }

  .contact_form #recaptcha_area {
    margin: 3vw auto 0;
  }

  .contact_form span {
    font-size: 5vw;
  }

  .contact_half {
    width: 100%;
  }

  .contact_half.address_maps,
  .contact_half.contact_form {
    margin: 5vw auto;
  }

  .contact_half.business_hours_list {
    margin: 5vw 0;
  }

  .contact_half.business_hours_list h3 {
    font-size: 5vw;
    margin-top: 1.0416vw;
    margin-bottom: 1.0416vw;
  }

  .contact_half.business_hours_list .all_hours {
    font-size: 3.125vw;
    margin-top: .78125vw;
  }

  .contact_half.business_hours_list .business_closure_dates_columns p {
    column-count: 1;
    font-size: 3.75vw;
    text-align: center;
  }

  .contact_half.business_hours_list .business_hours_columns {
    width: 55%;
  }

  .contact_half.business_hours_list .business_hours_columns p {
    font-size: 4.375vw;
    margin: 0;
  }

  .contact_half.invoice_questions_prompt p {
    font-size: 4vw;
  }

  .snail_mail_directions {
    background-position-y: center;
  }

  .contact_width {
    flex-direction: column;
    height: auto;
  }

  .contact_width.reverse_box {
    flex-direction: column-reverse;
  }
}