.orbit-block {
    display: grid;
    place-items: center;
    color: var(--fg, #14161a);
    font-family: system-ui, sans-serif;
}
.orbit-block .orbit {
    position: relative;
    width: var(--orbit-size);
    height: var(--orbit-size);
    display: grid;
    place-items: center;
}
.orbit-block .logo {
    position: absolute;
    width: clamp(80px, 18vmin, 200px);
    display: grid;
    place-items: center;
    transform: translate(var(--logo-shift-x,65px), var(--logo-shift-y,90px));
}
.orbit-block .logo img {
    width: 100%;
    height: auto;
    object-fit: contain;
}
.orbit-block .node {
    position: absolute;
    left: 50%;
    top: 50%;
    width: var(--node-size);
    height: var(--node-size);
    transform: rotate(var(--angle)) translate(calc((var(--orbit-size) - var(--node-size)) / 3)) rotate(calc(-1 * var(--angle)));
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    text-decoration: none;
    color: inherit;
}
.orbit-block .icon {
    display: grid;
    place-items: center;
    margin-bottom: 6px;
}
.orbit-block .icon img {
    width: 100%;
    height: auto;
    object-fit: contain;
}
.orbit-block .label {
    font-size: clamp(10px, 1.5vmin, 14px);
    transform: translate(0px, -0px);
}
@media (max-width: 600px){
    .orbit-block {
        --orbit-size: 90vmin;
        --node-size: 10vmin;
    }
    .orbit-block .label {
        font-size: 12px;
    }
}