.mapwt-homes{--red:#c8342f;--ink:#1e2529;--muted:#6b7479;max-width:1200px;margin:auto}.mapwt-filterbar{display:grid;grid-template-columns:2fr 1fr auto;gap:12px;align-items:end;background:#f4f6f6;padding:18px;border-radius:14px;margin-bottom:12px}.mapwt-filterbar label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.mapwt-filterbar input,.mapwt-filterbar select,.mapwt-filterbar button{min-height:46px;border:1px solid #d3dbde;border-radius:8px;background:#fff;padding:0 12px}.mapwt-filterbar button{cursor:pointer}.mapwt-results{margin:12px 0;color:var(--muted)}.mapwt-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.mapwt-home-card{background:#fff;border:1px solid #e0e5e7;border-radius:12px;overflow:hidden;box-shadow:0 8px 26px rgba(18,31,38,.08)}.mapwt-home-card[hidden]{display:none}.mapwt-home-image{height:230px;display:block;position:relative;background:#e8edef;color:inherit}.mapwt-home-image img{width:100%;height:100%;object-fit:cover}.mapwt-home-image em{position:absolute;left:14px;top:14px;background:var(--red);color:#fff;border-radius:99px;padding:7px 11px;font-size:11px;font-style:normal;text-transform:uppercase;letter-spacing:.05em}.mapwt-home-body{padding:20px}.mapwt-community{color:var(--red);text-transform:uppercase;font-size:11px;letter-spacing:.12em;font-weight:800}.mapwt-home-body h3{font-size:20px;line-height:1.25;margin:8px 0}.mapwt-home-body h3 a{color:var(--ink);text-decoration:none}.mapwt-facts{display:flex;gap:13px;flex-wrap:wrap;font-size:13px;color:var(--muted);border-top:1px solid #edf0f1;border-bottom:1px solid #edf0f1;padding:12px 0}.mapwt-price{font-size:22px;font-weight:800;margin-top:14px}.mapwt-home-body p{color:var(--muted)}.mapwt-view{display:inline-flex;gap:8px;color:var(--red);font-weight:800;text-decoration:none}.mapwt-empty{text-align:center;padding:60px 20px}.mapwt-single{color:#1e2529}.mapwt-single-hero{min-height:520px;background-size:cover;background-position:center;display:flex;align-items:flex-end}.mapwt-single-hero>div{width:min(1160px,90%);margin:0 auto;padding:70px 0;color:#fff}.mapwt-single-hero span{background:#c8342f;padding:8px 12px;border-radius:99px;text-transform:uppercase;font-size:12px}.mapwt-single-hero h1{font-size:clamp(38px,6vw,76px);line-height:1;margin:18px 0;color:#fff;max-width:900px}.mapwt-single-wrap{width:min(1160px,90%);margin:0 auto;padding:60px 0;display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:50px}.mapwt-single-facts{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:36px}.mapwt-single-facts div{background:#f3f5f5;border-radius:10px;padding:18px}.mapwt-single-facts b,.mapwt-single-facts span{display:block}.mapwt-single-facts b{font-size:20px}.mapwt-single-facts span{color:#6b7479;font-size:12px}.mapwt-content{font-size:17px;line-height:1.8}.mapwt-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mapwt-gallery img{width:100%;height:320px;object-fit:cover}.mapwt-single-cta{background:#1e2529;color:#fff;border-radius:14px;padding:28px;height:max-content;position:sticky;top:30px}.mapwt-single-cta h2{color:#fff}.mapwt-single-cta a{display:block;background:#c8342f;color:#fff;text-align:center;text-decoration:none;padding:14px;border-radius:7px;margin-top:10px}.mapwt-single-cta a.secondary{background:transparent;border:1px solid #fff}@media(max-width:900px){.mapwt-filterbar{grid-template-columns:1fr 1fr}.mapwt-search{grid-column:1/-1}.mapwt-home-grid{grid-template-columns:repeat(2,1fr)}.mapwt-single-wrap{grid-template-columns:1fr}.mapwt-single-facts{grid-template-columns:repeat(2,1fr)}.mapwt-single-cta{position:static}}@media(max-width:600px){.mapwt-filterbar,.mapwt-home-grid{grid-template-columns:1fr}.mapwt-single-hero{min-height:420px}.mapwt-gallery{grid-template-columns:1fr}}

/* v1.2.1 — filter bar alignment and theme-safe field colors */
.mapwt-filterbar input,
.mapwt-filterbar select {
  box-sizing: border-box;
  width: 100%;
  min-height: 46px;
  color: var(--ink) !important;
  -webkit-text-fill-color: var(--ink);
  line-height: 1.2;
}
.mapwt-filterbar input::placeholder {
  color: #69747a !important;
  opacity: 1;
  -webkit-text-fill-color: #69747a;
}
.mapwt-filterbar select option {
  color: #1e2529;
  background: #fff;
}
.mapwt-filterbar .mapwt-clear-filter {
  align-self: end;
  min-height: 46px;
  height: 46px;
  padding: 0 4px;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--red) !important;
  -webkit-text-fill-color: var(--red);
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  line-height: 46px;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: nowrap;
}
.mapwt-filterbar .mapwt-clear-filter:hover,
.mapwt-filterbar .mapwt-clear-filter:focus {
  color: var(--ink) !important;
  -webkit-text-fill-color: var(--ink);
  background: transparent !important;
  outline: 2px solid transparent;
}
@media(max-width:900px){
  .mapwt-filterbar .mapwt-clear-filter{justify-self:start;align-self:end;}
}


/* v1.2.2 — standardized listing grid, media, and concise card content */
.mapwt-home-grid{
  align-items:stretch;
}
.mapwt-home-card{
  display:flex;
  flex-direction:column;
  height:100%;
  min-width:0;
}
.mapwt-home-image{
  width:100%;
  height:auto;
  aspect-ratio:4 / 3;
  flex:0 0 auto;
  overflow:hidden;
}
.mapwt-home-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.mapwt-home-body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  min-height:0;
}
.mapwt-home-body h3{
  min-height:2.5em;
}
.mapwt-card-excerpt{
  margin:14px 0 18px;
  line-height:1.65;
}
.mapwt-view{
  margin-top:auto;
  align-self:flex-start;
}
@media(max-width:600px){
  .mapwt-home-body h3{min-height:0;}
}
\n\n/* v1.2.3 — hard-lock card media crop and allow per-home focal adjustment */
.mapwt-home-image{
  position:relative;
  display:block;
  aspect-ratio:16 / 10;
  min-height:0;
  overflow:hidden;
  background:#e8edef;
  isolation:isolate;
}
.mapwt-home-image img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:cover !important;
  object-position:var(--mapwt-image-position, center center) !important;
  transform:scale(var(--mapwt-image-zoom, 1.08));
  transform-origin:var(--mapwt-image-position, center center);
  transition:transform .3s ease;
  z-index:0;
}
.mapwt-home-card:hover .mapwt-home-image img{
  transform:scale(calc(var(--mapwt-image-zoom, 1.08) + .025));
}
.mapwt-home-image em{z-index:2;}
.mapwt-home-image > span:not([class]){
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
}

.mapwt-clear-filter{align-self:end;justify-self:end;min-height:auto!important;border:0!important;background:transparent!important;padding:0 0 12px!important;color:var(--red)!important;font-weight:800;text-decoration:underline;box-shadow:none!important}


/* v1.3.5 — blog-inspired Available Home single layout */
.mapwt-property-page{
  background:#fff;
  color:#202427;
  padding-bottom:70px;
}
.mapwt-property-hero{
  position:relative;
  min-height:430px;
  background:#2d3337;
  overflow:hidden;
}
.mapwt-property-hero::before,
.mapwt-property-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(18,22,25,.58),rgba(18,22,25,.58)),
    var(--mapwt-hero-image);
  background-size:cover;
  background-position:center;
  filter:blur(1px);
  transform:scale(1.03);
}
.mapwt-property-hero-image{
  position:absolute;
  inset:0;
  width:min(760px,58vw);
  margin:auto;
  background-image:var(--mapwt-hero-image);
  background-size:cover;
  background-position:center;
  box-shadow:0 0 60px rgba(0,0,0,.3);
}
.mapwt-property-card{
  width:min(850px,calc(100% - 40px));
  margin:55px auto 0;
  background:#fff;
}
.mapwt-property-card.has-hero{
  position:relative;
  z-index:2;
  margin-top:-78px;
  padding:48px 50px 0;
  border-radius:9px 9px 0 0;
}
.mapwt-property-heading{
  text-align:center;
  margin-bottom:32px;
}
.mapwt-property-eyebrow{
  display:block;
  margin-bottom:17px;
  color:#7b8084;
  font-size:11px;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.mapwt-property-heading h1{
  margin:0;
  color:#202427;
  font-size:clamp(34px,5vw,54px);
  line-height:1.03;
  font-weight:500;
  text-transform:uppercase;
}
.mapwt-property-tags{
  margin:14px 0 0;
  color:#c52f2a;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mapwt-property-facts{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(115px,1fr));
  gap:10px;
  margin:0 0 34px;
}
.mapwt-property-facts div{
  padding:16px 12px;
  border:1px solid #e4e7e9;
  border-radius:6px;
  text-align:center;
}
.mapwt-property-facts strong,
.mapwt-property-facts span{
  display:block;
}
.mapwt-property-facts strong{
  font-size:18px;
  color:#202427;
}
.mapwt-property-facts span{
  margin-top:3px;
  color:#72797d;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.mapwt-property-copy{
  font-size:15px;
  line-height:1.8;
  color:#62696d;
}
.mapwt-property-copy p{
  margin:0 0 1.25em;
}
.mapwt-property-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:28px;
}
.mapwt-property-gallery img{
  display:block;
  width:100%;
  height:210px;
  object-fit:cover;
  border-radius:2px;
}
.mapwt-property-gallery img:nth-last-child(2):first-child,
.mapwt-property-gallery img:nth-last-child(2):first-child ~ img{
  grid-column:span 1;
}
.mapwt-property-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:34px;
}
.mapwt-property-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 20px;
  border-radius:22px;
  background:#292f33;
  color:#fff !important;
  text-decoration:none !important;
  font-size:12px;
  font-weight:700;
}
.mapwt-property-button.secondary{
  background:#c6332d;
}
.mapwt-property-share{
  margin-top:46px;
}
.mapwt-property-share h2{
  margin:0 0 15px;
  color:#b22d28;
  font-size:22px;
  font-weight:500;
  text-transform:uppercase;
}
.mapwt-property-share > div{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
}
.mapwt-property-share a{
  display:block;
  padding:12px 14px;
  background:#315ca8;
  color:#fff !important;
  text-align:center;
  text-decoration:none !important;
  font-size:12px;
}
.mapwt-property-share a:nth-child(2){background:#199ddb}
.mapwt-property-share a:nth-child(3){background:#087dac}
.mapwt-property-share a:nth-child(4){background:#c90022}
.mapwt-property-footer{
  padding:35px 0 0;
  text-align:center;
}
.mapwt-property-footer a{
  display:inline-block;
  padding:10px 17px;
  background:#222;
  color:#fff !important;
  text-decoration:none !important;
  font-size:11px;
}
@media(max-width:760px){
  .mapwt-property-hero{min-height:300px}
  .mapwt-property-hero-image{width:78vw}
  .mapwt-property-card.has-hero{
    width:calc(100% - 24px);
    margin-top:-35px;
    padding:34px 22px 0;
  }
  .mapwt-property-heading h1{font-size:34px}
  .mapwt-property-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mapwt-property-gallery img{height:170px}
}
@media(max-width:480px){
  .mapwt-property-gallery{grid-template-columns:1fr}
  .mapwt-property-gallery img{height:auto;aspect-ratio:4/3}
  .mapwt-property-share > div{grid-template-columns:1fr}
}


/* v1.3.6 — explicit featured image box + clickable gallery lightbox */
.mapwt-property-hero{
  position:relative;
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#2e3337;
}
.mapwt-property-hero::before,
.mapwt-property-hero::after{
  display:none !important;
}
.mapwt-property-hero-backdrop{
  position:absolute;
  inset:-18px;
  background:
    linear-gradient(rgba(18,22,25,.62),rgba(18,22,25,.62)),
    var(--mapwt-hero-image);
  background-size:cover;
  background-position:center;
  filter:blur(2px);
  transform:scale(1.08);
}
.mapwt-property-featured-box{
  position:relative;
  z-index:2;
  width:min(760px,62vw);
  height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  box-shadow:0 12px 40px rgba(0,0,0,.28);
  overflow:hidden;
}
.mapwt-property-featured-box a{
  display:block;
  width:100%;
  height:100%;
}
.mapwt-property-featured-box img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.mapwt-property-gallery a{
  display:block;
  overflow:hidden;
  background:#eef1f3;
}
.mapwt-property-gallery a img{
  transition:transform .2s ease;
}
.mapwt-property-gallery a:hover img{
  transform:scale(1.025);
}
@media(max-width:760px){
  .mapwt-property-hero{min-height:300px}
  .mapwt-property-featured-box{
    width:78vw;
    height:300px;
  }
}


/* v1.3.8 — consistent action row and native-lightbox gallery links */
.mapwt-property-copy img{
  max-width:100%;
  height:auto;
}
.mapwt-property-copy a:has(> img),
.mapwt-property-gallery a{
  cursor:zoom-in;
}
.mapwt-property-actions{
  display:grid !important;
  grid-template-columns:max-content max-content !important;
  justify-content:start !important;
  align-items:center !important;
  gap:12px !important;
  width:100% !important;
  margin:38px 0 0 !important;
  padding:0 !important;
  clear:both !important;
}
.mapwt-property-actions .mapwt-property-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 22px !important;
  border:0 !important;
  border-radius:999px !important;
  line-height:1 !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}
@media(max-width:520px){
  .mapwt-property-actions{
    grid-template-columns:1fr !important;
  }
  .mapwt-property-actions .mapwt-property-button{
    width:100% !important;
  }
}
