/* pricing (v4: free plan as a strip under paid plans, fewer outlines; v3 base): calm ticks and outlines (G1), lighter numbers (G6), free plan stands out */
.pr-head { position: relative; text-align: center; max-width: 900px; margin: 0 auto; }

.pr-controls { display: flex; justify-content: center; margin-top: 36px; }
.pr-period { display: inline-flex; padding: 4px; border-radius: var(--r-pill); background: var(--sheet); box-shadow: var(--shadow-card); }
.pr-period button { border: 0; background: transparent; height: 40px; padding: 0 18px; border-radius: var(--r-pill); cursor: pointer;
  font: 600 14px/1 var(--font); color: var(--ink-2); white-space: nowrap; transition: background-color .2s, color .2s; }
.pr-period button em { font-style: normal; font-weight: 500; color: var(--muted); margin-left: 4px; }
.pr-period button[aria-selected="true"] { background: var(--ink); color: #fff; }
.pr-period button[aria-selected="true"] em { color: rgba(255, 255, 255, .7); }

.pr-badges { list-style: none; padding: 0; margin: 22px auto 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; }
.pr-badges li { display: inline-flex; align-items: center; gap: 8px; font: 500 14px/1.3 var(--font); color: var(--ink-2); }
.pr-badges svg { width: 16px; height: 16px; flex: none; fill: none; stroke: var(--ink-2); stroke-width: 1.4; stroke-linejoin: round; stroke-linecap: round; }

/* cards */
.pr-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 44px; align-items: stretch; }
.pr-grid.five { grid-template-columns: repeat(5, 1fr); gap: 12px; }
.pr-card { display: flex; flex-direction: column; padding: 26px 22px 24px; border-radius: 22px; min-width: 0; }
.pr-card.rec { box-shadow: inset 0 0 0 1.5px var(--ink), var(--shadow-float); }
.pr-card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 26px; }
.pr-name { margin: 0; font: 650 20px/1.2 var(--font); letter-spacing: -0.02em; color: var(--ink); }
.pr-desc { margin: 10px 0 0; min-height: 60px; font: 400 14px/1.45 var(--font); color: var(--ink-2); }
.pr-price { display: flex; align-items: baseline; gap: 6px; margin-top: 18px; }
.pr-amt { display: inline-block; font: 500 42px/1 var(--font); letter-spacing: -0.04em; color: var(--ink); font-variant-numeric: tabular-nums;
  transition: opacity .16s var(--ease), transform .16s var(--ease); }
.pr-amt.swap { opacity: 0; transform: translateY(-6px); }
.pr-mo { font: 500 14px/1 var(--font); color: var(--muted); }
.pr-billed { margin: 6px 0 0; font: 400 12.5px/1.3 var(--font); color: var(--muted); }
.pr-cta { width: 100%; margin-top: 18px; height: 46px; }
.pr-setup { margin: 14px 0 0; padding: 10px 12px; border-radius: 12px; background: var(--soft-2); font: 500 13px/1.4 var(--font); color: var(--ink); }
.pr-setup span { display: block; font: 600 11px/1 var(--font); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin-bottom: 5px; }
.pr-plus { margin: 18px 0 0; font: 600 13px/1.3 var(--font); color: var(--ink); }
.pr-feats { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 9px; }
.pr-feats li, .pr-banner-f li { display: flex; gap: 8px; align-items: flex-start; font: 400 13.5px/1.4 var(--font); color: var(--ink-2); }
.pr-feats svg, .pr-banner-f svg { width: 15px; height: 15px; flex: none; margin-top: 2px; color: var(--ink); }

/* free plan: card (v1) */
.pr-free { background: var(--wash); box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .95), var(--shadow-float); position: relative; }
.pr-free .pr-amt { font-size: 52px; }
.pr-free .pr-desc b { display: block; margin-bottom: 4px; font-size: 15px; }
.pr-free .pr-desc b { color: var(--ink); font-weight: 600; }
.pr-free .pr-feats li { color: var(--ink); }

/* free plan: calm wide strip under the 4 paid plans (v4) */
.pr-banner { display: grid; grid-template-columns: 1.2fr 1fr auto; gap: 36px; align-items: center; margin-top: 16px; padding: 28px 36px;
  border-radius: 22px; background: var(--sheet); box-shadow: var(--shadow-card); }
.pr-banner-top { display: flex; align-items: center; gap: 14px; }
.pr-banner-price { font: 500 34px/1 var(--font); letter-spacing: -0.04em; color: var(--ink); }
.pr-banner-price small { font: 500 14px/1 var(--font); letter-spacing: 0; color: var(--muted); }
.pr-banner-t { margin: 12px 0 0; font: 600 20px/1.2 var(--font); letter-spacing: -0.02em; color: var(--ink); }
.pr-banner-d { margin: 6px 0 0; font: 400 14.5px/1.45 var(--font); color: var(--ink-2); }
.pr-banner-f { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.pr-banner-f li { font-size: 14px; color: var(--ink-2); }
.pr-banner .tb-btn { background: var(--sheet); border-color: var(--line-2); color: var(--ink); }
.pr-banner .tb-btn:hover { border-color: var(--ink); }

/* expandable full table */
.pr-more { display: flex; justify-content: center; margin-top: 36px; }
.pr-toggle svg { width: 16px; height: 16px; transition: transform .3s var(--ease); }
.pr-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.pr-expand { display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows .5s var(--ease), opacity .4s var(--ease); }
.pr-expand.open { grid-template-rows: 1fr; opacity: 1; }
.pr-expand-in { min-height: 0; overflow: hidden; }
.pr-expand:not(.open) .pr-expand-in { visibility: hidden; transition: visibility 0s .5s; }
.pr-tscroll { margin-top: 24px; max-height: min(72vh, 760px); overflow: auto; border-radius: 22px; background: var(--sheet);
  box-shadow: var(--shadow-card); overscroll-behavior: contain; }
.pr-table { width: 100%; min-width: 860px; border-collapse: separate; border-spacing: 0; font: 400 13.5px/1.4 var(--font); color: var(--ink-2); }
.pr-table th, .pr-table td { padding: 12px 14px; border-bottom: 1px solid var(--line); text-align: center; vertical-align: middle; }
.pr-table thead th { position: sticky; top: 0; z-index: 2; background: rgba(255, 255, 255, .96); backdrop-filter: blur(6px);
  font: 650 15px/1.2 var(--font); color: var(--ink); padding: 18px 14px; border-bottom: 1px solid var(--line-2); }
.pr-table thead th.rec { color: var(--ink); text-decoration: underline; text-decoration-color: var(--line-2); text-underline-offset: 6px; text-decoration-thickness: 2px; }
.pr-table tbody th { text-align: left; font: 500 13.5px/1.35 var(--font); color: var(--ink); width: 24%; position: sticky; left: 0; background: #fff; z-index: 1; }
.pr-table thead th.pr-t-feat { text-align: left; left: 0; z-index: 3; color: var(--muted); font-size: 12.5px; font-weight: 600; }
.pr-table td.rec { background: rgba(248, 241, 232, .55); }
.pr-table tbody tr:last-child > * { border-bottom: 0; }
.pr-yes { vertical-align: middle; }
.pr-no { display: inline-block; width: 12px; height: 2px; border-radius: 2px; background: var(--faint); vertical-align: middle; }
.pr-tbc { font-size: 11.5px; color: var(--faint); font-style: italic; }

.pr-note { margin: 32px auto 0; max-width: 760px; text-align: center; font: 400 12.5px/1.6 var(--font); color: var(--muted); }

@media (max-width: 1200px) {
  .pr-grid.five { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .pr-grid.five .pr-free { grid-column: 1 / -1; }
}
@media (max-width: 1100px) {
  .pr-grid { grid-template-columns: repeat(2, 1fr); }
  .pr-grid.five { grid-template-columns: repeat(2, 1fr); }
  .pr-banner { grid-template-columns: 1fr 1fr; }
  .pr-banner .tb-btn { grid-column: 1 / -1; justify-self: start; }
}
@media (max-width: 640px) {
  .pr-grid, .pr-grid.five { grid-template-columns: 1fr; }
  .pr-desc { min-height: 0; }
  .pr-period button { padding: 0 11px; font-size: 13px; }
  .pr-period button em { display: block; margin: 3px 0 0; font-size: 11px; }
  .pr-period button { height: 48px; line-height: 1.1; }
  .pr-banner { grid-template-columns: 1fr; gap: 20px; padding: 26px 22px; }
  .pr-banner .tb-btn { width: 100%; }
  .pr-badges { flex-direction: column; align-items: center; }
}

/* v5 (x2): Apollo-style plans (refs/v5-67) and grouped compare table (refs/v5-66). Flat, 1px warm lines, our colours. */
.pr-v3 .pa-head { display: grid; grid-template-columns: 1fr auto; gap: 24px 64px; align-items: end; }
.pr-v3 .pa-h2 { margin: 0; max-width: 760px; }
.pr-v3 .pa-side { display: grid; justify-items: end; gap: 14px; }
.pr-v3 .pr-period { box-shadow: inset 0 0 0 1px var(--line-2); }
.pr-v3 .pa-badges { margin: 0; flex-direction: column; align-items: flex-end; gap: 6px; }
.pr-v3 .pa-badges li { font-size: 13px; color: var(--muted); }
.pr-v3 .pa-badges svg { stroke: var(--muted); }

.pa-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 56px; }
.pa-plan { display: flex; flex-direction: column; min-width: 0; padding: 8px 24px 28px; border-left: 1px solid var(--line); }
.pa-plan:first-child { border-left-color: transparent; }
.pa-plan.rec { background: #FFFAF4; border: 1px solid var(--line-2); border-radius: 14px; }
.pa-plan.rec + .pa-plan { border-left-color: transparent; }
.pa-top { min-height: 40px; padding-top: 14px; }
.pa-badge { display: inline-flex; align-items: center; height: 22px; padding: 0 8px; border-radius: 6px; background: #FCE9DB; color: #8E5235;
  font: 600 11px/1 var(--font); letter-spacing: .06em; text-transform: uppercase; font-style: normal; }
.pa-name { margin: 0; font-size: 22px; line-height: 1.2; color: var(--ink); }
.pa-for { margin: 8px 0 0; min-height: 42px; font: 400 14px/1.45 var(--font); color: var(--muted); }
.pa-price { display: flex; align-items: baseline; gap: 6px; margin-top: 26px; }
.pa-price .pr-amt { font-size: 48px; line-height: 1; letter-spacing: -0.02em; color: var(--ink); }
.pa-mo { font: 400 15px/1 var(--font); color: var(--ink-2); }
.pa-terms { margin: 8px 0 0; font: 400 14px/1.4 var(--font); color: var(--ink-2); }
.pa-cta { width: 100%; margin-top: 24px; }
.pa-sub { margin: 12px 0 0; min-height: 40px; text-align: center; font: 400 13px/1.45 var(--font); color: var(--muted); }
.pa-feats { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--line); }
.pa-plus { margin: 0 0 12px; font: 500 14px/1.3 var(--font); color: var(--ink); }
.pa-feats ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 11px; }
.pa-feats li { display: flex; gap: 10px; align-items: flex-start; font: 400 14px/1.4 var(--font); color: var(--ink-2); }
.pa-feats svg { width: 15px; height: 15px; flex: none; margin-top: 2px; color: var(--ink); }

.pr-v3 .pr-banner { margin-top: 32px; box-shadow: none; border: 1px solid var(--line); border-radius: 14px; }
.pr-v3 .pr-banner-price { font-family: var(--h-font); }

.pa-more { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 6px; border: 0; background: none; cursor: pointer;
  font: 500 15px/1 var(--font); color: var(--ink); text-decoration: underline; text-decoration-color: var(--line-2); text-underline-offset: 6px; }
.pa-more:hover { text-decoration-color: var(--ink); }
.pa-more svg { width: 16px; height: 16px; transition: transform .3s var(--ease); }
.pa-more[aria-expanded="true"] svg { transform: rotate(180deg); }

.pa-ch { margin: 40px 0 0; font-size: 32px; line-height: 1.1; color: var(--ink); }
.pa-cscroll { margin-top: 24px; overflow-x: auto; }
.pa-cmp { min-width: 960px; font: 400 14px/1.4 var(--font); color: var(--ink-2); }
.pa-row { display: grid; grid-template-columns: minmax(220px, 1.5fr) repeat(5, minmax(124px, 1fr)); }
.pa-row > * { padding: 14px 16px; border-bottom: 1px solid var(--line); }
.pa-f { color: var(--ink); }
.pa-c { display: flex; align-items: center; justify-content: center; text-align: center; border-left: 1px solid var(--line); }
.pa-c.rec { background: #FFFAF4; }
.pa-thead > * { border-bottom-color: var(--line-2); padding-top: 4px; padding-bottom: 20px; }
.pa-thead .pa-c { flex-direction: column; align-items: flex-start; justify-content: flex-start; text-align: left; gap: 8px; }
.pa-hn { display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; font: 500 15px/1.2 var(--font); color: var(--ink); }
.pa-hp, .pa-hp .pr-amt { font-size: 28px; line-height: 1; letter-spacing: -0.02em; color: var(--ink); }
.pa-yes { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--ink); color: #fff; }
.pa-yes svg { width: 12px; height: 12px; }

.pa-g { margin-top: 12px; }
.pa-gh { display: flex; align-items: center; gap: 14px; width: 100%; padding: 14px 18px; border: 0; border-radius: 12px; background: var(--soft-2);
  text-align: left; cursor: pointer; }
.pa-gh:hover { background: var(--soft); }
.pa-gi { display: grid; place-items: center; }
.pa-gi svg { width: 18px; height: 18px; fill: none; stroke: var(--ink); stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.pa-gt { flex: 1; display: grid; gap: 2px; }
.pa-gt b { font: 500 18px/1.25 var(--font); color: var(--ink); }
.pa-gt span { font: 400 13.5px/1.4 var(--font); color: var(--muted); }
.pa-gh > svg { width: 18px; height: 18px; flex: none; color: var(--ink-2); transition: transform .3s var(--ease); }
.pa-gh[aria-expanded="false"] > svg { transform: rotate(-90deg); }
.pa-gb { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s var(--ease); }
.pa-g.open .pa-gb { grid-template-rows: 1fr; }
.pa-gb-in { min-height: 0; overflow: hidden; }

@media (max-width: 1100px) {
  .pa-grid { grid-template-columns: repeat(2, 1fr); row-gap: 24px; }
  .pa-plan:nth-child(3) { border-left-color: transparent; }
}
@media (max-width: 900px) {
  .pr-v3 .pa-head { grid-template-columns: 1fr; }
  .pr-v3 .pa-side { justify-items: start; }
  .pr-v3 .pa-badges { align-items: flex-start; }
}
@media (max-width: 640px) {
  .pa-grid { grid-template-columns: 1fr; margin-top: 36px; row-gap: 0; }
  .pa-plan { border-left: 0; border-top: 1px solid var(--line); padding: 4px 4px 28px; }
  .pa-plan:first-child { border-top: 0; }
  .pa-plan.rec { padding: 4px 20px 28px; margin: 8px 0; }
  .pa-plan.rec + .pa-plan { border-top-color: transparent; }
  .pa-for, .pa-sub { min-height: 0; }
  .pa-cmp { min-width: 820px; }
  .pa-row { grid-template-columns: 170px repeat(5, minmax(120px, 1fr)); }
  .pa-f { position: sticky; left: 0; z-index: 1; background: #fff; }
  .pa-gh { position: sticky; left: 0; width: min(100%, calc(100vw - 36px)); }
  .pa-ch { font-size: 26px; }
}

/* v6: T-86 limits above the feature lists (label left, value right), checks without a circle (G19), card hover is .tb-hov (k3). */
.pa-lim { list-style: none; margin: 22px 0 0; padding: 14px 0 0; border-top: 1px solid var(--line); display: grid; gap: 9px; }
.pa-lim li { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font: 400 13.5px/1.35 var(--font); color: var(--ink-2); }
.pa-lim b { font: 600 14px/1.3 var(--font); color: var(--ink); text-align: right; font-variant-numeric: tabular-nums; }
.pa-lim b small { display: block; margin-top: 2px; font: 400 12px/1.3 var(--font); color: var(--muted); }
.pa-lim li.off span { color: var(--faint); }
.pa-lim .pr-no { vertical-align: middle; }
.pa-feats { margin-top: 18px; }
.pa-yes { width: auto; height: auto; background: none; color: var(--ink); border-radius: 0; }
.pa-yes svg { width: 15px; height: 15px; }
.pa-plan.tb-hov { border-radius: 14px; }

/* v6 variant 4: the same plans on a dark plate (white text, like integrations). The plate lives inside the section. */
.pr-v4 { padding-top: 24px; padding-bottom: 24px; }
.pr-v4 .pr-plate { margin: 0 max(16px, calc(50% - 700px)); padding: clamp(72px, 8vw, 112px) 0; border-radius: 40px; background: var(--bg-dark); color: #fff; }
/* v7: the colour rules below also serve the combined dark variant (.pr-cd, plate from shell.css grp-dark) */
:is(.pr-v4, .pr-cd) .tb-h2, :is(.pr-v4, .pr-cd) .pa-name, :is(.pr-v4, .pr-cd) .pa-price .pr-amt, :is(.pr-v4, .pr-cd) .pa-plus, :is(.pr-v4, .pr-cd) .pa-lim b, :is(.pr-v4, .pr-cd) .pa-ch, :is(.pr-v4, .pr-cd) .pa-f, :is(.pr-v4, .pr-cd) .pa-hn,
:is(.pr-v4, .pr-cd) .pa-hp, :is(.pr-v4, .pr-cd) .pa-hp .pr-amt, :is(.pr-v4, .pr-cd) .pa-gt b, :is(.pr-v4, .pr-cd) .pr-banner-t, :is(.pr-v4, .pr-cd) .pr-banner-price, :is(.pr-v4, .pr-cd) .pa-more { color: #fff; }
:is(.pr-v4, .pr-cd) .pa-for, :is(.pr-v4, .pr-cd) .pa-sub, :is(.pr-v4, .pr-cd) .pa-lim b small, :is(.pr-v4, .pr-cd) .pa-gt span, :is(.pr-v4, .pr-cd) .pr-note, :is(.pr-v4, .pr-cd) .pa-badges li,
:is(.pr-v4, .pr-cd) .pr-banner-price small { color: rgba(255, 255, 255, .55); }
:is(.pr-v4, .pr-cd) .pa-mo, :is(.pr-v4, .pr-cd) .pa-terms, :is(.pr-v4, .pr-cd) .pa-lim li, :is(.pr-v4, .pr-cd) .pa-feats li, :is(.pr-v4, .pr-cd) .pa-cmp, :is(.pr-v4, .pr-cd) .pr-banner-d, :is(.pr-v4, .pr-cd) .pr-banner-f li { color: rgba(255, 255, 255, .74); }
:is(.pr-v4, .pr-cd) .pa-feats svg, :is(.pr-v4, .pr-cd) .pr-banner-f svg, :is(.pr-v4, .pr-cd) .pa-yes { color: #fff; }
:is(.pr-v4, .pr-cd) .pa-badges svg { stroke: rgba(255, 255, 255, .55); }
:is(.pr-v4, .pr-cd) .pa-lim li.off span { color: rgba(255, 255, 255, .32); }
:is(.pr-v4, .pr-cd) .pr-no { background: rgba(255, 255, 255, .25); }
:is(.pr-v4, .pr-cd) .pr-tbc { color: rgba(255, 255, 255, .4); }
:is(.pr-v4, .pr-cd) .pa-plan, :is(.pr-v4, .pr-cd) .pa-c, :is(.pr-v4, .pr-cd) .pa-lim, :is(.pr-v4, .pr-cd) .pa-feats, :is(.pr-v4, .pr-cd) .pa-row > * { border-color: rgba(255, 255, 255, .1); }
:is(.pr-v4, .pr-cd) .pa-plan:first-child, :is(.pr-v4, .pr-cd) .pa-plan.rec + .pa-plan { border-left-color: transparent; }
:is(.pr-v4, .pr-cd) .pa-plan.rec, :is(.pr-v4, .pr-cd) .pa-c.rec { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .16); }
:is(.pr-v4, .pr-cd) .pa-badge { background: linear-gradient(100deg, #FFC7A6, #FFB8D6 50%, #D9C8FF); color: #15120F; }
:is(.pr-v4, .pr-cd) .pr-period { background: rgba(255, 255, 255, .08); box-shadow: none; }
:is(.pr-v4, .pr-cd) .pr-period button { color: rgba(255, 255, 255, .72); }
:is(.pr-v4, .pr-cd) .pr-period button em { color: rgba(255, 255, 255, .45); }
:is(.pr-v4, .pr-cd) .pr-period button[aria-selected="true"] { background: #fff; color: #15120F; }
:is(.pr-v4, .pr-cd) .pr-period button[aria-selected="true"] em { color: var(--muted); }
:is(.pr-v4, .pr-cd) .pr-banner { background: rgba(255, 255, 255, .045); border-color: rgba(255, 255, 255, .1); }
:is(.pr-v4, .pr-cd) .pa-gh { background: rgba(255, 255, 255, .06); }
:is(.pr-v4, .pr-cd) .pa-gh:hover { background: rgba(255, 255, 255, .1); }
:is(.pr-v4, .pr-cd) .pa-gh > svg { color: rgba(255, 255, 255, .6); }
:is(.pr-v4, .pr-cd) .pa-gi svg { stroke: var(--ink); }
:is(.pr-v4, .pr-cd) .pa-more { text-decoration-color: rgba(255, 255, 255, .3); }
:is(.pr-v4, .pr-cd) .pa-more:hover { text-decoration-color: #fff; }
/* buttons stay .tb-btn (k3); only the dark-plate contrast, same as the dark sections in shell.css and final v3 */
:is(.pr-v4, .pr-cd) .tb-btn-ghost, :is(.pr-v4, .pr-cd) .pr-banner .tb-btn { background: rgba(255, 255, 255, .1); border-color: transparent; color: #fff; }
:is(.pr-v4, .pr-cd) .tb-btn-ghost:hover, :is(.pr-v4, .pr-cd) .pr-banner .tb-btn:hover { background: rgba(255, 255, 255, .16); border-color: transparent; }
:is(.pr-v4, .pr-cd) .tb-btn-cta { background: #fff; color: #15120F; }
:is(.pr-v4, .pr-cd) .tb-btn-cta:hover { background: #F1ECE6; }
@media (max-width: 760px) {
  .pr-v4 .pr-plate { margin: 0 8px; border-radius: 28px; padding: 64px 0; }
  .pr-v4 .pa-plan { border-left: 0; border-top-color: rgba(255, 255, 255, .1); }
  :is(.pr-v4, .pr-cd) .pa-f { background: var(--bg-dark); }
}
.pa-lim span { white-space: nowrap; }
.pa-lim b small { white-space: nowrap; }

/* v7 combined (FEEDBACK-v7): v2's clean cards + T-86 limits + plan comparison from v3; prices in the heading font (.tb-num).
   .pr-c = light (variant 5), .pr-c.pr-cd = on the dark plate (variant 4, default). Cards share rows via subgrid, so limits and
   lists start on one line across plans. Recommended plan: a light warm outline, not black. */
.pr-c .pr-grid { grid-template-rows: repeat(8, auto); row-gap: 0; }
.pr-c .pr-card { display: grid; grid-row: span 8; grid-template-rows: subgrid; grid-template-columns: minmax(0, 1fr); align-content: start; padding: 26px 24px 26px; }
.pr-c .pr-card.rec { box-shadow: inset 0 0 0 1.5px #F0D3BC, 0 0 0 4px rgba(252, 233, 219, .55), var(--shadow-card); }
.pr-c .pr-card .tb-tag.grad { height: 24px; font-size: 11.5px; }
.pr-c .pr-desc { min-height: 0; }
.pr-c .pr-price { margin-top: 22px; }
.pr-c .pr-amt { font-size: 46px; font-weight: 400; letter-spacing: -0.02em; }
.pr-c .pr-cta { margin-top: 20px; }
.pr-c .pr-setup { align-self: start; margin-top: 12px; padding: 0; background: none; font: 400 13px/1.45 var(--font); color: var(--muted); }
.pr-c .pr-setup span { display: inline; margin: 0 4px 0 0; font: 500 13px/1.45 var(--font); letter-spacing: 0; text-transform: none; color: var(--ink-2); }
.pr-c .pa-lim { margin-top: 18px; }
.pr-c .pa-lim li span { white-space: nowrap; }
/* conversations row: the "agent replies" hint drops to its own right-aligned line, so labels never wrap in narrow cards */
.pr-c .pa-lim li:first-child { flex-wrap: wrap; row-gap: 0; }
.pr-c .pa-lim li:first-child b { display: contents; }
.pr-c .pa-lim li:first-child b small { flex-basis: 100%; text-align: right; margin-top: 2px; }
.pr-c .pr-cfeats { margin-top: 0; padding-top: 16px; border-top: 1px solid var(--line); }
.pr-c .pr-cfeats .pr-plus { margin: 0 0 10px; }
.pr-c .pr-cfeats .pr-feats { margin-top: 0; }
.pr-c .pr-banner { box-shadow: none; border: 1px solid var(--line); }
.pr-c .pr-banner-price { font-family: var(--h-font); font-weight: 400; }
.pr-c:not(.pr-cd) .pr-card { box-shadow: inset 0 0 0 1px var(--line), var(--shadow-card); }
.pr-c:not(.pr-cd) .pr-card.rec { box-shadow: inset 0 0 0 1.5px #F0D3BC, 0 0 0 4px rgba(252, 233, 219, .55), var(--shadow-float); }
.pr-c .pa-ch { text-align: center; }

/* dark plate: quiet glass cards like integrations (trust.css), white text */
.pr-cd .pr-card.tb-card { background: rgba(255, 255, 255, .045); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .09); color: #fff; }
.pr-cd .pr-card.tb-card.rec { background: rgba(255, 255, 255, .075); box-shadow: inset 0 0 0 1.5px rgba(255, 222, 196, .55), 0 0 0 4px rgba(255, 214, 186, .08); }
.pr-cd .pr-name, .pr-cd .pr-amt, .pr-cd .pr-plus, .pr-cd .pr-setup span { color: #fff; }
.pr-cd .pr-desc, .pr-cd .pr-feats li { color: rgba(255, 255, 255, .74); }
.pr-cd .pr-mo, .pr-cd .pr-billed, .pr-cd .pr-setup { color: rgba(255, 255, 255, .55); }
.pr-cd .pr-feats svg { color: #fff; }
.pr-cd .pr-cfeats { border-top-color: rgba(255, 255, 255, .1); }
.pr-cd .pr-badges li { color: rgba(255, 255, 255, .74); }
.pr-cd .pr-badges svg { stroke: rgba(255, 255, 255, .6); }
.pr-cd .tb-tag.grad { background: linear-gradient(100deg, #FFC7A6, #FFB8D6 50%, #D9C8FF); color: #15120F; }
.pr-cd .pr-banner { border: 1px solid rgba(255, 255, 255, .1); }
.pr-cd .tb-tag.ai { background: rgba(255, 255, 255, .12); color: #fff; }
.pr-cd .tb-tag.ai img { filter: none; }
@media (max-width: 1100px) {
  .pr-c .pr-grid { grid-template-rows: none; row-gap: 16px; }
  .pr-c .pr-card { grid-row: auto; grid-template-rows: none; display: flex; }
}

/* lead 02.10 (L-60): subtitle under the pricing headline and a calm trust line next to the plan buttons */
.pa-lead { margin: 14px auto 0; max-width: 620px; font: 400 clamp(15px, 1.1vw, 17px)/1.5 var(--font); color: var(--muted); }
:is(.pr-v4, .pr-cd) .pa-lead { color: rgba(255, 255, 255, .66); }
.pa-trust { list-style: none; margin: 26px 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; }
.pa-trust li { display: inline-flex; align-items: center; gap: 6px; font: 400 13px/1.3 var(--font); color: var(--muted); }
.pa-trust svg { width: 14px; height: 14px; flex: none; color: var(--ink-2); }
:is(.pr-v4, .pr-cd) .pa-trust li { color: rgba(255, 255, 255, .6); }
:is(.pr-v4, .pr-cd) .pa-trust svg { color: rgba(255, 255, 255, .85); }
@media (max-width: 700px) {
  .pa-trust { justify-content: flex-start; flex-direction: column; gap: 8px; margin-top: 20px; }
}
