/* v14: a short introduction, visible work, optional depth. */
body[data-page="home"] .editorial-hero-layout { align-items: center; }
body[data-page="home"] .editorial-hero .hero-eyebrow { margin-bottom: 20px; }
body[data-page="home"] .editorial-cover figcaption { bottom: 86px; }
body[data-page="home"] .editorial-cover figcaption > span { font-size: 13px; line-height: 1.5; }
body[data-page="home"] .editorial-intro { max-width: 580px; }
body[data-page="home"] .editorial-intro > p { text-wrap: balance; }

.home-proof-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
  border-top: 1px solid var(--line);
  margin-top: 36px;
  padding-block: 25px 30px;
}
.home-network { display: flex; align-items: center; gap: 22px; max-width: 610px; }
.home-network > strong { flex-shrink: 0; color: var(--ink); font-size: 42px; line-height: 1; letter-spacing: -.05em; }
.home-network > strong > span { color: #7fa23e; }
.home-network > span { color: #53624a; font-size: 15px; line-height: 1.6; text-wrap: balance; }
.home-platform { flex-shrink: 0; display: flex; flex-direction: column; gap: 5px; padding-block: 6px; }
.home-platform > span { color: #53624a; font-size: 11px; letter-spacing: .04em; }
.home-platform > strong { display: flex; gap: 23px; align-items: center; font-size: 19px; font-weight: 500; }
.home-platform:hover > strong { text-decoration: underline; text-underline-offset: 5px; }

body[data-page="home"] .section-heading h2,
body[data-page="home"] .latest-heading-row h2 { font-size: clamp(36px, 4vw, 58px); line-height: 1.2; }
body[data-page="home"] .expertise { padding-block: 50px; }
body[data-page="home"] .expertise .section-topline,
body[data-page="home"] .work .section-topline { border: 0; padding-bottom: 0; }
body[data-page="home"] .expertise .section-heading,
body[data-page="home"] .work .section-heading { margin-block: 0 32px; }
body[data-page="home"] #service-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
body[data-page="home"] .service-step--compact { display: block; padding-block: 26px 0; border: 0; }
.service-step--compact .service-number { display: block; padding: 0; margin-bottom: 18px; }
body[data-page="home"] .service-step--compact h3 { font-size: 24px; line-height: 1.35; letter-spacing: -.025em; }
body[data-page="home"] .service-step--compact .service-summary { font-size: 16px; line-height: 1.65; color: #c3ccba; margin-top: 13px; }
.expertise-more { display: flex; justify-content: flex-end; margin-top: 26px; }
.expertise-more .inline-arrow { min-height: 44px; color: var(--paper); border-color: #77836a; font-size: 15px; }
.expertise-more .inline-arrow:hover { color: var(--lime); }

/* Case summaries keep one supporting sentence; the full story opens on demand. */
body[data-page="home"] .work-card .case-button > .case-image { grid-row: 1 / span 4; }
body[data-page="home"] .work .case-labels { margin: 0; }
body[data-page="home"] .work .case-summary { font-size: 18px; line-height: 1.65; }
body[data-page="home"] .work .case-proof { padding-top: 13px; margin-top: 8px; }
body[data-page="home"] .work .case-proof strong { font-size: 30px; }

/* Equal, concise activity rows; source links and films stay in their detail views. */
body[data-page="home"] .latest-heading-row { margin-bottom: 28px; }
body[data-page="home"] .activity-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 44px; }
body[data-page="home"] .activity-card,
body[data-page="home"] .activity-featured {
  grid-column: auto;
  grid-template-columns: 116px minmax(0, 1fr);
  grid-template-areas: "image meta" "image title" "image read";
  grid-template-rows: auto auto 1fr;
  gap: 10px 22px;
  align-content: start;
  padding-block: 24px 0;
}
body[data-page="home"] .activity-card-copy > h3 { max-width: none; font-size: 25px; line-height: 1.35; }
body[data-page="home"] .activity-read { align-self: end; font-size: 15px; gap: 18px; }

/* Social access belongs with the contact invitation, without another long pitch. */
body[data-page="home"] .contact-social { margin-top: 45px; padding-top: 25px; border-top: 1px solid #ffffff30; }
body[data-page="home"] .contact-social-heading { margin: 0; font-size: 13px; line-height: 1.6; letter-spacing: .035em; font-weight: 400; color: #bac5ae; }
body[data-page="home"] .contact-social .channel-links { margin-top: 16px; gap: 28px; }
body[data-page="home"] .contact-social .channel-link-row { padding-top: 12px; border: 0; }
body[data-page="home"] .contact-social .channel-link-name h3 { font-size: 20px; color: var(--paper); }
body[data-page="home"] .contact-social .channel-link-name p { color: #b8c4ac; font-size: 13px; margin-top: 6px; }
body[data-page="home"] .contact-social .channel-link-actions { margin-top: 8px; }
body[data-page="home"] .contact-social .channel-link { color: var(--paper); border-color: #7e8b70; min-height: 44px; font-size: 15px; }
body[data-page="home"] .contact-social .channel-link:hover { color: var(--lime); }

/* This requested two-line signature is always the last visible footer row. */
body[data-page] .site-footer .footer-legal {
  order: 10;
  flex: 0 0 100%;
  display: flex;
  flex-direction: column;
  gap: 4px;
  border-top: 1px solid var(--line);
  padding-top: 24px;
  margin-top: 2px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--ink);
}
.footer-legal .footer-copyright { white-space: pre-wrap; color: #5b6651; }
body[data-page] .site-footer .footer-identity strong { font-size: 14px; }

@media (max-width: 1000px) {
  body[data-page="home"] #service-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-page="home"] .activity-grid { column-gap: 28px; }
  body[data-page="home"] .activity-card,
  body[data-page="home"] .activity-featured { grid-template-columns: 88px minmax(0, 1fr); gap: 10px 18px; }
  body[data-page="home"] .activity-card-copy > h3 { font-size: 23px; }
}

@media (max-width: 760px) {
  body[data-page="home"] .editorial-hero .hero-eyebrow { margin-bottom: 16px; }
  body[data-page="home"] .editorial-cover figcaption { bottom: 82px; }
  body[data-page="home"] .editorial-cover figcaption > span { font-size: 12px; }
  .home-proof-strip { display: block; margin-top: 25px; padding-block: 22px 26px; }
  .home-network { gap: 18px; }
  .home-network > strong { font-size: 38px; }
  .home-network > span { font-size: 14px; line-height: 1.6; }
  .home-platform { flex-direction: row; justify-content: space-between; align-items: center; gap: 16px; border-top: 1px solid var(--line); margin-top: 20px; padding-top: 17px; }
  .home-platform > span { font-size: 11px; max-width: 35%; }
  .home-platform > strong { font-size: 17px; gap: 12px; }
  body[data-page="home"] .expertise { padding-block: 39px 36px; }
  body[data-page="home"] .section-heading h2,
  body[data-page="home"] .latest-heading-row h2 { font-size: 34px; line-height: 1.3; }
  body[data-page="home"] #service-list { grid-template-columns: minmax(0, 1fr); gap: 0; }
  body[data-page="home"] .service-step--compact { display: grid; grid-template-columns: 25px minmax(0, 1fr); gap: 7px 14px; padding-block: 22px; border-bottom: 1px solid #ffffff26; }
  .service-step--compact .service-number { margin: 0; padding-top: 6px; grid-column: 1; grid-row: 1 / span 2; }
  body[data-page="home"] .service-step--compact h3 { grid-column: 2; font-size: 24px; }
  body[data-page="home"] .service-step--compact .service-summary { grid-column: 2; margin: 0; font-size: 16px; }
  .expertise-more { margin-top: 15px; }
  body[data-page="home"] .work .case-labels { margin-top: 18px; margin-bottom: 12px; }
  body[data-page="home"] .work .case-summary { font-size: 17px; }
  body[data-page="home"] .work .case-proof { margin-top: 18px; }
  body[data-page="home"] .activity-grid { grid-template-columns: minmax(0, 1fr); row-gap: 27px; }
  body[data-page="home"] .activity-card,
  body[data-page="home"] .activity-featured { grid-template-columns: 94px minmax(0, 1fr); gap: 8px 18px; padding-top: 23px; }
  body[data-page="home"] .activity-card-copy > h3 { font-size: 24px; }
  body[data-page="home"] .contact-social { margin-top: 32px; }
  body[data-page="home"] .contact-social .channel-links { gap: 18px; }
  body[data-page="home"] .contact-social .channel-link-name h3 { font-size: 18px; }
  body[data-page="home"] .contact-social .channel-link { font-size: 14px; }
  body[data-page] .site-footer .footer-legal { padding-top: 21px; font-size: 13px; }
}
