Веб-студия Guard-IT — сайты, SEO, ИИ-агенты и поддержка
zTpWmA61rXA3EalDEUYm5FtsWaqvP-LCSBqWYsTmd6Y"> <meta name="yandex-verification" content="7a5ed40ca4b49cbc"> <!-- Guard-IT analytics: explicit opt-in only --> <script> (function () { if (window.guarditAnalyticsConsentLoaderReady) return; window.guarditAnalyticsConsentLoaderReady = true; var key = 'guardit_analytics_consent_v2'; var lifetime = 31536000000; var choice = null; var started = false; var loading = false; var scriptLoaded = false; var script = null; var expiryTimer = null; function readChoice() { try { var value = JSON.parse(localStorage.getItem(key)); if (value && typeof value.expires === 'number' && value.expires <= Date.now()) { localStorage.removeItem(key); return null; } if (value && (value.value === 'analytics' || value.value === 'necessary') && typeof value.expires === 'number' && value.expires > Date.now() && value.expires <= Date.now() + lifetime) return value; } catch (error) {} return null; } function allowed() { return !!(choice && choice.value === 'analytics' && choice.expires > Date.now()); } function stop() { if (started && typeof window.ym === 'function') window.ym(86357372, 'destruct'); if (window.ym && window.ym.a) window.ym.a = []; started = false; window.guarditAnalyticsLoaded = false; } function analyticsUrl(value) { if (!value) return ''; try { var url = new URL(value, location.href); if (url.pathname.replace(/\/+$/, '') === '/blog' && url.searchParams.has('q')) { url.searchParams.delete('q'); return url.href; } return value; } catch (error) { return ''; } } function initialize() { if (!allowed() || started) return; window.ym(86357372, 'init', { webvisor: true, clickmap: true, referrer: analyticsUrl(document.referrer), url: analyticsUrl(location.href), accurateTrackBounce: true, trackLinks: true }); started = true; window.guarditAnalyticsLoaded = true; } function start() { if (!allowed() || started || loading) return; if (scriptLoaded) { initialize(); return; } if (typeof window.ym !== 'function') { window.ym = function () { (window.ym.a = window.ym.a || []).push(arguments); }; window.ym.l = Date.now(); } loading = true; script = document.createElement('script'); script.async = true; script.src = 'https://mc.yandex.ru/metrika/tag.js'; script.setAttribute('data-guardit-yandex-metrika', ''); script.onload = function () { loading = false; scriptLoaded = true; initialize(); }; script.onerror = function () { loading = false; script.remove(); }; document.head.appendChild(script); } function sync() { clearTimeout(expiryTimer); if (allowed()) start(); else stop(); // Long expirations must not overflow the browser's 32-bit timeout. if (choice) expiryTimer = setTimeout(function () { if (choice.expires <= Date.now()) { choice = null; readChoice(); // Remove an expired stored value without deleting a newer choice. } sync(); window.dispatchEvent(new Event('guardit-cookie-choice')); }, Math.min(Math.max(1, choice.expires - Date.now()), 2147483647)); } window.guarditCookieConsent = { get: function () { return choice && choice.expires > Date.now() ? choice.value : null; }, set: function (value) { if (value !== 'analytics' && value !== 'necessary') return; choice = { value: value, expires: Date.now() + lifetime }; try { localStorage.setItem(key, JSON.stringify(choice)); } catch (error) {} sync(); window.dispatchEvent(new Event('guardit-cookie-choice')); } }; // Existing goal producers cannot start the counter before consent. window.guarditLoadAnalytics = start; window.addEventListener('storage', function (event) { if (event.key !== key && event.key !== null) return; choice = readChoice(); sync(); window.dispatchEvent(new Event('guardit-cookie-choice')); }); choice = readChoice(); sync(); })(); </script> <!-- /Guard-IT analytics loader --> <style id="guardit-contact-select-style"> .guard-service-field { position: relative; display: grid; gap: 8px; min-width: 0; color: #8fa1a4; font-size: 13px; } .guard-service-field__label { display: block; } .guard-service-native { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; border: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; opacity: 0 !important; pointer-events: none !important; } .guard-service-select { position: relative; min-width: 0; } .guard-service-select__trigger { position: relative; display: block; width: 100%; min-height: 52px; margin: 0; padding: 15px 52px 15px 17px; border: 1px solid rgba(232,255,255,.14); border-radius: 17px; background: rgba(255,255,255,.025); color: #eef8f8; outline: none; font: inherit; line-height: 1.25; text-align: left; cursor: pointer; -webkit-tap-highlight-color: transparent; transition: border-color .22s ease, background .22s ease, box-shadow .22s ease; } .guard-service-select__trigger:hover { border-color: rgba(0,228,253,.38); } .guard-service-select__trigger:focus-visible, .guard-service-select__trigger[aria-expanded="true"] { border-color: #00e4fd; box-shadow: 0 0 0 3px rgba(0,228,253,.08); } .guard-service-select__value { display: block; min-width: 0; overflow: hidden; color: #eef8f8; text-overflow: ellipsis; white-space: nowrap; } .guard-service-select__chevron { position: absolute; top: 50%; right: 19px; width: 10px; height: 10px; border-right: 2px solid #78f2ff; border-bottom: 2px solid #78f2ff; transform: translateY(-68%) rotate(45deg); transform-origin: 58% 58%; transition: transform .22s cubic-bezier(.2,.75,.2,1); pointer-events: none; } .guard-service-select__trigger[aria-expanded="true"] .guard-service-select__chevron { transform: translateY(-34%) rotate(225deg); } .guard-service-select__menu { position: fixed; z-index: 2147482800; display: none; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; padding: 6px; border: 1px solid rgba(232,255,255,.22); border-radius: 17px; background: linear-gradient(145deg,#111a1e,#090e10); color: #eef8f8; box-shadow: 0 22px 60px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.035); scrollbar-width: thin; scrollbar-color: rgba(0,228,253,.34) transparent; } .guard-service-select__menu.is-open { display: block; } .guard-service-select__menu.is-positioning { visibility: hidden; pointer-events: none; } .guard-service-select__option { position: relative; display: flex; align-items: center; width: 100%; min-height: 46px; margin: 0; padding: 11px 44px 11px 13px; border: 0; border-radius: 11px; background: transparent; color: #dbe7e7; outline: none; font: inherit; font-size: 15px; line-height: 1.25; text-align: left; cursor: pointer; user-select: none; -webkit-tap-highlight-color: transparent; transition: background .16s ease, color .16s ease; } .guard-service-select__option + .guard-service-select__option { border-top: 1px solid rgba(232,255,255,.07); } .guard-service-select__option:hover, .guard-service-select__option.is-active, .guard-service-select__option:focus-visible { background: rgba(255,255,255,.055); color: #fff; } .guard-service-select__option[aria-selected="true"] { background: rgba(0,228,253,.09); color: #78f2ff; } .guard-service-select__option[aria-selected="true"]::after { content: ""; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: #00e4fd; font-size: 17px; font-weight: 700; } .guard-service-select__option[aria-disabled="true"] { opacity: .42; cursor: not-allowed; } @media (max-width: 640px) { .guard-service-select__trigger { min-height: 50px; padding: 14px 48px 14px 15px; } .guard-service-select__chevron { right: 17px; } .guard-service-select__menu { padding: 5px; border-radius: 15px; } .guard-service-select__option { min-height: 44px; padding: 10px 40px 10px 11px; font-size: 15px; } } </style> <meta charset="utf-8"/> <meta content="width=device-width, initial-scale=1" name="viewport"/> <meta content="#07090b" name="theme-color"/> <title>Веб-студия Guard-IT — сайты, SEO, ИИ-агенты и поддержка</title> <meta content=