/* nb.css — the New Builds search (/new-builds.html#nb-search, Oct 21–22, 2026): its box, one card for every builder
   partner's home, lot or designed home, and the "More new homes on the MLS®" section that closes a builder page (New Builds,
   the Rohit hub, the Vita page). Served from /new-builds/ (copied there at every deploy by scripts/build-new-builds-index.mjs).
   Self-contained colours (the Vita page has no vision.css): the brand's olive, gold and cream; dark is the site default
   (html.sar-dark), light follows the visitor's toggle. Phone first; 44 px targets; on a computer every row shares the page's
   one column (--nb-maxw, the same edges as vision.css's --maxw). */
:root{
  --nb-bg:#EFEDE5; --nb-card:#FBFAF4; --nb-ink:#26231A; --nb-ink2:#4A4536; --nb-ink3:#605A45; --nb-line:rgba(52,47,28,.13); --nb-line2:rgba(52,47,28,.24);
  --nb-gold:#6B6142; --nb-fill:#544E2E; --nb-fill-ink:#F7F5EE; --nb-chip:#E6E2D5; --nb-badge:#544E2E; --nb-badge-ink:#F7F5EE; --nb-mls:#2F4A5A;
  --nb-amber:#6B4E12; --nb-amber-bg:#F2E8CF;
  --nb-serif:Spectral,'Spectral Fallback',Georgia,'Times New Roman',serif; --nb-sans:Jost,'Jost Fallback',system-ui,-apple-system,'Segoe UI',sans-serif;
  --nb-pad:var(--col-pad); --nb-maxw:var(--col-max);   /* the site's one column (assets/theme.css, Oct 25) */
}
html.sar-dark{
  --nb-bg:#0B0A07; --nb-card:#17160F; --nb-ink:#EFECE3; --nb-ink2:rgba(239,236,227,.78); --nb-ink3:rgba(239,236,227,.6); --nb-line:rgba(232,228,214,.10); --nb-line2:rgba(232,228,214,.22);
  --nb-gold:#CFC4A0; --nb-fill:#C9BE9A; --nb-fill-ink:#0B0A07; --nb-chip:#1F1E15; --nb-badge:#B3AA8D; --nb-badge-ink:#100F0A; --nb-mls:#A9C4D2;
  --nb-amber:#E9BC72; --nb-amber-bg:rgba(233,188,114,.14);
}

/* ---- the search (New Builds): the box, what was understood, the goals ---- */
.nbs{max-width:var(--nb-maxw);margin:0 auto;padding:clamp(48px,9vh,96px) var(--nb-pad) 0;box-sizing:border-box;color:var(--nb-ink);font-family:var(--nb-sans);}
.nbs-eyebrow{margin:0 0 14px;font:500 clamp(10px,3vw,12px)/1.3 var(--nb-sans);letter-spacing:.36em;text-transform:uppercase;color:var(--nb-gold);}
.nbs h2{margin:0;font:300 clamp(32px,7vw,60px)/1.04 var(--nb-serif);color:var(--nb-ink);letter-spacing:-.01em;}
.nbs h2 em{font-style:italic;color:var(--nb-gold);}
.nbs-live{display:flex;align-items:flex-start;gap:10px;margin:16px 0 22px;font:400 13.5px/1.5 var(--nb-sans);color:var(--nb-ink2);max-width:80ch;}
.nbs-live b{color:var(--nb-ink);font-weight:500;}
.nbs-live::before{content:'';width:8px;height:8px;margin-top:6px;border-radius:50%;background:#7FA984;flex:none;}
.nbs-box{max-width:760px;display:flex;align-items:center;gap:12px;min-height:60px;padding:0 8px 0 20px;border-radius:20px;background:var(--nb-card);border:1px solid var(--nb-line2);box-sizing:border-box;cursor:text;}
.nbs-box:focus-within{border-color:var(--nb-gold);box-shadow:0 0 0 4px color-mix(in srgb,var(--nb-gold) 18%,transparent);}
.nbs-box>svg{width:20px;height:20px;flex:none;fill:none;stroke:var(--nb-gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.nbs-box input{flex:1;min-width:0;border:0!important;outline:0;background:transparent!important;color:var(--nb-ink)!important;font:400 16.5px/1.3 var(--nb-sans);padding:12px 0!important;-webkit-appearance:none;appearance:none;border-radius:0!important;box-shadow:none!important;}
.nbs-box input::placeholder{color:var(--nb-ink3);opacity:1;}
.nbs-box input::-webkit-search-cancel-button{display:none;}
.nbs-go{flex:none;width:46px;height:46px;border-radius:14px;border:0;background:var(--nb-fill);color:var(--nb-fill-ink);display:flex;align-items:center;justify-content:center;cursor:pointer;}
.nbs-go svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.nbs-out{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;max-width:760px;}
.nbs-out:empty{display:none;}
.nbs-out .got{font-size:12.5px;color:var(--nb-ink3);margin-right:2px;}
.nbs-out .res{font-size:13px;color:var(--nb-ink2);margin-left:4px;}
.nbs-out .res b{color:var(--nb-ink);font-weight:500;}
.nbs-out .res a{color:var(--nb-gold);}
.nbs-pill{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 8px 0 14px;border-radius:999px;background:var(--nb-chip);border:1px solid var(--nb-line);font:400 13.5px/1.2 var(--nb-sans);color:var(--nb-ink);cursor:pointer;}
.nbs-pill i{font-style:normal;opacity:.6;font-size:16px;line-height:1;padding:0 4px;}
.nbs-notes{flex-basis:100%;list-style:none;margin:4px 0 2px;padding:0;display:grid;gap:5px;}
.nbs-notes li{position:relative;padding-left:15px;font-size:13.5px;line-height:1.45;color:var(--nb-ink2);overflow-wrap:anywhere;}
.nbs-notes li::before{content:'';position:absolute;left:2px;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--nb-gold);}
.nbs-goals{display:flex;flex-wrap:wrap;gap:8px;max-width:760px;margin:14px 0 0;}
.nbs-goals[hidden]{display:none;}
.nbs-goal{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 7px 0 15px;border-radius:999px;border:1px solid var(--nb-line2);background:transparent;font:400 14px/1.2 var(--nb-sans);color:var(--nb-ink);cursor:pointer;text-align:left;}
.nbs-goal:hover{border-color:var(--nb-gold);}
.nbs-goal .n{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 6px;border-radius:999px;background:var(--nb-chip);font-size:12.5px;color:var(--nb-ink2);}
@media (max-width:640px){.nbs-goals .nbs-goal:nth-child(n+5){display:none;}.nbs-goal{font-size:13.5px;}}
.nbs-fine{margin:18px 0 0;font:400 11.5px/1.7 var(--nb-sans);color:var(--nb-ink3);max-width:110ch;}
/* New Builds' own sections run the page's full width with its 24–64 px gutter (no centred column): the search and the MLS®
   section there keep exactly those edges */
.nb-wide{max-width:none!important;padding-left:var(--col-edge)!important;padding-right:var(--col-edge)!important;}
.nbs .nbs-res{max-width:none;padding:0;margin-top:clamp(30px,5vh,48px);}

/* ---- the results ---- */
.nbs-res{max-width:var(--nb-maxw);margin:clamp(26px,5vh,48px) auto 0;padding:0 var(--nb-pad);box-sizing:border-box;}
.nbs-res-h{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 16px;margin:0 0 6px;}
.nbs-res-h h2,.nbs-res-h h3{font:400 clamp(26px,6vw,38px)/1.1 var(--nb-serif);margin:0;color:var(--nb-ink);}
.nbs-count{font:400 13px/1.4 var(--nb-sans);color:var(--nb-ink2);margin:6px 0 0;}
.nbs-count b{color:var(--nb-ink);font-weight:500;}
.nbs-sort{display:inline-flex;align-items:center;gap:8px;font:400 12.5px/1 var(--nb-sans);color:var(--nb-ink3);}
.nbs-sort select{min-height:44px;padding:0 34px 0 14px;border-radius:12px;border:1px solid var(--nb-line2);background:var(--nb-card);color:var(--nb-ink);font:400 14px/1 var(--nb-sans);}
.nbs-note{margin:10px 0 0;padding:12px 14px;border-radius:12px;background:var(--nb-amber-bg);color:var(--nb-ink);font:400 13px/1.55 var(--nb-sans);}
.nbs-src{margin:8px 0 0;font:400 12px/1.6 var(--nb-sans);color:var(--nb-ink3);}

/* ---- one card for every builder ---- */
.nb-grid{display:grid;grid-template-columns:1fr;gap:16px;margin:16px 0 0;}
@media (min-width:680px){.nb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}}
@media (min-width:1100px){.nb-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}}
@media (min-width:1680px){.nb-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
.nbc{display:flex;flex-direction:column;min-width:0;background:var(--nb-card);border:1px solid var(--nb-line);border-radius:18px;overflow:hidden;color:var(--nb-ink);}
.nbc-media{position:relative;display:block;aspect-ratio:3/2;background:var(--nb-chip);overflow:hidden;}
.nbc-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.nbc-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:300 24px/1.2 var(--nb-serif);color:var(--nb-ink3);padding:20px;text-align:center;}
.nbc-flag{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:999px;background:var(--nb-badge);color:var(--nb-badge-ink);font:500 10px/1 var(--nb-sans);letter-spacing:.16em;text-transform:uppercase;}
.nbc-flag.mls{background:var(--nb-mls);color:#0B0A07;}
html:not(.sar-dark) .nbc-flag.mls{color:#F7F5EE;}
.nbc-ex{position:absolute;left:12px;bottom:10px;padding:5px 9px;border-radius:999px;background:rgba(11,10,7,.72);color:#F4F2EB;font:500 9.5px/1.2 var(--nb-sans);letter-spacing:.12em;text-transform:uppercase;}
.nbc-cond{position:absolute;top:12px;right:12px;padding:6px 10px;border-radius:999px;background:var(--nb-amber-bg);color:var(--nb-amber);font:500 10px/1 var(--nb-sans);letter-spacing:.12em;text-transform:uppercase;}
html.sar-dark .nbc-cond{background:#2A2312;}
.nbc-body{display:flex;flex-direction:column;gap:5px;padding:16px 18px 18px;min-width:0;flex:1;}
.nbc-kind{margin:0;font:500 10.5px/1.3 var(--nb-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--nb-ink3);}
.nbc-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;}
.nbc-price{font:400 24px/1.15 var(--nb-serif);color:var(--nb-ink);}
.nbc-pay{font:400 12.5px/1.2 var(--nb-sans);color:var(--nb-gold);}
.nbc-pay b{font-weight:500;}
.nbc-addr{margin:2px 0 0;font:400 17px/1.3 var(--nb-serif);}
.nbc-addr a{color:inherit;text-decoration:none;display:inline-block;min-height:24px;}
.nbc-addr a::after{content:'';position:absolute;inset:0;} /* the whole card opens the home's own page */
.nbc{position:relative;}
.nbc a:focus-visible{outline:2px solid var(--nb-gold);outline-offset:3px;border-radius:6px;}
.nbc-sub,.nbc-facts,.nbc-why,.nbc-move,.nbc-more,.nbc-court{margin:0;font:400 13px/1.5 var(--nb-sans);color:var(--nb-ink2);overflow-wrap:anywhere;}
.nbc-facts{display:flex;flex-wrap:wrap;gap:2px 12px;color:var(--nb-ink);}
.nbc-facts .m{color:var(--nb-ink3);}
.nbc-why{color:var(--nb-gold);font-weight:500;}
.nbc-move{margin-top:auto;padding-top:8px;color:var(--nb-ink3);font-size:12.5px;}
.nbc-more{font-size:12.5px;color:var(--nb-ink3);}
.nbc-court{font-size:11.5px;color:var(--nb-ink3);line-height:1.55;padding-top:8px;border-top:1px solid var(--nb-line);margin-top:auto;}
.nb-more:empty{display:none;}
.nbs,.mls-more,.nbs-res{scroll-margin-top:84px;} /* a link to them lands below the site's header */
.nb-more{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:24px 0 0;}
.nb-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid var(--nb-line2);background:transparent;color:var(--nb-ink);
  font:500 12px/1.3 var(--nb-sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;cursor:pointer;text-align:center;max-width:100%;}
.nb-btn:hover{border-color:var(--nb-gold);}
.nb-btn.fill{background:var(--nb-fill);color:var(--nb-fill-ink);border-color:transparent;}
html:not(.sar-dark) a.nb-btn.fill{color:var(--nb-fill-ink);}
.nb-empty{grid-column:1/-1;padding:30px 4px;text-align:center;color:var(--nb-ink2);font:400 14px/1.6 var(--nb-sans);}
.nb-empty b{display:block;font:400 22px/1.25 var(--nb-serif);color:var(--nb-ink);margin-bottom:8px;}
.nb-empty .nm-try{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0 0;}
.nb-try{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--nb-line2);background:var(--nb-chip);color:var(--nb-ink);font:400 13.5px/1.2 var(--nb-sans);cursor:pointer;}
.nb-try .n{font-size:12px;color:var(--nb-ink3);}

/* ---- More new homes on the MLS® (the end of every builder page) ---- */
.mls-more{max-width:var(--nb-maxw);margin:clamp(40px,8vh,80px) auto 0;padding:0 var(--nb-pad);box-sizing:border-box;color:var(--nb-ink);font-family:var(--nb-sans);}
.mls-more::before{content:"";display:block;border-top:1px solid var(--nb-line);margin:0 0 clamp(26px,4vh,40px);} /* the rule shares the content's edges */
.mls-more .mm-tag{margin:10px 0 0;font:500 10.5px/1.3 var(--nb-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--nb-gold);} /* the subline under the title (Fadi, Oct 23 / Oct 27): "New builds" */
.mls-more h2{margin:0;font:400 clamp(25px,6vw,38px)/1.12 var(--nb-serif);color:var(--nb-ink);letter-spacing:-.01em;}
.mls-more .mm-sub{margin:10px 0 0;max-width:72ch;font:400 14px/1.6 var(--nb-sans);color:var(--nb-ink2);}
.mls-more .mm-sub a{color:var(--nb-gold);}
.mls-more .mm-sub b{font-weight:500;color:var(--nb-ink);}
.mls-more .mm-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none;}
.mls-more .mm-chips li{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:var(--nb-chip);border:1px solid var(--nb-line);font-size:12.5px;color:var(--nb-ink);}
.mls-more .mm-stale{margin:14px 0 0;padding:12px 14px;border-radius:12px;border:1px solid var(--nb-line2);font:400 13.5px/1.55 var(--nb-sans);color:var(--nb-ink2);}
.mls-more .mm-stale b{font-weight:500;color:var(--nb-ink);}
.mls-more .mm-stale a{color:var(--nb-gold);}
.mls-more .mm-rae{margin:clamp(24px,4vh,36px) 0 0;padding:16px 0 4px;border-top:1px solid var(--nb-line);font:400 11px/1.75 var(--nb-sans);color:var(--nb-ink3);max-width:none;}
.mls-more .mm-rae p{margin:0 0 4px;}
.mls-more .mm-cap{margin:12px 0 0;font-size:13px;color:var(--nb-ink2);}
.mls-more .mm-all{color:var(--nb-gold);}
/* on a phone the six MLS® cards are one row you swipe (the end of a page stays short: the hub's length budget) */
@media (max-width:679px){
  .mls-more .nb-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:thin;}
  .mls-more .nb-grid>.nbc{scroll-snap-align:start;}
  .mls-more .nb-grid>.nb-empty{grid-column:auto;}
}
/* after a page's questions (the Rohit hub), their own bottom rule is the one line: no second rule, no empty band */
.faq + .mls-more{margin-top:28px;}
.faq + .mls-more::before{display:none;}
/* the Vita page's own sections are narrower (its .sec); the MLS® section keeps the page's one column there too */
body.vx .mls-more{max-width:var(--maxw,var(--col-max));}
