.elementor-136025 .elementor-element.elementor-element-07970e9, .elementor-136025 .elementor-element.elementor-element-07970e9 > .elementor-background-overlay{border-radius:13px 13px 13px 13px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-136025 .elementor-element.elementor-element-00b0a76 > .elementor-widget-container{padding:50px 0px 50px 0px;}.elementor-136025 .elementor-element.elementor-element-00b0a76{text-align:center;}.elementor-136025 .elementor-element.elementor-element-00b0a76 .elementor-heading-title{font-family:"yakan bakh fat", Sans-serif;font-weight:600;color:#363E69;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-136025 .elementor-element.elementor-element-c2c2d6a img{border-style:double;border-color:#A6A6A6;border-radius:35px 35px 35px 35px;}.elementor-136025 .elementor-element.elementor-element-1e3b441:not(.elementor-motion-effects-element-type-background), .elementor-136025 .elementor-element.elementor-element-1e3b441 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ECECEC;}.elementor-136025 .elementor-element.elementor-element-1e3b441{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-136025 .elementor-element.elementor-element-1e3b441 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-136025 .elementor-element.elementor-element-7ad04aa > .elementor-widget-container{padding:50px 0px 20px 0px;}.elementor-136025 .elementor-element.elementor-element-7ad04aa{text-align:center;}.elementor-136025 .elementor-element.elementor-element-7ad04aa .elementor-heading-title{font-family:"yakan bakh fat", Sans-serif;font-weight:600;color:#363E69;}.elementor-136025 .elementor-element.elementor-element-7458bd6 .elementor-wrapper{--video-aspect-ratio:2.33333;filter:brightness( 98% ) contrast( 133% ) saturate( 115% ) blur( 0px ) hue-rotate( 0deg );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-136025 .elementor-element.elementor-element-cf1d09d > .elementor-widget-container{padding:31px 0px 40px 0px;}.elementor-136025 .elementor-element.elementor-element-cf1d09d .elementor-icon-list-icon i{color:#EE5757;transition:color 0.3s;}.elementor-136025 .elementor-element.elementor-element-cf1d09d .elementor-icon-list-icon svg{fill:#EE5757;transition:fill 0.3s;}.elementor-136025 .elementor-element.elementor-element-cf1d09d{--e-icon-list-icon-size:23px;--icon-vertical-offset:0px;}.elementor-136025 .elementor-element.elementor-element-cf1d09d .elementor-icon-list-icon{padding-left:0px;}.elementor-136025 .elementor-element.elementor-element-cf1d09d .elementor-icon-list-item > .elementor-icon-list-text, .elementor-136025 .elementor-element.elementor-element-cf1d09d .elementor-icon-list-item > a{font-family:"yekan bakh light", Sans-serif;font-weight:400;line-height:42px;}.elementor-136025 .elementor-element.elementor-element-cf1d09d .elementor-icon-list-text{color:#1A1E34;transition:color 0.3s;}.elementor-136025 .elementor-element.elementor-element-0e2d864 > .elementor-widget-container{padding:50px 0px 0px 0px;}.elementor-136025 .elementor-element.elementor-element-0e2d864 .elementor-icon-list-icon i{color:#6AFF51;transition:color 0.3s;}.elementor-136025 .elementor-element.elementor-element-0e2d864 .elementor-icon-list-icon svg{fill:#6AFF51;transition:fill 0.3s;}.elementor-136025 .elementor-element.elementor-element-0e2d864{--e-icon-list-icon-size:28px;--icon-vertical-offset:0px;}.elementor-136025 .elementor-element.elementor-element-0e2d864 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-136025 .elementor-element.elementor-element-0e2d864 .elementor-icon-list-item > a{font-family:"yekan bakh light", Sans-serif;font-weight:400;line-height:35px;}.elementor-136025 .elementor-element.elementor-element-0e2d864 .elementor-icon-list-text{color:#1A1E34;transition:color 0.3s;}.elementor-136025 .elementor-element.elementor-element-c3adbe9:not(.elementor-motion-effects-element-type-background), .elementor-136025 .elementor-element.elementor-element-c3adbe9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ECECEC;}.elementor-136025 .elementor-element.elementor-element-c3adbe9{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-136025 .elementor-element.elementor-element-c3adbe9 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-136025 .elementor-element.elementor-element-689009f > .elementor-widget-container{padding:50px 0px 50px 0px;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-item:not(:last-child):after{content:"";border-color:#DFDCDC;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-top-style:solid;border-top-width:2px;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-left-style:solid;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-left-width:2px;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-icon i{color:#6AFF51;transition:color 0.3s;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-icon svg{fill:#6AFF51;transition:fill 0.3s;}.elementor-136025 .elementor-element.elementor-element-689009f{--e-icon-list-icon-size:28px;--icon-vertical-offset:0px;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-item > .elementor-icon-list-text, .elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-item > a{font-family:"yekan bakh light", Sans-serif;font-weight:400;line-height:44px;}.elementor-136025 .elementor-element.elementor-element-689009f .elementor-icon-list-text{color:#1A1E34;transition:color 0.3s;}.elementor-136025 .elementor-element.elementor-element-7206acd > .elementor-widget-container{padding:50px 0px 0px 0px;}.elementor-136025 .elementor-element.elementor-element-7206acd{text-align:center;}.elementor-136025 .elementor-element.elementor-element-7206acd .elementor-heading-title{font-family:"yakan bakh fat", Sans-serif;font-weight:600;color:#363E69;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-136025 .elementor-element.elementor-element-99b1a70 > .elementor-widget-container{padding:19px 0px 44px 0px;}.elementor-136025 .elementor-element.elementor-element-99b1a70{color:#1A1E34;}.elementor-136025 .elementor-element.elementor-element-0926b94:not(.elementor-motion-effects-element-type-background), .elementor-136025 .elementor-element.elementor-element-0926b94 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ECECEC;}.elementor-136025 .elementor-element.elementor-element-0926b94{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-136025 .elementor-element.elementor-element-0926b94 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-136025 .elementor-element.elementor-element-96c3e15 > .elementor-widget-container{padding:50px 0px 0px 0px;}.elementor-136025 .elementor-element.elementor-element-96c3e15{text-align:center;}.elementor-136025 .elementor-element.elementor-element-96c3e15 .elementor-heading-title{font-family:"yakan bakh fat", Sans-serif;font-weight:600;color:#363E69;}.elementor-136025 .elementor-element.elementor-element-3606b92 > .elementor-widget-container{padding:19px 0px 44px 0px;}.elementor-136025 .elementor-element.elementor-element-3606b92{color:#1A1E34;}.elementor-136025 .elementor-element.elementor-element-b2caa16 > .elementor-widget-container{padding:50px 0px 0px 0px;}.elementor-136025 .elementor-element.elementor-element-b2caa16{text-align:center;}.elementor-136025 .elementor-element.elementor-element-b2caa16 .elementor-heading-title{font-family:"yakan bakh fat", Sans-serif;font-weight:600;color:#363E69;}.elementor-136025 .elementor-element.elementor-element-bc611e6 > .elementor-widget-container{padding:19px 0px 44px 0px;}.elementor-136025 .elementor-element.elementor-element-bc611e6{color:#1A1E34;}.elementor-136025 .elementor-element.elementor-element-1ac74fa:not(.elementor-motion-effects-element-type-background), .elementor-136025 .elementor-element.elementor-element-1ac74fa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ECECEC;}.elementor-136025 .elementor-element.elementor-element-1ac74fa{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-136025 .elementor-element.elementor-element-1ac74fa > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-136025 .elementor-element.elementor-element-ac4c27a > .elementor-widget-container{padding:50px 0px 0px 0px;}.elementor-136025 .elementor-element.elementor-element-ac4c27a{text-align:center;}.elementor-136025 .elementor-element.elementor-element-ac4c27a .elementor-heading-title{font-family:"yakan bakh fat", Sans-serif;font-weight:600;color:#363E69;}.elementor-136025 .elementor-element.elementor-element-48c074a{color:#1A1E34;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-136025 .elementor-element.elementor-element-e45dc09 .elementor-button{background-color:transparent;font-family:"yekan bakh light", Sans-serif;font-size:39px;font-weight:800;background-image:linear-gradient(180deg, #5868B9 0%, #000000 100%);transition-duration:1.4s;border-style:double;border-width:4px 4px 4px 4px;border-radius:10px 10px 10px 10px;}.elementor-136025 .elementor-element.elementor-element-e45dc09 .elementor-button:hover, .elementor-136025 .elementor-element.elementor-element-e45dc09 .elementor-button:focus{background-color:transparent;background-image:linear-gradient(180deg, #3B467C 0%, #1E1114 100%);}.elementor-136025 .elementor-element.elementor-element-e45dc09 > .elementor-widget-container{padding:0px 0px 50px 0px;}.elementor-136025 .elementor-element.elementor-element-89d956e > .elementor-widget-container{padding:50px 0px 0px 0px;}.elementor-136025 .elementor-element.elementor-element-89d956e{text-align:center;}.elementor-136025 .elementor-element.elementor-element-89d956e .elementor-heading-title{color:#363E69;}.elementor-136025 .elementor-element.elementor-element-1726849 > .elementor-widget-container{padding:19px 0px 44px 0px;}.elementor-136025 .elementor-element.elementor-element-1726849{color:#1A1E34;}@media(max-width:767px){.elementor-136025 .elementor-element.elementor-element-00b0a76 .elementor-heading-title{line-height:1.1em;}.elementor-136025 .elementor-element.elementor-element-7ad04aa .elementor-heading-title{line-height:1.2em;}.elementor-136025 .elementor-element.elementor-element-7206acd .elementor-heading-title{line-height:1.2em;}.elementor-136025 .elementor-element.elementor-element-96c3e15 .elementor-heading-title{line-height:1.2em;}.elementor-136025 .elementor-element.elementor-element-b2caa16 .elementor-heading-title{line-height:1.2em;}.elementor-136025 .elementor-element.elementor-element-ac4c27a .elementor-heading-title{line-height:1.2em;}.elementor-136025 .elementor-element.elementor-element-e45dc09 .elementor-button{font-size:31px;}}/* Start custom CSS for section, class: .elementor-element-ba38abc */<style>
/* This makes the section a positioning container for our background */
section.has-animated-bg {
    position: relative !important;
}

/* This makes the canvas a true background */
#holographic-section-bg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0 !important; /* Sits behind other widgets */
}
</style>

<canvas id="holographic-section-bg"></canvas>

<script>
document.addEventListener('DOMContentLoaded', () => {
    // We target the specific canvas for this background
    const canvas = document.getElementById('holographic-section-bg');
    if (!canvas) return;
    
    const ctx = canvas.getContext('2d');
    let width, height;
    let points = [];
    let angle = 0;
    let animationFrameId;

    // --- Configuration ---
    // You can choose which color palette to use by uncommenting the one you need.

    // Palette 1: For DARK backgrounds (like the ones we designed)
    const POINT_COLOR = 'rgba(88, 166, 255, 0.7)';
    const LINE_COLOR = 'rgba(88, 166, 255, 0.15)';

    // Palette 2: For LIGHT backgrounds (white/grey)
    // const POINT_COLOR = 'rgba(9, 105, 218, 0.7)';
    // const LINE_COLOR = 'rgba(9, 105, 218, 0.1)';
    
    const GRID_SIZE = 15;
    const SPACING = 50;
    const ROTATION_SPEED = 0.003;

    function resizeCanvas() {
        const container = canvas.parentElement;
        width = canvas.width = container.offsetWidth;
        height = canvas.height = container.offsetHeight;
    }

    function createGrid() {
        points = [];
        for (let x = 0; x < GRID_SIZE; x++) {
            for (let y = 0; y < GRID_SIZE; y++) {
                const px = (x - GRID_SIZE / 2) * SPACING;
                const pz = (y - GRID_SIZE / 2) * SPACING;
                points.push({ x: px, y: 0, z: pz });
            }
        }
    }

    function project(point) {
        const focalLength = 200;
        const cos = Math.cos(angle);
        const sin = Math.sin(angle);
        const rotatedX = point.x * cos - point.z * sin;
        const rotatedZ = point.x * sin + point.z * cos;
        const scale = focalLength / (focalLength + rotatedZ);
        return {
            x: rotatedX * scale + width / 2,
            y: point.y * scale + height / 2,
            scale: Math.max(0, scale)
        };
    }

    function draw() {
        ctx.clearRect(0, 0, width, height);
        const projectedPoints = points.map(p => project(p));
        
        ctx.beginPath();
        ctx.strokeStyle = LINE_COLOR;
        ctx.lineWidth = 1;
        for (let i = 0; i < projectedPoints.length; i++) {
            for (let j = i + 1; j < projectedPoints.length; j++) {
                const p1 = projectedPoints[i];
                const p2 = projectedPoints[j];
                const dx = p1.x - p2.x;
                const dy = p1.y - p2.y;
                const distance = Math.sqrt(dx * dx + dy * dy);
                if (distance < SPACING * p1.scale) {
                    ctx.moveTo(p1.x, p1.y);
                    ctx.lineTo(p2.x, p2.y);
                }
            }
        }
        ctx.stroke();

        projectedPoints.forEach(p => {
            ctx.beginPath();
            ctx.arc(p.x, p.y, p.scale * 1.5, 0, Math.PI * 2);
            ctx.fillStyle = POINT_COLOR;
            ctx.fill();
        });

        angle += ROTATION_SPEED;
        animationFrameId = requestAnimationFrame(draw);
    }
    
    const observer = new IntersectionObserver((entries) => {
        entries.forEach(entry => {
            if (entry.isIntersecting) {
                if (!animationFrameId) {
                    resizeCanvas();
                    createGrid();
                    draw();
                }
                observer.unobserve(canvas);
            }
        });
    }, { threshold: 0.1 });

    observer.observe(canvas);

    window.addEventListener('resize', () => {
        if (animationFrameId) {
            cancelAnimationFrame(animationFrameId);
            resizeCanvas();
            createGrid();
            draw();
        }
    });
});
</script>/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'yakan bakh fat';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://modirmentor.com/wp-content/uploads/2023/09/Yekan-Bakh-EN-08-Fat.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'yekan bakh light';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://modirmentor.com/wp-content/uploads/2023/09/Yekan-Bakh-EN-03-Light.ttf') format('truetype');
}
/* End Custom Fonts CSS */