.et_pb_section #circle-wrapper,
.et_pb_module #circle-wrapper,
#circle-wrapper { /* Fallback */
    position: relative;
    width: 100%;
    aspect-ratio: 1/1;
    margin: 0 auto;
    -webkit-animation: rotate 60s linear infinite;
    animation: rotate 60s linear infinite;
    -webkit-transform-origin: center;
    transform-origin: center;
    will-change: transform;
}

.et_pb_section #circle-wrapper:hover,
.et_pb_module #circle-wrapper:hover,
#circle-wrapper:hover {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
}

@-webkit-keyframes rotate {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.et_pb_section #circle-svg,
.et_pb_module #circle-svg,
#circle-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.et_pb_section #circle-wrapper img,
.et_pb_module #circle-wrapper img,
#circle-wrapper img {
    position: absolute;
    top: 10%; /* Halved from 20% */
    left: 10%; /* Halved from 20% */
    width: 80%; /* Increased from 60% to fill the halved margins */
    height: auto;
    border-radius: 50%;
    z-index: 1;
}

.et_pb_section #circle-menu,
.et_pb_module #circle-menu,
#circle-menu {
    display: none !important; /* Hide original menu with higher priority */
}

/* Style the SVG text (font-size handled in JS for scaling) */
.et_pb_section #circle-svg text,
.et_pb_module #circle-svg text,
#circle-svg text {
    font-family: 'Baskervville', Helvetica, Arial, sans-serif;
    fill: #000;
}

.et_pb_section #circle-svg a:hover text,
.et_pb_module #circle-svg a:hover text,
#circle-svg a:hover text {
    fill: #007bff;
}