1212 < link rel ="icon " href ="/favicon.svg " type ="image/svg+xml ">
1313 < link rel ="icon " href ="/favicon-512.png " sizes ="512x512 ">
1414 < link rel ="apple-touch-icon " href ="/apple-touch-icon.png ">
15- < link rel ="alternate " href ="https://metridex.com/ " hreflang ="en ">
16- < link rel ="alternate " href ="https://metridex.com/ru " hreflang ="ru ">
1715 < meta name ="theme-color " content ="#070709 " media ="(prefers-color-scheme: dark) ">
1816 < meta name ="theme-color " content ="#faf8f2 " media ="(prefers-color-scheme: light) ">
19- <!-- Open Graph -->
2017 < meta property ="og:title " content ="Metridex — QuickScan for on‑chain risk ">
2118 < meta property ="og:description " content ="Scan tokens in seconds. Deep checks on demand. ">
2219 < meta property ="og:image " content ="https://metridex.com/og-image.png ">
2320 < meta property ="og:url " content ="https://metridex.com/ ">
2421 < meta property ="og:type " content ="website ">
25- <!-- Twitter -->
2622 < meta name ="twitter:card " content ="summary_large_image ">
2723 < meta name ="twitter:title " content ="Metridex — QuickScan for on‑chain risk ">
2824 < meta name ="twitter:description " content ="Scan tokens in seconds. Deep checks on demand. ">
2925 < meta name ="twitter:image " content ="https://metridex.com/og-image.png ">
30- <!-- Plausible analytics (privacy-friendly) -->
3126 < script defer data-domain ="metridex.com " src ="https://plausible.io/js/script.js "> </ script >
3227</ head >
3328< body >
34- <!-- Navbar (fixed) -->
3529 < header class ="nav " id ="siteNav ">
3630 < div class ="container nav-inner ">
3731 < div class ="brand ">
4135 < a data-i18n ="nav.about " href ="#about "> About</ a >
4236 < a data-i18n ="nav.features " href ="#features "> Features</ a >
4337 < a data-i18n ="nav.screens " href ="#screens "> Screens</ a >
38+ < a data-i18n ="nav.partners " href ="#partners "> Partners</ a >
39+ < a data-i18n ="nav.how " href ="#how-it-works "> How it works</ a >
40+ < a data-i18n ="nav.security " href ="#security "> Security</ a >
4441 < a data-i18n ="nav.pricing " href ="#pricing "> Pricing</ a >
4542 < a data-i18n ="nav.articles " href ="/articles.html "> Articles</ a >
43+ < a data-i18n ="nav.videos " href ="/videos.html "> Videos</ a >
4644 < a data-i18n ="nav.faq " href ="#faq "> FAQ</ a >
4745 < a data-i18n ="nav.contact " href ="#contact "> Contact</ a >
4846 </ nav >
5452 </ div >
5553 </ header >
5654
57- <!-- Hero -->
5855 < section class ="hero reveal ">
5956 < div class ="container hero-inner ">
6057 < div class ="hero-copy ">
6158 < h1 > < span class ="grad " data-i18n ="hero.title_a "> On‑chain Risk Metrics</ span > < span data-i18n ="hero.title_b "> for DeFi & Telegram</ span > </ h1 >
6259 < p class ="sub " data-i18n ="hero.sub "> QuickScan in seconds. Deep checks on demand.</ p >
6360 < div class ="cta-row ">
64- < a class ="cta cta-bot large " href ="https://t.me/MetridexBot " target ="_blank " rel ="noopener ">
65- < span class ="aura "> </ span > < span data-i18n ="cta.open "> Open @MetridexBot</ span >
66- </ a >
61+ < a class ="cta cta-bot large " href ="https://t.me/MetridexBot " target ="_blank " rel ="noopener "> < span class ="aura "> </ span > < span data-i18n ="cta.open "> Open @MetridexBot</ span > </ a >
6762 < a class ="cta ghost " href ="#features " data-i18n ="cta.features "> See features</ a >
63+ < button class ="cta " id ="watchDemo " data-video ="promo " aria-haspopup ="dialog "> ▶ Watch demo</ button >
6864 </ div >
6965 </ div >
7066 < div class ="hero-card glass ">
@@ -79,7 +75,6 @@ <h3 data-i18n="hero.card_title">QuickScan snapshot</h3>
7975 </ div >
8076 </ section >
8177
82- <!-- About (centered band) -->
8378 < section id ="about " class ="section band center reveal ">
8479 < div class ="container band-inner ">
8580 < div class ="band-copy ">
@@ -89,100 +84,113 @@ <h2 data-i18n="about.title">About</h2>
8984 </ div >
9085 </ section >
9186
92- <!-- Features -->
9387 < section id ="features " class ="section alt reveal ">
9488 < div class ="container ">
9589 < h2 data-i18n ="features.title "> Features</ h2 >
9690 < div class ="features-grid ">
97- < article class ="feature glass ">
98- < h3 data-i18n ="feat.quick_t "> ⚡ Quick</ h3 >
99- < p data-i18n ="feat.quick_d "> Instant QuickScan with Δ‑buttons. No waiting, no noise.</ p >
100- </ article >
101- < article class ="feature glass ">
102- < h3 data-i18n ="feat.deep_t "> 🧠 Deep</ h3 >
103- < p data-i18n ="feat.deep_d "> WHOIS/RDAP, SSL, Wayback; on‑chain roles — only when needed.</ p >
104- </ article >
105- < article class ="feature glass ">
106- < h3 data-i18n ="feat.tech_t "> 🧱 Tech</ h3 >
107- < p data-i18n ="feat.tech_d "> Render (Flask/Gunicorn) + Cloudflare Worker ds‑proxy.</ p >
108- </ article >
109- < article class ="feature glass ">
110- < h3 data-i18n ="feat.rel_t "> ✅ Reliable</ h3 >
111- < p data-i18n ="feat.rel_d "> Stateless callbacks, idempotent delivery, cache‑first detail scan.</ p >
112- </ article >
91+ < article class ="feature glass "> < h3 data-i18n ="feat.quick_t "> ⚡ Quick</ h3 > < p data-i18n ="feat.quick_d "> Instant QuickScan with Δ‑buttons. No waiting, no noise.</ p > </ article >
92+ < article class ="feature glass "> < h3 data-i18n ="feat.deep_t "> 🧠 Deep</ h3 > < p data-i18n ="feat.deep_d "> WHOIS/RDAP, SSL, Wayback; on‑chain roles — only when needed.</ p > </ article >
93+ < article class ="feature glass "> < h3 data-i18n ="feat.tech_t "> 🧱 Tech</ h3 > < p data-i18n ="feat.tech_d "> Render (Flask/Gunicorn) + Cloudflare Worker ds‑proxy.</ p > </ article >
94+ < article class ="feature glass "> < h3 data-i18n ="feat.rel_t "> ✅ Reliable</ h3 > < p data-i18n ="feat.rel_d "> Stateless callbacks, idempotent delivery, cache‑first detail scan.</ p > </ article >
11395 </ div >
11496 </ div >
11597 </ section >
11698
117- <!-- Screens -->
11899 < section id ="screens " class ="section reveal ">
119100 < div class ="container ">
120101 < h2 data-i18n ="screens.title "> Screens</ h2 >
121102 < div class ="screens-grid ">
122103 < figure class ="screen glass ">
123- < div class ="viewport ">
124- < img src ="/screens/quickscan.png " alt ="QuickScan screen " onerror ="this.parentElement.classList.add('placeholder'); this.remove(); ">
125- </ div >
104+ < div class ="viewport "> < img src ="/screens/quickscan.png " alt ="QuickScan screen " onerror ="this.parentElement.classList.add('placeholder'); this.remove(); "> </ div >
126105 < figcaption data-i18n ="screens.cap1 "> QuickScan</ figcaption >
127106 </ figure >
128107 < figure class ="screen glass ">
129- < div class ="viewport ">
130- < img src ="/screens/details.png " alt ="More details screen " onerror ="this.parentElement.classList.add('placeholder'); this.remove(); ">
131- </ div >
108+ < div class ="viewport "> < img src ="/screens/details.png " alt ="More details screen " onerror ="this.parentElement.classList.add('placeholder'); this.remove(); "> </ div >
132109 < figcaption data-i18n ="screens.cap2 "> More details</ figcaption >
133110 </ figure >
134111 </ div >
135- < p class ="hint " data-i18n ="screens.hint "> Drop your PNGs to < code > /screens/quickscan.png</ code > and < code > /screens/details.png</ code > . Placeholders will be used if images are absent.</ p >
136112 </ div >
137113 </ section >
138114
139- <!-- Pricing -->
115+ < section id ="partners " class ="section alt reveal ">
116+ < div class ="container ">
117+ < h2 data-i18n ="partners.title "> Trusted by</ h2 >
118+ < div class ="logos ">
119+ < div class ="logo glass "> < img src ="/logos/partner1.svg " alt ="Partner 1 " onerror ="this.replaceWith(document.createTextNode('Logo')); "> </ div >
120+ < div class ="logo glass "> < img src ="/logos/partner2.svg " alt ="Partner 2 " onerror ="this.replaceWith(document.createTextNode('Logo')); "> </ div >
121+ < div class ="logo glass "> < img src ="/logos/partner3.svg " alt ="Partner 3 " onerror ="this.replaceWith(document.createTextNode('Logo')); "> </ div >
122+ < div class ="logo glass "> < img src ="/logos/partner4.svg " alt ="Partner 4 " onerror ="this.replaceWith(document.createTextNode('Logo')); "> </ div >
123+ < div class ="logo glass "> < img src ="/logos/partner5.svg " alt ="Partner 5 " onerror ="this.replaceWith(document.createTextNode('Logo')); "> </ div >
124+ < div class ="logo glass "> < img src ="/logos/partner6.svg " alt ="Partner 6 " onerror ="this.replaceWith(document.createTextNode('Logo')); "> </ div >
125+ </ div >
126+ </ div >
127+ </ section >
128+
129+ < section id ="how-it-works " class ="section reveal ">
130+ < div class ="container ">
131+ < h2 data-i18n ="how.title "> How it works</ h2 >
132+ < div class ="how-grid ">
133+ < article class ="how glass "> < div class ="step "> 1</ div > < h3 data-i18n ="how.s1_t "> Paste token/contract</ h3 > < p data-i18n ="how.s1_d "> Run QuickScan in seconds.</ p > </ article >
134+ < article class ="how glass "> < div class ="step "> 2</ div > < h3 data-i18n ="how.s2_t "> Review signals</ h3 > < p data-i18n ="how.s2_d "> Δ‑metrics, holders, liquidity, flags.</ p > </ article >
135+ < article class ="how glass "> < div class ="step "> 3</ div > < h3 data-i18n ="how.s3_t "> Deep on demand</ h3 > < p data-i18n ="how.s3_d "> WHOIS/RDAP, SSL, Wayback, on‑chain roles.</ p > </ article >
136+ </ div >
137+ </ div >
138+ </ section >
139+
140+ < section id ="security " class ="section alt reveal ">
141+ < div class ="container ">
142+ < h2 data-i18n ="sec.title "> Security</ h2 >
143+ < div class ="security-grid ">
144+ < article class ="sec glass "> < h3 data-i18n ="sec.data_t "> Data handling</ h3 > < ul > < li data-i18n ="sec.data_li1 "> No private keys, seed phrases, or wallets collected.</ li > < li data-i18n ="sec.data_li2 "> Requests processed transit‑only; minimized logs.</ li > </ ul > </ article >
145+ < article class ="sec glass "> < h3 data-i18n ="sec.infra_t "> Infrastructure</ h3 > < ul > < li data-i18n ="sec.infra_li1 "> HTTPS, security headers, environment isolation.</ li > < li data-i18n ="sec.infra_li2 "> Cloudflare edge + Render app isolation.</ li > </ ul > </ article >
146+ < article class ="sec glass "> < h3 data-i18n ="sec.compliance_t "> Compliance</ h3 > < ul > < li data-i18n ="sec.compliance_li1 "> GDPR‑friendly, deletion on request.</ li > < li data-i18n ="sec.compliance_li2 "> Responsible disclosure contact.</ li > </ ul > </ article >
147+ </ div >
148+ </ div >
149+ </ section >
150+
140151 < section id ="pricing " class ="section reveal ">
141152 < div class ="container ">
142153 < h2 data-i18n ="pricing.title "> Pricing</ h2 >
143154 < div class ="cards ">
144- < article class ="card glass ">
145- < h3 data-i18n ="pricing.basic_t "> Basic</ h3 > < p data-i18n ="pricing.basic_d "> QuickScan only</ p > < div class ="price " data-i18n ="pricing.basic_p "> Free</ div >
146- </ article >
147- < article class ="card glass ">
148- < h3 data-i18n ="pricing.pro_t "> Pro</ h3 > < p data-i18n ="pricing.pro_d "> QuickScan + Deep checks</ p > < div class ="price " data-i18n ="pricing.pro_p "> $29/mo</ div >
149- </ article >
150- < article class ="card glass ">
151- < h3 data-i18n ="pricing.ent_t "> Enterprise</ h3 > < p data-i18n ="pricing.ent_d "> White‑label + SLA</ p > < div class ="price " data-i18n ="pricing.ent_p "> Contact</ div >
152- </ article >
155+ < article class ="card glass "> < h3 data-i18n ="pricing.basic_t "> Basic</ h3 > < p data-i18n ="pricing.basic_d "> QuickScan only</ p > < div class ="price " data-i18n ="pricing.basic_p "> Free</ div > </ article >
156+ < article class ="card glass "> < h3 data-i18n ="pricing.pro_t "> Pro</ h3 > < p data-i18n ="pricing.pro_d "> QuickScan + Deep checks</ p > < div class ="price " data-i18n ="pricing.pro_p "> $29/mo</ div > </ article >
157+ < article class ="card glass "> < h3 data-i18n ="pricing.ent_t "> Enterprise</ h3 > < p data-i18n ="pricing.ent_d "> White‑label + SLA</ p > < div class ="price " data-i18n ="pricing.ent_p "> Contact</ div > </ article >
153158 </ div >
154159 </ div >
155160 </ section >
156161
157- <!-- FAQ -->
158162 < section id ="faq " class ="section alt reveal ">
159163 < div class ="container ">
160164 < h2 data-i18n ="faq.title "> FAQ</ h2 >
161165 < div class ="faq ">
162- < details class ="qa glass " open >
163- < summary data-i18n ="faq.q1 "> What does QuickScan check?</ summary >
164- < p data-i18n ="faq.a1 "> Δ‑metrics, liquidity & holders, basic contract flags, and a shareable report.</ p >
165- </ details >
166- < details class ="qa glass ">
167- < summary data-i18n ="faq.q2 "> What’s in Deep checks?</ summary >
168- < p data-i18n ="faq.a2 "> WHOIS/RDAP, SSL chains, Wayback snapshots, and on‑chain roles — on demand.</ p >
169- </ details >
170- < details class ="qa glass ">
171- < summary data-i18n ="faq.q3 "> Where can I use it?</ summary >
172- < p data-i18n ="faq.a3 "> Works great for launchpads, pro traders, and Telegram communities.</ p >
173- </ details >
166+ < details class ="qa glass " open > < summary data-i18n ="faq.q1 "> What does QuickScan check?</ summary > < p data-i18n ="faq.a1 "> Δ‑metrics, liquidity & holders, basic contract flags, and a shareable report.</ p > </ details >
167+ < details class ="qa glass "> < summary data-i18n ="faq.q2 "> What’s in Deep checks?</ summary > < p data-i18n ="faq.a2 "> WHOIS/RDAP, SSL chains, Wayback snapshots, and on‑chain roles — on demand.</ p > </ details >
168+ < details class ="qa glass "> < summary data-i18n ="faq.q3 "> Where can I use it?</ summary > < p data-i18n ="faq.a3 "> Works great for launchpads, pro traders, and Telegram communities.</ p > </ details >
174169 </ div >
175170 </ div >
176171 </ section >
177172
178- <!-- Contact -->
179173 < section id ="contact " class ="section reveal ">
180174 < div class ="container ">
181175 < h2 data-i18n ="contact.title "> Contact</ h2 >
182176 < p > < span data-i18n ="contact.email "> Email:</ span > < a class ="link " href ="mailto:contact@metridex.com "> contact@metridex.com</ a > </ p >
183177 </ div >
184178 </ section >
185179
180+ <!-- Lightbox modal -->
181+ < div id ="videoModal " class ="modal " aria-modal ="true " role ="dialog " hidden >
182+ < div class ="modal-backdrop " data-close > </ div >
183+ < div class ="modal-dialog glass " role ="document ">
184+ < button class ="modal-close " aria-label ="Close " data-close > ✕</ button >
185+ < div class ="modal-body ">
186+ < video id ="lightboxVideo " controls playsinline poster ="/posters/promo.jpg ">
187+ <!-- sources will be injected on open -->
188+ Sorry, your browser doesn't support embedded videos.
189+ </ video >
190+ </ div >
191+ </ div >
192+ </ div >
193+
186194 < footer class ="footer ">
187195 < div class ="container ">
188196 < p > © < span id ="year "> </ span > < span > Metridex.</ span > < span data-i18n ="footer.rights "> All rights reserved.</ span > </ p >
0 commit comments