/* GEO-страница /geo-prodvizhenie/ - блоки переупаковки + hero-stats + перелив CTA.
   Опирается на переменные main.css (--color-*). Подключается условно в head.html. */

/* --- Показатели героя: тонкая безрамочная полоска под кнопками --- */
.hero-stats{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;max-width:720px;margin:34px auto 0}
.hero-stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:4px 30px;position:relative}
.hero-stat + .hero-stat::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:36px;background:var(--color-border)}
.hero-stat-num{font-size:clamp(1.3rem,1.8vw,1.6rem);font-weight:800;color:var(--color-accent);line-height:1.1}
.hero-stat-label{font-size:12.5px;line-height:1.4;color:var(--color-text-secondary);max-width:165px;margin-top:5px}
@media(max-width:640px){.hero-stat{padding:8px 20px}.hero-stat + .hero-stat::before{display:none}}

/* --- Первый экран во всю высоту: центрирует конструкцию заголовка и скрывает вторую секцию (ничего не «торчит» снизу). 100px ≈ хедер+хлебные крошки над героем. --- */
.hero-full{min-height:calc(100vh - 100px);min-height:calc(100svh - 100px);display:flex;flex-direction:column;justify-content:center}

/* --- Sticky-навигация по разделам статьи --- */
.geo-subnav{position:sticky;top:64px;z-index:30;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:11px 8px;margin:0 0 10px;background:rgba(10,15,19,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);border-radius:0}
.geo-subnav a{font-size:13px;color:var(--color-text-secondary);text-decoration:none;padding:5px 13px;border:1px solid var(--color-border);border-radius:99px;transition:.15s;white-space:nowrap}
.geo-subnav a:hover{color:var(--color-text-main);border-color:var(--color-accent)}

/* --- Аккордеоны <details> (прогрессивное раскрытие текста) --- */
.geo-acc{border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-card);margin:14px 0;overflow:hidden}
.geo-acc>summary{list-style:none;cursor:pointer;padding:15px 18px;font-family:var(--font-heading,inherit);color:var(--color-text-main);display:flex;align-items:center;justify-content:space-between;gap:14px}
.geo-acc>summary::-webkit-details-marker{display:none}
.geo-acc>summary::after{content:'+';font-size:22px;color:var(--color-accent);font-weight:700;line-height:1;flex:0 0 auto}
.geo-acc[open]>summary::after{content:'\2013'}
.geo-sum-txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.geo-sum-txt b{font-weight:700;font-size:16px}
.geo-sub{font-weight:400;font-size:13px;color:var(--color-text-secondary)}
.geo-acc-body{padding:2px 18px 16px}
.geo-acc-body>*:first-child{margin-top:0}
.geo-acc-body h3{font-size:16px;margin:14px 0 4px}

/* --- Блок «Мой подход»: плашки + общий drawer раскрытия --- */
.geo-appr{margin:18px 0}
.geo-appr-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.geo-plate{display:flex;flex-direction:column;gap:8px;text-align:left;cursor:pointer;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:16px 16px 14px;font-family:inherit;color:var(--color-text-body);transition:.15s;height:100%}
.geo-plate:hover{border-color:var(--color-accent)}
.geo-plate.on{border-color:var(--color-accent);background:var(--color-bg-raised)}
.geo-plate-title{font-family:var(--font-heading,inherit);font-weight:700;font-size:15px;color:var(--color-text-main);line-height:1.25}
.geo-plate-teaser{font-size:13px;line-height:1.45;color:var(--color-text-secondary);flex:1 1 auto}
.geo-plate-more{font-size:13px;font-weight:600;color:var(--color-accent);margin-top:2px}
.geo-plate.on .geo-plate-more{opacity:.5}
.geo-appr-drawer{margin-top:12px;border:1px solid var(--color-accent);background:rgba(112,133,255,.05);border-radius:12px;padding:15px 18px;animation:geoFade .2s ease}
.geo-appr-drawer .geo-appr-detail p{margin:0}
@keyframes geoFade{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* --- Таблица платформ + статусы доступа в РФ --- */
.geo-plat table th:nth-child(2),.geo-plat table td:nth-child(2){white-space:nowrap}
.geo-ru-ok{color:#67d688;font-weight:600}.geo-ru-warn{color:#ffca6a;font-weight:600}.geo-ru-no{color:#ff8585;font-weight:600}
.geo-note{font-size:13px;line-height:1.55;color:var(--color-text-secondary);margin:10px 0 4px}

/* --- Ритм отступов финального блока --- */
.geo-final{padding-top:64px;padding-bottom:64px}
@media(min-width:640px){.geo-final{padding-top:80px;padding-bottom:80px}}

/* --- Перелив (glare) на главных CTA, уважает reduced-motion --- */
.geo-shine{position:relative;overflow:hidden;isolation:isolate}
.geo-shine::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.22) 50%,transparent 60%);transform:translateX(-140%);animation:geoShine 3.6s ease-in-out infinite;z-index:1}
@keyframes geoShine{0%{transform:translateX(-140%)}55%,100%{transform:translateX(140%)}}
@media(prefers-reduced-motion:reduce){.geo-shine::after{display:none}}

/* --- Мобайл: плашки в столбец, таблица платформ в стопку карточек --- */
@media(max-width:900px){.geo-appr-row{grid-template-columns:1fr 1fr}}
@media(max-width:560px){
.geo-appr-row{grid-template-columns:1fr}.geo-subnav{top:56px}
.geo-plat table,.geo-plat thead,.geo-plat tbody,.geo-plat tr,.geo-plat td{display:block}
.geo-plat thead{display:none}
.geo-plat tr{border:1px solid var(--color-border);border-radius:12px;margin-bottom:10px;padding:12px 14px;background:var(--color-bg-card)}
.geo-plat td{border:0;padding:0}
.geo-plat td:first-child{font-size:15px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}
.geo-plat td[data-th]{padding-top:9px}
.geo-plat td[data-th]::before{content:attr(data-th);display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:2px}
}
