/* Уникальная часть главной города / кладбища и перелинковка по городам — 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 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}

/* Круг городов */
.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{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__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}
}
