.ll-rahmen {
position: relative;
overflow: hidden;
}

.ll-rahmen--karte {
--ll-ziel-y: .38;
--ll-ziel-g: .3;
--ll-zoom-max: 1.4;
}

.ll-rahmen--kreis {
--ll-rahmen: 1;
--ll-ziel-y: .5;
--ll-ziel-g: .45;
--ll-zoom-max: 3;
}

img.ll-portrait {
--_ar: var(--ll-ar, var(--ll-rahmen, 1));
--_hb: max(1, var(--ll-rahmen, 1) / var(--_ar));
--_wb: max(1, var(--_ar) / var(--ll-rahmen, 1));
--_z: clamp(1, var(--ll-ziel-g, 0) / (var(--ll-fg, 1) * var(--_hb)), var(--ll-zoom-max, 1));
--_zy: .5;

position: absolute;
left: calc(clamp(1 - var(--_wb) * var(--_z), .5 - var(--ll-fx, .5) * var(--_wb) * var(--_z), 0) * 100%);
top: calc(clamp(1 - var(--_hb) * var(--_z), var(--_zy) - var(--ll-fy, .5) * var(--_hb) * var(--_z), 0) * 100%);
width: calc(var(--_wb) * var(--_z) * 100%);
height: calc(var(--_hb) * var(--_z) * 100%);
max-width: none;
margin: 0;

object-fit: cover;
}

img.ll-portrait.ll-portrait--gesicht {
--_zy: var(--ll-ziel-y, .5);
}
