{"id":6,"date":"2026-09-06T17:04:03","date_gmt":"2026-09-06T14:04:03","guid":{"rendered":"http:\/\/magicpage38.ru\/?page_id=6"},"modified":"2026-10-01T16:26:55","modified_gmt":"2026-10-01T13:26:55","slug":"%d0%b3%d0%bb%d0%b0%d0%b2%d0%bd%d0%b0%d1%8f","status":"publish","type":"page","link":"https:\/\/magicpage38.ru\/","title":{"rendered":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"6\" class=\"elementor elementor-6\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2d50afbd e-flex e-con-boxed e-con e-parent\" data-id=\"2d50afbd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-40f1bc5 elementor-widget elementor-widget-html\" data-id=\"40f1bc5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<html lang=\"ru\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\">\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@400;500;700;800;900&display=swap\" rel=\"stylesheet\">\r\n<style>\r\n.magic-v6-root {\r\n    position: relative;\r\n    width: 100%;\r\n    min-height: 100vh;\r\n    background: #010305;\r\n    color: #ffffff;\r\n    font-family: 'Montserrat', sans-serif;\r\n    margin: 0; padding: 0;\r\n    overflow-x: hidden;\r\n}\r\n\r\n\/* \u0428\u0410\u041f\u041a\u0410 *\/\r\n.site-header-v6 {\r\n    position: fixed;\r\n    top: 0; left: 0;\r\n    width: 100%;\r\n    height: 76px;\r\n    z-index: 1000;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: space-between;\r\n    padding: 0 20px;\r\n    background: rgba(2, 8, 4, 0.88);\r\n    backdrop-filter: blur(15px);\r\n    -webkit-backdrop-filter: blur(15px);\r\n    border-bottom: 1px solid rgba(74, 222, 128, 0.3);\r\n    box-sizing: border-box;\r\n}\r\n\r\n.logo-v6 {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n    text-decoration: none;\r\n    color: #fff;\r\n    font-weight: 800;\r\n    font-size: 1rem;\r\n    white-space: nowrap;\r\n}\r\n.logo-v6 i { color: #4ade80; text-shadow: 0 0 10px #4ade80; }\r\n\r\n.call-btn-v6 {\r\n    background: rgba(34, 197, 94, 0.25);\r\n    border: 1px solid #4ade80;\r\n    color: #fff;\r\n    padding: 9px 20px;\r\n    border-radius: 50px;\r\n    text-decoration: none;\r\n    font-weight: 700;\r\n    font-size: 0.85rem;\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 7px;\r\n    white-space: nowrap;\r\n}\r\n\r\n\/* \u0424\u041e\u041d *\/\r\n#v6NetCanvas {\r\n    position: fixed;\r\n    top: 0; left: 0;\r\n    width: 100vw;\r\n    height: 100vh;\r\n    z-index: 1;\r\n    pointer-events: none;\r\n}\r\n\r\n\/* \u041a\u041e\u041d\u0422\u0415\u041d\u0422 *\/\r\n.hero-content-v6 {\r\n    position: relative;\r\n    z-index: 10;\r\n    display: flex;\r\n    flex-direction: column;\r\n    align-items: center;\r\n    justify-content: center;\r\n    min-height: 100vh;\r\n    padding: 100px 16px 50px;\r\n    text-align: center;\r\n    box-sizing: border-box;\r\n}\r\n\r\n\/* \u0413\u043b\u0430\u0432\u043d\u044b\u0439 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a (\u0427\u0442\u043e \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c) *\/\r\n.main-headline {\r\n    font-size: clamp(1.6rem, 5vw, 2.6rem);\r\n    font-weight: 800;\r\n    line-height: 1.25;\r\n    margin-bottom: 12px;\r\n    color: #ffffff;\r\n    text-shadow: 0 2px 10px rgba(0,0,0,0.8);\r\n    max-width: 700px;\r\n}\r\n\r\n\/* \u041f\u043e\u0434\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a (\u0423\u043f\u0430\u043a\u043e\u0432\u043a\u0430 \u043c\u0430\u0441\u0442\u0435\u0440\u0430) *\/\r\n.sub-headline {\r\n    font-size: clamp(1.2rem, 4vw, 1.8rem);\r\n    font-weight: 900;\r\n    text-transform: uppercase;\r\n    letter-spacing: 2px;\r\n    margin-bottom: 25px;\r\n    background: linear-gradient(180deg, #ffffff 20%, #4ade80 100%);\r\n    -webkit-background-clip: text;\r\n    -webkit-text-fill-color: transparent;\r\n    filter: drop-shadow(0 0 12px rgba(74, 222, 128, 0.5));\r\n}\r\n\r\n\/* \u041a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u0430\u044f \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u0430\u044f \u043f\u043b\u0430\u0448\u043a\u0430 \u0441 \u043e\u0442\u0441\u0442\u0443\u043f\u0430\u043c\u0438 *\/\r\n.glass-card-v6 {\r\n    background: rgba(6, 18, 10, 0.45);\r\n    backdrop-filter: blur(20px);\r\n    -webkit-backdrop-filter: blur(20px);\r\n    border: 1px solid rgba(74, 222, 128, 0.35);\r\n    border-top: 1px solid rgba(255, 255, 255, 0.4);\r\n    padding: 24px 20px;\r\n    border-radius: 24px;\r\n    max-width: 520px; \/* \u0421\u0434\u0435\u043b\u0430\u043b\u0438 \u0443\u0436\u0435, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u0438 \u043e\u0442\u0441\u0442\u0443\u043f\u044b \u043f\u043e \u0431\u043e\u043a\u0430\u043c *\/\r\n    width: 100%;\r\n    box-shadow: 0 20px 40px rgba(0,0,0,0.6);\r\n    text-align: left;\r\n    margin: 0 auto;\r\n    box-sizing: border-box;\r\n}\r\n\r\n.list-v6 { list-style: none; padding: 0; margin: 0; }\r\n.list-v6 li {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 12px;\r\n    margin-bottom: 14px;\r\n    font-size: 1.02rem;\r\n    color: rgba(255,255,255,0.92);\r\n}\r\n.list-v6 li:last-child { margin-bottom: 0; }\r\n.list-v6 i { color: #4ade80; font-size: 1.2rem; text-shadow: 0 0 8px #4ade80; }\r\n\r\n.divider-v6 {\r\n    height: 1px;\r\n    background: linear-gradient(90deg, transparent, rgba(74, 222, 128, 0.6), transparent);\r\n    margin: 18px 0;\r\n}\r\n\r\n.footer-msg-v6 {\r\n    text-align: center;\r\n    font-size: 0.95rem;\r\n    line-height: 1.4;\r\n    color: rgba(255,255,255,0.85);\r\n}\r\n.footer-msg-v6 b { display: block; margin-top: 6px; color: #86efac; font-size: 1.02rem; font-weight: 700; }\r\n\r\n@media (max-width: 600px) {\r\n    .site-header-v6 { padding: 0 16px; height: 70px; }\r\n    .glass-card-v6 { padding: 20px 16px; max-width: 90%; }\r\n    .list-v6 li { font-size: 0.95rem; }\r\n}\r\n<\/style>\r\n<\/head>\r\n<body>\r\n\r\n<div class=\"magic-v6-root\">\r\n    <canvas id=\"v6NetCanvas\"><\/canvas>\r\n\r\n    <header class=\"site-header-v6\">\r\n        <a href=\"#\" class=\"logo-v6\">\r\n            <i class=\"fa-solid fa-wand-magic-sparkles\"><\/i>\r\n            <span>Magic Page 38<\/span>\r\n        <\/a>\r\n        <a href=\"tel:+79842773503\" class=\"call-btn-v6\">\r\n            <i class=\"fa-solid fa-phone\"><\/i>\r\n            <span>\u041f\u043e\u0437\u0432\u043e\u043d\u0438\u0442\u044c<\/span>\r\n        <\/a>\r\n    <\/header>\r\n\r\n    <div class=\"hero-content-v6\">\r\n        <!-- \u0427\u0442\u043e \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c -->\r\n        <h1 class=\"main-headline\">\u0421\u043e\u0437\u0434\u0430\u0451\u043c \u0436\u0438\u0432\u044b\u0435 \u0441\u0430\u0439\u0442\u044b \u0438 \u0432\u0438\u0437\u0438\u0442\u043a\u0438 \u043f\u043e\u0434 \u043a\u043b\u044e\u0447<\/h1>\r\n        <!-- \u041f\u043e\u0434\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \/ \u0411\u0440\u0435\u043d\u0434 -->\r\n        <div class=\"sub-headline\">\u0423\u043f\u0430\u043a\u043e\u0432\u043a\u0430 \u041c\u0430\u0441\u0442\u0435\u0440\u0430<\/div>\r\n        \r\n        <div class=\"glass-card-v6\">\r\n            <ul class=\"list-v6\">\r\n                <li><i class=\"fa-solid fa-print\"><\/i> \u0412\u0438\u0437\u0438\u0442\u043a\u0438 \u0441 QR-\u043a\u043e\u0434\u043e\u043c \u0431\u0435\u0437 \u0431\u0435\u0433\u043e\u0442\u043d\u0438 \u043f\u043e \u0442\u0438\u043f\u043e\u0433\u0440\u0430\u0444\u0438\u044f\u043c<\/li>\r\n                <li><i class=\"fa-solid fa-laptop-code\"><\/i> \u041e\u0434\u043d\u043e- \u0438 \u043c\u043d\u043e\u0433\u043e\u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043d\u044b\u0435 \u0441\u0430\u0439\u0442\u044b \u043f\u043e\u0434 \u043b\u044e\u0431\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438<\/li>\r\n                <li><i class=\"fa-solid fa-graduation-cap\"><\/i> \u041e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0432\u0435\u0434\u0435\u043d\u0438\u044e \u0441\u0430\u0439\u0442\u0430 \u0437\u0430 30 \u043c\u0438\u043d\u0443\u0442<\/li>\r\n            <\/ul>\r\n            \r\n            <div class=\"divider-v6\"><\/div>\r\n            \r\n            <div class=\"footer-msg-v6\">\r\n                \u0412\u0441\u0451 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u0434\u0435\u043b\u0430 \u0432 \u043e\u0434\u043d\u043e\u043c \u043c\u0435\u0441\u0442\u0435\r\n                <b>\u0411\u0435\u0437 \u0422\u0417, \u0431\u0435\u0437 \u0431\u0435\u0433\u043e\u0442\u043d\u0438 \u0438 \u0431\u0435\u0437 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u0432<\/b>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function() {\r\n    const canvas = document.getElementById('v6NetCanvas');\r\n    const ctx = canvas.getContext('2d');\r\n    let w, h, pts = [];\r\n    let mouse = { x: -1000, y: -1000 };\r\n\r\n    function init() {\r\n        w = canvas.width = window.innerWidth;\r\n        h = canvas.height = window.innerHeight;\r\n        pts = [];\r\n        const count = Math.floor((w * h) \/ 6000); \r\n        for (let i = 0; i < count; i++) {\r\n            pts.push({\r\n                x: Math.random() * w,\r\n                y: Math.random() * h,\r\n                vx: (Math.random() - 0.5) * 0.5,\r\n                vy: (Math.random() - 0.5) * 0.5,\r\n                r: Math.random() * 2 + 1\r\n            });\r\n        }\r\n    }\r\n\r\n    function draw() {\r\n        ctx.clearRect(0, 0, w, h);\r\n        for (let i = 0; i < pts.length; i++) {\r\n            let p = pts[i];\r\n            p.x += p.vx; p.y += p.vy;\r\n\r\n            if (p.x < 0 || p.x > w) p.vx *= -1;\r\n            if (p.y < 0 || p.y > h) p.vy *= -1;\r\n\r\n            let dx = mouse.x - p.x;\r\n            let dy = mouse.y - p.y;\r\n            let dMouse = Math.sqrt(dx*dx + dy*dy);\r\n            if (dMouse < 150) {\r\n                p.x += dx * 0.01;\r\n                p.y += dy * 0.01;\r\n            }\r\n\r\n            ctx.beginPath();\r\n            ctx.arc(p.x, p.y, p.r, 0, Math.PI * 2);\r\n            ctx.fillStyle = 'rgba(134, 239, 172, 0.9)';\r\n            ctx.fill();\r\n\r\n            for (let j = i + 1; j < pts.length; j++) {\r\n                let p2 = pts[j];\r\n                let dist = Math.hypot(p.x - p2.x, p.y - p2.y);\r\n                if (dist < 130) {\r\n                    ctx.beginPath();\r\n                    ctx.moveTo(p.x, p.y);\r\n                    ctx.lineTo(p2.x, p2.y);\r\n                    ctx.strokeStyle = `rgba(74, 222, 128, ${0.7 * (1 - dist \/ 130)})`;\r\n                    ctx.lineWidth = 1.5; \r\n                    ctx.stroke();\r\n                }\r\n            }\r\n        }\r\n        requestAnimationFrame(draw);\r\n    }\r\n\r\n    window.addEventListener('mousemove', e => { mouse.x = e.clientX; mouse.y = e.clientY; });\r\n    window.addEventListener('touchmove', e => {\r\n        if (e.touches.length > 0) {\r\n            mouse.x = e.touches[0].clientX;\r\n            mouse.y = e.touches[0].clientY;\r\n        }\r\n    }, {passive: true});\r\n    window.addEventListener('resize', init);\r\n\r\n    init();\r\n    draw();\r\n})();\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1c21fe56 elementor-widget elementor-widget-text-editor\" data-id=\"1c21fe56\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"ru\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>MagicPage \u2014 \u0421\u0430\u0439\u0442\u044b \u0411\u0443\u0434\u0443\u0449\u0435\u0433\u043e<\/title>\n    <!-- Font Awesome -->\n    <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\">\n    <!-- \u0428\u0440\u0438\u0444\u0442 Montserrat -->\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@300;400;600;700;800;900&#038;display=swap\" rel=\"stylesheet\">\n\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n        }\n\n        html {\n            scroll-behavior: smooth;\n        }\n\n        body {\n            background-color: #020307;\n            font-family: 'Montserrat', sans-serif;\n            color: #ffffff;\n            overflow-x: hidden;\n            line-height: 1.6;\n        }\n\n        \/* WebGL Canvas \u043d\u0430 \u0432\u0435\u0441\u044c \u044d\u043a\u0440\u0430\u043d *\/\n        #glcanvas {\n            position: fixed;\n            top: 0;\n            left: 0;\n            width: 100vw;\n            height: 100vh;\n            z-index: 1;\n            pointer-events: none;\n        }\n\n        \/* \u041a\u0420\u0410\u0421\u0418\u0412\u0410\u042f \u0424\u0418\u041a\u0421\u0418\u0420\u041e\u0412\u0410\u041d\u041d\u0410\u042f \u0428\u0410\u041f\u041a\u0410 (HEADER) *\/\n        .site-header {\n            position: fixed;\n            top: 0;\n            left: 0;\n            width: 100%;\n            z-index: 100;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            padding: 14px 24px;\n            background: rgba(8, 12, 24, 0.65);\n            backdrop-filter: blur(20px);\n            -webkit-backdrop-filter: blur(20px);\n            border-bottom: 1px solid rgba(167, 139, 250, 0.25);\n            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);\n        }\n\n        .header-logo {\n            display: flex;\n            align-items: center;\n            gap: 10px;\n            font-weight: 900;\n            font-size: 1.15rem;\n            letter-spacing: 2px;\n            text-transform: uppercase;\n            color: #ffffff;\n            text-decoration: none;\n        }\n\n        .header-logo i {\n            color: #c4b5fd;\n            font-size: 1.25rem;\n            text-shadow: 0 0 12px rgba(196, 181, 253, 0.8);\n        }\n\n        .header-logo span {\n            background: linear-gradient(135deg, #ffffff 30%, #c4b5fd 100%);\n            -webkit-background-clip: text;\n            -webkit-text-fill-color: transparent;\n        }\n\n        .header-btn {\n            display: inline-flex;\n            align-items: center;\n            gap: 8px;\n            background: rgba(139, 92, 246, 0.25);\n            border: 1px solid rgba(167, 139, 250, 0.5);\n            color: #ffffff;\n            font-size: 0.88rem;\n            font-weight: 700;\n            padding: 8px 18px;\n            border-radius: 30px;\n            text-decoration: none;\n            transition: all 0.3s ease;\n        }\n\n        .header-btn:hover {\n            background: rgba(139, 92, 246, 0.5);\n            box-shadow: 0 0 15px rgba(167, 139, 250, 0.5);\n        }\n\n        .content-layer {\n            position: relative;\n            z-index: 10;\n            width: 100%;\n        }\n\n        section {\n            min-height: 100vh;\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            padding: 130px 20px 80px 20px;\n            text-align: center;\n        }\n\n        \/* -------------------------------------------------------------\n           \u041e\u0411\u042a\u0415\u041c\u041d\u042b\u0419 \u0421\u0422\u0415\u041a\u041b\u042f\u041d\u041d\u042b\u0419 \u0417\u0410\u0413\u041e\u041b\u041e\u0412\u041e\u041a (\u0421\u0422\u0418\u041b\u042c 3D LIQUID\/FROSTED GLASS)\n           \u041f\u043e \u043e\u0431\u0440\u0430\u0437\u0446\u0443 \u0446\u0438\u0444\u0435\u0440\u0431\u043b\u0430\u0442\u0430 \u0447\u0430\u0441\u043e\u0432: \u043f\u043b\u043e\u0442\u043d\u044b\u0439 \u043c\u0430\u0442\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043c \u0441 \u0444\u0430\u0441\u043a\u043e\u0439 \u0438 \u0441\u0432\u0435\u0442\u043e\u043c\n           ------------------------------------------------------------- *\/\n        .glass-3d-title {\n            position: relative;\n            display: inline-block;\n            font-size: clamp(2.3rem, 8vw, 4.4rem);\n            font-weight: 900;\n            text-transform: uppercase;\n            letter-spacing: 4px;\n            line-height: 1.1;\n            margin-bottom: 28px;\n            text-align: center;\n            \/* \u041f\u043b\u043e\u0442\u043d\u044b\u0439 \u0441\u0442\u0435\u043a\u043b\u044f\u043d\u043d\u044b\u0439 \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442 (\u0431\u0435\u043b\u043e-\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0432\u0435\u0440\u0445, \u0434\u044b\u043c\u0447\u0430\u0442\u044b\u0439 \u043d\u0438\u0437) *\/\n            color: #dce2eb;\n            background: linear-gradient(\n                180deg,\n                #ffffff 0%,\n                #e5ebf3 32%,\n                #b0bccb 68%,\n                #6c7a8d 100%\n            );\n            -webkit-background-clip: text;\n            -webkit-text-fill-color: transparent;\n            \/* \u041c\u043d\u043e\u0433\u043e\u0441\u043b\u043e\u0439\u043d\u0430\u044f 3D \u0444\u0430\u0441\u043a\u0430: \u0432\u0435\u0440\u0445\u043d\u0438\u0439 \u0431\u043b\u0438\u043a, \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u0433\u043b\u0443\u0431\u0438\u043d\u0430, \u043e\u0431\u044a\u0435\u043c\u043d\u043e\u0435 \u0442\u0435\u043b\u043e \u0438 \u043c\u044f\u0433\u043a\u0430\u044f \u0442\u0435\u043d\u044c *\/\n            filter: drop-shadow(0 -1px 1px rgba(255, 255, 255, 0.95))\n                    drop-shadow(0 2px 1px rgba(255, 255, 255, 0.45))\n                    drop-shadow(0 4px 4px rgba(15, 22, 35, 0.85))\n                    drop-shadow(0 8px 12px rgba(3, 6, 15, 0.9))\n                    drop-shadow(0 16px 30px rgba(139, 92, 246, 0.35));\n            transform: perspective(600px) translateZ(0);\n            transition: all 0.4s ease;\n        }\n\n        .glass-3d-title:hover {\n            transform: perspective(600px) translateY(-2px) scale(1.01);\n            filter: drop-shadow(0 -1px 2px rgba(255, 255, 255, 1.0))\n                    drop-shadow(0 2px 2px rgba(255, 255, 255, 0.6))\n                    drop-shadow(0 5px 6px rgba(15, 22, 35, 0.9))\n                    drop-shadow(0 10px 18px rgba(3, 6, 15, 0.95))\n                    drop-shadow(0 20px 40px rgba(167, 139, 250, 0.5));\n        }\n\n        \/* \u041f\u043e\u043b\u0443\u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u044b\u0435 \u0441\u0442\u0435\u043a\u043b\u044f\u043d\u043d\u044b\u0435 \u043f\u043b\u0430\u0448\u043a\u0438 *\/\n        .glass-card {\n            background: rgba(10, 14, 28, 0.52);\n            backdrop-filter: blur(28px);\n            -webkit-backdrop-filter: blur(28px);\n            border: 1px solid rgba(167, 139, 250, 0.35);\n            border-top: 1px solid rgba(255, 255, 255, 0.55);\n            border-bottom: 1px solid rgba(96, 165, 250, 0.3);\n            padding: 42px 45px;\n            border-radius: 32px;\n            max-width: 620px;\n            width: 100%;\n            margin-bottom: 30px;\n            box-shadow: 0 30px 65px rgba(0, 0, 0, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.15);\n            transition: all 0.4s ease;\n            cursor: pointer;\n            pointer-events: auto;\n        }\n\n        .glass-card:hover {\n            transform: translateY(-3px) scale(1.01);\n            border-color: rgba(192, 132, 252, 0.65);\n            box-shadow: 0 35px 75px rgba(124, 58, 237, 0.35);\n        }\n\n        .problem-list {\n            list-style: none;\n            text-align: left;\n            margin-bottom: 25px;\n            display: inline-block;\n        }\n\n        .problem-list li {\n            font-size: 1.22rem;\n            font-weight: 500;\n            color: rgba(255, 255, 255, 0.95);\n            margin-bottom: 14px;\n            display: flex;\n            align-items: center;\n            gap: 15px;\n            letter-spacing: 0.4px;\n        }\n\n        .problem-list li i {\n            color: #a78bfa;\n            font-size: 1.3rem;\n            width: 26px;\n            text-align: center;\n            text-shadow: 0 0 12px rgba(167, 139, 250, 0.8);\n        }\n\n        .divider {\n            height: 1px;\n            background: linear-gradient(90deg, transparent, rgba(167, 139, 250, 0.6), transparent);\n            margin-bottom: 25px;\n            width: 100%;\n        }\n\n        .reassurance {\n            font-size: 1.35rem;\n            font-weight: 300;\n            line-height: 1.5;\n            color: rgba(255, 255, 255, 0.88);\n            letter-spacing: 0.5px;\n        }\n\n        .reassurance span {\n            font-weight: 700;\n            color: #ffffff;\n            display: block;\n            margin-top: 6px;\n            background: linear-gradient(90deg, #ffffff, #c4b5fd);\n            -webkit-background-clip: text;\n            -webkit-text-fill-color: transparent;\n        }\n\n        .phone-button {\n            display: inline-flex;\n            align-items: center;\n            gap: 12px;\n            background: rgba(139, 92, 246, 0.22);\n            backdrop-filter: blur(15px);\n            -webkit-backdrop-filter: blur(15px);\n            border: 1px solid rgba(167, 139, 250, 0.45);\n            color: #ffffff;\n            font-size: 1.25rem;\n            font-weight: 700;\n            padding: 16px 36px;\n            border-radius: 50px;\n            text-decoration: none;\n            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n            cursor: pointer;\n            pointer-events: auto;\n            box-shadow: 0 10px 25px rgba(124, 58, 237, 0.25);\n            letter-spacing: 1px;\n        }\n\n        .phone-button i {\n            color: #c4b5fd;\n            animation: pulse 1.8s infinite;\n        }\n\n        .phone-button:hover {\n            transform: scale(1.05);\n            background: rgba(139, 92, 246, 0.38);\n            border-color: #c4b5fd;\n            box-shadow: 0 15px 35px rgba(139, 92, 246, 0.5);\n        }\n\n        @keyframes pulse {\n            0% { transform: scale(1); }\n            50% { transform: scale(1.15); }\n            100% { transform: scale(1); }\n        }\n\n        \/* --- \u0412\u0422\u041e\u0420\u041e\u0419 \u042d\u041a\u0420\u0410\u041d --- *\/\n        .section-title {\n            font-size: 2.3rem;\n            font-weight: 700;\n            margin-bottom: 45px;\n            color: #ffffff;\n            letter-spacing: 1px;\n        }\n\n        .features-grid {\n            display: grid;\n            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n            gap: 22px;\n            max-width: 1040px;\n            width: 100%;\n        }\n\n        .feature-item {\n            background: rgba(12, 16, 30, 0.55);\n            backdrop-filter: blur(20px);\n            -webkit-backdrop-filter: blur(20px);\n            border: 1px solid rgba(167, 139, 250, 0.28);\n            padding: 32px 28px;\n            border-radius: 26px;\n            transition: all 0.3s ease;\n            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);\n            text-align: left;\n            cursor: pointer;\n            pointer-events: auto;\n        }\n\n        .feature-item:hover {\n            background: rgba(139, 92, 246, 0.2);\n            border-color: rgba(192, 132, 252, 0.6);\n            transform: translateY(-5px);\n            box-shadow: 0 25px 50px rgba(124, 58, 237, 0.3);\n        }\n\n        .step-tag {\n            font-size: 0.78rem;\n            font-weight: 700;\n            letter-spacing: 1.5px;\n            text-transform: uppercase;\n            color: #a78bfa;\n            background: rgba(167, 139, 250, 0.15);\n            border: 1px solid rgba(167, 139, 250, 0.35);\n            padding: 4px 10px;\n            border-radius: 8px;\n            display: inline-block;\n            margin-bottom: 14px;\n        }\n\n        .feature-icon {\n            font-size: 2.2rem;\n            color: #c4b5fd;\n            margin-bottom: 14px;\n            text-shadow: 0 0 16px rgba(167, 139, 250, 0.6);\n        }\n\n        .feature-item h3 {\n            font-size: 1.25rem;\n            margin-bottom: 10px;\n            font-weight: 600;\n            color: #ffffff;\n        }\n\n        .feature-item p {\n            font-size: 0.96rem;\n            color: rgba(255, 255, 255, 0.82);\n            font-weight: 300;\n            line-height: 1.6;\n        }\n\n        \/* --- \u0422\u0420\u0415\u0422\u0418\u0419 \u042d\u041a\u0420\u0410\u041d --- *\/\n        .about-text {\n            max-width: 740px;\n            font-size: 1.2rem;\n            font-weight: 300;\n            background: rgba(12, 16, 30, 0.58);\n            backdrop-filter: blur(20px);\n            -webkit-backdrop-filter: blur(20px);\n            border: 1px solid rgba(167, 139, 250, 0.3);\n            border-left: 4px solid #a78bfa;\n            padding: 42px 40px;\n            border-radius: 28px;\n            box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5);\n            line-height: 1.75;\n            text-align: left;\n            cursor: pointer;\n            pointer-events: auto;\n        }\n\n        footer {\n            padding: 40px 20px;\n            text-align: center;\n            font-size: 0.9rem;\n            opacity: 0.6;\n            font-weight: 300;\n        }\n\n        @media (max-width: 768px) {\n            section { padding: 115px 15px 60px 15px; }\n            .features-grid { grid-template-columns: 1fr; }\n            .glass-3d-title { font-size: 2.4rem; letter-spacing: 2px; }\n            .glass-card { padding: 30px 22px; }\n            .problem-list li { font-size: 1.05rem; }\n            .reassurance { font-size: 1.15rem; }\n            .phone-button { font-size: 1.1rem; padding: 14px 28px; }\n            .about-text { padding: 25px; font-size: 1.05rem; }\n            .site-header { padding: 10px 16px; }\n            .header-logo { font-size: 0.95rem; }\n            .header-btn { font-size: 0.78rem; padding: 6px 14px; }\n        }\n    <\/style>\n<\/head>\n<body>\n\n    <!-- \u0428\u0410\u041f\u041a\u0410 \u0421\u0410\u0419\u0422\u0410 \u0421 \u041b\u041e\u0413\u041e\u0422\u0418\u041f\u041e\u041c \u0418 \u0411\u042b\u0421\u0422\u0420\u042b\u041c \u0417\u0412\u041e\u041d\u041a\u041e\u041c -->\n    <header class=\"site-header\">\n        <a href=\"#\" class=\"header-logo\">\n            <i class=\"fa-solid fa-wand-magic-sparkles\"><\/i>\n            <span>MagicPage38<\/span>\n        <\/a>\n        <a href=\"tel:+79041522734\" class=\"header-btn\">\n            <i class=\"fa-solid fa-phone\"><\/i> \u041f\u043e\u0437\u0432\u043e\u043d\u0438\u0442\u044c\n        <\/a>\n    <\/header>\n\n    <!-- WebGL Canvas: \u0421\u0438\u044f\u044e\u0449\u0438\u0435 \u0431\u043e\u043a\u0435-\u0437\u0432\u0435\u0437\u0434\u044b \u0441 \u0440\u0430\u0441\u0441\u044b\u043f\u0430\u043d\u0438\u0435\u043c -->\n    <canvas id=\"glcanvas\"><\/canvas>\n\n    <div class=\"content-layer\">\n        \n        <!-- \u041f\u0415\u0420\u0412\u042b\u0419 \u042d\u041a\u0420\u0410\u041d -->\n        <section id=\"hero\">\n            <!-- 3D \u0421\u0422\u0415\u041a\u041b\u042f\u041d\u041d\u042b\u0419 \u041e\u0411\u042a\u0415\u041c\u041d\u042b\u0419 \u0417\u0410\u0413\u041e\u041b\u041e\u0412\u041e\u041a \u0412 \u0421\u0422\u0418\u041b\u0415 \u0426\u0418\u0424\u0415\u0420\u0411\u041b\u0410\u0422\u0410 -->\n            <h1 class=\"glass-3d-title\">\u0421\u0430\u0439\u0442\u044b \u0411\u0443\u0434\u0443\u0449\u0435\u0433\u043e<\/h1>\n\n            <div class=\"glass-card\">\n                <ul class=\"problem-list\">\n                    <li><i class=\"fa-solid fa-bolt\"><\/i> \u041e\u0431\u044b\u0447\u043d\u044b\u0435 \u0441\u0430\u0439\u0442\u044b \u043d\u0435 \u0446\u0435\u043f\u043b\u044f\u044e\u0442?<\/li>\n                    <li><i class=\"fa-solid fa-cubes\"><\/i> \u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0441 Tilda \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0441\u043a\u0443\u0447\u043d\u043e?<\/li>\n                    <li><i class=\"fa-solid fa-mobile-screen-button\"><\/i> \u041d\u0443\u0436\u043d\u0430 \u0436\u0438\u0432\u0430\u044f \u0446\u0438\u0444\u0440\u043e\u0432\u0430\u044f \u0432\u0438\u0437\u0438\u0442\u043a\u0430?<\/li>\n                <\/ul>\n                <div class=\"divider\"><\/div>\n                <p class=\"reassurance\">\n                    \u0417\u0430\u0431\u0443\u0434\u044c\u0442\u0435 \u043e \u0441\u043a\u0443\u0447\u043d\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u0430\u0445!<br>\n                    <span>\u0421\u043e\u0437\u0434\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u0441\u0430\u0439\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043f\u043e\u043c\u043d\u044f\u0442<\/span>\n                <\/p>\n            <\/div>\n\n            <a href=\"tel:+79041522734\" class=\"phone-button\">\n                <i class=\"fa-solid fa-phone\"><\/i> 8 (904) 152-27-34\n            <\/a>\n\n            <div style=\"margin-top: 30px; opacity: 0.55; font-size: 0.9rem;\">\n                \u041b\u0438\u0441\u0442\u0430\u0439\u0442\u0435 \u0432\u043d\u0438\u0437 <br> <i class=\"fa-solid fa-chevron-down\" style=\"margin-top: 6px;\"><\/i>\n            <\/div>\n        <\/section>\n\n        <!-- \u0412\u0422\u041e\u0420\u041e\u0419 \u042d\u041a\u0420\u0410\u041d: \u041f\u041e\u0428\u0410\u0413\u041e\u0412\u0410\u042f \u0420\u0410\u0411\u041e\u0422\u0410 -->\n        <section id=\"advantages\">\n            <h2 class=\"section-title\">\u041a\u0430\u043a \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0432\u0430\u0448 \u0441\u0430\u0439\u0442<\/h2>\n            <div class=\"features-grid\">\n                <div class=\"feature-item\">\n                    <span class=\"step-tag\">\u0428\u0430\u0433 1<\/span>\n                    <div class=\"feature-icon\"><i class=\"fa-solid fa-comments\"><\/i><\/div>\n                    <h3>\u041e\u0431\u0441\u0443\u0436\u0434\u0430\u0435\u043c \u043c\u0430\u043a\u0435\u0442<\/h3>\n                    <p>\u0412\u044b\u044f\u0441\u043d\u044f\u0435\u043c \u0432\u0430\u0448\u0438 \u0446\u0435\u043b\u0438, \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u044d\u0444\u0444\u0435\u043a\u0442\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u0444\u043e\u043d, \u0446\u0432\u0435\u0442\u043e\u0432\u0443\u044e \u0433\u0430\u043c\u043c\u0443 \u0438 \u043f\u0440\u043e\u0434\u0443\u043c\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u043e\u0434\u0430\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.<\/p>\n                <\/div>\n                <div class=\"feature-item\">\n                    <span class=\"step-tag\">\u0428\u0430\u0433 2<\/span>\n                    <div class=\"feature-icon\"><i class=\"fa-solid fa-wand-magic-sparkles\"><\/i><\/div>\n                    <h3>\u0418\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u0432\u0451\u0440\u0441\u0442\u043a\u0430<\/h3>\n                    <p>\u041f\u0438\u0448\u0435\u043c \u0447\u0438\u0441\u0442\u044b\u0439 \u043b\u0451\u0433\u043a\u0438\u0439 \u043a\u043e\u0434 \u0441 \u0436\u0438\u0432\u044b\u043c\u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043b\u0430\u0432\u043d\u043e \u0440\u0435\u0430\u0433\u0438\u0440\u0443\u044e\u0442 \u043d\u0430 \u043f\u0430\u043b\u044c\u0446\u044b \u0438 \u043c\u044b\u0448\u043a\u0443, \u0432\u044b\u0434\u0435\u043b\u044f\u044f \u0432\u0430\u0441 \u0441\u0440\u0435\u0434\u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043e\u0432.<\/p>\n                <\/div>\n                <div class=\"feature-item\">\n                    <span class=\"step-tag\">\u0428\u0430\u0433 3<\/span>\n                    <div class=\"feature-icon\"><i class=\"fa-brands fa-wordpress\"><\/i><\/div>\n                    <h3>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u043d\u0430 WordPress<\/h3>\n                    <p>\u0421\u0430\u0436\u0430\u0435\u043c \u0441\u0430\u0439\u0442 \u043d\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0434\u0432\u0438\u0436\u043e\u043a, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0434\u043e\u043c\u0435\u043d, \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c QR-\u0432\u0438\u0437\u0438\u0442\u043a\u0443 \u0434\u043b\u044f \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440\u043e\u0432.<\/p>\n                <\/div>\n                <div class=\"feature-item\">\n                    <span class=\"step-tag\">\u0428\u0430\u0433 4<\/span>\n                    <div class=\"feature-icon\"><i class=\"fa-solid fa-graduation-cap\"><\/i><\/div>\n                    <h3>\u041e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044e<\/h3>\n                    <p>\u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u0430\u0434\u043c\u0438\u043d\u043a\u0443: \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0430\u043c\u0438 \u0437\u0430 2 \u043c\u0438\u043d\u0443\u0442\u044b \u0432 \u043f\u0430\u0440\u0443 \u043a\u043b\u0438\u043a\u043e\u0432 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0446\u0435\u043d\u044b, \u043d\u043e\u043c\u0435\u0440\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0438\u043b\u0438 \u0442\u0435\u043a\u0441\u0442\u044b \u0431\u0435\u0437 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432.<\/p>\n                <\/div>\n            <\/div>\n        <\/section>\n\n        <!-- \u0422\u0420\u0415\u0422\u0418\u0419 \u042d\u041a\u0420\u0410\u041d -->\n        <section id=\"about\">\n            <h2 class=\"section-title\">\u0420\u0430\u0431\u043e\u0442\u0430\u044e \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442<\/h2>\n            <div class=\"about-text\">\n                &#171;\u042f \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u044e \u043a\u0440\u0430\u0441\u0438\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u0430 \u043e\u0442\u0434\u0430\u044e \u0432\u0430\u043c \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043f\u043e\u0434 \u043a\u043b\u044e\u0447. \u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u0432\u0430\u0443-\u044d\u0444\u0444\u0435\u043a\u0442 \u0434\u043b\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432, \u0443\u0434\u043e\u0431\u043d\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0430\u0439\u0442\u043e\u043c \u0432 WordPress \u0438 \u043f\u043e\u043b\u043d\u0443\u044e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c: \u0432 \u043b\u044e\u0431\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0430\u043c\u0438 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0441\u0442\u0440\u043e\u0447\u043a\u0443.<br><br><strong>\u0412\u0430\u0448 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u0435\u0431-\u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440.<\/strong>&#187;\n            <\/div>\n            <a href=\"tel:+79041522734\" class=\"phone-button\" style=\"margin-top: 45px;\">\n                <i class=\"fa-solid fa-comments\"><\/i> \u041e\u0431\u0441\u0443\u0434\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442\n            <\/a>\n        <\/section>\n\n        <footer>\n            &copy; 2026 \u0421\u0442\u0443\u0434\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0432\u0435\u0431-\u0434\u0438\u0437\u0430\u0439\u043d\u0430 MagicPage38. \u0412\u0441\u0435 \u043f\u0440\u0430\u0432\u0430 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u044b.\n        <\/footer>\n    <\/div>\n\n    <!-- WebGL \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044f \u0441\u043f\u0438\u0440\u0430\u043b\u044c\u043d\u043e\u0439 \u0433\u0430\u043b\u0430\u043a\u0442\u0438\u043a\u0438 \u0441 \u044d\u0444\u0444\u0435\u043a\u0442\u043e\u043c \u0440\u0430\u0441\u0441\u044b\u043f\u0430\u043d\u0438\u044f \u0437\u0432\u0451\u0437\u0434 -->\n    <script>\n        const canvas = document.getElementById('glcanvas');\n        const gl = canvas.getContext('webgl', { alpha: false, antialias: true, powerPreference: \"high-performance\" });\n\n        if (!gl) {\n            console.error('WebGL \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f');\n        }\n\n        const vsSource = `\n            attribute vec2 a_basePos;\n            attribute vec2 a_scatterDir;\n            attribute float a_size;\n            attribute vec3 a_color;\n            attribute float a_phase;\n\n            uniform vec2 u_resolution;\n            uniform vec2 u_mouse;\n            uniform float u_time;\n            uniform float u_scatter;\n\n            varying vec3 v_color;\n            varying float v_twinkle;\n\n            void main() {\n                float spin = u_time * 0.15;\n                float cosS = cos(spin);\n                float sinS = sin(spin);\n                vec2 rotatedSpiral = vec2(\n                    a_basePos.x * cosS - a_basePos.y * sinS,\n                    a_basePos.x * sinS + a_basePos.y * cosS\n                );\n\n                vec2 scatteredPos = rotatedSpiral + a_scatterDir * (1.6 + length(a_basePos) * 0.8);\n                vec2 pos = mix(rotatedSpiral, scatteredPos, u_scatter);\n\n                vec2 mouseNorm = (u_mouse \/ u_resolution) * 2.0 - 1.0;\n                mouseNorm.y = -mouseNorm.y;\n                mouseNorm.x *= (u_resolution.x \/ u_resolution.y);\n\n                vec2 diff = pos - mouseNorm;\n                float distToMouse = length(diff);\n                if (distToMouse < 0.6) {\n                    float push = (1.0 - distToMouse \/ 0.6) * 0.35;\n                    pos += normalize(diff) * push;\n                }\n\n                vec2 screenPos = pos;\n                screenPos.x \/= (u_resolution.x \/ u_resolution.y);\n\n                gl_Position = vec4(screenPos, 0.0, 1.0);\n\n                float pixelRatio = 1.5;\n                gl_PointSize = a_size * pixelRatio * (1.0 + 0.3 * sin(u_time * 3.0 + a_phase));\n\n                v_color = a_color;\n                v_twinkle = 0.8 + 0.25 * sin(u_time * 2.5 + a_phase);\n            }\n        `;\n\n        const fsSource = `\n            precision highp float;\n            varying vec3 v_color;\n            varying float v_twinkle;\n\n            void main() {\n                vec2 coord = gl_PointCoord * 2.0 - 1.0;\n                float r = length(coord);\n\n                if (r > 1.0) {\n                    discard;\n                }\n\n                float core = smoothstep(0.35, 0.0, r);\n                float glow = smoothstep(1.0, 0.0, r);\n                float alpha = (core * 0.7 + glow * 0.45) * v_twinkle;\n\n                vec3 finalColor = mix(v_color, vec3(1.0, 1.0, 1.0), core * 0.8);\n\n                gl_FragColor = vec4(finalColor, alpha);\n            }\n        `;\n\n        function createShader(gl, type, source) {\n            const s = gl.createShader(type);\n            gl.shaderSource(s, source);\n            gl.compileShader(shader = s);\n            if (!gl.getShaderParameter(s, gl.COMPILE_STATUS)) {\n                console.error(gl.getShaderInfoLog(s));\n                gl.deleteShader(s);\n                return null;\n            }\n            return s;\n        }\n\n        const program = gl.createProgram();\n        gl.attachShader(program, createShader(gl, gl.VERTEX_SHADER, vsSource));\n        gl.attachShader(program, createShader(gl, gl.FRAGMENT_SHADER, fsSource));\n        gl.linkProgram(program);\n        gl.useProgram(program);\n\n        const STAR_COUNT = 3800;\n        const ARMS = 3;\n\n        const basePos = [];\n        const scatterDirs = [];\n        const sizes = [];\n        const colors = [];\n        const phases = [];\n\n        for (let i = 0; i < STAR_COUNT; i++) {\n            const r = Math.pow(Math.random(), 1.6) * 1.35;\n            const armOffset = (i % ARMS) * ((Math.PI * 2) \/ ARMS);\n            const spiralAngle = r * 4.2 + armOffset;\n\n            const spread = (Math.random() - 0.5) * (0.12 + r * 0.22);\n            const x = Math.cos(spiralAngle) * r + (Math.random() - 0.5) * spread;\n            const y = Math.sin(spiralAngle) * r + (Math.random() - 0.5) * spread;\n\n            basePos.push(x, y);\n\n            const scatterAngle = Math.atan2(y, x) + (Math.random() - 0.5) * 1.2;\n            const scatterSpeed = 0.4 + Math.random() * 0.9;\n            scatterDirs.push(Math.cos(scatterAngle) * scatterSpeed, Math.sin(scatterAngle) * scatterSpeed);\n\n            let s = 2.0 + Math.random() * 5.0;\n            if (Math.random() > 0.92) s = 8.0 + Math.random() * 7.0;\n            if (r < 0.15) s += 4.0;\n            sizes.push(s);\n\n            const isWarm = Math.random() < 0.38;\n            if (isWarm) {\n                colors.push(0.98, 0.70 + Math.random() * 0.2, 0.45 + Math.random() * 0.25);\n            } else {\n                colors.push(0.85 + Math.random() * 0.15, 0.92 + Math.random() * 0.08, 1.0);\n            }\n\n            phases.push(Math.random() * Math.PI * 2);\n        }\n\n        function bindBuffer(data, attribLocation, size) {\n            const buf = gl.createBuffer();\n            gl.bindBuffer(gl.ARRAY_BUFFER, buf);\n            gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(data), gl.STATIC_DRAW);\n            gl.enableVertexAttribArray(attribLocation);\n            gl.vertexAttribPointer(attribLocation, size, gl.FLOAT, false, 0, 0);\n        }\n\n        bindBuffer(basePos, gl.getAttribLocation(program, \"a_basePos\"), 2);\n        bindBuffer(scatterDirs, gl.getAttribLocation(program, \"a_scatterDir\"), 2);\n        bindBuffer(sizes, gl.getAttribLocation(program, \"a_size\"), 1);\n        bindBuffer(colors, gl.getAttribLocation(program, \"a_color\"), 3);\n        bindBuffer(phases, gl.getAttribLocation(program, \"a_phase\"), 1);\n\n        const uResLoc = gl.getUniformLocation(program, \"u_resolution\");\n        const uMouseLoc = gl.getUniformLocation(program, \"u_mouse\");\n        const uTimeLoc = gl.getUniformLocation(program, \"u_time\");\n        const uScatterLoc = gl.getUniformLocation(program, \"u_scatter\");\n\n        gl.enable(gl.BLEND);\n        gl.blendFunc(gl.SRC_ALPHA, gl.ONE);\n\n        let mouseX = window.innerWidth \/ 2, mouseY = window.innerHeight \/ 2;\n        let targetX = mouseX, targetY = mouseY;\n        let isTouching = false;\n        let scatterFactor = 0.0;\n        let targetScatter = 0.0;\n\n        window.addEventListener('mousemove', e => {\n            targetX = e.clientX;\n            targetY = e.clientY;\n        });\n\n        window.addEventListener('mousedown', () => {\n            isTouching = true;\n            targetScatter = 0.95;\n        });\n        window.addEventListener('mouseup', () => {\n            isTouching = false;\n            targetScatter = 0.0;\n        });\n\n        window.addEventListener('touchstart', e => {\n            if (e.touches.length) {\n                targetX = e.touches[0].clientX;\n                targetY = e.touches[0].clientY;\n                isTouching = true;\n                targetScatter = 0.95;\n            }\n        }, { passive: true });\n\n        window.addEventListener('touchmove', e => {\n            if (e.touches.length) {\n                targetX = e.touches[0].clientX;\n                targetY = e.touches[0].clientY;\n            }\n        }, { passive: true });\n\n        window.addEventListener('touchend', () => {\n            isTouching = false;\n            targetScatter = 0.0;\n        });\n\n        window.addEventListener('scroll', () => {\n            const maxScroll = document.documentElement.scrollHeight - window.innerHeight;\n            const scrollRatio = Math.min(window.scrollY \/ (maxScroll || 1), 1.0);\n            \n            if (!isTouching) {\n                targetScatter = scrollRatio * 0.85;\n            }\n        });\n\n        document.querySelectorAll('.glass-card, .feature-item, .about-text').forEach(el => {\n            el.addEventListener('click', () => {\n                targetScatter = 1.0;\n                setTimeout(() => {\n                    if (!isTouching) targetScatter = 0.0;\n                }, 900);\n            });\n        });\n\n        function resize() {\n            canvas.width = window.innerWidth;\n            canvas.height = window.innerHeight;\n            gl.viewport(0, 0, canvas.width, canvas.height);\n        }\n        window.addEventListener('resize', resize);\n        resize();\n\n        function render(time) {\n            mouseX += (targetX - mouseX) * 0.06;\n            mouseY += (targetY - mouseY) * 0.06;\n\n            scatterFactor += (targetScatter - scatterFactor) * 0.07;\n\n            gl.clearColor(0.01, 0.015, 0.03, 1.0);\n            gl.clear(gl.COLOR_BUFFER_BIT);\n\n            gl.uniform2f(uResLoc, canvas.width, canvas.height);\n            gl.uniform2f(uMouseLoc, mouseX, mouseY);\n            gl.uniform1f(uTimeLoc, time * 0.001);\n            gl.uniform1f(uScatterLoc, scatterFactor);\n\n            gl.drawArrays(gl.POINTS, 0, STAR_COUNT);\n\n            requestAnimationFrame(render);\n        }\n        requestAnimationFrame(render);\n    <\/script>\n<\/body>\n<\/html>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Magic Page 38 \u041f\u043e\u0437\u0432\u043e\u043d\u0438\u0442\u044c \u0421\u043e\u0437\u0434\u0430\u0451\u043c \u0436\u0438\u0432\u044b\u0435 \u0441\u0430\u0439\u0442\u044b \u0438 \u0432\u0438\u0437\u0438\u0442\u043a\u0438 \u043f\u043e\u0434 \u043a\u043b\u044e\u0447 \u0423\u043f\u0430\u043a\u043e\u0432\u043a\u0430 \u041c\u0430\u0441\u0442\u0435\u0440\u0430 \u0412\u0438\u0437\u0438\u0442\u043a\u0438 \u0441 QR-\u043a\u043e\u0434\u043e\u043c \u0431\u0435\u0437 \u0431\u0435\u0433\u043e\u0442\u043d\u0438 \u043f\u043e \u0442\u0438\u043f\u043e\u0433\u0440\u0430\u0444\u0438\u044f\u043c \u041e\u0434\u043d\u043e- \u0438 \u043c\u043d\u043e\u0433\u043e\u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043d\u044b\u0435 \u0441\u0430\u0439\u0442\u044b \u043f\u043e\u0434 \u043b\u044e\u0431\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u041e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0432\u0435\u0434\u0435\u043d\u0438\u044e \u0441\u0430\u0439\u0442\u0430 \u0437\u0430 30 \u043c\u0438\u043d\u0443\u0442 \u0412\u0441\u0451 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u0434\u0435\u043b\u0430 \u0432 \u043e\u0434\u043d\u043e\u043c \u043c\u0435\u0441\u0442\u0435 \u0411\u0435\u0437 \u0422\u0417, \u0431\u0435\u0437 \u0431\u0435\u0433\u043e\u0442\u043d\u0438 \u0438 \u0431\u0435\u0437 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u0432 MagicPage \u2014 \u0421\u0430\u0439\u0442\u044b \u0411\u0443\u0434\u0443\u0449\u0435\u0433\u043e MagicPage38 \u041f\u043e\u0437\u0432\u043e\u043d\u0438\u0442\u044c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-6","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/magicpage38.ru\/index.php?rest_route=\/wp\/v2\/pages\/6","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/magicpage38.ru\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/magicpage38.ru\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/magicpage38.ru\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/magicpage38.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6"}],"version-history":[{"count":11,"href":"https:\/\/magicpage38.ru\/index.php?rest_route=\/wp\/v2\/pages\/6\/revisions"}],"predecessor-version":[{"id":38,"href":"https:\/\/magicpage38.ru\/index.php?rest_route=\/wp\/v2\/pages\/6\/revisions\/38"}],"wp:attachment":[{"href":"https:\/\/magicpage38.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}