-fixed a horizontal line little above the instruction for connect -fixed the prices for 1/3/12 months, it was small -changed a ping advertisment from <10 to <100 ms
1262 lines
44 KiB
HTML
1262 lines
44 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="ru">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>DmitriyVPN — Быстрый и стабильный VPN для всех устройств</title>
|
||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Fira+Code:wght@400;500&display=swap" rel="stylesheet">
|
||
<style>
|
||
:root {
|
||
--bg-main: #0a0b0d;
|
||
--bg-card: #121418;
|
||
--bg-card-hover: #16191f;
|
||
--border: #1f242e;
|
||
--border-hover: #2f3747;
|
||
--text-main: #ffffff;
|
||
--text-sub: #94a3b8;
|
||
--accent: #38bdf8;
|
||
--accent-glow: rgba(56, 189, 248, 0.15);
|
||
--font-main: 'Inter', sans-serif;
|
||
}
|
||
|
||
* { box-sizing: border-box; margin: 0; padding: 0; }
|
||
html { scroll-behavior: smooth; }
|
||
|
||
body {
|
||
font-family: var(--font-main);
|
||
background-color: var(--bg-main);
|
||
color: var(--text-main);
|
||
line-height: 1.5;
|
||
overflow-x: hidden;
|
||
}
|
||
|
||
body::before {
|
||
content: '';
|
||
position: fixed;
|
||
top: -10%;
|
||
left: 50%;
|
||
transform: translateX(-50%);
|
||
width: 600px;
|
||
height: 400px;
|
||
background: radial-gradient(circle, var(--accent-glow) 0%, transparent 70%);
|
||
z-index: -1;
|
||
pointer-events: none;
|
||
}
|
||
|
||
.container {
|
||
width: 100%;
|
||
max-width: 1140px;
|
||
margin: 0 auto;
|
||
padding: 0 24px;
|
||
}
|
||
|
||
/* ===== HEADER ===== */
|
||
header {
|
||
padding: 20px 0;
|
||
border-bottom: 1px solid var(--border);
|
||
backdrop-filter: blur(12px);
|
||
position: sticky;
|
||
top: 0;
|
||
z-index: 1000;
|
||
background: rgba(10, 11, 13, 0.88);
|
||
}
|
||
|
||
.header-wrap {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
}
|
||
|
||
.logo {
|
||
font-weight: 800;
|
||
font-size: 1.25rem;
|
||
letter-spacing: -0.5px;
|
||
text-decoration: none;
|
||
color: var(--text-main);
|
||
z-index: 1001;
|
||
position: relative;
|
||
}
|
||
|
||
.logo span { color: var(--accent); }
|
||
|
||
nav {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 28px;
|
||
}
|
||
|
||
nav a {
|
||
color: #94a3b8;
|
||
text-decoration: none;
|
||
font-size: 0.875rem;
|
||
font-weight: 500;
|
||
transition: color 0.2s;
|
||
}
|
||
|
||
nav a:hover { color: var(--text-main); }
|
||
|
||
.btn-tg-nav {
|
||
background: #1e293b;
|
||
border: 1px solid var(--border);
|
||
padding: 8px 16px;
|
||
border-radius: 8px;
|
||
color: var(--text-main);
|
||
font-size: 0.85rem;
|
||
font-weight: 600;
|
||
text-decoration: none;
|
||
transition: all 0.2s;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
.btn-tg-nav:hover {
|
||
background: #0284c7;
|
||
border-color: #38bdf8;
|
||
}
|
||
|
||
/* Burger */
|
||
.burger {
|
||
display: none;
|
||
flex-direction: column;
|
||
gap: 5px;
|
||
cursor: pointer;
|
||
padding: 4px;
|
||
background: none;
|
||
border: none;
|
||
z-index: 1001;
|
||
position: relative;
|
||
}
|
||
|
||
.burger span {
|
||
display: block;
|
||
width: 24px;
|
||
height: 2px;
|
||
background: var(--text-main);
|
||
border-radius: 2px;
|
||
transition: all 0.3s ease;
|
||
}
|
||
|
||
.burger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
|
||
.burger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
|
||
.burger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
|
||
|
||
/* Mobile nav overlay */
|
||
.mobile-nav {
|
||
display: none;
|
||
position: fixed;
|
||
inset: 0;
|
||
background: rgba(10, 11, 13, 0.97);
|
||
backdrop-filter: blur(20px);
|
||
z-index: 999;
|
||
flex-direction: column;
|
||
align-items: center;
|
||
justify-content: center;
|
||
gap: 32px;
|
||
}
|
||
|
||
.mobile-nav.open { display: flex; }
|
||
|
||
.mobile-nav a {
|
||
color: var(--text-main);
|
||
text-decoration: none;
|
||
font-size: 1.4rem;
|
||
font-weight: 700;
|
||
transition: color 0.2s;
|
||
}
|
||
|
||
.mobile-nav a:hover { color: var(--accent); }
|
||
|
||
.mobile-nav .btn-tg-nav {
|
||
font-size: 1rem;
|
||
padding: 12px 28px;
|
||
}
|
||
|
||
@media (max-width: 900px) {
|
||
.burger { display: flex; }
|
||
nav { display: none; }
|
||
}
|
||
|
||
/* ===== SCROLL REVEAL ===== */
|
||
.reveal {
|
||
opacity: 0;
|
||
transform: translateY(32px);
|
||
transition: opacity 0.65s ease, transform 0.65s ease;
|
||
}
|
||
|
||
.reveal.visible {
|
||
opacity: 1;
|
||
transform: translateY(0);
|
||
}
|
||
|
||
/* ===== SECTIONS BASE ===== */
|
||
section {
|
||
padding: 80px 0;
|
||
border-top: 1px solid var(--border);
|
||
}
|
||
|
||
.section-title {
|
||
text-align: center;
|
||
font-size: 2.25rem;
|
||
font-weight: 800;
|
||
margin-bottom: 10px;
|
||
letter-spacing: -1px;
|
||
}
|
||
|
||
.section-sub {
|
||
text-align: center;
|
||
color: #94a3b8;
|
||
font-size: 1rem;
|
||
margin-bottom: 48px;
|
||
}
|
||
|
||
@media (max-width: 768px) {
|
||
section { padding: 60px 0; }
|
||
.section-title { font-size: 1.75rem; }
|
||
}
|
||
|
||
/* ===== HERO ===== */
|
||
.hero {
|
||
padding: 80px 0 100px;
|
||
display: grid;
|
||
grid-template-columns: 1.2fr 0.8fr;
|
||
align-items: center;
|
||
gap: 48px;
|
||
border-top: none;
|
||
}
|
||
|
||
@media (max-width: 768px) {
|
||
.hero {
|
||
grid-template-columns: 1fr;
|
||
text-align: center;
|
||
padding: 52px 0 64px;
|
||
}
|
||
.hero-right { display: flex; justify-content: center; }
|
||
}
|
||
|
||
.badge {
|
||
display: inline-block;
|
||
padding: 6px 12px;
|
||
background: rgba(56, 189, 248, 0.06);
|
||
border: 1px solid rgba(56, 189, 248, 0.2);
|
||
color: var(--accent);
|
||
border-radius: 100px;
|
||
font-size: 0.8rem;
|
||
font-weight: 600;
|
||
margin-bottom: 20px;
|
||
text-transform: uppercase;
|
||
letter-spacing: 0.5px;
|
||
}
|
||
|
||
h1 {
|
||
font-size: 3.5rem;
|
||
font-weight: 800;
|
||
line-height: 1.1;
|
||
letter-spacing: -1.5px;
|
||
margin-bottom: 24px;
|
||
}
|
||
|
||
h1 span {
|
||
background: linear-gradient(to right, #38bdf8, #a855f7);
|
||
-webkit-background-clip: text;
|
||
-webkit-text-fill-color: transparent;
|
||
}
|
||
|
||
.hero-text {
|
||
color: #94a3b8;
|
||
font-size: 1.1rem;
|
||
margin-bottom: 36px;
|
||
}
|
||
|
||
.hero-btns {
|
||
display: flex;
|
||
gap: 16px;
|
||
}
|
||
|
||
@media (max-width: 768px) {
|
||
.hero-btns { justify-content: center; flex-wrap: wrap; }
|
||
h1 { font-size: 2.4rem; }
|
||
}
|
||
|
||
.btn-main {
|
||
display: inline-block;
|
||
background: var(--text-main);
|
||
color: var(--bg-main);
|
||
padding: 14px 28px;
|
||
border-radius: 10px;
|
||
font-weight: 600;
|
||
text-decoration: none;
|
||
transition: transform 0.2s, opacity 0.2s;
|
||
}
|
||
|
||
.btn-main:hover { transform: translateY(-2px); opacity: 0.9; }
|
||
|
||
.btn-sec {
|
||
display: inline-block;
|
||
border: 1px solid var(--border);
|
||
color: var(--text-main);
|
||
padding: 14px 28px;
|
||
border-radius: 10px;
|
||
font-weight: 600;
|
||
text-decoration: none;
|
||
transition: background 0.2s, border-color 0.2s;
|
||
}
|
||
|
||
.btn-sec:hover {
|
||
background: rgba(255,255,255,0.04);
|
||
border-color: var(--border-hover);
|
||
}
|
||
|
||
.hero-right {
|
||
position: relative;
|
||
display: flex;
|
||
justify-content: center;
|
||
}
|
||
|
||
.shield-graphic {
|
||
width: 280px;
|
||
height: 320px;
|
||
background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
|
||
border: 2px solid var(--border);
|
||
border-radius: 20px 20px 140px 140px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
align-items: center;
|
||
justify-content: center;
|
||
box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5);
|
||
animation: float 4s ease-in-out infinite;
|
||
}
|
||
|
||
.shield-icon {
|
||
font-size: 4rem;
|
||
margin-bottom: 12px;
|
||
filter: drop-shadow(0 0 15px var(--accent));
|
||
}
|
||
|
||
.shield-label {
|
||
font-family: 'Fira Code', monospace;
|
||
font-size: 0.85rem;
|
||
color: var(--accent);
|
||
letter-spacing: 1px;
|
||
}
|
||
|
||
@keyframes float {
|
||
0%, 100% { transform: translateY(0); }
|
||
50% { transform: translateY(-12px); }
|
||
}
|
||
|
||
/* ===== FEATURES ===== */
|
||
.grid-features {
|
||
display: grid;
|
||
grid-template-columns: repeat(4, 1fr);
|
||
gap: 20px;
|
||
}
|
||
|
||
@media (max-width: 900px) { .grid-features { grid-template-columns: repeat(2, 1fr); } }
|
||
@media (max-width: 480px) { .grid-features { grid-template-columns: 1fr; } }
|
||
|
||
.feature-card {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border);
|
||
border-radius: 16px;
|
||
padding: 28px 24px;
|
||
transition: all 0.3s;
|
||
}
|
||
|
||
.feature-card:hover {
|
||
border-color: rgba(56,189,248,0.3);
|
||
transform: translateY(-4px);
|
||
background: var(--bg-card-hover);
|
||
}
|
||
|
||
.feature-icon {
|
||
font-size: 2rem;
|
||
margin-bottom: 14px;
|
||
display: block;
|
||
}
|
||
|
||
.feature-title {
|
||
font-size: 1rem;
|
||
font-weight: 700;
|
||
margin-bottom: 8px;
|
||
}
|
||
|
||
.feature-desc {
|
||
color: #94a3b8;
|
||
font-size: 0.875rem;
|
||
line-height: 1.6;
|
||
}
|
||
|
||
/* ===== DEVICES ===== */
|
||
.grid-devices {
|
||
display: grid;
|
||
grid-template-columns: repeat(6, 1fr);
|
||
gap: 16px;
|
||
}
|
||
|
||
@media (max-width: 900px) { .grid-devices { grid-template-columns: repeat(3, 1fr); } }
|
||
@media (max-width: 480px) { .grid-devices { grid-template-columns: repeat(2, 1fr); } }
|
||
|
||
.device-card {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border);
|
||
border-radius: 14px;
|
||
padding: 28px 16px;
|
||
text-align: center;
|
||
transition: all 0.3s;
|
||
}
|
||
|
||
.device-card:hover {
|
||
border-color: rgba(56,189,248,0.35);
|
||
background: var(--bg-card-hover);
|
||
transform: translateY(-4px);
|
||
}
|
||
|
||
.device-icon {
|
||
font-size: 2.4rem;
|
||
margin-bottom: 10px;
|
||
display: block;
|
||
}
|
||
|
||
.device-name {
|
||
font-size: 0.8rem;
|
||
font-weight: 600;
|
||
color: #94a3b8;
|
||
}
|
||
|
||
/* ===== HOW TO CONNECT ===== */
|
||
.steps {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, 1fr);
|
||
gap: 24px;
|
||
position: relative;
|
||
}
|
||
|
||
@media (max-width: 768px) { .steps { grid-template-columns: 1fr; } }
|
||
|
||
|
||
|
||
.step-card {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border);
|
||
border-radius: 16px;
|
||
padding: 32px 24px;
|
||
text-align: center;
|
||
transition: border-color 0.3s;
|
||
}
|
||
|
||
.step-card:hover { border-color: var(--border-hover); }
|
||
|
||
.step-num {
|
||
width: 52px;
|
||
height: 52px;
|
||
border-radius: 50%;
|
||
background: linear-gradient(135deg, #0284c7, #a855f7);
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
font-weight: 800;
|
||
font-size: 1.1rem;
|
||
margin: 0 auto 18px;
|
||
box-shadow: 0 0 20px rgba(2,132,199,0.3);
|
||
}
|
||
|
||
.step-title {
|
||
font-size: 1rem;
|
||
font-weight: 700;
|
||
margin-bottom: 10px;
|
||
}
|
||
|
||
.step-desc {
|
||
color: #94a3b8;
|
||
font-size: 0.875rem;
|
||
line-height: 1.6;
|
||
}
|
||
|
||
/* ===== BILLING TOGGLE ===== */
|
||
.billing-toggle {
|
||
display: flex;
|
||
justify-content: center;
|
||
gap: 4px;
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border);
|
||
border-radius: 10px;
|
||
padding: 4px;
|
||
width: fit-content;
|
||
margin: 0 auto 40px;
|
||
}
|
||
|
||
.billing-btn {
|
||
background: none;
|
||
border: none;
|
||
padding: 9px 20px;
|
||
border-radius: 7px;
|
||
color: #64748b;
|
||
font-size: 0.875rem;
|
||
font-weight: 600;
|
||
cursor: pointer;
|
||
transition: all 0.2s;
|
||
font-family: var(--font-main);
|
||
position: relative;
|
||
}
|
||
|
||
.billing-btn.active {
|
||
background: #0284c7;
|
||
color: #fff;
|
||
}
|
||
|
||
.save-badge {
|
||
position: absolute;
|
||
top: -9px;
|
||
right: -6px;
|
||
background: #22c55e;
|
||
color: #fff;
|
||
font-size: 0.58rem;
|
||
padding: 2px 5px;
|
||
border-radius: 4px;
|
||
font-weight: 700;
|
||
line-height: 1.4;
|
||
}
|
||
|
||
/* ===== PRICING ===== */
|
||
.grid-pricing {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, 1fr);
|
||
gap: 24px;
|
||
}
|
||
|
||
@media (max-width: 950px) {
|
||
.grid-pricing { grid-template-columns: 1fr; max-width: 450px; margin: 0 auto; }
|
||
}
|
||
|
||
.price-card {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border);
|
||
border-radius: 16px;
|
||
padding: 32px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
||
position: relative;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.price-card:hover {
|
||
transform: translateY(-4px);
|
||
border-color: var(--border-hover);
|
||
background: var(--bg-card-hover);
|
||
}
|
||
|
||
.price-card.featured {
|
||
border-color: #0284c7;
|
||
background: linear-gradient(180deg, #12151c 0%, #0d1015 100%);
|
||
}
|
||
|
||
.price-card.featured::before {
|
||
content: 'ОБХОД ГЛУШИЛОК';
|
||
position: absolute;
|
||
top: 24px;
|
||
right: -35px;
|
||
background: #0284c7;
|
||
color: #fff;
|
||
font-size: 0.6rem;
|
||
font-weight: 700;
|
||
padding: 4px 35px;
|
||
transform: rotate(45deg);
|
||
}
|
||
|
||
.card-name {
|
||
font-size: 1.1rem;
|
||
font-weight: 700;
|
||
margin-bottom: 8px;
|
||
}
|
||
|
||
.card-price {
|
||
font-size: 2rem;
|
||
font-weight: 800;
|
||
margin-bottom: 20px;
|
||
display: flex;
|
||
align-items: baseline;
|
||
gap: 4px;
|
||
}
|
||
|
||
.card-price span {
|
||
font-size: 0.9rem;
|
||
color: #64748b;
|
||
font-weight: 400;
|
||
}
|
||
|
||
.card-price .price-val {
|
||
font-size: inherit;
|
||
color: inherit;
|
||
font-weight: inherit;
|
||
}
|
||
|
||
.card-features {
|
||
list-style: none;
|
||
margin-bottom: 24px;
|
||
flex-grow: 1;
|
||
}
|
||
|
||
.card-features li {
|
||
font-size: 0.9rem;
|
||
color: #94a3b8;
|
||
margin-bottom: 12px;
|
||
display: flex;
|
||
align-items: flex-start;
|
||
gap: 10px;
|
||
}
|
||
|
||
.card-features li.disabled {
|
||
color: #475569;
|
||
text-decoration: line-through;
|
||
}
|
||
|
||
.card-features li::before {
|
||
content: '✓';
|
||
color: var(--accent);
|
||
font-weight: bold;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.card-features li.disabled::before {
|
||
content: '✕';
|
||
color: #475569;
|
||
}
|
||
|
||
.bot-sub-list {
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 8px;
|
||
margin-bottom: 24px;
|
||
}
|
||
|
||
.bot-sub-item {
|
||
background: rgba(255,255,255,0.03);
|
||
border: 1px solid var(--border);
|
||
padding: 10px 14px;
|
||
border-radius: 8px;
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
font-size: 0.85rem;
|
||
}
|
||
|
||
.bot-sub-item span { color: #94a3b8; }
|
||
.bot-sub-item strong { color: #fff; }
|
||
|
||
.price-val { transition: opacity 0.15s; }
|
||
.price-val.updating { opacity: 0; }
|
||
|
||
.btn-card {
|
||
display: block;
|
||
text-align: center;
|
||
padding: 12px;
|
||
border-radius: 8px;
|
||
text-decoration: none;
|
||
font-weight: 600;
|
||
font-size: 0.9rem;
|
||
transition: all 0.2s;
|
||
margin-top: auto;
|
||
}
|
||
|
||
.btn-card-sec {
|
||
background: #1e293b;
|
||
color: var(--text-main);
|
||
border: 1px solid var(--border);
|
||
}
|
||
.btn-card-sec:hover { background: #334155; }
|
||
|
||
.btn-card-primary { background: #0284c7; color: #fff; }
|
||
.btn-card-primary:hover { background: #0369a1; box-shadow: 0 0 15px rgba(2,132,199,0.3); }
|
||
|
||
/* ===== FAQ ===== */
|
||
.faq-list {
|
||
max-width: 760px;
|
||
margin: 0 auto;
|
||
display: flex;
|
||
flex-direction: column;
|
||
gap: 12px;
|
||
}
|
||
|
||
.faq-item {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border);
|
||
border-radius: 12px;
|
||
overflow: hidden;
|
||
transition: border-color 0.25s;
|
||
}
|
||
|
||
.faq-item.open { border-color: rgba(56,189,248,0.3); }
|
||
|
||
.faq-q {
|
||
width: 100%;
|
||
background: none;
|
||
border: none;
|
||
padding: 20px 24px;
|
||
display: flex;
|
||
justify-content: space-between;
|
||
align-items: center;
|
||
cursor: pointer;
|
||
color: var(--text-main);
|
||
font-size: 0.95rem;
|
||
font-weight: 600;
|
||
font-family: var(--font-main);
|
||
text-align: left;
|
||
gap: 16px;
|
||
}
|
||
|
||
.faq-q:hover { background: rgba(255,255,255,0.02); }
|
||
|
||
.faq-icon {
|
||
width: 26px;
|
||
height: 26px;
|
||
border-radius: 50%;
|
||
border: 1px solid var(--border);
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
font-size: 1.1rem;
|
||
flex-shrink: 0;
|
||
transition: all 0.3s;
|
||
color: var(--accent);
|
||
line-height: 1;
|
||
}
|
||
|
||
.faq-item.open .faq-icon {
|
||
transform: rotate(45deg);
|
||
border-color: var(--accent);
|
||
}
|
||
|
||
.faq-a {
|
||
max-height: 0;
|
||
overflow: hidden;
|
||
transition: max-height 0.35s ease;
|
||
}
|
||
|
||
.faq-a-inner {
|
||
padding: 0 24px 22px;
|
||
color: #94a3b8;
|
||
font-size: 0.9rem;
|
||
line-height: 1.7;
|
||
}
|
||
|
||
/* ===== REVIEWS ===== */
|
||
.grid-reviews {
|
||
display: grid;
|
||
grid-template-columns: repeat(2, 1fr);
|
||
gap: 24px;
|
||
}
|
||
|
||
@media (max-width: 768px) { .grid-reviews { grid-template-columns: 1fr; } }
|
||
|
||
.review-card {
|
||
background: var(--bg-card);
|
||
border: 1px solid var(--border);
|
||
border-radius: 12px;
|
||
padding: 24px;
|
||
transition: border-color 0.2s;
|
||
}
|
||
|
||
.review-card:hover { border-color: var(--border-hover); }
|
||
|
||
.review-header {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 14px;
|
||
margin-bottom: 14px;
|
||
}
|
||
|
||
.review-avatar {
|
||
width: 42px;
|
||
height: 42px;
|
||
border-radius: 50%;
|
||
background: linear-gradient(135deg, #0284c7, #a855f7);
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
font-weight: 700;
|
||
font-size: 1rem;
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.review-stars {
|
||
color: #fbbf24;
|
||
font-size: 0.8rem;
|
||
margin-bottom: 2px;
|
||
}
|
||
|
||
.review-user {
|
||
font-weight: 700;
|
||
font-size: 0.95rem;
|
||
}
|
||
|
||
.review-verified {
|
||
font-size: 0.73rem;
|
||
color: #22c55e;
|
||
}
|
||
|
||
.review-text {
|
||
color: #94a3b8;
|
||
font-size: 0.9rem;
|
||
line-height: 1.65;
|
||
}
|
||
|
||
/* ===== SUPPORT ===== */
|
||
.support-inner {
|
||
text-align: center;
|
||
}
|
||
|
||
.support-card {
|
||
background: linear-gradient(135deg, #11141a 0%, #0a0c10 100%);
|
||
border: 1px solid var(--border);
|
||
padding: 52px 48px;
|
||
border-radius: 20px;
|
||
max-width: 700px;
|
||
margin: 0 auto;
|
||
}
|
||
|
||
.support-card h3 {
|
||
font-size: 1.5rem;
|
||
font-weight: 700;
|
||
margin-bottom: 12px;
|
||
}
|
||
|
||
.support-card p {
|
||
color: #94a3b8;
|
||
margin-bottom: 28px;
|
||
font-size: 0.95rem;
|
||
}
|
||
|
||
.btn-support {
|
||
display: inline-block;
|
||
background: #22c55e;
|
||
color: #fff;
|
||
padding: 12px 28px;
|
||
border-radius: 8px;
|
||
font-weight: 600;
|
||
text-decoration: none;
|
||
transition: all 0.2s;
|
||
}
|
||
|
||
.btn-support:hover {
|
||
background: #16a34a;
|
||
box-shadow: 0 0 20px rgba(34,197,94,0.25);
|
||
transform: translateY(-1px);
|
||
}
|
||
|
||
/* ===== FOOTER ===== */
|
||
footer {
|
||
padding: 40px 0;
|
||
text-align: center;
|
||
border-top: 1px solid var(--border);
|
||
color: #475569;
|
||
font-size: 0.85rem;
|
||
}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
|
||
<!-- Mobile nav overlay -->
|
||
<nav class="mobile-nav" id="mobileNav">
|
||
<a href="#features" onclick="closeMobile()">Преимущества</a>
|
||
<a href="#devices" onclick="closeMobile()">Устройства</a>
|
||
<a href="#pricing" onclick="closeMobile()">Тарифы</a>
|
||
<a href="#faq" onclick="closeMobile()">FAQ</a>
|
||
<a href="#reviews" onclick="closeMobile()">Отзывы</a>
|
||
<a href="#support" onclick="closeMobile()">Поддержка</a>
|
||
<a href="https://t.me/DmitriyVPN" target="_blank" class="btn-tg-nav">Telegram Канал</a>
|
||
</nav>
|
||
|
||
<header>
|
||
<div class="container header-wrap">
|
||
<a href="#" class="logo">Dmitriy<span>VPN</span></a>
|
||
<nav>
|
||
<a href="#features">Преимущества</a>
|
||
<a href="#devices">Устройства</a>
|
||
<a href="#pricing">Тарифы</a>
|
||
<a href="#faq">FAQ</a>
|
||
<a href="#reviews">Отзывы</a>
|
||
<a href="#support">Поддержка</a>
|
||
<a href="https://t.me/DmitriyVPN" target="_blank" class="btn-tg-nav">Telegram Канал</a>
|
||
</nav>
|
||
<button class="burger" id="burger" onclick="toggleMobile()" aria-label="Открыть меню">
|
||
<span></span><span></span><span></span>
|
||
</button>
|
||
</div>
|
||
</header>
|
||
|
||
<main class="container">
|
||
|
||
<!-- HERO -->
|
||
<section class="hero reveal">
|
||
<div class="hero-left">
|
||
<div class="badge">Для всех устройств</div>
|
||
<h1>Надежный интернет без <span>ограничений</span></h1>
|
||
<p class="hero-text">
|
||
DmitriyVPN — современное, легковесное решение для вашей безопасности. Стабильный обход блокировок, минимальный пинг в играх и мгновенная скорость на любом устройстве.
|
||
</p>
|
||
<div class="hero-btns">
|
||
<a href="#pricing" class="btn-main">Выбрать тариф</a>
|
||
<a href="https://t.me/DmitriyVPN" target="_blank" class="btn-sec">В Telegram-канал</a>
|
||
</div>
|
||
</div>
|
||
<div class="hero-right">
|
||
<div class="shield-graphic">
|
||
<div class="shield-icon">🛡️</div>
|
||
<div class="shield-label">DMITRIY_CORE V2</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- FEATURES -->
|
||
<section id="features" class="reveal">
|
||
<h2 class="section-title">Почему выбирают нас</h2>
|
||
<p class="section-sub">Всё что нужно для быстрого, безопасного и стабильного интернета</p>
|
||
<div class="grid-features">
|
||
<div class="feature-card">
|
||
<span class="feature-icon">🚀</span>
|
||
<div class="feature-title">Максимальная скорость</div>
|
||
<div class="feature-desc">До 1 Гбит/с без троттлинга и ограничений трафика на всех тарифах.</div>
|
||
</div>
|
||
<div class="feature-card">
|
||
<span class="feature-icon">🔒</span>
|
||
<div class="feature-title">Без логов</div>
|
||
<div class="feature-desc">Мы не храним никаких данных о вашей активности. Абсолютная приватность.</div>
|
||
</div>
|
||
<div class="feature-card">
|
||
<span class="feature-icon">🌍</span>
|
||
<div class="feature-title">20 локаций</div>
|
||
<div class="feature-desc">Серверы по всему миру: Европа, Азия, Америка — выбери ближайший.</div>
|
||
</div>
|
||
<div class="feature-card">
|
||
<span class="feature-icon">⚡</span>
|
||
<div class="feature-title">Пинг <100 мс</div>
|
||
<div class="feature-desc">Оптимизировано для игр. Никаких потерь пакетов и лагов.</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- DEVICES -->
|
||
<section id="devices" class="reveal">
|
||
<h2 class="section-title">Поддерживаемые устройства</h2>
|
||
<p class="section-sub">Один аккаунт — все ваши гаджеты</p>
|
||
<div class="grid-devices">
|
||
<div class="device-card">
|
||
<span class="device-icon">🖥️</span>
|
||
<div class="device-name">Windows</div>
|
||
</div>
|
||
<div class="device-card">
|
||
<span class="device-icon">🍎</span>
|
||
<div class="device-name">macOS</div>
|
||
</div>
|
||
<div class="device-card">
|
||
<span class="device-icon">🤖</span>
|
||
<div class="device-name">Android</div>
|
||
</div>
|
||
<div class="device-card">
|
||
<span class="device-icon">📱</span>
|
||
<div class="device-name">iOS</div>
|
||
</div>
|
||
<div class="device-card">
|
||
<span class="device-icon">🐧</span>
|
||
<div class="device-name">Linux</div>
|
||
</div>
|
||
<div class="device-card">
|
||
<span class="device-icon">📺</span>
|
||
<div class="device-name">Android TV</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- HOW TO CONNECT -->
|
||
<section id="connect" class="reveal">
|
||
<h2 class="section-title">Подключение за 3 шага</h2>
|
||
<p class="section-sub">Никаких сложных настроек — просто работает</p>
|
||
<div class="steps">
|
||
<div class="step-card">
|
||
<div class="step-num">1</div>
|
||
<div class="step-title">Открой Telegram-бот</div>
|
||
<div class="step-desc">Перейди в наш бот @DmitriyVPN и нажми Старт. Регистрация не требуется.</div>
|
||
</div>
|
||
<div class="step-card">
|
||
<div class="step-num">2</div>
|
||
<div class="step-title">Выбери тариф</div>
|
||
<div class="step-desc">Выбери подходящий план и оплати удобным способом — всё внутри бота.</div>
|
||
</div>
|
||
<div class="step-card">
|
||
<div class="step-num">3</div>
|
||
<div class="step-title">Подключись за 1 минуту</div>
|
||
<div class="step-desc">Получи конфиг или QR-код и импортируй его в приложение. Готово!</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- PRICING -->
|
||
<section id="pricing" class="reveal">
|
||
<h2 class="section-title">Гибкие тарифные планы</h2>
|
||
<p class="section-sub">Выбери период — сэкономь больше</p>
|
||
|
||
<div class="billing-toggle">
|
||
<button class="billing-btn active" data-period="month" onclick="setBilling('month', this)">1 месяц</button>
|
||
<button class="billing-btn" data-period="3month" onclick="setBilling('3month', this)">
|
||
3 месяца <span class="save-badge">−10%</span>
|
||
</button>
|
||
<button class="billing-btn" data-period="year" onclick="setBilling('year', this)">
|
||
12 месяцев <span class="save-badge">−20%</span>
|
||
</button>
|
||
</div>
|
||
|
||
<div class="grid-pricing">
|
||
|
||
<!-- Бесплатный -->
|
||
<div class="price-card">
|
||
<div class="card-name">Бесплатный</div>
|
||
<div class="card-price">0 ₽<span>/ навсегда</span></div>
|
||
<ul class="card-features">
|
||
<li>Медленная скорость работы</li>
|
||
<li>Доступно всего 5 локаций</li>
|
||
<li class="disabled">Обход жестких глушилок</li>
|
||
<li class="disabled">Приоритетная поддержка</li>
|
||
</ul>
|
||
<a href="https://t.me/DmitriyVPN" target="_blank" class="btn-card btn-card-sec">Подключить</a>
|
||
</div>
|
||
|
||
<!-- Платные -->
|
||
<div class="price-card featured">
|
||
<div class="card-name">Платные тарифы</div>
|
||
<div class="card-price">
|
||
от <span id="price-from" class="price-val">109.22</span> ₽<span>/ мес.</span>
|
||
</div>
|
||
<ul class="card-features">
|
||
<li><strong>Максимальная скорость соединения</strong></li>
|
||
<li><strong>20 доступных локаций</strong></li>
|
||
<li><strong>Полный обход глушилок</strong></li>
|
||
<li>Высокая стабильность работы</li>
|
||
</ul>
|
||
<div class="bot-sub-list">
|
||
<div class="bot-sub-item">
|
||
<span>Standard | 1 устр.</span>
|
||
<strong><span class="price-val" id="price-standard">109.22</span> ₽</strong>
|
||
</div>
|
||
<div class="bot-sub-item">
|
||
<span>Pro | 5 устр.</span>
|
||
<strong><span class="price-val" id="price-pro">194.41</span> ₽</strong>
|
||
</div>
|
||
<div class="bot-sub-item">
|
||
<span>Premium | 15 устр.</span>
|
||
<strong><span class="price-val" id="price-premium">291.62</span> ₽</strong>
|
||
</div>
|
||
</div>
|
||
<a href="https://t.me/DmitriyVPN" target="_blank" class="btn-card btn-card-primary">Открыть в Telegram</a>
|
||
</div>
|
||
|
||
<!-- Пробный -->
|
||
<div class="price-card">
|
||
<div class="card-name">Пробный тест</div>
|
||
<div class="card-price">0 ₽<span>/ 3 дня</span></div>
|
||
<ul class="card-features">
|
||
<li>Высокая скорость работы</li>
|
||
<li>Доступно 10 локаций</li>
|
||
<li class="disabled">Обход жестких глушилок</li>
|
||
<li class="disabled">Приоритетная поддержка</li>
|
||
</ul>
|
||
<a href="https://t.me/DmitriyVPN" target="_blank" class="btn-card btn-card-sec">Попробовать</a>
|
||
</div>
|
||
|
||
</div>
|
||
</section>
|
||
|
||
<!-- FAQ -->
|
||
<section id="faq" class="reveal">
|
||
<h2 class="section-title">Часто задаваемые вопросы</h2>
|
||
<p class="section-sub">Ответы на самые популярные вопросы</p>
|
||
<div class="faq-list">
|
||
|
||
<div class="faq-item">
|
||
<button class="faq-q" onclick="toggleFaq(this)">
|
||
Работает ли VPN в России в 2026 году?
|
||
<div class="faq-icon">+</div>
|
||
</button>
|
||
<div class="faq-a">
|
||
<div class="faq-a-inner">Да. DmitriyVPN использует современные протоколы, разработанные для обхода глубокой инспекции пакетов (DPI). Платные тарифы имеют полный обход жёстких блокировок и стабильно работают на территории РФ.</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="faq-item">
|
||
<button class="faq-q" onclick="toggleFaq(this)">
|
||
Какой протокол используется?
|
||
<div class="faq-icon">+</div>
|
||
</button>
|
||
<div class="faq-a">
|
||
<div class="faq-a-inner">Мы используем VLESS / XTLS-Reality — один из самых современных и необнаруживаемых протоколов. Он маскирует трафик под обычный HTTPS, что делает его практически невидимым для блокировок.</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="faq-item">
|
||
<button class="faq-q" onclick="toggleFaq(this)">
|
||
Как быстро активируется подписка после оплаты?
|
||
<div class="faq-icon">+</div>
|
||
</button>
|
||
<div class="faq-a">
|
||
<div class="faq-a-inner">Мгновенно. Бот автоматически выдаёт конфиг сразу после подтверждения оплаты — обычно не более 30 секунд.</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="faq-item">
|
||
<button class="faq-q" onclick="toggleFaq(this)">
|
||
Можно ли использовать на телефоне и Android TV?
|
||
<div class="faq-icon">+</div>
|
||
</button>
|
||
<div class="faq-a">
|
||
<div class="faq-a-inner">Да, VPN работает на Android, iOS, Android TV, Windows, macOS и Linux. Для подключения используется v2rayNG (Android / Android TV) или Shadowrocket (iOS). Установка занимает 1–2 минуты.</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="faq-item">
|
||
<button class="faq-q" onclick="toggleFaq(this)">
|
||
Сохраняются ли логи моей активности?
|
||
<div class="faq-icon">+</div>
|
||
</button>
|
||
<div class="faq-a">
|
||
<div class="faq-a-inner">Нет. Мы придерживаемся строгой политики No-Log. Никакие данные о вашем трафике, посещённых сайтах или IP-адресах не сохраняются и не передаются третьим лицам.</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="faq-item">
|
||
<button class="faq-q" onclick="toggleFaq(this)">
|
||
Что делать если VPN перестал работать?
|
||
<div class="faq-icon">+</div>
|
||
</button>
|
||
<div class="faq-a">
|
||
<div class="faq-a-inner">Напишите в техподдержку @Gioramily — проблема обычно решается за несколько минут. Также можно попробовать сменить локацию сервера прямо в боте.</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</section>
|
||
|
||
<!-- REVIEWS -->
|
||
<section id="reviews" class="reveal">
|
||
<h2 class="section-title">Что говорят пользователи</h2>
|
||
<p class="section-sub">Реальные отзывы от наших клиентов</p>
|
||
<div class="grid-reviews">
|
||
<div class="review-card">
|
||
<div class="review-header">
|
||
<div class="review-avatar">С</div>
|
||
<div>
|
||
<div class="review-stars">★★★★★</div>
|
||
<div class="review-user">Сергей К.</div>
|
||
<div class="review-verified">✓ Проверенный покупатель</div>
|
||
</div>
|
||
</div>
|
||
<p class="review-text">«Брал премиум чисто ради того, чтобы нормально смотреть видосы в 4К на компе, так как стандартные методы перестали работать. Всё летает, задержек нет вообще. Топ за свои деньги.»</p>
|
||
</div>
|
||
<div class="review-card">
|
||
<div class="review-header">
|
||
<div class="review-avatar">D</div>
|
||
<div>
|
||
<div class="review-stars">★★★★★</div>
|
||
<div class="review-user">Dima_Gamer</div>
|
||
<div class="review-verified">✓ Проверенный покупатель</div>
|
||
</div>
|
||
</div>
|
||
<p class="review-text">«Респект разработчику за пинг! Играю в онлайн-шутеры, с этим впном пакеты не теряются, коннект стабильный. Главное — на ПК настраивается за полминуты.»</p>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- SUPPORT -->
|
||
<section id="support" class="reveal">
|
||
<div class="support-card">
|
||
<h3>Возникли вопросы или нужна помощь?</h3>
|
||
<p>Наша техническая поддержка работает оперативно. Если не получается настроить клиент или есть вопросы по оплате — напишите нам напрямую.</p>
|
||
<a href="https://t.me/Gioramily" target="_blank" class="btn-support">Связаться с техподдержкой</a>
|
||
</div>
|
||
</section>
|
||
|
||
</main>
|
||
|
||
<footer>
|
||
<div class="container">
|
||
<p>© 2026 DmitriyVPN. Все права защищены. Разработано для всех типов устройств.</p>
|
||
</div>
|
||
</footer>
|
||
|
||
<script>
|
||
/* ===== BURGER MENU ===== */
|
||
function toggleMobile() {
|
||
const burger = document.getElementById('burger');
|
||
const nav = document.getElementById('mobileNav');
|
||
const isOpen = burger.classList.toggle('open');
|
||
nav.classList.toggle('open', isOpen);
|
||
document.body.style.overflow = isOpen ? 'hidden' : '';
|
||
}
|
||
|
||
function closeMobile() {
|
||
document.getElementById('burger').classList.remove('open');
|
||
document.getElementById('mobileNav').classList.remove('open');
|
||
document.body.style.overflow = '';
|
||
}
|
||
|
||
/* ===== SCROLL REVEAL ===== */
|
||
const revealObserver = new IntersectionObserver((entries) => {
|
||
entries.forEach(entry => {
|
||
if (entry.isIntersecting) {
|
||
entry.target.classList.add('visible');
|
||
revealObserver.unobserve(entry.target);
|
||
}
|
||
});
|
||
}, { threshold: 0.08 });
|
||
|
||
document.querySelectorAll('.reveal').forEach(el => revealObserver.observe(el));
|
||
|
||
/* ===== BILLING TOGGLE ===== */
|
||
const prices = {
|
||
month: { standard: 109.22, pro: 194.41, premium: 291.62 },
|
||
'3month': { standard: 98.30, pro: 174.97, premium: 262.46 },
|
||
year: { standard: 87.38, pro: 155.53, premium: 233.30 }
|
||
};
|
||
|
||
function setBilling(period, btn) {
|
||
document.querySelectorAll('.billing-btn').forEach(b => b.classList.remove('active'));
|
||
btn.classList.add('active');
|
||
|
||
const p = prices[period];
|
||
const els = {
|
||
'price-from': p.standard,
|
||
'price-standard': p.standard,
|
||
'price-pro': p.pro,
|
||
'price-premium': p.premium
|
||
};
|
||
|
||
Object.entries(els).forEach(([id, val]) => {
|
||
const el = document.getElementById(id);
|
||
el.classList.add('updating');
|
||
setTimeout(() => {
|
||
el.textContent = val.toFixed(2);
|
||
el.classList.remove('updating');
|
||
}, 150);
|
||
});
|
||
}
|
||
|
||
/* ===== FAQ ACCORDION ===== */
|
||
function toggleFaq(btn) {
|
||
const item = btn.parentElement;
|
||
const answer = item.querySelector('.faq-a');
|
||
const isOpen = item.classList.contains('open');
|
||
|
||
// Close all
|
||
document.querySelectorAll('.faq-item').forEach(i => {
|
||
i.classList.remove('open');
|
||
i.querySelector('.faq-a').style.maxHeight = null;
|
||
});
|
||
|
||
// Open if was closed
|
||
if (!isOpen) {
|
||
item.classList.add('open');
|
||
answer.style.maxHeight = answer.scrollHeight + 'px';
|
||
}
|
||
}
|
||
</script>
|
||
|
||
</body>
|
||
</html> |