﻿.circle-wrapper {
    position: relative;
    width: 90vw;              
    max-width: 1000px;
    aspect-ratio: 1000 / 520;
    margin: 60px auto;
}

.center-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18vw;
    max-width: 260px;
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    z-index: 20;
}

.center-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.orbit {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.hex {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12vw;
    max-width: 180px;
    aspect-ratio: 180 / 207;
    --radius: calc(13vw + (var(--ring) * 12vw));
    transform:
        translate(-50%, -50%)
        rotate(calc(1deg * var(--i) * (360 / var(--total))))
        translate(var(--radius))
        rotate(calc(-1deg * var(--i) * (360 / var(--total))));
    clip-path: polygon(
        50% 0%, 93% 25%, 93% 75%, 
        50% 100%, 7% 75%, 7% 25%
    );
    background: #fff;
    overflow: hidden;
    transition: transform 0.3s ease;
    pointer-events: auto;
    display: flex;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;
    padding: 6px;
}

.hex:hover {
    transform:
        translate(-50%, -50%)
        rotate(calc(1deg * var(--i) * (360 / var(--total))))
        translate(var(--radius))
        rotate(calc(-1deg * var(--i) * (360 / var(--total))))
        scale(1.12);

    z-index: 50;
}

.hex img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    padding: 4px;
    display: block;
}
@media (max-width: 576px) {
    .circle-wrapper {
        width: 100%;
        margin: 30px auto;
    }

    .center-logo {
        width: 26vw;
    }

    .hex {
        width: 18vw;
        --radius: calc(22vw + (var(--ring) * 14vw));
    }
}
@media (max-width: 992px) {

    .circle-wrapper {
        width: 95vw;
        aspect-ratio: 1 / 1; 
    }

    .center-logo {
        width: 20vw;
        max-width: 160px;
    }

    .hex {
        width: 12vw;
        max-width: 110px;
        --radius: calc(28vw + (var(--ring) * 13vw));
    }
}
@media (width: 1024px) {
    .hex {
        --radius: calc(22vw + (var(--ring) * 13vw));
    }
}
@media (width: 1280px) {
    .hex {
        --radius: calc(17vw + (var(--ring) * 13vw));
    }
}