.service-ribbon-card:has(.service-photo-caption)::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(8,8,8,.88));pointer-events:none}
.service-photo-caption{position:absolute;z-index:1;inset:auto 44px 16px 18px;display:block;color:#fff7e7;font:inherit;font-size:clamp(15px,1.3vw,19px);font-weight:500;line-height:1.22;text-wrap:balance;text-shadow:0 1px 8px #0008;pointer-events:none}
.service-ribbon-card .ribbon-expand{z-index:2}
@media(max-width:650px){.service-photo-caption{inset:auto 42px 13px 14px;font-size:16px}}
