/* ==========================================
   ULTRAKIT PARALLAX LAYERS
   ========================================== */
.ultrakit-plx-wrapper { --plx-h: 520px; --plx-b1: #1b1464; --plx-b2: #0f4c81; --plx-r: 28px; --plx-btn: #ffffff; width: 100%; box-sizing: border-box; font-family: inherit; }
.ultrakit-plx-wrapper *, .ultrakit-plx-wrapper *::before, .ultrakit-plx-wrapper *::after { box-sizing: border-box; }
.ultrakit-plx-stage { position: relative; height: var(--plx-h); overflow: hidden; border-radius: var(--plx-r); background: linear-gradient(135deg, var(--plx-b1), var(--plx-b2)); display: flex; align-items: center; justify-content: center; isolation: isolate; }
.ultrakit-plx-layer { position: absolute; will-change: transform; pointer-events: none; z-index: 1; }
.ultrakit-plx-item { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; transform: rotate(var(--rot, 0deg)); line-height: 1; }
.ultrakit-plx-item img { width: 100%; height: 100%; object-fit: contain; display: block; }
.plx-k-circle { border-radius: 50%; background: currentColor; }
.plx-k-ring { border-radius: 50%; border: 6px solid currentColor; }
.plx-k-square { border-radius: 22%; background: currentColor; }
.plx-k-blob { border-radius: 42% 58% 63% 37% / 41% 44% 56% 59%; background: currentColor; }
.plx-k-text { width: auto; height: auto; }
.is-float { animation: ukPlxFloat 6s ease-in-out infinite; }
.ultrakit-plx-layer:nth-child(2n) .is-float { animation-duration: 8s; animation-direction: reverse; }
@keyframes ukPlxFloat { 50% { transform: translateY(-16px) rotate(var(--rot, 0deg)); } }
.ultrakit-plx-content { position: relative; z-index: 5; max-width: 620px; padding: 30px; text-align: center; color: #ffffff; }
.ultrakit-plx-title { margin: 0 0 14px; font-size: clamp(30px, 5vw, 58px); font-weight: 900; line-height: 1.05; letter-spacing: -1.5px; color: #ffffff; }
.ultrakit-plx-text { margin: 0 0 26px; font-size: 17px; line-height: 1.6; color: rgba(255,255,255,0.85); }
.ultrakit-plx-btn { display: inline-flex; padding: 14px 32px; background: var(--plx-btn); color: #1a1a2e !important; border-radius: 50px; font-size: 15px; font-weight: 800; text-decoration: none !important; box-shadow: 0 16px 34px rgba(0,0,0,0.3); transition: transform 0.25s ease; }
.ultrakit-plx-btn:hover { transform: translateY(-3px); }
@media (prefers-reduced-motion: reduce) { .is-float { animation: none; } }
