Наш сайт !
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>DexLand — Minecraft Server</title>
<style>
:root {
--bg-dark: #0f111a;
--bg-panel: #1a1d2b;
--accent: #e94560;
--accent-glow: rgba(233, 69, 96, 0.5);
--text: #ffffff;
--text-muted: #a0a5b1;
--border: #2a3147;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
background-color: var(--bg-dark);
color: var(--text);
font-family: 'Segoe UI', Roboto, Arial, sans-serif;
overflow-x: hidden;
}
/* Лёгкий шум поверх всего */
.noise {
position: fixed;
inset: 0;
pointer-events: none;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.04'/%3E%3C/svg%3E");
z-index: 999;
}
.container { max-width: 1100px; margin: 0 auto; padding: 0 15px; }
header {
padding: 1rem 0;
border-bottom: 1px solid var(--border);
position: sticky;
top: 0;
background: rgba(15, 17, 26, 0.92);
backdrop-filter: blur(8px);
z-index: 100;
}
.header-content {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 1rem;
}
.logo {
font-size: 1.8rem;
font-weight: 700;
color: var(--accent);
text-transform: uppercase;
letter-spacing: 2px;
position: relative;
}
nav a {
color: var(--text-muted);
text-decoration: none;
margin-left: 1.5rem;
transition: color 0.3s ease;
}
nav a:hover { color: var(--text); }
/* Кнопки */
.btn {
padding: 10px 24px;
border: none;
border-radius: 6px;
cursor: pointer;
font-weight: 600;
text-decoration: none;
display: inline-block;
transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
.btn-primary {
background: var(--accent);
color: white;
}
.btn-secondary {
background: transparent;
border: 1px solid var(--border);
color: var(--text);
}
.glow-on-hover {
box-shadow: 0 0 8px var(--accent-glow);
}
.glow-on-hover:hover {
box-shadow: 0 0 24px var(--accent-glow), 0 0 4px rgba(255,255,255,0.2);
transform: translateY(-2px);
}
.slide-on-hover::after {
content: '';
position: absolute;
left: 0; top: 0; right: 0; bottom: 0;
background: rgba(255,255,255,0.08);
opacity: 0;
transition: opacity 0.3s;
}
.slide-on-hover:hover::after { opacity: 1; }
/* Hero */
.hero {
min-height: 80vh;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
padding-top: 4rem;
position: relative;
}
.hero::before {
content: "";
position: absolute;
inset: -10% -10% 0 -10%;
background: radial-gradient(circle at 50% 50%, rgba(233,69,96,0.12) 0%, transparent 70%);
pointer-events: none;
z-index: 0;
}
.hero-text, .server-stats { position: relative; z-index: 1; }
.hero h2 {
font-size: 3.2rem;
margin-bottom: 0.8rem;
background: linear-gradient(to right, #fff, #a0a5b1);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.hero p { color: var(--text-muted); max-width: 600px; margin-bottom: 2.5rem; }
.server-stats {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
gap: 1.2rem;
width: 100%;
max-width: 800px;
}
.stat-card {
background: var(--bg-panel);
padding: 1.4rem;
border-radius: 10px;
border: 1px solid var(--border);
text-align: center;
}
.stat-label { font-size: 0.85rem; color: var(--text-muted); text-transform: uppercase; }
.stat-value { font-weight: 700; font-size: 1.3rem; margin-top: 0.3rem; }
.status-badge {
font-weight: 700;
padding: 4px 10px;
border-radius: 20px;
font-size: 0.85rem;
}
.status-online { color: #4ade80; background: rgba(74, 222, 128, 0.15); }
.status-offline { color: #ef4444; background: rgba(239, 68, 68, 0.15); }
/* Пульсация онлайна */
.pulse-on-load {
animation: pulse-soft 3s infinite ease-in-out;
}
@keyframes pulse-soft {
0%, 100% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.3); }
50% { box-shadow: 0 0 0 6px rgba(74, 222, 128, 0); }
}
/* Карточки бонусов */
.bonuses, .news { padding: 4rem 0 3rem; }
.bonuses h3, .news h3 { margin-bottom: 2rem; text-align: center; }
.cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 1.5rem;
}
.card {
background: var(--bg-panel);
padding: 1.6rem;
border-radius: 12px;
border: 1px solid var(--border);
transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.3s ease;
}
.hover-lift:hover {
transform: translateY(-8px);
box-shadow: 0 16px 32px rgba(0,0,0,0.3);
}
.card h4 { margin-bottom: 0.6rem; color: var(--text); }
.card p { color: var(--text-muted); font-size: 0.9rem; }
/* Новости */
.news-item {
background: var(--bg-panel);
padding: 1.6rem;
border-radius: 10px;
border: 1px solid var(--border);
margin-bottom: 1.2rem;
}
.glow-border {
position: relative;
z-index: 1;
}
.glow-border::before {
content: "";
position: absolute;
inset: -2px;
border-radius: inherit;
background: linear-gradient(45deg, rgba(233,69,96,0), rgba(233,69,96,0.12), rgba(233,69,96,0));
z-index: -1;
opacity: 0;
transition: opacity 0.4s;
}
.glow-border:hover::before { opacity: 1; }
.news-item time { display: block; margin-top: 0.8rem; font-size: 0.85rem; color: var(--text-muted); }
footer {
padding: 2rem 0;
text-align: center;
color: var(--text-muted);
border-top: 1px solid var(--border);
margin-top: 3rem;
}
/* Анимация появления */
.fade-in {
opacity: 0;
transform: translateY(20px);
animation: fadeInUp 0.8s forwards;
}
@keyframes fadeInUp {
to { opacity: 1; transform: translateY(0); }
}
/* Адаптив */
@media (max-width: 768px) {
.hero h2 { font-size: 2.2rem; }
.header-content { flex-direction: column; text-align: center; }
nav a { margin: 0.5rem 1rem; }
}
</style>
</head>
<body>
<div class="noise"></div>
<header>
<div class="container header-content">
<h1 class="logo">DexLand</h1>
<nav>
<a href="#home">Главная</a>
<a href="#donate">Донат</a>
<a href="#cases">Кейсы</a>
<a href="#forum">Форум</a>
<a href="#profile">ЛК</a>
</nav>
<button class="btn btn-primary glow-on-hover" onclick="copyIp()">Копировать IP</button>
</div>
</header>
<main id="home">
<section class="hero">
<div class="hero-text fade-in">
<h2>DexLand</h2>
<p>Лучший Minecraft-сервер с донатами, кейсами и бонусами</p>
</div>
<div class="server-stats fade-in" style="animation-delay: 0.2s;">
<div class="stat-card">
<div class="stat-label">IP</div>
<div class="stat-value" id="ip-display">play.dexland.net</div>
</div>
<div class="stat-card pulse-on-load">
<div class="stat-label">Онлайн</div>
<div class="stat-value" id="online-value">Загрузка...</div>
</div>
<div class="stat-card">
<div class="stat-label">Статус</div>
<div class="status-badge" id="status-text">Проверка...</div>
</div>
<div class="stat-card">
<div class="stat-label">Версия</div>
<div class="stat-value">1.20.4+</div>
</div>
</div>
<a href="#donate" class="btn btn-secondary slide-on-hover">Перейти к донатам</a>
</section>
<section class="bonuses container fade-in" style="animation-delay: 0.4s;">
<h3>Бонусы для новых игроков</h3>
<div class="cards">
<div class="card hover-lift">
<h4>Стартовый набор</h4>
<p>Ресурсы и инструменты для старта</p>
</div>
<div class="card hover-lift">
<h4>500 валюты</h4>
<p>На покупки в магазине и кейсы</p>
</div>
<div class="card hover-lift">
<h4>VIP-чат 7 дней</h4>
<p>Доступ к закрытому чату сервера</p>
</div>
</div>
</section>
<section class="news container fade-in" style="animation-delay: 0.6s;">
<h3>Новости и акции</h3>
<article class="news-item glow-border">
<h4>Акция: +20% к донату на выходных</h4>
<p>С 10 по 12 число пополняйте баланс и получайте на 20% больше валюты.</p>
<time datetime="2026-07-10">10.07.2026</time>
</article>
<article class="news-item glow-border">
<h4>Обновление кейсов</h4>
<p>Добавили легендарный кейс с эксклюзивными предметами.</p>
<time datetime="2026-07-08">08.07.2026</time>
</article>
</section>
</main>
<footer>
<div class="container">
<p>© 2026 DexLand. Все права защищены.</p>
</div>
</footer>
<script>
// Имитация онлайна и статуса
function updateServerStatus() {
const onlineEl = document.getElementById('online-value');
const statusEl = document.getElementById('status-text');
const isOnline = Math.random() > 0.1;
const online = Math.floor(Math.random() * 120);
const max = 200;
if (isOnline) {
onlineEl.textContent = `${online} / ${max}`;
statusEl.textContent = 'Онлайн';
statusEl.className = 'status-badge status-online';
} else {
onlineEl.textContent = '-';
statusEl.textContent = 'Офлайн';
statusEl.className = 'status-badge status-offline';
}
}
function copyIp() {
navigator.clipboard.writeText('play.dexland.net').then(() => {
const btn = document.querySelector('.btn-primary');
const originalText = btn.textContent;
btn.textContent = 'Скопировано!';
setTimeout(() => { btn.textContent = originalText; }, 2000);
});
}
// Анимация появления блоков при скролле
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.