/* New portfolio work uses the original case-study shell and full-width gallery. */
[data-managed-portfolio] .case-study-gallery img{display:block;width:100%;height:auto}

.case-study-process{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,288px);gap:clamp(24px,5vw,64px);align-items:center;width:min(calc(100% - 32px),1040px);margin:clamp(48px,7vw,100px) auto;padding:clamp(20px,4vw,48px);border:1px solid var(--theme-border);border-radius:14px;background:var(--theme-surface);color:var(--theme-ink);scroll-margin-top:100px}
.case-study-process:is(:hover,:focus-within){--process-accent:#f539ff;border-color:var(--process-accent)}
@media(prefers-reduced-motion:no-preference){.case-study-process{transition:border-color .24s ease}}
.case-study-process h2{margin:0 0 .75em;color:var(--theme-ink);font:600 clamp(25px,2.2vw,32px)/1.25 Inter,sans-serif;letter-spacing:-.025em}
.case-study-process p{margin:0 0 1.25em;color:var(--theme-muted);font:400 clamp(16px,1.45vw,19px)/1.75 Inter,sans-serif}
.case-study-process p:last-child{margin-bottom:0}
.case-study-process a:not(.case-study-video-preview){color:var(--theme-ink);text-decoration:underline;text-decoration-color:var(--theme-accent);text-underline-offset:4px}
.case-study-video{width:100%;max-width:288px;aspect-ratio:9/16;margin-inline:auto;border-radius:12px;background:var(--theme-surface)}
.case-study-video video,.case-study-video-preview{display:block;position:relative;width:100%;height:100%;border:0;border-radius:inherit}
.case-study-video-preview img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.case-study-video-preview>span{position:absolute;inset:auto 10px 16px;display:flex;gap:8px;align-items:center;justify-content:center;width:fit-content;margin:auto;padding:10px 14px;border:1px solid var(--theme-border);border-radius:9px;background:var(--theme-surface);color:var(--theme-ink);font:600 14px/1.3 Inter,sans-serif;text-align:center}
.case-study-video-preview:is(:hover,:focus-visible)>span{border-color:var(--theme-accent)}
.case-study-video video:focus-visible{outline:2px solid var(--theme-accent);outline-offset:4px}
@media(max-width:767px){.case-study-process{grid-template-columns:1fr}}

[data-managed-portfolio] .case-study-overview h3{margin:1.3em 0 .35em;color:var(--theme-ink);font-size:clamp(19px,2vw,24px);line-height:1.3}
[data-managed-portfolio] .case-study-overview h3:first-child{margin-top:0}
[data-managed-portfolio] .case-study-overview strong{color:var(--theme-ink);font-weight:700;text-decoration:underline;text-decoration-color:var(--theme-accent);text-decoration-thickness:2px;text-underline-offset:.2em}
[data-managed-portfolio] .case-study-overview a{text-decoration:underline;text-underline-offset:.2em}

.tcg-portfolio-adv .managed-project-label{--label-ink:#211a2d;--label-surface:#fff;position:absolute;z-index:2;inset:auto auto clamp(8px,1.25vw,18px) clamp(8px,1.25vw,18px);max-width:calc(100% - 2 * clamp(8px,1.25vw,18px));padding:clamp(8px,1.15vw,14px);background:var(--label-surface);color:var(--label-ink);opacity:0;pointer-events:none;transform:translateY(8px)}
.tcg-portfolio-adv .item-img:is(:hover,:focus-within) .managed-project-label{opacity:1;pointer-events:auto;transform:none}
.tcg-portfolio-adv .managed-project-label .sub-title{margin:0 0 4px;font-size:clamp(12px,1.05vw,15px);line-height:1.35}
.tcg-portfolio-adv .managed-project-label .title{margin:0;font-size:clamp(15px,1.65vw,24px);line-height:1.2;overflow-wrap:anywhere}
.tcg-portfolio-adv .managed-project-label a{color:var(--label-ink)}
@media(prefers-reduced-motion:no-preference){.tcg-portfolio-adv .managed-project-label{transition:opacity .2s ease,transform .2s ease}}
@media(hover:none),(max-width:767px){.tcg-portfolio-adv .managed-project-label{opacity:1;pointer-events:auto;transform:none}}

.case-study-process .case-study-socials{--social-magenta:#f539ff;display:flex;flex-wrap:wrap;gap:.55em}
.case-study-process .case-study-socials a{display:inline-flex;align-items:center;gap:.4em;padding:.4em .65em;border:1px solid var(--theme-border);border-radius:8px;text-decoration:none}
.case-study-process .case-study-socials a:is(:hover,:focus-visible){border-color:var(--social-magenta);background:color-mix(in srgb,var(--social-magenta) 14%,var(--theme-surface))}
.case-study-process .case-study-socials a:focus-visible{outline:2px solid var(--social-magenta);outline-offset:2px}
.case-study-socials svg{color:var(--social-magenta);width:1em;height:1em;flex:none}
.case-study-divider{display:block;width:100%;height:.5px;margin:0 auto clamp(48px,7vw,100px);background:color-mix(in srgb,var(--theme-ink) 26%,var(--theme-canvas))}
.case-study-divider + .elementor-element.elementor-element-aeaef58{--min-height:0px;--justify-content:flex-start}
