/* Daylight case study (templates/blog/case-study.twig). Loaded only on posts using
   the Case Study template, after the journal bundle (blog-modern.css) and VR Blocks, whose
   --daylight-journal-* roles and layout it builds on. Every value is a site token. */

.daylight-case__title { max-width: 26ch; }

.daylight-case__address {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--vr-space-1) var(--vr-space-3);
  margin: var(--vr-space-6) 0 0;
  color: var(--daylight-journal-muted);
  font-size: var(--vr-type-small);
}
.daylight-case__address strong { color: var(--daylight-journal-ink); font-weight: var(--vr-weight-strong); }

/* Result line: the sale, set as one sentence, then the ruled facts. */
.daylight-case__results { padding: clamp(var(--vr-space-8), 5vw, var(--vr-space-16)) var(--vr-space-6) 0; }
.daylight-case__results-inner { width: min(100%, var(--vr-layout-container, 82rem)); margin-inline: auto; }
.daylight-case__verdict {
  max-width: 36ch;
  margin: 0;
  color: var(--daylight-journal-ink);
  font-family: var(--daylight-journal-display);
  font-size: var(--vr-type-h2);
  font-weight: var(--vr-weight-display);
  line-height: var(--vr-line-heading);
  letter-spacing: -.015em;
  font-variant-numeric: lining-nums;
  text-wrap: balance;
}
.daylight-case__verdict .vr-case-was { color: var(--daylight-journal-muted); }
.daylight-case__verdict .vr-case-sold { color: var(--daylight-journal-forest); }
.daylight-case__facts {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
  margin: var(--vr-space-8) 0 0; padding: 0; list-style: none;
  border-top: 1px solid var(--daylight-journal-ink);
  border-bottom: 1px solid var(--daylight-journal-rule);
}
.daylight-case__facts li { display: flex; flex-direction: column; gap: var(--vr-space-1); padding: var(--vr-space-4) var(--vr-space-4) var(--vr-space-4) 0; }
.daylight-case__facts li + li { padding-left: var(--vr-space-4); border-left: 1px solid var(--daylight-journal-rule); }
.daylight-case__fact-value {
  font-family: var(--daylight-journal-display);
  font-size: var(--vr-type-h3);
  font-weight: var(--vr-weight-display);
  line-height: 1.1;
  font-variant-numeric: lining-nums tabular-nums;
}
.daylight-case__fact-label { color: var(--daylight-journal-muted); font-size: var(--vr-type-small); }

/* Rail: jump links with the active section marked, then a call to action. */
.daylight-case__rail { align-self: stretch; border-top: 0; padding-top: 0; }
.daylight-case__rail-inner { position: sticky; top: var(--vr-space-8); display: grid; gap: var(--vr-space-8); padding-top: clamp(var(--vr-space-8), 4vw, var(--vr-space-12)); }
.daylight-case__rail-inner.is-unstuck { position: static; } /* set by case-study.twig when the rail is taller than the window */
.daylight-case__toc-list { margin: 0; padding: 0; list-style: none; border-left: 1px solid var(--daylight-journal-rule); }
.daylight-case__toc-list a {
  display: block; margin-left: -1px; padding: var(--vr-space-2) 0 var(--vr-space-2) var(--vr-space-4);
  border-left: 1px solid transparent;
  color: var(--daylight-journal-muted); font-size: var(--vr-type-small); line-height: 1.45; text-decoration: none;
  transition: color .2s, border-color .2s;
}
.daylight-case__toc-list a:hover,
.daylight-case__toc-list a[aria-current] { color: var(--daylight-journal-ink); border-left-color: var(--daylight-journal-forest); }
.daylight-case__toc-list a[aria-current] { color: var(--daylight-journal-forest); font-weight: var(--vr-weight-strong); }
.daylight-case__rail .vr-cta { margin: 0; }

/* Phones and tablets: the rail drops below the article, so the jump links open at the top. */
.daylight-case__toc-mobile { display: none; }
@media (max-width: 63.99rem) {
  .daylight-case__toc-mobile {
    display: block; margin: 0 0 var(--vr-space-8);
    border-block: 1px solid var(--daylight-journal-rule); border-top-color: var(--daylight-journal-ink);
  }
  .daylight-case__toc-mobile summary {
    cursor: pointer; padding: var(--vr-space-4) 0; list-style-position: inside;
    color: var(--daylight-journal-forest); font-size: var(--vr-type-small); font-weight: var(--vr-weight-strong);
    letter-spacing: .06em; text-transform: uppercase;
  }
  .daylight-case__toc-mobile ol { margin: 0 0 var(--vr-space-4); padding-inline-start: var(--vr-space-6); }
  .daylight-case__toc-mobile li { padding: var(--vr-space-1) 0; }
  .daylight-case__toc-mobile a { color: var(--daylight-journal-ink); }
  .daylight-case__rail .daylight-case__toc { display: none; }
  .daylight-case__rail-inner { position: static; }
}

/* Calls to action inside the article keep their own type over the prose rules. */
.daylight-prose .vr-cta { margin-block: clamp(var(--vr-space-8), 5vw, var(--vr-space-12)); }
.daylight-prose .vr-cta .vr-cta__heading { margin: 0; }

/* Prose details used by the case-study patterns. */
.daylight-case .daylight-prose .wp-block-details {
  margin: 0; padding: 0; border-top: 1px solid var(--daylight-journal-rule);
}
.daylight-case .daylight-prose .wp-block-details:last-of-type { border-bottom: 1px solid var(--daylight-journal-rule); }
.daylight-case .daylight-prose .wp-block-details summary {
  cursor: pointer; padding: var(--vr-space-4) var(--vr-space-8) var(--vr-space-4) 0; position: relative; list-style: none;
  font-family: var(--daylight-journal-display); font-size: var(--vr-type-h5); line-height: 1.3;
}
.daylight-case .daylight-prose .wp-block-details summary::-webkit-details-marker { display: none; }
.daylight-case .daylight-prose .wp-block-details summary::after {
  content: ""; position: absolute; right: .35rem; top: 50%; width: .55rem; height: .55rem;
  border-right: 1px solid var(--daylight-journal-forest); border-bottom: 1px solid var(--daylight-journal-forest);
  transform: translateY(-70%) rotate(45deg); transition: transform .25s cubic-bezier(.16, 1, .3, 1);
}
.daylight-case .daylight-prose .wp-block-details[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.daylight-case .daylight-prose .wp-block-details > :not(summary) { margin-bottom: var(--vr-space-4); }

/* Closing call to action and more case studies. */
.daylight-case__close,
.daylight-case__more { padding: 0 var(--vr-space-6); }
.daylight-case__close-inner { width: min(100%, var(--vr-layout-container, 82rem)); margin-inline: auto; border-top: 1px solid var(--daylight-journal-rule); }
.daylight-case__close .vr-cta { margin-block: clamp(var(--vr-space-12), 6vw, var(--vr-space-20)); }
.daylight-case__more .vr-case-promos { margin-block: var(--vr-space-12) clamp(var(--vr-space-12), 6vw, var(--vr-space-20)); }

@media (max-width: 39.99rem) {
  .daylight-case__results,
  .daylight-case__close,
  .daylight-case__more { padding-inline: var(--vr-space-4); }
  .daylight-case__facts { grid-template-columns: 1fr 1fr; }
  .daylight-case__facts li + li { padding-left: 0; border-left: 0; }
  .daylight-case__facts li:nth-child(even) { padding-left: var(--vr-space-4); border-left: 1px solid var(--daylight-journal-rule); }
  .daylight-case__facts li:nth-child(n + 3) { border-top: 1px solid var(--daylight-journal-rule); }
}

@media (prefers-reduced-motion: reduce) {
  .daylight-case__toc-list a,
  .daylight-case .daylight-prose .wp-block-details summary::after { transition: none; }
}

/* Jump-link states stay visible even where imported tenant CSS forces link colors. */
.daylight-case__toc-list a:is(:link, :visited) { color: var(--daylight-journal-muted) !important; }
.daylight-case__toc-list a:is(:hover, :focus-visible),
.daylight-case__toc-list a[aria-current] { color: var(--daylight-journal-forest) !important; }
