*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
body {
font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif;
line-height:1.6; color:#1d1d1f; background:#fff;
-webkit-font-smoothing: antialiased;
}
.container { max-width:1120px; margin:0 auto; padding:0 24px; }

/* HEADER */
.header {
position:fixed; top:0; left:0; right:0; z-index:100;
background:rgba(11,11,12,0.85); backdrop-filter:saturate(180%) blur(20px);
border-bottom:1px solid rgba(255,255,255,0.08);
transition:background .3s;
}
.header.scrolled { background:rgba(11,11,12,0.95); }
.header-inner {
display:flex; align-items:center; justify-content:space-between;
height:56px;
}
.logo {
color:#fff; font-weight:700; font-size:15px; letter-spacing:2px;
text-decoration:none;
}
.nav { display:flex; gap:28px; }
.nav-link {
color:rgba(255,255,255,0.7); text-decoration:none; font-size:13px;
transition:color .2s;
}
.nav-link:hover { color:#fff; }
.header-actions { display:flex; gap:12px; align-items:center; }
.burger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
.burger span { width:22px; height:1.5px; background:#fff; transition:transform .3s; }
.burger.active span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.burger.active span:nth-child(2) { opacity:0; }
.burger.active span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }

/* BUTTONS */
.btn {
display:inline-flex; align-items:center; justify-content:center;
padding:12px 28px; border-radius:980px; font-size:14px; font-weight:500;
text-decoration:none; cursor:pointer; border:none; transition:all .2s;
white-space:nowrap;
}
.btn-sm { padding:8px 20px; font-size:13px; }
.btn-lg { padding:16px 36px; font-size:16px; }
.btn-accent { background:#0071e3; color:#fff; }
.btn-accent:hover { background:#0077ED; }
.btn-outline { background:transparent; border:1px solid rgba(255,255,255,0.3); color:#fff; }
.btn-outline:hover { border-color:#fff; }
.btn-outline-dark { border-color:#d2d2d7; color:#1d1d1f; }
.btn-outline-dark:hover { border-color:#1d1d1f; }

/* HERO */
.hero {
min-height:100vh; display:flex; align-items:center;
background:#0b0b0c; color:#fff; padding-top:56px;
}
.hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.hero-subtitle { font-size:14px; letter-spacing:3px; color:#86868b; margin-bottom:16px; }
.hero h1 { font-size:clamp(28px,4vw,48px); line-height:1.15; margin-bottom:24px; font-weight:700; }
.hero h1 strong { display:block; margin-top:4px; }
.hero-desc { font-size:18px; color:#a1a1a6; margin-bottom:36px; max-width:480px; }
.hero-buttons { display:flex; flex-wrap:wrap; gap:16px; }
.hero-photo {
width:100%; max-width:420px; border-radius:20px; aspect-ratio:3/4;
object-fit:cover; background:#1d1d1f;
}

/* SECTIONS */
.section-dark { background:#0b0b0c; color:#fff; padding:120px 0; }
.section-light { background:#fafafa; padding:120px 0; }
.section-header { text-align:center; margin-bottom:64px; }
.section-tag {
display:inline-block; font-size:12px; letter-spacing:2px; color:#86868b;
text-transform:uppercase; margin-bottom:16px;
}
.section-title {
font-size:clamp(28px,4vw,40px); font-weight:700; line-height:1.2;
margin-bottom:20px;
}
.section-desc {
font-size:17px; color:#86868b; max-width:600px; margin:0 auto;
}

/* ABOUT */
.about-features { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:64px; }
.feature-card {
background:rgba(255,255,255,0.05); border-radius:20px; padding:40px 32px;
border:1px solid rgba(255,255,255,0.08); text-align:center;
}
.feature-icon { font-size:48px; margin-bottom:20px; }
.feature-card h3 { font-size:20px; margin-bottom:12px; }
.feature-card p { font-size:15px; color:#a1a1a6; }

/* PROBLEMS */
.problems-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.problem-item {
background:#0b0b0c; color:#fff; padding:32px 24px; border-radius:16px;
font-size:18px; font-weight:500; text-align:center;
border:1px solid rgba(255,255,255,0.08);
}

/* BENEFITS */
.benefits-list { max-width:600px; margin:0 auto; }
.benefit-item {
font-size:18px; padding:20px 0; border-bottom:1px solid rgba(255,255,255,0.08);
color:#a1a1a6;
}
.benefit-item:first-child { border-top:1px solid rgba(255,255,255,0.08); }

/* SERVICES */
.services-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.service-card {
background:#fff; border-radius:20px; padding:40px 32px;
border:1px solid #e8e8ed; transition:transform .2s, box-shadow .2s;
}
.service-card:hover { transform:translateY(-2px); box-shadow:0 8px 30px rgba(0,0,0,0.08); }
.service-highlight { border-color:#0071e3; }
.service-vip { border:2px solid #ffd700; }
.service-badge { font-size:12px; letter-spacing:2px; color:#86868b; margin-bottom:16px; }
.service-card h3 { font-size:22px; margin-bottom:16px; font-weight:600; }
.service-card p { font-size:15px; color:#86868b; margin-bottom:24px; }
.service-price { font-size:24px; font-weight:700; margin-bottom:24px; }

/* CASES */
.cases-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.case-card {
background:rgba(255,255,255,0.05); border-radius:20px; padding:32px;
border:1px solid rgba(255,255,255,0.08);
}
.case-images { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:20px; }
.case-images img {
width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:12px;
background:#1d1d1f;
}
.case-card p { font-size:15px; color:#a1a1a6; }

/* MOTIVATION */
.motivation-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:40px; text-align:center; }
.stat-number { font-size:clamp(48px,6vw,72px); font-weight:700; margin-bottom:8px; }
.stat-label { font-size:17px; color:#86868b; max-width:360px; margin:0 auto; }

/* FAQ */
.faq-list { max-width:700px; margin:0 auto; }
.faq-item { border-bottom:1px solid rgba(255,255,255,0.08); }
.faq-q {
width:100%; background:none; border:none; color:#fff; font-size:17px;
text-align:left; padding:24px 0; cursor:pointer; font-weight:500;
display:flex; justify-content:space-between; align-items:center;
}
.faq-q::after { content:"+"; font-size:24px; transition:transform .3s; }
.faq-item.open .faq-q::after { transform:rotate(45deg); }
.faq-a { color:#a1a1a6; font-size:15px; padding:0 0 24px; display:none; }
.faq-item.open .faq-a { display:block; }

/* CTA */
.cta-section { text-align:center; }
.cta-content h2 { font-size:clamp(28px,4vw,36px); margin-bottom:16px; }
.cta-content p { font-size:17px; color:#a1a1a6; margin-bottom:36px; }

/* FORMS */
.form-container {
max-width:600px; margin:0 auto; text-align:center;
}
.form-mini { max-width:480px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
input, select {
width:100%; padding:14px 20px; border:1px solid #d2d2d7; border-radius:12px;
font-size:16px; background:#fff; outline:none;
}
input:focus, select:focus { border-color:#0071e3; }
input::placeholder { color:#b0b0b0; }

/* CONTACTS */
.contacts-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:48px; }
.contact-card {
background:#fff; border-radius:16px; padding:32px 24px; text-align:center;
text-decoration:none; color:#1d1d1f; border:1px solid #e8e8ed;
transition:transform .2s;
}
.contact-card:hover { transform:translateY(-2px); }
.contact-icon { font-size:36px; margin-bottom:12px; }
.contact-card h3 { font-size:18px; margin-bottom:4px; }
.contact-card p { font-size:14px; color:#86868b; }

/* FOOTER */
.footer {
background:#0b0b0c; color:rgba(255,255,255,0.4); padding:40px 0;
text-align:center; font-size:13px;
}
.footer a { color:rgba(255,255,255,0.6); text-decoration:none; }
.footer a:hover { color:#fff; }

/* TOAST */
.toast {
position:fixed; bottom:24px; right:24px; background:#0071e3; color:#fff;
padding:16px 24px; border-radius:12px; font-size:15px; z-index:999;
animation:toast-in .3s ease;
}
@keyframes toast-in { from {opacity:0;transform:translateY(20px);} }

/* RESPONSIVE */
@media(max-width:900px) {
.hero-grid { grid-template-columns:1fr; text-align:center; }
.hero-desc, .hero-buttons { margin-left:auto; margin-right:auto; }
.hero-image { order:-1; max-width:300px; margin:0 auto; }
.about-features, .problems-grid, .services-grid, .motivation-grid, .cases-grid { grid-template-columns:1fr; }
.contacts-grid { grid-template-columns:repeat(2,1fr); }
.form-row { grid-template-columns:1fr; }
.nav { display:none; }
.burger { display:flex; }
.nav.open {
display:flex; position:absolute; top:56px; left:0; right:0;
background:rgba(11,11,12,0.98); flex-direction:column;
padding:24px; gap:20px; align-items:center;
}
.header-actions { display:none; }
}
@media(max-width:600px) {
.hero h1 { font-size:24px; }
.section-title { font-size:24px; }
.section-dark, .section-light { padding:80px 0; }
.contacts-grid { grid-template-columns:1fr; }
}