/* Главная города (template-parts/home-city.php, home-legacy.php). Утверждённый макет «Главная Б»:
   design/city-home/index.html. Общие компоненты pc-* — assets/css/partner-card.css (подключается вместе).
   Размеры в px, не rem: тема меняет font-size у html (наблюдение 0013). */

/* ---------- Первый экран: фото основного сайта, светлый фон, тёмный текст, белый градиент слева ---------- */
.city-intro{position:relative;overflow:hidden;color:var(--pc-ink);background:#eef3f6}
.city-intro picture{display:block}
.city-intro__bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:70% 50%;display:block}
.city-intro--photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.7) 38%,rgba(255,255,255,0) 60%)}
.city-intro__in{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;min-height:440px;padding-top:44px;padding-bottom:40px}
.city-intro__box{max-width:740px}
.pc .city-intro .pc-h1{margin:0 0 20px;color:var(--pc-ink)}
.city-intro .pc-badges{margin:0 0 18px}
.city-intro .pc-badges li{background:rgba(255,255,255,.9);color:var(--pc-ink);box-shadow:0 1px 0 var(--pc-line)}
.city-offer{display:flex;flex-wrap:wrap;gap:6px 28px;margin:0 0 20px;padding:0}
.city-offer div{display:flex;flex-direction:column-reverse}
.city-offer dt{font-size:15px;color:var(--pc-muted);font-weight:400}
.city-offer dd{margin:0;font-size:28px;line-height:1.15;font-weight:600;color:var(--pc-red)}
.city-actions{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;margin:0}
.city-intro .pc-btn--ghost{background:#fff;color:var(--pc-ink)!important;border-color:var(--pc-ink)}
.city-intro .pc-btn--ghost:hover{background:var(--pc-light)}
.city-actions__phone{display:inline-flex;align-items:center;min-height:48px;padding:0 4px;font-size:20px;font-weight:700;color:var(--pc-ink)!important;text-decoration:none}
.city-actions__phone:hover{color:var(--pc-red)!important}
@media (max-width:991px){
  .city-intro{display:flex;flex-direction:column}
  .city-intro--photo::after{content:none}
  .city-intro picture{order:2}
  .city-intro__bg{position:static;width:100%;height:auto;max-height:340px;object-fit:cover;object-position:80% 50%}
  .city-intro__in{min-height:0;padding-top:24px;padding-bottom:26px}
  .city-offer dt{font-size:16px}
  .city-offer dd{font-size:24px}
  .city-actions .pc-btn{flex:1 1 140px}
  .city-actions__phone{flex:1 1 100%;justify-content:center}
}

/* ---------- Сетка: лид слева, калькулятор + липкий блок справа ---------- */
.city-card{padding-top:28px}
.city-lead p{margin:0 0 8px;max-width:70ch}
.city-lead strong{font-weight:600}

/* Поле «Марка», строка выгрузки */
.pc-select{appearance:none;-webkit-appearance:none;width:100%;min-height:52px;padding:0 44px 0 14px;border:2px solid var(--pc-line);border-radius:6px;font-family:inherit;font-weight:600;font-size:16px;color:var(--pc-ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%232d2d2d' stroke-width='2' fill='none'/%3E%3C/svg%3E") right 16px center no-repeat;cursor:pointer;margin:0}
.pc-select:focus-visible{outline:3px solid var(--pc-ink);outline-offset:0;border-color:var(--pc-ink)}
.city-unl{margin:0 0 12px!important;font-size:15px;line-height:1.45}
.city-unl b{font-weight:600}
@media (max-width:991px){.city-unl{font-size:16px}}

/* Оглавление */
.pc-anchors.city-toc{margin-top:36px}
.city-toc__title{margin:0 0 4px!important;font-weight:600;color:var(--pc-muted);font-size:15px}
.pc .city-toc ul{flex-wrap:wrap}
@media (max-width:991px){.pc-anchors.city-toc{margin-top:32px}.city-toc__title{padding:0 15px;font-size:16px}.pc .city-toc ul{flex-wrap:nowrap}}
@media (min-width:992px) and (max-width:1499px){.pc .city-toc ul{gap:0}.pc .city-toc a{padding:0 9px}}

/* Разделы */
.pc-home .pc-tbl a{text-decoration:underline;text-underline-offset:2px}
.pc-home .pc-tbl tbody th{font-weight:600}
.city-sec .pc-prose p{max-width:70ch}

/* «Что это даёт» */
.city-why{display:grid;gap:0 40px;margin:0;padding:0;list-style:none;max-width:1000px}
@media (min-width:768px){.city-why{grid-template-columns:1fr 1fr}}
.city-why li{padding:16px 0 14px;border-top:1px solid var(--pc-line);margin:0;list-style:none}
.city-why li::before{content:none}
.city-why b{display:block;font-weight:600;font-size:17px;line-height:1.35;margin-bottom:4px}
.city-why b::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;background:var(--pc-red);margin-right:10px;vertical-align:1px}

/* Текст + фото рядом (фото 4:3; без фото — одна колонка) */
.city-split{display:grid;gap:8px 40px;align-items:start}
@media (min-width:1200px){
  .city-split--300.has-photo{grid-template-columns:minmax(0,1fr) 300px}
  .city-split--320.has-photo{grid-template-columns:minmax(0,1fr) 320px}
  .city-split--340.has-photo{grid-template-columns:minmax(0,1fr) 340px}
}
@media (max-width:1199px){.city-split .city-photo{max-width:480px;margin:8px 0 12px}}

/* Районы */
.city-places{margin:0 0 4px;max-width:900px}
.city-places__label{margin:0 0 8px!important;font-weight:600}
.city-places__text{margin:0 0 16px!important}
.city-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px!important;padding:0!important;list-style:none}
.city-tags li{padding:6px 12px;background:var(--pc-light);border-radius:6px;line-height:1.3;margin:0;list-style:none}
.city-tags li::before{content:none}

/* Качество: выноска */
.city-callout{margin:4px 0 0;padding:12px 16px;border-left:3px solid var(--pc-red);background:var(--pc-tint);border-radius:0 6px 6px 0;max-width:70ch}
.city-callout p:last-child{margin:0}

/* ---------- Старые блоки главной (макет Б, раздел 6) ---------- */
.city-lg-desc{margin:-6px 0 18px!important;color:var(--pc-muted);max-width:70ch}
.city-lg-cards{display:grid;gap:12px;margin:0;padding:0;list-style:none;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.city-lg-cards>li{margin:0;padding:16px 18px;background:var(--pc-light);border-radius:var(--pc-r);line-height:1.45;list-style:none}
.city-lg-cards li::before{content:none}
.city-lg-cards b{display:block;font-weight:600;font-size:17px;line-height:1.35;margin-bottom:6px}
.city-lg-cards ul{margin:0;padding-left:1.1em}
.city-lg-cards ul li{padding:0;background:none;border-radius:0;margin:0 0 4px;list-style:disc}
.city-lg-goods{display:grid;gap:10px;margin:0;padding:0;list-style:none;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}
.city-lg-goods li{margin:0;list-style:none}
.city-lg-goods li::before{content:none}
.city-lg-goods a{display:flex;flex-direction:column;gap:4px;min-height:96px;height:100%;padding:14px 16px;border:1px solid var(--pc-line);border-radius:var(--pc-r);color:var(--pc-ink)!important;text-decoration:none}
.city-lg-goods a:hover{border-color:var(--pc-red)}
.city-lg-goods b{font-weight:600;font-size:17px}
.city-lg-price{font-weight:700;color:var(--pc-red);font-size:18px}
.city-lg-more{margin-top:auto;font-size:15px;color:var(--pc-red-d);text-decoration:underline}
.city-lg-ticks{list-style:none;margin:0;padding:0;display:grid;gap:0 40px;max-width:1000px}
@media (min-width:768px){.city-lg-ticks{grid-template-columns:1fr 1fr}}
.city-lg-ticks li{position:relative;margin:0;padding:12px 0 12px 36px;border-top:1px solid var(--pc-line);list-style:none}
.city-lg-ticks li::before{content:"";position:absolute;left:4px;top:18px;width:14px;height:7px;border-left:3px solid var(--pc-red);border-bottom:3px solid var(--pc-red);transform:rotate(-45deg)}
.city-lg-request{display:grid;gap:14px 32px;align-items:center;padding:24px;border-radius:var(--pc-r);background:var(--pc-nav);color:#fff}
@media (min-width:1200px){.city-lg-request{grid-template-columns:minmax(0,1fr) 360px}}
.city-lg-request__title{margin:0!important;font-size:22px;line-height:1.3;font-weight:700}
.city-lg-request__offer{margin:6px 0 0!important;color:rgba(255,255,255,.9)}
.city-lg-request__form{display:grid;gap:10px}
.city-lg-request .pc-input{border-color:#fff}
.city-lg-request .pc-consent{color:rgba(255,255,255,.85)}
.city-lg-request .pc-consent a{color:#fff}
.city-lg-request :focus-visible{outline-color:#fff}
.city-lg-request .modal__error-message{position:static;display:none;color:#ffd0d0;font-size:14px}
.city-lg-request .modal__error-message.show{display:block}
.city-lg-rent{display:grid;gap:16px 40px;align-items:start}
@media (min-width:1200px){.city-lg-rent{grid-template-columns:minmax(0,1fr) 340px}}
@media (max-width:1199px){.city-lg-rent .city-photo{max-width:480px}}
.city-lg-chain{counter-reset:c;list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}
.city-lg-chain li{counter-increment:c;display:flex;align-items:center;gap:12px;margin:0;padding:14px 16px;border:1px solid var(--pc-line);border-radius:var(--pc-r);font-weight:600;line-height:1.35;list-style:none}
.city-lg-chain li::before{content:counter(c);flex:none;width:32px;height:32px;border-radius:50%;background:var(--pc-grad);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.city-lg-figs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 20px;padding:0;list-style:none;max-width:720px;background:var(--pc-line);border:1px solid var(--pc-line);border-radius:var(--pc-r);overflow:hidden}
.city-lg-figs li{background:#fff;padding:14px 16px;display:flex;flex-direction:column;gap:2px;margin:0;list-style:none}
.city-lg-figs li::before{content:none}
.city-lg-figs b{font-size:22px;font-weight:700;line-height:1.2}
.city-lg-figs span{font-size:15px;color:var(--pc-muted)}
@media (max-width:479px){.city-lg-figs{grid-template-columns:1fr}}
@media (max-width:991px){.city-lg-figs span,.city-lg-more{font-size:16px}}
.city-lg-specs>li{padding:0;background:none}
.city-lg-specs a{display:flex;flex-direction:column;gap:6px;height:100%;padding:16px 18px;background:var(--pc-light);border-radius:var(--pc-r);color:var(--pc-ink)!important;text-decoration:none}
.city-lg-specs a:hover b{color:var(--pc-red)}
.city-lg-specs b{margin:0}

/* ---------- «Доставка» (template-parts/delivery-city.php; макет design/city-dostavka) ---------- */
.city-card--delivery{padding-top:8px}
.pc-delivery .city-lead{margin-top:22px}
.city-dhero{display:grid;gap:4px 32px}
@media (min-width:992px){.city-dhero.has-photo{grid-template-columns:minmax(0,1fr) 220px;align-items:start}}
@media (min-width:1200px){.city-dhero.has-photo{grid-template-columns:minmax(0,1fr) 260px}}
@media (min-width:1440px){.city-dhero.has-photo{grid-template-columns:minmax(0,1fr) 300px}}
@media (max-width:991px){.city-dhero .city-photo{max-width:400px;margin:12px 0 4px}}
.pc-delivery .city-actions{margin:0}
/* «текст + плашка/карта/фото» в две колонки на ≥ 1200 */
@media (min-width:1200px){
  .city-split--wide.has-photo{grid-template-columns:minmax(0,1fr) 340px}
  .city-split--side.has-photo{grid-template-columns:minmax(0,1fr) 260px}
  .city-split--map.has-photo .pc-map{margin:0;aspect-ratio:4/5;max-height:none}
  .city-split--map.has-photo .pc-map__card{left:10px;right:10px;max-width:none}
}
@media (min-width:1440px){.city-split--wide.has-photo{grid-template-columns:minmax(0,1fr) 380px}.city-split--side.has-photo{grid-template-columns:minmax(0,1fr) 320px}}
@media (max-width:1199px){.city-split--wide .city-photo,.city-split--side .city-photo{max-width:480px;margin:8px 0 12px}}
.city-split .pc-map{margin:20px 0 16px}
/* Выгрузка и простой */
.city-unload{display:grid;gap:20px 32px;align-items:start}
@media (min-width:1200px){.city-unload{grid-template-columns:minmax(0,1fr) 320px}} /* как в макете (design/city-dostavka): с 1200; контейнер темы в px с 26.10.2026, на 1280 колонка таблицы 442 px */
@media (min-width:768px) and (max-width:1199px){.city-idle{max-width:420px}}
.city-unload .pc-tbl tbody th{width:34%}
.city-idle{padding:16px 18px 12px;border:2px solid var(--pc-ink);border-radius:var(--pc-r)}
.city-idle__title{margin:0 0 12px!important;font-weight:700;line-height:1.35}
.city-idle .pc-fs{margin:0 0 14px}
.city-idle .pc-receipt{margin:0}
.city-idle .pc-receipt__total dd{font-size:24px}
.city-idle .pc-mix__legend{margin:0 0 10px}
.city-tline{position:relative;display:flex;height:26px;margin:4px 0 8px;border-radius:13px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1px #d9d2d2}
.city-tline i{display:block;height:100%}
.city-t-free,.city-sw-free{background:#514747}
.city-t-idle{background:var(--pc-grad)}
.city-t-round{background:repeating-linear-gradient(135deg,#cfc6c6 0 5px,#fff 5px 10px);box-shadow:inset 0 0 0 1px #cfc6c6}
@media (max-width:991px){.city-idle .pc-mix__legend{font-size:16px}}
/* Бетононасос: абзац и фото слева, факты справа наверху; таблица «длина → безнал / наличные» */
.city-split--pump{display:grid;gap:8px 40px;align-items:start}
.city-split--pump .city-photo{margin:4px 0 16px}
@media (min-width:1200px){
  .city-split--pump{grid-template-columns:minmax(0,1fr) 260px;grid-template-rows:auto 1fr}
  .city-split--pump>.pc-prose{grid-column:1;grid-row:1}
  .city-split--pump>.city-pump-facts{grid-column:2;grid-row:1 / span 2;grid-template-columns:1fr;margin:0}
  .city-split--pump>.city-photo{grid-column:1;grid-row:2;margin:8px 0 16px}
}
@media (min-width:1440px){.city-split--pump{grid-template-columns:minmax(0,1fr) 320px}}
.city-pump-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 0 20px;background:var(--pc-line);border:1px solid var(--pc-line);border-radius:var(--pc-r);overflow:hidden;max-width:720px}
.city-pump-facts div{background:#fff;padding:12px 14px;display:flex;flex-direction:column-reverse;gap:2px}
.city-pump-facts dt{font-size:14px;color:var(--pc-muted);line-height:1.35;font-weight:400}
.city-pump-facts dd{margin:0;font-size:20px;font-weight:700;line-height:1.2}
@media (max-width:640px){.city-pump-facts{grid-template-columns:1fr 1fr}.city-pump-facts div:last-child{grid-column:1 / -1}}
@media (max-width:991px){.city-pump-facts dt{font-size:16px}.city-pump-facts dd{font-size:18px}}
.pc-tbl caption.city-cap{text-align:left;font-weight:600;padding:0 0 8px;caption-side:top}
.city-tbl-pump{max-width:820px}
.city-tbl-pump tbody th{width:34%}
.city-pp{display:inline-flex;flex-direction:column;align-items:flex-end;line-height:1.3}
.city-pp b{font-weight:600;color:var(--pc-red);font-size:17px}
.city-pp small{font-size:14px;color:var(--pc-muted)}
.city-pp--tbd{color:var(--pc-muted);font-style:italic}
.pc-tbl th small{display:block;font-weight:500;color:var(--pc-muted);font-size:14px}
@media (max-width:991px){.city-pp small,.pc-tbl th small{font-size:16px}}
@media (max-width:640px){.city-tbl-pump tbody th{width:auto}.city-tbl-pump .city-boom{flex:1}}
.city-boom{display:flex;flex-direction:column;align-items:stretch;gap:6px;max-width:220px}
.city-boom span{white-space:nowrap;font-weight:500;color:#514747}
.city-boom strong{font-weight:700;color:var(--pc-ink)}
.city-boom i{display:block;width:100%;height:6px;border-radius:4px;background:var(--pc-light)}
.city-boom b{display:block;height:100%;border-radius:4px;background:#514747}
@media (max-width:379px){.city-boom i{display:none}}
.city-split2{display:grid;gap:8px 40px;align-items:start}
@media (min-width:1200px){.city-split2.has-text{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.city-extras{max-width:560px}
@media (max-width:991px){.city-tbl-plain{font-size:16px}}
/* Шаги, чек-лист */
.pc-steps b.pc-steps__inl{display:inline;margin:0}
.city-check{list-style:none;margin:0;padding:0;max-width:70ch;border-top:1px solid var(--pc-line)}
.city-check li{position:relative;margin:0;padding:12px 0 12px 40px;border-bottom:1px solid var(--pc-line);list-style:none}
.city-check li::before{content:"";position:absolute;left:6px;top:17px;width:16px;height:8px;border-left:3px solid var(--pc-red);border-bottom:3px solid var(--pc-red);transform:rotate(-45deg)}
.pc-tbl--text td{line-height:1.45}
.pc-delivery .pc-tbl tbody th{font-weight:600}

/* ===== Иконки старого сайта (design/icons-2026-10-21/spec.md, Sam 21.10.2026) ===== */
/* «Преимущества компании» — иконка в круглой подложке 72 px с кольцом 6 px */
.city-lg-cards--ico{grid-template-columns:1fr}
@media (min-width:600px){.city-lg-cards--ico{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.city-lg-cards--ico{grid-template-columns:repeat(4,minmax(0,1fr))}}
.city-lg-cards--ico>li{position:relative;padding:18px 18px 18px 104px;min-height:108px}
.city-lg-ico{position:absolute;left:18px;top:18px;width:72px;height:72px;border-radius:50%;background:#fff;border:6px solid #e9e5e5;display:flex;align-items:center;justify-content:center}
.city-lg-ico img{display:block;max-width:36px;max-height:40px;width:auto;height:auto}
@media (min-width:1100px){.city-lg-cards--ico>li{padding:106px 20px 20px}.city-lg-ico{left:20px;top:20px}}
@media (max-width:359px){.city-lg-cards--ico>li{padding-left:18px;padding-top:102px}}
/* «Выполняем шаги работ» — крупные иконки со стрелками */
.city-lg-chain--ico{gap:60px;justify-items:center;grid-template-columns:1fr;max-width:1100px}
.city-lg-chain--ico li{position:relative;flex-direction:column;justify-content:flex-start;gap:12px;padding:0;border:0;border-radius:0;text-align:center;font-size:17px;max-width:280px;width:100%;background:none}
.city-lg-chain--ico li::before{content:none}
.city-lg-step__ico{display:flex;align-items:flex-end;justify-content:center;height:84px}
.city-lg-step__ico img{display:block;height:100%;width:auto}
.city-lg-chain--ico li:not(:last-child)::after{content:"";position:absolute;left:50%;bottom:-40px;width:40px;height:18px;transform:translateX(-50%) rotate(90deg);background:url(../img/steps-arrow.svg) center/contain no-repeat}
@media (min-width:992px){
  .city-lg-chain--ico{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;justify-items:stretch}
  .city-lg-chain--ico li{max-width:none;padding:0 14px;font-size:18px}
  .city-lg-step__ico{height:100px}
  .city-lg-chain--ico li:not(:last-child)::after{left:auto;right:0;bottom:auto;top:41px;width:44px;height:19px;transform:translateX(50%)}
}
@media (min-width:1200px){.city-lg-step__ico{height:112px}.city-lg-chain--ico li:not(:last-child)::after{top:47px}}
/* галочки check.svg (лаборатория на главной) */
.city-lg-ticks--svg li::before,.city-check--svg li::before{left:2px;top:16px;width:20px;height:16px;border:0;transform:none;background:url(../img/check.svg) center/contain no-repeat}

/* правило 9 м³ под тарифами «Доставки» — заметка со значком circle-info (card-dostavka.md, Д1) */
.city-note{position:relative;margin:14px 0 0;padding:12px 14px 12px 46px;border-radius:6px;background:var(--pc-tint);max-width:70ch}
.city-note::before{content:"";position:absolute;left:14px;top:14px;width:20px;height:20px;background:url(../img/circle-info.svg) center/contain no-repeat}
.pc .city-note p{margin:0}
/* подписи шагов «От заявки до выгрузки» (icon-blocks.md, 23.10.2026) */
.city-lg-chain--ico li b{display:block;font-weight:700}
.city-lg-step__t{display:block;font-size:15px;line-height:1.4;color:var(--pc-muted);font-weight:400}
