/* PRC-07: the library fixes the table at 3 plans; the template sets --n to the real plan count. */
body .sb-pricing .p07 .row{grid-template-columns:2fr repeat(var(--n,3),1fr)}
@media (max-width:640px){body .sb-pricing .p07 .row{grid-template-columns:repeat(var(--n,3),1fr)}}

/* PRC-08: the "Popular" tag text comes from the plan's Label instead of the library's fixed word. */
body .sb-pricing .p08 .item.feat .h3::after{content:attr(data-tag)}

/* PRC-18: tabs are CSS radios with generated ids (several sections can share a page), so select panes by position. */
body .sb-pricing .p18 input:nth-of-type(1):checked ~ .tabs label:nth-child(1),
body .sb-pricing .p18 input:nth-of-type(2):checked ~ .tabs label:nth-child(2),
body .sb-pricing .p18 input:nth-of-type(3):checked ~ .tabs label:nth-child(3),
body .sb-pricing .p18 input:nth-of-type(4):checked ~ .tabs label:nth-child(4),
body .sb-pricing .p18 input:nth-of-type(5):checked ~ .tabs label:nth-child(5),
body .sb-pricing .p18 input:nth-of-type(6):checked ~ .tabs label:nth-child(6){color:var(--pb-text);border-color:var(--pb-primary)}
body .sb-pricing .p18 input:nth-of-type(1):checked ~ .panes .pane:nth-child(1),
body .sb-pricing .p18 input:nth-of-type(2):checked ~ .panes .pane:nth-child(2),
body .sb-pricing .p18 input:nth-of-type(3):checked ~ .panes .pane:nth-child(3),
body .sb-pricing .p18 input:nth-of-type(4):checked ~ .panes .pane:nth-child(4),
body .sb-pricing .p18 input:nth-of-type(5):checked ~ .panes .pane:nth-child(5),
body .sb-pricing .p18 input:nth-of-type(6):checked ~ .panes .pane:nth-child(6){display:grid}

/* the theme sets font-weight:300 on .light; the design's light button is 600 */
body .sb-pricing .btn.light{font-weight:var(--pb-ui-weight) !important}
/* Branding text sizes. Kept here so Studio library re-extraction preserves these roles. */
body .sb-pricing { font-size: var(--fs-copy) !important }
body .sb-pricing .h2 { font-size: clamp(calc(var(--fs-titles) * 0.65), 3.75vw, var(--fs-titles)) !important }
body .sb-pricing .h3 { font-size: clamp(calc(var(--fs-medium) * 0.75), 2.65625vw, var(--fs-medium)) !important }
body .sb-pricing .lead { font-size: var(--fs-lead) !important }
body .sb-pricing .small { font-size: var(--fs-small) !important }
body .sb-pricing .eyebrow { font-size: var(--fs-small-titles-size) !important }
body .sb-pricing .cur { font-size: var(--fs-small) !important }
body .sb-pricing .unit { font-size: var(--fs-small) !important }
body .sb-pricing .btn { font-size: var(--fs-buttons) }
body .sb-pricing .toolbar { font-size: var(--fs-small) !important }
body .sb-pricing .pagehead h1 { font-size: clamp(calc(var(--fs-hero) * 0.5), 5.5vw, var(--fs-hero)) !important }
body .sb-pricing .bill button { font-size: var(--fs-small) }
body .sb-pricing .p01 .cap { font-size: var(--fs-small) !important }
body .sb-pricing .p01 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p02 .tag { font-size: var(--fs-small) !important }
body .sb-pricing .p02 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p03 .col.feat .name::after { font-size: var(--fs-small) !important }
body .sb-pricing .p03 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p04 .save { font-size: var(--fs-small) !important }
body .sb-pricing .p04 .flag { font-size: var(--fs-small) !important }
body .sb-pricing .p04 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p05 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p06 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p06 .per { font-size: var(--fs-small) !important }
body .sb-pricing .p07 .thead .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p07 .grp { font-size: var(--fs-small) !important }
body .sb-pricing .p08 .line .h3 { font-size: clamp(calc(var(--fs-medium) * 0.75), 2.65625vw, var(--fs-medium)) !important }
body .sb-pricing .p08 .line .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p08 .item.feat .h3::after { font-size: clamp(calc(var(--fs-medium) * 0.75), 2.65625vw, var(--fs-medium)) }
body .sb-pricing .p09 .rows .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p09 .rows strong { font-size: var(--fs-copy) !important }
body .sb-pricing .p10 .lvl { font-size: var(--fs-small) !important }
body .sb-pricing .p10 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p11 .feats { font-size: var(--fs-small) !important }
body .sb-pricing .p11 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p12 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p13 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p14 .big .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p14 .sm .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p15 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p16 .tagline { font-size: var(--fs-small) !important }
body .sb-pricing .p16 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p16 .incl { font-size: var(--fs-small) !important }
body .sb-pricing .p17 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p18 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p19 .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p19 .meta { font-size: var(--fs-small) !important }
body .sb-pricing .p20 .it .nm { font-size: clamp(calc(var(--fs-medium) * 0.75), 2.65625vw, var(--fs-medium)) !important }
body .sb-pricing .p20 .it .num { font-size: clamp(calc(var(--fs-huge) * 0.55), 6.25vw, var(--fs-huge)) !important }
body .sb-pricing .p20 .it .sub { font-size: var(--fs-small) !important }
body .sb-pricing .p07 .thead .h3 { font-size: clamp(calc(var(--fs-medium) * 0.75), 2.65625vw, var(--fs-medium)) !important }
body .sb-pricing .p07 .ft .tlink { font-size: var(--fs-small) !important }
body .sb-pricing .p18 .tabs label { font-size: var(--fs-small) !important }
body .sb-pricing .p14 h3.h2 { font-size: clamp(calc(var(--fs-medium) * 0.75), 2.65625vw, var(--fs-medium)) !important }

/* 3.6.10: list prices back in proportion (the Branding Sizes pass set them to Huge). PRC-03 four-column prices filled
   their columns ($12,000); PRC-08 menu prices and item names dwarfed the dotted leaders and wrapped every name. */
body:not(.cc-look-pre-3-6-10) .sb-pricing .p03 .num { font-size: clamp(32px, 3.2vw, var(--fs-medium)) !important; }
body:not(.cc-look-pre-3-6-10) .sb-pricing .p08 .line .h3 { font-size: var(--fs-lead) !important; }
body:not(.cc-look-pre-3-6-10) .sb-pricing .p08 .line .num { font-size: clamp(22px, 2vw, calc(var(--fs-medium) * .6)) !important; }
body:not(.cc-look-pre-3-6-10) .sb-pricing .p08 .item.feat .h3::after { font-size: var(--fs-small) !important; }
/* 3.6.10: 17's striped rows mixed the surface with the page color, a light stripe under white words on a dark band: there
   the even rows take a fainter light tint. */
body:not(.cc-look-pre-3-6-10) .sb-blk.sb-blk.sb-pricing.sb-dark .p17 dl div:nth-child(even) { background: color-mix(in srgb, var(--color-white) 4%, transparent); }
/* 3.6.10: labels drawn in Secondary (PRC-02 label) vanished on a dark band when Secondary is dark: there they keep its hue at a
   lightness that reads. */
body:not(.cc-look-pre-3-6-10) .sb-blk.sb-blk.sb-pricing.sb-dark { --pb-secondary: oklch(from var(--color-sec) max(l, 0.82) c h); }
