/* Inventory, city navigation, and the typography and color pairing from Jim's video. */
:root{--tagline-green:#639533}
.is-home .header{top:0}
.brand-ribbon{background:#111713;padding:.9rem var(--gutter);text-align:center}
.brand-tagline{font-family:var(--font-display);font-size:clamp(1.35rem,2.1vw,2.15rem);line-height:1.22;letter-spacing:-.015em;color:#fff;font-weight:400}
.brand-tagline span{color:#fff}.brand-tagline em{color:var(--tagline-green);font-weight:400;white-space:nowrap}
.hero-guide.brand-tagline{font-size:clamp(1.75rem,3vw,3rem);color:white;max-width:none}
.footer-lead .brand-tagline{background:#111713;padding:1rem 1.15rem;font-size:1.8rem;margin-top:1.5rem}
.primary-nav{gap:clamp(.75rem,1.1vw,1.2rem)}.primary-nav>a{font-size:.78rem}.primary-nav .nav-action{margin-left:0;padding:.8rem 1rem}
.inventory-callout{padding:1.35rem var(--gutter);display:flex;align-items:center;gap:2rem;justify-content:space-between;background:#e3eadc;border-bottom:1px solid #c3ceba}
.inventory-callout>div:first-child>span{font-size:.62rem;letter-spacing:.13em;font-weight:700;color:#436d48}.inventory-callout p{font-family:var(--font-display);font-size:1.75rem;line-height:1.12;margin:.3rem 0 0}
.inventory-callout-actions{display:flex;flex-direction:column;align-items:center;gap:.3rem;margin-left:auto}.inventory-callout .button{font-size:.95rem;min-height:56px;gap:1.2rem}.inventory-callout .button span{font-size:1.25rem}.inventory-callout small{font-size:.7rem;color:#526158}.inventory-callout>.line-link{flex:none}
.filter-bar{display:grid;grid-template-columns:minmax(200px,1.4fr) repeat(3,minmax(130px,1fr)) auto;align-items:end;gap:1rem}.filter-bar label{min-width:0}.filter-bar.plan-filter{grid-template-columns:minmax(220px,1fr) auto auto}.filter-bar.plan-filter>label:first-child{max-width:560px}.filter-bar .lower-level-filter{display:flex;flex-direction:row;align-items:center;gap:.65rem;min-height:48px;font-size:.85rem;letter-spacing:0;text-transform:none;font-weight:500}.lower-level-filter input{appearance:auto;accent-color:#436d48;width:19px;height:19px;flex:none;margin:0}.filter-clear{min-height:48px}
.home-card-link{height:auto}.home-card-meta{flex-wrap:wrap;gap:.35rem .8rem}.home-card-facts{line-height:1.6;gap:.4rem .65rem}.home-card .card-price{flex-basis:100%;margin:.3rem 0 0;color:var(--ink);font-size:.92rem}.home-card .card-completion{flex-basis:100%;font-weight:400}.home-card .mls-link{margin-top:1.1rem;font-size:.85rem}.bath-lines{display:grid;grid-template-columns:1fr;gap:.25rem;margin-top:.75rem;font-size:.8rem;color:var(--mute)}.bath-lines>div{display:flex;justify-content:space-between;gap:1rem;max-width:230px}.bath-lines dd{margin:0;color:var(--ink);font-weight:600}.spec-pending{font-size:.78rem;color:var(--mute);margin-top:.75rem}
.plan-card[hidden]{display:none!important}.plan-card .bath-lines{border-top:1px solid var(--line);padding-top:.75rem}.plan-card-bottom{align-items:center;line-height:1.6}.lower-level-note{font-size:.78rem;line-height:1.45;color:#365e3d;border-top:1px solid var(--line);padding-top:.75rem;margin-top:1rem}
.detail-info{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,5rem);align-items:start;padding-top:5rem;padding-bottom:5rem}.detail-info>*{min-width:0}.detail-lead h2{font-size:clamp(2.7rem,4vw,4.7rem);line-height:1.05}.detail-actions{flex-direction:column;align-items:flex-start;gap:.75rem}.detail-actions .button{white-space:normal;text-align:center;line-height:1.4;max-width:100%}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:1rem}.stat{min-width:0;padding:1.1rem .3rem 1.1rem 0}.stat strong{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.025em;line-height:1.2}.stat span{display:block;font-size:.68rem;letter-spacing:.07em;line-height:1.5;margin-top:.35rem;overflow-wrap:normal}.detail-data dl>div{display:grid;grid-template-columns:minmax(135px,.8fr) minmax(0,1.2fr);gap:1rem;padding:1rem 0;font-size:.92rem;line-height:1.55}.detail-data dt{min-width:0}.detail-data dd{min-width:0;text-align:left;overflow-wrap:break-word}.detail-data dd a{line-height:1.5;display:inline}.detail-data>p{font-size:.77rem;line-height:1.65}.plan-hero-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.25rem;width:100%;line-height:1.6}.plan-hero-specs span:not(:last-child){border:0;padding:0}.drawing-tabs button{line-height:1.45}.lower-level-callout{margin:0 var(--gutter) 4rem;padding:2.5rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem;background:#e3eadc}.lower-level-callout h2{font-size:clamp(2.2rem,3.5vw,3.8rem)}.lower-level-callout p:not(.kicker){line-height:1.7;color:var(--mute)}.lower-level-callout .line-link{margin-top:1.1rem}.lower-level-callout .kicker{margin-bottom:1rem}
.inventory-map-section{margin:0 0 4rem;scroll-margin-top:115px}.map-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}.map-heading .kicker{margin-bottom:.6rem}.map-heading h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.05}.map-heading p:not(.kicker){font-size:.9rem;color:var(--mute);margin-top:.75rem}.map-heading .button{font-size:.78rem;flex:none}.home-map{height:clamp(370px,43vw,560px);width:100%;position:relative;z-index:1;border:1px solid #c8d0c5;background:#e3e9e1;isolation:isolate;scroll-margin-top:115px}.home-map:focus-visible{outline-offset:4px}.map-loading{padding:2rem;text-align:center}.map-caption{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:.9rem;font-size:.78rem;color:var(--mute)}.map-legend{display:flex;gap:1.5rem;flex-wrap:wrap}.map-legend>span{display:flex;gap:.4rem;align-items:center}.map-dot{width:11px;height:11px;border-radius:50%;display:inline-block}.map-dot.ready{background:#497927}.map-dot.coming{background:#294337}.map-note{margin-top:.55rem;font-size:.72rem;color:var(--mute)}
.jech-map-icon{background:none;border:0}.house-pin{width:32px;height:34px;display:flex;align-items:center;justify-content:center;position:relative;color:white;background:#294337;border:2px solid #fff;border-radius:9px;box-shadow:0 2px 7px #0005}.house-pin.ready{background:#497927}.house-pin svg{width:20px;height:20px}.house-pin b{position:absolute;right:-9px;top:-9px;background:#172b1e;color:#fff;border:1px solid white;border-radius:50%;font:700 11px/19px Arial,sans-serif;min-width:20px;text-align:center}.house-pin:after{content:'';position:absolute;width:7px;height:7px;background:inherit;border-right:2px solid white;border-bottom:2px solid white;bottom:-5px;transform:rotate(45deg)}
.home-map .leaflet-popup-content{margin:15px;min-width:220px;max-width:270px;font-family:'DM Sans',Arial,sans-serif}.map-home+.map-home{border-top:1px solid #d6ddd2;padding-top:1rem;margin-top:1rem}.map-home img{width:100%;height:125px;object-fit:cover;border-radius:3px;margin-bottom:.8rem}.map-home h3{font-family:var(--font-display);font-size:1.55rem;line-height:1.15;letter-spacing:-.015em;margin:.2rem 0 .45rem}.map-home p{margin:.3rem 0;line-height:1.45;font-size:.78rem}.map-home .map-home-status{font-size:.65rem;letter-spacing:.04em;text-transform:uppercase;color:#436d48}.map-home a{display:inline-block;color:#234d2f;font-size:.8rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;padding:.4rem 0;margin-right:1rem}.home-map .leaflet-popup-content-wrapper{max-height:380px;overflow:auto}.home-map .leaflet-container a.leaflet-popup-close-button{color:#172b1e}.home-map .leaflet-control-attribution a{color:#24573a}.map-error{padding:2rem;text-align:center;max-width:40rem;margin:auto}.map-error a{text-decoration:underline}
@media(max-width:1200px){
 .header-inner{height:76px;gap:1rem}.menu-button{display:block;border:0;background:none;color:var(--ink)!important;padding:12px;z-index:3}.menu-button span{display:block;width:27px;height:2px;background:currentColor;margin:6px 0}.primary-nav,.is-home .primary-nav{display:flex;position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:1rem var(--gutter) 1.5rem;color:var(--ink)!important;background:#fffefa;visibility:hidden;opacity:0;transform:translate3d(0,-24px,0);border:1px solid var(--line);box-shadow:0 20px 40px #14262725;max-height:calc(100dvh - 105px);overflow:auto}.primary-nav.open{visibility:visible}.primary-nav>a,.primary-nav>a[aria-current=page]{font-size:.96rem;padding:.68rem 0;border-bottom:1px solid var(--line);margin:0;line-height:1.5}.primary-nav>a[aria-current=page]:after{display:none}.primary-nav .nav-action{margin:1rem 0 0;text-align:center;padding:.8rem}.menu-scrim{display:block;position:fixed;inset:0;z-index:99;border:0;background:#09180e61;opacity:0;pointer-events:none;backdrop-filter:blur(2px)}.menu-scrim.open{pointer-events:auto}body.menu-open{overflow:hidden}
}
@media(max-width:900px){.detail-info{grid-template-columns:1fr;gap:2.5rem}.detail-actions{flex-direction:row;flex-wrap:wrap}.inventory-callout{flex-wrap:wrap;gap:1rem}.inventory-callout>.line-link{margin-left:auto}.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar label:first-child,.filter-bar label:nth-of-type(4){grid-column:auto}.filter-clear{justify-self:start}.map-heading{display:block}.map-heading .button{margin-top:1rem}.lower-level-callout{grid-template-columns:1fr;gap:1.5rem}.filter-bar.plan-filter{grid-template-columns:1fr auto}.plan-filter .lower-level-filter{grid-column:1;grid-row:2}.plan-filter .filter-clear{grid-column:2;grid-row:2}}
@media(max-width:600px){.header-inner{height:66px}.primary-nav,.is-home .primary-nav{top:66px}.brand-ribbon{padding:.8rem 1rem}.brand-tagline{font-size:1.24rem}.brand-tagline span,.brand-tagline em{display:inline-block}.hero-guide.brand-tagline{font-size:1.65rem;max-width:24rem}.inventory-callout{display:block;padding:1.3rem var(--gutter)}.inventory-callout p{font-size:1.7rem}.inventory-callout-actions{align-items:stretch;margin:1rem 0 .85rem}.inventory-callout .button{width:100%;white-space:normal;padding:1rem;justify-content:space-between}.inventory-callout small{text-align:center}.inventory-callout>.line-link{font-size:.82rem}.filter-bar{grid-template-columns:1fr 1fr;gap:.85rem}.filter-bar>label:first-child{grid-column:1/-1}.filter-bar label:nth-of-type(4){grid-column:1/-1}.filter-bar.plan-filter{grid-template-columns:1fr auto}.filter-bar.plan-filter .lower-level-filter{grid-column:1;grid-row:2;font-size:.8rem;gap:.5rem}.filter-bar.plan-filter .filter-clear{grid-column:2;grid-row:2}.detail-info{padding-top:3.5rem;padding-bottom:3.5rem}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.stat strong{font-size:2.2rem}.detail-data dl>div{grid-template-columns:minmax(100px,.8fr) minmax(0,1.2fr);gap:.8rem;font-size:.86rem}.detail-actions{display:grid;grid-template-columns:1fr;width:100%}.detail-actions .button{width:100%}.map-caption{display:block}.map-caption>p{margin-top:.5rem}.map-legend{gap:1rem}.map-heading h2{font-size:2.7rem}.map-note{line-height:1.6}.lower-level-callout{padding:1.6rem;margin-bottom:3rem}.plan-hero-specs{font-size:.74rem;gap:.6rem 1rem}.drawing-tabs button{white-space:normal;min-width:125px}.home-map{height:400px}.inventory-map-section{margin-bottom:3rem}}
/* Map discovery controls and a linked list of homes inside the current viewport. */
.map-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin-bottom:1rem}.map-toolbar .button{min-height:46px;font-size:.78rem;padding:.65rem 1rem;gap:.7rem;background:#fffefa}.map-toolbar .button span{font-size:1.3rem;line-height:1}.map-toolbar .button:hover{background:#243c2b;color:#fff;transform:none}.map-toolbar .button:disabled{opacity:.4;cursor:default;transform:none}.map-toolbar p{margin-left:auto;max-width:23rem;font-size:.76rem;color:var(--mute);line-height:1.5}.map-explorer{display:grid;grid-template-columns:minmax(0,1fr) 315px;align-items:stretch;border:1px solid var(--line);background:#fffefa}.map-explorer .home-map{height:580px;border:0;cursor:grab}.map-explorer .home-map.leaflet-dragging{cursor:grabbing}.map-results-panel{height:580px;min-width:0;display:flex;flex-direction:column;border-left:1px solid var(--line);overflow:hidden}.map-results-heading{padding:1.15rem;border-bottom:1px solid var(--line);flex:none;background:#edf1e9}.map-results-heading h3{font-size:1.65rem;line-height:1.15;letter-spacing:-.025em}.map-results-heading p{font-size:.74rem;color:var(--mute);margin-top:.4rem}.map-results{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0}.map-result{padding:.85rem;border-bottom:1px solid var(--line)}.map-result-select{display:flex;align-items:start;gap:.7rem;text-align:left;width:100%;padding:.4rem;border:1px solid transparent;background:transparent;color:var(--ink);border-radius:3px;line-height:1.4}.map-result-select:hover,.map-result-select[aria-pressed=true]{background:#e6eddf;border-color:#719054}.map-result-select img{width:86px;height:90px;object-fit:cover;flex:none}.map-result-copy{display:flex;flex-direction:column;gap:.25rem;min-width:0}.map-result-copy strong{font-family:var(--font-display);font-size:1.2rem;font-weight:400;line-height:1.15}.map-result-copy>span{font-size:.73rem}.map-result-copy .map-result-status{font-size:.59rem;text-transform:uppercase;letter-spacing:.025em;color:#436d48}.map-result-copy .map-result-price{font-weight:600;font-size:.74rem}.map-result-details{display:inline-block;padding:.5rem .4rem .2rem;margin-top:.2rem;color:#365e3d;font-size:.73rem;text-decoration:underline;text-underline-offset:3px}.map-results-empty{padding:1.5rem;font-size:.88rem;line-height:1.65;color:var(--mute)}
@media(max-width:1050px){.map-explorer{grid-template-columns:minmax(0,1fr) 275px}.map-result-select img{width:68px;height:78px}.map-toolbar p{margin-left:0;max-width:none;flex-basis:100%;margin-top:.3rem}.map-results-heading h3{font-size:1.45rem}}
@media(max-width:760px){.map-explorer{grid-template-columns:1fr}.map-explorer .home-map{height:430px}.map-results-panel{height:310px;border-left:0;border-top:1px solid var(--line)}.map-results-heading{padding:.85rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.map-results-heading h3{font-size:1.4rem}.map-results-heading p{margin:0;flex:none;font-size:.68rem}.map-result{padding:.6rem .8rem}.map-result-select img{width:85px;height:85px}.map-result-copy strong{font-size:1.4rem}.map-result-details{margin-left:.4rem}.map-toolbar .button{flex:1;padding:.65rem .6rem}.map-toolbar [data-map-reset]{flex-basis:100%}.map-heading h2{font-size:2.7rem}}
