/*
 * R7: оформление каталога, сравнения и виджета обращения.
 *
 * Адаптация авторской спецификации visual/catalog.css пакета
 * NOBLE-ASSETS-R7-CATALOG-CANDIDATE. Все правила ограничены корнем .na-r7.
 *
 * Осознанно НЕ перенесены:
 *   - глобальные правила html, body, *, :root и сбросы — они затронули бы весь сайт;
 *   - правила демонстрационной оболочки препросмотра (.review, .shell, .brand,
 *     .langs, .wrap) — глобальные шапка и подвал остаются существующими v1.
 *
 * Закреплённый основной CSS R6.1 не изменяется: этот файл добавляется отдельно.
 */

.na-r7{--ink:#142e27;--muted:#63716a;--green:#12624e;--deep:#102b24;--gold:#d3b56b;--line:#dce3dc;--paper:#f4f5ef;--white:#fff;--radius:18px}
.na-r7{font-family:Manrope,Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.6}
.na-r7 *{box-sizing:border-box}
.na-r7 button,.na-r7 input,.na-r7 select,.na-r7 textarea{font:inherit}
.na-r7 button{cursor:pointer;border:0}
.na-r7 button:disabled{cursor:default;opacity:.55}
.na-r7 a{color:var(--green);text-decoration:none}
.na-r7 img{max-width:100%;display:block}
.na-r7 h1,.na-r7 h2,.na-r7 h3,.na-r7 p{margin:0}
.na-r7 button:focus-visible,.na-r7 a:focus-visible,.na-r7 input:focus-visible,.na-r7 select:focus-visible,.na-r7 textarea:focus-visible,.na-r7 summary:focus-visible{outline:3px solid #b98120;outline-offset:3px}
.na-r7 .na-r7-wrap{max-width:1180px;margin:0 auto;padding:0 32px}
@media(max-width:900px){.na-r7 .na-r7-wrap{padding:0 22px}}
@media(max-width:680px){.na-r7 .na-r7-wrap{padding:0 18px}}

.na-r7 :root{--ink:#142e27;--muted:#63716a;--green:#12624e;--deep:#102b24;--gold:#d3b56b;--line:#dce3dc;--paper:#f4f5ef;--white:#fff;--radius:18px}
.na-r7 button, .na-r7 input, .na-r7 select, .na-r7 textarea{font:inherit}
.na-r7 button, .na-r7 a, .na-r7 input, .na-r7 select, .na-r7 summary{touch-action:manipulation}
.na-r7 button, .na-r7 a{-webkit-tap-highlight-color:transparent}
.na-r7 button{cursor:pointer}
.na-r7 a{color:var(--green);text-decoration:none}
.na-r7 button:focus-visible, .na-r7 a:focus-visible, .na-r7 input:focus-visible, .na-r7 select:focus-visible, .na-r7 textarea:focus-visible, .na-r7 summary:focus-visible{outline:3px solid #b98120;outline-offset:3px}
.na-r7 button:disabled{cursor:default;opacity:.55}
.na-r7 h1, .na-r7 h2, .na-r7 h3, .na-r7 p{margin:0}
.na-r7 button{border:0}
.na-r7 button svg{width:18px;height:18px}
.na-r7 img{max-width:100%;display:block}
.na-r7 .hero{background:var(--deep);color:white;padding:40px 0 58px}
.na-r7 .heroGrid{display:grid;grid-template-columns:1.65fr 1fr;gap:75px;align-items:end}
.na-r7 .kicker{font-size:14px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.na-r7 h1{font-size:clamp(32px,4vw,50px);line-height:1.13;letter-spacing:-.035em;max-width:750px}
.na-r7 .hero h1 em{font-style:normal;color:var(--gold)}
.na-r7 .hero .intro{color:#c7d7cd;font-size:17px;max-width:690px;margin-top:23px}
.na-r7 .heroAside{border-left:1px solid #496155;padding-left:30px}
.na-r7 .heroAside h2{font-size:20px;line-height:1.35;margin-bottom:12px}
.na-r7 .heroAside p{font-size:14px;color:#bdcfc4;margin-bottom:22px}
.na-r7 .btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;min-height:46px;padding:10px 17px;background:white;color:var(--ink);font-size:14px;font-weight:700;line-height:1.4;text-align:center}
.na-r7 .btn.primary{background:var(--green);border-color:var(--green);color:white}
.na-r7 .btn.gold{background:#e2c88a;border-color:#e2c88a;color:#172e25}
.na-r7 .btn.quiet{background:transparent;border-color:#728679;color:white}
.na-r7 .btn.small{min-height:40px;padding:8px 12px}
.na-r7 .btn.link{border:0;background:transparent;padding-left:0;padding-right:0;color:var(--green)}
.na-r7 .btn:hover{filter:brightness(.97)}
.na-r7 .regionRow{display:flex;flex-wrap:wrap;gap:9px;padding:24px 0}
.na-r7 .chip{border:1px solid var(--line);background:white;color:var(--ink);border-radius:30px;padding:10px 16px;min-height:44px;font-size:14px}
.na-r7 .chip[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}
.na-r7 .toolbar{display:flex;gap:10px;align-items:end;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.na-r7 .searchField{flex:1}
.na-r7 .field label, .na-r7 .searchField label{display:block;font-weight:700;font-size:14px;letter-spacing:.02em;margin-bottom:7px}
.na-r7 .searchField input, .na-r7 .field input, .na-r7 .field select, .na-r7 .field textarea, .na-r7 .sort{display:block;width:100%;min-height:47px;border:1px solid #cdd8cf;background:white;color:var(--ink);padding:10px 13px;border-radius:8px;font-size:15px}
.na-r7 .searchField input{padding-left:16px}
.na-r7 .sort{width:180px}
.na-r7 .viewSwitch{display:flex;border:1px solid var(--line);border-radius:9px;padding:3px;background:white;align-self:end}
.na-r7 .viewSwitch button{min-height:40px;background:white;color:var(--muted);padding:8px 12px;border-radius:6px;font-size:14px}
.na-r7 .viewSwitch button[aria-pressed=true]{background:#e5eee7;color:var(--green)}
.na-r7 .filters{padding:22px;background:#e9eee7;border-radius:12px;margin:18px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.na-r7 .filters .foot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px}
.na-r7 .muted{color:var(--muted);font-size:14px}
.na-r7 .resultsHead{display:flex;align-items:center;justify-content:space-between;padding:26px 0 15px;font-size:14px}
.na-r7 .resultsHead strong{font-size:16px}
.na-r7 .selection{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border:1px solid #bdd1c2;background:#e6eee5;padding:15px;border-radius:13px;margin-bottom:20px}
.na-r7 .selection p{font-size:14px}
.na-r7 .selection .push{margin-left:auto}
.na-r7 .selection .selectedChip{font-size:14px;background:white;border:1px solid #cbd9cf;border-radius:5px;padding:8px}
.na-r7 .cards{display:grid;gap:20px}
.na-r7 .projectCard{display:grid;grid-template-columns:290px minmax(0,1fr);border:1px solid var(--line);background:white;border-radius:var(--radius);overflow:hidden}
.na-r7 .projectCard.noPhoto{grid-template-columns:1fr}
.na-r7 .projectPhoto{height:100%;min-height:270px;object-fit:cover;width:100%}
.na-r7 .projectBody{padding:25px 29px}
.na-r7 .projectTop{display:flex;align-items:start;justify-content:space-between;gap:16px}
.na-r7 .projectBody h2{font-size:25px;letter-spacing:-.02em;line-height:1.3}
.na-r7 .place{color:var(--muted);font-size:14px;margin-top:4px}
.na-r7 .badge{display:inline-block;font-size:14px;background:#eef2ec;color:#415e4d;border-radius:5px;padding:5px 9px}
.na-r7 .rating{font-size:14px;color:var(--green);margin-top:6px}
.na-r7 .facts{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:18px;margin:22px 0}
.na-r7 .facts dt{font-size:14px;color:var(--muted);margin-bottom:4px}
.na-r7 .facts dd{margin:0;font-size:16px;font-weight:700}
.na-r7 .cardActions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.na-r7 .cardActions .selectionButton{margin-left:auto}
.na-r7 .selectionButton{background:white;border:1px solid #bed2c3;color:var(--green);border-radius:8px;min-height:44px;padding:10px;font-size:14px;white-space:nowrap}
.na-r7 .selectionButton[aria-pressed=true]{background:#e1eee3}
.na-r7 .footNote{padding:18px 0 0;font-size:14px;color:var(--muted);max-width:850px}
.na-r7 .help{display:grid;grid-template-columns:1.7fr 1fr;gap:35px;align-items:center;background:#e3ebdf;border:1px solid #d3dfd0;padding:32px;border-radius:var(--radius);margin:35px 0 42px}
.na-r7 .help h2{font-size:25px;line-height:1.3;margin-bottom:12px}
.na-r7 .help p{color:#4b6354;font-size:15px;max-width:650px}
.na-r7 .help .btn{justify-self:end}
.na-r7 .related h2{font-size:25px;margin-bottom:22px}
.na-r7 .relatedGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.na-r7 .relatedCard{border:1px solid var(--line);border-radius:13px;padding:23px;background:#fff;color:var(--ink);display:block}
.na-r7 .relatedCard span{font-size:14px;color:var(--green)}
.na-r7 .relatedCard h3{font-size:17px;line-height:1.4;margin:9px 0}
.na-r7 .relatedCard p{color:var(--muted);font-size:14px}
.na-r7 .bottom{margin-top:50px;padding:24px 0;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.na-r7 .empty{padding:55px 28px;text-align:center;background:white;border:1px solid var(--line);border-radius:14px}
.na-r7 .empty h2{font-size:25px;margin-bottom:13px}
.na-r7 .empty p{max-width:620px;margin:0 auto 22px}
.na-r7 .compareHero{padding:34px 0}
.na-r7 .compareHero .intro{max-width:770px}
.na-r7 .compareHero .btn{margin-bottom:25px}
.na-r7 .compareActions{display:flex;flex-wrap:wrap;gap:12px;padding:25px 0}
.na-r7 .compareIntro{font-size:14px;color:var(--muted);margin-bottom:24px}
.na-r7 .comparison{border:1px solid var(--line);background:white;border-radius:16px;overflow:hidden}
.na-r7 .compareHeader, .na-r7 .compareRow{display:grid;grid-template-columns:170px repeat(var(--count),minmax(0,1fr));border-bottom:1px solid var(--line)}
.na-r7 .compareHeader{background:#e7eee4}
.na-r7 .compareHeader>div, .na-r7 .compareRow>div{padding:18px;border-right:1px solid var(--line)}
.na-r7 .compareHeader h2{font-size:17px;line-height:1.35}
.na-r7 .compareHeader .btn{margin-top:10px}
.na-r7 .compareRow:last-child{border-bottom:0}
.na-r7 .compareLabel{font-size:14px;color:var(--muted);font-weight:700}
.na-r7 .compareValue{font-size:15px}
.na-r7 .projectNameMobile{display:none}
.na-r7 .noteBox{padding:24px;background:#e5ece1;border-radius:14px}
.na-r7 .status{margin:15px 0;color:var(--green);font-size:14px}
/* Стык интеграции, а не изменение макета: в авторском preview.html глобальной
   оболочки нет, а на сайте баннер cookie закреплён снизу с z-index 50 и
   перекрывал кнопку отправки на телефоне. Модальное окно поднято над ним;
   оформление, размеры и порядок элементов диалога не менялись. */
.na-r7 .dialogBackdrop{position:fixed;inset:0;background:#0d251ed4;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px}
.na-r7 .dialog{position:relative;background:#fafbf7;width:620px;max-height:calc(100dvh - 40px);overflow:auto;border-radius:20px;padding:34px;box-shadow:0 24px 90px #0005}
.na-r7 .dialog h2{font-size:29px;letter-spacing:-.03em;line-height:1.2;padding-right:45px;margin-bottom:14px}
.na-r7 .dialog>p{font-size:15px;color:var(--muted);margin-bottom:21px}
.na-r7 .closeBtn{position:absolute;right:16px;top:16px;min-height:44px;min-width:44px;background:transparent;color:var(--ink);font-size:27px;border-radius:8px}
.na-r7 .optionList{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 25px}
.na-r7 .optionList .chip{border-radius:9px;font-size:14px;padding:10px 12px}
.na-r7 .channels{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 16px}
.na-r7 .channels .chip{border-radius:10px}
.na-r7 .dialog .field{margin-bottom:18px}
.na-r7 .dialog .field label{font-size:14px}
.na-r7 .dialog .field textarea{resize:vertical;min-height:115px}
.na-r7 .dialog details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:20px}
.na-r7 .dialog summary{font-size:14px;cursor:pointer;min-height:32px;padding:4px 0}
.na-r7 .dialog details[open] summary{margin-bottom:12px}
.na-r7 .formActions .btn{width:100%}
.na-r7 .privacy{font-size:14px;color:var(--muted);margin-top:12px}
.na-r7 .formNotice{background:#efe9d9;border:1px solid #d7c798;color:#63542f;border-radius:8px;padding:13px;font-size:14px;margin-bottom:15px}
.na-r7 .fieldError{color:#9a3029;font-size:14px;margin-top:5px}
.na-r7 .field [aria-invalid=true]{border-color:#ad5147}
.na-r7 .enquiryProjects{font-size:14px;padding:12px;background:#e3ece0;border-radius:8px;margin-bottom:18px}
.na-r7 .successPanel{text-align:center;padding:30px 0}
.na-r7 .successPanel h2{padding:0}
.na-r7 .successPanel p{margin:20px 0}
.na-r7 .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:900px){
.na-r7 .heroGrid{gap:35px}
.na-r7 .projectCard{grid-template-columns:230px minmax(0,1fr)}
.na-r7 .facts{gap:10px}
.na-r7 .relatedGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.na-r7 .toolbar{flex-wrap:wrap}
.na-r7 .searchField{flex-basis:60%}
.na-r7 .compareHeader, .na-r7 .compareRow{grid-template-columns:130px repeat(var(--count),minmax(0,1fr))}
.na-r7 .compareHeader>div, .na-r7 .compareRow>div{padding:13px}
.na-r7 .sort{width:170px}
}
@media(max-width:680px){
.na-r7 .hero{padding:22px 0 31px}
.na-r7 .heroGrid{grid-template-columns:1fr;gap:25px}
.na-r7 .hero h1{font-size:37px;line-height:1.12}
.na-r7 .hero .intro{font-size:16px;margin-top:18px}
.na-r7 .heroAside{border-left:0;border-top:1px solid #496155;padding:20px 0 0}
.na-r7 .heroAside h2{font-size:18px}
.na-r7 .heroAside p{margin-bottom:16px}
.na-r7 .heroAside .btn{width:100%}
.na-r7 .regionRow{padding:18px 0 14px;gap:7px}
.na-r7 .chip{font-size:14px;padding:9px 13px}
.na-r7 .toolbar{gap:9px}
.na-r7 .searchField{flex-basis:100%}
.na-r7 .sort{width:100%;flex:1 1 48%}
.na-r7 .viewSwitch{margin-left:auto}
.na-r7 .filters{grid-template-columns:1fr 1fr;padding:15px;gap:13px}
.na-r7 .filters .foot{display:block}
.na-r7 .filters .foot .btn{margin-top:12px;width:100%}
.na-r7 .filters label{font-size:14px}
.na-r7 .field select{font-size:14px;padding:10px 8px}
.na-r7 .resultsHead{padding:21px 0 14px}
.na-r7 .resultsHead strong{font-size:15px}
.na-r7 .selection{gap:8px;padding:12px}
.na-r7 .selection .push{margin-left:0;width:100%}
.na-r7 .selection .btn.primary{width:100%}
.na-r7 .projectCard{display:block}
.na-r7 .projectPhoto{height:185px;min-height:0}
.na-r7 .projectBody{padding:21px}
.na-r7 .projectBody h2{font-size:23px}
.na-r7 .projectTop{display:block}
.na-r7 .projectTop .badge{margin-top:11px}
.na-r7 .facts{grid-template-columns:1fr 1fr;gap:13px;margin:18px 0}
.na-r7 .facts dt{font-size:14px}
.na-r7 .facts dd{font-size:15px}
.na-r7 .facts>div:last-child{grid-column:1/-1}
.na-r7 .cardActions .btn.primary{width:100%;order:0}
.na-r7 .cardActions>a{flex:1;order:1}
.na-r7 .cardActions .selectionButton{order:2;margin-left:0}
.na-r7 .help{display:block;padding:24px;margin:28px 0}
.na-r7 .help h2{font-size:23px}
.na-r7 .help .btn{width:100%;margin-top:21px}
.na-r7 .relatedGrid{grid-template-columns:1fr}
.na-r7 .relatedCard{padding:20px}
.na-r7 .bottom{margin-top:30px}
.na-r7 .compareHero h1{font-size:34px}
.na-r7 .compareActions .btn.primary{width:100%}
.na-r7 .compareHeader{display:flex;flex-wrap:wrap;padding:12px;gap:10px}
.na-r7 .compareHeader>div{border:0;padding:10px;flex:1 1 140px;background:white;border-radius:8px}
.na-r7 .compareHeader>.compareLabel{display:none}
.na-r7 .compareRow{display:block;padding:16px 18px}
.na-r7 .compareRow>div{border:0;padding:5px 0}
.na-r7 .compareRow>.compareLabel{color:var(--green);font-size:14px;margin-bottom:8px}
.na-r7 .compareValue{display:flex;justify-content:space-between;gap:20px;font-size:14px}
.na-r7 .projectNameMobile{display:block;color:var(--muted);max-width:52%}
.na-r7 .compareValue>span:last-child{text-align:right}
.na-r7 .dialogBackdrop{padding:10px}
.na-r7 .dialog{padding:27px 21px;max-height:calc(100dvh - 20px);border-radius:15px}
.na-r7 .dialog h2{font-size:25px}
.na-r7 .dialog .field input, .na-r7 .dialog .field textarea{font-size:16px}
.na-r7 .closeBtn{right:10px;top:10px}
.na-r7 .optionList .chip{font-size:14px}
.na-r7 .formNotice{font-size:14px}
.na-r7 .dialog .field label{font-size:14px}
}

/* Авторское дополнение ChatGPT к R7. Подключать после r7-catalog.css.
   Только корень страницы получает .na-r7-page, диалог его не получает. */
.na-r7.na-r7-page {
  background: var(--paper);
  color: var(--ink);
  border-top: 80px solid #1a1a1a;
  min-height: 100vh;
}
.na-r7-page .compareHero { background: var(--paper); color: var(--ink); }
.na-r7-page .compareHero .intro { color: var(--muted); margin-top: 18px; }
.na-r7-page .compareHeader > div,
.na-r7-page .compareRow > div { min-width: 0; overflow-wrap: anywhere; }
.na-r7-page .compareHeader .btn { white-space: normal; }
.na-r7 .attemptActions { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0; }
.na-r7 .attemptActions .btn { flex: 1 1 180px; }
.na-r7 .lockedDraft { margin: 12px 0; color: var(--muted); font-size: 14px; }
.na-r7 .field input[readonly],
.na-r7 .field textarea[readonly] { background: #eef2ec; color: var(--ink); }
.na-r7 .privacy a { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 900px) {
  .na-r7-page .comparison { background: transparent; border: 0; overflow: visible; }
  .na-r7-page .compareHeader { display: flex; flex-direction: column; gap: 10px; background: transparent; border: 0; margin-bottom: 22px; }
  .na-r7-page .compareHeader > div { border: 1px solid var(--line); border-radius: 12px; background: #e7eee4; padding: 18px; }
  .na-r7-page .compareHeader > .compareCorner { display: none; }
  .na-r7-page .compareRow { display: block; background: white; border: 1px solid var(--line); border-radius: 12px; margin-bottom: 14px; overflow: hidden; }
  .na-r7-page .compareRow > .compareLabel { display: block; padding: 14px 18px; background: #e7eee4; color: var(--ink); border: 0; }
  .na-r7-page .compareRow > .compareValue { display: block; padding: 14px 18px; border: 0; border-top: 1px solid var(--line); }
  .na-r7-page .projectNameMobile { display: block; color: var(--muted); font-size: 14px; line-height: 1.4; margin-bottom: 6px; }
}

/**
 * R8: авторская композиция страниц содержания.
 *
 * Источник — author/assets/preview.css. Перенесены смысловые виды секций:
 * сценарии выбора, этапы, редакционное объяснение, услуги, письменный
 * результат проверки, раздел спора, FAQ и связанные материалы.
 *
 * НЕ перенесено (оболочка прототипа, в приложении её роль выполняет действующая
 * оболочка v1): панель выбора страниц, демонстрационная шапка и подвал,
 * подсказки режима просмотра, окно источников и демонстрационная отправка —
 * .brand, .brand-mark, .channel-options, .context-badge, .demo-note, .dialog-body, .dialog-head, .footer, .form-result, .header, .hint, .languages, .nav, .preview-only, .review, .review-title, .skip, .source-dialog, .sr, .x.
 *
 * Все правила живут под корнем .na-r8: глобального reset нет, body и header
 * приложения не затрагиваются, на главную, Golden Visa и R7 влияния нет.
 */

/* Authored review composition. Production integration must scope this file to the page root. */
.na-r8 {--ink:#142e27;--muted:#63716a;--green:#12624e;--deep:#102b24;--gold:#d3b56b;--line:#dce3dc;--paper:#f4f5ef;--white:#fff;color:var(--ink);background:var(--paper);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65;margin:0}
.na-r8 * {box-sizing:border-box}
.na-r8 a {color:inherit;text-decoration:none}
.na-r8 button,.na-r8 input,.na-r8 textarea,.na-r8 select {font:inherit}
.na-r8 button,.na-r8 select {cursor:pointer}
.na-r8 :focus-visible {outline:3px solid #bd8e24;outline-offset:4px}
.na-r8 button {color:inherit}
.na-r8 .wrap {max-width:1244px;padding:0 32px;margin:auto}
.na-r8 .btn {border:1px solid transparent;border-radius:8px;background:var(--green);color:white;padding:13px 20px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:15px;text-align:center;font-size:14px;font-weight:700;line-height:1.45;cursor:pointer}
.na-r8 .btn:hover {filter:brightness(.95)}
.na-r8 .btn.gold {color:#172e25;background:#e2c88a}
.na-r8 .btn.outline {background:transparent;border-color:var(--line);color:var(--green)}
.na-r8 .arrow {font-size:20px;line-height:1;flex-shrink:0}
.na-r8 .hero {background:var(--deep);color:#fff;padding:32px 0 64px}
.na-r8 .crumb {font-size:12px;color:#becfc5;display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:38px}
.na-r8 .crumb a {text-decoration:underline;text-underline-offset:3px}
.na-r8 .hero-grid {display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:85px;align-items:center}
.na-r8 .eyebrow {color:#cbd8cb;font-weight:600;font-size:12px;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:19px}
.na-r8 h1 {font-size:clamp(35px,3.7vw,53px);font-weight:500;line-height:1.13;letter-spacing:-1.65px;margin:0 0 25px;max-width:830px}
.na-r8 h1 span {color:var(--gold)}
.na-r8 .lead {font-size:16px;line-height:1.75;color:#c7d7cd;max-width:755px;margin:0}
.na-r8 .hero-aside {border-left:1px solid #3b564b;padding:6px 0 6px 28px}
.na-r8 .hero-aside h2 {font-size:18px;font-weight:500;line-height:1.4;margin:0 0 12px}
.na-r8 .hero-aside p {font-size:13px;color:#bdcfc4;margin:0 0 21px;line-height:1.65}
.na-r8 .hero-aside .btn {width:100%;justify-content:space-between}
.na-r8 .price {display:block;font-size:38px;line-height:1.15;font-weight:500;color:var(--gold);margin:8px 0 22px}
.na-r8 .price-label {font-size:13px;color:#c7d7cd}
.na-r8 .section {padding:62px 0;border-bottom:1px solid var(--line);scroll-margin-top:20px}
.na-r8 .section h2 {font-size:29px;font-weight:500;line-height:1.3;letter-spacing:-.7px;margin:0 0 30px;max-width:760px}
.na-r8 h3 {font-size:18px;font-weight:650;line-height:1.4;margin:0 0 13px;letter-spacing:-.22px}
.na-r8 .section p {margin:0;font-size:14px;line-height:1.85;color:#56665e}
.na-r8 .text-link {display:inline-flex;align-items:center;gap:13px;color:var(--green);font-size:13px;font-weight:700;margin-top:21px;min-height:35px}
.na-r8 .text-link:hover {text-decoration:underline;text-underline-offset:4px}
.na-r8 .choices,.na-r8 .service-list {background:#fff}
.na-r8 .card-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.na-r8 .card {padding:28px;border:1px solid var(--line);border-radius:18px;background:white;display:flex;flex-direction:column;align-items:flex-start}
.na-r8 .card .text-link {margin-top:auto;padding-top:20px}
.na-r8 .card .number {color:var(--green);background:#eaf1e9;font-size:13px;display:grid;place-content:center;width:35px;height:35px;border-radius:50%;margin-bottom:28px}
.na-r8 .service-list .card-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.na-r8 .service-list .card {border-radius:12px;padding:27px 30px}
.na-r8 .service-list h3 {font-size:20px}
.na-r8 .editorial-grid {display:grid;grid-template-columns:330px minmax(0,1fr);gap:85px}
.na-r8 .editorial-grid h2 {font-size:27px}
.na-r8 .editorial-items {display:grid;gap:31px}
.na-r8 .editorial-items article+article {border-top:1px solid var(--line);padding-top:28px}
.na-r8 .editorial-items h3 {font-size:19px}
.na-r8 .steps-grid {display:grid;grid-template-columns:repeat(var(--count),minmax(0,1fr));gap:27px}
.na-r8 .steps-grid article {position:relative}
.na-r8 .steps-grid .number {width:38px;height:38px;border:1px solid #91aa96;background:var(--paper);border-radius:50%;display:grid;place-content:center;font-size:12px;color:var(--green);position:relative;z-index:1;margin-bottom:26px}
.na-r8 .steps-grid article:not(:last-child):before {content:'';position:absolute;left:38px;right:-28px;top:19px;height:1px;background:#b8c9bb}
.na-r8 .steps-grid h3 {font-size:17px}
.na-r8 .steps-grid p {font-size:13px}
.na-r8 .split .card-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.na-r8 .split .card {background:#eaf0e8;border:0;padding:30px}
.na-r8 .feature {background:#e8ede3}
.na-r8 .feature .editorial-grid {align-items:start}
.na-r8 .feature h2 {color:#1c4536}
.na-r8 .feature .editorial-items article+article {border-color:#c8d4c5}
.na-r8 .report {background:#102b24;color:#fff}
.na-r8 .report h2 {color:#e0c480}
.na-r8 .report .editorial-items {background:#fff;border-radius:14px;padding:30px 35px;color:var(--ink);position:relative;border-top:5px solid #d3b56b}
.na-r8 .report p {color:#55665e}
.na-r8 .report .text-link {color:var(--green)}
.na-r8 .triangle {background:#fff}
.na-r8 .triangle .card {border-top:3px solid #c7ac67;background:#f4f5ef}
.na-r8 .triangle .number {background:var(--deep);color:#e0c480;border-radius:6px}
.na-r8 .dispute {background:#e9eeea}
.na-r8 .dispute .editorial-grid {border-left:4px solid #658271;padding-left:28px;grid-template-columns:302px minmax(0,1fr)}
.na-r8 .source-note {font-size:11px;line-height:1.6;color:var(--muted);margin-top:22px}
.na-r8 .source-note a {text-decoration:underline;text-underline-offset:3px}
.na-r8 .faq {background:#fff}
.na-r8 .faq details {border-bottom:1px solid var(--line);padding:0}
.na-r8 .faq summary {cursor:pointer;list-style:none;padding:19px 32px 19px 0;font-size:15px;font-weight:600;position:relative;line-height:1.55}
.na-r8 .faq summary::-webkit-details-marker {display:none}
.na-r8 .faq summary:after {content:'+';position:absolute;right:3px;top:15px;font-weight:400;font-size:25px;color:var(--green)}
.na-r8 .faq details[open] summary:after {content:'−'}
.na-r8 .faq details p {padding:0 20px 22px 0}
.na-r8 .cta-band {padding:46px 0;background:#e8dcc0}
.na-r8 .cta-band .wrap {display:flex;justify-content:space-between;align-items:center;gap:50px}
.na-r8 .cta-band h2 {font-size:27px;margin:0 0 11px;letter-spacing:-.5px;font-weight:500}
.na-r8 .cta-band p {margin:0;max-width:700px;font-size:14px;color:#4d5d50}
.na-r8 .cta-band .btn {flex-shrink:0;max-width:300px}
.na-r8 .related {padding:48px 0 58px}
.na-r8 .related h2 {font-size:24px;font-weight:500;margin:0 0 22px}
.na-r8 .related-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.na-r8 .related a {display:flex;justify-content:space-between;align-items:center;border:1px solid #cfd9cf;border-radius:9px;padding:19px;font-size:14px;font-weight:600;gap:15px;min-height:81px;background:white}
.na-r8 .related a:hover {border-color:var(--green)}
.na-r8 dialog {border:0;padding:0;border-radius:16px;width:min(610px,calc(100% - 28px));max-height:calc(100dvh - 40px);background:#fff;color:var(--ink);box-shadow:0 24px 100px #0005}
.na-r8 dialog::backdrop {background:#061c15b8}
.na-r8 fieldset {border:0;margin:0 0 21px;padding:0;min-width:0}
.na-r8 legend,.na-r8 label.field-label {display:block;font-weight:650;font-size:13px;margin-bottom:9px}
.na-r8 .chips {display:flex;gap:7px;flex-wrap:wrap}
.na-r8 .chip {padding:8px 11px;border:1px solid #cbd6cb;border-radius:7px;background:white;font-size:12px;min-height:41px}
.na-r8 .chip[aria-pressed=true] {background:#e2eddf;border-color:var(--green);color:var(--green)}
.na-r8 input[type=radio] {accent-color:var(--green);width:16px;height:16px}
.na-r8 input[type=text],.na-r8 input[type=email],.na-r8 input[type=tel],.na-r8 textarea {display:block;width:100%;padding:12px;border:1px solid #cbd6cb;border-radius:7px;background:white;color:var(--ink);font-size:16px;line-height:1.5;margin-bottom:18px}
.na-r8 textarea {min-height:105px;resize:vertical}
.na-r8 [hidden] {display:none!important}
@media(max-width:1050px) {
.na-r8 .hero-grid {gap:40px;grid-template-columns:minmax(0,1fr) 245px}
.na-r8 .editorial-grid {grid-template-columns:270px minmax(0,1fr);gap:45px}
.na-r8 .dispute .editorial-grid {grid-template-columns:240px minmax(0,1fr)}
.na-r8 .card {padding:23px}
.na-r8 h1 {font-size:42px}
.na-r8 .steps-grid {gap:21px}
.na-r8 .steps-grid article:not(:last-child):before {right:-22px}
}
@media(max-width:760px) {
.na-r8 .wrap {padding:0 22px}
.na-r8 .hero {padding:24px 0 35px}
.na-r8 .crumb {font-size:10px;margin-bottom:28px}
.na-r8 .hero-grid {grid-template-columns:1fr;gap:30px}
.na-r8 h1 {font-size:38px;letter-spacing:-1.1px;line-height:1.15;margin-bottom:21px}
.na-r8 .eyebrow {font-size:10px;letter-spacing:1px;margin-bottom:17px}
.na-r8 .lead {font-size:14px;line-height:1.85}
.na-r8 .hero-aside {border-left:0;border-top:1px solid #3b564b;padding:23px 0 0}
.na-r8 .hero-aside h2 {font-size:17px;margin-bottom:8px}
.na-r8 .hero-aside p {font-size:12px;margin-bottom:18px}
.na-r8 .hero-aside .btn {width:100%;max-width:400px}
.na-r8 .price {font-size:32px;margin:4px 0 18px}
.na-r8 .section {padding:37px 0}
.na-r8 .section h2 {font-size:25px;margin-bottom:25px;letter-spacing:-.55px}
.na-r8 .card-grid,.na-r8 .service-list .card-grid,.na-r8 .split .card-grid {grid-template-columns:1fr;gap:14px}
.na-r8 .card {padding:25px}
.na-r8 .card .number {width:30px;height:30px;margin-bottom:19px}
.na-r8 .card .text-link {padding-top:15px;margin-top:0}
.na-r8 .editorial-grid,.na-r8 .dispute .editorial-grid {grid-template-columns:1fr;gap:2px}
.na-r8 .section p {font-size:14px;line-height:1.8}
.na-r8 .editorial-items {gap:25px}
.na-r8 .editorial-items article+article {padding-top:24px}
.na-r8 .steps-grid {grid-template-columns:1fr;gap:0}
.na-r8 .steps-grid article {padding:0 0 29px 56px;min-height:90px}
.na-r8 .steps-grid article:last-child {padding-bottom:0}
.na-r8 .steps-grid .number {position:absolute;left:0;top:0;width:32px;height:32px;margin:0}
.na-r8 .steps-grid article:not(:last-child):before {left:16px;top:32px;bottom:0;width:1px;height:auto;right:auto}
.na-r8 .steps-grid p {font-size:13px}
.na-r8 .steps-grid h3 {font-size:17px;margin-bottom:10px}
.na-r8 .report .editorial-items {padding:24px 23px}
.na-r8 .dispute .editorial-grid {padding-left:18px}
.na-r8 .cta-band {padding:34px 0}
.na-r8 .cta-band .wrap {display:block}
.na-r8 .cta-band h2 {font-size:24px}
.na-r8 .cta-band p {font-size:13px}
.na-r8 .cta-band .btn {margin-top:23px;width:100%;max-width:none;justify-content:space-between}
.na-r8 .related {padding:35px 0}
.na-r8 .related h2 {font-size:23px}
.na-r8 .related-grid {grid-template-columns:1fr;gap:10px}
.na-r8 .related a {min-height:64px;padding:17px 19px}
.na-r8 dialog {width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:12px}
.na-r8 .faq summary {font-size:14px}
}
@media(prefers-reduced-motion:no-preference) {
.na-r8 .btn,.na-r8 .chip {transition:background .15s ease,border-color .15s ease}
}

/**
 * Стык с действующей оболочкой, а не изменение авторской композиции.
 *
 * В авторском прототипе своя шапка в потоке документа; на сайте шапка
 * закреплена и имеет высоту 80px (измерено на живых страницах на 390, 768 и
 * 1440). Без этого отступа хлебные крошки и надзаголовок уходили под шапку.
 * Приём тот же, что принят в R7.1: отступ задаётся ТОЛЬКО корню страниц
 * семейства, глобальные body и header не трогаются.
 */
.na-r8 { border-top: 80px solid var(--deep); }

/**
 * Шапка сайта.
 *
 * Наложение бренда и первой ссылки устранено в разметке классами, которые уже
 * есть в закреплённом CSS R6: shrink-0, whitespace-nowrap, gap-4, min-w-0.
 * Новый утилитарный класс здесь неприменим — страницам отдаётся закреплённый
 * CSS, и такого правила в нём просто нет.
 *
 * На страницах семьи содержания переключатель языка показывает три полных
 * названия, и полный набор ссылок перестаёт помещаться даже при 1920px
 * (измерено: требуется до 1546px при контейнере 1472px). По правилу задания в
 * таком случае используется УЖЕ СУЩЕСТВУЮЩЕЕ мобильное меню: ссылки не
 * прячутся поштучно и текст не обрезается. Кнопка обращения и бренд остаются в
 * шапке. Страницы вне семьи этим правилом не затрагиваются.
 */
header[data-shell-family="r8"] [data-shell="nav"] { display: none !important; }
header[data-shell-family="r8"] [data-shell="burger"] { display: block !important; }
header[data-shell-family="r8"] [data-shell="menu"] { display: block !important; }

/**
 * R9: подпись у входящей связи инвестиционного пути.
 *
 * Правило живёт в слое R8, потому что сама ссылка стоит в блоке «дальше»
 * страницы содержания. Прежние ссылки блока внешне не меняются.
 */
.na-r8 .related-grid a .related-note {
  display: block;
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 400;
  color: #52606d;
}

/**
 * R9: авторский слой инвестиционного пути.
 *
 * Байты правил ниже перенесены из visual/journey.css без изменений: геометрия,
 * цвета и типографика авторские. Все селекторы живут под корнем .na-r9, поэтому
 * каталог R7, страницы R8, главная и Golden Visa ничего не получают.
 *
 * Глобальных reset здесь нет: слой ложится поверх сохранённой базы.
 */
.na-r9{--r9-ink:#0f1628;--r9-paper:#f8f6f1;--r9-muted:#52606d;--r9-line:#d8d7cf;--r9-gold:#e6c892;--r9-green:#14705a;background:var(--r9-paper);color:var(--r9-ink);font-family:Manrope,system-ui,sans-serif;font-size:17px;line-height:1.7;overflow-wrap:break-word}
.na-r9 *{box-sizing:border-box}
.na-r9 a{color:#0d614d;text-decoration:underline;text-underline-offset:4px}
.na-r9 a:hover{color:#083a2f}
.na-r9 a:focus-visible,.na-r9 button:focus-visible,.na-r9 input:focus-visible,.na-r9 select:focus-visible,.na-r9 summary:focus-visible{outline:3px solid #b78534;outline-offset:4px}
.na-r9 .r9-width{width:min(1168px,calc(100% - 64px));margin-inline:auto}
.na-r9 .r9-hero{background:var(--r9-ink);color:#f8f6f1;padding:64px 0 68px}
.na-r9 .r9-eyebrow{font-size:13px;font-weight:700;letter-spacing:.075em;margin:0 0 24px;color:var(--r9-gold)}
.na-r9 h1{font-size:clamp(36px,4.5vw,62px);font-weight:600;line-height:1.1;letter-spacing:-.035em;margin:0 0 26px;max-width:1020px}
.na-r9 h1 .r9-gold{color:var(--r9-gold)}
.na-r9 .r9-hero p.r9-intro{font-size:20px;line-height:1.65;max-width:840px;margin:0 0 28px;color:#e5e8eb}
.na-r9 .r9-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;background:var(--r9-gold);color:#0f1628;border:1px solid transparent;border-radius:5px;padding:12px 23px;font:inherit;font-weight:700;line-height:1.4;text-decoration:none;cursor:pointer;text-align:center}
.na-r9 .r9-button:hover{background:#f1d9ac;color:#0f1628}
.na-r9 .r9-contents{border-bottom:1px solid var(--r9-line);padding:22px 0}
.na-r9 .r9-contents ol{display:flex;gap:12px 24px;flex-wrap:wrap;list-style:none;padding:0;margin:0;font-size:14px}
.na-r9 .r9-contents a{color:#344455}
.na-r9 .r9-section{padding:58px 0;border-bottom:1px solid var(--r9-line);scroll-margin-top:calc(var(--na-header-height,90px) + 24px)}
.na-r9 h2{font-size:clamp(26px,3vw,38px);line-height:1.2;letter-spacing:-.025em;font-weight:600;margin:0 0 22px;max-width:920px}
.na-r9 .r9-prose{max-width:790px;margin:0 0 24px}
.na-r9 .r9-links{display:flex;gap:16px 28px;flex-wrap:wrap;margin-top:24px;font-size:16px;font-weight:600}
.na-r9 .r9-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:26px}
.na-r9 .r9-item h3{font-size:20px;line-height:1.35;margin:0 0 12px;font-weight:650}
.na-r9 .r9-item p{font-size:16px;margin:0;color:#435160;line-height:1.7}
.na-r9 .r9-item{padding-top:20px;border-top:3px solid #b88b44}
.na-r9 .r9-item a{font-weight:650}
.na-r9 .r9-row-list{list-style:none;padding:0;margin:24px 0 0;counter-reset:step}
.na-r9 .r9-row-list li{display:grid;grid-template-columns:40px 260px minmax(0,1fr);gap:20px;padding:22px 0;border-top:1px solid var(--r9-line);counter-increment:step}
.na-r9 .r9-row-list li:before{content:counter(step,decimal-leading-zero);font-size:15px;font-weight:700;color:#14705a;padding-top:2px}
.na-r9 .r9-row-list h3{font-size:18px;line-height:1.5;margin:0}
.na-r9 .r9-row-list p{font-size:16px;margin:0;color:#435160}
.na-r9 figure{margin:24px 0 0;max-width:960px}
.na-r9 figure img{display:block;max-width:100%;height:auto}
.na-r9 .r9-source{font-size:13px;color:#52606d;margin:16px 0 0;max-width:790px}
.na-r9 .r9-source a{font-weight:500}
.na-r9 .r9-tool{border:1px solid #c8d3cc;background:#fff;padding:32px;margin-top:28px;border-radius:6px}
.na-r9 .r9-tool h3{font-size:24px;line-height:1.3;margin:0 0 10px}
.na-r9 .r9-tool-note{font-size:14px;line-height:1.65;max-width:810px;color:#52606d;margin:8px 0 18px}
.na-r9 .r9-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}
.na-r9 .r9-fields label{font-size:14px;line-height:1.45;font-weight:600;display:flex;flex-direction:column;justify-content:flex-end;gap:8px}
.na-r9 .r9-fields input,.na-r9 .r9-tool select{width:100%;padding:11px 12px;min-height:48px;border:1px solid #9da9a2;background:#fff;color:#172337;border-radius:4px;font:inherit;font-size:18px;font-variant-numeric:tabular-nums}
.na-r9 .r9-fields input[aria-invalid=true]{border-color:#a12722}
.na-r9 .r9-tool select{font-size:15px;margin:10px 0 24px}
.na-r9 .r9-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 0;border-top:1px solid #d8d7cf;font-size:15px;align-items:baseline}
.na-r9 .r9-result strong{font-size:22px;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.na-r9 .r9-result:last-child{color:#0d614d}
.na-r9 .r9-tool-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.na-r9 .r9-tool-actions button{background:#f4f6f3;color:#172337;border:1px solid #bfc9c2;padding:10px 14px;min-height:44px;border-radius:4px;font:inherit;font-size:14px;cursor:pointer}
.na-r9 .r9-field-error{font-size:13px;color:#992c25;font-weight:400}
.na-r9 .r9-tool .r9-mode{color:#0d614d;font-size:13px;font-weight:700;letter-spacing:.03em}
.na-r9 .r9-faq details{border-top:1px solid var(--r9-line);padding:18px 0;max-width:850px}
.na-r9 .r9-faq summary{font-size:19px;font-weight:600;cursor:pointer;min-height:30px}
.na-r9 .r9-faq details p{font-size:16px;margin:14px 0 0}
.na-r9 .r9-closing{padding:52px;background:#e9eee8;margin-block:54px}
.na-r9 .r9-closing p{max-width:690px;margin:0 0 22px}
.na-r9 .r9-related{padding:0 0 56px}
.na-r9 .r9-related ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;padding:0}
.na-r9 .r9-related li{border-top:1px solid var(--r9-line);padding:16px 0}
.na-r9 .r9-foreign{font-size:12px;font-weight:400;color:#58646e;display:block;margin-top:3px}
.na-r9 .r9-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.na-r9{font-size:16px}.na-r9 .r9-width{width:calc(100% - 40px)}.na-r9 .r9-hero{padding:42px 0 46px}.na-r9 .r9-hero p.r9-intro{font-size:17px}.na-r9 h1{font-size:37px}.na-r9 .r9-choices{grid-template-columns:1fr;gap:25px}.na-r9 .r9-section{padding:38px 0}.na-r9 .r9-row-list li{grid-template-columns:28px minmax(0,1fr);gap:10px 14px}.na-r9 .r9-row-list p{grid-column:2}.na-r9 .r9-fields{grid-template-columns:1fr}.na-r9 .r9-tool{padding:21px 16px}.na-r9 .r9-result{font-size:13px;gap:10px}.na-r9 .r9-result strong{font-size:18px}.na-r9 .r9-closing{padding:26px 22px;margin-block:36px}.na-r9 .r9-related ul{grid-template-columns:1fr}.na-r9 .r9-contents ol{display:grid;grid-template-columns:1fr;gap:9px}.na-r9 .r9-button{max-width:100%}.na-r9 .r9-hero .r9-button{width:100%}.na-r9 .r9-tool-actions{flex-direction:column}.na-r9 .r9-tool-actions button{text-align:left}.na-r9 .r9-prose{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.na-r9 *{scroll-behavior:auto!important;transition:none!important}}

/**
 * Посадка авторского слоя в действующую оболочку.
 *
 * Шапка сайта фиксированная и занимает 80px (h-20 в Layout). Тем же значением
 * задаётся верхний отступ перед содержанием и высота для scroll-margin якорей,
 * которую авторский CSS уже читает из переменной. Цвет отступа совпадает с
 * фоном первого экрана, поэтому стык не виден.
 *
 * В прототипе шапки нет; её отсутствие там основанием убрать отступ не является.
 */
.na-r9 {
  --na-header-height: 80px;
  border-top: 80px solid var(--r9-ink);
}

/**
 * Полный набор ссылок общей шапки вместе с тремя названиями языков не
 * помещается в строку: это измерено в R8.1 и решено принятым способом.
 * На страницах пути действует тот же принятый вариант — уже существующее меню,
 * а бренд и кнопка обращения остаются в шапке.
 */
header[data-shell-family="r9"] [data-shell="nav"] { display: none !important; }
header[data-shell-family="r9"] [data-shell="burger"] { display: block !important; }
header[data-shell-family="r9"] [data-shell="menu"] { display: block !important; }

/**
 * Невидимый якорь прежнего раздела.
 *
 * Не занимает места и не читается программой чтения, но принимает переход по
 * старой ссылке с тем же отступом под фиксированной шапкой, что и секции.
 */
.na-r9 .r9-anchor-alias {
  display: block;
  height: 0;
  scroll-margin-top: calc(var(--na-header-height, 90px) + 24px);
}
