/*******************************************************
 *
 * Root Variables
 *
 *******************************************************/
 :root {
  /** Font default */
  --font-family-default: "Mulish", sans-serif;
  --font-family-title: "Playfair Display", serif;
  --font-size-default: 16px;
  --font-size-title: max(6.25vw, 30px);
  --font-color-default: #000;
  /** Colors */
  --primary: #000;
  --secondary: #fff;
  --accent: #4a4a4a;
  /** Use for input, button, and any other element */
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --default-transition: .3s cubic-bezier(.4, 0, .2, 1);
  --default-transition-6s: .6s cubic-bezier(.4, 0, .2, 1);
  /** Others */
  --site-button-height: max(3.625vw, 48px);
  --site-arrow-size: max(3.625vw, 48px);
}

/*******************************************************
 *
 * Global
 *
 *******************************************************/
/** Body */
body {
  position: relative;
  display: block;
  font-family: var(--font-family-default);
  font-size: var(--font-size-default);
  background: #fff;
  color: var(--font-color-default);
  margin: 0;
  padding: 0;
}
body.offcanvas-open, body.search-open {
  overflow: hidden;
}

/** Site Selection */
::-moz-selection {
  background: var(--primary);
  color: #fff;
}

::selection {
  background: var(--primary);
  color: #fff;
}

/** Site Link */
a,
button {
  color: inherit;
  transition: var(--default-transition);
  transition-property: opacity, color, border, background;
}

a {
  outline: none;
  text-decoration: none;
}
a:focus, a:hover {
  text-decoration: none;
  color: var(--primary-text-color, var(--primary));
}

/** Site Helpers */
.site-bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}
.site-bg canvas {
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.site-bg:before, .site-bg:after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  pointer-events: none;
}
.site-heading {
  position: relative;
  display: block;
}
.site-heading h2 {
  display: inline-block;
  vertical-align: middle;
  text-transform: uppercase;
}
.site-heading small {
  display: block;
  font-size: max(1.25vw, 15px);
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--primary-text-color, var(--font-color-default));
}
.site-heading strong {
  display: block;
  font-family: var(--font-family-title);
  font-size: max(3.75vw, 30px);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0;
  color: var(--primary-text-color, var(--font-color-default));
}
.site-heading--white small,
.site-heading--white strong {
  color: var(--secondary-text-color, #fff);
}
.site-button {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  vertical-align: middle;
  min-height: var(--site-button-height);
  margin: 0;
  padding: 10px max(2.688vw, 25px);
  font-size: max(0.875vw, 13px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: 1px solid var(--primary, #000);
  color: var(--primary, #000);
  transition: var(--default-transition);
  transition-property: color, border, background;
}
.site-button:focus, .site-button:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--secondary-text-color, #fff);
}
.site-button--white {
  border-color: var(--secondary, #fff);
  color: var(--secondary-text-color, #fff);
}
.site-button--white:focus, .site-button--white:hover {
  background: var(--secondary, #fff);
  border-color: var(--secondary, #fff);
  color: var(--primary, #000);
}
.site-button--hover-primary:focus, .site-button--hover-primary:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--secondary-text-color, #fff);
}
.site-img {
  position: relative;
  display: block;
}
.site-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: var(--default-transition);
  transition-property: opacity, filter, transform;
}
.site-img img.aios-lazyload {
  opacity: 0;
}
.site-img img.loaded, .site-img img.aios-lazy-entered {
  opacity: 1;
}
.site-img canvas {
  display: block;
  width: 100%;
  min-height: 250px;
}
.site-control {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: row wrap;
  pointer-events: none;
}
.site-control__arrow {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--site-arrow-size);
  height: var(--site-arrow-size);
  border-radius: 50%;
  border: 1px solid var(--primary);
  font-size: max(0.813vw, 13px);
  color: var(--primary);
  padding: 0;
}
.site-control__arrow:focus, .site-control__arrow:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--secondary-text-color, #fff);
}
.site-control__arrow--white {
  border-color: var(--secondary);
  color: var(--secondary-text-color, #fff);
}
.site-control__arrow--white:focus, .site-control__arrow--white:hover {
  background: var(--secondary);
  border-color: var(--secondary);
  color: var(--primary-text-color, #000);
}
.site-control__arrow i {
  display: block;
}
.site-control__viewall {
  position: relative;
  display: block;
  text-align: center;
}
.site-control > * {
  pointer-events: auto;
}
.site-control > * + * {
  margin-left: max(1.25vw, 15px);
}

/** Floating Social Media Icons */
.site-fsmi {
  position: fixed;
  z-index: 900;
  top: 0;
  bottom: 0;
  right: max(1.875vw, 15px);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  pointer-events: none;
}
body.ip-container .site-fsmi {
  display: none;
}

.site-fsmi__container {
  position: relative;
  display: block;
}
.site-fsmi__list {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  pointer-events: auto;
  transition: var(--default-transition);
  transition-property: opacity, visibilty, pointer-events;
}
.site-fsmi__list ul {
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.site-fsmi__list ul > * + * {
  margin-top: 15px;
}
.site-fsmi__list ul li {
  position: relative;
  display: block;
}
.site-fsmi__list ul li a {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(2.375vw, 32px);
  height: max(2.375vw, 32px);
  font-size: max(0.938vw, 14px);
  border-radius: 50%;
  color: var(--secondary);
  background: var(
  --primary);
  transition-property: border, background, color;
}
.site-fsmi__list ul li a:focus, .site-fsmi__list ul li a:hover {
  background: var(--secondary-background, var(--primary));
  color: var(--secondary-text-color, #fff);
}

/** Offcanvas */
.site-offcanvas {
  position: fixed;
  z-index: 1020;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: calc(max(1.875vw, 19px) * 2);
  opacity: 0;
  visibility: hidden;
  transform: scale(0.95);
  pointer-events: none;
  transition: var(--default-transition-6s);
  transition-property: opacity, visibility, transform, pointer-events;
}
.site-offcanvas .simplebar-content {
  padding-bottom: 55px !important;
}
body.admin-bar .site-offcanvas {
  top: 32px;
}

.site-offcanvas--open {
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}
.site-offcanvas__bg:before {
  background: rgba(var(--rgb-primary, 0, 0, 0), 0.8);
}
.site-offcanvas__bg:after {
  margin: max(1.875vw, 30px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.site-offcanvas__bg canvas {
  filter: grayscale(1);
}
.site-offcanvas__container {
  position: relative;
  z-index: 2;
  display: flex;
  width: 100%;
  height: 100%;
}
.site-offcanvas__close {
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  font-size: max(1.188vw, 17px);
  padding: max(1.875vw, 30px);
  margin: min(-1.875vw, -30px);
  color: #fff;
  transition: var(--default-transition);
}
.site-offcanvas__close:focus, .site-offcanvas__close:hover {
  background: #fff;
  color: var(--primary-text-color, var(--primary));
}
.site-offcanvas__close i {
  display: block;
}
.site-offcanvas__main {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  padding: max(4vw, 30px) 0 30px;
  width: 100%;
}
.site-offcanvas__main > * + * {
  margin-top: max(3.125vw, 30px);
}
.site-offcanvas__logo {
  position: relative;
  display: block;
  text-align: center;
}
.site-offcanvas__logo a {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  color: var(--secondary-text-color, #fff);
}
.site-offcanvas__logo i {
  display: block;
  font-size: max(2.281vw, 30px);
}
.site-offcanvas__logo img {
  display: block;
  height: auto;
  max-width: 100%;
}
.site-offcanvas__simplebar {
  position: relative;
  display: block;
  overflow-x: hidden;
}
.site-offcanvas__simplebar[data-simplebar=init] {
  display: flex;
}
.site-offcanvas__simplebar .simplebar-scrollbar {
  right: 0;
  width: 100%;
}
.site-offcanvas__simplebar .simplebar-scrollbar:before {
  background: #fff;
  border-radius: 0;
}
.site-offcanvas__simplebar .simplebar-track {
  background: var(--primary);
}
.site-offcanvas__simplebar .simplebar-track[style*=visible] .simplebar-scrollbar:before {
  opacity: 1;
}
.site-offcanvas__simplebar .simplebar-track.horizontal {
  display: none;
}
.site-offcanvas__group {
  position: relative;
  display: flex;
  justify-content: center;
  flex-flow: row wrap;
}
.site-offcanvas__group > * + * {
  margin-left: 8.75vw;
}
.site-offcanvas__navigation {
  position: relative;
  display: block;
}
.site-offcanvas__navigation--split {
  display: flex;
}
.site-offcanvas__navigation--split > * + * {
  margin-left: 7.5vw;
}
.site-offcanvas__navigation ul {
  position: relative;
  display: block;
}
.site-offcanvas__navigation ul li {
  position: relative;
  display: block;
}
.site-offcanvas__navigation ul li a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  color: var(--secondary-text-color, #fff);
  line-height: 1;
}
.site-offcanvas__navigation ul li a:focus, .site-offcanvas__navigation ul li a:hover {
  opacity: 0.5;
}
.site-offcanvas__navigation ul.offcanvas-menu > * + * {
  margin-top: max(0.625vw, 10px);
}
.site-offcanvas__navigation ul.offcanvas-menu > li.menu-item-has-children {
  margin: max(2.313vw, 20px) 0;
}
.site-offcanvas__navigation ul.offcanvas-menu > li.menu-item-has-children:first-child {
  margin-top: 0;
}
.site-offcanvas__navigation ul.offcanvas-menu > li.menu-item-has-children:last-child {
  margin-bottom: 0;
}
.site-offcanvas__navigation ul.offcanvas-menu > li > a {
  font-family: var(--font-family-title);
  font-size: max(1.188vw, 16px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.site-offcanvas__navigation ul.sub-menu {
  margin-top: max(0.625vw, 10px);
}
.site-offcanvas__navigation ul.sub-menu > * + * {
  margin-top: max(0.313vw, 5px);
}
.site-offcanvas__navigation ul.sub-menu > li > a {
  font-size: max(0.792vw, 11px);
  font-weight: 300;
  color: rgba(var(--rgb-secondary-text-color, 255, 255, 255), 0.5);
}
.site-offcanvas__info {
  position: relative;
  display: block;
  flex-shrink: 0;
}
.site-offcanvas__contact {
  position: relative;
  display: block;
}
.site-offcanvas__contact ul {
  position: relative;
  display: block;
}
.site-offcanvas__contact ul > * + * {
  margin-top: max(0.75vw, 10px);
}
.site-offcanvas__contact ul li {
  position: relative;
  display: block;
}
.site-offcanvas__contact ul li a, .site-offcanvas__contact ul li p {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  color: var(--secondary-text-color, #fff);
}
.site-offcanvas__contact ul li a i, .site-offcanvas__contact ul li p i {
  display: block;
  min-width: max(2.188vw, 25px);
  font-size: max(1vw, 14px);
  line-height: 1;
  flex-shrink: 0;
}
.site-offcanvas__contact ul li a i.ai-font-phone, .site-offcanvas__contact ul li p i.ai-font-phone {
  font-size: max(0.938vw, 13px);
  margin: auto 0;
}
.site-offcanvas__contact ul li a i.ai-font-envelope-filled-a, .site-offcanvas__contact ul li p i.ai-font-envelope-filled-a {
  font-size: max(0.625vw, 9px);
  margin: auto 0;
}
.site-offcanvas__contact ul li a span, .site-offcanvas__contact ul li p span {
  margin: auto 0;
  font-size: max(0.875vw, 10px);
  font-weight: 300;
  line-height: normal;
  letter-spacing: 0;
}
.site-offcanvas__contact ul li a:focus, .site-offcanvas__contact ul li a:hover {
  opacity: 0.5;
}
.site-offcanvas__smi {
  position: relative;
  display: block;
  margin-top: max(1.25vw, 15px);
}
.site-offcanvas__smi ul {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  flex-flow: row wrap;
}
.site-offcanvas__smi ul > * + * {
  margin-left: max(0.938vw, 10px);
}
.site-offcanvas__smi ul li {
  position: relative;
  display: block;
}
.site-offcanvas__smi ul li a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  width: max(2.375vw, 32px);
  height: max(2.375vw, 32px);
  border: 1px solid var(--secondary);
  font-size: max(1vw, 13px);
  border-radius: 50%;
  color: var(--secondary-text-color);
}
.site-offcanvas__smi ul li a:focus, .site-offcanvas__smi ul li a:hover {
  background: var(--secondary);
  color: var(--primary-text-color, var(--primary));
}

/** Header */
.site-header {
  position: fixed;
  z-index: 1010;
  top: 0;
  left: 0;
  right: 0;
  padding: 0 max(3.125vw, 30px);
  transition: var(--default-transition);
  transition-property: border, background;
}
body.admin-bar .site-header {
  top: 32px;
}

.site-header:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(var(--rgb-primary-background, 255, 255, 255), 0.35);
  transition: opacity var(--default-transition);
  pointer-events: none;
}
.site-header__container {
  position: relative;
  display: flex;
  min-height: max(6.563vw, 75px);
}
.site-header__logo {
  position: relative;
  display: block;
  margin: auto 0;
  padding: 10px 0;
  flex-shrink: 0;
}
.site-header__logo a {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  color: var(--secondary-text-color, #fff);
  margin: auto 0;
}
.site-header__logo i {
  display: block;
  font-size: max(2.281vw, 30px);
}
.site-header__logo img {
  display: block;
  height: auto;
  max-width: min(max(15.625vw, 150px), 250px);
}
.site-header__logo > div {
  display: flex;
}
.site-header__logo-broker {
  display: flex;
  align-items: center;
  border-left: 1px solid rgba(var(--rgb-secondary, 255, 255, 255), 0.35);
  margin: 10px;
  margin-left: max(0.938vw, 10px);
  padding-left: max(0.938vw, 10px);
  font-size: min(max(1.563vw, 16px), 25px);
  color: var(--secondary-text-color, #fff);
}
.site-header__logo-broker i {
  font-size: inherit !important;
}
.site-header__navigation {
  position: relative;
  display: block;
  margin-left: max(4.063vw, 20px);
}
.site-header__navigation ul {
  position: relative;
  display: block;
}
.site-header__navigation ul li {
  position: relative;
  display: block;
}
.site-header__navigation ul li a {
  position: relative;
  display: block;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--secondary-text-color, #fff);
}
.site-header__navigation ul.site-menu {
  display: flex;
  height: 100%;
  margin: 0 max(-1.250vw, -15px);
}
.site-header__navigation ul.site-menu > * + *:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -1px;
  width: 1px;
  height: max(0.813vw, 12px);
  background: rgba(var(--rgb-primary-background, 255, 255, 255), 0.25);
  margin: auto 0;
}
.site-header__navigation ul.site-menu > li {
  position: relative;
  display: block;
  height: 100%;
  padding: 0 max(1.250vw, 15px);
}
.site-header__navigation ul.site-menu > li > a {
  display: flex;
  align-items: center;
  font-size: max(0.813vw, 11px);
  height: 100%;
}
.site-header__navigation ul.site-menu > li > a:before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--primary-background, var(--secondary));
  transform: scale(0);
  transition: var(--default-transition);
  pointer-events: none;
}
.site-header__navigation ul.site-menu > li:hover > a:before,
.site-header__navigation ul.site-menu > li > a:focus:before,
.site-header__navigation ul.site-menu > li > a:hover:before {
  transform: none;
}
.site-header__navigation ul.sub-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, 10px);
  min-width: max(12.5vw, 200px);
  opacity: 0;
  visibility: hidden;
  transition: var(--default-transition);
  pointer-events: none;
  padding-top: 2px;
  transition-property: opacity, visibility, transform, pointer-events;
}
.site-header__navigation ul.sub-menu > * + * {
  margin-top: 1px;
}
.site-header__navigation ul.sub-menu > li {
  display: block;
}
.site-header__navigation ul.sub-menu > li > a {
  display: block;
  padding: max(0.813vw, 10px) 0;
  text-align: center;
  font-size: max(0.813vw, 11px);
  background: var(--primary);
  white-space: nowrap;
  color: var(--secondary-text-color, #fff);
  letter-spacing: 0.025em;
}
.site-header__navigation ul.sub-menu > li > a:focus, .site-header__navigation ul.sub-menu > li > a:hover {
  background: var(--secondary, #fff);
  color: var(--primary-text-color);
}
.site-header__navigation ul.sub-menu ul.sub-menu {
  top: 0;
  left: 100%;
  padding: 0 0 0 1px;
  transform: none !important;
}
.site-header__navigation ul li.menu-item-has-children:focus > ul.sub-menu, .site-header__navigation ul li.menu-item-has-children:hover > ul.sub-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}
.site-header__info {
  position: relative;
  display: block;
  margin-left: auto;
  padding-left: 10px;
}
.site-header__info > div,
.site-header__info ul {
  height: 100%;
}
.site-header__info ul {
  position: relative;
  display: flex;
}
.site-header__info ul > * + * {
  border-left: 1px solid rgba(var(--rgb-secondary, 255, 255, 255), 0.35);
}
.site-header__info ul > li {
  position: relative;
  display: block;
  height: 100%;
  transition: border var(--default-transition);
}
.site-header__info ul > li > a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(6.25vw, 55px);
  height: 100%;
  padding: 10px;
  color: var(--secondary, #fff);
}
.site-header__info ul > li > a i {
  display: block;
}
.site-header__info ul > li > a i.iconHome {
  font-size: max(1.313vw, 19px);
}
.site-header__info ul > li > a i.iconEmail {
  font-size: max(0.875vw, 12px);
}
.site-header__info ul > li > a i.iconPhone {
  font-size: max(1.063vw, 17px);
}
.site-header__info ul > li > a:focus, .site-header__info ul > li > a:hover {
  background: var(--primary);
  color: var(--secondary-text-color, #fff);
}
.site-header__burger {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: max(6.875vw, 60px);
  border-left: 1px solid rgba(var(--rgb-secondary, 255, 255, 255), 0.35);
  transition: var(--default-transition);
  transition-property: color, background, border;
  cursor: pointer;
  flex-shrink: 0;
}
.site-header__burger:focus, .site-header__burger:hover {
  background: var(--secondary-background, var(--primary));
  color: var(--secondary-text-color, #fff);
}
.site-header__burger > * + * {
  margin-top: max(0.438vw, 5px);
}
.site-header__burger span {
  display: block;
  width: max(1.625vw, 20px);
  height: 1px;
  background: var(--secondary, #fff);
}
.site-header--fixed {
  background: var(--secondary-background, var(--primary));
}
.site-header--fixed:before {
  opacity: 0;
}
.site-header--fixed .site-header__info ul > * + * {
  /* border-color: var(--primary); */
}
.site-header--fixed .site-header__info ul li a:focus, .site-header--fixed .site-header__info ul li a:hover {
  background: var(--secondary);
  color: var(--primary-text-color, var(--primary));
}
.site-header--fixed .site-header__burger {
  /* border-color: var(--primary, #fff); */
}
.site-header--fixed .site-header__burger:focus, .site-header--fixed .site-header__burger:hover {
  background: var(--primary-background, var(--secondary));
}
.site-header--fixed .site-header__burger:focus span, .site-header--fixed .site-header__burger:hover span {
  background: var(--secondary-background, var(--primary));
}

/** Footer */
.site-footer {
  position: relative;
  display: block;
  overflow: hidden;
}
.site-footer__container {
  position: relative;
  display: block;
}
.site-footer__git {
  position: relative;
  display: block;
  padding: max(6.25vw, 50px) calc(max(1.875vw, 20px) + 30px);
}
.site-footer__git:before, .site-footer__git:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}
.site-footer__git:before {
  background: var(--primary) url(../images/git-texture.jpg) no-repeat;
  background-position: center center;
  background-size: cover;
  background-blend-mode: luminosity;
}
.site-footer__git:after {
  margin: max(1.875vw, 20px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.site-footer__git-container {
  position: relative;
  display: block;
  max-width: max(50.625vw, 810px);
  margin: 0 auto;
}
.site-footer__git-heading {
  position: relative;
  display: block;
  text-align: center;
}
.site-footer__git-text {
  position: relative;
  display: block;
  font-size: max(0.875vw, 13px);
  font-weight: 300;
  line-height: 1.9;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--secondary-text-color, #fff);
  margin-top: max(1.25vw, 15px);
}
.site-footer__git-cf7 {
  position: relative;
  display: block;
}
.site-footer__git-cf7 .wpcf7-response-output {
  position: absolute;
  top: 100%;
  width: 100%;
  text-align: center;
  color: var(--secondary-text-color, #fff) !important;
}
.site-footer__git-cf7 .ajax-loader,
.site-footer__git-cf7 .wpcf7-spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 15px;
  filter: invert(1);
}
.site-footer__git-form {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: max(2.5vw, 20px);
  margin-top: max(2.5vw, 30px);
}
.site-footer__git-form-col {
  position: relative;
  display: block;
}
.site-footer__git-form-col--lg {
  grid-column: span 2;
}
.site-footer__git-form-col--submit {
  text-align: center;
}
.site-footer__git-form-input {
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  background: transparent;
  display: block;
  width: 100%;
  font-size: max(0.813vw, 12px);
  font-weight: 300;
  line-height: normal;
  letter-spacing: 0.05em;
  color: var(--secondary-text-color, #fff);
  text-transform: uppercase;
  border-bottom: 1px solid rgba(var(--rgb-secondary), 0.5);
  padding: 0;
  padding-bottom: max(1.25vw, 15px);
}
.site-footer__git-form-input:focus, .site-footer__git-form-input:active {
  color: #fff;
}
.site-footer__git-form-input--textarea {
  resize: none;
  height: max(5vw, 65px);
}
.site-footer__main {
  position: relative;
  display: block;
  padding: max(6.25vw, 50px) 11% max(7.5vw, 50px);
  overflow: hidden;
}
.site-footer__main:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--secondary-background, #fff) url(../images/footer-texture.jpg) no-repeat;
  background-position: center center;
  background-size: cover;
  background-blend-mode: luminosity;
  pointer-events: none;
}
.site-footer__main a:focus, .site-footer__main a:hover {
  opacity: 0.75;
}
.site-footer__group {
  position: relative;
  display: flex;
}
.site-footer__info {
  position: relative;
  display: block;
  flex-shrink: 0;
}
.site-footer__logo {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  color: var(--primary-text-color, var(--font-color-default));
}
.site-footer__logo img {
  display: block;
  height: auto;
  max-width: min(max(18.75vw, 200px), 300px);
}
.site-footer__logo i {
  display: block;
  font-size: max(3.237vw, 40px);
}
.site-footer__logo-broker {
  display: block;
  margin-top: max(0.938vw, 10px);
  padding-top: max(0.938vw, 10px);
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  font-size: min(max(1.875vw, 20px), 30px);
  text-align: center;
}
.site-footer__logo-broker i {
  display: block;
  font-size: inherit !important;
}
.site-footer__contact {
  position: relative;
  display: block;
  margin-top: max(1.563vw, 20px);
}
.site-footer__contact > * + * {
  margin-top: max(1.25vw, 15px);
}
.site-footer__contact h3 {
  display: block;
  font-family: var(--font-family-title);
  font-size: max(1.188vw, 16px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--primary-text-color, var(--font-color-default));
}
.site-footer__contact ul {
  position: relative;
  display: block;
}
.site-footer__contact ul > * + * {
  margin-top: max(0.75vw, 10px);
}
.site-footer__contact ul li {
  position: relative;
  display: block;
}
.site-footer__contact ul li a, .site-footer__contact ul li p {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  color: var(--primary-text-color, var(--font-color-default));
}
.site-footer__contact ul li a i, .site-footer__contact ul li p i {
  display: block;
  min-width: max(2.188vw, 25px);
  font-size: max(1vw, 14px);
  line-height: 1;
}
.site-footer__contact ul li a i.ai-font-phone, .site-footer__contact ul li p i.ai-font-phone {
  font-size: max(0.938vw, 13px);
  margin: auto 0;
}
.site-footer__contact ul li a i.ai-font-envelope-filled-a, .site-footer__contact ul li p i.ai-font-envelope-filled-a {
  font-size: max(0.625vw, 9px);
  margin: auto 0;
}
.site-footer__contact ul li a i.ai-font-location-c + span, .site-footer__contact ul li p i.ai-font-location-c + span {
  top: -0.3em;
  line-height: 1.7;
}
.site-footer__contact ul li a span, .site-footer__contact ul li p span {
  position: relative;
  margin: auto 0;
  font-size: max(0.875vw, 12px);
  font-weight: 300;
  line-height: normal;
  letter-spacing: 0;
}
.site-footer__navigation {
  position: relative;
  display: block;
  margin: max(0.625vw, 10px) 0 0 6%;
  flex-grow: 1;
}
.site-footer__navigation--custom {
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
}
.site-footer__navigation--custom > * + * {
  margin-left: 15px;
}
.site-footer__navigation ul {
  position: relative;
  display: block;
}
.site-footer__navigation ul li {
  position: relative;
  display: block;
  color: var(--primary-text-color, var(--font-color-default));
}
.site-footer__navigation ul li a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}
.site-footer__navigation ul.footer-menu > * + * {
  margin-top: max(0.625vw, 10px);
}
.site-footer__navigation ul.footer-menu > li > a {
  font-family: var(--font-family-title);
  font-size: max(1.188vw, 16px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
.site-footer__navigation ul.sub-menu {
  margin-top: max(0.625vw, 10px);
}
.site-footer__navigation ul.sub-menu > * + * {
  margin-top: max(0.625vw, 10px);
}
.site-footer__navigation ul.sub-menu > li {
  color: rgba(var(--primary-text-color, 0, 0, 0), 0.85);
}
.site-footer__navigation ul.sub-menu > li > a {
  font-size: max(0.792vw, 11px);
  font-weight: 300;
}
.site-footer__bottom {
  position: relative;
  display: flex;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin-top: max(2.063vw, 20px);
  padding-top: max(2.688vw, 25px);
}
.site-footer__bottom > * + * {
  margin-left: 4.5vw;
}
.site-footer__creds {
  position: relative;
  display: block;
}
.site-footer__creds > * + * {
  margin-top: max(0.313vw, 5px);
}
.site-footer__disclaimer, .site-footer__copyright {
  position: relative;
  display: block;
  font-size: max(0.625vw, 9px);
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.05em;
  color: var(--primary-text-color, var(--font-color-default));
}
.site-footer__copyright {
  font-weight: 700;
  line-height: 1.2;
}
.site-footer__mls {
  position: relative;
  display: block;
  flex-shrink: 0;
  font-size: max(1.375vw, 18px);
  color: var(--primary-text-color, var(--font-color-default));
}
.site-footer__mls i {
  display: block;
}

/*******************************************************
 *
 * 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.6);
}
.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;
}

#inner-page-wrapper .inner-page-container {
  padding: 0 6.25vw;
}

.aios-custom-ihomefinder-details-template #inner-page-wrapper,
.post-page-get-a-free-home-valuation #inner-page-wrapper {
  margin-bottom: 0;
}
.aios-custom-ihomefinder-details-template #inner-page-wrapper .inner-page-container,
.post-page-get-a-free-home-valuation #inner-page-wrapper .inner-page-container {
  padding: 0;
}

/* 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;
}

#content {
  /* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */
  /* Blog */
  /* Blog */
}
#content .entry-title,
#content .archive-title,
#content .archive-subtitle {
  position: relative;
  display: block;
  font-family: var(--font-family-title);
  font-size: max(1.875vw, 25px);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  color: var(--primary-text-color, var(--primary));
}
#content .archive-subtitle {
  font-family: var(--font-family-title);
  font-size: max(1.563vw, 20px);
  text-transform: none;
  color: rgba(var(--font-color-default), 1);
}
#content .archive-thumbnail a img {
  width: 100%;
}
#content .entry-thumbnail img {
  width: 100%;
  margin: 0 auto;
}
#content .archive-list {
  display: flex;
  flex-flow: row wrap;
  margin: 0 -15px;
}
#content .archive-list .post {
  width: 50%;
  padding: 15px;
  border: none;
}
#content .archive-list .post a {
  display: block;
  width: 100%;
  position: relative;
}
#content .archive-list .post .archive-thumbnail {
  width: 100%;
  float: none;
}
#content .archive-list .post .archive-thumbnail canvas {
  width: 100%;
  height: auto;
}
#content .archive-list .post .archive-thumbnail img {
  display: block;
  left: 0;
  top: 0;
  object-fit: cover;
  object-position: center center;
  position: absolute;
  width: 100%;
  height: 100%;
}
#content .archive-list .post .archive-content {
  width: 100%;
  float: none;
}
#content .archive-list .post .archive-content .archive-more {
  font-style: normal;
  text-decoration: none;
  display: inline-flex;
  width: auto;
}
#content .archive-list .post .archive-content .archive-more:hover {
  color: var(--secondary-text-color) !important;
}
#content .archive-list .post:first-child {
  width: 100%;
}
#content .archive-list .post:first-child .entry {
  display: flex;
  flex-flow: row wrap;
}
#content .archive-list .post:first-child .entry .archive-thumbnail {
  width: 60%;
}
#content .archive-list .post:first-child .entry .archive-content {
  width: 37%;
  margin-left: 3%;
  font-size: 22px;
}
#content .archive-list .post:first-child .entry .archive-content .archive-subtitle {
  margin-top: 0;
}

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

.aios-custom-ihomefinder-results-template #content-full .entry-title {
  width: 100% !important;
  padding: 0 !important;
}

/* Styles for category/archive/search/etc subheadings (h2) */
/*******************************************************
 *
 * Overrides
 *
 *******************************************************/
/** Contact Form 7 */
.wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: auto;
  min-width: 0;
  max-width: 100%;
  font-size: max(0.688vw, 10px);
  padding: max(0.5vw, 8px);
}

.wpcf7 form .wpcf7-response-output {
  font-size: max(0.75vw, 12px);
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  text-align: center;
  padding: max(0.5vw, 8px);
}

/** Pojo Accessibility */
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;
}

.single-aios-listings #listings-details .listings-cta > li > a#listings-cta-mortgage,
.single-aios-listings #listings-details .listings-cta > li > a#listings-cta-printable {
  display: none;
}

.visit-row{
    margin: 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

.visit-row .visit-col{

}

.visit-row .visit-col-img{
  width: calc(45% - 20px);
  padding-right: 70px;
}

.visit-row .visit-col-text{
  width: calc(55% - 20px);
}

/* Blog Popup */
div#blogPopup {}

div#blogPopup .site-footer__git-text {
    color: #000;
    font-size: max(0.75vw, 12px);
}

.blogPopup__title {
    text-align: center;
}

.blogPopup__form .site-footer__git-form-input {
    color: #000;
    border-color: #000;
}

.aiosp-wrap .aiosp-container.aiosp-inline-holder.aiosp-ref-\#blogPopup .aios-popup-body {
    min-height: unset;
    width: 90%;
    max-width: 600px;
    padding: 60px 40px;
}

.blogPopup__title .site-heading strong {
    font-size: max(2.5vw, 40px);
}

.blogPopup__title .site-heading small {
    font-size: max(0.94vw, 15px);
}

.blogPopup__form .wpcf7 form .wpcf7-response-output {
    position: absolute;
    top: calc(100% + 10px);
    margin: 0;
    font-size: 12px;
    color: #000 !important;
}

.blogPopup__form .wpcf7-not-valid-tip {
    top: 50%;
    transform: translateY(-50%);
    left: unset;
    right: 0;
    font-size: 12px;
    padding: 5px;
}
/* Blog Popup */

/*******************************************************
 *
 * Media Queries
 *
 *******************************************************/
@media only screen and (max-width: 1199px) {
  /* Blog */
  #content .archive-list .post:first-child .entry .archive-thumbnail {
    width: 100%;
  }
  #content .archive-list .post:first-child .entry .archive-content {
    width: 100%;
    margin-left: 0;
  }
  #content .archive-list .post:first-child .entry .archive-content .archive-subtitle {
    margin: 0.75em 0;
  }
  .site-header {
    padding-left: 15px;
    padding-right: 15px;
  }
  .site-header__navigation {
    margin-left: max(2.016vw, 20px);
  }
  .site-footer__main {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (max-width: 991px) {
  .site-heading {
    padding-left: 0 !important;
    border-left: none !important;
  }
  .site-control > * + * {
    margin-left: 15px !important;
  }
  .site-control__viewall {
    order: 1 !important;
    width: 100% !important;
    text-align: center !important;
    margin: 30px 0 0 !important;
  }
  .site-fsmi {
    display: none;
  }
  .site-offcanvas__close {
    padding: 20px;
  }
  .site-offcanvas__main {
    padding-top: 30px;
  }
  .site-offcanvas__group {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .site-offcanvas__group > * + * {
    margin: 30px 0 0;
  }
  .site-offcanvas__navigation--split {
    display: block;
  }
  .site-offcanvas__navigation--split > * + * {
    margin: max(2.313vw, 20px) 0 0;
  }
  .site-header {
    padding-left: 20px;
    padding-right: 20px;
  }
  .site-header__logo-broker {
    font-size: min(max(1.563vw, 13px), 25px);
  }
  .site-header__navigation {
    display: none;
  }
  .site-header__info ul > li:first-child {
    display: none;
  }
  .site-header__burger {
    margin-right: -20px;
  }
  .site-footer__git, .site-footer__main {
    padding: 50px 15px;
  }
  .site-footer__git-container, .site-footer__main > * {
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
  }
  .site-footer__git {
    padding-left: calc(max(1.875vw, 15px) + 15px);
    padding-right: calc(max(1.875vw, 15px) + 15px);
  }
  .site-footer__git:after {
    margin: max(1.875vw, 15px);
  }
  .site-footer__git-cf7 .wpcf7-response-output {
    position: relative;
    top: 0;
    margin: 30px 0 0 !important;
  }
  .site-footer__group {
    display: block;
    text-align: center;
  }
  .site-footer__logo {
    text-align: center;
  }
  .site-footer__logo img {
    margin: 0 auto;
  }
  .site-footer__navigation {
    margin: 30px 0 0;
  }
  .site-footer__navigation--custom {
    display: block;
  }
  .site-footer__navigation--custom > * + * {
    margin: max(0.625vw, 10px) 0 0;
  }
  .site-footer__bottom {
    display: block;
    text-align: center;
  }
  .site-footer__bottom > * + * {
    margin: 30px 0 0;
  }
  .site-footer__disclaimer, .site-footer__copyright {
    font-size: 10px;
    line-height: 1.5;
  }
  .inner {
    width: 100%;
  }
  #content-sidebar,
#content-full {
    width: 100%;
  }
  .outer {
    width: 100%;
    min-width: 100%;
  }
  #content-sidebar #content {
    width: 100%;
  }
  #content {
    /* Blog */
    /* Blog */
  }
  #content .archive-list {
    margin: 0;
  }
  #content .archive-list .post {
    width: 100%;
    padding: 15px 0;
  }
  #content .archive-list .post .archive-content .archive-subtitle {
    text-align: left;
  }
  #content .archive-list .post:first-child .entry .archive-thumbnail {
    width: 100%;
  }
  #content .archive-list .post:first-child .entry .archive-content {
    width: 100%;
    margin-left: 0;
  }

  .visit-row .visit-col{
    width: 100% !important; 
    padding: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .ip-banner .container {
    width: 100%;
  }
}
@media only screen and (max-width: 567px) {
  .site-header__logo i {
    font-size: max(2.281vw, 20px);
  }
  .site-header__info ul > li > a {
    width: max(6.25vw, 50px);
  }
}
@media only screen and (max-width: 480px) {


#site-header {
    padding-left: 15px;
    padding-right: 15px;
}
  .aiosCommunitiesPanorama__info .aiosCommunitiesPanorama__name {
    font-size: 13px !important;
  }
  .site-offcanvas__close {
    padding: 33px;
    background: transparent !important;
  }
  .site-header__burger {
    width: auto;
    padding-left: 20px;
    padding-right: 20px;
  }
  .site-header__logo-broker {
    display: none;
  }
  .site-footer__git-form-col {
    grid-column: span 2;
  }
}

@media only screen and (max-width: 360px) {
  .site-header__logo img {
    max-width: 135px;
}

}