.case-contents {
    display:none;
}

.case-contents-target {
    scroll-margin-top:9rem;
}

@media (min-width:1200px) {
body.case-study-with-contents :is(.sso-shell,.raf-shell,.nav-shell,.ps-shell,.bx-shell) {
    width:min(1120px,calc(100vw - 15rem));
    margin-left:max(1.75rem,calc((100vw - 1304px) / 2));
    margin-right:auto;
}

.case-contents {
    display:block;
    position:fixed;
    z-index:30;
    top:9rem;
    right:max(1.75rem,calc((100vw - 1304px) / 2));
    width:160px;
    max-height:calc(100dvh - 11rem);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    padding:0 .35rem .5rem 1rem;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px);
    transition:opacity .22s ease,transform .22s ease,visibility .22s;
    color:inherit;
}

.case-contents.is-visible {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
}

.case-contents-title {
    margin:0 0 1.3rem;
    opacity:.65;
    font-family:var(--font-body,"Plus Jakarta Sans",sans-serif);
    font-size:.65rem;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.case-contents ol {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:.25rem;
}

.case-contents a {
    position:relative;
    display:block;
    padding:.65rem 0 .65rem .9rem;
    color:inherit;
    opacity:.68;
    text-decoration:none;
    font-family:var(--font-body,"Plus Jakarta Sans",sans-serif);
    font-size:.73rem;
    line-height:1.5;
    font-weight:400;
    transition:opacity .2s;
}

.case-contents a:hover {
    color:inherit;
    opacity:1;
}

.case-contents a[aria-current="location"] {
    font-weight:800;
    opacity:1;
}

.case-contents a[aria-current="location"]::before {
    content:"";
    position:absolute;
    top:1rem;
    left:-.15rem;
    width:.35rem;
    height:.35rem;
    border-radius:50%;
    background:#8d2dfb;
    box-shadow:0 0 7px 2px rgba(150,62,255,.37),0 0 18px rgba(150,62,255,.18);
}

.case-contents a:focus-visible {
    outline:2px solid #8d2dfb;
    outline-offset:3px;
    border-radius:4px;
}
}

@media (prefers-reduced-motion:reduce) {
.case-contents {
    transition:none;
}
}
