/* /pricing/ — компактные карточки тарифов + сравнение + отдельный блок «Бизнес» */
#section_pricing.pc { --pc-ink:#1f1f1f; --pc-muted:#6b6259; --pc-line:#e9e2d6; --pc-accent:#f7941e; --pc-accent2:#e07b00; --pc-plus:#662d91; --pc-prem:#a67c52; --pc-free:#8a8a8a; --pc-cream:#fff8ee; max-width:1180px; width:auto; padding:0 20px; margin:25px auto 40px; font-family:'Montserrat',sans-serif; color:var(--pc-ink); box-sizing:border-box; }
#section_pricing.pc *, #section_pricing.pc *::before, #section_pricing.pc *::after { box-sizing:border-box; }
#section_pricing.pc h1.title { margin:10px 0 8px; line-height:1.2; }
#section_pricing.pc .pc-intro { text-align:center; color:var(--pc-muted); font-size:14px; margin:0 0 26px; }
#section_pricing.pc .tab_select .ui-tabs-panel { padding:22px; }

/* Карточки */
#section_pricing.pc .pc-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
#section_pricing.pc .pc-cards-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
#section_pricing.pc .pc-card { position:relative; display:flex; flex-direction:column; float:none; width:auto; background:#fff; border:1px solid var(--pc-line); border-radius:14px; padding:16px 18px 16px; min-width:0; box-shadow:0 2px 10px rgba(80,60,30,.05); cursor:pointer; outline:none; transition:border-color .2s, box-shadow .2s; -webkit-tap-highlight-color:transparent; }
#section_pricing.pc .pc-card:hover { border-color:#e2d3bb; }
#section_pricing.pc .pc-card.is-selected { border-color:var(--pc-sel,var(--pc-accent)); box-shadow:0 0 0 1px var(--pc-sel,var(--pc-accent)),0 4px 16px rgba(80,60,30,.08); }
#section_pricing.pc .pc-card:focus-visible { box-shadow:0 0 0 1px var(--pc-sel,var(--pc-accent)),0 0 0 4px rgba(247,148,30,.28); }
#section_pricing.pc .item_2 { --pc-sel:var(--pc-plus); } #section_pricing.pc .item_3 { --pc-sel:var(--pc-prem); } #section_pricing.pc .item_1 { --pc-sel:#9a9a9a; }
#section_pricing.pc .pc-flag { display:block; min-height:14px; margin:0 0 6px; font-size:11px; line-height:14px; font-weight:600; color:var(--pc-accent2); }
#section_pricing.pc .pc-card.item_3 .pc-flag { color:var(--pc-prem); }
#section_pricing.pc .pc-detail .rotating-border, #section_pricing.pc .pc-business-buy .rotating-border { top:50%; }
#section_pricing.pc .pc-card h2.plan { font-size:20px; line-height:1.2; font-weight:600; margin:0 0 4px; color:var(--pc-ink); }
#section_pricing.pc .pc-card.item_2 h2.plan, #section_pricing.pc .pc-card.item_2 .price { color:var(--pc-plus); }
#section_pricing.pc .pc-card.item_3 h2.plan, #section_pricing.pc .pc-card.item_3 .price { color:var(--pc-prem); }
#section_pricing.pc .pc-card.item_1 .price { color:var(--pc-free); }
#section_pricing.pc .pc-card .description { font-size:12px; line-height:1.4; color:var(--pc-muted); margin:0 0 14px; min-height:34px; }
#section_pricing.pc .pc-card .price { font-size:26px; line-height:1.1; font-weight:700; letter-spacing:-.02em; margin:auto 0 4px; padding-top:14px; border-top:1px solid var(--pc-line); white-space:nowrap; color:var(--pc-accent); }
#section_pricing.pc .pc-period { font-size:12px; color:var(--pc-muted); margin:0; min-height:16px; }
#section_pricing.pc .pc-period b { color:var(--pc-accent2); font-weight:600; }
#section_pricing.pc .pc-actions { display:flex; flex-direction:column; gap:8px; }
#section_pricing.pc .pc-actions .buy, #section_pricing.pc .pc-actions .pc-login, #section_pricing.pc .pc-business-buy .buy, #section_pricing.pc .pc-business-buy .pc-login { display:block; width:100%; margin:0; padding:12px 14px; border:0; border-radius:10px; background:var(--pc-accent); color:#fff; font:700 14px/1.1 'Montserrat',sans-serif; text-align:center; text-decoration:none; white-space:normal; cursor:pointer; transition:opacity .3s; }
#section_pricing.pc .pc-detail.item_2 .buy, #section_pricing.pc .pc-detail.item_2 .pc-login { background:var(--pc-plus); }
#section_pricing.pc .pc-detail.item_3 .buy, #section_pricing.pc .pc-detail.item_3 .pc-login { background:var(--pc-prem); }
#section_pricing.pc .pc-detail.item_1 .pc-login { background:#fff; color:var(--pc-ink); border:1px solid #d8d3ca; }
#section_pricing.pc .buy:hover, #section_pricing.pc .pc-login:hover { opacity:.8; }
#section_pricing.pc .buy[disabled] { background:#ebebeb !important; color:#757674 !important; cursor:default; opacity:1; }
#section_pricing.pc .pc-more { display:block; text-align:center; font-size:13px; font-weight:600; color:var(--pc-accent2); text-decoration:none; padding:4px; }
#section_pricing.pc .pc-card-business { background:var(--pc-cream); border-color:#f0cf9f; box-shadow:inset 0 3px 0 var(--pc-accent),0 2px 10px rgba(80,60,30,.06); }
#section_pricing.pc .pc-card-business h2.plan { color:#a35b08; }

/* Панель выбранного тарифа: все панели в одной ячейке грида — высота не прыгает */
#section_pricing.pc .pc-details { display:grid; margin-top:14px; }
#section_pricing.pc .pc-detail { grid-area:1 / 1; position:relative; float:none; width:auto; min-width:0; background:#fff; border:1px solid var(--pc-line); border-radius:14px; padding:22px 24px; visibility:hidden; opacity:0; transition:opacity .2s ease, visibility 0s linear .2s; display:flex; }
#section_pricing.pc .pc-detail > .ajax { flex:1 1 auto; }
#section_pricing.pc .pc-detail.is-active { visibility:visible; opacity:1; transition:opacity .2s ease; z-index:1; }
#section_pricing.pc .pc-detail-business { background:var(--pc-cream); border-color:#f0cf9f; }
#section_pricing.pc .pc-detail .ajax { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:32px; align-items:start; }
#section_pricing.pc .pc-detail h3 { font-size:18px; font-weight:600; line-height:1.25; margin:0 0 4px; color:var(--pc-ink); }
#section_pricing.pc .pc-detail.item_2 h3 { color:var(--pc-plus); } #section_pricing.pc .pc-detail.item_3 h3 { color:var(--pc-prem); } #section_pricing.pc .pc-detail-business h3 { color:#a35b08; }
#section_pricing.pc .pc-detail-head { font-size:13px; color:var(--pc-muted); margin:0 0 10px; }
#section_pricing.pc .pc-detail ul { list-style:none; margin:0; padding:0; columns:2; column-gap:32px; }
#section_pricing.pc .pc-detail li { break-inside:avoid; position:relative; padding:0 0 0 14px; margin:0 0 8px; font-size:13px; line-height:1.45; color:var(--pc-ink); }
#section_pricing.pc .pc-detail li::before { content:""; position:absolute; left:0; top:.6em; width:5px; height:5px; border-radius:50%; background:var(--pc-sel,var(--pc-accent)); }
#section_pricing.pc .pc-detail-business li::before { background:var(--pc-accent); }
#section_pricing.pc .pc-detail-more { display:inline-block; margin-top:6px; font-size:13px; font-weight:600; color:var(--pc-accent2); text-decoration:none; }
#section_pricing.pc .pc-detail-more:hover { text-decoration:underline; }
#section_pricing.pc .pc-detail-side { border-left:1px solid var(--pc-line); padding-left:24px; }
#section_pricing.pc .pc-detail-price { font-size:26px; font-weight:700; line-height:1.1; letter-spacing:-.02em; margin:0 0 4px; white-space:nowrap; color:var(--pc-accent); }
#section_pricing.pc .pc-detail.item_1 .pc-detail-price { color:var(--pc-free); } #section_pricing.pc .pc-detail.item_2 .pc-detail-price { color:var(--pc-plus); } #section_pricing.pc .pc-detail.item_3 .pc-detail-price { color:var(--pc-prem); } #section_pricing.pc .pc-detail-business .pc-detail-price { color:#a35b08; }
#section_pricing.pc .pc-detail-price small { font-size:14px; font-weight:600; letter-spacing:0; }
#section_pricing.pc .pc-detail-period { font-size:12px; color:var(--pc-muted); margin:0 0 14px; line-height:1.4; }
#section_pricing.pc .pc-compare, #section_pricing.pc .pc-business { scroll-margin-top:90px; }
@media (prefers-reduced-motion:reduce){ #section_pricing.pc .pc-detail, #section_pricing.pc .pc-card { transition:none; } }

/* Сравнение обычных тарифов */
#section_pricing.pc .pc-compare { margin-top:26px; }
#section_pricing.pc .pc-h2 { font-size:18px; font-weight:700; margin:0 0 12px; }
#section_pricing.pc table.pc-table { width:100%; border-collapse:separate; border-spacing:0; table-layout:fixed; background:#fff; border:1px solid var(--pc-line); border-radius:12px; overflow:hidden; font-size:13px; }
#section_pricing.pc table.pc-table th, #section_pricing.pc table.pc-table td { padding:11px 12px; border-bottom:1px solid #f0ebe2; text-align:center; vertical-align:middle; line-height:1.35; word-break:normal; overflow-wrap:normal; hyphens:manual; }
#section_pricing.pc table.pc-table tbody tr:last-child th, #section_pricing.pc table.pc-table tbody tr:last-child td { border-bottom:0; }
#section_pricing.pc table.pc-table tbody th { text-align:left; font-weight:500; color:var(--pc-ink); }
#section_pricing.pc table.pc-table thead th.pc-feature-head { width:36%; }
#section_pricing.pc table.pc-table thead th { background:#faf6ef; vertical-align:bottom; border-bottom:1px solid var(--pc-line); }
#section_pricing.pc table.pc-table .pc-feature-head { text-align:left; font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--pc-muted); font-weight:600; }
#section_pricing.pc .pc-plan-name { display:block; font-size:15px; font-weight:600; }
#section_pricing.pc .pc-plan-price { display:block; font-size:12px; color:var(--pc-muted); font-weight:600; margin-top:2px; white-space:nowrap; }
#section_pricing.pc .pc-plan-head.item_2 .pc-plan-name { color:var(--pc-plus); }
#section_pricing.pc .pc-plan-head.item_3 .pc-plan-name { color:var(--pc-prem); }
#section_pricing.pc table.pc-table tbody tr:hover th, #section_pricing.pc table.pc-table tbody tr:hover td { background:#fffaf2; }
#section_pricing.pc table.pc-table td p { margin:0; font-weight:700; font-size:13px; line-height:1.2; color:var(--pc-ink); }
#section_pricing.pc table.pc-table td p.unlim { color:var(--pc-accent); }
#section_pricing.pc table.pc-table td img { width:16px; height:16px; display:block; margin:0 auto; }
#section_pricing.pc .pc-soon { display:inline-block; font-size:9px; line-height:1; font-weight:600; color:#a46b24; background:#fff1dc; padding:3px 5px; border-radius:4px; margin-left:4px; vertical-align:middle; white-space:nowrap; }

/* Бизнес — отдельный блок */
#section_pricing.pc .pc-business { margin-top:30px; border:1px solid #f0cf9f; border-radius:14px; background:#fff; overflow:hidden; scroll-margin-top:90px; }
#section_pricing.pc .pc-business-head { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:24px 26px; background:var(--pc-cream); }
#section_pricing.pc .pc-business-head h2 { font-size:24px; line-height:1.2; font-weight:600; margin:0 0 6px; }
#section_pricing.pc .pc-business-head p { margin:0; font-size:13px; color:#79654e; line-height:1.5; max-width:620px; }
#section_pricing.pc .pc-business-buy { position:relative; flex:0 0 240px; float:none; width:auto; }
#section_pricing.pc .pc-business-buy .ajax { display:flex; flex-direction:column; gap:6px; }
#section_pricing.pc .pc-business-buy strong { font-size:28px; white-space:nowrap; color:#a35b08; }
#section_pricing.pc .pc-business-buy strong small { font-size:15px; font-weight:600; }
#section_pricing.pc .pc-business-sub { font-size:12px; color:var(--pc-muted); margin-bottom:4px; }
#section_pricing.pc .pc-business-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; padding:24px 26px 8px; }
#section_pricing.pc .pc-business-kicker { margin:0 0 6px !important; font-size:12px !important; font-weight:600; color:#a35b08 !important; }
#section_pricing.pc .pc-business-grid h3 { font-size:16px; font-weight:600; margin:0 0 8px; }
#section_pricing.pc .pc-business-grid p { font-size:13px; line-height:1.65; color:#5f5f66; margin:0; }
#section_pricing.pc .pc-business-includes { margin:18px 26px 0; padding:14px 0 0; border-top:1px solid #f0ebe2; font-size:13px; line-height:1.5; color:#5f5f66; }
#section_pricing.pc .pc-business-includes b { color:var(--pc-ink); font-weight:600; }
#section_pricing.pc .pc-terms { margin:18px 0 0; border-top:1px solid var(--pc-line); padding:16px 26px 20px; font-size:13px; }
#section_pricing.pc .pc-terms summary { cursor:pointer; font-weight:600; }
#section_pricing.pc .pc-terms dl { margin:12px 0 0; }
#section_pricing.pc .pc-terms dl > div { display:grid; grid-template-columns:minmax(180px,1fr) 2fr; gap:20px; padding:12px 0; border-bottom:1px solid #f0ebe2; }
#section_pricing.pc .pc-terms dt { font-weight:600; line-height:1.5; }
#section_pricing.pc .pc-terms dd { margin:0; color:#686870; line-height:1.6; }
#section_pricing.pc .pc-terms > p { color:#686870; line-height:1.6; margin:14px 0 0; }

@media (max-width:900px){
	#section_pricing.pc .pc-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
	#section_pricing.pc .pc-detail .ajax { grid-template-columns:minmax(0,1fr) 220px; gap:22px; }
	#section_pricing.pc .pc-detail ul { columns:1; }
}
@media (max-width:767px){
	#section_pricing.pc { padding:0 12px; margin-top:16px; }
	#section_pricing.pc h1.title { font-size:20px; line-height:1.25; }
	#section_pricing.pc .pc-intro { font-size:12px; margin-bottom:6px; }
	#section_pricing.pc .tab_select .ui-tabs-panel { padding:12px 6px; }
	#section_pricing.pc .pc-cards { gap:10px; }
	#section_pricing.pc .pc-card { padding:14px 12px 12px; border-radius:12px; }
	#section_pricing.pc .pc-card h2.plan { font-size:16px; }
	#section_pricing.pc .pc-card .description { font-size:11px; min-height:30px; margin-bottom:10px; }
	#section_pricing.pc .pc-card .price { font-size:20px; padding-top:10px; }
	#section_pricing.pc .pc-period { font-size:11px; margin-bottom:10px; }
	#section_pricing.pc .pc-card .price { font-size:20px; }
	#section_pricing.pc .pc-flag { font-size:10px; margin-bottom:4px; }
	#section_pricing.pc .pc-details { margin-top:10px; }
	#section_pricing.pc .pc-detail { padding:16px 14px; border-radius:12px; }
	#section_pricing.pc .pc-detail .ajax { display:flex; flex-direction:column; gap:14px; }
	#section_pricing.pc .pc-detail-side { margin-top:auto; }
	#section_pricing.pc .pc-detail ul { columns:1; }
	#section_pricing.pc .pc-detail h3 { font-size:16px; }
	#section_pricing.pc .pc-detail-side { border-left:0; padding-left:0; border-top:1px solid var(--pc-line); padding-top:14px; }
	#section_pricing.pc .pc-detail-price { font-size:22px; }
	#section_pricing.pc table.pc-table { font-size:11px; border-radius:10px; }
	#section_pricing.pc table.pc-table th, #section_pricing.pc table.pc-table td { padding:9px 5px; }
	#section_pricing.pc table.pc-table tbody th { padding-left:9px; }
	#section_pricing.pc table.pc-table thead th.pc-feature-head { width:38%; padding-left:8px; font-size:9px; letter-spacing:.02em; }
	#section_pricing.pc table.pc-table thead th { position:sticky; top:0; z-index:2; }
	#section_pricing.pc .pc-plan-name { font-size:11px; }
	#section_pricing.pc .pc-plan-price { font-size:10px; }
	#section_pricing.pc table.pc-table td p { font-size:10px; }
	#section_pricing.pc .pc-soon { font-size:8px; padding:2px 4px; margin-left:2px; }
	#section_pricing.pc .pc-business-head { flex-direction:column; align-items:stretch; padding:18px 14px; gap:14px; }
	#section_pricing.pc .pc-business-head h2 { font-size:20px; }
	#section_pricing.pc .pc-business-buy { flex:none; }
	#section_pricing.pc .pc-business-grid { grid-template-columns:1fr; gap:18px; padding:18px 14px 4px; }
	#section_pricing.pc .pc-business-includes { margin:14px 14px 0; }
	#section_pricing.pc .pc-terms { padding:14px; }
	#section_pricing.pc .pc-terms dl > div { grid-template-columns:1fr; gap:4px; }
}
@media (max-width:380px){
	#section_pricing.pc .pc-card .price { font-size:18px; }
	#section_pricing.pc table.pc-table thead th.pc-feature-head { width:37%; }
	#section_pricing.pc .pc-plan-name { font-size:10px; letter-spacing:-.01em; }
	#section_pricing.pc table.pc-table th, #section_pricing.pc table.pc-table td { padding-left:3px; padding-right:3px; }
	#section_pricing.pc table.pc-table tbody th { padding-left:7px; font-size:10.5px; }
}
