/*
 Theme Name:   SFWD Press Child
 Description:  Child Theme for SFWD Press
 Author:       Santa Fe Web Design
 Author URI:   https://santafewebdesign.com
 Template:     sfwdpress
 Text Domain: sfwd
*/

/* Icons by Font Awesome (https://fontawesome.com) */

@font-face {
  font-family: "freight-big-pro";
  src: url("https://use.typekit.net/af/c3d08f/000000000000000077359fa3/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3")
      format("woff2"),
    url("https://use.typekit.net/af/c3d08f/000000000000000077359fa3/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3")
      format("woff"),
    url("https://use.typekit.net/af/c3d08f/000000000000000077359fa3/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n3&v=3")
      format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 300;
  font-stretch: normal;
}

@font-face {
  font-family: "gill-sans-nova";
  src: url("https://use.typekit.net/af/3447ab/00000000000000007735bb95/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3")
      format("woff2"),
    url("https://use.typekit.net/af/3447ab/00000000000000007735bb95/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3")
      format("woff"),
    url("https://use.typekit.net/af/3447ab/00000000000000007735bb95/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3")
      format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
}

:root {
  --font-sans-serif: "gill-sans-nova", sans-serif;
  --font-serif: "freight-big-pro", sans-serif;

  --body-bg: #fff;
  --logo-width: 275px;

  --max-content-width: 1440px;

  --page-title-margin-bottom: 16px;

  --content-bg: #fff;
  --content-text-color: #000;
  --content-link-color: #00244d;
  --content-link-hover-color: #7c0404;

  --header-height: 141px;

  --header-bg-color: #00244d;
  --header-text-color: #fff;
  --header-column-gap: 16px;
  --header-merged-bg: linear-gradient(rgba(43, 35, 34, 0.75), rgba(43, 35, 34, 0.5), rgba(43, 35, 34, 0.15), rgba(43, 35, 34, 0));
  --header-padding-top: 0;
  --header-padding-bottom: 0;
  --header-margin-bottom: 24px;
  --header-border-bottom: 0;

  /* mobile/tablet header when scrolled */
  --scrolled-header-bg: rgba(0, 0, 0, 0.75);

  --topbar-bg-color: #000;
  --topbar-dropdown-bg-color: #000;
  --topbar-text-color: #fff;
  --topbar-text-color-hover: #9eb4b6;
  --topbar-icon-color: #fff;
  --topbar-icon-color-hover: #9eb4b6;

  --hamburger-icon-width: 24px;
  --hamburger-icon-height: 36px;

  --menu-text-color: #fff;
  --menu-text-color-hover: #106f82;
  --menu-current-item-color: #be6205;

  --menu-item-gap: 20px;
  --menu-font-size: 16px;
  --menu-font-weight: normal;
  --menu-letter-spacing: 0.1rem;

  --dropdown-bg: rgba(0, 36, 77, 0.9);
  --dropdown-text-color: #f2f5f5;
  --dropdown-text-color-hover: #9eb4b6;
  --dropdown-padding: 8px;

  --popup-menu-text-color: #fff;
  --popup-menu-text-color-hover: #9eb4b6;
  --popup-menu-width: 450px;
  --popup-menu-bg: rgba(0, 36, 77, 0.9);
  --popup-menu-font-size: 16px;
  --popup-menu-item-gap: 24px;
  --popup-menu-letter-spacing: 0.1rem;

  --popup-menu-text-transform: uppercase;

  --popup-submenu-text-color: #fff;
  --popup-submenu-text-color-hover: #9eb4b6;
  --popup-submenu-text-transform: uppercase;
  --popup-submenu-item-gap: 20px;
  --popup-submenu-left-right-padding: 16px;
  --popup-submenu-font-size: 16px;

  --footer-bg: #00244d;
  --footer-text-color: #fff;
  --footer-link-color: #fff;
  --footer-link-hover-color: #9eb4b6;
  --footer-padding: 0 16px;

  --back-to-top-bg: rgba(0, 0, 0, 0.6);
  --back-to-top-color: #fff;

  --breadcrumb-link-color: #00244d;
  --breadcrumb-link-hover-color: #9eb4b6;

  --full-width-block-bg: #f3f3f3;

  --gallery-gap: 30px;
  --heading-margin-bottom: 8px;

  --image-overlay-bg: rgba(0, 0, 0, 0.5);

  --input-border: 1px solid #555;
  --input-border-radius: 0;
  --input-color: #271501;
  --input-padding: 8px 12px;
  --input-bg: #fff;

  --selected-item-bg: #106f82;
  --selected-item-color: #fff;

  --invalid-color: red;
  --invalid-bg-color: #fff;
  --invalid-border: 1px solid red;

  --success-color: #fff;
  --success-bg-color: #000;

  --submit-text-color: #fff;
  --submit-bg-color: #7c0404;
  --submit-padding: 10px 12px;
  --submit-width: 100%;

  --submit-hover-text-color: #fff;
  --submit-hover-bg-color: #00244d;

  --h1-size: 1.8rem;
  --h2-size: 1.75rem;
  --h3-size: 1.5rem;
  --h4-size: 1.25rem;
  --h5-size: 1.13rem;
  --h6-size: 1rem;

  --expandable-top-bottom-padding: 24px;
  --expandable-side-padding: 32px;
  --expandable-bottom-margin: 32px;
  --expandable-bg: #f3f3f370;
  --expandable-header-color: #106f82;

  --neighborhoods-header-color: #00244d;

  --search-h4-color: #106f82;

  --ssr-listing-hover-bg: #f3f3f3;

  --login-popup-member-nav-bg: #f3f3f3;
  --login-popup-member-nav-color: #000;
  --login-popup-member-nav-color-hover: blue;

  --search-near-me-position-icon: rgba(224, 113, 23, 0.7);

  --svg-color: #d8d8d9;
  --svg-hover-color: #106f82;
}

.merge-header main {
  padding-top: 37px;
}

main .wp-block-sfwd-svg-icon:hover svg {
  fill: var(--svg-hover-color);
}

main .wp-block-sfwd-svg-icon a {
  color: var(--svg-color);
  display: block;
  font-size: 20px;
}

main .wp-block-sfwd-svg-icon:hover a {
  color: var(--svg-hover-color);
}

/* hamburger icon offset */

.merge-header header.site-header-wrapper {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 20%, transparent);
}

.site-header .wp-block-navigation__responsive-container-open svg {
  top: 1px;
}

.site-header.site-header > .wp-block-columns {
  margin-block-start: 24px;
}

.site-header .has-small-font-size {
  font-size: 12px !important;
}

.site-header .header-top-bar {
  background: var(--topbar-bg-color);
  padding: 8px var(--wp--style--root--padding-right) 8px var(--wp--style--root--padding-left);
  color: var(--topbar-text-color);
  top: 4px;
}

.site-header .header-top-bar .wp-block-sfwd-svg-icon {
  cursor: pointer;
  margin-bottom: 0 !important;
}

.site-header .header-top-bar .wp-block-sfwd-svg-icon svg {
  fill: var(--topbar-icon-color);
}

.site-header .header-top-bar .wp-block-sfwd-svg-icon:hover svg {
  fill: var(--topbar-icon-color-hover);
  color: var(--topbar-text-color-hover);
}

.site-header .header-top-bar .wp-block-sfwd-svg-icon a {
  color: var(--topbar-text-color);
}

.site-header .header-top-bar .wp-block-sfwd-svg-icon:hover a {
  color: var(--topbar-text-color-hover);
}

.site-header .header-top-bar .wp-block-column .wp-block-group {
  gap: 24px;
}

.site-header .header-top-bar .quicksearch-column .wp-block-sfwd-svg-icon {
  width: 100px;
  padding-top: 2px;
}

.site-header .header-top-bar #nav-account {
  text-transform: uppercase;
}

.site-header .wp-block-sfwd-svg-icon {
  gap: 8px;
  font-size: 12px;
  color: var(--topbar-text-color);
}

.site-header .wp-block-sfwd-svg-icon:hover {
  color: var(--topbar-text-color-hover);
}

.site-header .accounts #member-nav {
  position: absolute;
  background: var(--topbar-dropdown-bg-color);
  z-index: 5;
  top: 33px;
  padding: 1px 16px;
  margin-left: -5px;
  width: 115px;
}

.site-header .accounts #member-nav a {
  display: block;
  margin: 12px 0;
  text-transform: uppercase;
  color: var(--topbar-text-color);
}

.site-header .accounts #member-nav a:hover {
  color: var(--topbar-text-color-hover);
}

footer {
  text-wrap: balance;
  color: var(--footer-text-color);
}

.home footer {
  margin-top: 0;
}

footer .wp-block-columns {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

footer a {
  text-wrap: balance;
  color: var(--footer-link-color);
  letter-spacing: 2px;
}

footer a:hover {
  color: var(--footer-link-hover-color);
}

footer .agent-img img {
  display: block;
  width: 100%;
}

footer .wp-block-column:has(.agent-img) {
  flex-basis: 50% !important;
}

footer .wp-block-sfwd-svg-icon {
  gap: 30px;
  font-size: 1.175rem;
}

footer .michael .wp-block-sfwd-svg-icon {
  justify-content: flex-end;
}

footer .wp-block-sfwd-svg-icon .icon svg {
  height: 30px !important;
}

footer .wp-block-sfwd-svg-icon:hover a {
  color: var(--footer-link-hover-color);
}

footer .wp-block-sfwd-svg-icon:hover .icon svg {
  fill: var(--footer-link-hover-color);
}

footer .wp-block-button {
  width: 150px !important;
}

footer .logged-in-content {
  display: none;
}

body.logged-in footer .signup {
  display: none;
}

body.logged-in footer .logged-in-content {
  display: block;
  margin-top: 8px;
}

body.page-template-page-property-search #btop {
  right: auto;
  left: 1rem;
}

/* index page customizations */

.sfwdpress-listing-slideshow {
  margin-top: 0;
}

.slideshow-container {
  position: relative;
  width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  overflow: hidden;
  height: 800px;
  background: #000;
}

.slideshow-container .slide {
  display: none;
  z-index: 1;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.slideshow-container .slide.placeholder {
  opacity: 0;
  animation: sfwdPressSlideFadeIn var(--transition-duration) ease-in-out forwards;
}

.slideshow-container .slide.first-slide {
  display: block;
  z-index: 5;
}

.slideshow-container .slide.active {
  display: block;
  z-index: 5;
}

.slideshow-container .slide.do-fade-animations {
  opacity: 0;
  animation: sfwdPressSlideFadeIn var(--transition-duration) ease-in-out forwards,
    sfwdPressSlideFadeOut var(--transition-duration) ease-in-out forwards calc(var(--slide-duration) - 0.5s);
}

.slideshow-container .slide.fade-out {
  opacity: 1;
  animation: sfwdPressSlideFadeOut var(--transition-duration) ease-in-out forwards calc(var(--slide-duration) - 0.5s) !important;
}

.slideshow-container .slide .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 130%;
  height: 100%;
}

.slideshow-container .slide.active .image {
  transition: none;
  animation: sfwdPressSlideImageLeftToRight 20s ease-out forwards;
}

/* Only animate the image of the active slide */
.slideshow-container .slide:not(.active) .image {
  animation: none !important;
  left: 0;
}

.slideshow-container .slide.placeholder .image {
  left: -15%;
  animation: sfwdPressSlideZoom 20s ease-out forwards !important;
}

.slideshow-container .slide .image picture img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 70%;
  display: block;
}

.slideshow-container .slide .overlay-mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

  background: radial-gradient(circle at center, transparent 20%, rgba(0, 0, 0, 0.1) 60%, rgba(0, 0, 0, 0.3) 100%);

  z-index: 2;
  pointer-events: none;
}

.slideshow-container .slide .text-overlay {
  position: absolute;
  bottom: 80px;
  left: 0px;
  width: 100vw;
  max-width: 100vw;
  color: white;
  display: grid;
  gap: 8px;
  z-index: 3;
  padding: 0 var(--wp--style--root--padding-right) 0 var(--wp--style--root--padding-left);
}

.slideshow-container .slide .text-overlay .inner {
  width: 100%;
  max-width: var(--max-content-width);
  margin: 0 auto;
}

.slideshow-container .slide .text-overlay h2 {
  font-size: 28px;
  margin: 0;
  text-transform: uppercase;
}

.slideshow-container .slide .text-overlay p {
  font-size: 22px;
  margin: 0;
  text-transform: lowercase;
}

.slideshow-container .slide .text-overlay p span {
  color: #ccc;
  padding: 0 4px;
}

.slideshow-container .slide .text-overlay h2,
.slideshow-container .slide .text-overlay p {
  opacity: 0;
  text-shadow: 0 0px 2px rgba(0, 0, 0, 0.5), 0 1px 15px rgba(0, 0, 0, 0.9);
}

.slideshow-container .slide.first-slide .text-overlay h2,
.slideshow-container .slide.first-slide .text-overlay p {
  opacity: 1;
}

.slideshow-container .slide.active .text-overlay h2 {
  animation: sfwdPressTextTransitionIn var(--text-transition-duration) cubic-bezier(0.4, 0, 0.2, 1) forwards calc(var(--text-animation-delay) + 1s),
    sfwdPressTextTransitionOut var(--text-transition-duration) ease-in-out forwards calc(var(--slide-duration) - 1s);
}

.slideshow-container .slide.active .text-overlay p:nth-of-type(1) {
  animation: sfwdPressTextTransitionIn var(--text-transition-duration) cubic-bezier(0.4, 0, 0.2, 1) forwards
      calc(var(--text-animation-delay) + var(--text-transition-duration) + 0.5s),
    sfwdPressTextTransitionOut var(--text-transition-duration) ease-in-out forwards calc(var(--slide-duration) - 1.5s);
}

.slideshow-container .slide.active .text-overlay p:nth-of-type(2) {
  animation: sfwdPressTextTransitionIn var(--text-transition-duration) cubic-bezier(0.4, 0, 0.2, 1) forwards
      calc(var(--text-animation-delay) + var(--text-transition-duration) + 1s),
    sfwdPressTextTransitionOut var(--text-transition-duration) ease-in-out forwards calc(var(--slide-duration) - 2s);
}

.slideshow-container .slide.active .text-overlay p:nth-of-type(3) {
  animation: sfwdPressTextTransitionIn var(--text-transition-duration) cubic-bezier(0.4, 0, 0.2, 1) forwards
      calc(var(--text-animation-delay) + var(--text-transition-duration) + 1.5s),
    sfwdPressTextTransitionOut var(--text-transition-duration) ease-in-out forwards calc(var(--slide-duration) - 2.5s);
}

.slideshow-container .slide .text-overlay p a {
  color: #fff;
  text-transform: uppercase;
}

@keyframes sfwdPressSlideFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes sfwdPressSlideFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes sfwdPressSlideZoom {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.15);
  }
}
@keyframes sfwdPressSlideImageLeftToRight {
  from {
    left: 0;
  }
  to {
    left: -30%;
  }
}

@keyframes sfwdPressTextTransitionIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes sfwdPressTextTransitionOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.home .about-us .agents {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

/* end of index page css */

body.page h3 {
  color: var(--neighborhoods-header-color);
  letter-spacing: 1px;
}

.page-hero-cover {
  position: relative;
  z-index: 5; /* make sure this block is above the rest of entry-content */
}

.page-hero-cover h1 {
  font-size: 2rem !important;
  margin: 0;
  line-height: 1.4 !important;
  color: #fff;
}

.page-hero-cover h1:last-child {
  font-weight: 300 !important;
}

.page-hero-cover .wp-block-sfwd-select-page-nav {
  margin-bottom: 1px;
}

.las-campanas .page-hero-cover .wp-block-sfwd-select-page-nav {
  max-width: 300px;
  margin-left: auto;
}

/* neighborhoods index */

.single-neighborhoods h3 {
  margin: 0 0 16px 0;
  color: var(--neighborhoods-header-color);
  text-wrap: balance;
}

.santa-fe-neighborhoods .get-to-know {
  font-size: 28px;
  font-weight: 400;
  margin: 24px 0 32px 0;
  letter-spacing: 2px;
}

.santa-fe-neighborhoods .get-to-know strong {
  font-weight: inherit;
  border-bottom: 2px solid #aaa;
  padding-bottom: 5px;
}

.neighborhoods-index {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 32px;
}

.neighborhoods-index img {
  transition: transform linear 0.25s;
}

.neighborhoods-index .wp-block-cover {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1;
  min-height: auto;
  display: flex;
  align-items: flex-end;
  padding: 32px;
}

.neighborhoods-index .wp-block-cover a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.neighborhoods-index .wp-block-cover:hover img {
  transform: scale(1.15);
}

.neighborhoods-index .wp-block-cover__background {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 1) 100%) !important;
}

.neighborhoods-index .wp-block-cover h1 {
  font-size: 2rem !important;
  font-family: var(--secondary-font), serif;
  letter-spacing: 1px;
  color: #fff !important;
  font-weight: 300;
  text-transform: capitalize;
  margin: 0;
}

.neighborhoods-index h2 {
  font-size: 2.5rem !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #fff !important;
  font-weight: 300;
  margin: 0;
}

.neighborhood-top-gallery {
  text-transform: uppercase;
  font-weight: 500;
  text-indent: -4px;
}

.single-neighborhoods .wp-block-wprl-readmore-block {
  margin: 40px 0 48px 0;
}

.yoast-breadcrumbs {
  text-transform: capitalize;
  margin-bottom: 24px;
  margin-top: 8px;
}

.yoast-breadcrumbs + h2 {
  color: var(--neighborhoods-header-color);
}

.yoast-breadcrumbs > span {
  display: flex;
  column-gap: 8px;
  flex-wrap: wrap;
}

.yoast-breadcrumbs a {
  color: var(--breadcrumb-link-color);
}

.yoast-breadcrumbs a:hover {
  color: var(--breadcrumb-link-hover-color);
}

/* about agent */

.about-agent {
  display: grid !important;
  grid-template-columns: 1fr minmax(auto, 300px);
}

.about-agent .wp-block-sfwd-svg-icon {
  --svg-color: #cb1111;
  --svg-hover-color: #00244d;
}

/* quicksearch */

.quicksearch .wpcf7-form {
  margin-top: 24px;
  width: 500px;
  max-width: 75vw;
}

.sfwdpress-popup {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 90000;

  background: rgba(0, 0, 0, 0.7);

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  overflow: hidden;

  padding: 60px 0;
  width: 100%;
  height: 100%;
  margin-top: 0;

  display: none;
}

.sfwdpress-popup.show {
  display: grid;
}

#login-popup.show {
  display: flex;
  flex-direction: column;
}

.sfwdpress-popup .prev-button,
.sfwdpress-popup .next-button {
  order: 1;
  border: 0;
  background: transparent;
  color: #fff;
  fill: #fff;
  cursor: pointer;
}

.sfwdpress-popup .prev-button svg,
.sfwdpress-popup .next-button svg {
  height: 35px !important;
}

.sfwdpress-popup .next-button {
  order: 3;
  transform: scaleX(-1);
}

.sfwdpress-popup .inner {
  order: 2;
  position: relative;
  overflow-y: auto;
  max-height: calc(100vh - 100px);
  background: #fff;
  padding: 32px;
}

.sfwdpress-popup.video-popup .inner {
  position: relative;
  padding: 0;
  overflow-y: unset;
  width: 90vw;
  background: #000;
  aspect-ratio: calc(16 / 9);
}

.sfwdpress-popup.video-popup .inner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;

  background: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 512 512"%3E%3Cpath d="M256 52a12 12 0 1 1 0 24 12 12 0 1 1 0-24zM204 64a52 52 0 1 0 104 0A52 52 0 1 0 204 64zm20 384a32 32 0 1 0 64 0 32 32 0 1 0 -64 0zM480 256a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM64 220a36 36 0 1 0 0 72 36 36 0 1 0 0-72zm339.1-88.5a16 16 0 1 1 -22.6-22.6 16 16 0 1 1 22.6 22.6zm28.3-50.9a56 56 0 1 0 -79.2 79.2 56 56 0 1 0 79.2-79.2zM97.6 369.1a32 32 0 1 0 45.3 45.3A32 32 0 1 0 97.6 369.1zm316.8 45.3a32 32 0 1 0 -45.3-45.3 32 32 0 1 0 45.3 45.3zM125.9 125.9a8 8 0 1 1 -11.3-11.3 8 8 0 1 1 11.3 11.3zm28.3-39.6A48 48 0 1 0 86.3 154.2a48 48 0 1 0 67.9-67.9z"/%3E%3C/svg%3E')
    center center no-repeat;
  background-size: 35px;

  animation: rotate-bg 1.5s linear infinite;
}

.video-popup {
  grid-template-columns: 1fr 1fr 1fr;
}

@keyframes rotate-bg {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.sfwdpress-popup.video-popup iframe {
  position: relative;

  display: block;

  width: 100%;
  height: 100%;

  border: 0 !important;

  aspect-ratio: calc(16 / 9);

  background: #000;
}

.sfwdpress-popup .inner h2 {
  margin: 0 0 16px 0;
  text-transform: uppercase;
  color: var(--popup-title-color);
}

.sfwdpress-popup .inner .popup-nav {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  gap: 16px;
}

.sfwdpress-popup .inner .popup-nav button#popup-close {
  background: transparent;
  border: 0;
  cursor: pointer;

  color: var(--popup-close-icon-color);
  fill: var(--popup-close-icon-color);

  padding: 0;
  position: relative;
}

.sfwdpress-popup .inner .popup-nav button:hover {
  color: var(--gallery-nav-hover-color);
  fill: var(--gallery-nav-hover-color);
}

.sfwdpress-popup .inner .popup-nav button svg {
  display: block;
  height: 25px;
}

.sfwdpress-popup .inner .popup-nav .close svg {
  height: 25px !important;
}

.video-popup .video-popup-nav {
  position: absolute;
  top: -40px;
  right: -5px;

  z-index: 55555555;
}

.video-popup .video-popup-nav button {
  background: transparent;
  border: 0;
  fill: #fff;
  color: #fff;
  font-size: 1.25rem;
  cursor: pointer;
}

main .wp-block-post-title {
  font-weight: 400;
  color: #1d3067;
}

.wp-block-button.login-signup a {
  border: 0;
  border-radius: 0;
  background: var(--submit-bg-color);
  color: var(--submit-text-color);
  text-transform: uppercase;
  cursor: pointer;
}

.wp-block-button.login-signup a:hover {
  background: var(--submit-hover-bg-color);
  color: var(--submit-hover-text-color);
}

body.logged-in .wp-block-button.login-signup {
  display: none;
}

body.logged-in .wp-block-buttons:has(div.login-signup) {
  display: none;
}

#login-popup .inner {
  max-width: 450px;
}

#login-popup form {
  width: 500px;
  max-width: 100%;
}

#login-popup form .feedback {
  margin-bottom: 16px;
}

#login-popup form .form-submit {
  margin-bottom: 16px;
}

#login-popup .success div {
  background: var(--login-popup-member-nav-bg);
  padding: 16px;
}

#login-popup .success div a {
  display: block;
  color: var(--login-popup-member-nav-color);
}

#login-popup .success div a:hover {
  color: var(--login-popup-member-nav-color-hover);
}

#login-popup .form-switch {
  cursor: pointer;
  border: 0;
  background: transparent;
  color: var(--submit-bg-color);
  font-weight: bold;
  text-transform: uppercase;
}

#login-popup .form-switch:hover {
  text-decoration: underline;
}

#login-popup .goal-message {
  position: relative;
  max-width: 450px;
}

#login-popup .goal-message p {
  padding: 16px 32px;
  text-transform: uppercase;
  color: rgb(29 129 213);
  color: #fff;
  text-wrap: balance;
  text-align: center;
  font-size: 18px;
  margin-top: 0;
  margin-bottom: 16px;
  letter-spacing: 0.1rem;
}

#login-popup .forgot-password button {
  font-style: italic;
  text-transform: lowercase;
  padding: 0;
}

.las-campanas .page-hero-cover .wp-block-sfwd-select-page-nav {
  max-width: 300px;
  margin-left: auto;
}

/* market report charts */
.chart-c {
  max-width: 100%;
  overflow-x: auto;
}

body .is-layout-constrained .chart-c {
  margin-right: -16px !important;
}

.chart {
  margin: 0 0 64px 0;
  width: 100% !important;
  min-width: 700px;
  position: relative;
}

.chart-c h4 {
  margin: 0 0 16px 0;
}

.chart .legend table {
  width: auto !important;
}

.chart .legend td {
  border: 0;
}

.listings .listing.sotheby {
  background-image: url(/images/ssrbg-my.png?v=22);
  background-position: bottom 18px right 16px;
}

body.my-account .saved-search div[data-field-name="listingarea"] {
  font-weight: 300;
}

@media only screen and (min-width: 900px) AND (max-width: 1024px) {
  .listings .listing {
    background-position: bottom 22px right 8px;
    background-size: 50px;
  }

  .listings .listing.sotheby {
    background-size: 45px;
    background-position: bottom 18px right 8px;
  }
}

@media only screen and (min-width: 1800px) {
  .slideshow-container {
    height: 900px;
  }

  .slideshow-container .slide.placeholder .image picture img {
    object-position: center 60%;
  }
}

@media only screen and (min-width: 2400px) {
  .slideshow-container {
    height: 1000px;
  }

  .slideshow-container .slide.placeholder .image picture img {
    object-position: center 55%;
  }
}

/* kick mobile menus into gear */
@media only screen and (max-width: 1300px) {
  .site-header.logo-center .wp-block-column:nth-child(1) nav {
    display: none;
  }

  .site-header.logo-center .wp-block-column:nth-child(3) nav {
    display: none;
  }
}

/* special desktop breakpoint */

/* stuff for tablet and mobile  */
@media only screen and (max-width: 1024px) {
  .about .info {
    padding-top: 2px !important;
  }

  .about h2 {
    font-size: var(--h4-size);
  }
}

/* tablet portrait */
@media only screen and (max-width: 900px) {
  .slideshow-container {
    height: 650px;
  }

  .news-posts .post:last-child {
    display: none;
  }

  .wprl-listing-gallery .listings.num-cols-3 {
    grid-template-columns: repeat(2, minmax(200px, 1fr));
  }

  .wprl-listing-gallery .listings.num-cols-3 .listing:last-child {
    display: none;
  }

  .page-hero-cover
    .wp-block-cover__inner-container
    .wp-block-group
    > .wp-block-columns:has(> .wp-block-column:nth-child(2):last-child)
    > .wp-block-column:last-child {
    max-width: 300px;
  }

  .page-hero-cover .wp-block-columns > .wp-block-column:last-child .wp-block-columns {
    display: grid;
    gap: 16px;
  }

  .neighborhoods-index {
    grid-template-columns: 1fr 1fr;
  }

  .page-hero-cover .wp-block-cover__inner-container .wp-block-group > .wp-block-columns {
    flex-wrap: nowrap !important;
  }

  .contact-columns {
    display: grid !important;
    grid-template-columns: 1fr 2fr;
  }
}

/* stuff for mobile only */
@media only screen and (max-width: 767px) {
  :root {
    --header-height: 141px;
  }

  .slideshow-container {
    height: 350px;
  }

  .slideshow-container .slide .text-overlay {
    bottom: 20px;
  }

  .slideshow-container .slide .text-overlay h2 {
    font-size: 24px;
  }

  .slideshow-container .slide .text-overlay p {
    font-size: 16px;
  }

  /* hamburger icon offset */
  .site-header .wp-block-navigation__responsive-container-open svg {
    top: -3px;
  }

  .header-top-bar .txt {
    display: none;
  }

  body {
    --wp--preset--font-size--large: 1.1rem;
  }

  footer .wp-block-columns {
    display: grid;
    grid-template-columns: 1fr;
  }

  footer .wp-block-column:last-child {
    display: none;
  }

  .wprl-listing-gallery .listings.num-cols-2,
  .wprl-listing-gallery .listings.num-cols-3 {
    grid-template-columns: repeat(1, minmax(200px, 1fr));
  }

  .wprl-listing-gallery .listings.num-cols-3 .listing:not(:first-child) {
    display: none;
  }

  .company-logos img {
    object-fit: contain;
  }

  .page-hero-cover {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .page-hero-cover .wp-block-cover__inner-container .wp-block-group > .wp-block-columns {
    flex-wrap: wrap !important;
  }

  .neighborhoods-index .wp-block-cover {
    padding: 16px;
  }
  .neighborhoods-index .wp-block-cover h1 {
    font-size: 1.25rem !important;
    margin-bottom: 8px;
  }

  .neighborhoods-index h2 {
    font-size: 1.4rem !important;
  }

  .neighborhood-child-gallery {
    grid-template-columns: 1fr 1fr;
  }

  .home .about-us .agents {
    grid-template-columns: 1fr 1fr;
  }

  .home .about-us .agents .wp-block-column:nth-child(3) {
    grid-column: 1 / -1;
    justify-self: center;
    max-width: 50%;
  }

  .about-agent {
    grid-template-columns: 1fr;
  }

  #login-popup .inner {
    max-width: 95%;
  }

  .contact-columns {
    display: grid !important;
    grid-template-columns: 1fr;
  }
}
