main {
  display: block;
}
@media (min-width: 1024px) {
  main {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 23px;
  }
}
@media (min-width: 1024px) {
  main .top-container {
    grid-area: 1/span 8;
  }
}
main .content-container {
  padding: 0 15px;
  grid-area: 2/span 8;
  display: grid;
  grid-template-columns: 100%;
  gap: 23px;
  max-width: 1400px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  main .content-container {
    grid-template-columns: repeat(8, 1fr);
  }
}
@media (min-width: 1024px) {
  main .content-container .content-inner {
    grid-area: 1/span 5;
    padding: 0 0 0 15px;
  }
}
main .sidebar-container {
  padding: 0 15px;
  z-index: 3;
}
@media (min-width: 1024px) {
  main .sidebar-container {
    grid-area: 1/span 3;
    padding: 0 15px 0 0;
  }
}
@media (min-width: 1024px) {
  main .sidebar-container {
    margin-top: -250px;
  }
}
main .sidebar-container .contact-info {
  display: grid;
  position: relative;
  margin-bottom: 30px;
}
main .sidebar-container .contact-info:before {
  position: absolute;
  width: 54px;
  height: 54px;
  background-color: var(--color-red);
  clip-path: polygon(100% 1%, 0 0, 0 100%);
  top: 0;
  left: 0;
  z-index: 2;
  content: "";
}
main .sidebar-container .contact-info p {
  font-size: 1.375rem;
  line-height: 2.1875rem;
  margin-bottom: 30px;
  font-weight: var(--font-weight-700);
}
main .sidebar-container .contact-info ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
main .sidebar-container .contact-info ul li {
  padding: 0;
  margin: 0;
  width: 100%;
  font-size: 1.375rem;
  line-height: 2.1875rem;
  font-weight: var(--font-weight-700);
}
main .sidebar-container .contact-info ul li.phone {
  font-size: 2.5rem;
  line-height: 2.5rem;
}
main .sidebar-container .contact-info ul li.file {
  width: auto;
  font-size: 1.875rem;
  margin-right: 10px;
  margin-top: 30px;
}
main .sidebar-container .contact-info ul li.file a svg {
  max-width: none;
}
main .sidebar-container .contact-info ul li.file svg {
  width: 30px;
  height: auto;
}
main .sidebar-container .contact-info ul li.file svg path {
  fill: var(--color-orange);
  transition: fill 0.25s ease-in-out;
}
main .sidebar-container .contact-info ul li.file a {
  color: var(--color-orange);
  display: flex;
}
main .sidebar-container .contact-info ul li.file a span {
  font-size: 1.375rem;
  line-height: 1.5625rem;
  padding-top: 10px;
  display: block;
  padding-left: 5px;
}
main .sidebar-container .contact-info ul li.file a:hover {
  color: var(--color-red);
}
main .sidebar-container .contact-info ul li.file a:hover svg path {
  fill: var(--color-red);
}
main .sidebar-container .contact-info ul li a {
  color: var(--color-brown-dark);
}
main .sidebar-container .contact-info ul li a:hover {
  color: var(--color-red);
}
main .sidebar-container .contact-info .details {
  grid-area: 1/1/1/1;
  z-index: 2;
  padding: 46px 34px 60px;
}
main .sidebar-container .contact-info .photo {
  grid-area: 1/1/1/1;
  z-index: 1;
  overflow: hidden;
  height: 100%;
  position: relative;
}
main .sidebar-container .contact-info .photo img {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
main .sidebar-container .form .gform_validation_errors,
main .sidebar-container .form .validation_message,
main .sidebar-container .form .gform_heading {
  display: none !important;
}
main .sidebar-container .form .gform_wrapper .gfield_error label {
  color: var(--color-red);
}
main .sidebar-container .form .gform_wrapper .gfield_error [aria-invalid=true] {
  border-color: var(--color-red) !important;
}
main .sidebar-container .form p {
  font-size: 1.125rem;
  line-height: 2.0625rem;
}
main .sidebar-container .form .hbspt-form {
  width: 100%;
  position: relative;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 100%;
}
main .sidebar-container .form .hbspt-form form {
  max-width: none;
  display: grid;
  grid-template-columns: 100%;
  row-gap: 20px;
}
main .sidebar-container .form .hbspt-form fieldset {
  max-width: none;
}
main .sidebar-container .form div.gfield,
main .sidebar-container .form .hs-form-field {
  float: none;
  width: 100%;
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: 0.5lh 0.5lh 1fr;
  gap: 0;
}
main .sidebar-container .form div.gfield > *,
main .sidebar-container .form .hs-form-field > * {
  grid-column: 1;
}
main .sidebar-container .form div.gfield label,
main .sidebar-container .form .hs-form-field label {
  grid-row: 1/span 2;
  position: relative;
  z-index: 2;
  padding: 5px 3px !important;
  margin: 0 15px !important;
  background-color: var(--color-white);
  font-size: 1.125rem;
  line-height: 1.125rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: normal !important;
  display: inline-block;
  justify-self: start;
  align-self: center;
}
main .sidebar-container .form div.gfield .input,
main .sidebar-container .form .hs-form-field .input {
  grid-row: 2/span 3;
}
main .sidebar-container .form div.gfield input,
main .sidebar-container .form div.gfield textarea,
main .sidebar-container .form .hs-form-field input,
main .sidebar-container .form .hs-form-field textarea {
  border-radius: 5px;
  border: 1px solid var(--color-gray-border);
  min-height: 60px;
  width: 100%;
  padding-inline: 10px;
  padding-block: 20px;
  font-family: var(--font-sans);
}
main .sidebar-container .form div.gfield textarea,
main .sidebar-container .form .hs-form-field textarea {
  min-height: 10lh;
}
main .sidebar-container .form div.gfield .ginput_container,
main .sidebar-container .form .hs-form-field .ginput_container {
  margin-top: -15px;
}
main .sidebar-container .form div.gfield .hs-error-msgs,
main .sidebar-container .form .hs-form-field .hs-error-msgs {
  display: none !important;
}
main .sidebar-container .form div.gfield:has(.hs-error-msgs) input,
main .sidebar-container .form .hs-form-field:has(.hs-error-msgs) input {
  border: 1px solid var(--color-red);
}
main .sidebar-container .form div.gfield:has(.hs-error-msgs) label,
main .sidebar-container .form .hs-form-field:has(.hs-error-msgs) label {
  color: var(--color-red);
}
main .sidebar-container .form fieldset.gfield label {
  font-size: 1.125rem;
  line-height: 1.5625rem;
}
main .sidebar-container .form .hs_error_rollup {
  color: var(--color-red);
}
main .sidebar-container .form .hs_error_rollup ul,
main .sidebar-container .form .hs_error_rollup li {
  list-style: none;
  padding: 0;
  margin: 0;
}
main .sidebar-container .form button {
  appearance: none;
  background-color: transparent;
  color: var(--color-red);
  font-weight: var(--font-weight-700);
  text-transform: uppercase;
  font-size: 1.25rem;
  line-height: 2.0625rem;
  border: 1px solid var(--color-red);
  outline: 0;
  padding: 15px 40px;
  font-family: var(--font-sans);
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: color 0.25s ease-in-out, border-color 0.25s ease-in-out;
}
main .sidebar-container .form button:before {
  height: 100%;
  width: 100%;
  top: 0;
  right: 100%;
  background-color: var(--color-yellow);
  content: "";
  position: absolute;
  transition: right 0.25s ease-in-out;
}
main .sidebar-container .form button span {
  position: relative;
  z-index: 2;
}
main .sidebar-container .form button:hover {
  color: var(--color-brown-light);
  border-color: var(--color-yellow);
}
main .sidebar-container .form button:hover:before {
  right: 0;
}
main .sidebar-container .form .actions {
  margin-block: 10px;
  position: relative;
  justify-self: start;
  border: 1px solid var(--color-red);
  transition: border-color 0.25s ease-in-out;
  overflow: hidden;
}
main .sidebar-container .form .actions:before {
  background-color: var(--color-yellow);
  height: 100%;
  width: 100%;
  top: 0;
  left: -100%;
  z-index: 1;
  content: "";
  position: absolute;
  transition: left 0.25s ease-in-out;
}
main .sidebar-container .form .actions input[type=submit] {
  appearance: none;
  background-color: transparent;
  border: 0 none;
  padding: 16px 36px;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.25rem;
  color: var(--color-red);
  text-transform: uppercase;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  z-index: 2;
  transition: color 0.25s ease-in-out;
}
main .sidebar-container .form .actions:hover {
  border-color: var(--color-yellow);
}
main .sidebar-container .form .actions:hover:before {
  left: 0;
}
main .sidebar-container .form .actions:hover input[type=submit] {
  color: var(--color-brown);
}
main .bottom-container {
  grid-area: 3/span 8;
}
main .bottom-container .map iframe {
  aspect-ratio: var(--aspect-square);
  object-fit: cover;
  display: block;
  margin: 0;
}
@media (min-width: 1024px) {
  main .bottom-container .map iframe {
    aspect-ratio: var(--aspect-map);
  }
}
main .breadcrumbs {
  padding: 0 0 30px;
}
main .bio-listing .listing .grid-container {
  display: block;
}
main .bio-listing .listing .grid-container .listing {
  grid-area: unset;
}
main .bio-listing .listing .grid.span-two {
  grid-auto-flow: row;
  gap: 23px;
}
@media (min-width: 767px) {
  main .bio-listing .listing .grid.span-two {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1024px) {
  main .bio-listing .listing .grid.span-two {
    grid-template-columns: repeat(5, 1fr);
  }
}
main .bio-listing .listing .grid.span-two .item {
  grid-area: auto/span 2;
}
main .bio-listing .listing .grid.span-two .photo {
  border-radius: 100%;
  text-align: center;
}

@media (min-width: 1024px) {
  footer.top {
    margin-top: -50px;
  }
}