@charset "UTF-8";
/* CSS Document */



/* keep header above everything */
.site-header { position: relative; z-index: 10; }

/* fixed backdrop */
.agent-hero__bg {
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: 500px;
  background-size: cover;
  background-position: center;
  filter: saturate(0);
  z-index: -1; /* behind header + content */
}

/* section wrapper */
.agent-hero { position: relative; }

/* spacer that reserves 400px for the fixed banner
   (so content doesn't cover the whole image) */
.agent-hero::before {
  content: "";
  display: block;
  height: 500px;           /* match .agent-hero__bg height */
}

.ag-pg-bg {
	background-color: white;
	overflow: hidden;
}
/* your content card on top of the banner */
.agent-hero__inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  padding: 24px 28px 28px;
  background: white; /* readable over image */
  position: relative;
  z-index: 1;

}

/* left column stays the same */
.agent-hero__left {
  display: grid;
  grid-template-columns: 400px 1fr;
  gap: 18px;
  align-items: center;
}


.agent-hero__avatar {
  width: 350px; height: 350px;
  border-radius: 50%;
  overflow: hidden;
  border: 6px solid #fff;
  box-shadow: 0 12px 30px rgba(0,0,0,.25);
  background: #eee;
}
.agent-hero__avatar img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}

.agent-hero__name {
 
  font-size: 2rem; 
	line-height: 1.2; font-weight: 700; color: #111;
}
.agent-hero__sub {
  color: #666; margin-bottom: 10px;
}
	
/* Tweak these to match your brand */
:root {
  --chip-bg: #f5f5f5;
  --chip-text: #111;
  --chip-border: #e7e7e7;
  --chip-bg-hover: #919191;   /* your dark/navy */
  --chip-text-hover: #fff;
}

.agent-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
  padding: 0;
  list-style: none;
}

.agent-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  padding: 0 10px;
  min-width: 38px;             /* keeps a “square-ish” feel */
  border-radius: 8px;
  background: var(--chip-bg);
  color: var(--chip-text);
  border: 1px solid var(--chip-border);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .3px;
  text-transform: uppercase;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  white-space: nowrap;
}

/* Hover/focus (works whether it's a <li> or <a>) */
.agent-badge:hover,
.agent-badge:focus {
  background: var(--chip-bg-hover);
  color: var(--chip-text-hover);
  border-color: var(--chip-bg-hover);
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0,0,0,.12);
}

/* Keyboard focus ring if badges are links */
.agent-badges a.agent-badge:focus-visible {
  outline: 2px solid var(--chip-bg-hover);
  outline-offset: 2px;
}

/* Compact option for tight spaces */
.agent-badges.is-compact .agent-badge {
  height: 26px;
  padding: 0 8px;
  border-radius: 6px;
  font-size: 11px;
}


/* Rating row */
.agent-hero__rating {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.agent-hero__rating .stars svg {
  color: #f5a623;
}

.agent-hero__rating .star--empty svg {
  fill: none;
}

.rating-empty {
  color: #666;
	font-size: 10px;
}

.leave-rev {
 display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  padding: 0 10px;
  min-width: 38px;             /* keeps a “square-ish” feel */
  border-radius: 8px;
  background: var(--chip-bg);
  color: var(--chip-text);
  border: 1px solid var(--chip-border);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .3px;
  text-transform: uppercase;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  white-space: nowrap;
}


/* Modal */
.review-modal[hidden] { display: none; }

.review-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
}

.review-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .45);
}

.review-modal__dialog {
  position: relative;
  z-index: 1;
  height: min(50%, 100%);
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, .25);
  padding: 20px 22px;
}

.review-modal__close {
  position: absolute;
  top: 10px;
  right: 12px;
  width: 36px;
  height: 36px;
  border: none;
  background: transparent;
  font-size: 24px;
  cursor: pointer;
}


/* Meta line (phone, specialty, etc.) */
.agent-hero__meta {
  display: flex; flex-wrap: wrap; gap: 16px;
  color: #222; font-size: 12px;
}
.agent-hero__meta .meta-item { display: inline-flex; align-items: center; gap: 8px; }
.agent-hero__meta i { color: #111; }

/* CTAs */
	
.agent-hero__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;  /* keeps buttons aligned to the right */
  gap: 12px;
}

.agent-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;  /* row buttons right-aligned */
	padding-top: 10px;
}

.agent-hero__cta2 {
	width: fit-content;   /* shrink to text */
}
	
	.agent-hero__cta2 btn{
  width: 100%;
}


/* Row of buttons */
.agent-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: flex-end;   /* not 'end' */
  margin-bottom: 10px;
}

/* Download sits on its own line under the row */
.agent-hero__cta2 {
  text-align: left;        /* or center, if you prefer */
}

/* Optional: center the download button neatly */
.agent-hero__cta2 a.btn {
  /* uncomment to center */
  /* display: block; width: fit-content; margin: 0 auto; */
}

	
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  height: 44px; padding: 0 18px;
  border-radius: 999px; border: 1px solid #e0e0e0;
  background: #fff; color: #111; font-weight: 600; text-decoration: none;
  box-shadow: 0 2px 6px rgba(0,0,0,.06);
	font-size: 11px;
}
.btn:hover { transform: translateY(-1px); box-shadow: 0 6px 14px rgba(0,0,0,.12); }
.btn--primary {
  background: #232323; color: #fff;
}
.btn--ghost {
  background: #fff; color: #111;
}


	
	.ag-row--two {
		display: flex;
		padding: 20px 50px;
		gap: 40px;
		justify-content: space-between;
		background-color: white;
		
	}
	
	.agent-bio-main {
		flex-basis: 100%;
		background-color: white;
		padding: 30px;
		border-radius: 18px;
box-shadow: 0 14px 22px -12px rgba(0,0,0,.28);
		
	}
	
	.ag-row--two h2 {
		font-size: 1.5rem !important;
		color: #856d47;
		margin-bottom: 20px;
		
	}
	
	.ag--col--rgt {
		background-color: #856d47;
		color: white;
		padding: 20px;
		text-decoration: none;
		border-radius: 18px;
		flex-basis: 30%;
		
	}
	
	.ag--col--rgt h2,
	.ag--col--rgt h3,
	.ag--col--rgt h4 {
		color: white;
		font-weight: 500;
	}
	
	.awards-rich  p {
		margin-left: 20px;
	}
	
	
	.awards-sec { margin-top: 10px; }
.awards-sec-head h2 { margin: 0 0 8px; }

.awards-rich ul,
.awards-rich ol { 
	margin: 10px 0 0 1.25rem; 
	padding: 0; }
.awards-rich li { 
	margin: 6px 0; }

.awards-rich a {
  color: inherit;
  text-decoration: none;
}

.awards-rich img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 2px 6px rgba(0,0,0,.06);
}

	
.memberships-sec { margin-top: 40px; }
.memberships-sec-head h3 { margin: 0 0 8px; }

.memberships-rich ul,
.memberships-rich ol {
  margin: 10px 0 0 1.25rem;
  padding: 0;
}

.memberships-rich li {
  margin: 6px 0;
}

.memberships-rich a {
  color: inherit;
  text-decoration: none;
}

.memberships-rich img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 2px 6px rgba(0,0,0,.06);
}

	.ag-row-revimgs {
		background-color: rgba(44,42,42,1.00);
		padding: 10px;
		margin-bottom: 20px;
	}
	
	.reviews-sec { margin: 24px 0; }
.reviews-head { margin: 0 0 10px; }
	
	

	.ag-reviews {
		text-decoration: none;
		border-radius: 18px;
		flex-basis: 30%;
	}

	.review-slide{
		 border-radius: 18px;
		background-color: #232323;
		padding: 30px;
		text-decoration: none;
		flex-basis: 30%;
	}



	
	.ag-reviews h3 {
		color: white;
		text-align: center;
	}

.review-slider {
  position: relative;
  width: 100%;
  margin: 0 auto;
  border-radius: 18px;
  background: #232323;
  overflow: hidden;
  transition: height .35s ease;   /* smooth resizing */

}




.review-rating { margin-bottom: 8px; }
.star { font-size: 18px; line-height: 1; color: #f5a623; }
.star--empty { color: #ddd; }
/* optional half-star style (simple): lighter color */
.star--half { color: #f5c96b; }

.review-text { margin: 15px 0 15px; color:white; }
.review-name { font-weight: 700; color: white; margin-bottom: 15px; }

	.agent-gallery {
		flex-basis: 70%;
		
	}
	
.assoc-slider {
  margin: 20px auto;
  position: relative;
  overflow: hidden;
}

.assoc-slider__track {
  display: flex;
  gap: 20px;                        /* space between slides */
  transition: transform .4s ease;
  will-change: transform;
  align-items: center;
}

.assoc-slide {
  flex: 0 0 30%;
  opacity: .5;
  transform: scale(.9);
  transition: transform .4s ease, opacity .4s ease, filter .4s ease;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 6px 16px rgba(0,0,0,.12);
  filter: grayscale(100%);   /* <-- makes them black & white */
}

.assoc-slide.is-active {
  flex: 0 0 40%;             /* active one a bit larger if you like */
  opacity: 1;
  transform: scale(1);
  z-index: 2;
  filter: none;              /* <-- restore full color */
}


.assoc-slide img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* arrows overlay */
.assoc-nav {
  position: absolute; top: 0; bottom: 0;
  width: 12%; min-width: 40px;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; user-select: none;
  background: transparent;
  z-index: 5;
}
.assoc-prev { left: 0; }
.assoc-next { right: 0; }
.assoc-arrow { font-size: 32px; color: #fff; text-shadow: 0 2px 6px rgba(0,0,0,.5); }
	
	

	
	/* === Team Member → Connected Listings (scoped) === */
/* Scope everything to single our-team pages and this block only */
.single-our-team .team-listings {
  background-color: #fff;
	margin-top: 100px;
}

/* Grid shell */
.single-our-team .team-listings .listing-container {
  margin-top: 0 auto;
  display: flex;
  flex-direction: column; /* container holds .listing-row */
}

/* Row of cards */
.single-our-team .team-listings .listing-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 30px;
}

/* When there's only one item, center it nicely */
.single-our-team .team-listings .listing-row.single-item {
  justify-content: center;
  align-items: stretch;
  width: 100%;
}

/* Individual card (desktop: 3-up) */
.single-our-team .team-listings .listing-card {
  width: calc(33.333% - 20px);
  background: #fff;
  transition: transform .2s ease-in-out;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: auto;                 /* consistent height across cards */
  margin-bottom: 20px;
  box-shadow: 0 0 10px rgba(0,0,0,.2);
}
	
	.sold-listing-card {
		  width: calc(33.333% - 20px);
  background: #D5D5D5;
  transition: transform .2s ease-in-out;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 20px;
	}

/* Hover effect */
.single-our-team .team-listings .listing-card:hover {
  transform: scale(1.02);
}

/* Clickable area */
.single-our-team .team-listings .listing-link {
  text-decoration: none;
  color: inherit;
  display: block;
}

/* Thumbnail wrapper (matches your markup) */
.single-our-team .team-listings .thumbnail-container {
  position: relative;
  overflow: hidden;
  line-height: 0; /* removes tiny gaps around img */
}

/* Image rules */
.single-our-team .team-listings .thumbnail-container img {
  width: 100%;
  height: 250px;
  object-fit: cover;
}

/* Status label (uses your .status-label inside our wrapper) */
.single-our-team .team-listings .status-label {
  position: absolute;
  top: 10px;
  right: 0;
  background-color: #856d47;
  color: #fff;
  padding: 15px 20px;
  font-size: 1em;
  text-transform: uppercase;
  font-weight: bold;
  z-index: 2;
}

/* Titles/details */
.single-our-team .team-listings .listing-title {
  color: #333;
  margin: 10px 10px 0;
}

.single-our-team .team-listings .listing-excerpt {
  padding: 0 20px 40px;
  min-height: 120px;
}

/* Price pinned to bottom via flex */
.single-our-team .team-listings .list-price {
  margin-top: auto;
  text-align: center;
  z-index: 1;
  padding-bottom: 16px;
}


	
	

/* Responsive tweaks */
	
	@media (max-width: 1280px) {
	.ag-row--two {
		gap: 20px;
	}
		

		
	}
	
	
	
@media (max-width: 900px) {
	.agent-hero__bg {
  height: 300px;
}
	
	.agent-hero::before {
  content: "";
  display: block;
  height: 300px;           /* match .agent-hero__bg height */
}
	.agent-hero__right {
  align-items: center;  /* keeps buttons aligned to the right */
		padding-top: 20px;
}

	.agent-hero__cta {
		display: block;
		align-items: center;
		justify-content: space-around;
	}
	
	.agent-hero__inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  padding-top: 10px;
  background: white; /* readable over image */
  position: relative;
  z-index: 1;
  margin-top: 0px;      /* optional: overlap the banner a bit */
  border-radius: 0px;
  box-shadow: 0;
}
	
	/* Left stack: avatar + text */
.agent-hero__left {
  grid-template-columns: 200px 1fr;
}

.agent-hero__avatar {
  width: 200px; height: 200px;
}
	
		.ag-row--two {
		display: block;
		margin: 0px;
			padding: 10px;
	}
	
	.agent-bio-main {
		flex-basis: 100%;
		padding: 10px;
		border-radius: 0px;
box-shadow: 0 14px 22px -12px rgba(0,0,0,.28);
		
	}
	
	.ag--col--rgt {
		flex-basis: 100%;
		display: flex;
		gap: 30px;
		justify-content: space-between;
		padding: 10px;
		border-radius: 0px;
		
	}
	


	
	
		.award-body {
		font-weight: normal;
	}
	
	.awards-sec {
		flex-basis: 50%;
		margin-top: 0px;
	}
	
	.memberships-sec {
		flex-basis: 50%;
		margin-top: 0px;
	}
	
	.memberships-body {
		font-weight: normal;
	}

	


/* Grid shell */
.single-our-team .team-listings .listing-container {
  margin-top: 0 auto;
  display: block;
}

/* Row of cards */
.single-our-team .team-listings .listing-row {
  display: block;

  margin-bottom: 10px;
}

/* When there's only one item, center it nicely */
.single-our-team .team-listings .listing-row.single-item {
  justify-content: center;
  align-items: stretch;
  width: 100%;
}

/* Individual card (desktop: 3-up) */
.single-our-team .team-listings .listing-card {
  width: 100%;

}
	
	.sold-listing-card {
	  width: 100%;

	}
	
	.ag-reviews {
		border-radius: 0px;
	}

	.review-slide{
		 border-radius: 0px;
	}
	
		.review-slider {
		 border-radius: 0px;
	}
	
	
	.review-modal__dialog {
		height: auto;
}
	
	
@media (max-width: 700px) {
  .agent-hero__inner { grid-template-columns: 1fr; }
  .agent-hero__cta { justify-content: flex-start; }
}
}


