@charset "UTF-8";

.main {
	overflow-y: hidden;
}

#primary {
	overflow-y: hidden;
}

/* =========================
   Texas mini-map overlay
   ========================= */

.tx-map-overlay{
  position: absolute;
  z-index: 3;                 /* above the photo */
  padding: 0px;               /* little frame */
}

.tx-map--top-left{    top: 1px;  left: 1px; }
.tx-map--bottom-left{ bottom: 1px; left: 1px; }  /* was right: fix to left */

.tx-map-overlay .tx-pin-map{
  width: clamp(60px, 8vw, 100px);
  aspect-ratio: 1 / 1;
  position: relative;
}

.tx-pin-map .tx-texas{
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.tx-pin{
  position: absolute;
  transform: translate(-50%, -50%);
  color: #c51b31;
  font-size: clamp(10px, .8vw, 12px);
  text-shadow: 0 1px 2px rgba(0,0,0,.35);
}



/* =========================
   Lightbox stage + icon thumbs
   ========================= */
/* ============= LIGHTBOX: classic overlay ============= */

/* Hide when [hidden] is present */
.sp-lightbox[hidden]{
  display: none !important;
}
/* Lightbox stacking + safe areas */
.sp-lightbox{
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: rgba(0,0,0,.92);
  display: grid;
  grid-template-rows: 1fr auto;
}

.sp-lightbox__stage{
  position: relative;
  z-index: 1;                 /* under controls & thumbs */
  padding: 48px 64px 112px;   /* breathing room around the big media */
}

.sp-lightbox__stage img,
.sp-lightbox__stage iframe{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border: 0;
}

/* Controls sit above the stage */
.sp-lightbox__close,
.sp-lightbox__prev,
.sp-lightbox__next{
  position: absolute;
  z-index: 2;                 /* <-- make sure they’re on top */
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: #fff;
  background: rgba(0,0,0,.15);
  cursor: pointer;
}

.sp-lightbox__close{ top: 62px; right: 22px; }
.sp-lightbox__prev{  left: 12px; top: 50%; transform: translateY(-50%); }
.sp-lightbox__next{  right: 12px; top: 50%; transform: translateY(-50%); }

/* Thumbnail rail: ensure horizontal scroll + drag works */
.sp-lightbox__thumbs{
  grid-row: 2;
  z-index: 3;                           /* above stage */
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 10px 14px;
  overflow-x: auto;                      /* <-- scrollable */
  overflow-y: hidden;
  touch-action: pan-x;                   /* trackpad/touch scroll */
  -webkit-overflow-scrolling: touch;
  background: linear-gradient(to top, rgba(0,0,0,.75), rgba(0,0,0,.35), rgba(0,0,0,0));
  scrollbar-width: none;
}
.sp-lightbox__thumbs::-webkit-scrollbar{ display: none; }

.sp-thumb{
  flex: 0 0 auto;
  width: 96px;
  height: 64px;
  border: 2px solid transparent;
  background: transparent;
  padding: 0;
  cursor: pointer;
}
.sp-thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sp-thumb--active{ border-color: #856d47; }
.sp-thumb:is(:hover,:focus){ border-color: rgba(255,255,255,.6); }

/* ===== Standalone modals for video / map / tour ===== */
.sp-modal[hidden]{ display: none !important; }

.sp-modal{
  position: fixed;
  inset: 0;
  z-index: 10010;
  background: rgba(0,0,0,.92);
  display: grid;
  place-items: center;
}

.sp-modal__stage{
  position: relative;
  width: min(92vw, 1200px);
  aspect-ratio: 16 / 9;
  background: #000;
}

.sp-modal__stage iframe{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.sp-modal__close{
  position: absolute;
  top: 12px;
  right: 12px;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: #fff;
  background: rgba(0,0,0,.45);
  border: 1px solid rgba(255,255,255,.65);
  cursor: pointer;
}

.sp-lightbox__thumbs{
  z-index: 3;
  pointer-events: auto;
}
.sp-lightbox__stage{
  z-index: 1;
}
.sp-thumb{
  cursor: pointer;
}

.sp-modal__notice{
  margin: 0 0 10px;
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 13px;
  line-height: 1.35;
  opacity: .9;
	color: #fff;
	text-align: center;
}

/* Stack disclaimer + iframe vertically (no overlap) */
#spVideoModal .sp-modal__stage{
  display: flex;
  flex-direction: column;
}

/* keep the disclaimer above and visible */
#spVideoModal .sp-modal__notice{
  flex: 0 0 auto;
  position: relative;
  z-index: 2;
}

/* iframe sits below (or above if you reorder markup) */
#spVideoModal iframe{
  flex: 1 1 auto;
  position: relative;
  z-index: 1;
  width: 100%;
  min-height: 55vh; /* adjust if you want */
}


/* CSS masks for icon thumbs */
.mq-ic-video { mask: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M3 5h14a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2zm7 3v8l7-4-7-4z"/></svg>') no-repeat center; }
.mq-ic-map  { mask: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z"/></svg>') no-repeat center; }
.mq-ic-vr   { mask: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 2l8 4v12l-8 4-8-4V6l8-4zm-6 5.2v9.6l6 3V10.2l-6-3zm14 9.6V7.2l-6 3v9.6l6-3z"/></svg>') no-repeat center; }




/* Popup Button - Bottom Left */
.popup {
    position: fixed;
    bottom: 20px; /* Position the button 20px from the bottom */
    left: 20px; /* Position the button 20px from the left */
    z-index: 9999; /* Ensure the button is above other content */
    background-color: #3b372f;
    color: rgba(255, 255, 255, 1);
    padding: 10px 20px;
    border-radius: 25px;
    cursor: pointer;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background-color 0.3s;
}

.popup:hover {
    background-color: rgba(50, 50, 50, 1);
}

/* Popup Content */
.connect-popuptext {
    display: none; /* Initially hide the popup */
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #3b372f;
    width: 70%;
    max-width: 600px;
    max-height: 80%; /* Limit the maximum height of the popup */
    height: auto;
    padding: 40px;
    color: black;
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.7);
    z-index: 1000;
    overflow-y: auto; /* Enable scrolling if content exceeds height */
}

.connect-popuptext.show {
    display: block; /* Show the popup when the 'show' class is added */
}

/* Close Button Inside Popup */
.connect-popuptext .close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: #ff0000;
    color: #fff;
    padding: 10px 10px;
    font-size: 10px;
    border-radius: 5px;
    cursor: pointer;
}

.connect-popuptext .close-btn:hover {
    background-color: #cc0000;
}


.property-contact-form {
	background-color: #3b372f;
	padding: 20px;
}

.property-contact-form h4 {
	color: white;
	margin-bottom: 10px;
}

/* Target this specific form (ID 10) */
#gform_wrapper_10 {
  color: #fff; /* base text color for non-input stuff */
}

/* Labels, legends, descriptions */
#gform_wrapper_10 .gfield_label,
#gform_wrapper_10 legend,
#gform_wrapper_10 .gfield_description,
#gform_wrapper_10 .gform-field-label {
  color: #fff !important;
}

/* Checkbox + radio labels */
#gform_wrapper_10 .gfield_checkbox label,
#gform_wrapper_10 .gfield_radio label {
  color: #fff;
}

/* Consent text */
#gform_wrapper_10 .gfield_consent_label {
  color: #fff;
}

/* Inputs: keep placeholder the default (browser decides) */
#gform_wrapper_10 input[type="text"],
#gform_wrapper_10 input[type="email"],
#gform_wrapper_10 input[type="tel"],
#gform_wrapper_10 input[type="url"],
#gform_wrapper_10 input[type="number"],
#gform_wrapper_10 input[type="password"],
#gform_wrapper_10 textarea {
  color: #111; /* text user types stays dark/legible */
}


/* Consent text */
#gform_wrapper_10 .gfield_consent_label {
  color: #fff;
}


#gform_submit_button_10 {
  background-color: #856d47;   /* ranch brown */
  color: #fff;
  border: none;
  border-radius: 999px;        /* pill shape */
  padding: 12px 28px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background .2s ease, transform .15s ease;
}

#gform_submit_button_10:hover {
  background-color: #6a5436;   /* darker on hover */
  transform: translateY(-2px); /* subtle lift */
}

#gform_submit_button_10:active {
  transform: translateY(0);    /* reset on click */
}



