.elementor-kit-7{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===== Peter's Homes: MFH plugin styling =====
   Brand tokens: ink #1F1420 / ink-soft #6B5B68 / plum-deep #2F1443
   brass #A6824B / brass-light #C7A870 / ivory #FAF7F2 / line #DCD2CC
   Fonts: Fraunces (display), Inter (body), MH-Icons (plugin spec icons) */

/* ---------- Search bar ---------- */
form#floorplan-searchbar{
  position:relative;
  display:flex;
  flex-direction:column;
  font-family:'Inter',sans-serif;
  background:#FAF7F2;
  padding:24px 56px 48px;
}
@media(max-width:900px){
  form#floorplan-searchbar{ padding:16px 24px 32px; }
}

#advanced-search-container{
  order:-1;
  position:relative;
  z-index:1;
  display:block !important;
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  background:#FFFFFF !important;
  border:1px solid #DCD2CC !important;
  border-bottom:0 !important;
  border-radius:14px 14px 0 0 !important;
  padding:0 30px 16px !important;
  overflow:hidden;
}
#advanced-search-container::before{
  content:"";
  position:absolute;
  top:0; left:0; right:0;
  height:3px;
  background:linear-gradient(90deg,#A6824B 0%,#C7A870 52%,#A6824B 100%);
}
#advanced-search-container > .container::before{
  content:"Find Your Floor Plan";
  display:block;
  font-family:'Fraunces',serif;
  font-size:23px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:.005em;
  color:#1F1420;
  margin:27px 0 19px;
}
@media(max-width:900px){
  #advanced-search-container > .container::before{ font-size:20px; margin:22px 0 16px; }
}
#advanced-search-container > .container{
  width:100% !important;
  max-width:none !important;
  padding:0 !important;
  margin:0 !important;
}

section.elementor-element-b2ce9a3{
  position:relative;
  z-index:2;
  width:100% !important;
  max-width:1320px !important;
  margin:0 auto !important;
  padding:0 !important;
  background:transparent !important;
}
section.elementor-element-b2ce9a3 > .e-con-inner{
  max-width:none !important;
  width:100% !important;
  background:#FFFFFF !important;
  border:1px solid #DCD2CC !important;
  border-top:0 !important;
  border-radius:0 0 14px 14px !important;
  padding:0 30px 30px !important;
}
@media(max-width:900px){
  #advanced-search-container{ padding:0 20px 12px !important; border-radius:10px 10px 0 0 !important; }
  section.elementor-element-b2ce9a3 > .e-con-inner{ padding:0 20px 22px !important; border-radius:0 0 10px 10px !important; }
}

.elementor-widget-floorplan_searchbar .row,
#advanced-search-container .row{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:12px !important;
  margin:0 !important;
  width:100% !important;
}
.elementor-widget-floorplan_searchbar .row > [class*="col-"],
#advanced-search-container .row > [class*="col-"]{
  padding:0 !important;
  margin:0 !important;
  max-width:none !important;
  flex:1 1 150px;
}
#advanced-search-container .row > .col-md-4{ flex:2 1 280px; }
#advanced-search-container .row > .col-md-3{ flex:1 1 170px; }
.elementor-widget-floorplan_searchbar .row > .col-md-2:last-of-type,
.elementor-widget-floorplan_searchbar .row > .offset-4{
  flex:0 0 190px !important;
  margin-left:0 !important;
}
@media(max-width:767px){
  .elementor-widget-floorplan_searchbar .row > .col-md-2:last-of-type,
  .elementor-widget-floorplan_searchbar .row > .offset-4{
    flex:1 1 100% !important;
  }
}
.elementor-widget-floorplan_searchbar .row > .col-12,
#advanced-search-button{ display:none !important; }

/* Fields */
form#floorplan-searchbar select,
form#floorplan-searchbar input[type="text"],
.elementor-widget-floorplan_searchbar select,
.elementor-widget-floorplan_searchbar input[type="text"],
#advanced-search-container select,
#advanced-search-container input[type="text"]{
  font-family:'Inter',sans-serif !important;
  font-size:14px !important;
  font-weight:300 !important;
  color:#1F1420 !important;
  background-color:#FCFAF7 !important;
  border:1px solid #DCD2CC !important;
  border-radius:3px !important;
  padding:12px 14px !important;
  height:auto !important;
  width:100% !important;
  box-shadow:none !important;
  transition:border-color .2s ease, background-color .2s ease;
}
form#floorplan-searchbar select:hover,
form#floorplan-searchbar input[type="text"]:hover,
#advanced-search-container select:hover,
#advanced-search-container input[type="text"]:hover{
  border-color:#C7A870 !important;
  background-color:#FFFFFF !important;
}
form#floorplan-searchbar select:focus,
form#floorplan-searchbar input[type="text"]:focus,
#advanced-search-container select:focus,
#advanced-search-container input[type="text"]:focus{
  border-color:#A6824B !important;
  background-color:#FFFFFF !important;
  outline:none !important;
  box-shadow:0 0 0 3px rgba(166,130,75,.14) !important;
}
form#floorplan-searchbar input[type="text"]::placeholder,
#advanced-search-container input[type="text"]::placeholder{
  color:#6B5B68 !important;
  opacity:1 !important;
}

/* Search button */
.elementor-widget-floorplan_searchbar .dealer-fp-searchbar-button,
form#floorplan-searchbar button[type="submit"]{
  font-family:'Inter',sans-serif !important;
  font-size:11.5px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  background-color:#2F1443 !important;
  color:#FFFFFF !important;
  border:1px solid #2F1443 !important;
  border-radius:2px !important;
  padding:13px 24px !important;
  height:auto !important;
  width:100% !important;
  cursor:pointer !important;
  transition:background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.elementor-widget-floorplan_searchbar .dealer-fp-searchbar-button:hover,
form#floorplan-searchbar button[type="submit"]:hover{
  background-color:#7F6135 !important;
  border-color:#7F6135 !important;
  color:#FFFFFF !important;
  box-shadow:0 4px 14px rgba(166,130,75,.34) !important;
}

/* ---------- Results grid ----------
   The plugin wraps the row in a .container-fluid carrying 15px of side
   padding, which pushed the whole grid 15px in from the section heading.
   Zeroing that padding and restoring Bootstrap's -15px row margins lines the
   outer cards up with the heading, keeps 30px between cards, and leaves every
   card the same width. */
.elementor-widget-container > .container-fluid:has(> .row.search-result-container){
  padding-left:0 !important;
  padding-right:0 !important;
}
.row.search-result-container{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  width:auto !important;
  margin-left:-15px !important;
  margin-right:-15px !important;
}
.row.search-result-container > [class*="col-"]{
  display:flex !important;
  padding-left:15px !important;
  padding-right:15px !important;
}
.row.search-result-container > [class*="col-"] > *{ width:100%; }

/* ---------- Result cards ----------
   Site-wide, so cards look identical wherever the widget is placed:
   Floorplans, Home, Homes on Display and Past Builds. */
.fp-card-container{
  font-family:'Inter',sans-serif;
  background:#FFFFFF;
  border:1px solid #DCD2CC;
  border-radius:12px;
  overflow:hidden;
  height:100%;
  display:flex;
  flex-direction:column;
  transition:box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.fp-card-container:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 32px rgba(31,20,32,0.10);
  border-color:#C7A870;
}
/* Photo: fixed height rather than the plugin's 300px (nearly square on a
   narrow card). An explicit height is used instead of aspect-ratio because
   the element is a flex container whose overlay children were driving its
   height -- cards with a 3D-tour thumbnail came out twice as tall as those
   without. flex:0 0 auto stops it shrinking to fill. */
.fp-card-container .fp-card-image{
  flex:0 0 auto !important;
  border-radius:0 !important;
  height:250px !important;
  min-height:250px !important;
  max-height:250px !important;
  aspect-ratio:auto !important;
  background-size:cover !important;
  background-position:center center !important;
}
@media(max-width:1024px){
  .fp-card-container .fp-card-image{
    height:230px !important; min-height:230px !important; max-height:230px !important;
  }
}
@media(max-width:600px){
  .fp-card-container .fp-card-image{
    height:210px !important; min-height:210px !important; max-height:210px !important;
  }
}

/* Tags (Manufactured / New / Lot Model / On Display / Featured) are hidden
   site-wide at the client's request -- the photo stays clean. */
.fp-card-tags{ display:none !important; }

/* Text block */
.fp-card-container .fp-card-details{
  padding-top:18px !important;
  padding-bottom:14px !important;
}

/* Floor plan name -- plugin markup is h4.home-name > a (a bare <a>, which
   otherwise inherits the theme's default link violet #5533FF). */
.fp-card-container .home-name{
  min-height:0 !important;
  margin:0 0 6px !important;
  display:block !important;
}
.fp-card-container .home-name,
.fp-card-container .home-name a,
.fp-card-container h4.home-name a:link,
.fp-card-container h4.home-name a:visited{
  font-family:'Fraunces',serif !important;
  font-weight:400 !important;
  font-size:18px !important;
  font-stretch:semi-condensed;
  line-height:1.3 !important;
  letter-spacing:-.012em !important;
  color:#1F1420 !important;
  text-decoration:none !important;
}
.fp-card-container .home-name a:hover,
.fp-card-container .home-name a:focus{
  color:#2F1443 !important;
  text-decoration:none !important;
}
.fp-card-container .fp-thumb,
.fp-card-container .tour-thumb{ color:inherit !important; }

/* Built by / Offered by on one line; dealer in brass */
.fp-card-container .fp-card-built-by,
.fp-card-container .fp-card-offered-by{
  display:inline !important;
  font-family:'Inter',sans-serif !important;
  font-size:12px !important;
  font-weight:300 !important;
  line-height:1.55 !important;
}
.fp-card-container .fp-card-built-by{ color:#6B5B68 !important; }
.fp-card-container .fp-card-offered-by{
  color:#7F6135 !important;
  font-weight:400 !important;
}
.fp-card-container .fp-card-built-by::after{
  content:"\00a0\00b7\00a0";
  color:#DCD2CC;
}

/* Spec row -- text only; :not() guards keep the MH-Icons glyphs intact. */
.fp-card-container .fp-card-specs,
.fp-card-container .fp-card-specs div,
.fp-card-container .fp-card-specs span:not([class*="icon-"]):not([class*="fa-"]){
  font-family:'Inter',sans-serif !important;
  font-size:13.5px !important;
  font-weight:400 !important;
  color:#1F1420 !important;
}
.fp-card-container .fp-card-specs{ margin-top:12px !important; }
.fp-card-container .fp-card-specs > [class*="col-"]{ margin-bottom:0 !important; }
.fp-card-container .fp-card-specs div{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin-bottom:6px !important;
}
.fp-card-container .fp-card-specs .col-sm-6{ display:block !important; }
.fp-card-container .fp-card-specs i[class*="icon-mfh-"],
.fp-card-container .fp-card-specs i[class^="icon-mfh-"],
.fp-card-container .fp-card-specs i[class*="icon-"]{
  font-family:'MH-Icons' !important;
  font-style:normal !important;
  font-weight:normal !important;
  font-size:16px !important;
  line-height:1 !important;
  color:#A6824B !important;
  flex:0 0 auto !important;
}
.fp-card-container .fp-card-specs i[class*="icon-"]::before{
  font-family:'MH-Icons' !important;
}

.fp-card-container p{
  font-family:'Inter',sans-serif !important;
  font-size:13.5px !important;
  font-weight:300 !important;
  line-height:1.7 !important;
  color:#6B5B68 !important;
  margin-bottom:0 !important;
}

/* ---------- Card buttons ----------
   margin-top:auto pushes this block to the bottom of the flex card, so every
   card in a row lines its buttons up regardless of how long the name runs. */
.fp-card-container > .container-fluid{
  margin-top:auto !important;
}
.fp-card-container .btn,
.fp-card-detail-button,
.fp-card-quote-button{
  font-family:'Inter',sans-serif !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  border-radius:2px !important;
  padding:12px 20px !important;
  transition:background .2s ease, border-color .2s ease, color .2s ease;
}
.fp-card-quote-button{
  background:#7F6135 !important;
  border:1px solid #7F6135 !important;
  color:#FFFFFF !important;
}
.fp-card-quote-button:hover,
.fp-card-quote-button:focus{
  background:#6B5029 !important;
  border-color:#6B5029 !important;
  color:#FFFFFF !important;
}
.fp-card-detail-button{
  background:transparent !important;
  border:1px solid #2F1443 !important;
  color:#2F1443 !important;
}
.fp-card-detail-button:hover{
  background:#2F1443 !important;
  border-color:#2F1443 !important;
  color:#FFFFFF !important;
}

/* ---------- Pagination ----------
   NOTE: the <ul> carries the SAME .page-numbers class as the links, so every
   rule is scoped to `li .page-numbers` -- styling .page-numbers on its own
   draws a bordered bar around the whole set as well as each number. */
.mfh-search-pagination{
  margin:40px 0 8px !important;
}
.mfh-search-pagination ul.page-numbers{
  display:flex !important;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:10px;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  border-radius:0 !important;
}
.mfh-search-pagination ul.page-numbers > li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
}
.mfh-search-pagination li .page-numbers{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  min-width:42px;
  height:42px;
  padding:0 12px !important;
  font-family:'Inter',sans-serif !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1 !important;
  color:#6B5B68 !important;
  background:#FFFFFF !important;
  border:1px solid #DCD2CC !important;
  border-radius:999px !important;
  text-decoration:none !important;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.mfh-search-pagination li a.page-numbers:hover{
  border-color:#A6824B !important;
  color:#1F1420 !important;
}
.mfh-search-pagination li .page-numbers.current{
  background:#2F1443 !important;
  border-color:#2F1443 !important;
  color:#FFFFFF !important;
}
.mfh-search-pagination li .next.page-numbers,
.mfh-search-pagination li .prev.page-numbers{
  font-size:15px !important;
  color:#7F6135 !important;
}
.mfh-pagination a{
  font-family:'Inter',sans-serif !important;
  font-size:13px !important;
  color:#6B5B68 !important;
  border-color:#DCD2CC !important;
}

/* ================= Detail pages =================
   Floor Plan Detail (/plan/) and Inventory Detail (/inventory-detail/).
   The pd- classes are set on the Elementor widgets; everything else targets
   the plugin's own markup. */
.pd-eyebrow, .pd-title, .pd-specs, .pd-builtby,
.pd-h2, .pd-desc, .pd-cta-h2, .pd-cta-text{ text-align:left !important; }
.pd-eyebrow .elementor-heading-title{
  font-family:'Inter',sans-serif !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.2em !important;
  text-transform:uppercase !important;
  color:#C7A870 !important;
  margin:0 0 14px !important;
}
.pd-title h1{
  font-family:'Fraunces',serif !important;
  font-weight:400 !important;
  font-size:44px !important;
  line-height:1.1 !important;
  letter-spacing:-.018em !important;
  color:#FAF7F2 !important;
  margin:0 0 16px !important;
}
@media(max-width:900px){ .pd-title h1{ font-size:31px !important; } }
.pd-specs p{
  font-family:'Inter',sans-serif !important;
  font-size:15px !important;
  font-weight:300 !important;
  color:#E4D9E4 !important;
  margin:0 0 10px !important;
}
.pd-builtby p{
  font-family:'Inter',sans-serif !important;
  font-size:13px !important;
  font-weight:300 !important;
  color:#B29CB2 !important;
  margin:0 !important;
}
.pd-h2 .elementor-heading-title{
  font-family:'Fraunces',serif !important;
  font-weight:400 !important;
  font-size:30px !important;
  line-height:1.2 !important;
  letter-spacing:-.012em !important;
  color:#1F1420 !important;
  margin:0 !important;
}
@media(max-width:900px){ .pd-h2 .elementor-heading-title{ font-size:25px !important; } }
.pd-desc p{
  font-family:'Inter',sans-serif !important;
  font-size:15px !important;
  font-weight:300 !important;
  line-height:1.75 !important;
  color:#6B5B68 !important;
  margin:0 !important;
}
.pd-planimage img{
  width:100% !important;
  height:auto !important;
  display:block;
  background:#FFFFFF;
  border:1px solid #DCD2CC;
  border-radius:12px;
}

/* Detail buttons -- brass primary, outlined secondary, same as the cards */
.elementor-widget-price_quote_button .elementor-button,
.elementor-widget-floorplan_brochure_button .elementor-button{
  font-family:'Inter',sans-serif !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  border-radius:2px !important;
  padding:14px 26px !important;
  line-height:1 !important;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.elementor-widget-price_quote_button .elementor-button{
  background-color:#7F6135 !important;
  border:1px solid #7F6135 !important;
  color:#FFFFFF !important;
}
.elementor-widget-price_quote_button .elementor-button:hover{
  background-color:#6B5029 !important;
  border-color:#6B5029 !important;
  color:#FFFFFF !important;
}
.elementor-widget-floorplan_brochure_button .elementor-button{
  background-color:transparent !important;
  border:1px solid #2F1443 !important;
  color:#2F1443 !important;
}
.elementor-widget-floorplan_brochure_button .elementor-button:hover{
  background-color:#2F1443 !important;
  border-color:#2F1443 !important;
  color:#FFFFFF !important;
}

/* Specification tabs -- plugin ships Bootstrap nav-tabs */
.elementor-widget-specification_tabs .container,
.elementor-widget-series_specification_tabs .container{
  width:100% !important; max-width:none !important; padding:0 !important; margin:0 !important;
}
.elementor-widget-specification_tabs ul.nav-tabs,
.elementor-widget-series_specification_tabs ul.nav-tabs{
  display:flex !important;
  flex-wrap:wrap;
  gap:8px;
  border:0 !important;
  margin:0 0 24px !important;
  padding:0 !important;
  list-style:none !important;
}
.elementor-widget-specification_tabs ul.nav-tabs li.nav-item,
.elementor-widget-series_specification_tabs ul.nav-tabs li.nav-item{
  margin:0 !important; padding:0 !important; list-style:none !important;
}
.elementor-widget-specification_tabs .nav-tabs .nav-link,
.elementor-widget-series_specification_tabs .nav-tabs .nav-link{
  display:inline-block !important;
  font-family:'Inter',sans-serif !important;
  font-size:11.5px !important;
  font-weight:600 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  color:#6B5B68 !important;
  background:#FAF7F2 !important;
  border:1px solid #DCD2CC !important;
  border-radius:999px !important;
  padding:10px 20px !important;
  text-decoration:none !important;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.elementor-widget-specification_tabs .nav-tabs .nav-link:hover,
.elementor-widget-series_specification_tabs .nav-tabs .nav-link:hover{
  border-color:#C7A870 !important; color:#1F1420 !important;
}
.elementor-widget-specification_tabs .nav-tabs .nav-link.active,
.elementor-widget-series_specification_tabs .nav-tabs .nav-link.active{
  background:#2F1443 !important; border-color:#2F1443 !important; color:#FFFFFF !important;
}
.elementor-widget-specification_tabs .tab-content p,
.elementor-widget-specification_tabs .tab-content li,
.elementor-widget-specification_tabs .tab-content div,
.elementor-widget-series_specification_tabs .tab-content p,
.elementor-widget-series_specification_tabs .tab-content li,
.elementor-widget-series_specification_tabs .tab-content div{
  font-family:'Inter',sans-serif !important;
  font-size:14px !important;
  font-weight:300 !important;
  line-height:1.8 !important;
  color:#6B5B68 !important;
}
.elementor-widget-specification_tabs .tab-content strong,
.elementor-widget-specification_tabs .tab-content b,
.elementor-widget-series_specification_tabs .tab-content strong,
.elementor-widget-series_specification_tabs .tab-content b{
  color:#1F1420 !important; font-weight:500 !important;
}

/* Gallery -- WordPress gallery markup, floated by default */
.elementor-widget-floorplan_gallery .gallery{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:16px !important;
  margin:0 !important;
}
.elementor-widget-floorplan_gallery .gallery-item{
  margin:0 !important;
  float:none !important;
  width:calc(25% - 12px) !important;
  max-width:none !important;
}
@media(max-width:1024px){
  .elementor-widget-floorplan_gallery .gallery-item{ width:calc(33.333% - 11px) !important; }
}
@media(max-width:600px){
  .elementor-widget-floorplan_gallery .gallery-item{ width:calc(50% - 8px) !important; }
}
.elementor-widget-floorplan_gallery .gallery-item img{
  width:100% !important;
  height:180px !important;
  object-fit:cover !important;
  display:block !important;
  border:1px solid #DCD2CC !important;
  border-radius:10px !important;
}
.elementor-widget-floorplan_gallery .gallery-caption{ display:none !important; }

/* 3D tour and video embeds */
.elementor-widget-FloorplanFirstTour iframe,
.elementor-widget-floorplan_videos iframe{
  width:100% !important;
  aspect-ratio:16/9;
  height:auto !important;
  min-height:0 !important;
  border:0 !important;
  border-radius:12px;
  display:block;
}

/* Disclaimer strip */
.pd-disclaimer p{
  font-family:'Inter',sans-serif !important;
  font-size:12px !important;
  font-weight:300 !important;
  line-height:1.7 !important;
  color:#6B5B68 !important;
  margin:0 !important;
}

/* Closing CTA */
.pd-cta-h2 .elementor-heading-title{
  font-family:'Fraunces',serif !important;
  font-weight:400 !important;
  font-size:34px !important;
  line-height:1.15 !important;
  letter-spacing:-.014em !important;
  color:#FAF7F2 !important;
  margin:0 !important;
}
@media(max-width:900px){ .pd-cta-h2 .elementor-heading-title{ font-size:27px !important; } }
.pd-cta-text p{
  font-family:'Inter',sans-serif !important;
  font-size:15px !important;
  font-weight:300 !important;
  line-height:1.75 !important;
  color:#D5C7D5 !important;
  margin:0 !important;
  max-width:640px;
}
.pd-cta-button .elementor-button{
  font-family:'Inter',sans-serif !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  background-color:#7F6135 !important;
  border:1px solid #7F6135 !important;
  color:#FFFFFF !important;
  border-radius:2px !important;
  padding:14px 28px !important;
}
.pd-cta-button .elementor-button:hover{
  background-color:#6B5029 !important;
  border-color:#6B5029 !important;
  color:#FFFFFF !important;
}

/* Price quote form */
.elementor-widget-price_quote_form input[type="text"],
.elementor-widget-price_quote_form input[type="email"],
.elementor-widget-price_quote_form input[type="tel"],
.elementor-widget-price_quote_form textarea,
.elementor-widget-price_quote_form select{
  font-family:'Inter',sans-serif !important;
  font-size:14px !important;
  font-weight:300 !important;
  color:#1F1420 !important;
  background-color:#FCFAF7 !important;
  border:1px solid #DCD2CC !important;
  border-radius:3px !important;
  padding:12px 14px !important;
  width:100% !important;
  height:auto !important;
  box-shadow:none !important;
}
.elementor-widget-price_quote_form input:focus,
.elementor-widget-price_quote_form textarea:focus,
.elementor-widget-price_quote_form select:focus{
  border-color:#A6824B !important;
  background-color:#FFFFFF !important;
  outline:none !important;
  box-shadow:0 0 0 3px rgba(166,130,75,.14) !important;
}
.elementor-widget-price_quote_form label{
  font-family:'Inter',sans-serif !important;
  font-size:12px !important;
  font-weight:500 !important;
  letter-spacing:.06em !important;
  color:#1F1420 !important;
  margin-bottom:6px !important;
}
.elementor-widget-price_quote_form button[type="submit"],
.elementor-widget-price_quote_form input[type="submit"],
.elementor-widget-price_quote_form .btn-primary{
  font-family:'Inter',sans-serif !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  background-color:#7F6135 !important;
  border:1px solid #7F6135 !important;
  color:#FFFFFF !important;
  border-radius:2px !important;
  padding:14px 28px !important;
  width:auto !important;
  cursor:pointer;
}
.elementor-widget-price_quote_form button[type="submit"]:hover,
.elementor-widget-price_quote_form input[type="submit"]:hover,
.elementor-widget-price_quote_form .btn-primary:hover{
  background-color:#6B5029 !important;
  border-color:#6B5029 !important;
}

/* ---------- Detail page photos: no size jump on load ----------
   The plugin first prints the gallery at full page width, then the script in
   the photos block moves it into a 780px column beside the 3D tour. Until
   that script runs, the frame gets the same width and position it ends up
   with, so the photo does not flash huge and then shrink. Once the script has
   moved the gallery into .pd-media-left, this .elementor-kit-7 stops matching. */
.elementor-element-febc8f9 .elementor-widget-container > .elementor-image-gallery{
  max-width:780px !important;
  margin-left:max(0px, calc((100% - 1108px) / 2)) !important;
}
@media(max-width:1024px){
  .elementor-element-febc8f9 .elementor-widget-container > .elementor-image-gallery{
    max-width:100% !important; margin-left:0 !important;
  }
}

/* Card tag labels: dark text so it reads on the light tag colors (accessibility) */
.fp-card-container .fp-card-tags .label{color:#1F1420 !important;}

/* Hide redundant "Built by" / "Offered by" lines on home cards */
.fp-card-container .fp-card-built-by,.fp-card-container .fp-card-offered-by{display:none !important;}

/* Home cards: remove empty space between specs and buttons */
.fp-card-container .fp-card-specs div{white-space:nowrap !important;}
.fp-card-container .fp-card-details{padding-bottom:12px !important;}

/* Home cards: whole card opens the home (photo, name, specs). Floorplan thumb, 3D tour and buttons keep their own links */
.fp-card-container .home-name a::after{content:"";position:absolute;inset:0;z-index:1;}
.fp-card-container .fp-thumb,.fp-card-container .tour-thumb,.fp-card-container .container-fluid .btn{position:relative;z-index:2;}
.fp-card-container .fp-card-tags{z-index:2;}/* End custom CSS */