/* ========================================================
   E-COMMERCE SOLUTIONS PAGE STYLES (PRODUCT CUBES THEME)
   ======================================================== */

.ecom-page {
    background: linear-gradient(135deg, #120500 0%, #1c0a00 50%, #0d0400 100%);
    color: #ffffff;
    font-family: 'Inter', 'Poppins', sans-serif;
    margin: 0;
    overflow-x: hidden;
}

.ecom-hero {
    padding-top: 160px;
    padding-bottom: 20px;
    position: relative;
    overflow: hidden;
}

.ecom-hero .hero-content {
    position: relative;
    z-index: 2;
}

/* ========================================================
   PRODUCT CUBES & PLATFORM ICONS THEME
   ======================================================== */

.cube-container {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    perspective: 1200px;
}

.product-cube {
    position: absolute;
    width: 60px;
    height: 60px;
    transform-style: preserve-3d;
    animation: cube-float 15s infinite linear;
}

.cube-face {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(255, 106, 0, 0.05);
    border: 1px solid rgba(255, 106, 0, 0.3);
    backdrop-filter: blur(2px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.cube-face::before {
    content: '';
    position: absolute;
    inset: 20%;
    border: 1px solid rgba(255, 106, 0, 0.1);
}

.cube-face.front {
    transform: translateZ(30px);
}

.cube-face.back {
    transform: rotateY(180deg) translateZ(30px);
}

.cube-face.right {
    transform: rotateY(90deg) translateZ(30px);
}

.cube-face.left {
    transform: rotateY(-90deg) translateZ(30px);
}

.cube-face.top {
    transform: rotateX(90deg) translateZ(30px);
}

.cube-face.bottom {
    transform: rotateX(-90deg) translateZ(30px);
}

.cube-1 {
    top: 15%;
    left: 10%;
    animation-duration: 18s;
}

.cube-2 {
    top: 40%;
    right: 15%;
    width: 40px;
    height: 40px;
    animation-duration: 12s;
    animation-direction: reverse;
}

.cube-3 {
    bottom: 20%;
    left: 25%;
    width: 80px;
    height: 80px;
    animation-duration: 25s;
}

.cube-2 .cube-face {
    transform-origin: center;
}

.cube-2 .cube-face.front {
    transform: translateZ(20px);
}

.cube-2 .cube-face.back {
    transform: rotateY(180deg) translateZ(20px);
}

.cube-2 .cube-face.right {
    transform: rotateY(90deg) translateZ(20px);
}

.cube-2 .cube-face.left {
    transform: rotateY(-90deg) translateZ(20px);
}

.cube-2 .cube-face.top {
    transform: rotateX(90deg) translateZ(20px);
}

.cube-2 .cube-face.bottom {
    transform: rotateX(-90deg) translateZ(20px);
}

.cube-3 .cube-face {
    transform-origin: center;
}

.cube-3 .cube-face.front {
    transform: translateZ(40px);
}

.cube-3 .cube-face.back {
    transform: rotateY(180deg) translateZ(40px);
}

.cube-3 .cube-face.right {
    transform: rotateY(90deg) translateZ(40px);
}

.cube-3 .cube-face.left {
    transform: rotateY(-90deg) translateZ(40px);
}

.cube-3 .cube-face.top {
    transform: rotateX(90deg) translateZ(40px);
}

.cube-3 .cube-face.bottom {
    transform: rotateX(-90deg) translateZ(40px);
}

@keyframes cube-float {
    0% {
        transform: translateY(0) rotateX(0deg) rotateY(0deg) rotateZ(0deg);
    }

    33% {
        transform: translateY(-30px) rotateX(120deg) rotateY(45deg) rotateZ(90deg);
    }

    66% {
        transform: translateY(15px) rotateX(240deg) rotateY(90deg) rotateZ(180deg);
    }

    100% {
        transform: translateY(0) rotateX(360deg) rotateY(360deg) rotateZ(360deg);
    }
}

.platform-nodes {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.store-icon {
    position: absolute;
    font-size: 2rem;
    color: rgba(255, 106, 0, 0.4);
    filter: drop-shadow(0 0 10px rgba(255, 106, 0, 0.2));
    animation: icon-float 8s infinite ease-in-out;
}

.icon-shopify {
    top: 25%;
    right: 20%;
    animation-delay: 0s;
    font-size: 2.5rem;
}

.icon-woo {
    bottom: 30%;
    right: 30%;
    animation-delay: -4s;
    font-size: 1.8rem;
}

.icon-cart {
    top: 60%;
    left: 15%;
    animation-delay: -2s;
    font-size: 2.2rem;
}

@keyframes icon-float {

    0%,
    100% {
        transform: translateY(0) scale(1);
        opacity: 0.3;
    }

    50% {
        transform: translateY(-20px) scale(1.1);
        opacity: 0.6;
    }
}

.ecom-orange {
    background: linear-gradient(90deg, #FF6A00, #FFA600);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-video-wrapper {
    max-width: 1000px;
    margin: 60px auto 0;
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5), 0 0 30px rgba(255, 106, 0, 0.15);
    border: 1px solid rgba(255, 106, 0, 0.3);
}

.hero-image-board {
    width: 100%;
    height: 450px;
    object-fit: cover;
    display: block;
}

/* Base structural overrides for the grid reused from about */
.diff-card {
    border: 1px solid rgba(255, 106, 0, 0.2);
}

.diff-card:hover {
    box-shadow: 0 10px 40px rgba(255, 106, 0, 0.1);
    border-color: #FF6A00;
}

.data-vis-section {
    padding: 80px 20px;
}

.ecom-kpis {
    display: flex;
    justify-content: center;
    gap: 50px;
    margin-top: 40px;
    flex-wrap: wrap;
}

.ecom-kpis .stat {
    background: rgba(255, 106, 0, 0.05);
    border: 1px solid rgba(255, 106, 0, 0.2);
    padding: 30px;
    border-radius: 16px;
    min-width: 200px;
    backdrop-filter: blur(5px);
}

.ecom-kpis .counter {
    font-family: 'Orbitron', sans-serif;
    font-size: 3rem;
    color: #FF6A00;
    display: block;
    margin-bottom: 10px;
    text-shadow: 0 0 10px rgba(255, 106, 0, 0.4);
}

.cross-link-banner {
    padding: 40px 20px 80px;
}

.mt-5 {
    margin-top: 50px;
}