/* ============================================================================
   Company pages: programs and reference pages in block markup (body.sd-company; inc/company.php).
   Loaded on those pages only, after site.css. The look is the canvas's (tokens in site.css): the title band as the
   hero on the blueprint grid, sections at the container's width divided by hairlines, copy in a centered reading
   column, square panels with hairline borders, one accent. The content is styled, never edited: inline styles and
   the light boxes written into it (decision D2) are overridden here, body copy reads left-aligned and headings stay
   centered (D3, as on the long-form pages). Components, each drawn from the content's own classes:
     hero lead (.sd-co-lead) · section titles (sd-fnt-06 / 07) · accordion (FAQ) · tabs + integration cards ·
     roadmap status cards · add-on price cards (Power-Ups and the add-on pages) · Top 100 grid · logo grids ·
     agency directory (#ap-root) · updates log · testimonials and feature rows · the Trails and Spread the Word
     pages' own HTML · forms.
   =========================================================================
   On live some pages (/power-ups/, /roadmap/) keep WPBakery's <div class="wpb-content-wrapper"> around the rows, so a
   rule for the page's rows says :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > (same specificity as
   .sd-entry >); Playground never prints that wrapper (0.15.1, 2026-10-09).
*/

/* ---------------------------------------------------------------- layout */
.sd-company .sd-entry { --sd-read: 40rem; padding-bottom: 24px; }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row { padding: 72px var(--sd-gutter); }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row > .wp-block-group__inner-container { max-width: var(--sd-max); margin-inline: auto; }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row + .sd-row:where(:not(.sd-secondary-header-color + .sd-row)) { border-top: 1px solid var(--line); }
.sd-company .sd-entry .sd-row-inner + .sd-row-inner { margin-top: 48px; }

/* the reading column: copy and section titles at ~70 characters a line, centered in the section */
.sd-company .sd-entry .wp-block-group__inner-container > :is(p, ul, ol, h1, h2, h3, h4, h5, h6, blockquote, .sd-fnt-06, .sd-fnt-07, .sd-font-02, div:not([class])),
.sd-company .sd-entry .wp-block-group__inner-container > figure.wp-block-table { max-width: var(--sd-read); margin-left: auto; margin-right: auto; }
.sd-company .sd-entry .wp-block-group__inner-container > :is(h1, h2, h3) { max-width: 46rem; }
/* the same column inside a column that ends up alone in its row (WPBakery's 1/6 + 4/6 + 1/6 offsets, the empty ones hidden) */
.sd-company .sd-entry .wp-block-column > :is(p, ul, ol, h1, h2, h3, h4, h5, h6, blockquote, .sd-fnt-06, .sd-fnt-07, div:not([class])) { max-width: var(--sd-read); margin-left: auto; margin-right: auto; }
.sd-company .sd-entry :is(p, li, td, div)[style*="font-size: 18px"] { font-size: inherit !important; line-height: var(--lh-body) !important; }
.sd-company .sd-entry p[style*="padding: 25px 15%"] { padding: 0 !important; }

/* D3: body copy left (inline center and justify overridden), headings centered */
.sd-company .sd-entry :is(p, li, div, span)[style*="text-align"]:not(.sd-fnt-06, .sd-fnt-07, .sd-fnt-01, .sd-font-02) { text-align: left !important; }
.sd-company .sd-entry :is(h1, h2, h3, h4, h5, h6) { text-align: center !important; text-wrap: balance; }
/* a paragraph that only holds a button or two: centered */
.sd-company .sd-entry p:has(> a:is(.sd-btn-01, .sd-btn-02, .sd-21btn-primary-l, .sd-21btn-primary-r, .sd-21btn-primary-landing):first-child) { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; text-align: center !important; margin-top: 1.6em; }

/* headings in the content */
.sd-company .sd-entry h1:not(.typography-page-headline) { font: 600 clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem)/1.12 var(--f-display); letter-spacing: -.02em; margin: 1.6em auto .6em; }
.sd-company .sd-entry .wp-block-group__inner-container > :is(h1, h2):first-child { margin-top: 0; }
.sd-company .sd-entry h5 { font: 400 var(--t-lead)/1.5 var(--f-text); color: var(--mute); }
.sd-company .sd-entry h6 { font: 400 15px/1.55 var(--f-text); color: var(--mute); letter-spacing: 0; text-transform: none; }
.sd-company .sd-entry :is(h2, h3, h4) [style*="color"], .sd-company .sd-entry :is(h2, h3, h4)[style*="color"] { color: var(--text) !important; }
.sd-company .sd-entry :is(h2, h3, h4, h5)[style*="font-size"] { font-size: revert-layer !important; }

/* text colors written inline for a white page that a dark ground cannot carry: emphasis to the text color, grays to copy */
.sd-company .sd-entry :is([style*="color: #800000" i], [style*="color:#800000" i], [style*="color: #003d70" i], [style*="color:#003d70" i], [style*="color: #005bbb" i], [style*="color:#005bbb" i], [style*="color: #bc3c03" i], [style*="color: #0a3a0c" i], [style*="color: #1a6b1c" i]) { color: var(--text) !important; }
.sd-company .sd-entry :is([style*="color: #222" i], [style*="color:#222" i], [style*="color: #232323" i], [style*="color: #333" i], [style*="color:#333" i], [style*="color: #514d6a" i], [style*="color: #555" i], [style*="color:#555" i]) { color: var(--c-copy) !important; }

/* section titles written as styled text (sd-fnt-06 big, sd-fnt-07 smaller; live's own section "headings") */
.sd-company .sd-entry .sd-fnt-06 { display: block; max-width: 30ch; margin: 0 auto 12px; font: 600 var(--t-h2)/1.1 var(--f-display); letter-spacing: -.02em; color: var(--text); text-align: center !important; text-wrap: balance; }
.sd-company .sd-entry .sd-fnt-07 { display: block; margin: 2em auto .6em; font: 600 clamp(1.25rem, 1.05rem + .7vw, 1.6rem)/1.25 var(--f-display); letter-spacing: -.015em; color: var(--text); text-align: center !important; text-wrap: balance; }
.sd-company .sd-entry .wp-block-group__inner-container > .sd-fnt-07:first-child { margin-top: 0; }
/* a short label right above a heading ("Step One" over its H2) reads as the heading's eyebrow */
.sd-company .sd-entry .sd-fnt-07:has(+ :is(h2, h3)) { margin: 2.6em auto .5em; font: 500 12.5px/1.4 var(--f-num); letter-spacing: .06em; text-transform: uppercase; color: var(--accent); }
.sd-company .sd-entry .sd-fnt-07:has(+ :is(h2, h3)) + :is(h2, h3) { margin-top: 0; }
.sd-company .sd-entry :is(.sd-fnt-06, .sd-fnt-07) :is(b, strong) { font-weight: inherit; }
.sd-company .sd-entry .sd-fnt-01 { font: 500 13px/1.4 var(--f-num); color: var(--accent); letter-spacing: .04em; text-transform: uppercase; text-align: center !important; }
.sd-company .sd-entry h1.sd-fnt-01 { font: 600 clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem)/1.12 var(--f-display); color: var(--text); letter-spacing: -.02em; text-transform: none; }
.sd-company .sd-entry .sd-font-02, .sd-company .sd-entry .sd-subhead { font-weight: 600; color: var(--text); }
.sd-company .sd-entry .sd-font-02 { font: 600 var(--t-h3)/1.2 var(--f-display); text-align: center !important; margin-bottom: .6em; }

/* links and buttons */
.sd-company .sd-entry :is(.sd-btn-01, .sd-btn-02, .sd-21btn-primary-r) {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 0 22px;
	font: 600 15px/1 var(--f-text); text-decoration: none; white-space: nowrap; border-radius: 0;
	background: var(--btn-fill); color: var(--btn-ink) !important; border: 1px solid var(--btn-fill);
}
.sd-company .sd-entry .sd-21btn-primary-r { background: transparent; color: var(--text) !important; border-color: var(--line-2); }
.sd-company .sd-entry :is(.sd-btn-01, .sd-btn-02):hover { background: var(--btn-hover); border-color: var(--btn-hover); color: var(--btn-ink) !important; }
.sd-company .sd-entry .sd-21btn-primary-r:hover { color: var(--accent) !important; border-color: var(--accent); }
.sd-company .sd-entry :is(.sd-21btn-primary-r, .sd-btn-01, .sd-btn-02) i { display: none; }

/* lists: the content's Font Awesome marks (the kit is not loaded by this theme) become drawn marks */
.sd-company .sd-entry li > i.fa-plus, .sd-company .sd-entry li > i.addon-feature-icon, .sd-company .sd-entry li > :is(b, strong) > i.addon-feature-icon, .sd-company .sd-entry i.featuredbullets { display: none; } /* Font Awesome loads on live only: its "+" doubled the check */
.sd-company .sd-entry ul { padding-left: 1.25em; }
.sd-company .sd-entry li { margin: .45em 0; padding-left: .2em; }
.sd-company .sd-entry ul > li::marker { color: var(--accent); }

/* images: square, never wider than their column */
.sd-company .sd-entry img { max-width: 100%; height: auto; border-radius: 0 !important; }
.sd-company .sd-entry .wp-block-image { margin: 1.5em auto; }
.sd-company .sd-entry .wp-block-image.aligncenter, .sd-company .sd-entry .wp-block-image .aligncenter { text-align: center; }
.sd-company .sd-entry .wp-block-columns { gap: 40px; margin: 0; align-items: flex-start; }
.sd-company .sd-entry .wp-block-column > :first-child { margin-top: 0; }
.sd-company .sd-entry .wp-block-column > :last-child { margin-bottom: 0; }
/* side-by-side columns (picture and text, logo grids): their headings sit with their text, left */
.sd-company .sd-entry .wp-block-columns:not(:has(> .wp-block-column:empty)) > .wp-block-column :is(h1, h2, h3, h4, h5, h6) { text-align: left !important; margin-left: 0; }
.sd-company .sd-entry .typography-section-h1 { display: block; margin-bottom: 10px; font: 600 clamp(1.35rem, 1.1rem + .9vw, 1.9rem)/1.15 var(--f-display); letter-spacing: -.02em; color: var(--text); }
/* WPBakery's push/pull pairs (text first in the source on the right, picture on the left): the text reads first */
.sd-company .sd-entry .wp-block-columns > :is(.vc_col-sm-pull-6, .vc_col-lg-pull-6) { order: -1; }
/* video embeds: 16:9 frames */
.sd-company .sd-entry .wp-block-embed { margin: 1.5em auto; max-width: 52rem; }
.sd-company .sd-entry .wp-block-embed__wrapper { position: relative; aspect-ratio: 16 / 9; background: var(--panel); border: 1px solid var(--line-2); overflow: hidden; }
.sd-company .sd-entry .wp-block-embed__wrapper iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.sd-company .sd-entry .sd-resp-container { position: relative; aspect-ratio: 16 / 9; }
.sd-company .sd-entry .sd-resp-container iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* ---------------------------------------------------------------- the hero: title band on the blueprint grid */
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-secondary-header-color {
	padding: 88px var(--sd-gutter) 72px; text-align: center; border-top: 1px solid var(--band); border-bottom: 1px solid var(--line);
	background-image: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);
	background-size: 56px 56px; background-position: center bottom;
}
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-secondary-header-color h1 { margin: 0 auto; max-width: 20ch; font: 600 var(--t-h1)/1.04 var(--f-display); letter-spacing: -.02em; color: var(--text); }
.sd-company .sd-co-lead { display: flex; flex-direction: column; align-items: center; gap: 12px; max-width: 46rem; margin: 24px auto 0; }
.sd-company .sd-entry .sd-co-lead > :is(.sd-fnt-06, .sd-fnt-07) { margin: 0; max-width: none; text-align: center !important; }
.sd-company .sd-entry .sd-co-lead > .sd-fnt-06 { font: 500 clamp(1.2rem, 1rem + 1vw, 1.75rem)/1.25 var(--f-display); letter-spacing: -.01em; color: var(--accent); }
.sd-company .sd-entry .sd-co-lead > .sd-fnt-07 { font: 400 var(--t-lead)/1.5 var(--f-text); letter-spacing: 0; color: var(--mute); }
.sd-company .sd-entry .sd-co-lead > .sd-fnt-06 + .sd-fnt-07 { margin-top: 6px; }
.sd-company .sd-entry .sd-co-emptied { display: none; } /* the inner row the lead lines left, now empty */
.sd-company .sd-entry .sd-co-emptied + .sd-row-inner { margin-top: 0; }

/* a page that opens with a 2021 hero row instead of the title band (the charter-school portal): the same hero */
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child:has(h1.typography-hero-headline) {
	padding-block: 72px; border-bottom: 1px solid var(--line);
	background-image: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);
	background-size: 56px 56px; background-position: center top;
}
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child:has(h1.typography-hero-headline) .wp-block-columns { align-items: center; gap: 56px; }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child h1.typography-hero-headline { margin: 0; font: 600 var(--t-h1)/1.04 var(--f-display); letter-spacing: -.02em; color: var(--text); }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child h2.typography-hero-headline { margin: 8px 0 18px; font: 600 clamp(1.5rem, 1rem + 1.8vw, 2.5rem)/1.1 var(--f-display); color: var(--accent); }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child:has(h1.typography-hero-headline) :is(h3, p) { max-width: 34rem !important; margin-left: 0; }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child:has(h1.typography-hero-headline) h3 { font: 600 var(--t-h4)/1.35 var(--f-text); color: var(--text); }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child:has(h1.typography-hero-headline) p:has(> a) { justify-content: flex-start; }

/* ---------------------------------------------------------------- accordion (FAQ: inc/company.php sd26_co_accordion) */
.sd-company .sd-entry .sd-accordion { border-top: 1px solid var(--line); }
.sd-company .sd-entry .sd-accordion-item { border-bottom: 1px solid var(--line); }
.sd-company .sd-entry .sd-accordion-item > .wp-block-group__inner-container > :is(h4, div) { max-width: none; margin: 0; }
.sd-company .sd-entry .sd-acc__q { margin: 0; font: 600 1rem/1.4 var(--f-text); text-align: left !important; }
.sd-company .sd-acc__btn {
	display: flex; align-items: baseline; justify-content: space-between; gap: 20px; width: 100%; min-height: 44px; padding: 18px 2px;
	background: none; border: 0; color: var(--text); font: inherit; text-align: left; cursor: pointer; text-transform: none;
}
.sd-company .sd-acc__btn::after { content: "+"; flex: none; font: 400 1.35rem/1 var(--f-num); color: var(--faint); }
.sd-company .sd-acc__btn[aria-expanded="true"]::after { content: "\2212"; color: var(--accent); }
.sd-company .sd-acc__btn:hover { color: var(--accent); }
.sd-company .sd-acc__a { padding: 0 2px 20px; color: var(--c-copy); }
.sd-company .sd-acc__a > :last-child { margin-bottom: 0; }

/* ---------------------------------------------------------------- tabs (Integrations: sd26_co_tabs) */
.sd-company .sd-tabbar { display: flex; flex-wrap: wrap; gap: 0; margin: 0 0 40px; border-bottom: 1px solid var(--line); }
.sd-company .sd-tabbar__tab {
	min-height: 46px; padding: 0 22px; margin-bottom: -1px; background: none; border: 1px solid transparent; border-bottom-color: var(--line);
	color: var(--mute); font: 500 13px/1 var(--f-num); letter-spacing: .04em; text-transform: uppercase; cursor: pointer;
}
.sd-company .sd-tabbar__tab:hover { color: var(--text); }
.sd-company .sd-tabbar__tab[aria-selected="true"] { color: var(--text); border-color: var(--line); border-bottom-color: var(--bg); background: var(--bg); box-shadow: inset 0 2px 0 var(--accent); }
.sd-company .sd-tab[hidden] { display: none; }
/* the panel's own title (an H4, the tab's name) stays for screen readers; the tab bar shows it */
.sd-company .sd-tabs .sd-tab > .wp-block-group__inner-container > h4:first-child { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; }

/* integration cards: [logo] [name, what it does, Learn More], two to a row */
.sd-company .sd-tab > .wp-block-group__inner-container { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; padding: 0 1px 1px 0; }
.sd-company .sd-tab > .wp-block-group__inner-container > :not(.sd-row-inner:not(.sd-row-inner--full)) { grid-column: 1 / -1; }
.sd-company .sd-tab .sd-row-inner--full { margin: 0 0 28px; }
.sd-company .sd-tab .sd-row-inner--full .sd-fnt-06 { margin: 0; max-width: none; font-size: var(--t-h3); text-align: left !important; }
.sd-company .sd-tab .sd-row-inner:not(.sd-row-inner--full) { margin: 0 -1px -1px 0; padding: 26px; border: 1px solid var(--line); }
.sd-company .sd-tab .sd-row-inner:not(.sd-row-inner--full) .wp-block-columns { gap: 22px; flex-wrap: nowrap !important; }
.sd-company .sd-tab .wp-block-column[style*="25%"] { flex: 0 0 112px !important; }
.sd-company .sd-tab .wp-block-image { margin: 0; }
.sd-company .sd-tab .wp-block-image img { display: block; width: 112px; height: auto; background: #fff; }
.sd-company .sd-tab .sd-fnt-07 { margin: 0 0 8px; font: 600 1.125rem/1.3 var(--f-text) !important; letter-spacing: 0; text-align: left !important; }
.sd-company .sd-tab .wp-block-column p { margin: 0 0 12px; font-size: 15px; color: var(--c-copy); max-width: none; }
.sd-company .sd-tab .wp-block-column p:last-child { margin: 0; }
.sd-company .sd-entry .sd-tab .wp-block-column p:has(> .sd-21btn-primary-l) { display: block; margin-top: 14px; text-align: left !important; }
.sd-company .sd-tab .sd-21btn-primary-l { min-height: 0; padding: 0; background: none; border: 0; color: var(--accent) !important; font: 500 13px/1.4 var(--f-num); }
.sd-company .sd-tab .sd-21btn-primary-l::after { content: " \2192"; }
.sd-company .sd-tab .sd-21btn-primary-l:hover { background: none; color: var(--text) !important; }
@media (max-width: 900px) {
	.sd-company .sd-tab > .wp-block-group__inner-container { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 480px) {
	.sd-company .sd-tab .sd-row-inner:not(.sd-row-inner--full) .wp-block-columns { flex-direction: column; }
	.sd-company .sd-tab .wp-block-column { flex-basis: auto !important; }
}

/* ---------------------------------------------------------------- roadmap: one status card per feature */
.sd-co-roadmap :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content-alt { padding-block: 56px 32px; }
.sd-co-roadmap :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content-alt + .sd-row { border-top: 0; }
.sd-co-roadmap :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content-alt .sd-fnt-01 { margin: 0 auto; font-size: 13px; }
.sd-co-roadmap :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content { padding-block: 0 20px; border-top: 0; }
.sd-co-roadmap :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content > .wp-block-group__inner-container { padding: 32px; background: var(--panel); border: 1px solid var(--line); }
.sd-co-roadmap .sd-entry .sd-content .wp-block-columns { gap: 48px; }
.sd-co-roadmap .sd-entry .sd-content p { max-width: none; font-size: 15.5px; }
.sd-co-roadmap .sd-entry .featuredheader { margin: 0 0 14px; font: 600 clamp(1.25rem, 1.05rem + .7vw, 1.6rem)/1.2 var(--f-display); letter-spacing: -.015em; color: var(--text); }
.sd-co-roadmap .sd-entry .sd-subhead { margin: 1.3em 0 .35em; font-size: 15.5px; }
.sd-co-roadmap .sd-entry .status-tag-line { margin: 1.4em 0 0; }
.sd-company .sd-entry :is(.sd-live-tag, .sd-indev-tag) { display: inline-flex; align-items: center; gap: 8px; padding: 6px 10px; border: 1px solid var(--line-2); font: 500 11.5px/1.2 var(--f-num); letter-spacing: .05em; text-transform: uppercase; color: var(--mute); }
.sd-company .sd-entry :is(.sd-live-tag, .sd-indev-tag)::before { content: ""; width: 7px; height: 7px; flex: none; border: 1px solid var(--accent); }
.sd-company .sd-entry .sd-live-tag { color: var(--text); border-color: var(--accent); }
.sd-company .sd-entry .sd-live-tag::before { background: var(--accent); }
.sd-company .sd-entry .featuredbullets-p { display: flex; gap: 12px; margin: 0 0 12px; font-size: 15px; line-height: 1.5; color: var(--text); }
.sd-company .sd-entry .featuredbullets-p::before, .sd-company .sd-entry .add-on-section-item li::before {
	content: ""; flex: none; width: 16px; height: 16px; margin-top: 4px; background: var(--accent);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.8'%3E%3Cpath d='M3 8.5l3.2 3L13 4.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.8'%3E%3Cpath d='M3 8.5l3.2 3L13 4.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.sd-co-roadmap .sd-entry .right-col-25 { padding-top: 6px; }

/* ---------------------------------------------------------------- add-on price cards (Power-Ups, Service Subscriptions, the
   onboarding and Wizard pages): a section title, then per add-on [picture] [name, what it is, what is in it, price, how to add] */
.sd-company .sd-entry .add-on-section-title { margin: 0 auto 40px; text-align: center; }
.sd-company .sd-entry .add-on-section-title .sd-fnt-07 { margin: 10px auto 0; font: 400 var(--t-lead)/1.5 var(--f-text); color: var(--mute); max-width: 46rem; }
.sd-company .sd-entry .add-on-section-title .sd-fnt-07 :is(b, strong) { font-weight: 600; color: var(--text); }
.sd-company .sd-entry .add-on-section-title .wp-block-image { margin: 0 auto 20px; }
.sd-company .sd-entry .add-on-section-title .wp-block-image img { max-height: 120px; width: auto; }
.sd-company .sd-entry .add-on-section-item { max-width: 60rem; margin: 0 auto !important; padding: 32px; background: var(--panel); border: 1px solid var(--line); }
.sd-company .sd-entry .add-on-section-item + .add-on-section-item { border-top: 0; }
.sd-company .sd-entry .add-on-section-item .wp-block-columns { gap: 32px; }
.sd-company .sd-entry .add-on-section-item .wp-block-column[style*="25%"] { flex: 0 0 140px !important; }
.sd-company .sd-entry .add-on-section-item .wp-block-image { margin: 0; }
.sd-company .sd-entry .add-on-section-item .wp-block-column p, .sd-company .sd-entry .add-on-section-item .wp-block-column > div { max-width: none; }
.sd-company .sd-entry .add-on-title { display: block; margin: 0 0 10px; font: 600 clamp(1.25rem, 1.05rem + .7vw, 1.6rem)/1.2 var(--f-display); letter-spacing: -.015em; color: var(--text); }
.sd-company .sd-entry .add-on-section-item ul { list-style: none; padding: 0; margin: 1em 0; }
.sd-company .sd-entry .add-on-section-item li { display: block; position: relative; margin: 0 0 12px; padding-left: 28px; font-size: 15.5px; }
.sd-company .sd-entry .add-on-section-item li::before { position: absolute; left: 0; top: 0; }
.sd-company .sd-entry .add-on-section-item li :is(strong, b) { color: var(--text); }
/* the price row: hand-written vc_row / vc_col-sm-4 + 8 (WPBakery's grid is not relied on) */
.sd-company .sd-entry .add-on-section-item .vc_row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; margin: 24px 0 0; padding: 18px 0 0; border-top: 1px solid var(--line); }
.sd-company .sd-entry .add-on-section-item .vc_row::before, .sd-company .sd-entry .add-on-section-item .vc_row::after { display: none; }
.sd-company .sd-entry .add-on-section-item .vc_row > [class*="vc_col"] { width: auto; float: none; padding: 0; min-height: 0; }
.sd-company .sd-entry .add-on-price { font: 500 15px/1.2 var(--f-num); color: var(--mute); white-space: nowrap; }
.sd-company .sd-entry .add-on-price-dollar-sign { font: 600 2rem/1 var(--f-display); letter-spacing: -.02em; color: var(--text); }
.sd-company .sd-entry .addon-pricing-explanation { font: 500 13px/1.4 var(--f-num); }
.sd-company .sd-entry .addon-pricing-explanation a { text-decoration: none; }
.sd-company .sd-entry .addon-pricing-explanation a::after { content: " \2192"; }
.sd-company .sd-entry .add-on-helper-text { margin-top: 12px; font: 12.5px/1.5 var(--f-num) !important; color: var(--faint); }
.sd-company .sd-entry .add-on-helper-text strong { color: var(--mute); font-weight: 500; }
.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content-price + .sd-row.sd-content-price { border-top: 1px solid var(--line); }
@media (max-width: 600px) {
	.sd-company .sd-entry .add-on-section-item { padding: 22px 18px; }
	.sd-company .sd-entry .add-on-section-item .wp-block-column[style*="25%"] { flex-basis: auto !important; }
	.sd-company .sd-entry .add-on-section-item .wp-block-image img { max-width: 120px; }
}

/* ---------------------------------------------------------------- Top 100 Features: a grid of cards (sd26_co_top100) */
.sd-co-top-100-features-list :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .top-100-features-row { padding-top: 56px; }
.sd-company .sd-t100-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0 1px 1px 0; }
.sd-company .sd-t100 { display: flex; flex-direction: column; gap: 8px; margin: 0 -1px -1px 0; padding: 24px 22px 22px; border: 1px solid var(--line); }
.sd-company .sd-entry .sd-t100 > * { margin: 0 !important; max-width: none !important; text-align: left !important; }
.sd-company .sd-entry .sd-t100 > h1 { font: 500 13px/1 var(--f-num); letter-spacing: .04em; color: var(--accent); }
.sd-company .sd-entry .sd-t100 > h1::before { content: "#"; color: var(--faint); }
.sd-company .sd-entry .sd-t100 > h2 { margin-bottom: 4px !important; font: 600 1.125rem/1.3 var(--f-display); letter-spacing: -.01em; color: var(--text); }
.sd-company .sd-entry .sd-t100 > h3 { font: 500 15px/1.5 var(--f-text); color: var(--c-copy); letter-spacing: 0; }
.sd-company .sd-entry .sd-t100 > h4 { font: 400 14px/1.5 var(--f-text); color: var(--mute); }
.sd-company .sd-entry .sd-t100 > h5 { font: italic 400 14px/1.5 var(--f-text); color: var(--mute); }
.sd-company .sd-entry .sd-t100 > h6 { margin-top: auto !important; padding-top: 10px; border-top: 1px solid var(--line); font: 400 12px/1.5 var(--f-num); color: var(--faint); letter-spacing: 0; }
@media (max-width: 1000px) { .sd-company .sd-t100-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .sd-company .sd-t100-grid { grid-template-columns: minmax(0, 1fr); } }

/* ---------------------------------------------------------------- the updates log (plugin suitedash-updates-log, its own
   stylesheet loads too: white cards, light search). Ten entries are printed, the rest load as you scroll; each entry is
   rendered only near the screen (content-visibility), so 37,000 words do not cost a 200,000px phone layout up front
   (measured on a phone: layout 43ms -> 18ms, first paint 1.75s -> 1.45s locally; the text stays in the HTML). */
.sd-company .sd-updates-log-wrap { max-width: 52rem; margin: 0 auto; }
.sd-company .sd-updates-log-search {
	min-height: 48px; padding: 12px 18px 12px 46px; border: 1px solid var(--line-2); border-radius: 0; box-shadow: none; background-color: var(--panel);
	color: var(--text); font: 15px/1.4 var(--f-text);
}
.sd-company .sd-updates-log-search::placeholder { color: var(--faint); font-style: normal; }
.sd-company .sd-updates-log-search:focus { background-color: var(--panel); border-color: var(--accent); box-shadow: none; transform: none; }
.sd-company .sd-updates-log-count, .sd-company .sd-updates-log-loading, .sd-company .sd-updates-log-no-results { color: var(--mute); font-family: var(--f-num); }
.sd-company .sd-updates-log-count strong { color: var(--accent); }
.sd-company .sd-updates-log-count em { color: var(--text); }
.sd-company .update-details { width: auto; margin: 0 0 24px; background: var(--panel); border: 1px solid var(--line); border-radius: 0; box-shadow: none; content-visibility: auto; contain-intrinsic-size: auto 9000px; } /* an entry is a month: 4,000 to 14,000px at 1280 */
.sd-company .update-title { display: flex; align-items: center; gap: 12px; padding: 20px 28px 16px; background: none; border-bottom: 1px solid var(--line); border-radius: 0; }
.sd-company .update-title .featuredheader { padding: 0; font: 500 13px/1.3 var(--f-num); letter-spacing: .05em; text-transform: uppercase; color: var(--text); }
.sd-company .update-title .livetag { margin: 0; padding: 4px 8px; background: none; border: 1px solid var(--accent); border-radius: 0; color: var(--accent); font: 500 11px/1 var(--f-num); letter-spacing: .05em; vertical-align: baseline; }
.sd-company .update-description { padding: 22px 28px 26px; color: var(--c-copy); font-size: 15.5px; }
.sd-company .update-description h4 { margin: 1.4em 0 .5em; font: 600 1.125rem/1.35 var(--f-text); color: var(--text); text-align: left !important; }
.sd-company .update-description h4:first-child { margin-top: 0; }
.sd-company .update-description ul { padding-left: 1.2em; }
.sd-company .update-description li { margin: .45em 0; }
.sd-company .update-description a { color: var(--accent); overflow-wrap: anywhere; }
.sd-company .update-description hr { border: 0; border-top: 1px solid var(--line); margin: 22px 0; }
.sd-company .update-sm-txt { font: 12.5px/1.5 var(--f-num); color: var(--faint); }
@media (max-width: 600px) {
	.sd-company .update-details { contain-intrinsic-size: auto 18000px; } /* 8,700 to 30,000px on a phone */
	.sd-company .update-title { padding: 16px 18px 12px; }
	.sd-company .update-description { padding: 18px 18px 22px; }
}

/* ---------------------------------------------------------------- the agency directory ([agency_partners]: its own inline
   style draws white rounded cards; redrawn as the module wall's hairline grid. The cards are drawn by its script.) */
.sd-company #ap-root { color: var(--c-copy); --ap-blue: var(--accent); --ap-blue-dark: var(--text); --ap-blue-bg: color-mix(in srgb, var(--accent) 12%, transparent); --ap-blue-bg-strong: color-mix(in srgb, var(--accent) 22%, transparent); }
.sd-company #ap-root .ap-filter-pill, .sd-company #ap-root .ap-search-pill { border-radius: 0; border-color: var(--line-2); background: var(--panel); color: var(--text); }
.sd-company #ap-root .ap-filter-pill:hover, .sd-company #ap-root .ap-search-pill:not(.open):hover { border-color: var(--accent); background: var(--panel); }
.sd-company #ap-root .ap-search-input { color: var(--text); }
.sd-company #ap-root .ap-dropdown-panel { border-radius: 0; border-color: var(--line-2); background: var(--raise); box-shadow: none; }
.sd-company #ap-root .ap-dropdown-item { border-radius: 0; color: var(--c-copy); }
.sd-company #ap-root .ap-dropdown-item:hover { background: var(--panel); }
.sd-company #ap-root #ap-count, .sd-company #ap-root .ap-clear-btn { color: var(--mute); font-family: var(--f-num); }
.sd-company #ap-root #ap-grid, .sd-company #ap-root .ap-skel-grid { gap: 0; padding: 0 1px 1px 0; }
.sd-company #ap-root :is(.ap-card, .ap-skel-card) { margin: 0 -1px -1px 0; border-radius: 0; border-color: var(--line); background: transparent; box-shadow: none; }
.sd-company #ap-root .ap-card:hover { transform: none; box-shadow: none; border-color: var(--accent); background: var(--panel); position: relative; z-index: 1; }
.sd-company #ap-root .ap-logo-banner { background: var(--raise); } /* each logo fills its banner (570x247 files, the banner's ratio) */
.sd-company #ap-root .ap-tier-badge { font-family: var(--f-num); font-weight: 500; letter-spacing: .08em; }
.sd-company #ap-root .ap-tier-sensei { background: var(--btn-fill); color: var(--btn-ink); }
.sd-company #ap-root .ap-tier-validated { background: var(--raise); color: var(--text); border-block: 1px solid var(--line); }
.sd-company #ap-root .ap-name-block .ap-company { color: var(--text); font-family: var(--f-text); }
.sd-company #ap-root .ap-name-block .ap-person, .sd-company #ap-root .ap-info-rows { color: var(--mute); }
.sd-company #ap-root .ap-avatar-fallback { background: var(--raise); border: 1px solid var(--line-2); color: var(--text); }
.sd-company #ap-root :is(.ap-niche-pill, .ap-niche-tag, .ap-availability-pill) { border-radius: 0; }
.sd-company #ap-root .ap-avail-active { background: color-mix(in srgb, #28BA84 18%, transparent); color: #7FE0B8; }
.sd-company #ap-root .ap-avail-limited { background: color-mix(in srgb, var(--star) 16%, transparent); color: var(--star); }
.sd-company #ap-root .ap-avail-waitlist { background: color-mix(in srgb, #E34646 18%, transparent); color: #FF9C9C; }
.sd-company #ap-root .ap-contact-cta { border-radius: 0; background: var(--btn-fill); color: var(--btn-ink) !important; }
.sd-company #ap-root .ap-contact-cta:hover { background: var(--btn-hover); color: var(--btn-ink) !important; }
.sd-company #ap-root .ap-shimmer { background: var(--raise); background-image: linear-gradient(90deg, var(--raise) 0, var(--line-2) 40px, var(--raise) 80px); background-size: 600px 100%; background-repeat: no-repeat; }
.sd-company .sd-entry .wp-block-group__inner-container > #ap-root, .sd-company .sd-entry :has(> #ap-root) { max-width: none; }

/* ---------------------------------------------------------------- testimonials and feature rows (student portal, 2021 build) */
.sd-company .sd-entry .sd-testimonials-block { max-width: 52rem; margin-inline: auto; padding: 32px; background: var(--panel); border: 1px solid var(--line); border-left: 1px solid var(--accent); }
.sd-company .sd-entry .sd-testimonials-block .wp-block-column:has(> .sd-icon) { display: none; }
.sd-company .sd-entry .sd-testimonials-block .wp-block-column { flex-basis: 100% !important; }
.sd-company .sd-entry .sd-21-quotes { margin: 0 0 16px; max-width: none; font-size: clamp(1.05rem, 1rem + .4vw, 1.3rem) !important; line-height: 1.55; color: var(--text) !important; }
.sd-company .sd-entry .sd-text-highlight { color: var(--accent); }
.sd-company .sd-entry .sd-21-testimonials-row { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 0; font: 13px/1.4 var(--f-num); }
.sd-company .sd-entry .sd-21-author { color: var(--mute); text-decoration: none; }
.sd-company .sd-entry .sd-21-reviewlink { text-decoration: none; }
.sd-company .sd-entry .sd-21-feature-block .wp-block-columns { align-items: center; }
.sd-company .sd-entry .sd-21-feature-block .wp-block-image img { border: 1px solid var(--line); }

/* ---------------------------------------------------------------- forms on these pages (Formidable; its own stylesheet loads on live) */
.sd-company .sd-entry .frm_forms { max-width: 40rem; margin: 2em auto; text-align: left; }
.sd-company .sd-entry .frm_forms fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.sd-company .sd-entry .frm_forms legend { font: 500 12.5px/1.4 var(--f-num); color: var(--faint); }
.sd-company .sd-entry .frm_forms h3 { margin: 1.2em 0 .4em; font: 600 1.125rem/1.35 var(--f-text); text-align: left !important; }
.sd-company .sd-entry .frm_form_field { margin: 0 0 16px; }
.sd-company .sd-entry .frm_forms label, .sd-company .sd-entry .frm_primary_label { display: block; margin: 0 0 6px; font-weight: 600; color: var(--text); font-size: 14.5px; }
.sd-company .sd-entry .frm_forms :is(input[type=text], input[type=email], input[type=url], input[type=tel], input[type=number], select, textarea) {
	width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--line-2); border-radius: 0; background: var(--panel); color: var(--text); font: 15px/1.4 var(--f-text);
}
.sd-company .sd-entry .frm_forms :is(button, input[type=submit]) { min-height: 48px; padding: 0 28px; border: 1px solid var(--btn-fill); border-radius: 0; background: var(--btn-fill); color: var(--btn-ink); font: 600 15px/1 var(--f-text); cursor: pointer; }
.sd-company .sd-entry .frm_forms svg { width: 32px; height: 32px; }
.sd-company .sd-entry .frm_dropzone { padding: 20px; border: 1px dashed var(--line-2); text-align: center; color: var(--mute); }
.sd-company .sd-entry .frm_description, .sd-company .sd-entry .frm_small_text { font: 12.5px/1.5 var(--f-num); color: var(--faint); }
.sd-company .sd-entry div:has(> input.frm_verify) { display: none !important; } /* the honeypot field (Formidable's own CSS hides it on live) */
.sd-company .sd-entry :is(.frm_verify, .frm_screen_reader) { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------------------------------------------------------------- per page */
/* /mike-lambert/: the author card and the boxes written inline in light colors (D2) */
.sd-co-mike-lambert .sd-entry [style*="color:#222"], .sd-co-mike-lambert .sd-entry [style*="color:#555"], .sd-co-mike-lambert .sd-entry [style*="color:#003D70"] { color: var(--c-copy) !important; }
.sd-co-mike-lambert .sd-entry [style*="color:#003D70"] a, .sd-co-mike-lambert .sd-entry a[style*="color:#003D70"] { color: var(--accent) !important; }
.sd-co-mike-lambert .sd-entry [style*="font-size:22px"] { color: var(--text) !important; }
.sd-co-mike-lambert .sd-entry img[style*="border-radius:50%"] { border-radius: 50% !important; border-color: var(--line-2) !important; }
.sd-co-mike-lambert .sd-entry [style*="background:#ffffff"] { background: var(--panel) !important; border-color: var(--line) !important; box-shadow: none !important; border-radius: 0 !important; color: var(--c-copy) !important; }
.sd-co-mike-lambert .sd-entry blockquote[style*="background:#ffffff"] { border-width: 0 !important; border-left: 1px solid var(--accent) !important; color: var(--text) !important; font-family: var(--f-text); }
.sd-co-mike-lambert .sd-entry [style*="font-size:42px"] { color: var(--text) !important; font-family: var(--f-display) !important; font-weight: 600 !important; letter-spacing: -.02em; }
.sd-co-mike-lambert .sd-entry [style*="font-size:13px"] { font-family: var(--f-num) !important; color: var(--faint) !important; }
.sd-co-mike-lambert .sd-entry hr[style*="#d0dde9"] { border-top-color: var(--line-2) !important; }
.sd-co-mike-lambert .sd-entry img[style*="#003D70"] { border-color: var(--line-2) !important; }
/* its own centered lines (written without a space: "text-align:center") are signatures and callouts, not body copy */
.sd-co-mike-lambert .sd-entry p[style*="text-align:center"] { text-align: center !important; }

/* /partners/trails/: an email-style page with its own light style block and light tables (D2) */
.sd-co-partners-trails .sd-entry .trails-page-wrap { max-width: var(--sd-read); margin: 0 auto; color: var(--c-copy); font-family: var(--f-text); line-height: var(--lh-body); }
.sd-co-partners-trails .sd-entry .trails-page-wrap :is(h1, h2, h3) { color: var(--text); font-family: var(--f-display); letter-spacing: -.02em; }
.sd-co-partners-trails .sd-entry .trails-page-wrap h2 { font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem); line-height: 1.12; }
.sd-co-partners-trails .sd-entry .trails-page-wrap h3 { font-size: var(--t-h3); }
.sd-co-partners-trails .sd-entry .trails-page-wrap :is(p, li) { color: var(--c-copy); }
.sd-co-partners-trails .sd-entry .trails-page-wrap a { color: var(--accent); }
.sd-co-partners-trails .sd-entry .trails-page-wrap img { border-color: var(--line-2) !important; border-radius: 0 !important; }
.sd-co-partners-trails .sd-entry :is(table, td, div)[style*="background"], .sd-co-partners-trails .sd-entry :is(table, td)[bgcolor] { background: var(--panel) !important; border-color: var(--line) !important; border-radius: 0 !important; }
.sd-co-partners-trails .sd-entry td [style*="color"] { color: var(--c-copy) !important; }
.sd-co-partners-trails .sd-entry td [style*="font-weight: bold"] { color: var(--text) !important; }
.sd-co-partners-trails .sd-entry .wp-block-table { border: 0; }
.sd-co-partners-trails .sd-entry :is(td, th) { border: 0; }

/* /spread-the-word/: one HTML app with its own light palette (#stw-root custom properties); redrawn on the dark ground (D2) */
.sd-co-spread-the-word .sd-prose { max-width: none; padding: 0; }
body.sd-co-spread-the-word #stw-root { --shell: var(--bg); --ink: var(--c-copy); --head: var(--text); --link: var(--accent); --hover: var(--text); --card: var(--panel); --border: var(--line); --rule: var(--line); background: var(--bg); color: var(--c-copy); font-family: var(--f-text); }
body.sd-co-spread-the-word #stw-root header.hero { border-top: 1px solid var(--band); border-bottom: 1px solid var(--line); background-image: linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px); background-size: 56px 56px; padding: 88px 20px 64px; }
body.sd-co-spread-the-word #stw-root header.hero h1 { font: 600 var(--t-h1)/1.04 var(--f-display); letter-spacing: -.02em; }
body.sd-co-spread-the-word #stw-root header.hero p { color: var(--mute); }
body.sd-co-spread-the-word #stw-root :is(h2, h3) { font-family: var(--f-display); letter-spacing: -.015em; }
body.sd-co-spread-the-word #stw-root .eyebrow { font: 500 12px/1.4 var(--f-num); color: var(--accent); letter-spacing: .06em; }
body.sd-co-spread-the-word #stw-root :is(.card, .linkbox, .swipe, .shot, .stw-social a, .note, .stw-nav a, .btn, input, .swipe .top) { border-radius: 0 !important; }
body.sd-co-spread-the-word #stw-root :is(.linkbox, .swipe, .shot, .stw-social a, .btn.ghost) { background: var(--panel); border-color: var(--line-2); }
body.sd-co-spread-the-word #stw-root .linkbox input { background: var(--bg); color: var(--text); border-color: var(--line-2); }
body.sd-co-spread-the-word #stw-root .swipe .body { color: var(--c-copy); }
body.sd-co-spread-the-word #stw-root :is(.meta, .linkbox small, footer, .shot span em) { color: var(--faint); }
body.sd-co-spread-the-word #stw-root .note { background: color-mix(in srgb, var(--star) 8%, var(--panel)); border-color: color-mix(in srgb, var(--star) 35%, var(--line)); color: var(--c-copy); }
body.sd-co-spread-the-word #stw-root .btn { background: var(--btn-fill); color: var(--btn-ink) !important; }
body.sd-co-spread-the-word #stw-root .btn:hover { background: var(--btn-hover); color: var(--btn-ink) !important; }
body.sd-co-spread-the-word #stw-root .btn.ghost { color: var(--text) !important; }
body.sd-co-spread-the-word #stw-root .stw-nav { top: var(--sd-header-h); background: rgba(11, 14, 16, .94); border-bottom-color: var(--line); box-shadow: none; }
body.sd-co-spread-the-word #stw-root .stw-nav a { background: transparent; border-color: var(--line-2); color: var(--mute); }
body.sd-co-spread-the-word #stw-root .stw-nav a:is(:hover, .on) { background: var(--btn-fill); border-color: var(--btn-fill); color: var(--btn-ink) !important; }
body.sd-co-spread-the-word #stw-root .stw-social a:hover { background: var(--btn-fill); border-color: var(--btn-fill); color: var(--btn-ink) !important; }
body.sd-co-spread-the-word #stw-root .shot img { background: var(--raise); }
body.sd-co-spread-the-word #stw-root .copied { color: var(--accent) !important; }
body.sd-co-spread-the-word #stw-root .stw-group { background: var(--panel); border-color: var(--line-2); border-radius: 0; }
body.sd-co-spread-the-word #stw-root .stw-head { color: var(--text); }
body.sd-co-spread-the-word #stw-root .stw-head:hover, body.sd-co-spread-the-word #stw-root .stw-group.on .stw-head { background: var(--raise); }
body.sd-co-spread-the-word #stw-root .stw-head .t i { color: var(--faint); }

/* /worlds-power-up/: its first row holds a hidden video and the Slider Revolution module, which its own script draws on live */
.sd-co-worlds-power-up :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child { padding: 0; }
.sd-co-worlds-power-up :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row:first-child + .sd-secondary-header-color { border-top: 1px solid var(--band); }
.sd-company .sd-entry sr7-module { display: block; }

/* logo grids (/brand-assets/ downloads, /podcast/ listen icons): each label stays under its picture */
.sd-co-brand-assets .sd-entry .wp-block-column p { text-align: center !important; }
.sd-co-brand-assets .sd-entry .wp-block-column .wp-block-image img { display: block; margin-inline: auto; border: 1px solid var(--line); }
.sd-co-podcast .sd-entry .tooltips { display: inline-block; margin: 0 6px 6px 0; }
.sd-co-podcast .sd-entry .tooltips img { display: block; width: 44px; height: 44px; border: 1px solid var(--line-2); }

/* /glossary/: an empty page (live shows only the module wall) */
.sd-co-glossary .sd-prose:empty { display: none; }

/* ---------------------------------------------------------------- /power-ups/ (0.15.0; Mike's brief: "the icon, the hero, some
   small message, the big message"). inc/company.php names each Power-Up's parts (.sd-pu: __icon, __head = name + first
   line, __body, __foot = price, link, how to add) and moves the page's sub-title and lead into the band, with an index.
   Mike chose this layout (the header card) from three, 2026-10-09; Service Subscriptions and One-on-One Onboarding
   follow it (body.sd-addons). */
.sd-addons :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-secondary-header-color { padding: 76px var(--sd-gutter) 44px; text-align: left; }
.sd-addons .sd-secondary-header-color .sd-row-inner > .wp-block-group__inner-container { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 0 72px; align-items: start; max-width: var(--sd-max); margin: 0 auto; }
.sd-addons .sd-secondary-header-color h1 { grid-column: 1; grid-row: 1; margin: 0 !important; max-width: none !important; text-align: left !important; font-size: clamp(2.6rem, 1.6rem + 3.4vw, 4.75rem); }
.sd-addons .sd-secondary-header-color .sd-co-lead { display: contents; }
.sd-addons .sd-entry .sd-co-lead > .sd-fnt-06:first-child { grid-column: 1; grid-row: 2; margin-top: 16px; max-width: 18ch; text-align: left !important; }
.sd-addons .sd-entry .sd-co-lead > .sd-fnt-06:empty { display: none; }
.sd-addons .sd-entry .sd-co-lead > .sd-fnt-07 { grid-column: 2; grid-row: 1 / span 2; align-self: end; margin: 0; text-align: left !important; font-size: 17px; line-height: 1.65; text-wrap: pretty; }
.sd-pu-index { grid-column: 1 / -1; grid-row: 3; display: grid; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); gap: 10px; margin-top: 52px; }
.sd-pu-index a { display: grid; grid-template-columns: 44px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 12px; align-items: center; padding: 12px 14px; border: 1px solid var(--line-2); background: color-mix(in srgb, var(--bg) 82%, transparent); color: var(--text); text-decoration: none; transition: border-color .15s, transform .15s; }
.sd-pu-index a:hover { border-color: var(--accent); transform: translateY(-2px); }
.sd-pu-index img { grid-column: 1; grid-row: 1 / span 2; width: 44px; height: 44px; object-fit: contain; }
.sd-pu-index a::before { content: attr(data-t); grid-column: 2; grid-row: 1; align-self: end; font: 600 13.5px/1.25 var(--f-text); text-wrap: balance; }
.sd-pu-index a::after { content: attr(data-p); grid-column: 2; grid-row: 2; align-self: start; margin-top: 3px; font: 500 12px/1.2 var(--f-num); color: var(--accent); }
.sd-addons :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content-price { padding-top: 48px; }

/* one card per Power-Up. Picture left of the name and its first line; what is in it below, two across; the price bar last */
.sd-addons .sd-entry .add-on-section-item { max-width: var(--sd-max); padding: 0; background: var(--panel); border: 1px solid var(--line); scroll-margin-top: calc(var(--sd-header-h) + 24px); }
.sd-addons .sd-entry .add-on-section-item + .add-on-section-item { margin-top: 20px !important; border-top: 1px solid var(--line); }
.sd-pu { display: grid; grid-template-columns: 148px minmax(0, 1fr); grid-template-areas: "icon head" "body body" "foot foot"; }
.sd-pu__icon { grid-area: icon; display: flex; align-items: center; justify-content: center; padding: 28px 0 24px 32px; }
.sd-pu__icon .wp-block-image { margin: 0; }
.sd-pu__icon img { display: block; width: 116px; max-width: 100%; height: auto; }
.sd-pu__head { grid-area: head; align-self: center; padding: 32px 40px 26px 28px; }
.sd-addons .sd-entry .sd-pu__head .add-on-title { margin: 0 0 10px; font: 600 clamp(1.5rem, 1.15rem + 1vw, 2.1rem)/1.1 var(--f-display); letter-spacing: -.02em; text-wrap: balance; }
.sd-addons .sd-entry .sd-pu__head > div:first-child { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; }
.sd-addons .sd-entry .sd-pu__head > div:first-child .add-on-helper-text { margin: 0; padding: 3px 8px; border: 1px solid var(--accent); color: var(--accent) !important; font-size: 11.5px !important; }
.sd-addons .sd-entry .sd-pu__head > p { margin: 0; max-width: 62ch; font: 400 var(--t-lead)/1.5 var(--f-text); color: var(--mute); }
.sd-pu__body { grid-area: body; padding: 28px 40px 12px; border-top: 1px solid var(--line); }
.sd-addons .sd-entry .sd-pu__body > p { max-width: 70ch; margin: 0 0 14px; }
.sd-addons .sd-entry .sd-pu__body ul:has(> li > i.addon-feature-icon, > li > strong > i.addon-feature-icon) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 44px; margin: 4px 0 20px; }
.sd-addons .sd-entry .sd-pu__body li { margin: 0; font-size: 15px; line-height: 1.55; color: var(--mute); }
.sd-addons .sd-entry .sd-pu__body li > strong:first-of-type:has(> i.addon-feature-icon) { display: block; margin-bottom: 3px; color: var(--text); font-weight: 600; }
.sd-pu__foot { grid-area: foot; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 32px; padding: 20px 40px; border-top: 1px solid var(--line); background: var(--bg); }
.sd-addons .sd-entry .sd-pu__foot .vc_row { margin: 0; padding: 0; border: 0; }
.sd-addons .sd-entry .sd-pu__foot .add-on-helper-text { flex: 0 1 46ch; margin: 0; text-align: right; }

/* a card with no picture (One-on-One Onboarding: its section title folded into the card): the head runs full width */
.sd-pu:not(:has(> .sd-pu__icon)) { grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "body" "foot"; }
.sd-pu:not(:has(> .sd-pu__icon)) > .sd-pu__head { padding-left: 40px; }
.sd-addons .sd-entry .sd-pu__head > .sd-fnt-06 { max-width: none; margin: 0 0 10px !important; font: 600 clamp(1.5rem, 1.15rem + 1vw, 2.1rem)/1.1 var(--f-display); letter-spacing: -.02em; color: var(--text); text-align: left !important; text-wrap: balance; }
.sd-addons .sd-entry .sd-pu__head > .sd-fnt-07 { max-width: 62ch; margin: 0 !important; font: 400 var(--t-lead)/1.5 var(--f-text); color: var(--mute); text-align: left !important; }
.sd-addons .sd-entry .sd-pu__head > div.sd-fnt-07 { color: var(--text); font-weight: 500; }
.sd-addons .sd-entry .sd-pu__head > .sd-fnt-07 + .sd-fnt-07 { margin-top: 4px !important; }
.sd-pu-index a:not(:has(img)) { grid-template-columns: minmax(0, 1fr); }
.sd-pu-index a:not(:has(img))::before, .sd-pu-index a:not(:has(img))::after { grid-column: 1; }
.sd-addons .sd-entry .sd-pu-folded + .sd-pu-folded { margin-top: 20px !important; }

@media (max-width: 1100px) {
	.sd-pu-index { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
	.sd-addons .sd-secondary-header-color .sd-row-inner > .wp-block-group__inner-container { grid-template-columns: minmax(0, 1fr); }
	.sd-addons .sd-entry .sd-co-lead > .sd-fnt-07 { grid-column: 1; grid-row: 3; margin-top: 18px; }
	.sd-pu-index { grid-row: 4; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 32px; }
	.sd-pu { grid-template-columns: 96px minmax(0, 1fr); }
	.sd-pu__icon { padding: 22px 0 18px 18px; }
	.sd-pu__icon img { width: 72px; }
	.sd-pu__head { padding: 22px 18px 18px 14px; }
	.sd-pu__body { padding: 20px 18px 6px; }
	.sd-addons .sd-entry .sd-pu__body ul:has(> li > i.addon-feature-icon, > li > strong > i.addon-feature-icon) { grid-template-columns: minmax(0, 1fr); }
	.sd-pu__foot { padding: 18px; flex-direction: column; align-items: flex-start; }
	.sd-addons .sd-entry .sd-pu__foot .add-on-helper-text { text-align: left; }
}

/* ---------------------------------------------------------------- phones */
@media (max-width: 782px) {
	.sd-company .sd-entry .wp-block-columns { gap: 24px; }
}
@media (max-width: 560px) {
	.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row { padding-block: 48px; }
	.sd-company :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-secondary-header-color { padding-block: 56px 48px; }
	.sd-co-roadmap :is(.sd-entry, .sd-entry > :where(.wpb-content-wrapper)) > .sd-row.sd-content > .wp-block-group__inner-container { padding: 22px 18px; }
	.sd-company .sd-entry .sd-testimonials-block { padding: 22px 18px; }
}
