89 lines
4.5 KiB
HTML
89 lines
4.5 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="ru">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>Тестовый лендинг</title>
|
||
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>🚀</text></svg>">
|
||
<style>
|
||
:root{--ink:#0F1218;--cyan:#00E5FF;--cyan-50:#E8FCFF;--white:#fff;--gray-500:#5B6573;--gray-100:#F2F4F7}
|
||
*{box-sizing:border-box;margin:0;padding:0}
|
||
body{font:17px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,system-ui,sans-serif;color:var(--ink);background:var(--white)}
|
||
.container{max-width:1140px;margin:0 auto;padding:80px 24px}
|
||
.hero{background:var(--ink);color:var(--white);padding:120px 24px;text-align:center}
|
||
.hero h1{font-size:56px;font-weight:800;line-height:1.05;margin-bottom:24px}
|
||
.hero p{font-size:20px;color:#9aa3b2;max-width:600px;margin:0 auto 32px}
|
||
.btn{display:inline-block;background:var(--cyan);color:var(--ink);padding:14px 28px;border-radius:8px;font-weight:700;text-decoration:none;transition:transform .2s}
|
||
.btn:hover{transform:translateY(-2px)}
|
||
.section{padding:80px 24px}
|
||
.section h2{font-size:36px;font-weight:700;margin-bottom:24px;text-align:center}
|
||
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:1140px;margin:0 auto;padding:0 24px 80px}
|
||
.card{background:var(--gray-100);border-radius:16px;padding:32px;transition:transform .2s}
|
||
.card:hover{transform:translateY(-4px)}
|
||
.card h3{font-size:22px;font-weight:700;margin-bottom:12px}
|
||
.card p{color:var(--gray-500)}
|
||
.about{background:var(--cyan-50);text-align:center}
|
||
.about p{max-width:700px;margin:0 auto}
|
||
.footer{background:var(--ink);color:var(--white);padding:48px 24px;text-align:center}
|
||
.footer p{color:var(--gray-500)}
|
||
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
|
||
.reveal.in{opacity:1;transform:none}
|
||
@media (max-width:640px){.hero h1{font-size:36px}.section h2{font-size:28px}.container{padding:48px 20px}.hero{padding:80px 20px}}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<section class="hero">
|
||
<h1>Тестовый лендинг</h1>
|
||
<p>Это пример простого и стильного лендинга, который можно использовать как основу для твоего проекта</p>
|
||
<a class="btn" href="#features">Узнать больше</a>
|
||
</section>
|
||
|
||
<section id="features" class="section">
|
||
<h2 class="reveal">Преимущества</h2>
|
||
<div class="features">
|
||
<div class="card reveal">
|
||
<h3>⚡ Быстро</h3>
|
||
<p>Молниеносная загрузка и моментальный отклик на действия пользователя</p>
|
||
</div>
|
||
<div class="card reveal">
|
||
<h3>🎨 Красиво</h3>
|
||
<p>Современный дизайн и приятные анимации для лучшего восприятия</p>
|
||
</div>
|
||
<div class="card reveal">
|
||
<h3>📱 Адаптивно</h3>
|
||
<p>Идеально выглядит на любом устройстве: от телефона до широкоформатного монитора</p>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="section about">
|
||
<div class="container">
|
||
<h2 class="reveal">О проекте</h2>
|
||
<p class="reveal">Это демонстрационный лендинг, созданный на платформе Vibe42. Ты можешь изменить текст, цвета и структуру под свои задачи за считанные минуты.</p>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="section">
|
||
<div class="container">
|
||
<h2 class="reveal">Контакты</h2>
|
||
<div style="text-align:center;margin-top:32px">
|
||
<p class="reveal" style="margin-bottom:24px">Готов начать проект? Свяжись со мной любым удобным способом</p>
|
||
<a class="btn reveal" href="https://wa.me/77771234567?text=Здравствуйте!" style="margin:8px">Написать в WhatsApp</a>
|
||
<a class="btn reveal" href="tel:+77771234567" style="margin:8px;background:var(--ink);color:var(--white)">Позвонить</a>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<footer class="footer">
|
||
<p>© 2026 Тестовый лендинг. Создано на Vibe42</p>
|
||
</footer>
|
||
|
||
<script>
|
||
var io=new IntersectionObserver(function(entries){
|
||
entries.forEach(function(e){ if(e.isIntersecting) e.target.classList.add('in'); });
|
||
},{threshold:.15});
|
||
document.querySelectorAll('.reveal').forEach(function(el){ io.observe(el); });
|
||
</script>
|
||
</body>
|
||
</html>
|