/* ==================================================================
   Kelpie_v2 — Стоимость, фронтенд
   «Закрытые» стили: блок изолирован от глобальных стилей сайта и темы.
   База зафиксирована через !important + сброс наследования, поэтому
   чистка/перетряска глобального CSS не должна ломать вид блока.
   Все правила скоупированы внутри .kbv2-pr.

   Брейкпоинты (адаптив, без горизонтального переполнения на 320/360/420):
     ≤900px — двухколоночная сетка схлопывается в 1 колонку, showcase центрируется и сужается;
     ≤768px — межблочный отступ снизу 56px (общий ритм страницы);
     ≤560px — панель цена/срок вертикальная, CTA на всю ширину, паддинги карточки меньше;
     ≤420px — заголовок/цифры ещё мельче, минимальные паддинги, всё в один столбец без overflow.
   ================================================================== */

/* ── Защитный сброс ───────────────────────────────────────────── */
.kbv2-pr,
.kbv2-pr *,
.kbv2-pr *::before,
.kbv2-pr *::after {
	box-sizing: border-box !important;
}

/* ── typography firewall: вернуть наследование голым элементам, чтобы темовые `p{font-size}` / `h*{}` не продавливали блок; классовые правила ниже всё равно выигрывают ── */
.kbv2-pr :where(p,h1,h2,h3,h4,h5,h6,ul,ol,li,blockquote,figure,figcaption,small,strong,em,b,i,span,a,button,input,label) { font-size: inherit; line-height: inherit; font-family: inherit; }


.kbv2-pr {
	--pr-ink:#16243B;
	--pr-ink-soft:#34425C;
	--pr-mute:#727C8C;
	--pr-paper:#FFFFFF;
	--pr-line:#E5E9F1;
	--pr-soft:#F4F7FB;
	--pr-orange:#FF6B1A;
	--pr-orange-deep:#E85B0E;
	--pr-blue:#0088C4;
	--pr-blue-deep:#006F9F;
	--pr-blue-soft:#E2F2F9;
	--pr-blue-soft2:#EFF8FC;
	--pr-blue-line:#CDE8F4;
	--pr-green:#22A35A;
	--pr-green-deep:#1B8F4D;
	--pr-green-soft:#E5F6EC;
	--pr-grid:#D9E4F2;

	max-width:1200px !important;
	margin:0 auto 88px !important;
	padding:0 20px !important;
	font-family:'Manrope', system-ui, -apple-system, "Segoe UI", sans-serif !important;
	font-size:16px !important;
	line-height:1.5 !important;
	text-align:left !important;
	color:var(--pr-ink) !important;
	background:none !important;
}

/* Сброс наследуемых элементов */
.kbv2-pr h2,
.kbv2-pr p,
.kbv2-pr ul,
.kbv2-pr li,
.kbv2-pr div,
.kbv2-pr span { margin:0; padding:0; }
.kbv2-pr a { color:inherit !important; text-decoration:none !important; }
.kbv2-pr ul { list-style:none !important; }
.kbv2-pr img { max-width:100% !important; height:auto !important; display:block !important; }

/* ── Карточка ─────────────────────────────────────────────────── */
.kbv2-pr__card{
	position:relative !important; overflow:hidden !important;
	background:var(--pr-paper) !important;
	border:1px solid var(--pr-line) !important;
	border-radius:28px !important;
	padding:38px 44px 42px !important;
	box-shadow:0 1px 0 rgba(22,36,59,.03), 0 26px 52px -34px rgba(22,36,59,.22) !important;
}
/* лёгкая «синька»-сетка в углу */
.kbv2-pr__card::before{
	content:"" !important; position:absolute !important; inset:0 !important; pointer-events:none !important;
	background-image:linear-gradient(var(--pr-grid) 1px,transparent 1px),linear-gradient(90deg,var(--pr-grid) 1px,transparent 1px) !important;
	background-size:34px 34px !important; opacity:.5 !important;
	-webkit-mask-image:radial-gradient(120% 130% at 90% 0%,#000 20%,transparent 64%) !important;
	        mask-image:radial-gradient(120% 130% at 90% 0%,#000 20%,transparent 64%) !important;
}

/* ── Сетка ────────────────────────────────────────────────────── */
.kbv2-pr__grid{
	position:relative !important; z-index:1 !important;
	display:grid !important; grid-template-columns:340px 1fr !important; gap:54px !important; align-items:center !important;
}

/* ── Showcase (документ) ──────────────────────────────────────── */
.kbv2-pr__showcase{ position:relative !important; min-width:0 !important; }
.kbv2-pr__back{
	position:absolute !important; inset:0 !important; border-radius:13px !important; background:#EDF2F8 !important;
	box-shadow:inset 0 0 0 1px #E1E8F1 !important;
}
.kbv2-pr__back--1{ transform:rotate(-4.5deg) translate(-11px,7px) !important; }
.kbv2-pr__back--2{ transform:rotate(3deg) translate(10px,4px) !important; }
.kbv2-pr__docframe{
	position:relative !important; background:#fff !important; border:1px solid var(--pr-line) !important;
	border-radius:13px !important; padding:9px !important;
	box-shadow:0 28px 56px -30px rgba(15,26,43,.4) !important;
}
.kbv2-pr__docimg{
	width:100% !important; height:auto !important; aspect-ratio:1/1.41 !important;
	object-fit:cover !important; border-radius:6px !important; display:block !important;
	background:var(--pr-soft) !important;
}
.kbv2-pr__doccap{
	position:relative !important; z-index:1 !important; margin-top:16px !important; text-align:center !important;
	font-family:'Manrope', system-ui, sans-serif !important; font-weight:600 !important; font-size:10px !important;
	letter-spacing:.5px !important; color:var(--pr-mute) !important; line-height:1.6 !important;
}

/* ── Контент ──────────────────────────────────────────────────── */
.kbv2-pr__body{ min-width:0 !important; }
.kbv2-pr__eyebrow{
	font-family:'Manrope', system-ui, sans-serif !important; font-weight:700 !important; font-size:11.5px !important;
	letter-spacing:2px !important; color:var(--pr-mute) !important; text-transform:uppercase !important;
}
.kbv2-pr__head{
	margin:11px 0 0 !important; font-family:'Manrope', system-ui, sans-serif !important; font-weight:800 !important;
	font-size:31px !important; line-height:1.16 !important; letter-spacing:-.4px !important; color:var(--pr-ink) !important;
}
.kbv2-pr__head strong{ color:var(--pr-blue) !important; font-weight:800 !important; }

/* Панель цена / срок */
.kbv2-pr__panel{
	display:flex !important; width:100% !important; align-items:center !important; gap:24px !important; margin-top:20px !important;
	background:linear-gradient(120deg,var(--pr-blue-soft2),var(--pr-blue-soft)) !important;
	border:1px solid var(--pr-blue-line) !important; border-radius:18px !important; padding:20px 30px !important;
}
.kbv2-pr__price{ display:flex !important; align-items:baseline !important; gap:9px !important; }
.kbv2-pr__from{ font-family:'Manrope', system-ui, sans-serif !important; font-weight:700 !important; font-size:16px !important; color:var(--pr-blue-deep) !important; }
.kbv2-pr__num{ font-family:'Manrope', system-ui, sans-serif !important; font-weight:900 !important; font-size:32px !important; line-height:.9 !important; letter-spacing:-1px !important; color:var(--pr-ink) !important; }
.kbv2-pr__cur{ font-family:'Manrope', system-ui, sans-serif !important; font-weight:800 !important; font-size:20px !important; color:var(--pr-ink) !important; }
.kbv2-pr__panel-right{ margin-left:auto !important; display:flex !important; align-items:center !important; gap:24px !important; }
.kbv2-pr__panel-div{ width:1px !important; align-self:stretch !important; min-height:44px !important; background:var(--pr-blue-line) !important; }
.kbv2-pr__term-lab{ font-family:'Manrope', system-ui, sans-serif !important; font-weight:700 !important; font-size:10px !important; letter-spacing:1.3px !important; text-transform:uppercase !important; color:var(--pr-blue-deep) !important; margin-bottom:6px !important; }
.kbv2-pr__term-v{ display:flex !important; align-items:center !important; gap:8px !important; white-space:nowrap !important; font-family:'Manrope', system-ui, sans-serif !important; font-weight:800 !important; font-size:17px !important; color:var(--pr-ink) !important; }
.kbv2-pr__term-dot{ width:9px !important; height:9px !important; border-radius:50% !important; background:var(--pr-green) !important; flex:0 0 auto !important; }

/* Список «что вы получите» */
.kbv2-pr__inclh{ font-family:'Manrope', system-ui, sans-serif !important; font-weight:800 !important; font-size:14.5px !important; color:var(--pr-ink) !important; margin:26px 0 14px !important; }
.kbv2-pr__incl{ list-style:none !important; margin:0 !important; padding:0 !important; display:grid !important; grid-template-columns:1fr !important; gap:14px !important; }
.kbv2-pr__incl li{ display:flex !important; gap:11px !important; align-items:flex-start !important; font-size:15px !important; line-height:1.42 !important; color:var(--pr-ink-soft) !important; }
.kbv2-pr__ck{ flex:0 0 auto !important; width:21px !important; height:21px !important; border-radius:50% !important; background:var(--pr-green-soft) !important; color:var(--pr-green-deep) !important; display:flex !important; align-items:center !important; justify-content:center !important; margin-top:1px !important; }
.kbv2-pr__ck svg{ width:11px !important; height:11px !important; }
.kbv2-pr__incl li b,
.kbv2-pr__incl li strong{ color:var(--pr-ink) !important; font-weight:700 !important; }

/* Гарантия */
.kbv2-pr__guard{
	margin-top:22px !important; display:flex !important; align-items:center !important; gap:11px !important; width:100% !important;
	background:var(--pr-green-soft) !important; border:1px solid #BFE6CD !important; border-radius:13px !important;
	padding:12px 18px !important; font-size:13px !important; color:var(--pr-ink) !important; line-height:1.4 !important;
}
.kbv2-pr__guard svg{ width:16px !important; height:16px !important; flex:0 0 auto !important; color:var(--pr-green-deep) !important; }
.kbv2-pr__guard b,
.kbv2-pr__guard strong{ color:var(--pr-ink) !important; font-weight:700 !important; }

/* CTA */
.kbv2-pr__cta{ margin-top:24px !important; display:flex !important; align-items:center !important; gap:18px !important; flex-wrap:wrap !important; }
.kbv2-pr__btn{
	cursor:pointer !important; display:inline-flex !important; align-items:center !important; gap:11px !important;
	background:var(--pr-orange) !important; color:#fff !important;
	font-family:'Manrope', system-ui, sans-serif !important; font-weight:800 !important; font-size:15px !important;
	padding:15px 30px !important; border:none !important; border-radius:999px !important;
	text-decoration:none !important;
	box-shadow:0 14px 30px -12px rgba(255,107,26,.55) !important;
	transition:transform .16s, box-shadow .16s, background .16s !important;
}
.kbv2-pr__btn:hover{ background:var(--pr-orange-deep) !important; color:#fff !important; transform:translateY(-2px) !important; box-shadow:0 18px 34px -12px rgba(255,107,26,.68) !important; }
.kbv2-pr__ar{ display:inline-block !important; transition:transform .16s !important; }
.kbv2-pr__btn:hover .kbv2-pr__ar{ transform:translateX(3px) !important; }
.kbv2-pr__note{ font-size:13px !important; color:var(--pr-mute) !important; line-height:1.4 !important; }

/* ── Адаптив ──────────────────────────────────────────────────── */
@media (max-width:900px){
	.kbv2-pr__card{ padding:26px 22px 30px !important; border-radius:22px !important; }
	.kbv2-pr__head{ font-size:26px !important; }
	.kbv2-pr__grid{ grid-template-columns:1fr !important; gap:26px !important; }
	.kbv2-pr__showcase{ max-width:260px !important; margin:0 auto !important; }
}

@media (max-width:768px){
	.kbv2-pr{ margin-bottom:56px !important; }
}

@media (max-width:560px){
	.kbv2-pr__card{ padding:22px 16px 26px !important; border-radius:18px !important; }
	.kbv2-pr__head{ font-size:22px !important; }
	.kbv2-pr__showcase{ max-width:230px !important; }
	.kbv2-pr__panel{ flex-direction:column !important; align-items:stretch !important; gap:0 !important; padding:18px 20px !important; }
	.kbv2-pr__panel-right{ margin-left:0 !important; margin-top:14px !important; padding-top:14px !important; border-top:1px solid var(--pr-blue-line) !important; }
	.kbv2-pr__panel-div{ display:none !important; }
	.kbv2-pr__incl li{ font-size:14.5px !important; }
	.kbv2-pr__guard{ align-items:flex-start !important; }
	.kbv2-pr__guard svg{ margin-top:1px !important; }
	.kbv2-pr__cta{ flex-direction:column !important; align-items:stretch !important; gap:12px !important; margin-top:22px !important; }
	.kbv2-pr__btn{ width:100% !important; justify-content:center !important; }
	.kbv2-pr__note{ text-align:center !important; }
}

@media (max-width:420px){
	.kbv2-pr{ padding:0 14px !important; }
	.kbv2-pr__card{ padding:18px 13px 22px !important; }
	.kbv2-pr__head{ font-size:20px !important; }
	.kbv2-pr__showcase{ max-width:200px !important; }
	.kbv2-pr__panel{ padding:16px 16px !important; }
	.kbv2-pr__num{ font-size:28px !important; }
	.kbv2-pr__cur{ font-size:18px !important; }
	.kbv2-pr__from{ font-size:15px !important; }
	.kbv2-pr__term-v{ font-size:16px !important; }
	.kbv2-pr__btn{ padding:14px 20px !important; font-size:14px !important; }
}


/* === фронт: каркас-карточка плоский — без рамки, сетки-фона, тени (как в макете на странице) === */
.kbv2-pr__card { background:transparent !important; border:none !important; box-shadow:none !important; border-radius:0 !important; padding:0 !important; overflow:visible !important; }
.kbv2-pr__card::before { display:none !important; }


/* === опциональная рамка с сеткой (тумблер в админке, по умолчанию выкл) === */
.kbv2-pr.is-framed { background:#fff !important; border:1px solid #E3E9F2 !important; border-radius:24px !important; padding:32px 34px !important; box-shadow:0 1px 0 rgba(22,36,59,.03), 0 26px 52px -34px rgba(22,36,59,.22) !important; overflow:hidden !important; position:relative !important; }
.kbv2-pr.is-framed > * { position:relative !important; z-index:1 !important; }
.kbv2-pr.is-framed::before { content:"" !important; position:absolute !important; inset:0 !important; pointer-events:none !important; z-index:0 !important; border-radius:24px !important; background-image:linear-gradient(#D9E4F2 1px,transparent 1px),linear-gradient(90deg,#D9E4F2 1px,transparent 1px) !important; background-size:34px 34px !important; opacity:.55 !important; -webkit-mask-image:radial-gradient(120% 130% at 92% 0%,#000 22%,transparent 66%) !important; mask-image:radial-gradient(120% 130% at 92% 0%,#000 22%,transparent 66%) !important; }
@media (max-width:768px){ .kbv2-pr.is-framed { padding:22px 18px !important; } }
