:root {
  /** Font default */
  --font-family-default: 'Montserrat', sans-serif;
  --font-family-title: 'Gruppo', sans-serif;
  --font-size-default: 14px;
  /*--font-size-title: 60px;*/
  --font-size-title: 3.75vw;
  --font-size-title-big: 5vw;
  --font-color-default: #ffffff;
  --font-color-title: #6c757d;
  /** Use for input, button, and any other element */
  --primary: #911b27;
  --secondary: #e0b44c;
  --main-bg: #000000;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --default-transition: all 0.7s ease-in-out;
}

/* Global */
body {
  font-family: var(--font-family-default);
  font-size: var(--font-size-default);
  background: #ffffff;
  color: #000000;
  margin: 0;
  /* Remove the comment from line 85 to 86 if the font issue in safari occurs */
  /* -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; */
}
body.home {
  background: var(--main-bg);
  color: var(--font-color-default);
}

a, a:hover, a:link, a:active, a:focus {
  color: #000000;
  outline: none;
  text-decoration: none;
}

.slick-slide, .slick-slide *, .slick-slide a {outline: none;}

.site_easing, #header_wrap a, #burger_nav li a, #footer_wrap a {
  -webkit-transition: var(--default-transition);
  -moz-transition: var(--default-transition);
  -ms-transition: var(--default-transition);
  -o-transition: var(--default-transition);
  transition: var(--default-transition);
}

#main-wrapper {
  position: relative;
  overflow: hidden;
}

.site_section {
  position: relative;
  z-index: 1;
}

.parallax_bg {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  font-size: 0;
}
  .parallax_bg canvas {
    width: 100%;
    height: 100%;
    display: block;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    background-repeat: no-repeat;
  }
    .safari-true .parallax_bg canvas,
    .mobile .parallax_bg canvas {
      background-attachment: scroll;
    }

.non_parallax_bg {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  font-size: 0;
}
  .non_parallax_bg canvas {
    width: 100%;
    height: 100%;
    display: block;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

.site_inner_container {
  position: relative;
  z-index: 3;
}
.canvas_img {
  position: relative;
}
  .canvas_img canvas {
    width: 100%;
    height: auto;
    display: block;
  }
  .canvas_img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
  }
.filter_white {
  filter: brightness(0) invert(1);
}

/* Global Site Title START */
.global_site_title {

}
  .global_site_title h2 {
    display: inline-block;
    text-align: left;
    text-transform: uppercase;
  }
    .global_site_title h2 span {
      display: block;
      margin-bottom: 3px;
      color: #ffffff;
      font-size: 22px;
      letter-spacing: 0.3em;
      opacity: 0.55;
      position: relative;
    }
      .global_site_title h2 span::after {
        width: 124px;
        height: 2px;
        content: '';
        display: inline-block;
        vertical-align: middle;
        margin-left: 15px;
        background-color: var(--primary);
      }
    .global_site_title h2 strong {
      display: block;
      color: #ffffff;
      font-size: var(--font-size-title);
      font-weight: 400;
      font-family: var(--font-family-title);
      letter-spacing: 0.1em;
    }
    /* Dark Text */
    .global_site_title.dark_text h2 span {
      color: #000000;
      opacity: 0.7;
    }
    .global_site_title.dark_text h2 strong {
      color: #000000;
    }
/* Global Site Title END */


/* Global Site Button START */
.global_site_btn, .global_site_btn > div {
  display: inline-block;
  padding: 8px 0;
  position: relative;
}
  .global_site_btn a,
  .global_site_btn > div input[type="submit"] {
    width: auto;
    min-width: 206px;
    height: 57px;
    padding: 0 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 14px;
    letter-spacing: 0.2em;
    border: 2px solid #777777;
    background-color: transparent;
    text-align: center;
    text-transform: uppercase;
    transition: var(--default-transition);
  }
    .global_site_btn a:hover,
    .global_site_btn > div:hover input[type="submit"] {
      color: #000000;
      background-color: #ffffff;
      border-color: #ffffff;
    }
    .global_site_btn > div:hover input[type="submit"] {
      outline: none;
    }
    .global_site_btn a::before,
    .global_site_btn a::after,
    .global_site_btn > div::before,
    .global_site_btn > div::after {
      width: 50%;
      max-width: 76px;
      height: 1px;
      content: '';
      position: absolute;
      background-color: #ffffff;
      transition: var(--default-transition);
    }
      .global_site_btn a::before,
      .global_site_btn > div::before {
        top: 0;
        right: 0;
      }
      .global_site_btn a::after,
      .global_site_btn > div::after {
        bottom: 0;
        left: 0;
      }
      .global_site_btn.flip_line a::before,
      .global_site_btn.flip_line > div::before {
        top: 0;
        left: 0;
        right: auto;
      }
      .global_site_btn.flip_line a::after,
      .global_site_btn.flip_line > div::after {
        bottom: 0;
        right: 0;
        left: auto;
      }
    .global_site_btn a:hover::before,
    .global_site_btn a:hover::after,
    .global_site_btn > div:hover::before,
    .global_site_btn > div:hover::after {
      width: 100%;
      max-width: 100%;
    }
    /* Dark Button */
    .global_site_btn.dark_btn a,
    .global_site_btn.dark_btn > div {
      color: #000000;
    }
    .global_site_btn.dark_btn a:hover,
    .global_site_btn.dark_btn > div:hover {
      color: #ffffff;
      background-color: var(--main-bg);
      border-color: var(--main-bg);
    }
    .global_site_btn.dark_btn a::before,
    .global_site_btn.dark_btn a::after,
    .global_site_btn.dark_btn > div::before,
    .global_site_btn.dark_btn > div::after {
      background-color: var(--main-bg);
      border-color: var(--main-bg);
    }

/* Global Site Button END */


/* Header START */
#header_wrap {
  width: 100%;
  position: fixed;
  z-index: 1011;
  top: 0;
  left: 0;
  font-size: 0;
  padding: 19px 0;
  transition: var(--default-transition);
  color: #ffffff;
  text-align: center;
}
  .header_inner {
    padding-left: 1.1875%;
    padding-right: 1.1875%;
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
    .header_logo {
      width: 15.9%;
    }
      .header_logo img {
        width: 100%;
        height: auto;
      }
    .header_contact_info {
      color: #ffffff;
    }
      .header_contact_info > div {
        display: flex;
        align-items: center;
        justify-content: flex-start;
      }
      .headinfo {
        display: inline-block;
        vertical-align: middle;
        margin-right: 40px;
        position: relative;
      }
        .headinfo:last-child {
          margin-right: 32px;
        }
        .headinfo a {
          color: inherit;
        }
          .headinfo > a:hover,
          .headinfo.active > a {
            color: var(--main-bg);
          }
        .headinfo i {
          font-size: 18px;
        }
          .headinfo i.ai-font-phone {
            font-size: 20px;
          }

        .headinfo_content {
          position: absolute;
          z-index: 1;
          top: 0;
          right: -21px;
          padding-top: 38px;
          color: #ffffff;
          opacity: 0;
          visibility: hidden;
          pointer-events: none;
          transition: var(--default-transition);
        }
          .headinfo.active .headinfo_content {
            opacity: 1;
            visibility: visible;
            z-index: 2;
          }
          .headinfo_content.head_email {
            right: -17px;
          }
          .headinfo_content a {
            display: block;
            color: inherit;
            font-size: 11px;
            padding: 5px 12px;
            line-height: 20px;
            letter-spacing: 0.08em;
            background-color: var(--main-bg);
            position: relative;
            pointer-events: auto;
          }
            .headinfo_content a:hover {
              color: inherit;
              opacity: 0.7;
            }
            .headinfo_content a::before {
              width: 0; 
              height: 0; 
              content: '';
              position: absolute;
              top: -7px;
              right: 22px;
              border-left: 6.5px solid transparent;
              border-right: 6.5px solid transparent;
              border-bottom: 7px solid var(--main-bg);;
            }
      .bm_button {
        width: 36px;
        height: 24px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-flow: column;
        font-size: 0;
        cursor: pointer;
        transition: var(--default-transition);
        pointer-events: auto;
        text-align: right;
      }
        .bm_button_line {
          width: 100%;
        }
          .bm_button_line span {
            width: 100%;
            height: 2px;
            display: inline-block;
            vertical-align: middle;
            background-color: #ffffff;
          }
            .bm_button_line span:first-child {
              width: calc(100% - 5px);
            }
            .bm_button_line span:nth-child(2) {
              width: calc(100% - 18px);
              margin: 9px 0;
            }
            .bm_button:hover .bm_button_line span {
              width: 100%;
            }
/* Header END */


/* Fixed Header START */
#header_wrap.fixedhead {
  padding: 12px 0;
  background-color: var(--main-bg);
}
  #header_wrap.fixedhead .header_logo img {
    width: auto;
    max-height: 65px;
  }
  #header_wrap.fixedhead .bm_button {
    display: none;
  }
  #header_wrap.fixedhead #nav .sub-menu {
    padding-top: 24px;
  }
  #header_wrap.fixedhead .headinfo > a:hover,
  #header_wrap.fixedhead .headinfo.active > a {
    color: #ffffff;
    opacity: 0.7;
  }
  #header_wrap.fixedhead .headinfo_content a {
    background-color: #222222;
  }
  #header_wrap.fixedhead .headinfo_content a::before {
    border-bottom: 7px solid #222222;
  }
/* Fixed Header END */


/* Navigation START */
.navigation {
  width: 73.5%;
  /*padding-left: 5.0625%;*/
  padding-right: 1.5%;
}
#nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
  #nav li {
    display: inline-block;
    vertical-align: middle;
    padding: 0 9px;
    position: relative;
  }
    #nav li a {
      display: block;
      color: #ffffff;
      padding: 11px 0;
      /*font-size: 0.875vw;*/
      font-size: 14px;
      line-height: 20px;
      /*letter-spacing: 0.01em;*/
      text-transform: uppercase;
      position: relative;
  }
      #nav > li > a::before,
      #nav > li > a::after {
        width: 0;
        height: 1px;
        content: '';
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        margin: 0 auto;
        background: #ffffff;
        opacity: 0;
        -webkit-transition: var(--default-transition);
        transition: var(--default-transition);
      }
        #nav > li > a::before {
          top: 0;
        }
        #nav > li > a::after {
          bottom: 0;
        }
        #nav > li:hover > a::before, #nav > li:hover > a::after,
        #nav > li:focus-within > a::before, #nav > li:focus-within > a::after {
          width: 50%;
          max-width: 60px;
          opacity: 1;
        }
    #nav .sub-menu {
      list-style: none outside none;
      margin: 0;
      display: none;
      padding: 11px 0 0;
      position: absolute;
      z-index: 100;
      width: 100%;
      min-width: 200px;
      text-align: center;
    }
      #nav > li > .sub-menu {
        left: -150%;
        right: -150%;
        margin: 0 auto;
      }
      #nav .sub-menu li {
        width: 100%;
        padding: 0;
        margin-bottom: 1px;
        position: relative;
      }
        #nav .sub-menu a {
          color: #ffffff;
          display: block;
          padding: 7px 5px;
          letter-spacing: 0;
          position: relative;
          background-color: transparent;
        }
          #nav .sub-menu a:hover {
            color: #ffffff;
          }
          #nav .sub-menu a::after {
            width: 100%;
            height: 100%;
            content: '';
            position: absolute;
            z-index: -1;
            top: 0;
            left: 0;
            background-color: var(--main-bg);
            opacity: 0.4;
            pointer-events: none;
            transition: var(--default-transition);
          }
          #nav .sub-menu a:hover::after {
            opacity: 1;
          }
        #nav .sub-menu .sub-menu {
          margin-left: 100%;
          top: 0;
          padding: 0;
        }
/* Navigation END */

/* Floating SMI START */
.head_floating_smi {
  width: 55px;
  position: fixed;
  z-index: 100;
  right: 2.5625%;
  top: 50%;
  font-size: 0;
  text-align: center;
  transform: translate(0,-50%);
}
.fixed_smi {
  position: relative;
}
  .fixed_smi::after {
    width: 1px;
    height: 58px;
    content: '';
    display: inline-block;
    vertical-align: top;
    margin-top: 10px;
    background-color: #ffffff;
  }
  .fixed_smi li {
    display: block;
    padding: 11.5px 0;
  }
    .fixed_smi li a {
      width: 55px;
      height: 54px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #ffffff;
      font-size: 23px;
      border: 1px solid #ffffff;
      border-radius: 50%;
      position: relative;
      overflow: hidden;
    }
      .fixed_smi li a::before {
        width: 100%;
        height: 100%;
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        background-color: var(--main-bg);
        border-radius: 50%;
        opacity: 0.3;
        transition: var(--default-transition);
      }
        .fixed_smi li a:hover::before {
          opacity: 1;
        }
/* Floating SMI END */

/* Burger Menu START */
body.show_menu {
    overflow: hidden;
}
.burger_menu_content_wrap {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 1031;
  top: 0;
  right: -20%;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  text-align: right;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.burger_menu_content_wrap.show_menu {
  right: 0;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.bm_slide_overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
  .burger_menu_content_wrap.show_menu .bm_slide_overlay {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
    .burger_menu_content {
      width: 90%;
      max-width: 741px;
      height: 100%;
      display: inline-block;
      vertical-align: top;
      position: relative;
      z-index: 2;
      font-size: 0;
      padding: 67px 90px 100px 79px;
      color: #ffffff;
      text-align: left;
      background-color: var(--main-bg);
      overflow-y: scroll;
      -ms-overflow-style: none;  /* IE and Edge */
      scrollbar-width: none;  /* Firefox */
    }
      .burger_menu_content::after {
        width: 100%;
        height: 105%;
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        background-image: url(../images/bg-burger-menu.jpg);
        background-size: cover;
        background-position: top center;
        background-repeat: no-repeat;
        opacity: 0.95;
      }
      .burger_menu_content::-webkit-scrollbar {
          display: none;
      }
        .bm_close_btn {
          position: absolute;
          z-index: 3;
          top: 53px;
          right: 53px;
          color: #ffffff;
          text-align: center;
          cursor: pointer;
          transition: var(--default-transition);
        }
          .bm_close_btn span {
            display: block;
            color: #ffffff;
            font-size: 27px;   
            transition: var(--default-transition);
          }
            .bm_close_btn:hover span {
              color: #ffffff;
              opacity: 0.6;
            }
        .bm_logo {
          font-size: 0;
          position: relative;
          z-index: 2;
          margin-bottom: 50px;
        }
          .bm_logo img {
            width: 292px;
            max-width: 100%;
            height: auto;
          }
        .burger_navigation {
          position: relative;
          z-index: 2;
        }
          #burger_nav {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            flex-flow: column;
          }
             #burger_nav li {
                margin-bottom: 10px;
                position: relative;
              }
              #burger_nav li a {
                display: inline-block;
                margin-bottom: 10px;
                padding: 5px 0;
                color: #ffffff;
                font-size: 20px;
                letter-spacing: 0.1em;
                text-transform: uppercase;
                opacity: 0.7;
              }
                #burger_nav li:hover > a {
                  color: #ffffff;
                  opacity: 1;
                }
                #burger_nav .sub-menu {
                  padding-top: 10px;
                  padding-left: 20px;
                  display: none;
                  z-index: 100;
                }
                #burger_nav .sub-menu li {
                  margin-bottom: 10px;
                  position: relative;
                }
                #burger_nav .sub-menu li a {
                  padding: 0;
                  color: #ffffff;
                  font-size: 16px;
                  text-transform: uppercase;
                }
                  #burger_nav .sub-menu li:hover a {
                    color: #ffffff;
                    opacity: 1;
                  }
          .bm_contact_info {
            color: #ffffff;
            position: relative;
            z-index: 2;
            padding-top: 25px;
            margin-top: 15px;
          }
            .bm_contact_info::before {
              width: 100%;
              max-width: 390px;
              height: 2px;
              content: '';
              position: absolute;
              top: 0;
              left: 0;
              background-color: var(--primary);
              opacity: 0.5;
            }
            .bm_info {
              padding-top: 40px;
            }
            .bm_info i {
              min-width: 25px;
              font-size: 17px;
              margin-right: 15px;
              display: inline-block;
              vertical-align: middle;
              text-align: center;
            }
            .bm_info span {
              font-size: 20px;
              display: inline-block;
              vertical-align: middle;
              opacity: 0.7;
              transition: var(--default-transition);
            }
            .bm_info span a {
              color: inherit;
            }
            .bm_info span:hover {
              opacity: 1;
            }
/* Burger Menu END */



#footer_wrap {
/*  background: var(--main-bg);*/
      position: relative;
    z-index: 0;
}

/* Join Our Network START */
.footer_contact_form_wrap {
  padding: 105px 0;
  text-align: center;
}
  .footer_contact_bg {
    background-color: var(--main-bg);
  }
    .footer_contact_bg canvas {
      opacity: 0.5;
        opacity: 45%;
    }
  .footer_form_inner {
    padding: 0;
    max-width: 90%;
  }
    .footer_form_inner::before {
      width: 20%;
      max-width: 205px;
      height: 267px;
      content: '';
      position: absolute;
      z-index: -1;
      top: -30px;
      left: -35px;
      background-color: var(--primary);
        opacity: 0;
    }
  .foot_contact_form {
    padding: 85px 0;
    background-color: var(--main-bg);
    position: relative;
      background-color: transparent;
  }
    .contact_form {
      width: calc(100% - 288px);
      margin: 35px auto 0;
      font-size: 0;
      position: relative;
    }
      .form_field_wrap {
        width: 100%;
        display: inline-block;
        vertical-align: top;
        margin: 0 auto;
        position: relative;
      }
        .form_field_long {
          width: 100%;
        }
        .form_field_short {
          width: calc(50% - 18px);
          display: inline-block;
          vertical-align: top;
          margin-left: 36px;
        }
          .form_field_short:first-child {
            margin-left: 0;
          }
          .form_field_wrap input, .form_field_wrap textarea {
              width: 100%;
              height: 70px;
              padding: 0;
              color: #b4b4b4;
              font-size: 12px;
              letter-spacing: 0.2em;
              text-transform: uppercase;
              border: none;
              border-bottom: 1px solid #ffffff;
              background-color: transparent;
              outline: none;
              -webkit-appearance: none;
              -moz-appearance:    none;
              appearance:         none;
          }
          .form_field_wrap textarea {
              height: 150px;
              padding-top: 59px;
              resize: none;
          }
      .form_submit {
        margin-top: 54px;
      }
        .contact_form .ajax-loader, .contact_form .wpcf7-spinner {
          position: absolute;
          left: 0;
          right: 0;
          margin: 0 auto !important;
          bottom: -50px;
        }
        .contact_form .wpcf7-form-control-wrap {
          display: block;
        }
        .contact_form .use-floating-validation-tip span.wpcf7-not-valid-tip {
          width: auto;
          max-width: 100%;
          font-size: 12px;
          position: absolute;
          top: 10px;
        }
        .contact_form div.wpcf7-response-output,
        .contact_form .wpcf7 form .wpcf7-response-output {
          position: absolute;
          left: 0;
          right: 0;
          margin: 10px auto 0;
          color: var(--font-color-default) !important;
          font-size: 14px;
          text-align: center;
        }
   
/* Join Our Network END */


/* Footer START */
.footer_contact_info_wrap {
  padding: 55px 0;
  color: #ffffff;
}
  .footer_contact_info_wrap a {
    color: inherit;
  }
    .footer_contact_info_wrap a:hover {
      opacity: 0.7;
    }
  .footer_info_bg {
    background-color: var(--main-bg);
  }
    .footer_info_bg canvas {
      opacity: 0.15;
    }
  .footer_logo {
    margin-bottom: 55px;
    font-size: 0;
    text-align: center;
  }
    .footer_logo img {
      max-width: 100%;
      height: auto;
    }
  .footer_contact_info_wrap h3 {
    margin-bottom: 45px;
    font-size: 24px;
    font-weight: 100;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    opacity: 0.7;
  }
    .footer_info {
      padding: 0;
    }
      .foot_info {
        margin-bottom: 20px;
        white-space: nowrap;
      }
      .foot_info i {
        min-width: 25px;
        display: inline-block;
        vertical-align: top;
        margin-right: 15px;
        color: #cdcdcd;
        font-size: 15px;
        text-align: center;
      }
        .foot_info i.ai-font-phone {
          font-size: 20px;
        }
        .foot_info i.ai-font-location-c {
          font-size: 25px;
        }
      .foot_info span {
        display: inline-block;
        vertical-align: top;
        font-size: 15px;
        letter-spacing: 0.07em;
      }
        .foot_info span span {
          display: block;
          margin-top: 10px;
        }
    .footer_smi {

    }
      .footer_smi ul li {
        display: inline-block;
        vertical-align: middle;
        margin-left: 43px;
      }
        .footer_smi ul li:first-child {
          margin-left: 0;
        }
        .footer_smi ul li a {
          font-size: 26px;
        }
    .footer_navigation {
      padding: 0 0 0 80px;
    }
      .footer_navigation #menu-main-navigation {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
      }
      .footer_navigation li {
        padding-bottom: 25px;
      }
        .footer_navigation li a {
          font-size: 15px;
          letter-spacing: 0.04em;
          text-transform: uppercase;
        }
        .footer_navigation .sub-menu {
          display: none;
        }
.footer_bottom_wrap {
  padding: 60px 0 100px;
  text-align: left;
  background: var(--main-bg);;
}
  .footer_bottom_inner {
    padding: 0;
  }
    .footer_bottom_inner > .row {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
    }
    .footer_disclaimer {
      color: #666666;
      font-size: 11px;
      line-height: 2.2;
      padding-right: 25px;
    }
      .footer_disclaimer a {
        color: inherit;
      }
        .footer_disclaimer a:hover {
          color: #ffffff;
        }
    .footer_copyright {
      margin-top: 35px;
      color: #838383;
      font-size: 13px;
      line-height: 1.2;
      letter-spacing: 0.08em;
    }
      .footer_copyright span,
      .footer_copyright strong {
        color: #b3b3b3;
        font-weight: 700;
        transition: var(--default-transition);
      }
        .footer_copyright a {
          color: inherit;
        }
        .footer_copyright a:hover,
        .footer_copyright a strong:hover {
          color: #ffffff;
        }
    .footer_mls {
      color: #b3b3b3;
      font-size: 0;
      text-align: right;
    }
      .footer_mls span {
        font-size: 34px;
        display: inline-block;
        vertical-align: middle;
      }
        .footer_mls span.ai-font-eho {
          font-size: 28px;
          margin-right: 12px;
        }
/* Footer END */



/* Global */
/*******************************************************
 *
 * 4. IP Styles
 *
 *******************************************************/
.ip-banner {
  position: relative;
  width: 100%;
}
.ip-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.5);
}
.ip-banner canvas {
  display: block;
  position: relative;
  z-index: 0;
  width: 100%;
  min-height: 250px;
  background-color: var(--dark);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.ip-banner .container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.ip-banner h1 {
  font-weight: 700;
  font-size: 32px;
  text-align: center;
  color: #FFFFFF;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1.7;
}
.ip-banner h1 span {
  display: block;
  font-size: 24px;
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0.01em;
}

/* Adjust minimum height of page area */
#content-sidebar,
#content-full {
  min-height: 500px;
  margin-top: 20px;
}

/** Adjust width of content columns **/
#content-sidebar #content {
  width: 77.08%;
}

#content-full #content {
  width: 100%;
}

/* Adjust width of sidebar */
.sidebar {
  width: 20.83%;
}

/* fullwidth template */
.page-template-template-fullwidth #content {
  padding-left: 15px;
  padding-right: 15px;
}
.page-template-template-fullwidth #content ihf-search[data-eureka-id*=""].ihf-eureka {
  margin-left: -15px;
  margin-right: -15px;
}

/* Adjust line height of page elements */
#content h4,
aside h4,
#content p,
aside p,
#content blockquote,
aside blockquote,
#content ul,
aside ul,
#content fieldset,
aside fieldset,
#content form,
aside form,
#content ol,
aside ol,
#content dl,
aside dl,
#content dir,
aside dir,
#content menu,
aside menu {
  line-height: 1.7;
}

/* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */
#content .archive-title,
#content .entry-title {
/*  color: #ffffff;*/
  font-size: var(--font-size-title);
  font-weight: 400;
  font-family: var(--font-family-title);
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}


/* Styles for category/archive/search/etc subheadings (h2) */
#content .archive-subtitle {
/*  color: #ffffff;*/
  font-size: 25px;
  font-family: var(--font-family-title);
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

#content .entry a:hover {
  color: var(--secondary);
}

body #pojo-a11y-toolbar {
  bottom:0 !important;
  top: auto !important;
}
body #pojo-a11y-toolbar.pojo-a11y-toolbar-left .pojo-a11y-toolbar-toggle {
  top:auto !important;
  bottom:0 !important;
}

body.pojo-a11y-readable-font [class*="ai-font"] {
  font-family: agentimage !important;
}

button:focus-visible, a:focus-visible {
  outline-style: solid !important;
  outline-width: 5px !important;
  outline-color: red !important;
  transition: none !important;
}

/* High contrast and Negative contrast break canvas elements with backgrounds */
#pojo-a11y-toolbar .pojo-a11y-btn-high-contrast,
#pojo-a11y-toolbar .pojo-a11y-btn-negative-contrast,
#pojo-a11y-toolbar .pojo-a11y-btn-grayscale,
#pojo-a11y-toolbar .pojo-a11y-btn-light-background {
  display:none !important;
}

.ai-default-cf7wrap input[type="text"],
.ai-default-cf7wrap input[type="tel"],
.ai-default-cf7wrap input[type="email"],
.ai-default-cf7wrap textarea,
.aidefcf-wrapper .wpcf7-form-control.wpcf7-select {
  background: transparent !important;
}
.aidefcf-wrapper .wpcf7-form-control.wpcf7-select option {
  color: #000000;
}
/*.ai-contact-wrap span.context-mob em.ai-font-phone,
.ai-contact-wrap span.context-email em.ai-font-envelope,
#content div.wpcf7-response-output,
#content .wpcf7 form .wpcf7-response-output {
  color: #ffffff !important;
}*/

.use-floating-validation-tip .wpcf7-not-valid-tip {
  width: auto;
  position: absolute;
}
.wpcf7 form .wpcf7-response-output {
  text-align: center;
}
#listings-details .listings-accordion h2, #listings-main strong {
  color: #000;
}
#listings-details .listings-plan span{
   color: #000 !important;
}
/*.post-page-meet-the-team #agents-results .agents-name {
  color: #ffffff;
}*/
.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form input[type=submit] {
  color: var(--primary);
}
.single-aios-agents .aiosp-wrap .aiosp-ref-\#agents-popup-form input[type=submit]:hover {
  color: var(--secondary);
}

.page-id-390 #content .entry {
  /*font-family: 'Poppins', sans-serif;*/
  letter-spacing: 0.05em;
}

.page-id-390 #content .entry p {
  /*font-weight: 500;*/
	font-size: 17px;
}

.page-id-390 #inner-page-wrapper {
  background-color: #fff;
  color: #000;
  margin-bottom: 0;
  padding-bottom: 80px;
}

.page-id-390 #inner-page-wrapper a,
.page-id-390 #inner-page-wrapper #content .archive-title, 
.page-id-390 #inner-page-wrapper #content .entry-title {
  color: inherit;
}

body .ai-communities-minimalist-row .ai-communities-minimalist-list a {
  background: var(--secondary);
}

body .ai-communities-minimalist-row .ai-communities-minimalist-list a .ai-communities-minimalist-content-hover {
  background-color: var(--secondary);
  transition: all .7s ease-in-out;
}

body .ai-communities-minimalist-row .ai-communities-minimalist-list a .ai-communities-minimalist-content {
  transition: all .7s ease-in-out;
}

#nav .sub-menu li.aios-initial-setup-dead-link a {
	pointer-events: none;
}

.post-page-meet-the-team #agents-results .agents-img img,
.single-aios-agents #agents-single .agents-img img {
  object-fit: contain;
}

body .ai-minimalist-form .ai-minimalist-form-col span.wpcf7-form-control-wrap {
    display: block;
}

body.listing-module-page #inner-page-wrapper .container .container-theme-filter {
    width: 100%;
    padding: 0;
}

.post-page-meet-the-team #inner-page-wrapper {
  margin-top: 5px;
}
#inner-page-wrapper #breadcrumbs {
  padding: 0;
}

.post-page-contact-us .ai-minimalist-column-agent-details a {
  color: #ffffff;
}
.post-page-contact-us .ai-minimalist-column-agent-details a:hover {
  opacity: 0.7;
}
.post-page-contact-us .ai-minimalist-form .wpcf7-response-output {
  color: #ffffff !important;
}

.single-aios-listings #listings-details .listings-extras > li > span,
.single-aios-listings #listings-details .listings-extras > li > strong,
.single-aios-listings #listings-details .listings-smi h2,
.single-aios-listings #listings-details .listings-cta > li > a {
  color: #ffffff;
}
.single-aios-listings #listings-details .listings-address,
.single-aios-listings #listings-details .listings-plan > ul > li{
	color: #fff !important;
}
.single-aios-listings #listings-details .listings-main-left .listings-cta > li > a {
	background: var(--aios-listing-primary-color) !important;
	border-color: var(--aios-listing-primary-color) !important;
}
.single-aios-listings #listings-details .listings-main-left .listings-cta > li > a:hover {
	background: var(--aios-listing-secondary-color) !important;
	border-color: var(--aios-listing-secondary-color) !important;
}
.single-aios-listings #listings-details .listings-cta.white > li > a {
	color: var(--aios-listing-secondary-color) !important;
}
.single-aios-listings #listings-details .listings-link-navigation-main:hover {
  color: #ffffff !important;
}
.single-aios-listings #listings-details .listings-cta.white > li > a#listings-cta-mortgage:hover,
.single-aios-listings #listings-details .listings-cta.white > li > a#listings-cta-website:hover,
.single-aios-listings #listings-details .listings-cta.white > li > a#listings-cta-brochure:hover {
  color: #ffffff !important;
  background: var(--aios-listing-secondary-color) !important;
	border-color: var(--aios-listing-secondary-color) !important;
}
.single-aios-communities .ai-minimalist-communities-content-wrap .ai-minimalist-communities-content-image {
  display: none;
}
.single-aios-communities #content .ai-minimalist-communities-content-wrap .ai-minimalist-communities-content-text h1 {
  margin-bottom: 20px;
}
.page-id-2421 .ai-communities-minimalist-pagination .page-numbers:first-child {
  border-left: 0;
}
.page-id-2421 .ai-communities-minimalist-pagination .page-numbers.current {
  color: var(--aios-communities-primary-color);
}

@media only screen and (min-width: 992px) {
  body.home .footer_contact_bg canvas{
    opacity: 0;
  }
  body.home .footer_contact_form_wrap {
    background: rgba(0, 0, 0, 0.65);
  }
  body.home .footer_contact_bg {
    opacity: 0;
  }
}
@media only screen and (min-width: 1601px) {
  :root {
    --font-size-title: 60px;
    --font-size-title-big: 80px;
  }
}

@media only screen and (max-width: 1440px) {
  #nav li {
    padding: 0 min(0.5vw,8px);
  }
  #nav li a {
    font-size: 13px;
  }
}

@media only screen and (max-width: 1366px) {
  
}

@media only screen and (max-width: 1280px) {
  #nav li a {
    font-size: 11px;
  }
  .head_floating_smi {
    right: 5px;
    transform: translate(0,-50%) scale(0.8);
  }
  .header_inner,
  .footer_bottom_inner {
    padding: 0 15px;
  }
  .footer_info_inner {
    padding: 0 30px;
  }
}

/* iPad(landscape) | iPad(landscape) | Galaxy Tab 4 (landscape) | Galaxy Tab 3 (landscape) */
@media only screen and (max-width: 1199px) {
  #nav li a {
    font-size: 8px;
  }
  .burger_menu_content::after {
    height: 115%;
  }
  .footer_navigation {
    padding-left: 30px;
  }
}


/* iPad(portrait) | Galaxy Tab 4(portrait)  */
@media only screen and (max-width: 991px) {
  :root {
    --font-size-title: 50px;
    --font-size-title-big: 65px;
  }

  #pojo-a11y-toolbar {
    display:none;
  }

  .amh-navigation {
    background-color: var(--main-bg) !important;
  }
  .amh-navigation .amh-menu li a,
  .amh-navigation .amh-menu li.open>a,
  .amh-navigation .amh-menu li:hover>a {
    color: #ffffff !important;
  }

  .global_site_title h2 {
    text-align: center;
  }
  .global_site_title h2 span {
    font-size: 20px;
  }
  .global_site_title h2 span::after {
    display: none;
  }
  body.show_menu {
    overflow: scroll;
  }
  #header_wrap {
    margin-top: 52px;
    position: relative;
    z-index: 2;
    background-color: var(--main-bg);
  }
  .header_inner {
    justify-content: center;
  }
  .header_logo {
    width: 100%;
    max-width: 238px;
    margin: 0 auto;
  }

  .footer_contact_form_wrap {
    padding: 60px 0;
  }
  .footer_form_inner::before {
    display: none;
  }
  .contact_form {
    width: 85%;
  }

  .footer_info_inner {
    padding: 0 15px;
  }
  .footer_info_inner,
  .footer_bottom_wrap,
  .footer_mls {
    text-align: center;
  }
  .footer_info,
  .footer_navigation {
    padding: 0 15px;
  }
  .footer_bottom_inner > .row,
  .footer_navigation #menu-main-navigation {
    flex-flow: column;
    align-items: center;
    justify-content: center;
  }
  .footer_smi {
    margin: 50px 0;
  }
  .footer_disclaimer {
    padding: 0;
  }
  .footer_copyright {
    line-height: 1.5;
  }
  .footer_mls {
    margin-top: 20px;
  }
  .foot_info {
    white-space: none;
  }

  /* The following are used on inner pages. Please edit carefully. */
  .inner {
    width: 100%;
  }
  #content-sidebar,
  #content-full {
    width: 100%;
  }
  .outer {
    width: 100%;
    min-width: 100%;
  }
  #content-sidebar #content {
    width: 100%;
  }

  .post-page-meet-the-team #agents-results .agents-item {
    display: block;
  }
  .post-page-meet-the-team #agents-results .agents-img,
  .single-aios-agents #agents-single .agents-img .agent-img-wrap {
    max-width: 300px;
    margin: 0 auto;
  }
  .post-page-meet-the-team #agents-results .agents-img canvas,
  .single-aios-agents #agents-single .agents-img canvas {
    display: none;
  }
  .post-page-meet-the-team #agents-results .agents-img img,
  .single-aios-agents #agents-single .agents-img img {
    position: relative;
  }
  .post-page-meet-the-team #agents-results .agents-col:nth-child(even) .agents-main {
    flex-direction: row;
  }
  
}
/* Galaxy Tab 3(portrait) | Galaxy S5(landscape) */
@media only screen and (max-width: 767px) {
  .ip-banner .container {
    width: 100%;
  }
}

/* Galaxy S5(portrait) | iPod Touch(landscape) | iPod Touch(portrait) */
@media only screen and (max-width: 480px) {
  :root {
    --font-size-title: 30px;
    --font-size-title-big: 50px;
  }
  .form_field_short {
    width: 100%;
    margin: 0;
  }
  .foot_info span {
    letter-spacing: 0.05em;
  }
}
