
/* HomeCostBrief V7: topic hubs, article discovery, image SEO and ad-safe layout. */
.article-card__image{display:block;overflow:hidden;border-radius:14px 14px 0 0;background:#eef3f5;aspect-ratio:16/9}
.article-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease}
@media(hover:hover){.article-card:hover .article-card__image img{transform:scale(1.025)}}

.v7-hub-content{margin:2.25rem 0 0}
.hub-section-head{max-width:760px;margin-bottom:1.1rem}
.hub-section-head h2,.hub-explainer h2,.hub-faq h2,.all-guides-head h2{margin:.2rem 0 .65rem}
.hub-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:2.25rem}
.hub-path-card{display:flex;flex-direction:column;padding:1.25rem;text-decoration:none;color:inherit;min-height:210px}
.hub-path-card h3{margin:.25rem 0 .55rem;font-size:1.15rem}
.hub-path-card p{margin:0 0 1rem;color:var(--muted,#52616b)}
.hub-path-card .text-link{margin-top:auto;font-weight:700;color:var(--primary,#17655a)}
.hub-explainer-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:1.4rem;align-items:start;margin:1rem 0 2.25rem}
.hub-explainer{max-width:780px}
.hub-explainer p{font-size:1.03rem;line-height:1.75}
.hub-checklist{padding:1.25rem;position:sticky;top:92px}
.hub-checklist h2{font-size:1.18rem;margin-top:0}
.hub-checklist .button{margin-top:.75rem;width:100%;text-align:center}
.hub-faq{max-width:850px;margin:0 0 2.25rem}
.hub-faq details{border-top:1px solid #dfe7e8;padding:.9rem 0}
.hub-faq details:last-child{border-bottom:1px solid #dfe7e8}
.hub-faq summary{font-weight:750;cursor:pointer}
.hub-faq p{margin:.65rem 0 0;color:var(--muted,#52616b)}
.all-guides-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:0 0 1rem}
.all-guides-head a{font-weight:700}

.blog-controls{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,.75fr) auto;gap:.85rem;align-items:end;padding:1rem;margin-top:1.25rem}
.blog-controls label{display:block;font-weight:700;font-size:.86rem;margin-bottom:.35rem}
.blog-controls input,.blog-controls select{width:100%;min-height:46px;border:1px solid #cbd7d9;border-radius:10px;padding:.72rem .78rem;background:#fff;color:inherit;font:inherit}
.blog-controls .button{min-height:46px}
.blog-results{grid-column:1/-1;margin:0;color:var(--muted,#52616b);font-size:.9rem}
.article-card[hidden]{display:none!important}

.topic-context-box{display:grid;gap:.22rem;margin:1rem 0 1.65rem;padding:1rem 1.1rem;border-left:4px solid var(--primary,#17655a);background:#f2f8f7;border-radius:0 12px 12px 0}
.topic-context-box span{color:var(--muted,#52616b)}
.topic-context-box a{font-weight:700;width:max-content}
.research-method-note{padding:1.2rem 1.3rem;margin:2rem 0}
.research-method-note h2{font-size:1.2rem;margin:.2rem 0 .55rem}
.research-method-note p{font-size:.95rem}
.article-sequence-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:2rem 0}
.article-sequence-nav a{display:flex;flex-direction:column;gap:.25rem;padding:1rem;border:1px solid #dce5e6;border-radius:12px;text-decoration:none;background:#fff}
.article-sequence-nav span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#52616b)}
.article-sequence-nav strong{line-height:1.35}
.sequence-next{text-align:right}

.calculator-guide-copy{max-width:860px;margin:1.6rem 0 1.5rem}
.calculator-guide-copy p{line-height:1.7}
.home-topic-summary{padding-top:1rem}
.home-topic-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.home-topic-summary-grid p{margin:0;line-height:1.75}

.article-feature{aspect-ratio:16/9;overflow:hidden;background:#eef3f5}
.article-feature img{width:100%;height:100%;object-fit:cover}

@media(max-width:999px){
  .hub-path-grid{grid-template-columns:1fr 1fr}
  .hub-explainer-grid{grid-template-columns:1fr}
  .hub-checklist{position:static}
  .blog-controls{grid-template-columns:1fr 1fr}
  .blog-controls .button{width:100%}
}
@media(max-width:659px){
  .hub-path-grid,.blog-controls,.article-sequence-nav,.home-topic-summary-grid{grid-template-columns:1fr}
  .hub-path-card{min-height:0}
  .all-guides-head{align-items:start;flex-direction:column}
  .sequence-next{text-align:left}
  .blog-controls{padding:.9rem}
}
@media(prefers-reduced-motion:reduce){.article-card__image img{transition:none}}
