/* Case detail: a visual story with intentional pauses between the facts. */
.case-story { margin-top: clamp(2.75rem, 6vw, 5.5rem); }
.case-prose { max-width: 46rem; color: var(--muted); font-size: 1.0625rem; font-weight: 500; line-height: 1.78; letter-spacing: .006em; font-kerning: normal; text-wrap: pretty; }
.case-prose > p { margin: 0; }
.case-prose > p + p, .case-prose > h2, .case-prose > ul, .case-prose > blockquote, .case-prose > section { margin-top: 1.8rem; }
.case-prose > p:first-child { max-width: 35ch; color: var(--ink); font-size: clamp(1.2rem, 1vw + 1rem, 1.5rem); font-weight: 600; line-height: 1.48; letter-spacing: -.02em; }
.case-prose h2, .case-visuals h2 { max-width: 24ch; color: var(--ink); font-family: Unbounded, Arial, sans-serif; font-size: clamp(1.15rem, .9rem + 1vw, 1.7rem); font-weight: 500; line-height: 1.3; letter-spacing: -.045em; }
.case-prose h2 { padding-top: 2.6rem; border-top: 1px solid color-mix(in oklab, var(--muted) 28%, transparent); }
.case-prose h2 + p { color: var(--ink); }
.case-prose strong { color: var(--ink); font-weight: 700; }
.case-prose a { color: var(--primary); text-decoration-color: color-mix(in oklab, var(--primary) 52%, transparent); text-underline-offset: .18em; }
.case-prose a:hover { color: var(--ink); text-decoration-color: var(--primary); }
.case-keyline { padding: 1.1rem 0 1.1rem 1.35rem; border-left: 2px solid var(--primary); color: var(--ink) !important; }
.case-prose .case-pullquote, .case-client-quote blockquote { max-width: 52rem; margin-inline: 0; padding: clamp(1.4rem, 3vw, 2.4rem); border: 1px solid color-mix(in oklab, var(--primary) 42%, var(--surface)); border-left: 1px solid color-mix(in oklab, var(--primary) 42%, var(--surface)); background: linear-gradient(120deg, color-mix(in oklab, var(--surface) 90%, var(--primary)), var(--surface)); color: var(--ink); font-size: clamp(1.2rem, 1.4vw, 1.55rem); font-weight: 600; line-height: 1.5; letter-spacing: -.025em; }
.case-prose .case-pullquote p, .case-client-quote blockquote p { margin: 0; }
.case-shopping-list { display: grid; gap: .72rem; margin-bottom: 0; padding: 0; list-style: none; counter-reset: case-item; }
.case-shopping-list li { display: grid; grid-template-columns: 2.1rem minmax(0, 1fr); gap: .7rem; align-items: baseline; }
.case-shopping-list li::before { counter-increment: case-item; content: counter(case-item, decimal-leading-zero); color: var(--primary); font-size: .72rem; font-weight: 800; letter-spacing: .04em; }
.case-visuals { margin-top: clamp(4.5rem, 8vw, 8rem); padding-top: clamp(1.25rem, 2.4vw, 2.25rem); border-top: 1px solid color-mix(in oklab, var(--muted) 28%, transparent); }
.case-visuals__heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, 22rem); gap: 2rem; align-items: end; margin-bottom: 1.25rem; }
.case-visuals__heading p { max-width: 31ch; margin: 0; color: var(--muted); font-size: .93rem; line-height: 1.55; }
.case-visuals .case-gallery { margin-top: 0; }
.case-visuals .case-gallery img { background: var(--surface); transition: transform .25s ease-out; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) { .case-visuals .case-gallery img:hover { transform: scale(1.012); } }
.case-client-quote { max-width: 52rem; margin-top: clamp(3.5rem, 7vw, 6.5rem); }
.case-client-quote__label { margin: 0 0 .85rem; color: var(--primary); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.case-client-quote blockquote { margin: 0; }
@media (max-width: 760px) { .case-story { margin-top: 2.6rem; } .case-prose { font-size: 1rem; line-height: 1.72; } .case-prose > p + p, .case-prose > h2, .case-prose > ul, .case-prose > blockquote, .case-prose > section { margin-top: 1.45rem; } .case-prose h2 { padding-top: 2rem; } .case-visuals__heading { grid-template-columns: 1fr; gap: .75rem; } .case-visuals__heading p { font-size: .88rem; } .case-prose .case-pullquote, .case-client-quote blockquote { padding: 1.25rem; font-size: 1.13rem; } .case-shopping-list li { grid-template-columns: 1.75rem minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .case-visuals .case-gallery img { transition: none; } }
.case-cta__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.case-cta__secondary{color:var(--primary);font-size:13px;font-weight:700}@media(max-width:760px){.case-cta__actions{align-items:flex-start;flex-direction:column}}
