/* Editorial components. Legacy bundles import this single source of truth.
   Specificity follows their #main convention; only the components below match. */

/* Article previews: all prose stays visible, each row sizes independently. */
html body.ss18 main#main#main#main#main .loanHubGrid:has(> .loanHubItem > .ss18-card-photo):has(> .loanHubItem > .loanLearn) {
 display:grid!important;
 grid-auto-rows:auto!important; grid-template-rows:none!important;
 align-items:stretch!important; row-gap:24px!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) {
 display:flex!important; flex-direction:column!important;
 height:auto!important; min-height:0!important; max-height:none!important;
 min-width:0!important; padding:0!important; margin:0!important;
 align-self:stretch!important; box-sizing:border-box!important;
 border:3px solid var(--ss22-sage, #48533e)!important;
 border-radius:0!important; box-shadow:none!important; overflow:visible!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .final-static-answer {
 display:grid!important; grid-template-rows:auto auto auto!important; grid-template-columns:minmax(0,1fr)!important;
 flex:0 0 auto!important; gap:0!important;
 height:auto!important; min-height:0!important; max-height:none!important;
 padding:0!important; margin:0!important; align-self:stretch!important;
 width:100%!important; min-width:0!important; max-width:none!important; justify-self:stretch!important;
 justify-content:stretch!important; justify-items:stretch!important;
 border:0!important; border-top:2px solid var(--ss22-sage, #48533e)!important;
 overflow:visible!important; background:#fff!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .final-static-answer > .topic {
 display:block!important; height:auto!important; min-height:0!important; max-height:none!important;
 margin:0!important; padding:16px 20px 0!important; overflow:visible!important;
 text-align:center!important; box-sizing:border-box!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .final-static-answer > h2 {
 display:block!important; height:auto!important; min-height:0!important; max-height:none!important;
 margin:0!important; padding:10px 20px 16px!important; border:0!important;
 width:100%!important; max-width:none!important; justify-self:stretch!important;
 overflow:visible!important; -webkit-line-clamp:unset!important; line-clamp:unset!important;
 text-align:center!important; box-sizing:border-box!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .final-static-answer > .final-static-answer-copy {
 display:block!important; height:auto!important; min-height:0!important; max-height:none!important;
 flex:0 0 auto!important; margin:0!important; padding:14px 20px 16px!important;
 width:100%!important; min-width:0!important; max-width:none!important; justify-self:stretch!important;
 border:0!important; border-top:2px solid var(--ss22-sage, #48533e)!important;
 overflow:visible!important; -webkit-line-clamp:unset!important; line-clamp:unset!important;
 box-sizing:border-box!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .final-static-answer > .final-static-answer-copy p {
 display:block!important; height:auto!important; min-height:0!important; max-height:none!important;
 overflow:visible!important; -webkit-line-clamp:unset!important; line-clamp:unset!important;
}
/* Keep the site's existing supplementary mobile copy and desktop visibility. */
@media(min-width:821px) {
 html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .final-static-answer > .final-static-answer-copy p.blog-mobile-summary {
  display:none!important;
 }
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .loanLearn {
 display:flex!important; align-items:center!important; justify-content:center!important;
 flex:0 0 auto!important; margin: auto 0 0!important; padding:12px 20px!important;
 height:auto!important; min-height:52px!important; max-height:none!important;
 border:0!important; border-top:2px solid var(--ss22-sage, #48533e)!important;
 box-sizing:border-box!important; box-shadow:none!important;
 background:#fff!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .loanLearn a {
 border-bottom-color:var(--ss22-sage, #48533e)!important;
}
html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .loanLearn a:focus-visible {
 outline:2px solid var(--ss22-sage, #48533e)!important; outline-offset:4px!important;
}
/* Shared tracks align category/title areas as well as footer positions within
   each row. Excerpt tracks are intrinsic, never a fixed height or line clamp. */
@supports(grid-template-rows:subgrid) {
 html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) {
  display:grid!important; grid-template-rows:subgrid!important; grid-row:span 5!important; row-gap:0!important;
 }
 html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .final-static-answer {
  grid-template-rows:subgrid!important; grid-row:span 3!important; row-gap:0!important;
 }
 html body.ss18 main#main#main#main#main .loanHubGrid > .loanHubItem:has(> .ss18-card-photo):has(> .loanLearn) > .loanLearn {
  margin:0!important;
 }
}
@media(min-width:601px) and (max-width:950px) {
 html body.ss18 main#main#main#main#main .loanHubGrid:has(> .loanHubItem > .ss18-card-photo):has(> .loanHubItem > .loanLearn) {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
@media(max-width:600px) {
 html body.ss18 main#main#main#main#main .loanHubGrid:has(> .loanHubItem > .ss18-card-photo):has(> .loanHubItem > .loanLearn) {
  grid-template-columns:minmax(0,1fr)!important;
 }
}
/* The blog reveals longer existing supplementary prose at this breakpoint.
   A reading column avoids stretching a short neighbor beside that prose. */
@media(max-width:820px) {
 html body.ss18 main#main#main#main#main.blog-mobile-summaries .loanHubGrid:has(> .loanHubItem > .ss18-card-photo):has(> .loanHubItem > .loanLearn) {
  grid-template-columns:minmax(0,1fr)!important;
  width:min(620px,92vw)!important; max-width:620px!important; margin-left:auto!important; margin-right:auto!important;
 }
}

/* City information only: the hero, market figures, FAQ and search stay intact.
   Cream comes from the approved city palette (825bb3338725033021e1.css). */
html body.ss18 main#main#main#main.ss21-city[data-city-page] > .ss21-facts {
 background:#fff!important; padding:0 clamp(20px,4vw,56px) 48px!important;
}
html body.ss18 main#main#main#main.ss21-city[data-city-page] > .ss21-facts > .ss21-fact-grid {
 display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important;
 grid-auto-rows:auto!important; align-items:stretch!important;
 width:100%!important; max-width:1180px!important; margin:0 auto!important;
 gap:24px 28px!important;
}
html body.ss18 main#main#main#main.ss21-city[data-city-page] .ss21-fact-grid > .ss21-fact {
 display:grid!important; grid-template-rows:auto auto 1fr!important;
 align-content:start!important; gap:12px!important;
 height:auto!important; min-height:0!important; max-height:none!important; min-width:0!important;
 margin:0!important; padding:28px 30px 30px!important;
 border:0!important; border-top:2px solid var(--ss22-sage, #48533e)!important;
 box-sizing:border-box!important; background:#f7f3ed!important;
 box-shadow:none!important; border-radius:0!important; text-align:left!important;
}
html body.ss18 main#main#main#main.ss21-city[data-city-page] .ss21-fact-grid > .ss21-fact > span {
 display:block!important; height:auto!important; max-height:none!important;
 margin:0!important; padding:0!important; text-align:left!important;
 font:500 11px/1.5 Arial,Helvetica,sans-serif!important;
 letter-spacing:.14em!important; text-transform:uppercase!important;
 color:var(--ss22-sage, #48533e)!important;
}
html body.ss18 main#main#main#main.ss21-city[data-city-page] .ss21-fact-grid > .ss21-fact > h3 {
 margin:0!important; padding:0!important; min-height:0!important; max-height:none!important;
 align-self:start!important; text-align:left!important;
 font:400 clamp(24px,2.1vw,28px)/1.22 Georgia,'Times New Roman',serif!important;
 letter-spacing:-.015em!important; color:var(--ss22-sage, #48533e)!important;
}
html body.ss18 main#main#main#main.ss21-city[data-city-page] .ss21-fact-grid > .ss21-fact > p {
 margin:0!important; padding:0!important; max-width:none!important; min-width:0!important;
 align-self:start!important; text-align:left!important; text-indent:0!important;
 font:400 15px/1.75 Arial,Helvetica,sans-serif!important;
 color:var(--ss22-ink, #343c32)!important;
}
@media(max-width:700px) {
 html body.ss18 main#main#main#main.ss21-city[data-city-page] > .ss21-facts {
  padding:0 18px 36px!important;
 }
 html body.ss18 main#main#main#main.ss21-city[data-city-page] > .ss21-facts > .ss21-fact-grid {
  grid-template-columns:minmax(0,1fr)!important; gap:18px!important;
 }
 html body.ss18 main#main#main#main.ss21-city[data-city-page] .ss21-fact-grid > .ss21-fact {
  padding:24px 22px!important;
 }
}

/* Search region cards share the sage framing and edge-to-edge photography. */
html body.ss18 main#main#main#main#main.ss23-search .ss23-regions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;align-items:stretch!important;}
html body.ss18 main#main#main#main#main.ss23-search .v30-region-card{display:flex!important;flex-direction:column!important;min-width:0!important;height:auto!important;padding:0!important;margin:0!important;border:3px solid #48533e!important;border-radius:0!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important;text-decoration:none!important;}
html body.ss18 main#main#main#main#main.ss23-search .v30-region-media{display:block!important;position:relative!important;width:100%!important;aspect-ratio:3/2!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;overflow:hidden!important;background:none!important;}
html body.ss18 main#main#main#main#main.ss23-search .v30-region-media img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;object-fit:cover!important;object-position:center!important;border:0!important;}
html body.ss18 main#main#main#main#main.ss23-search .v30-region-media::before,html body.ss18 main#main#main#main#main.ss23-search .v30-region-media::after{content:none!important;}
html body.ss18 main#main#main#main#main.ss23-search .ss23-region-caption{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:8px!important;flex:1!important;padding:20px!important;margin:0!important;border-top:2px solid #48533e!important;background:#fff!important;}
@media(max-width:600px){html body.ss18 main#main#main#main#main.ss23-search .ss23-regions{grid-template-columns:minmax(0,1fr)!important;}}

/* Considerations reuses the editorial card palette, framing, and typography. */
html body.ss18 main#main#main#main#main .considerations-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;align-items:stretch;}
html body.ss18 main#main#main#main#main .consideration-card{grid-column:span 2;display:flex;flex-direction:column;min-width:0;margin:0;padding:0;border:3px solid #48533e;background:#fff;color:#343c32;text-decoration:none;box-shadow:none;transform:none;}
html body.ss18 main#main#main#main#main .consideration-card:nth-child(4){grid-column:2/span 2;}
html body.ss18 main#main#main#main#main .consideration-photo{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;}
html body.ss18 main#main#main#main#main .consideration-photo img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;padding:0!important;object-fit:cover!important;}
html body.ss18 main#main#main#main#main .consideration-card h2{margin:0;padding:18px 20px;border-top:2px solid #48533e;font:400 24px/1.35 Arial,sans-serif!important;text-align:center;color:#343c32;}
html body.ss18 main#main#main#main#main .consideration-card p{margin:0;padding:16px 20px;border-top:2px solid #48533e;font:400 16px/1.8 Arial,sans-serif;text-align:center;color:#343c32;}
html body.ss18 main#main#main#main#main .consideration-more{display:flex;justify-content:center;align-items:center;min-height:52px;margin-top:auto;padding:12px 20px;border-top:2px solid #48533e;font:500 12px/1.5 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#48533e;text-decoration:underline;text-underline-offset:5px;}
html body.ss18 main#main#main#main#main .consideration-card:hover{color:#343c32;background:#fff;box-shadow:none;transform:none;}
html body.ss18 main#main#main#main#main .consideration-card:focus-visible{outline:2px solid #48533e;outline-offset:4px;}
@media(min-width:601px) and (max-width:1100px){html body.ss18 main#main#main#main#main .considerations-grid{grid-template-columns:repeat(4,minmax(0,1fr));}html body.ss18 main#main#main#main#main .consideration-card:nth-child(4){grid-column:span 2;}html body.ss18 main#main#main#main#main .consideration-card:last-child{grid-column:2/span 2;}}
@media(max-width:600px){html body.ss18 main#main#main#main#main .considerations-grid{grid-template-columns:minmax(0,1fr);}html body.ss18 main#main#main#main#main .consideration-card,html body.ss18 main#main#main#main#main .consideration-card:nth-child(4){grid-column:auto;}}

/* Give Blog previews comfortable widths on tablets and smaller laptops. */
@media(min-width:601px) and (max-width:1199px){
 html body.ss18 main#main#main#main#main.blog-mobile-summaries .loanHubGrid:has(> .loanHubItem > .ss18-card-photo):has(> .loanHubItem > .loanLearn){grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;}
}
@media(max-width:600px){
 html body.ss18 main#main#main#main#main.blog-mobile-summaries .loanHubGrid:has(> .loanHubItem > .ss18-card-photo):has(> .loanHubItem > .loanLearn){grid-template-columns:minmax(0,1fr)!important;}
}

/* Keep the established landscape Life Changes photo frames with new 4:3 originals. */
html body.ss18 main#main#main#main#main.lifeChangesPage:has(img[src^="assets/images/life-changes/"]) .loanHubItem>.ss18-card-photo{position:relative!important;display:block!important;aspect-ratio:3/2!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important;}
html body.ss18 main#main#main#main#main.lifeChangesPage:has(img[src^="assets/images/life-changes/"]) .loanHubItem>.ss18-card-photo>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover!important;object-position:center!important;}

/* Keep the Selling portrait's head inside the established landscape frame. */
html body.ss18 main#main#main#main#main.considerations-page .consideration-card[href="seller-questions.html"] img{object-position:center top!important;}
/* Contact cards reuse the established editorial card component above the existing page. */
html body.ss18 main#main#main#main#main.final-contact .dd-contact-cards{width:100%;max-width:1448px;margin:0 auto;padding:40px 24px 24px;}
html body.ss18 main#main#main#main#main.final-contact .consideration-card h2{font-size:21px!important;}
html body.ss18 main#main#main#main#main.final-contact .consideration-photo img{object-position:center top!important;}
@media(min-width:601px) and (max-width:1100px){html body.ss18 main#main#main#main#main.final-contact .consideration-card:last-child{grid-column:2/span 2;}}
