/* Уникальная часть главной города / кладбища и перелинковка по городам — Pages/Shared/_CityHub.cshtml (09.11.2026).
   Раскладка как у locality-info: поля 56 / 32 / 16, карточки на светло-зелёном фоне. */
.city-hub{padding:var(--section-heading-space-before) 56px 40px;scroll-margin-top:110px}
.city-hub h2{font-size:clamp(26px,3vw,38px);line-height:1.2;max-width:950px}
.city-hub>.section-heading,.city-hub__top>.section-heading{margin-bottom:24px}
.city-hub__top{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:40px;align-items:start}
.city-hub__top--solo{grid-template-columns:minmax(0,1fr)}
.city-hub__intro{max-width:760px;font-size:17px;line-height:1.65;color:#33433a}
.city-hub__lead{max-width:760px;line-height:1.6;color:#5c6c63;margin-top:12px!important}
.city-hub__photo{margin:0;border-radius:18px;overflow:hidden;position:relative}
.city-hub__photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.city-hub__photo figcaption{position:absolute;right:10px;bottom:8px;font-size:11px;color:#fff;opacity:.8;text-shadow:0 1px 2px rgba(0,0,0,.5)}

/* Карточки кладбищ */
.city-hub__cems{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:8px}
.city-hub__cems--n1{grid-template-columns:minmax(0,1fr)}
.city-hub__cems--n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.city-hub__cem,.city-hub__card{background:#f0f5f1;border:1px solid #dce8df;border-radius:18px;padding:24px;display:flex;flex-direction:column}
.city-hub__cem>svg,.city-hub__card>svg{color:#30886c;width:26px;height:26px;flex-shrink:0}
.city-hub__cem h3,.city-hub__card h3{font-size:20px;line-height:1.3;margin:14px 0 8px}
.city-hub__cem p,.city-hub__card p{font-size:16px;line-height:1.6;margin:8px 0 0}
.city-hub__meta{color:#5c6c63;font-size:15px!important}
.city-hub__status{display:inline-flex;align-self:flex-start;font-size:13px!important;font-weight:600;line-height:1.3!important;padding:4px 10px;border-radius:99px;background:#e1efe6;color:#1f6b36}
.city-hub__status--family{background:#f6eedb;color:#7a5a12}
.city-hub__status--closed{background:#ebedec;color:#4d5651}
.city-hub__link{margin-top:auto;padding-top:16px;color:#1f6b36;font-weight:600;text-underline-offset:4px}
.city-hub__fine{font-size:14px!important;color:#6b7a71}
.city-hub__fine a{color:inherit}

/* Москва: округа списками */
.city-hub__districts{columns:3;column-gap:32px;margin-top:8px}
.city-hub__district{break-inside:avoid;background:#f0f5f1;border:1px solid #dce8df;border-radius:18px;padding:20px 22px;margin:0 0 16px}
.city-hub__district h3{font-size:18px;margin:0 0 10px;display:flex;justify-content:space-between;gap:12px}
.city-hub__district h3 span{color:#6b7a71;font-weight:500;font-size:15px}
.city-hub__district ul{list-style:none;margin:0;padding:0}
.city-hub__district li{padding:5px 0;line-height:1.4;display:flex;align-items:center;gap:8px}
.city-hub__district a{color:#1d2b23;text-decoration:none}
.city-hub__district a:hover{color:#1f6b36;text-decoration:underline}
.city-hub__rest summary{cursor:pointer;color:#1f6b36;font-weight:600;padding:6px 0 0;list-style:none}
.city-hub__rest summary::-webkit-details-marker{display:none}
.city-hub__rest[open] summary{display:none}
.city-hub__st{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0;background:#30886c}
.city-hub__st--family{background:#d4a72c}
.city-hub__st--closed{background:#9aa39e}
.city-hub__legend{font-size:14px;color:#6b7a71;line-height:1.8;margin:4px 0 0}
.city-hub__legend .city-hub__st{margin:0 4px 0 12px}
.city-hub__legend .city-hub__st:first-child{margin-left:0}

/* Ссылки-«чипы» под карточками */
.city-hub__more{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:20px}
.city-hub__more span{color:#5c6c63;margin-right:4px}
.city-hub__more a{padding:6px 14px;border:1px solid #cfe0d4;border-radius:99px;color:#1f6b36;text-decoration:none;font-size:15px;background:#fff}
.city-hub__more .city-hub__chip{padding:6px 14px;border:1px solid #dce8df;border-radius:99px;color:#33433a;font-size:15px;background:#fff;margin:0}
.city-hub__more a:hover{background:#e1efe6}

/* Установка и правила: 3 колонки */
.city-hub__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}

/* Вопросы */
.city-hub__faq{display:grid;gap:10px;max-width:960px}
.city-hub__q{background:#f0f5f1;border:1px solid #dce8df;border-radius:14px;padding:0 22px}
.city-hub__q summary{cursor:pointer;list-style:none;padding:18px 28px 18px 0;font-weight:600;font-size:17px;line-height:1.4;position:relative}
.city-hub__q summary::-webkit-details-marker{display:none}
.city-hub__q summary::after{content:"+";position:absolute;right:0;top:14px;font-size:24px;color:#30886c;font-weight:400}
.city-hub__q[open] summary::after{content:"−"}
.city-hub__q p{margin:0 0 18px;line-height:1.65}
.city-hub__sources{margin-top:20px;max-width:960px;font-size:14px;color:#6b7a71}
.city-hub__sources summary{cursor:pointer;color:#1f6b36;font-weight:600}
.city-hub__sources ul{margin:10px 0 0;padding-left:18px;columns:2;column-gap:32px}
.city-hub__sources li{margin:3px 0;word-break:break-word}
.city-hub__sources a{color:#5c6c63}

/* Поддомен кладбища */
.city-hub__cemgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.city-hub__cemgrid--solo{grid-template-columns:minmax(0,1fr);max-width:760px}
.city-hub__citycard{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:#f0f5f1;border:1px solid #dce8df;text-decoration:none;color:inherit}
.city-hub__citycard img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.city-hub__citycap{display:flex;flex-direction:column;gap:6px;padding:18px 22px 22px}
.city-hub__citycap strong{font-size:20px;color:#1d2b23}
.city-hub__citycap span{color:#1f6b36;line-height:1.5}

/* Местный блок на страницах услуг — Pages/Shared/_CityServiceLocal.cshtml (10.11.2026) */
.city-hub--svc{padding-bottom:var(--section-heading-space-before,56px)}
.city-hub__cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.city-hub__num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#30886c;color:#fff;font-weight:700;font-size:16px}
.city-hub__note{display:flex;gap:12px;align-items:flex-start;max-width:960px;margin:20px 0 0;padding:16px 20px;border-radius:14px;background:#f0f5f1;border:1px solid #dce8df;line-height:1.6}
.city-hub__note svg{color:#30886c;width:22px;height:22px;flex-shrink:0;margin-top:2px}

/* Круг городов */
.city-hub__ring{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.city-hub__city{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:#f0f5f1;border:1px solid #dce8df;text-decoration:none;color:inherit}
.city-hub__city img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.city-hub__city strong{font-size:20px;padding:16px 20px 4px;color:#1d2b23}
.city-hub__city span{padding:0 20px 20px;color:#5c6c63;line-height:1.5}
.city-hub__city:hover strong{color:#1f6b36}

@media(max-width:1199px){
  .city-hub__cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .city-hub{padding-right:32px;padding-left:32px}
  .city-hub__top{grid-template-columns:minmax(0,1fr) 40%;gap:28px}
  .city-hub__cems,.city-hub__cards,.city-hub__ring{grid-template-columns:repeat(2,minmax(0,1fr))}
  .city-hub__cems--n1{grid-template-columns:minmax(0,1fr)}
  .city-hub__cems--n3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .city-hub__districts{columns:2}
}
@media(max-width:767px){
  .city-hub{padding-right:16px;padding-left:16px;padding-bottom:28px}
  .city-hub__top{grid-template-columns:minmax(0,1fr);gap:4px}
  .city-hub__photo{order:2}
  .city-hub__cem,.city-hub__card{padding:20px}
  .city-hub__districts{columns:1}
  .city-hub__cemgrid{grid-template-columns:minmax(0,1fr)}
  .city-hub__sources ul{columns:1}
  .city-hub__intro{font-size:16px}
  .city-hub .eyebrow{white-space:normal}
}

/* Отступы (владелец 11.11.2026): карточки кладбищ не вплотную к шапке с фото; между соседними блоками города
   не двойной отступ (низ предыдущего + верх следующего), а один — перед зелёными надзаголовками. */
.city-hub__top+.city-hub__cems,.city-hub__top+.city-hub__districts{margin-top:36px}
/* Перед зелёным надзаголовком суммарно 56 px, как везде на сайте (владелец 11.11.2026): первый блок — 56 сверху,
   следующие — 40 снизу у предыдущего + 16 сверху. На телефоне — общая переменная (28). */
@media(min-width:768px){.city-hub{padding-top:56px}#kladbishcha.city-hub{padding-top:56px}.city-hub~.city-hub{padding-top:16px}} /* 56 от края светло-зелёного фона ленты «Все услуги» (11.11); ~ а не +: между блоками бывает <script> JSON-LD */
@media(max-width:767px){.city-hub~.city-hub{padding-top:0}}
@media(max-width:767px){
  .city-hub__top+.city-hub__cems,.city-hub__top+.city-hub__districts{margin-top:24px}
}
/* Вставка про металл в карточке «дать земле осесть» (11.11.2026) */
.city-hub__metal{margin-top:12px!important;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid #cfe0d4;font-size:15px!important;line-height:1.55!important}
.city-hub__metal a{color:#1f6b36;font-weight:600;text-underline-offset:3px}
/* Ссылки на услуги в коротких карточках (11.11.2026) */
/* Ссылка = зелёный + подчёркивание, при наведении подчёркивание убирается (владелец 11.11: на сайте есть просто зелёный текст) */
.city-hub__links{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:auto!important;padding-top:14px}
.city-hub__links a,.city-hub__metal a{color:#1f6b36;font-weight:600;font-size:15px;line-height:1.4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.city-hub__links a:hover,.city-hub__metal a:hover{text-decoration:none}
