1<!DOCTYPE html> 2<html lang="ru"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <link rel="icon" href="data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27><text y=%27.9em%27 font-size=%2790%27>ð®</text></svg>"> 7 <title>Asia Motors - вÑбоÑ, ÑÐµÐ¼Ð¾Ð½Ñ Ð¸ ÑлабÑе меÑÑа киÑайÑÐºÐ¸Ñ Ð¸ коÑейÑÐºÐ¸Ñ Ð°Ð²Ñо</title> 8 <meta name="description" content="Asia Motors: ÑпÑавоÑник по киÑайÑким и коÑейÑким авÑомобилÑм. Ðодели, ÑлабÑе меÑÑа, обÑлÑживание, запÑаÑÑи, диагноÑÑика и пÑовеÑка пеÑед покÑпкой."> 9 <meta name="robots" content="index, follow"> 10 <link rel="canonical" href="https://asia-motors-hub.vercel.app/"> 11 <meta property="og:type" content="website"> 12 <meta property="og:title" content="Asia Motors - вÑбоÑ, ÑÐµÐ¼Ð¾Ð½Ñ Ð¸ ÑлабÑе меÑÑа киÑайÑÐºÐ¸Ñ Ð¸ коÑейÑÐºÐ¸Ñ Ð°Ð²Ñо"> 13 <meta property="og:description" content="СпÑавоÑник по моделÑм, диагноÑÑике, ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ°Ð¼, ÑеÑвиÑÑ Ð¸ пÑовеÑке киÑайÑÐºÐ¸Ñ Ð¸ коÑейÑÐºÐ¸Ñ Ð°Ð²Ñомобилей пеÑед покÑпкой."> 14 <meta property="og:url" content="https://asia-motors-hub.vercel.app/"> 15 <meta property="og:site_name" content="Asia Motors"> 16 <meta property="og:locale" content="ru_RU"> 17 <link rel="preconnect" href="https://fonts.googleapis.com"> 18 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 19 <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet"> 20 <link rel="stylesheet" href="/static/css/style.css?v=1777392962"> 21
21<script type="application/ld+json"> 22 { 23 "@context": "https://schema.org", 24 "@type": "WebSite", 25 "name": "Asia Motors", 26 "url": "https://asia-motors-hub.vercel.app/", 27 "description": "СпÑавоÑник по киÑайÑким и коÑейÑким авÑомобилÑм: модели, ÑлабÑе меÑÑа, обÑлÑживание, запÑаÑÑи и пÑовеÑка пеÑед покÑпкой.", 28 "potentialAction": { 29 "@type": "SearchAction", 30 "target": "https://asia-motors-hub.vercel.app/search?q={search_term_string}", 31 "query-input": "required name=search_term_string" 32 } 33 } 34 </script>
34 35 <style> 36 :root { 37 --asia-ink: #141820; 38 --asia-muted: #5f6876; 39 --asia-line: #dfe5ea; 40 --asia-paper: #fffaf2; 41 --asia-porcelain: #f7fbfc; 42 --asia-red: #c9252d; 43 --asia-blue: #1f7187; 44 --asia-gold: #d99731; 45 --asia-graphite: #242b33; 46 } 47 body.is-home { 48 background: linear-gradient(180deg, #f7fbfc 0%, #fffaf2 44%, #f2f6f7 100%); 49 color: var(--asia-ink); 50 } 51 .site-main { padding-top: 0; } 52 .hero-home { 53 position: relative; 54 overflow: hidden; 55 padding: 34px 0 30px; 56 background: 57 linear-gradient(115deg, rgba(255,250,242,.96) 0%, rgba(247,251,252,.88) 48%, rgba(230,238,240,.9) 100%), 58 repeating-linear-gradient(90deg, rgba(31,113,135,.08) 0 1px, transparent 1px 74px); 59 border-bottom: 1px solid rgba(20,24,32,.1); 60 } 61 .hero-home::before { 62 content: ''; 63 position: absolute; 64 inset: auto -8% -24% 45%; 65 height: 260px; 66 background: linear-gradient(90deg, rgba(201,37,45,.18), rgba(31,113,135,.12)); 67 transform: skewY(-8deg); 68 } 69 .hero-home .container { position: relative; z-index: 1; } 70 .asia-hero-grid { 71 display: grid; 72 grid-template-columns: minmax(0, .88fr) minmax(420px, .82fr); 73 gap: 24px; 74 align-items: center; 75 } 76 .asia-hero-copy { 77 min-height: 560px; 78 display: flex; 79 flex-direction: column; 80 justify-content: center; 81 gap: 18px; 82 } 83 .asia-kicker { 84 display: inline-flex; 85 width: fit-content; 86 align-items: center; 87 gap: 9px; 88 padding: 8px 12px; 89 border: 1px solid rgba(201,37,45,.2); 90 background: rgba(255,255,255,.62); 91 color: #8e1c22; 92 border-radius: 999px; 93 font-size: .82rem; 94 font-weight: 700; 95 } 96 .hero-home h1 { 97 max-width: 720px; 98 margin: 0; 99 font-size: clamp(2.45rem, 5vw, 5.7rem); 100 line-height: .94; 101 letter-spacing: 0; 102 color: var(--asia-ink); 103 } 104 .hero-home h1 span { color: var(--asia-red); } 105 .hero-desc { 106 max-width: 600px; 107 color: #3f4956; 108 font-size: 1.05rem; 109 line-height: 1.65; 110 margin: 0; 111 } 112 .search-hero { 113 width: min(100%, 620px); 114 position: relative; 115 z-index: 40; 116 } 117 .search-hero input { 118 width: 100%; 119 height: 58px; 120 padding: 0 18px 0 50px; 121 border: 1px solid rgba(20,24,32,.17); 122 border-radius: 8px; 123 background: rgba(255,255,255,.94); 124 box-shadow: 0 18px 48px rgba(20,24,32,.1); 125 font: 600 1rem var(--font-body, Inter, system-ui, sans-serif); 126 color: var(--asia-ink); 127 outline: none; 128 } 129 .search-hero input:focus { border-color: var(--asia-blue); box-shadow: 0 0 0 4px rgba(31,113,135,.12), 0 18px 48px rgba(20,24,32,.1); } 130 .search-hero input::placeholder { color: #7b8795; } 131 .search-icon { position: absolute; left: 18px; top: 50%; transform: translateY(-50%); color: var(--asia-red); font-size: 1.1rem; } 132 .hero-search-dropdown { 133 position: absolute; 134 left: 0; right: 0; top: calc(100% + 8px); 135 display: none; 136 max-height: 380px; 137 overflow: auto; 138 background: #fff; 139 border: 1px solid var(--asia-line); 140 border-radius: 8px; 141 box-shadow: 0 24px 60px rgba(20,24,32,.18); 142 z-index: 2000; 143 } 144 .sd-item { display: flex; gap: 12px; align-items: center; padding: 12px 14px; color: var(--asia-ink); border-bottom: 1px solid #edf1f3; text-decoration: none; } 145 .sd-item:hover, .sd-item.sd-active { background: #f4fafb; color: var(--asia-blue); } 146 .sd-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 8px; background: #eef6f7; } 147 .sd-info { min-width: 0; } 148 .sd-title, .sd-slug { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } 149 .sd-title { font-weight: 700; font-size: .92rem; } 150 .sd-slug, .sd-empty { color: #778390; font-size: .8rem; } 151 .sd-empty { padding: 18px; text-align: center; } 152 .asia-route-row { display: flex; flex-wrap: wrap; gap: 8px; max-width: 650px; } 153 .tag-btn { 154 display: inline-flex; 155 align-items: center; 156 min-height: 38px; 157 padding: 8px 12px; 158 border-radius: 8px; 159 border: 1px solid rgba(20,24,32,.13); 160 background: rgba(255,255,255,.68); 161 color: #26313b; 162 text-decoration: none; 163 font-size: .86rem; 164 font-weight: 700; 165 } 166 .tag-btn:hover { transform: translateY(-1px); background: var(--asia-ink); color: #fff; border-color: var(--asia-ink); } 167 .asia-disclaimer { 168 max-width: none; 169 grid-column: 1 / -1; 170 padding: 12px 14px; 171 border-left: 4px solid var(--asia-red); 172 background: rgba(255,255,255,.62); 173 color: #4d5966; 174 font-size: .86rem; 175 line-height: 1.5; 176 } 177 .asia-hero-media { 178 position: relative; 179 min-height: 0; 180 width: min(100%, 540px); 181 justify-self: end; 182 aspect-ratio: 4 / 5; 183 border-radius: 8px; 184 overflow: hidden; 185 box-shadow: 0 28px 80px rgba(20,24,32,.22); 186 background: #d7e1e4;
187 } 188 .asia-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: center center; display: block; } 189 .asia-hero-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,24,32,.35), transparent 42%, rgba(20,24,32,.08)); pointer-events: none; } 190 .asia-media-card { 191 position: absolute; 192 left: 18px; 193 bottom: 18px; 194 width: min(320px, calc(100% - 36px)); 195 padding: 16px; 196 border-radius: 8px; 197 background: rgba(255,255,255,.88); 198 backdrop-filter: blur(14px); 199 box-shadow: 0 18px 48px rgba(20,24,32,.2); 200 } 201 .asia-media-card b { display: block; margin-bottom: 6px; font-size: 1rem; } 202 .asia-media-card span { display: block; color: #5b6571; font-size: .86rem; line-height: 1.45; } 203 .home-section { padding: 56px 0; opacity: 0; transform: translateY(22px); transition: opacity .55s ease, transform .55s ease; } 204 .home-section.visible { opacity: 1; transform: translateY(0); } 205 .section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 24px; } 206 .home-section-title { margin: 0; color: var(--asia-ink); font-size: clamp(1.45rem, 2.4vw, 2.25rem); line-height: 1.08; letter-spacing: 0; } 207 .home-section-subtitle { max-width: 620px; color: var(--asia-muted); line-height: 1.55; margin: 8px 0 0; } 208 .asia-scenario-grid { display: grid; grid-template-columns: 1.1fr .9fr .9fr; gap: 14px; } 209 .asia-scenario { 210 min-height: 230px; 211 position: relative; 212 overflow: hidden; 213 border-radius: 8px; 214 color: #fff; 215 text-decoration: none; 216 background: var(--asia-graphite); 217 box-shadow: 0 18px 45px rgba(20,24,32,.14); 218 } 219 .asia-scenario.large { grid-row: span 2; min-height: 476px; } 220 .asia-scenario img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; } 221 .asia-scenario:hover img { transform: scale(1.035); } 222 .asia-scenario::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,16,20,.08), rgba(10,16,20,.78)); } 223 .scenario-copy { position: absolute; inset: auto 18px 18px 18px; z-index: 1; } 224 .scenario-copy small { display: inline-block; margin-bottom: 8px; padding: 5px 9px; border-radius: 999px; background: rgba(255,255,255,.84); color: #7f1d1d; font-weight: 800; font-size: .72rem; } 225 .scenario-copy h3 { margin: 0 0 6px; color: #fff; font-size: 1.15rem; line-height: 1.15; } 226 .scenario-copy p { margin: 0; color: rgba(255,255,255,.82); font-size: .86rem; line-height: 1.45; } 227 .categories-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; } 228 .category-card { 229 min-height: 170px; 230 display: flex; 231 flex-direction: column; 232 justify-content: space-between; 233 position: relative; 234 overflow: hidden; 235 padding: 18px; 236 border-radius: 8px; 237 border: 1px solid rgba(20,24,32,.1); 238 background: #fff; 239 color: var(--asia-ink); 240 text-decoration: none; 241 box-shadow: 0 12px 28px rgba(20,24,32,.06); 242 } 243 .category-card:nth-child(1), .category-card:nth-child(6), .category-card:nth-child(12) { grid-column: span 2; background: linear-gradient(135deg, #fff, #edf7f8); } 244 .category-card:nth-child(3), .category-card:nth-child(7) { grid-column: span 2; background: linear-gradient(135deg, #fff7eb, #fff); } 245 .category-card::before { content: attr(data-num); position: absolute; right: 12px; top: 8px; color: rgba(20,24,32,.08); font-size: 3rem; font-weight: 900; line-height: 1; } 246 .category-card:hover { transform: translateY(-3px); border-color: rgba(201,37,45,.3); box-shadow: 0 18px 44px rgba(20,24,32,.12); } 247 .category-icon { font-size: 1.6rem; display: block; margin-bottom: 12px; } 248 .category-name { font-weight: 900; font-size: 1rem; line-height: 1.15; margin-bottom: 8px; } 249 .category-count { color: #64707d; font-size: .82rem; line-height: 1.45; } 250 .asia-feature-band { 251 display: grid; 252 grid-template-columns: .95fr 1.05fr; 253 gap: 16px; 254 align-items: center; 255 } 256 .featured-card { 257 min-height: 330px; 258 display: grid; 259 grid-template-columns: 1fr .42fr; 260 gap: 0; 261 overflow: hidden; 262 border-radius: 8px; 263 background: #161b22; 264 color: #fff; 265 text-decoration: none; 266 box-shadow: 0 22px 58px rgba(20,24,32,.18); 267 } 268 .featured-content { padding: 28px; display: flex; flex-direction: column; justify-content: center; } 269 .featured-badge { width: fit-content; margin-bottom: 16px; padding: 6px 10px; border-radius: 999px; background: rgba(201,37,45,.18); color: #ffb8b8; font-size: .74rem; font-weight: 900; } 270 .featured-title { font-size: 1.35rem; font-weight: 900; line-height: 1.2; margin-bottom: 10px; } 271 .featured-desc { color: rgba(255,255,255,.75); font-size: .92rem; line-height: 1.55; } 272 .featured-cta { margin-top: 18px; color: #ffe0a8; font-weight: 800; } 273 .featured-visual { display: grid; place-items: center; background: linear-gradient(135deg, var(--asia-red), var(--asia-blue)); font-size: 4rem; } 274 .recent-panel { border: 1px solid rgba(20,24,32,.1); background: rgba(255,255,255,.72); border-radius: 8px; padding: 18px; } 275 .recent-scroll { display: grid; gap: 10px; max-height: 330px; overflow: auto; padding-right: 4px; } 276 .recent-card { display: block; padding: 12px 14px; border-radius: 8px; background: #fff; border: 1px solid #edf1f3; color: var(--asia-ink); text-decoration: none; } 277 .recent-card:hover { border-color: rgba(31,113,135,.34); transform: translateX(2px); } 278 .recent-badge { display: inline-block; margin-bottom: 6px; color: var(--asia-red); font-size: .72rem; font-weight: 900; text-transform: uppercase; } 279 .recent-title { font-weight: 800; line-height: 1.3; } 280 .recent-cat { display: block; margin-top: 5px; color: #6d7884; font-size: .78rem; } 281 .articles-home-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; } 282 .article-home-card { min-height: 150px; padding: 18px; border-radius: 8px; background: #fff; border: 1px solid rgba(20,24,32,.1); color: var(--asia-ink); text-decoration: none; box-shadow: 0 10px 28px rgba(20,24,32,.05); } 283 .article-home-card:hover { transform: translateY(-2px); border-color: rgba(201,37,45,.26); } 284 .article-home-title { font-weight: 900; line-height: 1.3; margin-bottom: 8px; } 285 .article-home-desc { color: #5f6a76; font-size: .86rem; line-height: 1.5; } 286 .article-home-tag { display: inline-flex; margin-top: 14px; padding: 5px 9px; border-radius: 999px; background: #eef6f7; color: var(--asia-blue); font-size: .74rem; font-weight: 800; } 287 .btn-outline { border: 1px solid rgba(20,24,32,.18); background: #fff; color: var(--asia-ink); border-radius: 8px; padding: 12px 18px; font-weight: 800; cursor: pointer; } 288 .btn-outline:hover { border-color: var(--asia-red); color: var(--asia-red); } 289 .asia-note { padding: 20px; border-radius: 8px; background: #fff; border: 1px solid rgba(20,24,32,.1); color: #4f5b67; line-height: 1.6; } 290 .cta-banner { position: relative; overflow: hidden; border-radius: 8px; background: linear-gradient(135deg, #171c22, #26313b); color: #fff; padding: 30px; } 291 .cta-banner::after { content: ''; position: absolute; inset: 0 0 0 58%; background: url('/static/img/home/asia-buying-check.jpg') center/cover; opacity: .42; } 292 .cta-banner h2, .cta-banner p, .cta-banner a { position: relative; z-index: 1; max-width: 620px; } 293 .cta-banner h2 { margin: 0 0 10px; color: #fff; font-size: 1.65rem; line-height: 1.2; } 294 .cta-banner p { margin: 0 0 18px; color: rgba(255,255,255,.78); } 295 @media (max-width: 980px) { 296 .asia-hero-grid, .asia-feature-band { grid-template-columns: 1fr; } 297 .asia-hero-copy, .asia-hero-media { min-height: auto; } 298 .asia-hero-media { width: 100%; aspect-ratio: 4 / 5; justify-self: center; } 299 .asia-scenario-grid { grid-template-columns: 1fr 1fr; } 300 .categories-grid { grid-template-columns: repeat(2, 1fr); } 301 .category-card, .category-card:nth-child(n) { grid-column: auto; } 302 .articles-home-grid { grid-template-columns: 1fr 1fr; } 303 } 304 @media (max-width: 640px) { 305 .hero-home { padding-top: 22px; } 306 .hero-home h1 { font-size: 2.12rem; } 307 .asia-route-row { gap: 7px; } 308 .tag-btn { font-size: .8rem; min-height: 34px; padding: 7px 10px; } 309 .asia-media-card { position: relative; left: auto; bottom: auto; width: auto; margin: -84px 12px 12px; } 310 .section-head { display: block; } 311 .asia-scenario-grid, .categories-grid, .articles-home-grid { grid-template-columns: 1fr; } 312 .asia-scenario.large, .asia-scenario { min-height: 260px; grid-row: auto; } 313 .featured-card { grid-template-columns: 1fr; } 314 .featured-visual { min-height: 130px; } 315 .cta-banner::after { opacity: .2; inset: 0; } 316 } 317 .nav-dropdown { position: relative; display: inline-block; } 318 .dropdown-toggle { background: none; border: none; cursor: pointer; font: inherit; color: inherit; padding: 8px 12px; border-radius: 8px; transition: background .2s; } 319 .dropdown-toggle:hover { background: rgba(0,0,0,.05); } 320 .dropdown-menu { display: none; position: absolute; right: 0; top: 100%; min-width: 240px; max-height: 70vh; overflow-y: auto; background: #fff; border: 1px solid var(--asia-line); border-radius: 8px; box-shadow: 0 18px 48px rgba(20,24,32,.14); padding: 8px 0; z-index: 1000; } 321 .nav-dropdown:hover .dropdown-menu, .nav-dropdown:focus-within .dropdown-menu { display: block; } 322 .dropdown-item { display: block; padding: 10px 18px; color: var(--asia-ink); text-decoration: none; font-size: .92rem; white-space: nowrap; } 323 .dropdown-item:hover { background: #f4fafb; color: var(--asia-blue); } 324 @media (max-width: 768px) { .main-nav > .nav-link, .dropdown-toggle { display: none; } .dropdown-menu { display: block !important; position: static; box-shadow: none; border: none; border-radius: 0; min-width: auto; max-height: none; background: transparent; } .dropdown-item { padding: 8px 0; } } 325 </style> 326 <!--#include virtual="/ssi/head.html" --> 327</head> 328<body class="is-home"> 329 <!--#include virtual="/ssi/body_top.html" --> 330 <div class="reading-progress"></div> 331 <header class="site-header"> 332 <div class="container header-inner"> 333 <a href="/" class="logo">
334 <span class="logo-icon">ð®</span> 335 <span>Asia Motors</span> 336 </a> 337 <button class="mobile-menu-btn" aria-label="ÐенÑ" id="menuBtn">â°</button> 338 <nav class="main-nav" id="mainNav"> 339 <a href="/category/chery-tiggo/" class="nav-link">ð Chery Tiggo</a> 340<a href="/category/haval-jolion/" class="nav-link">ð¦ Haval Jolion</a> 341<a href="/category/geely-coolray/" class="nav-link">ð Geely Coolray</a> 342<a href="/category/omoda-c5/" class="nav-link">ð Omoda C5</a> 343<div class="nav-dropdown"> 344 <button class="nav-link dropdown-toggle">ð ÐÑе ÑÐ°Ð·Ð´ÐµÐ»Ñ â¾</button> 345 <div class="dropdown-menu"><a href="/category/chery-tiggo/" class="dropdown-item">ð Chery Tiggo</a> 346<a href="/category/haval-jolion/" class="dropdown-item">ð¦ Haval Jolion</a> 347<a href="/category/geely-coolray/" class="dropdown-item">ð Geely Coolray</a> 348<a href="/category/omoda-c5/" class="dropdown-item">ð Omoda C5</a> 349<a href="/category/changan-models/" class="dropdown-item">ðï¸ Changan Models</a> 350<a href="/category/exeed-jetour/" class="dropdown-item">⨠Exeed & Jetour</a> 351<a href="/category/daewoo-nexia/" class="dropdown-item">ð§ Daewoo Nexia</a> 352<a href="/category/daewoo-matiz/" class="dropdown-item">ð Daewoo Matiz</a> 353<a href="/category/daewoo-gentra/" class="dropdown-item">ð ï¸ Daewoo Gentra</a> 354<a href="/category/chery-legacy/" class="dropdown-item">ð Chery Amulet & Bonus</a> 355<a href="/category/dealers-service/" class="dropdown-item">ð Dealers & Service</a> 356<a href="/category/parts-repair/" class="dropdown-item">âï¸ Parts & Repair</a> 357<a href="/category/drugoe/" class="dropdown-item">ð ÐÑÑгое</a></div> 358 </div> 359 </nav> 360 </div> 361 </header> 362 363 <section class="hero-home"> 364 <div class="container asia-hero-grid"> 365 <div class="asia-hero-copy"> 366 <span class="asia-kicker">ÐнÑоÑмаÑионнÑй ÑпÑавоÑник по киÑайÑким и коÑейÑким авÑо</span> 367 <h1>Asia Motors: <span>вÑбоÑ, ÑемонÑ, ÑлабÑе меÑÑа</span></h1> 368 <p class="hero-desc">ÐодбеÑиÑе моделÑ, пÑовеÑÑÑе ÑлабÑе меÑÑа и бÑÑÑÑо найдиÑе маÑеÑÐ¸Ð°Ð»Ñ Ð¿Ð¾ обÑлÑживаниÑ. Ðа главной ÑобÑÐ°Ð½Ñ Ð¼Ð°ÑÑÑÑÑÑ Ð´Ð»Ñ Ð¿Ð¾ÐºÑпки, ÑемонÑа, ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ¾Ð², Ñалона и ÑеалÑной ÑкÑплÑаÑаÑии.</p> 369 <div class="search-hero"> 370 <span class="search-icon">â</span> 371 <input type="text" id="searchInput" placeholder="ÐайÑи моделÑ, оÑибкÑ, ÑаÑÑ Ð¾Ð´Ð½Ð¸Ðº или инÑÑÑÑкÑиÑ" autocomplete="off"> 372 <div class="hero-search-dropdown" id="searchDropdown"></div> 373 </div> 374 <div class="asia-route-row"> 375 <a href="/category/chery-tiggo/" class="tag-btn">Chery Tiggo</a> 376 <a href="/category/haval-jolion/" class="tag-btn">
376Haval Jolion</a> 377 <a href="/category/geely-coolray/" class="tag-btn">Geely Coolray</a> 378 <a href="/category/omoda-c5/" class="tag-btn">Omoda C5</a> 379 <a href="/category/changan-models/" class="tag-btn">Changan</a> 380 <a href="/category/exeed-jetour/" class="tag-btn">Exeed и Jetour</a> 381 <a href="/category/parts-repair/" class="tag-btn">ÐапÑаÑÑи и ÑемонÑ</a> 382 <a href="/category/dealers-service/" class="tag-btn">ÐÑовеÑка и ÑеÑвиÑ</a> 383 </div> 384 </div> 385 <div class="asia-hero-media"> 386 <img src="/static/img/home/asia-hero-rooftop.jpg" alt="ÐзиаÑÑÐºÐ°Ñ Ð°Ð²ÑоÑкÑпеÑÑка ÑÑдом Ñ ÑовÑеменнÑм кÑоÑÑовеÑом" fetchpriority="high"> 387 <div class="asia-media-card"> 388 <b>ÐÑ Ð²ÑбоÑа модели до пеÑвого ТÐ</b> 389 <span>СÑавнение моделей, диагноÑÑика, ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ¸, пÑовеÑка пеÑед Ñделкой и подÑказки по ежедневной ÑкÑплÑаÑаÑии.</span> 390 </div> 391 </div> 392 <div class="asia-disclaimer">Ð¡Ð°Ð¹Ñ Ð½Ð¾ÑÐ¸Ñ ÑпÑавоÑнÑй Ñ Ð°ÑакÑÐµÑ Ð¸ не ÑвлÑеÑÑÑ Ð¾ÑиÑиалÑнÑм пÑедÑÑавиÑелÑÑÑвом бÑендов, дилеÑов или ÑеÑвиÑнÑÑ ÑенÑÑов. ÐÑиÑиÑнÑе даннÑе ÑвеÑÑйÑе Ñ Ð¿ÐµÑвоиÑÑоÑником и докÑменÑами авÑомобилÑ.</div> 393 </div> 394 </section> 395 396 <main class="site-main"> 397 <div class="container"> 398 <section class="home-section" data-animate> 399 <div class="section-head"> 400 <div> 401 <h2 class="home-section-title">ÐодбоÑ, ÑеÑÐ²Ð¸Ñ Ð¸ пÑовеÑка</h2> 402 <p class="home-section-subtitle">ÐаÑниÑе Ñ Ð·Ð°Ð´Ð°Ñи: ÑÑавниÑÑ ÐºÑоÑÑовеÑÑ, ÑазобÑаÑÑÑÑ Ñ Ð¾Ñибкой, подобÑаÑÑ Ð´ÐµÑали Ð´Ð»Ñ Ð¢Ð Ð¸Ð»Ð¸ пÑовеÑиÑÑ Ð°Ð²ÑÐ¾Ð¼Ð¾Ð±Ð¸Ð»Ñ Ð¿ÐµÑед Ñделкой.</p> 403 </div> 404 </div> 405 <div class="asia-scenario-grid"> 406 <a class="asia-scenario large" href="/category/changan-models/"> 407 <img src="/static/img/home/asia-model-comparison.jpg" alt="СÑавнение ÑовÑеменнÑÑ Ð°Ð·Ð¸Ð°ÑÑÐºÐ¸Ñ ÐºÑоÑÑовеÑов" loading="lazy"> 408 <div class="scenario-copy"><small>ÐодбоÑ</small><h3>СÑавниÑÑ Ð¼Ð¾Ð´ÐµÐ»Ð¸ и комплекÑаÑии</h3><p>ÐÑоÑÑовеÑÑ, моÑоÑÑ, коÑобки, оÑнаÑение и пÑакÑиÑнÑе оÑлиÑиÑ.</p></div> 409 </a> 410 <a class="asia-scenario" href="/category/parts-repair/"> 411 <img src="/static/img/home/asia-diagnostics-bay.jpg" alt="ÐиагноÑÑика кÑоÑÑовеÑа в ÑиÑÑом ÑеÑвиÑном бокÑе" loading="lazy"> 412 <div class="scenario-copy"><small>ÐиагноÑÑика</small><h3>РазобÑаÑÑÑÑ Ñ Ð¾Ñибками и Ñзлами</h3><p>СимпÑомÑ, пÑовеÑки, обÑлÑживание и ÑемонÑнÑе подÑказки.</p></div> 413 </a> 414 <a class="asia-scenario" href="/category/parts-repair/"> 415 <img src="/static/img/home/asia-parts-workbench.jpg" alt="ÐапÑаÑÑи и ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ¸ на ÑабоÑем ÑÑоле" loading="lazy"> 416 <div class="scenario-copy"><small>РаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ¸</small><h3>ÐодобÑаÑÑ Ð´ÐµÑали Ð´Ð»Ñ Ð¢Ð</h3><p>ФилÑÑÑÑ, ÑоÑмоза, ÑвеÑи, Ñемни и ÑегÑлÑÑное обÑлÑживание.</p></div> 417 </a> 418 <a class="asia-scenario" href="/category/dealers-service/"> 419 <img src="/static/img/home/asia-urban-test-drive.jpg" alt="СовÑеменнÑй кÑоÑÑÐ¾Ð²ÐµÑ Ð½Ð° гоÑодÑкой доÑоге" loading="lazy"> 420 <div class="scenario-copy"><small>ÐкÑплÑаÑаÑиÑ</small><h3>ÐонÑÑÑ Ð¿Ð¾Ð²ÐµÐ´ÐµÐ½Ð¸Ðµ на доÑоге</h3><p>РаÑÑ Ð¾Ð´, комÑоÑÑ, динамика, гоÑодÑкие и ÑÑаÑÑовÑе ÑÑенаÑии.</p></div> 421 </a> 422 <a class="asia-scenario" href="/category/daewoo-nexia/"> 423 <img src="/static/img/home/asia-legacy-service.jpg" alt="ÐбÑлÑживание ÑÑаÑого бÑджеÑного азиаÑÑкого авÑомобилÑ" loading="lazy"> 424 <div class="scenario-copy"><small>Daewoo</small><h3>ÐоддеÑживаÑÑ ÑÑаÑÑе модели</h3><p>Nexia, Matiz, Gentra и бÑджеÑнÑй ÑÐµÐ¼Ð¾Ð½Ñ Ð±ÐµÐ· лиÑÐ½Ð¸Ñ Ð·Ð°ÑÑаÑ.</p></div> 425 </a> 426 </div> 427 </section> 428 429 <section class="home-section" data-animate id="categories"> 430 <div class="section-head"> 431 <div> 432 <h2 class="home-section-title">Ðодели, ÑеÑÐ²Ð¸Ñ Ð¸ ÑемÑ</h2> 433 <p class="home-section-subtitle">ÐÑновнÑе напÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÑайÑа: новÑе киÑайÑкие кÑоÑÑовеÑÑ, коÑейÑÐºÐ°Ñ Ñкола, Daewoo-наÑледие, дилеÑÑ, ÑеÑÐ²Ð¸Ñ Ð¸ запÑаÑÑи.</p> 434 </div> 435 </div> 436 <div class="categories-grid">
437 <a href="/category/chery-tiggo/" class="category-card" data-num="01"><span><span class="category-icon">ð</span><div class="category-name">Chery Tiggo</div></span><div class="category-count">Ðодели, моÑоÑÑ, комплекÑаÑии и ÑлабÑе меÑÑа ÑемейÑÑва Tiggo.</div></a> 438 <a href="/category/haval-jolion/" class="category-card" data-num="02"><span><span class="category-icon">ð§</span><div class="category-name">Haval Jolion</div></span><div class="category-count">ÐпÑÑ Ð²Ð»Ð°Ð´ÐµÐ»ÑÑев, ÑаÑÑ Ð¾Ð´, коÑобка, подвеÑка и обÑлÑживание.</div></a> 439 <a href="/category/geely-coolray/" class="category-card" data-num="03"><span><span class="category-icon">â¡</span><div class="category-name">Geely Coolray</div></span><div class="category-count">Ðинамика, ÑеÑÑÑÑ, ÑлекÑÑоника и пÑакÑиÑнÑе ÑÑавнениÑ.</div></a> 440 <a href="/category/omoda-c5/" class="category-card" data-num="04"><span><span class="category-icon">â</span><div class="category-name">Omoda C5</div></span><div class="category-count">ÐомплекÑаÑии, Ñалон, мÑлÑÑимедиа и ÑеалÑнÑе замеÑаниÑ.</div></a> 441 <a href="/category/changan-models/" class="category-card" data-num="05"><span><span class="category-icon">â°</span><div class="category-name">Changan Models</div></span><div class="category-count">Ðинейка бÑенда, оÑлиÑÐ¸Ñ Ð¼Ð¾Ð´ÐµÐ»ÐµÐ¹ и вÑÐ±Ð¾Ñ Ð¿Ð¾Ð´ задаÑÑ.</div></a> 442 <a href="/category/exeed-jetour/" class="category-card" data-num="06"><span><span class="category-icon">â¦</span><div class="category-name">Exeed и Jetour</div></span><div class="category-count">ÐÑемиалÑнÑе и ÑемейнÑе веÑÑии, оÑнаÑение и ÑÑоимоÑÑÑ Ð²Ð»Ð°Ð´ÐµÐ½Ð¸Ñ.</div></a> 443 <a href="/category/daewoo-nexia/" class="category-card" data-num="07"><span><span class="category-icon">ð§</span><div class="category-name">Daewoo Nexia</div></span><div class="category-count">РемонÑ, обÑлÑживание, ÑиповÑе пÑÐ¾Ð±Ð»ÐµÐ¼Ñ Ð¸ недоÑогие ÑеÑениÑ.</div></a> 444 <a href="/category/daewoo-matiz/" class="category-card" data-num="08"><span><span class="category-icon">â</span><div class="category-name">Daewoo Matiz</div></span><div class="category-count">ÐоÑодÑÐºÐ°Ñ ÑкÑплÑаÑаÑиÑ, ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ¸, подвеÑка и кÑзов.</div></a> 445 <a href="/category/daewoo-gentra/" class="category-card" data-num="09"><span><span class="category-icon">â£</span><div class="category-name">Daewoo Gentra</div></span><div class="category-count">ÐадежноÑÑÑ, моÑоÑ, коÑобка и обÑлÑживание Ñедана.</div></a> 446 <a href="/category/chery-legacy/" class="category-card" data-num="10"><span><span class="category-icon">ð</span><div class="category-name">Chery Amulet & Bonus</div></span><div class="category-count">ÐÑÑ Ð¸Ð²Ð½Ñе модели, докÑменÑÑ, ÑÐµÐ¼Ð¾Ð½Ñ Ð¸ Ð¿Ð¾Ð´Ð±Ð¾Ñ Ð´ÐµÑалей.</div></a> 447 <a href="/category/dealers-service/" class="category-card" data-num="11"><span><span class="category-icon">â</span><div class="category-name">Dealers & Service</div></span><div class="category-count">ÐÑовеÑка пеÑед покÑпкой, ÑеÑвиÑ, вÑдаÑа авÑо и докÑменÑÑ.</div></a> 448 <a href="/category/parts-repair/" class="category-card" data-num="12"><span><span class="category-icon">â</span><div class="category-name">Parts & Repair</div></span><div class="category-count">ÐапÑаÑÑи, ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ¸, диагноÑÑика и ÑамоÑÑоÑÑелÑнÑе ÑабоÑÑ.</div></a> 449 </div> 450 </section> 451 452 <section class="home-section" data-animate> 453 <div class="asia-feature-band"> 454 <a href="#" class="featured-card" id="popularCard"> 455 <div class="featured-content"> 456 <div class="featured-badge">ЧаÑÑо оÑкÑÑваÑÑ</div> 457 <div class="featured-title" id="popularTitle">РазбоÑ, Ñ ÐºÐ¾ÑоÑого Ñдобно наÑаÑÑ</div> 458 <div class="featured-desc" id="popularDesc">ÐÑкÑÑвайÑе пÑакÑиÑнÑй маÑеÑиал по модели, обÑлÑÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¸Ð»Ð¸ покÑпке без лиÑÐ½Ð¸Ñ Ð¿ÐµÑÐµÑ Ð¾Ð´Ð¾Ð².</div>
459 <span class="featured-cta">ÐеÑейÑи к ÑÑаÑÑе</span> 460 </div> 461 <div class="featured-visual" id="popularIcon">â</div> 462 </a> 463 <div class="recent-panel"> 464 <h2 class="home-section-title">Свежие ÑазбоÑÑ</h2> 465 <p class="home-section-subtitle">ÐоÑоÑÐºÐ°Ñ Ð»ÐµÐ½Ñа маÑеÑиалов по моделÑм, оÑибкам и обÑлÑживаниÑ.</p> 466 <div class="recent-scroll" id="recentScrollContainer"> 467 <div class="recent-card" style="color:#778390;text-align:center;">ÐодбиÑаем полезнÑе ÑазбоÑÑ Ð´Ð»Ñ Ð±ÑÑÑÑого ÑÑаÑÑа...</div> 468 </div> 469 </div> 470 </div> 471 </section> 472 473 <section class="home-section" data-animate> 474 <div class="section-head"> 475 <div> 476 <h2 class="home-section-title">ÐокÑпка, Ñалон и ÑлекÑÑоника</h2> 477 <p class="home-section-subtitle">Ðлоки Ð´Ð»Ñ ÑиналÑного ÑеÑениÑ: ÑÑо пÑовеÑиÑÑ Ð¿ÐµÑед оплаÑой, как оÑениÑÑ Ñалон и какие ÑлекÑÑоннÑе ÑÑнкÑии Ð²Ð°Ð¶Ð½Ñ Ð² повÑедневной езде.</p> 478 </div> 479 </div> 480 <div class="asia-scenario-grid"> 481 <a class="asia-scenario large" href="/category/dealers-service/"> 482 <img src="/static/img/home/asia-buying-check.jpg" alt="ÐÑовеÑка авÑÐ¾Ð¼Ð¾Ð±Ð¸Ð»Ñ Ð¿ÐµÑед покÑпкой" loading="lazy"> 483 <div class="scenario-copy"><small>ÐокÑпка</small><h3>ÐÑовеÑиÑÑ Ð°Ð²Ñо пеÑед Ñделкой</h3><p>ÐокÑменÑÑ, вÑдаÑа, оÑмоÑÑ, ÑеÑвиÑÐ½Ð°Ñ Ð¸ÑÑоÑÐ¸Ñ Ð¸ ÑиповÑе вопÑоÑÑ.</p></div> 484 </a> 485 <a class="asia-scenario large" href="/category/omoda-c5/"> 486 <img src="/static/img/home/asia-interior-tech.jpg" alt="Салон ÑовÑеменного авÑÐ¾Ð¼Ð¾Ð±Ð¸Ð»Ñ Ñ Ð¼ÑлÑÑимедиа" loading="lazy"> 487 <div class="scenario-copy"><small>Салон</small><h3>РазобÑаÑÑÑÑ Ð² ÑлекÑÑонике</h3><p>ÐÑлÑÑимедиа, пÑибоÑка, комÑоÑÑ, помоÑники водиÑÐµÐ»Ñ Ð¸ наÑÑÑойки.</p></div> 488 </a> 489 <div class="asia-note"> 490 <h3>ЧÑо Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ Ð¿ÑинÑÑÑ ÑеÑение</h3> 491 <p>СнаÑала ÑмоÑÑиÑе Ð¼Ð¾Ð´ÐµÐ»Ñ Ð¸ комплекÑаÑиÑ, заÑем пÑовеÑÑйÑе ÑлабÑе меÑÑа, ÑÑоимоÑÑÑ Ð¾Ð±ÑлÑживаниÑ, доÑÑÑпноÑÑÑ Ð´ÐµÑалей и нÑанÑÑ ÐºÐ¾Ð½ÐºÑеÑной покÑпки.</p> 492 </div> 493 </div> 494 </section> 495 496 <section class="home-section" data-animate> 497 <div class="section-head"> 498 <div> 499 <h2 class="home-section-title">ÐопÑлÑÑнÑе ÑÑаÑÑи</h2> 500 <p class="home-section-subtitle">ÐодбоÑка ÑÑаÑей Ð´Ð»Ñ ÑаÑÑÑÑ Ð²Ð¾Ð¿ÑоÑов по моделÑм, ÑемонÑÑ, дилеÑам, ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ°Ð¼ и опÑÑÑ Ð²Ð»Ð°Ð´ÐµÐ»ÑÑев.</p> 501 </div> 502 <button class="btn-outline" id="refreshBtn" style="transition:transform 0.5s">ÐбновиÑÑ Ð¿Ð¾Ð´Ð±Ð¾ÑкÑ</button> 503 </div> 504 <div class="articles-home-grid" id="popular-articles-container"> 505 <div class="article-home-card" style="color:#778390;text-align:center;grid-column:1/-1;">СобиÑаем подбоÑÐºÑ ÑÑаÑей по моделÑм и обÑлÑживаниÑ...</div> 506 </div> 507 </section> 508 509 <section class="home-section" data-animate> 510 <div class="cta-banner"> 511 <h2>ÐайдиÑе Ñвой ÑледÑÑÑий Ñаг</h2> 512 <p>ÐÐ»Ñ Ð¿Ð¾ÐºÑпки наÑниÑе Ñ ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ð¸ пÑовеÑки. ÐÐ»Ñ Ð²Ð»Ð°Ð´ÐµÐ½Ð¸Ñ Ð¿ÐµÑÐµÑ Ð¾Ð´Ð¸Ñе к ÑаÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ°Ð¼, оÑибкам, ÑалонÑ, ÑеÑвиÑÑ Ð¸ пÑакÑиÑеÑким маÑеÑиалам по конкÑеÑной модели.</p> 513 <a href="#categories" class="tag-btn">ÐÑкÑÑÑÑ ÑазделÑ</a> 514 </div> 515 </section> 516 </div> 517 </main> 518 519 <footer class="site-footer-premium"> 520 <div class="container"> 521 <div class="footer-grid"> 522 <div class="footer-col"> 523 <div class="footer-brand">ð® Asia Motors</div> 524 <p class="footer-about">ÐÑÑ Ð¾ киÑайÑÐºÐ¸Ñ Ð¸ коÑейÑÐºÐ¸Ñ Ð°Ð²ÑомобилÑÑ : обзоÑÑ, оÑзÑÐ²Ñ Ð²Ð»Ð°Ð´ÐµÐ»ÑÑев и ÑÐµÑ Ð½Ð¸ÑеÑкие Ñ Ð°ÑакÑеÑиÑÑики.</p> 525 </div> 526 <div class="footer-col"> 527 <h4>РазделÑ</h4> 528 <ul><li>
528<a href="/category/chery-tiggo/">ð Chery Tiggo</a></li> 529<li><a href="/category/haval-jolion/">ð¦ Haval Jolion</a></li> 530<li><a href="/category/geely-coolray/">ð Geely Coolray</a></li> 531<li><a href="/category/omoda-c5/">ð Omoda C5</a></li> 532<li><a href="/category/changan-models/">ðï¸ Changan Models</a></li> 533<li><a href="/category/exeed-jetour/">⨠Exeed & Jetour</a></li></ul> 534 </div> 535 <div class="footer-col"> 536 <h4>ÐнÑоÑмаÑиÑ</h4> 537 <ul> 538 <li><a href="/">ÐлавнаÑ</a></li> 539 <li><a href="/about.html">РпÑоекÑе</a></li> 540 <li><a href="/categories.html">ÐÑе ÑазделÑ</a></li> 541 <li><a href="/contact.html">ÐонÑакÑÑ</a></li> 542 <li><a href="/privacy.html">ÐонÑиденÑиалÑноÑÑÑ</a></li> 543 <li><a href="/sitemap.xml">ÐаÑÑа ÑайÑа</a></li> 544 </ul> 545 </div> 546 </div> 547 <div class="footer-bottom"> 548 <p>© Asia Motors. ÐÑе пÑава заÑиÑенÑ.</p> 549 <!--LiveInternet counter--><div style="margin-top:10px;"><a href="https://www.liveinternet.ru/click" 550 target="_blank"><img id="licnt06C4" width="88" height="15" style="border:0" 551 title="LiveInternet: показано ÑиÑло поÑеÑиÑелей за ÑегоднÑ" 552 src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAIBTAA7" 553 alt=""/></a>
553<script>(function(d,s){d.getElementById("licnt06C4").src= 554 "https://counter.yadro.ru/hit?t26.5;r"+escape(d.referrer)+ 555 ((typeof(s)=="undefined")?"":";s"+s.width+"*"+s.height+"*"+ 556 (s.colorDepth?s.colorDepth:s.pixelDepth))+";u"+escape(d.URL)+ 557 ";h"+escape(d.title.substring(0,150))+";"+Math.random()})(document,screen)</script>
557</div><!--/LiveInternet--> 558 </div> 559 </div> 560 </footer> 561 <div id="cookie-consent" class="cookie-popup"> 562 <div class="cookie-inner"> 563 <span>ðª ÐÑ Ð¸ÑполÑзÑем ÑÐ°Ð¹Ð»Ñ cookie Ð´Ð»Ñ ÑлÑÑÑÐµÐ½Ð¸Ñ ÑабоÑÑ ÑайÑа.</span> 564 <button id="cookie-accept" class="cookie-btn">ÐÑинÑÑÑ</button> 565 </div> 566 </div> 567 568 569
569<script> 570 function artUrl(s, c) { var l=s.toLowerCase(); return '/articles/'+l[0]+'/'+l.substring(0,Math.min(2,l.length))+'/'+s+'.html'; } 571 (function() { 572 document.getElementById('menuBtn')?.addEventListener('click', () => { 573 document.getElementById('mainNav')?.classList.toggle('open'); 574 }); 575 576 (function() { 577 let pool = null; 578 function seededRandom(s) { const x = Math.sin(s) * 10000; return x - Math.floor(x); } 579 function cleanHomeText(value) { 580 return String(value || '') 581 .replace(/\b(?:19|20)\d{2}\s*(?:года|год)?\b/gi, '') 582 .replace(/\s+â\s+/g, ' â ') 583 .replace(/\s+,/g, ',') 584 .replace(/\s{2,}/g, ' ') 585 .replace(/:\s*$/g, '') 586 .trim(); 587 } 588 589 function shuffleAndRender(forceSeed) { 590 if (!pool || pool.length === 0) return; 591 const seed = forceSeed || Math.floor(Date.now() / (12 * 60 * 60 * 1000)); 592 let shuffled = [...pool]; 593 for (let i = shuffled.length - 1; i > 0; i--) { 594 const j = Math.floor(seededRandom(seed + i) * (i + 1)); 595 [shuffled[i], shuffled[j]] = [shuffled[j], shuffled[i]]; 596 } 597 598 // Featured card 599 var item = shuffled[0]; 600 var card = document.getElementById('popularCard'); 601 if (card && item) { 602 card.href = artUrl(item.slug, item.catSlug || ''); 603 document.getElementById('popularTitle').textContent = cleanHomeText(item.title); 604 document.getElementById('popularDesc').textContent = cleanHomeText(item.desc); 605 document.getElementById('popularIcon').textContent = item.icon; 606 } 607 608 // Recent scroll 609 const recentContainer = document.getElementById('recentScrollContainer'); 610 if (recentContainer) { 611 const recentItems = shuffled.slice(1, 8); 612 recentContainer.innerHTML = recentItems.map(a => ` 613 <a href="${artUrl(a.slug, a.catSlug || '')}" class="recent-card"> 614 <span class="recent-badge">новое</span> 615 <div class="recent-title">${cleanHomeText(a.title)}</div> 616 <span class="recent-cat">${a.icon} ${a.cat}</span> 617 </a> 618 `).join(''); 619 } 620 621 // Popular grid 622 const popContainer = document.getElementById('popular-articles-container'); 623 if (popContainer) { 624 const top15 = shuffled.slice(8, 23); 625 popContainer.innerHTML = top15.map(a => ` 626 <a href="${artUrl(a.slug, a.catSlug || '')}" class="article-home-card"> 627 <div class="article-home-title">${cleanHomeText(a.title)}</div> 628 <div class="article-home-desc">${cleanHomeText(a.desc)}</div> 629 <span class="article-home-tag">${a.icon} ${a.cat}</span> 630 </a> 631 `).join(''); 632 } 633 } 634 635 // Initial load 636 (async function() { 637 try { 638 const resp = await fetch('/static/js/popular_articles.json'); 639 pool = await resp.json(); 640 shuffleAndRender(); 641 } catch (err) { console.error("Failed to load articles:", err); } 642 })(); 643 644 // Refresh button 645 var refreshBtn = document.getElementById('refreshBtn'); 646 if (refreshBtn) { 647 refreshBtn.addEventListener('click', function() { 648 shuffleAndRender(Date.now()); 649 this.style.transform = 'rotate(360deg)'; 650 setTimeout(() => this.style.transform = '', 500); 651 }); 652 } 653 })(); 654 655 const observer = new IntersectionObserver((entries) => {
656 entries.forEach(entry => { 657 if (entry.isIntersecting) { 658 entry.target.classList.add('visible'); 659 observer.unobserve(entry.target); 660 } 661 }); 662 }, { threshold: 0.1 }); 663 document.querySelectorAll('[data-animate]').forEach(el => observer.observe(el)); 664 665 var searchData = null; var activeIdx = -1; 666 var chunkCache = {}; 667 var input = document.getElementById('searchInput'); 668 var dd = document.getElementById('searchDropdown'); 669 if (!input || !dd) return; 670 671 var TR = { 672 'а':'a','б':'b','в':'v','г':'g','д':'d','е':'e','Ñ':'yo', 673 'ж':'zh','з':'z','и':'i','й':'j','к':'k','л':'l','м':'m', 674 'н':'n','о':'o','п':'p','Ñ':'r','Ñ':'s','Ñ':'t','Ñ':'u', 675 'Ñ':'f','Ñ ':'h','Ñ':'c','Ñ':'ch','Ñ':'sh','Ñ':'shch', 676 'Ñ':'','Ñ':'y','Ñ':'','Ñ':'e','Ñ':'yu','Ñ':'ya' 677 }; 678 function transliterate(t) { 679 var r=''; for(var i=0;i<t.length;i++){ var c=t[i].toLowerCase(); r+=(TR[c]!==undefined)?TR[c]:c; } return r; 680 } 681 function cleanSearchText(value) { 682 return String(value || '') 683 .replace(/\b(?:19|20)\d{2}\s*(?:года|год)?\b/gi, '') 684 .replace(/\s+â\s+/g, ' â ') 685 .replace(/\s+,/g, ',') 686 .replace(/\s{2,}/g, ' ') 687 .replace(/:\s*$/g, '') 688 .trim(); 689 } 690 function getPrefix(q) { 691 var lat=transliterate(q.trim()).replace(/\s+/g,'-').replace(/[^a-z0-9-]/g,'').replace(/-+/g,'-'); 692 if(lat.match(/^(kak|gde)-./)) return lat.substring(0,5); 693 var clean=lat.replace(/-/g,''); 694 return clean.length>=2?clean.substring(0,2):clean; 695 } 696 function loadChunk(prefix, cb) { 697 if(chunkCache[prefix]) return cb(chunkCache[prefix]); 698 dd.innerHTML='<div class="sd-empty">â³ ÐагÑÑзка...</div>'; 699 dd.style.display='block'; 700 fetch('/static/js/search-chunks/'+prefix+'.json') 701 .then(r=>{if(!r.ok){cb([]);return;} return r.json();}) 702 .then(data=>{ 703 if(!data){cb([]);return;} 704 chunkCache[prefix]=data.map(item=>({ 705 s:item.s, t:(item.t||'').normalize('NFC'), 706 i:item.i||'ð', 707 tl:(item.t||'').normalize('NFC').toLowerCase(), c:item.c||'', 708 sl:(item.s||'').toLowerCase() 709 })); 710 cb(chunkCache[prefix]); 711 }) 712 .catch(()=>{cb([]);}); 713 } 714 715 function doSearch() { 716 var q = input.value.normalize('NFC').toLowerCase().trim(); 717 if (q.length < 2) { dd.style.display = 'none'; activeIdx = -1; return; } 718 var prefix = getPrefix(q); 719 if (!prefix || prefix.length < 2) { dd.innerHTML='<div class="sd-empty">ÐведиÑе 2+ Ñимвола</div>'; dd.style.display='block'; return; } 720 loadChunk(prefix, function(data) { 721 var words = q.split(/\s+/); 722 var results = data.filter(item => words.every(w => item.tl.indexOf(w) !== -1 || item.sl.indexOf(w) !== -1)).slice(0, 8); 723 if (results.length === 0) { 724 dd.innerHTML = '<div class="sd-empty">ð ÐиÑего не найдено</div>'; 725 } else { 726 dd.innerHTML = results.map(item => 727 '<a href="' + artUrl(item.s, item.c) + '" class="sd-item"><div class="sd-icon">' + item.i + 728 '</div><div class="sd-info"><div class="sd-title">' + cleanSearchText(item.t) + 729 '</div><div class="sd-slug">' + artUrl(item.s, item.c) + '</div></div></a>' 730 ).join(''); 731 } 732 dd.style.display = 'block'; activeIdx = -1; 733 }); 734 } 735 736 function updateActive() { 737 dd.querySelectorAll('.sd-item').forEach((el, i) => el.classList.toggle('sd-active', i === activeIdx)); 738 } 739 740 input.addEventListener('input', doSearch); 741 input.addEventListener('focus', () => { if (input.value.trim().length >= 2) doSearch(); }); 742 input.addEventListener('keydown', e => { 743 var items = dd.querySelectorAll('.sd-item'); 744 if (e.key==='ArrowDown') { e.preventDefault(); activeIdx=Math.min(activeIdx+1,items.length-1); updateActive(); } 745 else if (e.key==='ArrowUp') { e.preventDefault(); activeIdx=Math.max(activeIdx-1,-1); updateActive(); } 746 else if (e.key==='Enter') { e.preventDefault(); if(activeIdx>=0&&items[activeIdx]) items[activeIdx].click(); else if(items.length>0) items[0].click(); } 747 else if (e.key==='Escape') { dd.style.display='none'; activeIdx=-1; } 748 }); 749 document.addEventListener('click', e => { if(!e.target.closest('.search-hero')) { dd.style.display='none'; activeIdx=-1; } }); 750 })(); 751 </script>
751 752 <!--#include virtual="/ssi/body_bottom.html" --> 753
753<script src="/static/js/inject.js" defer></script>
753 754 <!-- deploy-refresh:20260601-091730 --> 755</body> 756</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.