/* footer: v4-ft */
.v4-ft{--navy:#323232;--navy-d:#1a1a1a;font-family:'Inter',sans-serif;background:var(--navy);color:rgba(255,255,255,.65);padding:64px 0 0}
.v4-ft__top{display:grid;grid-template-columns:1.1fr 2fr;gap:48px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.1)}
.v4-ft__brand{display:flex;flex-direction:column;gap:8px}
.v4-ft__logo{font-size:19px;font-weight:400;color:#fff;letter-spacing:2px;margin-bottom:6px}
.v4-ft__desc{font-size:13.5px;color:rgba(255,255,255,.65);margin-bottom:6px}
.v4-ft__addr{font-size:13px;line-height:1.6;color:rgba(255,255,255,.65);margin-bottom:10px}
.v4-ft__tel{font-size:17px;font-weight:800;color:#fff;text-decoration:none}
.v4-ft__tel:hover{color:#fff}
.v4-ft__mail{font-size:13.5px;color:rgba(255,255,255,.65);text-decoration:none;margin-bottom:14px}
.v4-ft__mail:hover{color:#fff}
.v4-btn-red{background:var(--red);color:#fff;padding:12px 20px;font-size:13.5px;font-weight:700;font-family:inherit;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:fit-content;margin:6px 0 10px;transition:background .18s,transform .16s cubic-bezier(.22,.61,.36,1),box-shadow .2s}
.v4-btn-red:hover{background:var(--red-h);transform:translateY(-2px);box-shadow:0 18px 44px rgba(20,30,50,.16)}
.v4-ft__regions{font-size:12.5px;font-weight:700;color:#fff;text-decoration:none;width:fit-content;border-bottom:1px solid rgba(255,255,255,.3)}
.v4-ft__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.v4-ft__col{display:flex;flex-direction:column;gap:10px}
.v4-ft__col h4{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;margin-bottom:4px}
.v4-ft__col a{font-size:13.5px;color:rgba(255,255,255,.65);text-decoration:none;transition:color .15s}
.v4-ft__col a:hover{color:#fff}
.v4-ft__more{color:#fff !important;font-weight:700}
.v4-ft__bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:22px 0;font-size:12px;color:rgba(255,255,255,.45)}
.v4-ft__legal{display:flex;gap:20px}
.v4-ft__legal a{color:rgba(255,255,255,.45);text-decoration:none}
.v4-ft__legal a:hover{color:#fff}
@media(max-width:900px){ .v4-ft__top{grid-template-columns:1fr;gap:32px} .v4-ft__cols{grid-template-columns:repeat(2,1fr)} }
@media(max-width:560px){ .v4-ft__cols{grid-template-columns:1fr} }
.v4-ft .wrap{padding-left:40px;padding-right:40px}


/* хиро — плоский, без баннера (как на бою у /posobie-na-pogrebenie/) */
.b10{ min-height:76px; overflow:visible !important; background:#fff !important; }
#b10StickyNav{ display:block !important; }
#b10NavInner{ visibility:hidden; }
.b10-outer{ overflow:visible !important; }
.b10-nav-list > li > a{ color:var(--navy)!important; }
.b10-nav-list > li > a:hover, .b10-has-drop:hover>a, .b10-has-drop.is-open>a{ color:var(--red)!important; }
.b10-nav-list > li > a svg{ opacity:.6!important; }
.b10-nav-search{ border:1px solid var(--line); }
.b10-drop{ transition:none !important; }
.b10-has-drop>a svg{ transition:none !important; }

.pi-top{ background:#fff; padding:32px 0 0; }
.pi-top__wrap{ max-width:1280px; margin:0 auto; padding:0 40px; }
.pi-top h1{ font-size:28px; font-weight:800; color:var(--navy); margin:0 0 10px; }
.pi-crumbs{ display:flex; flex-wrap:wrap; align-items:center; gap:6px; font-size:12.5px; color:var(--muted); }
.pi-crumbs a{ color:var(--muted); text-decoration:none; }
.pi-crumbs a:hover{ color:var(--red); }
.pi-crumbs span{ color:#c7cbd1; }
.pi-crumbs > span:last-child{ color:var(--red); font-weight:600; }

.pp-wrap{ padding:0; }
.pp-seo{ padding:24px 0 64px; background:#fff; }
.pp-seo__wrap{ max-width:1280px; margin:0 auto; padding:0 40px; }

.ppx-rows { display:flex; flex-direction:column; }
.ppx-row { padding:32px 0; border-top:1px solid var(--line); }
.ppx-row:first-child { border-top:none; padding-top:0; }
.ppx-row:last-child { border-bottom:1px solid var(--line); }
.ppx-body{ min-width:0; }
.ppx-title { font-size:20px; font-weight:800; color:var(--navy); margin-bottom:10px; max-width:640px; }
.ppx-lead { font-size:15px; line-height:1.7; color:var(--muted); max-width:820px; margin:0 0 8px; }
.ppx-phone-inline { display:inline-flex; align-items:center; gap:5px; background:rgba(168,35,25,.08); color:var(--red); font-weight:800; text-decoration:none; padding:2px 10px 2px 6px; border-radius:999px; white-space:nowrap; }
.ppx-phone-inline:hover { background:rgba(168,35,25,.16); }
.ppx-list{ display:flex; flex-direction:column; gap:10px; margin:14px 0; padding:0; list-style:none; }
.ppx-list--check li{ position:relative; padding-left:30px; font-size:14.5px; line-height:1.6; color:var(--navy); }
.ppx-list--check li::before{ content:''; position:absolute; left:0; top:2px; width:18px; height:18px; background:var(--red); mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/14px; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/14px; border-radius:5px; }
.ppx-list--plain{ counter-reset:ppxnum; gap:8px; }
.ppx-list.ppx-list--plain li{ counter-increment:ppxnum; position:relative; padding-left:26px; font-size:14.5px; line-height:1.6; color:var(--muted); }
.ppx-list.ppx-list--plain li::before{ content:counter(ppxnum)'.'; position:absolute; left:0; top:0; font-weight:800; font-size:13px; color:var(--red); }

/* сводка сумм — 3 карточки в ряд */
.pos-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin:20px 0 8px; }
.pos-stat{ background:#f8f9fa; border:1px solid var(--line); border-radius:16px; padding:24px 22px; text-align:center; }
.pos-stat--main{ background:var(--navy); border-color:var(--navy); }
.pos-stat__num{ font-size:clamp(24px,3vw,30px); font-weight:800; color:var(--navy); letter-spacing:-.01em; }
.pos-stat--main .pos-stat__num{ color:#fff; }
.pos-stat__label{ font-size:13px; color:var(--muted); margin-top:6px; line-height:1.4; }
.pos-stat--main .pos-stat__label{ color:rgba(255,255,255,.65); }
.pos-stat__plus{ font-size:20px; color:#c7cbd1; align-self:center; }
@media(max-width:780px){ .pos-stats{ grid-template-columns:1fr; } }

/* таблица категорий — переиспользован готовый компонент .ppx-pricetable (uslugi-ritualnyy-agent.css) с уже исправленными артефактами */
.ppx-pricetable { position:relative; margin-top:0; background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; box-shadow:0 0 16px rgba(20,30,50,.06); }
.ppx-pricetable table { position:relative; z-index:1; width:100%; border-collapse:collapse; margin:0; max-width:none; border:none; border-radius:0; background:none; box-shadow:none; }
.ppx-pricetable thead th { background:var(--red); color:#fff; font-size:13px; font-weight:700; text-align:left; padding:14px 20px; }
.ppx-pricetable thead th:last-child { text-align:right; white-space:nowrap; }
.ppx-pricetable tbody tr { transition:background .18s; }
.ppx-pricetable tbody tr:hover { background:#f5f5f5; }
.ppx-pricetable tbody td { font-size:13.5px; color:var(--text); line-height:1.5; padding:14px 20px; border-top:1px solid var(--line); vertical-align:top; }
.ppx-pricetable tbody td small { color:var(--muted); font-size:12px; display:block; margin-top:2px; }
.ppx-pricetable-val { color:var(--red); font-weight:700; white-space:nowrap; }
.ppx-pricetable-wrap{ overflow-x:auto; }
.ppx-pricetable thead th::before { content:none; }
@media(max-width:860px){ .ppx-pricetable thead th, .ppx-pricetable tbody td { padding:11px 14px; } .ppx-pricetable table{ min-width:640px; } }

.pos-note{ background:rgba(168,35,25,.06); border-left:3px solid var(--red); border-radius:0 10px 10px 0; padding:14px 18px; font-size:13.5px; line-height:1.6; color:var(--navy); margin:16px 0; }

/* два параллельных списка документов (по сценарию) — карточки side-by-side, а не два вертикальных списка подряд */
.pos-doccards{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:14px; }
.pos-doccard{ background:#f8f9fa; border:1px solid var(--line); border-radius:14px; padding:22px 24px; min-width:0; }
.pos-doccard h3{ font-size:14px; font-weight:800; color:var(--navy); margin:0 0 14px; }
.pos-doccard ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; }
.pos-doccard li{ font-size:13.5px; line-height:1.55; color:var(--muted); position:relative; padding-left:18px; }
.pos-doccard li::before{ content:''; position:absolute; left:0; top:7px; width:6px; height:6px; border-radius:50%; background:var(--red); }
@media(max-width:780px){ .pos-doccards{ grid-template-columns:1fr; } }
