section.icon {
    z-index: 2;
    overflow-x: clip;
    overflow-y: visible;
}

.icon .icon-container {
    transform: translateX(var(--translateX)) 
               translateY(var(--translateY)) 
               rotate(var(--rotation));

    width: 100%;
    -webkit-mask-image: var(--icon-mask);
    mask-image: var(--icon-mask);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

.icon .icon-container img {
    display: block;
    width: 100%;
    height: auto;
    visibility: hidden;
}

.icon.left .icon-container {
    left: 0;
}

.icon.right .icon-container {
    right: 0;
}