/* ================================================
   TIMELINE SECTION - MOBILE RESPONSIVE STYLES
   ================================================ */

/* Mobile optimization for diagonal timeline */
@media (max-width: 768px) {
    .timeline-diagonal-step {
        margin-bottom: 6px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
        padding-top: 28px !important;
    }

    /* Add downward chevron between cards - matching hero scroll indicator */
    .timeline-diagonal-step::after {
        content: 'expand_more' !important;
        font-family: 'Material Icons' !important;
        display: block !important;
        text-align: center !important;
        font-size: 32px !important;
        color: rgba(255, 255, 255, 0.25) !important;
        margin: 4px auto 0 !important;
        opacity: 0.8 !important;
        animation: bounceArrow 2s ease-in-out infinite !important;
    }

    @keyframes bounceArrow {

        0%,
        20%,
        50%,
        80%,
        100% {
            transform: translateY(0);
        }

        40% {
            transform: translateY(-8px);
        }

        60% {
            transform: translateY(-4px);
        }
    }

    /* Hide arrow after last step */
    .timeline-diagonal-step:last-child::after {
        display: none !important;
    }

    /* Container with overflow for watermark effect */
    .timeline-diagonal-step>div {
        position: relative !important;
        flex-direction: column !important;
        gap: 0 !important;
        align-items: stretch !important;
        overflow: hidden !important;
    }

    /* COMPLETELY NEW: Giant watermark numbers behind content */
    .timeline-diagonal-step>div>div:first-child {
        position: absolute !important;
        top: 50% !important;
        right: -20px !important;
        transform: translateY(-50%) !important;
        z-index: 0 !important;
        width: auto !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        background: none !important;
        box-shadow: none !important;
        pointer-events: none !important;
    }

    /* Giant decorative number - watermark style */
    .timeline-diagonal-step>div>div:first-child span {
        font-size: 180px !important;
        font-weight: 900 !important;
        line-height: 1 !important;
        opacity: 0.08 !important;
        display: block !important;
    }

    /* Step 1 - Cyan watermark */
    .timeline-diagonal-step:nth-child(1)>div>div:first-child span {
        background: linear-gradient(135deg, rgba(76, 201, 240, 0.25) 0%, rgba(76, 201, 240, 0.08) 100%) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
    }

    /* Step 2 - Purple watermark */
    .timeline-diagonal-step:nth-child(2)>div>div:first-child span {
        background: linear-gradient(135deg, rgba(99, 102, 241, 0.25) 0%, rgba(99, 102, 241, 0.08) 100%) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
    }

    /* Step 3 - Purple-Cyan watermark */
    .timeline-diagonal-step:nth-child(3)>div>div:first-child span {
        background: linear-gradient(135deg, rgba(167, 139, 250, 0.25) 0%, rgba(76, 201, 240, 0.08) 100%) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
    }

    /* Hide decorative circles (not needed for watermark) */
    .timeline-diagonal-step>div>div:first-child>div {
        display: none !important;
    }

    /* Step labels ABOVE the card - larger size */
    .timeline-diagonal-step:nth-child(1)::before {
        content: 'STAP 1' !important;
        display: block !important;
        font-size: 27px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 2px !important;
        background: linear-gradient(135deg, rgba(76, 201, 240, 0.9), rgba(76, 201, 240, 0.7)) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
        margin-bottom: 16px !important;
        text-align: center !important;
    }

    .timeline-diagonal-step:nth-child(2)::before {
        content: 'STAP 2' !important;
        display: block !important;
        font-size: 27px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 2px !important;
        background: linear-gradient(135deg, rgba(99, 102, 241, 0.9), rgba(99, 102, 241, 0.7)) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
        margin-bottom: 16px !important;
        text-align: center !important;
    }

    .timeline-diagonal-step:nth-child(3)::before {
        content: 'STAP 3' !important;
        display: block !important;
        font-size: 27px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 2px !important;
        background: linear-gradient(135deg, rgba(167, 139, 250, 0.9), rgba(76, 201, 240, 0.7)) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        background-clip: text !important;
        margin-bottom: 16px !important;
        text-align: center !important;
    }

    /* Content boxes - full-width edge-to-edge design */
    .timeline-diagonal-step>div>div:last-child {
        width: 100vw !important;
        margin-left: calc(-50vw + 50%) !important;
        padding: 24px 20px !important;
        text-align: center !important;
        position: relative !important;
        z-index: 1 !important;
        border-radius: 0 !important;
        border-left: none !important;
        border-right: none !important;
    }

    /* Icon and title alignment - Stacked */
    /* Use nth-child(2) because the first child is the gradient line div */
    .timeline-diagonal-step>div>div:last-child>div:nth-child(2) {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 8px !important;
        margin-bottom: 8px !important;
        text-align: center !important;
        width: 100% !important;
    }

    /* Adjust text size */
    .timeline-diagonal-step h3 {
        font-size: 22px !important;
        margin-bottom: 12px !important;
        text-align: center !important;
    }

    .timeline-diagonal-step p {
        font-size: 15px !important;
        line-height: 1.6 !important;
        text-align: center !important;
    }

    /* Hide connecting arrows on mobile */
    .timeline-diagonal-step>div:first-child+div,
    .timeline-diagonal-step>div:first-child+div+div {
        display: none !important;
    }

    /* Success badge on final step - centered */
    .timeline-diagonal-step:last-child>div>div:last-child>div:last-child {
        margin: 16px auto !important;
        font-size: 13px !important;
        display: inline-flex !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
        width: fit-content !important;
        max-width: 90% !important;
    }

    /* Sparkle emoji - hide for watermark design */
    .timeline-diagonal-step>div>div:first-child>div:last-child {
        display: none !important;
    }

    /* Remove horizontal padding for edge-to-edge cards */
    .implementation-timeline-section {
        padding: 60px 0 !important;
    }

    /* Remove container constraints */
    .implementation-timeline-section>div {
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: 100% !important;
    }

    /* Section header spacing */
    .implementation-timeline-section>div>div:first-child {
        margin-bottom: 50px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* Background effects - smaller on mobile */
    .implementation-timeline-section>div:first-child,
    .implementation-timeline-section>div:nth-child(2) {
        width: 300px !important;
        height: 300px !important;
    }
}

/* Tablet and Small Laptop optimization */
@media (min-width: 769px) and (max-width: 1200px) {
    .timeline-diagonal-step>div {
        gap: 30px !important;
    }

    .timeline-diagonal-step>div>div:first-child {
        width: 120px !important;
        height: 120px !important;
    }

    .timeline-diagonal-step>div>div:first-child>span {
        font-size: 70px !important;
    }

    .timeline-diagonal-step>div>div:last-child {
        padding: 35px 28px !important;
    }

    .timeline-diagonal-step h3 {
        font-size: 24px !important;
    }

    /* Resize AI icon on tablet/small laptop */
    .ai-sparkle-wrapper .material-icons {
        font-size: 20px !important;
        filter: drop-shadow(0 0 6px rgba(76, 201, 240, 0.8)) !important;
    }

    .ai-sparkle-wrapper {
        top: -8px !important;
        left: -8px !important;
    }
}
