/* Visual layer for the RU homepage only. Content, metadata and API markup stay in the snapshot. */
:root { --ru-home-lilac: #7558d9; --ru-home-ink: #191a20; --ru-home-muted: #696b76; --ru-home-border: #e5e0ee; }

body.page-home { background-color: #f9f7fc; background-image: radial-gradient(circle, #ded8e8 1.1px, transparent 1.25px), radial-gradient(ellipse 70% 620px at 50% 120px, #eee8fa 0%, transparent 72%); background-size: 28px 28px, auto; background-position: center top, center top; }
.page-home .site-header { background: #fffffff2; border-color: #e8e4ef; box-shadow: 0 1px 0 #ffffffcc; }
.page-home .nav { max-width: 1160px; min-height: 56px; }
.page-home .brand { font-size: 18px; letter-spacing: 0; }
.page-home .brand-mark { width: 30px; height: 30px; border-radius: 8px; box-shadow: 0 5px 16px #7558d920; }
.page-home .nav-links { gap: 24px; }
.page-home .language-switcher { display: inline-flex; align-items: center; gap: 5px; padding: 7px 10px; border: 1px solid #e6e1ed; border-radius: 8px; color: #85818f; font-size: 12px; font-weight: 700; line-height: 1; }
.page-home .language-switcher a { color: inherit; text-decoration: none; }
.page-home .language-switcher a[aria-current="page"] { color: var(--ru-home-ink); }
.page-home .language-switcher a:hover { color: var(--ru-home-lilac); }
.page-home .nav-links .button, .page-home .button { border-radius: 8px; }
.page-home .nav-links .button { min-height: 36px; padding: 8px 14px; background: #1b1b20; box-shadow: 0 6px 16px #1b1b2016; }

.page-home .hero { position: relative; max-width: 1160px; padding: 28px 0 42px; }
.page-home .hero > div { max-width: 930px; }
.page-home .inner { max-width: 1040px; }
.page-home h1 { max-width: 780px; margin-inline: auto; color: var(--ru-home-ink); font-size: clamp(38px, 4.2vw, 53px); font-weight: 760; letter-spacing: 0; line-height: 1.08; }
.page-home .hero .lead { max-width: 710px; margin-top: 25px; color: var(--ru-home-muted); font-size: 19px; line-height: 1.65; }
.page-home .search-box { width: min(100%, 520px); margin-top: 27px; padding: 6px 6px 6px 16px; border: 1px solid transparent; border-radius: 14px; background: linear-gradient(#fff, #fff) padding-box, linear-gradient(105deg, #77a6ff, #b2a0ff 54%, #df94ed) border-box; box-shadow: 0 14px 34px #42315e17; }
.page-home .search-box input { min-height: 46px; font-size: 16px; }
.page-home .search-box .button { min-height: 46px; padding-inline: 18px; background: #19191d; box-shadow: none; }
.page-home .search-box .button:hover { background: #34343b; }
.page-home .copy-note { margin-top: 15px; color: #737580; }
.page-home .hero-points { gap: 15px 26px; margin-top: 27px; }
.page-home .mini-point { color: #565964; }
.page-home .mini-point .icon { color: #5e9c78; }
.page-home .story-alternatives .button { border-color: #d8d1e6; background: #fffffff2; }
.page-home .section-nav { margin-top: 10px; border-color: #e6e1ec; background: #fffffff2; backdrop-filter: blur(12px); }
.page-home .section-nav a { color: #5f626d; }

.page-home .section { position: relative; background: transparent; }
.page-home .section.alt { background: #f1edf8c7; border-color: #e6e1ec; }
.page-home .section { padding-block: 56px; }
.page-home .section-head { margin-bottom: 28px; }
.page-home .section-head h2, .page-home .intro-grid h2, .page-home .workflow h2, .page-home .cta-band h2 { color: var(--ru-home-ink); }
.page-home .card, .page-home .scenario { border-color: #e3deeb; background: #fffffff0; box-shadow: 0 14px 35px #2d253e0a; }
.page-home .card:hover, .page-home .scenario:hover { border-color: #cfc2ea; box-shadow: 0 18px 42px #3a2f5412; }
.page-home .feature-icon { background: #f1edfc; color: var(--ru-home-lilac); }
.page-home .feature-icon-1 { background: #eaf7ef; color: #27824f; }
.page-home .feature-icon-2 { background: #fff0f7; color: #bd4f8c; }
.page-home .feature-icon-3 { background: #fff5e9; color: #aa722d; }
.page-home .home-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.page-home .home-feature-card { min-height: 286px; padding: 22px; border: 1px solid #e2ddea; border-radius: 8px; background: #fffffff2; box-shadow: 0 12px 28px #2d253e0a; }
.page-home .home-feature-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 28px; }
.page-home .home-feature-icon { display: inline-grid; width: 42px; height: 42px; place-items: center; border: 1px solid #e8e4ef; border-radius: 8px; background: #fff; }
.page-home .home-feature-icon .icon { width: 21px; height: 21px; }
.page-home .home-feature-status { padding: 5px 9px; border-radius: 999px; font-size: 12px; font-weight: 700; line-height: 1; }
.page-home .home-feature-card h3 { margin: 0 0 12px; color: var(--ru-home-ink); font-size: 18px; line-height: 1.35; }
.page-home .home-feature-card p { margin: 0; color: var(--ru-home-muted); font-size: 15px; line-height: 1.55; }
.page-home .home-feature-violet .home-feature-icon { background: #f0ecff; color: #7457dc; }.page-home .home-feature-violet .home-feature-status { background: #eeeaff; color: #624ac6; }
.page-home .home-feature-green .home-feature-icon { background: #e9f8ef; color: #238654; }.page-home .home-feature-green .home-feature-status { background: #e7f7ed; color: #237847; }
.page-home .home-feature-orange .home-feature-icon { background: #fff3e7; color: #b76b1b; }.page-home .home-feature-orange .home-feature-status { background: #fff0df; color: #a45d12; }
.page-home .home-feature-pink .home-feature-icon { background: #fff0f8; color: #c35b98; }.page-home .home-feature-pink .home-feature-status { background: #feeff7; color: #a9467d; }
.page-home .intent-card, .page-home .faq details { border-color: #e0dbe8; }
.page-home .workflow .steps { position: relative; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.page-home .workflow .step { position: relative; display: flex; flex-direction: column; gap: 14px; min-height: 218px; padding: 22px; border-color: #e2ddea; background: #fffffff0; box-shadow: 0 12px 28px #2d253e0a; }
.page-home .workflow .step::before { display: none; }
.page-home .workflow-icon { display: inline-grid; width: 40px; height: 40px; place-items: center; border: 1px solid #ded6f0; border-radius: 8px; background: #f1edfc; color: var(--ru-home-lilac); }
.page-home .workflow-icon .icon { width: 19px; height: 19px; }
.page-home .workflow .step:nth-child(2) .workflow-icon { background: #eaf7ef; border-color: #d7eadf; color: #27824f; }
.page-home .workflow .step:nth-child(3) .workflow-icon { background: #fff2f7; border-color: #f0dce8; color: #bd4f8c; }
.page-home .workflow .step h3 { margin: 0 0 8px; color: var(--ru-home-ink); font-size: 18px; line-height: 1.35; }
.page-home .workflow .step p { margin: 0; color: var(--ru-home-muted); font-size: 15px; line-height: 1.55; }
.page-home .faq summary::after { color: var(--ru-home-lilac); }
.page-home .footer { background: #f4f1f9; border-color: #e2ddea; }

@media (max-width: 800px) { .page-home .hero { padding-top: 24px; } .page-home .nav { min-height: 68px; } .page-home .section { padding-block: 48px; } .page-home .language-switcher { display: none; } .page-home .home-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .page-home .workflow .steps { grid-template-columns: 1fr; } .page-home .workflow .step { min-height: 0; } }
@media (max-width: 560px) { body.page-home { background-size: 25px 25px, auto; } .page-home .brand { font-size: 18px; } .page-home .brand-mark { width: 32px; height: 32px; } .page-home .hero { padding-top: 20px; padding-bottom: 30px; } .page-home h1 { max-width: 355px; font-size: 33px; line-height: 1.12; } .page-home .hero .lead { max-width: 360px; font-size: 16px; } .page-home .search-box { width: min(100%, 252px); margin-top: 25px; padding: 5px 6px 6px 12px; border-radius: 14px; } .page-home .search-box input { min-height: 44px; font-size: 16px; } .page-home .search-box .button { min-height: 44px; padding-inline: 12px; } .page-home .hero-points { margin-top: 23px; } .page-home .section { padding-block: 42px; } .page-home .section-head { margin-bottom: 24px; } .page-home .home-feature-grid { grid-template-columns: 1fr; gap: 12px; } .page-home .home-feature-card { min-height: 0; padding: 20px; } .page-home .home-feature-card-top { margin-bottom: 20px; } .page-home .workflow .step { padding: 20px; } }
