/* Orbit Logos for Elementor - frontend styles */

.wpoe-orbit-wrap {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	max-width: 100%;
}

/* Ring / dashed orbit path */
.wpoe-ring {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	border-style: dashed;
	border-width: 1px;
	border-color: #d9d4c8;
	pointer-events: none;
}
.wpoe-ring.wpoe-ring-hidden {
	border-color: transparent;
}

/* Rotator spins the whole ring's contents around the center */
.wpoe-rotator {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

/* Individual orbiting item - positioned via inline left/top (JS) */
.wpoe-item {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	pointer-events: auto;
}

/* Counter-rotation wrapper keeps the icon visually upright while the ring spins */
.wpoe-item-counter {
	display: block;
	width: var(--wpoe-item-size, 60px);
	height: var(--wpoe-item-size, 60px);
}

.wpoe-item-link {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.wpoe-item-inner,
.wpoe-center .wpoe-item-inner {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	box-sizing: border-box;
	transition: transform .25s ease, box-shadow .25s ease;
}

.wpoe-item.wpoe-shape-circle .wpoe-item-inner,
.wpoe-center.wpoe-shape-circle .wpoe-item-inner {
	border-radius: 50%;
}

.wpoe-item.wpoe-no-bg .wpoe-item-inner,
.wpoe-center.wpoe-no-bg .wpoe-item-inner {
	background: transparent !important;
	box-shadow: none !important;
}

.wpoe-item-inner img {
	max-width: 60%;
	max-height: 60%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}

.wpoe-item-inner i {
	line-height: 1;
}

.wpoe-item-inner svg {
	max-width: 60%;
	max-height: 60%;
}

/* Center item */
.wpoe-center {
	position: relative;
	z-index: 5;
	width: var(--wpoe-item-size, 90px);
	height: var(--wpoe-item-size, 90px);
}

/* Hover lift */
.wpoe-item:hover .wpoe-item-inner,
.wpoe-center:hover .wpoe-item-inner {
	transform: scale(1.08);
}

/* Pause on hover: JS sets this class on the wrap while pointer is over it */
.wpoe-orbit-wrap.wpoe-is-paused .wpoe-item,
.wpoe-orbit-wrap.wpoe-is-paused .wpoe-item-counter {
	transition: none;
}

/* Responsive fallback: scale the whole widget down gracefully on very small screens */
@media (max-width: 767px) {
	.wpoe-orbit-wrap {
		transform: scale(0.9);
		transform-origin: center;
	}
}

@media (max-width: 480px) {
	.wpoe-orbit-wrap {
		transform: scale(0.72);
	}
}
