/* ОРИЕНТИР: раздел «Статьи». Подключается после css/orientir-shell.css и css/site-2026.css только на stati.html и statya-*.html.
   Список (префикс st-): квадратные карточки трёх размеров вразброс, липкий фильтр по темам, выезд по IntersectionObserver (js/stati.js).
   Статья (префикс ar-): спокойная читалка, колонка до 720 px, без анимации блоков.
   CSP запрещает style="" и <style>: все стили только здесь. Анимации только transform/opacity (translate). */

/* ---- Список: первый экран ---- */
.st-hero{display:block;padding-block:52px 30px}
.st-hero .page-hero-copy h1{max-width:820px}

/* ---- Липкая полоса фильтра по темам: под фиксированной шапкой сайта ---- */
.st-bar{position:sticky;top:calc(var(--o-header-h,80px) + env(safe-area-inset-top,0px));z-index:60;background:rgba(252,253,254,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-block:1px solid var(--o-border,rgba(29,47,70,.12))}
.st-bar-in{display:flex;align-items:center;gap:16px;padding-block:12px}
.st-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;flex:1 1 auto;min-width:0;padding-block:2px}
.st-chips::-webkit-scrollbar{display:none}
.st-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 17px;border:1px solid rgba(29,47,70,.22);border-radius:99px;background:rgba(252,253,254,.75);color:#1D2F46;font:600 15px/1 var(--o-font-text);cursor:pointer;transition:background-color .25s ease-out,color .25s ease-out,border-color .25s ease-out}
.st-chip:hover{border-color:rgba(29,47,70,.5)}
.st-chip .st-n{font-weight:600;font-size:12px;opacity:.6;font-variant-numeric:tabular-nums}
.st-chip[aria-pressed="true"]{background:#1D2F46;border-color:#1D2F46;color:#FCFDFE}
.st-chip:focus-visible{outline:2px solid #1D2F46;outline-offset:3px}
.st-count{flex:0 0 auto;display:none;font:600 14px/1 var(--o-font-text);color:rgba(29,47,70,.78);font-variant-numeric:tabular-nums}
@media(min-width:760px){.st-count{display:block}}

/* ---- Поле карточек ---- */
.st-field{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;row-gap:clamp(36px,5vw,76px);padding-block:clamp(32px,5vw,64px) clamp(24px,3vw,40px)}
.st-card{position:relative;display:block;flex:0 0 auto;width:100%;aspect-ratio:1/1;overflow:hidden;background:#1D2F46;color:#FCFDFE;text-decoration:none;container-type:inline-size}
.st-card[hidden]{display:none}
.st-card img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;filter:saturate(.82) contrast(.94) brightness(1.03);transition:transform 1.3s var(--o-ease)}
.st-card:hover img,.st-card:focus-visible img{transform:scale(1.05)}
.st-card:focus-visible{outline:2px solid #1D2F46;outline-offset:4px}
.st-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,25,40,.9) 0%,rgba(14,25,40,.58) 36%,rgba(14,25,40,0) 70%),linear-gradient(to bottom,rgba(14,25,40,.3),rgba(14,25,40,0) 28%)}
.st-topic{position:absolute;left:14px;top:14px;display:inline-flex;align-items:center;gap:8px;padding:7px 11px 7px 9px;background:rgba(252,253,254,.93);color:#1D2F46;font:600 11px/1 var(--o-font-text);letter-spacing:.14em;text-transform:uppercase}
.st-topic::before{content:"";width:8px;height:8px;border-radius:50%;background:#1D2F46}
.st-cap{position:absolute;left:0;right:0;bottom:0;display:grid;gap:12px;padding:0 clamp(14px,6cqi,22px) clamp(14px,5cqi,22px)}
.st-ttl{margin:0;font:600 clamp(18px,8.2cqi,32px)/1.08 var(--o-font-display);letter-spacing:.005em;text-wrap:balance;color:#FCFDFE}
.st-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font:600 13px/1 var(--o-font-text);letter-spacing:.04em;color:rgba(252,253,254,.84)}
.st-go{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(252,253,254,.55);transition:transform .45s var(--o-ease),background-color .25s ease-out,color .25s ease-out}
.st-card:hover .st-go,.st-card:focus-visible .st-go{transform:translateX(4px);background:#FCFDFE;color:#1D2F46}

/* узкая карточка (малый слот на 900-1100 px): мельче заголовок и стрелка, чтобы длинный заголовок не наезжал на метку темы */
@container (max-width:210px){
  .st-ttl{font-size:16px}
  .st-cap{gap:8px;padding-inline:14px;padding-bottom:12px}
  .st-go{width:28px;height:28px}
}
@container (max-width:185px){.st-ttl{font-size:15px;line-height:1.05}}

/* ---- Появление: до включения скрипта (класс st-js на html) всё видно ---- */
.st-js .st-card{opacity:0;transition:opacity .9s ease-out,translate 1.2s var(--o-ease)}
.st-js .st-card.in{opacity:1;translate:0 0}
.st-js .st-card.still{transition:none!important}
@media(max-width:899.98px){.st-js .st-card:not(.in){translate:0 36px}}

/* ---- Планшет: две колонки, телефон: одна ---- */
@media(min-width:600px) and (max-width:899.98px){.st-card{width:calc(50% - 8px)}}
@media(max-width:719.98px){.st-hero{padding-block:38px 20px}}

/* ---- ПК: шесть слотов, повторяются. Три размера квадрата: L 38%, M 29%, S 22% ширины поля ---- */
@media(min-width:900px){
  .st-card[data-slot="0"]{width:38%;margin-top:0}
  .st-card[data-slot="1"]{width:22%;margin-top:9%}
  .st-card[data-slot="2"]{width:29%;margin-top:3%}
  .st-card[data-slot="3"]{width:29%;margin-top:2%;margin-left:3%}
  .st-card[data-slot="4"]{width:38%;margin-top:7%}
  .st-card[data-slot="5"]{width:22%;margin-top:0}
  .st-js .st-card[data-dir="l"]:not(.in){translate:-13vw 0}
  .st-js .st-card[data-dir="r"]:not(.in){translate:13vw 0}
}
/* без JS слоты не расставлены: на ПК три равные колонки вместо квадратов на всю ширину */
@media(min-width:900px){html:not(.st-js) .st-field .st-card{width:calc((100% - 32px)/3)}}
@media(prefers-reduced-motion:reduce){
  .st-js .st-card{opacity:1!important;translate:none!important;transition:none!important}
  .st-card img{transition:none}
}

/* ---- Низ списка: отступ перед блоком заявки ---- */
.st-note{padding-bottom:clamp(40px,6vw,72px)}

/* ======================= Страница статьи ======================= */
.ar-head{padding-block:52px 0}
.ar-col{max-width:720px}
.ar-head h1{margin:18px 0 18px;font-size:clamp(34px,4vw,52px);line-height:1.06;letter-spacing:-.02em;text-wrap:balance}
.ar-meta{font:600 14px/1.4 var(--o-font-text);letter-spacing:.02em;color:var(--site-ink-soft)}
.ar-cover{max-width:880px;margin-top:30px}
.ar-cover img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;filter:saturate(.82) contrast(.94) brightness(1.03)}

.ar-section{padding-block:44px 20px}
.ar-body{max-width:720px}
.ar-body .ar-lead{font-size:21px;line-height:1.55;color:rgba(29,47,70,.92);margin-bottom:6px}
.ar-body p{font-size:17px;line-height:1.7}
.ar-body p+p{margin-top:14px}
.ar-body a{text-underline-offset:3px}
.ar-body h2{display:flex;align-items:flex-start;gap:14px;margin:46px 0 18px;font-size:clamp(26px,2.6vw,32px);line-height:1.15;letter-spacing:-.01em;scroll-margin-top:calc(var(--o-header-h) + 20px)}
.ar-body h2::before{content:"";flex:none;width:20px;height:20px;margin-top:.28em;border:1px solid rgba(29,47,70,.16);border-radius:50%;background:radial-gradient(#1D2F46 2.5px,transparent 3.5px)}
.ar-body h3{margin:30px 0 10px;font-size:25px;line-height:1.2}
.ar-body .point-list{margin:16px 0 18px;font-size:17px;line-height:1.55}
.ar-ol{list-style:none;margin:16px 0 18px;padding:0;display:grid;gap:12px;counter-reset:ar-step;font-size:17px;line-height:1.55}
.ar-ol li{position:relative;padding-left:44px;counter-increment:ar-step;min-height:30px}
.ar-ol li::before{content:counter(ar-step);position:absolute;left:0;top:-1px;width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(29,47,70,.22);border-radius:50%;font:600 13px/1 var(--o-font-text);color:#1D2F46}
.ar-note{margin:26px 0;padding:23px 25px}
.ar-note p{font-size:16px;line-height:1.6}
.ar-note strong{font-weight:700}

/* Источники: мелкий текст под статьёй */
.ar-sources{margin-top:46px;padding-top:24px;border-top:1px solid rgba(29,47,70,.14)}
.ar-body .ar-sources h2{display:block;margin:0 0 14px;font-size:20px;letter-spacing:0}
.ar-body .ar-sources h2::before{content:none}
.ar-sources ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:14px;line-height:1.55;color:var(--site-ink-soft)}
.ar-sources li{padding-left:14px;position:relative}
.ar-sources li::before{content:"";position:absolute;left:0;top:.7em;width:4px;height:4px;border-radius:50%;background:rgba(29,47,70,.5)}
.ar-sources a{font-weight:600}

/* «Если это про вас или близкого» и «Читайте также» */
.ar-cta-section{padding-block:30px 10px}
.ar-cta-section .page-cta h2{font:600 28px/1.15 var(--o-font-display);letter-spacing:0;color:var(--o-heading)}
.ar-cta-section .page-cta p{margin-top:8px;font:400 16px/1.5 var(--o-font-text);color:var(--site-ink-soft)}
.ar-more{padding-block:20px 10px}
.ar-more h2{font-size:clamp(28px,2.8vw,36px);margin-bottom:26px}
.ar-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ar-more-grid .st-card{width:auto}
@media(max-width:899.98px){.ar-more .st-ttl{font-size:clamp(17px,7.4cqi,26px)}}
@media(max-width:599.98px){
  .ar-more-grid{grid-template-columns:1fr}
  .ar-more-grid .st-card{aspect-ratio:16/10}
}

@media(max-width:719.98px){
  .ar-head{padding-block:38px 0}
  .ar-head h1{font-size:clamp(30px,8.6vw,40px)}
  .ar-cover{margin-top:24px}
  .ar-section{padding-block:30px 10px}
  .ar-body .ar-lead{font-size:19px}
  .ar-body p,.ar-body .point-list,.ar-ol{font-size:16px}
  .ar-body h2{margin:36px 0 16px;font-size:26px}
  .ar-body h3{font-size:22px}
  .ar-note{padding:20px}
  .ar-cta-section .page-cta h2{font-size:26px}
  .ar-cta-section .page-cta p{font-size:15px}
}
