.m-case-study-detail__hero {
    margin: 0;
    aspect-ratio: 16 / 7;
    background: var(--color-bg-alt);
    overflow: hidden;
    position: relative;
}
.m-case-study-detail__hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.m-case-study-detail__inner {
    padding-top: clamp(var(--space-6), 6vw, var(--space-8));
    padding-bottom: clamp(var(--space-7), 7vw, var(--space-9));
}

.m-case-study-detail__head {
    margin-bottom: var(--space-7);
}
.m-case-study-detail__eyebrow {
    display: inline-block;
    background: var(--color-primary-tint);
    color: var(--color-primary-deep);
    font-size: var(--fs-xs);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    padding: 4px 12px;
    border-radius: var(--radius-pill);
    font-weight: var(--fw-bold);
    margin-bottom: var(--space-4);
}
.m-case-study-detail__head h1 {
    font-size: clamp(var(--fs-2xl), 4vw, var(--fs-3xl));
    line-height: 1.1;
    margin: 0 0 var(--space-4);
}
.m-case-study-detail__lead {
    font-size: var(--fs-lg);
    line-height: 1.5;
    color: var(--color-text-muted);
    margin: 0 0 var(--space-5);
}

.m-case-study-detail__meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-5);
    margin: var(--space-5) 0 0;
    padding: var(--space-4) 0;
    border-top: 1px solid var(--color-border-soft);
    border-bottom: 1px solid var(--color-border-soft);
}
.m-case-study-detail__meta > div {
    display: flex;
    flex-direction: column;
}
.m-case-study-detail__meta dt {
    font-size: var(--fs-xs);
    color: var(--color-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: var(--fw-semibold);
    margin-bottom: 2px;
}
.m-case-study-detail__meta dd {
    margin: 0;
    font-weight: var(--fw-semibold);
}

.m-case-study-detail__body {
    font-size: var(--fs-md);
    line-height: 1.7;
    color: var(--color-text);
}
.m-case-study-detail__body > * + * { margin-top: var(--space-4); }
.m-case-study-detail__body h2 {
    font-size: var(--fs-xl);
    line-height: 1.2;
    margin: var(--space-7) 0 var(--space-3);
}
.m-case-study-detail__body h3 {
    font-size: var(--fs-lg);
    line-height: 1.25;
    margin: var(--space-6) 0 var(--space-3);
}
.m-case-study-detail__body blockquote {
    margin: var(--space-6) 0;
    padding: var(--space-4) var(--space-5);
    border-left: 3px solid var(--color-primary);
    background: var(--color-bg-alt);
    font-size: var(--fs-lg);
    font-style: italic;
    line-height: 1.45;
    color: var(--color-text);
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
}
.m-case-study-detail__body blockquote p { margin: 0; }
.m-case-study-detail__body ul,
.m-case-study-detail__body ol {
    padding-left: 1.25em;
}
.m-case-study-detail__body img {
    width: 100%;
    height: auto;
    border-radius: var(--radius-md);
    margin: var(--space-5) 0;
}

.m-case-study-detail__foot {
    margin-top: var(--space-8);
    padding-top: var(--space-5);
    border-top: 1px solid var(--color-border-soft);
}
.m-case-study-detail__back {
    display: inline-block;
    color: var(--color-primary);
    font-weight: var(--fw-bold);
    text-decoration: none;
}
.m-case-study-detail__back:hover { text-decoration: underline; }

@media (max-width: 720px) {
    .m-case-study-detail__hero { aspect-ratio: 4 / 3; }
}
