/* Secondary text retains hierarchy while reaching normal-text contrast. */
:root{--case-secondary:#666}
:root[data-theme="dark"]{--case-secondary:var(--color-text-muted)}
.project-meta p,.result-summary p:first-child{color:var(--case-secondary)!important}
.result-summary .result-context{font-size:20px;line-height:1.5;margin-top:10px;color:var(--case-secondary)}
@media(max-width:760px){.result-summary .result-context{font-size:17px}}
.portfolio-case .contact-copy h2{margin:0 auto}
.portfolio-case .contact-section a{color:inherit}
.portfolio-case .contact-footer{margin:0}

.case-contents{display:flex;flex-wrap:wrap;gap:8px 28px;margin:40px 0 0;padding:16px 0;border-block:1px solid var(--color-border-subtle,#e8e6e6);font-size:18px;line-height:1.5}
.case-contents a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:5px;text-decoration:underline}
[id^="chapter-"]{scroll-margin-top:30px}
.case-contact-dock{position:fixed;z-index:30;bottom:24px;right:24px;min-height:48px;display:inline-flex;align-items:center;padding:8px 20px;border:1px solid var(--color-border-subtle,#ddd);border-radius:100px;background:var(--color-bg-surface,#fbf8f4);color:var(--color-text-primary,#111);box-shadow:0 4px 22px #0002;font-size:16px}
.case-contact-dock[hidden]{display:none}
@media(max-width:600px){.case-contents{font-size:16px;gap:8px 24px;margin-top:32px}.contact-dock-preview{padding-bottom:80px}}

.result-summary p:nth-child(2){text-wrap:balance}

/* Case navigation fills the header; reuse the compact hint below the toggle
   so the desktop hint cannot cross the availability label. */
@media(min-width:761px){
 .portfolio-case .theme-hint{top:calc(100% + 8px);right:0;font-size:12px;padding:5px 8px;border-radius:6px;background:var(--color-bg-page,#fff);transform:translateY(-5px)}
 .portfolio-case .theme-toggle:is(.theme-hint-held,:focus-visible,:hover) .theme-hint{opacity:1;transform:translateY(0)}
}
