/* v22 Dave 11-01: Check Comps view. Sold = white bubble, purple number; Listed = purple bubble, white number (Dave). */
.cc-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html body.page .cc-search{max-width:44rem;flex:none;display:flex;margin:.4rem 0 .3rem;background:#fff}
html body.page .cc-search input{flex:1;min-width:0;padding:.7rem .85rem;font-size:1rem;background:#fff;color:#1d2a24;outline:0!important}
html body.page .cc-search input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}
html body.page .cc-search button{font-size:1rem;padding:0 1.1rem;border-radius:0!important}
.cc-suggest{list-style:none;margin:0 0 .4rem;padding:0;max-width:44rem;border:3px solid #512888;border-radius:14px;overflow:hidden;background:#fff}
.cc-suggest[hidden]{display:none!important}
.cc-suggest li+li{border-top:1px solid #e6def1}
html body.page .cc-suggest .cc-sug{display:block;width:100%;text-align:left;background:#fff!important;color:#1d2a24!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:.6rem .85rem;font:inherit;cursor:pointer;text-transform:none!important}
html body.page .cc-suggest .cc-sug:hover,html body.page .cc-suggest .cc-sug:focus-visible{background:#efe9f6!important;outline:0}
.cc-sug span{color:#5a6b62}
.cc-status{margin:.3rem 0;font-weight:600;color:#1d2a24;min-height:1.2em}
.cc-subject{margin:.6rem 0}
.cc-subject[hidden],.cc-intro[hidden],.cc-results[hidden],.cc-detail[hidden]{display:none!important}
.cc-subject h3{margin:0 0 .4rem;font-size:1.1rem}
.cc-facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.25rem 1rem}
.cc-facts small{color:#5a6b62}
.cc-none{color:#5a6b62;font-style:italic}
.cc-intro{margin:.5rem 0;color:#1d2a24}
.cc-results{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:start}
.cc-mapbox{position:sticky;top:.5rem}
.cc-map{height:30rem;border:3px solid #512888;border-radius:16px;overflow:hidden;background:#e5e3df}
.cc-key{list-style:none;margin:.5rem 0 0;padding:.5rem .7rem;display:flex;flex-wrap:wrap;gap:.4rem 1rem;border:3px solid #512888;border-radius:14px;background:#fff;font-size:.9rem}
.cc-key li{display:flex;align-items:center;gap:.4rem}
.cc-bub{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 5px;box-sizing:border-box;border-radius:999px;border:3px solid #512888;font:900 13px/1 system-ui,sans-serif;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.cc-pin-S .cc-bub,.cc-key-S,.cc-badge-S{background:#fff;color:#512888}
.cc-pin-L .cc-bub,.cc-key-L,.cc-badge-L{background:#512888;color:#fff}
.cc-pin{display:grid;place-items:center;background:transparent;border:0}
.cc-subj{display:inline-block;width:16px;height:16px;background:#1d2a24;border:3px solid #fff;box-shadow:0 0 0 3px #512888;transform:rotate(45deg)}
.cc-lists{display:grid;gap:1rem}
.cc-col h3{margin:0 0 .3rem;font-size:1.05rem;color:#3d1e66}
.cc-note{margin:0 0 .4rem;color:#5a6b62}
.cc-note:empty{display:none}
.cc-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.cc-item{border:3px solid #512888;border-radius:16px;padding:.6rem .8rem;background:#fff;position:relative}
.cc-item p,.cc-pop p{margin:0 0 .15rem}
.cc-l1{display:flex;align-items:center;gap:.5rem;font-size:1.02rem}
.cc-badge{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:999px;border:3px solid #512888;font:900 12px/1 system-ui,sans-serif;box-sizing:border-box}
.cc-l4{color:#5a6b62;font-size:.92rem}
html body.page .cc-more{margin-top:.3rem;background:#512888!important;color:#fff!important;border:2px solid #512888!important;border-radius:999px!important;padding:.35rem .9rem;font-weight:700;cursor:pointer}
.cc-avg{margin:.6rem 0 0;font-size:.85rem;color:#43544b;border-top:1px dashed #cbbbe3;padding-top:.45rem}
.cc-avg:empty{display:none}
.cc-pop{font-size:.9rem;min-width:200px}
.cc-popsrc{color:#5a6b62;font-size:.8rem}
.cc-detail{margin:.6rem 0}
.cc-dh{margin:.6rem 0 .3rem;font-size:20px}
.cc-dprice{font-size:20px;font-weight:700;margin:.2rem 0 .6rem}
.cc-dfacts{display:grid;grid-template-columns:max-content 1fr;gap:.25rem 1rem;margin:0 0 .8rem}
.cc-dfacts dt{color:#5a6b62}
.cc-dfacts dd{margin:0;font-weight:600}
.cc-courtesy{font-size:20px;font-weight:400;color:#1d2a24;margin:.4rem 0}   /* NEFMLS 13.2(F): firm + phone at least as large as the largest listing data (20px) */
html body.page .cc-back{background:#fff!important;color:#512888!important;border:3px solid #512888!important;border-radius:999px!important;padding:.4rem .9rem;font-weight:700;cursor:pointer}
@media (max-width:900px){.cc-results{grid-template-columns:1fr}.cc-mapbox{position:static}.cc-map{height:20rem}}
@media (max-width:600px){html body.page .cc-search button{padding:0 .7rem}.cc-facts{grid-template-columns:1fr}}
/* left-align the Check Comps content (band styles center text) */
.cc,.cc .cc-item,.cc .cc-subject,.cc .cc-intro,.cc .cc-status,.cc .cc-detail,.cc .cc-col h3,.cc .cc-avg,.cc .cc-note{text-align:left}
/* v22c Dave 11-01: TD Jones logo + Toni/Damorow photo as big as they fit at the top of the left menu (side by side, full rail width) */
html body.page.app[data-v="search"] .rail-brand{height:auto!important;min-height:0!important;padding:.35rem!important;gap:.3rem!important;flex-wrap:nowrap!important;align-items:center!important}
html body.page.app[data-v="search"] .rail-brand .brand-zoom-trigger{flex:1 1 0!important;width:auto!important;height:auto!important;max-height:none!important;min-width:0;padding:0!important}
html body.page.app[data-v="search"] .rail-brand img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;display:block}
/* v22c Dave 11-01: bios on the Contact page */
.ag-bios{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1rem;margin:.8rem 0;text-align:left}
.ag-bio h3{margin:0 0 .4rem;color:#3d1e66}
.ag-bio p{margin:0;line-height:1.55}
/* v22c Dave 11-01: Public Services Realty logo at the bottom of the left menu, at the TD Jones logo's old size (~95px wide) */
html body.page .rail-psr{display:flex;justify-content:center;padding:.5rem .3rem 2.6rem;list-style:none}
html body.page .rail-psr img{width:95px;height:auto;display:block}
@media (max-width:900px){html body.page .rail-psr{padding-bottom:1rem}}
/* v22c Dave 11-01: TD Jones logo the same size (height) as the Toni/Damorow photo: logo box gets ~1.43x the photo box's width (logo 1000x707, photo 1000x1013) */
html body.page.app[data-v="search"] .rail-brand .brand-zoom-trigger:has(.rail-logo){flex:1.43 1 0!important}
html body.page.app[data-v="search"] .rail-brand .brand-zoom-trigger:has(.rail-photo){flex:1 1 0!important}
html body.page .rail-psr .brand-zoom-trigger{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;cursor:zoom-in;width:95px}
html body.page .rail-psr .brand-zoom-trigger img{width:100%;height:auto;display:block}
/* v22c Dave 11-01 photo 500: Commercial Leases left the empty purple filter bar (.mapctl, 32px, title hidden) showing over the map and listings in Safari.
   sale/rent/newc/hoods/search already hide it (theme.css); add lease. */
html body.page.app[data-solo="lease"] .mapctl{display:none!important}
/* v22c Dave 11-01: purple "TD Jones Group" banners. Map: top center over the map (page chrome, not on a card). List: beside the Listing capture line.
   Detail: a strip ABOVE the detail bar, outside the listing body (Dallas 13.2(E)/(F): no branding inside a listing's photos/text). */
.tdj-banner{margin:0;background:#512888;color:#fff;font:800 1.05rem/1.2 system-ui,-apple-system,sans-serif;letter-spacing:.02em;text-align:center;border-radius:999px;padding:.4rem 1.1rem;white-space:nowrap}
.mapwrap::after{content:"TD Jones Group";position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:900;pointer-events:none;background:#512888;color:#fff;font:800 1.15rem/1.2 system-ui,-apple-system,sans-serif;letter-spacing:.02em;padding:.45rem 1.2rem;border-radius:999px;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.35);white-space:nowrap}
.cap-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}
.cap-row .snapdate{margin:0}
.tdj-banner-list{font-size:.95rem;padding:.3rem .9rem}
.tdj-banner-detail{border-radius:0;padding:.45rem 1rem;font-size:1.1rem}
@media (max-width:900px){.mapwrap::after{font-size:1.05rem;top:8px}}
/* v22c Dave 11-01: list banner centered over the middle home (3-column grid row above the cards, never on a card), and a gentle shimmer on the TD Jones Group banners */
.cap-row{display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem}
.cap-row .snapdate{grid-column:1;justify-self:start}
.cap-row .tdj-banner-list{grid-column:2;justify-self:center}
@keyframes tdjShimmer{0%{background-position:-160% 0}55%,100%{background-position:260% 0}}
.tdj-banner,.mapwrap::after{background-color:#512888;background-image:linear-gradient(100deg,rgba(255,255,255,0) 30%,rgba(255,255,255,.38) 50%,rgba(255,255,255,0) 70%);background-size:60% 100%;background-repeat:no-repeat;animation:tdjShimmer 3.2s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.tdj-banner,.mapwrap::after{animation:none}}
/* v22c Dave 11-01: wider tags. List: the width of the middle home's card (3-column grid, same gap as the cards). Map: almost the full map width. */
.cap-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:var(--cards-gap,8px)}
.cap-row .snapdate{grid-column:1/2;grid-row:1}
.cap-row .tdj-banner-list{grid-column:2/3;grid-row:1;justify-self:stretch;box-sizing:border-box;font-size:1.05rem}
.mapwrap::after{left:7%!important;right:7%;transform:none!important;text-align:center;font-size:1.35rem;padding:.55rem 1rem}
@media (max-width:900px){.mapwrap::after{font-size:1.15rem}}
@media (max-width:600px){.cap-row .tdj-banner-list{font-size:.8rem;padding:.3rem .25rem;letter-spacing:0}}
/* v23d Blake/Jarvis review 11-02 (via dj): (1) phone Filters: the price/rooms/type/deal popups ran off the right edge (absolute under a right-hand chip). Pin them to the screen width. */
@media (max-width:600px){html body.page .pop{position:fixed!important;left:8px!important;right:8px!important;top:auto!important;bottom:calc(52px + env(safe-area-inset-bottom,0px))!important;width:auto!important;min-width:0!important;max-width:none!important;z-index:1200;max-height:70vh;overflow:auto}}
/* (3) Buyer Index: theme.css `.page .tile{background:#fff}` beat `.tile.hero`'s purple gradient, leaving the #1 area's white name on white. Restore it; gauge text dark on the gauge's own white card. */
html body.page .tile.hero{background:linear-gradient(135deg,#512888,#6a3fa8)!important;color:#fff}
html body.page .tile.hero .tgauge{color:#1d2a24}
/* (5) phone cards: 3 columns made addresses ~120px wide. Two columns x three rows on phones, still six cards per page. */
@media (max-width:600px){html body.page.app[data-v="search"] [data-cards].cards,html body.page.app[data-v="search"][data-brand-six-fit] [data-cards].cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(min-content,1fr))!important}}
/* (1b) phone Filters: the top bar (.app-mbar, bottom edge ~97px) covered the top 6px of the Price chip; drop the filter chips below it. */
@media (max-width:600px){html body.page.app .tright .filters{padding-top:12px}}
/* v23e Dave 11-02 photo 507: Toni's and Damorow's bio boxes the SAME size (same text size/weight, same height, aligned tops) */
html body.page .ag-bios{align-items:stretch!important}
html body.page .ag-bios>.ag-bio{margin:0!important;align-self:stretch!important;box-sizing:border-box;height:auto!important;padding:1rem 1.1rem!important;font-size:1rem!important}
html body.page .ag-bios>.ag-bio h3{font-size:1.15rem!important;font-weight:800!important;margin:0 0 .5rem!important}
html body.page .ag-bios>.ag-bio p{font-size:1rem!important;font-weight:400!important;line-height:1.55!important;max-width:none!important;margin:0!important}
/* v23f Dallas A5 (61J2-10.025): licensed firm-name line by the PSR logo and in the footer */
html body.page .firm-line{display:block;margin:.35rem 0 0;font-size:.8rem;line-height:1.3;color:inherit;text-align:center}
html body.page .rail-psr{flex-direction:column;align-items:center}
