/* Videopod blog. Loaded only on blog views (vp-blog.php). All values come from kit 6 variables. */
body.vp-blog {
	--vpb-teal: var(--e-global-color-teal);
	--vpb-cream: var(--e-global-color-cream);
	--vpb-saffron: var(--e-global-color-saffron);
	--vpb-deep: var(--e-global-color-deep);
	--vpb-card: var(--e-global-color-card_on_cream);
	--vpb-muted: var(--e-global-color-section_muted_light);
	--vpb-divider: var(--e-global-color-divider);
	--vpb-text: var(--vpb-teal);
	--vpb-bg: var(--vpb-cream);
	--vpb-band: color-mix(in srgb, var(--vpb-cream) 80%, var(--vpb-saffron));
	--vpb-card-bg: var(--vpb-card);
	--vpb-edge: var(--vpb-deep);
	--vpb-bandteal: var(--vpb-teal);
	background: var(--vpb-bg);
	color: var(--vpb-text);
}
body.vp-blog[data-mode="dark"] {
	--vpb-text: var(--vpb-cream);
	--vpb-bg: var(--vpb-deep);
	--vpb-muted: var(--e-global-color-section_muted_dark);
	--vpb-band: color-mix(in srgb, var(--vpb-deep) 85%, var(--vpb-teal));
	--vpb-card-bg: var(--vpb-teal);
	--vpb-edge: color-mix(in srgb, var(--vpb-deep) 60%, black);
	--vpb-divider: color-mix(in srgb, var(--vpb-cream) 25%, transparent);
	--vpb-bandteal: color-mix(in srgb, var(--vpb-deep) 70%, black);
}

/* Inside blog areas, kit-coloured text follows the mode (Elementor globals set teal text). */
body.vp-blog .elementor .vp-blog-in :is(h1, h2, h3, p, li, summary, .elementor-heading-title, .elementor-widget-text-editor),
body.vp-blog .elementor .vp-blog-band :is(h1, h2, h3, p, .elementor-heading-title),
body.vp-blog .elementor .vp-blog-card :is(h2, h3, p, a, .elementor-heading-title) { color: var(--vpb-text); }

/* Column and bands */
body.vp-blog .elementor .vp-blog-in { width: 90%; max-width: var(--container-max-width, 860px); margin-inline: auto; padding: 0; }
body.vp-blog .elementor .vp-blog-band { background: var(--vpb-band); border-bottom: 1px solid var(--vpb-divider); padding: 44px 0 36px; }
body.vp-blog .elementor .vp-blog-hero { text-align: center; padding: 56px 0 44px; }
body.vp-blog .elementor .vp-blog-hero .elementor-heading-title { max-width: 14ch; margin-inline: auto; text-wrap: balance; }
body.vp-blog .elementor .vp-blog-band-teal { background: var(--vpb-bandteal); padding: 50px 0; text-align: center; }
body.vp-blog .elementor .vp-blog-band-teal :is(h2, p, .elementor-heading-title) { color: var(--vpb-cream); }
body.vp-blog .elementor .vp-blog-band-teal .elementor-heading-title,
body.vp-blog .elementor .vp-blog-h2-lg .elementor-heading-title { font-size: 40px; line-height: 1; }

/* Small text */
body.vp-blog .elementor .vp-blog-eyebrow p,
body.vp-blog p.vp-blog-meta { font: var(--e-global-typography-eyebrow-font-weight, 600) var(--e-global-typography-eyebrow-font-size, 11px)/1.4 var(--e-global-typography-eyebrow-font-family, 'DM Sans'), sans-serif;
	letter-spacing: .12em; text-transform: uppercase; color: var(--vpb-muted); margin: 0 0 12px; }
body.vp-blog .elementor .vp-blog-meta-sm p.vp-blog-meta { font-size: 12px; letter-spacing: 0; text-transform: none; margin: 0; }

/* Post title */
body.vp-blog .elementor .vp-blog-h1 .elementor-heading-title { font-size: min(64px, var(--e-global-typography-display-font-size)); max-width: 16ch; text-wrap: balance; overflow-wrap: anywhere; }
body.vp-blog .elementor .vp-blog-by { margin-top: 18px; }
body.vp-blog .elementor .vp-blog-by img { width: 30px; height: 30px; border-radius: 50%; border: 1.5px solid var(--vpb-edge); }

/* Cards */
body.vp-blog .elementor .vp-blog-card { background: var(--vpb-card-bg); border: 1.5px solid var(--vpb-edge); border-radius: 6px; box-shadow: 5px 6px 0 var(--vpb-edge); }
body.vp-blog .elementor .vp-blog-lc { padding: 18px 18px 20px; gap: 9px; height: 100%; }
body.vp-blog .elementor .vp-blog-lc-title .elementor-heading-title { font-size: 21px; line-height: 1.12; }
body.vp-blog .elementor .vp-blog-lc-title a { color: inherit; text-decoration: none; }
body.vp-blog .elementor .vp-blog-lc-ex { font-size: 14px; color: var(--vpb-muted); display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
body.vp-blog .elementor .vp-blog-lc-ex * { color: inherit; }
body.vp-blog .elementor .vp-blog-feat { padding: 28px 30px; margin-bottom: 34px; }
body.vp-blog .elementor .vp-blog-feat-title .elementor-heading-title { font-size: 38px; line-height: 1.02; max-width: 24ch; }
body.vp-blog .elementor .vp-blog-more { font-weight: 600; font-size: 13px; color: var(--vpb-text); text-decoration: underline; text-decoration-color: var(--vpb-saffron); text-decoration-thickness: 2px; text-underline-offset: 4px; }
body.vp-blog .elementor .vp-blog-more-wrap { margin: auto 0 0; padding-top: 4px; }
body.vp-blog .elementor .e-loop-item { display: flex; }
body.vp-blog .elementor .vp-blog-main-grid .elementor-loop-container { gap: 22px; }

/* Category links and search */
body.vp-blog .elementor .vp-blog-tools { display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 30px 0 6px; }
body.vp-blog .elementor .vp-blog-cats ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; list-style: none; margin: 0; padding: 0; }
body.vp-blog .elementor .vp-blog-cats a { display: inline-block; font-weight: 600; font-size: 13px; line-height: 1; padding: 9px 13px; border: 1.5px solid var(--vpb-edge); border-radius: 999px;
	background: var(--vpb-card-bg); color: var(--vpb-text); text-decoration: none; }
body.vp-blog .elementor .vp-blog-cats a[aria-current="page"] { background: var(--vpb-saffron); color: var(--vpb-deep); }
body.vp-blog .elementor .vp-blog-count { font-weight: 500; opacity: .7; }
body.vp-blog .elementor .vp-blog-hide { display: none !important; }
body.vp-blog .elementor .vp-blog-search { max-width: 420px; width: 100%; }
body.vp-blog .elementor .vp-blog-list { padding: 26px 0 0; }
body.vp-blog .elementor .e-load-more-anchor, body.vp-blog .elementor .elementor-pagination { text-align: center; font-weight: 600; padding: 30px 0 50px; }

/* Article layout */
body.vp-blog .elementor .vp-blog-body { display: flex; flex-direction: row; gap: 36px; padding: 36px 0 10px; align-items: flex-start; }
body.vp-blog .elementor .vp-blog-toc-col { flex: 0 0 210px; width: 210px; align-self: stretch; }
body.vp-blog .elementor .vp-blog-toc-col > .e-con-inner, body.vp-blog .elementor .vp-blog-toc-col .elementor-widget-table-of-contents { position: sticky; top: 12px; }
body.vp-blog .elementor .vp-blog-article { flex: 1 1 auto; min-width: 0; }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__header-title { font: 700 17px/1.2 var(--e-global-typography-cardtitle-font-family, 'Barlow Condensed'), sans-serif; color: var(--vpb-text); }
body.vp-blog .elementor .vp-blog-toc-col .elementor-widget-table-of-contents { background: var(--vpb-card-bg); border: 1.5px solid var(--vpb-edge); border-radius: 6px; box-shadow: 5px 6px 0 var(--vpb-edge); }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__list-item { font-size: 13px; line-height: 1.4; border-top: 1px solid var(--vpb-divider); padding: 6px 0; }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__list-item-text { color: var(--vpb-text); }
body.vp-blog .elementor .vp-blog-toc-col .elementor-item-active { font-weight: 600; }
body.vp-blog .elementor .vp-blog-article :is(p, li) { max-width: 68ch; }
body.vp-blog .elementor .vp-blog-article h2 { font: var(--e-global-typography-cardtitle-font-weight) var(--e-global-typography-cardtitle-font-size)/var(--e-global-typography-cardtitle-line-height) var(--e-global-typography-cardtitle-font-family); margin: 30px 0 10px; }
body.vp-blog .elementor .vp-blog-article h3 { font: 600 15px/1.6 var(--e-global-typography-body-font-family); margin: 22px 0 6px; }
body.vp-blog .elementor .vp-blog-article a { color: var(--vpb-text); text-decoration-color: var(--vpb-saffron); text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.vp-blog .elementor .vp-blog-article figure.wp-block-table { overflow-x: auto; }
body.vp-blog .elementor .vp-blog-article :is(p, li) { overflow-wrap: anywhere; }

/* Key takeaways and Questions (block patterns) */
body.vp-blog .elementor .vp-blog-kt { background: var(--vpb-card-bg); border: 1.5px solid var(--vpb-edge); border-radius: 6px; box-shadow: 5px 6px 0 var(--vpb-edge); padding: 20px 22px; margin: 0 0 24px; }
body.vp-blog .elementor .vp-blog-article .vp-blog-kt-title { font-size: 20px; margin: 0 0 10px; }
body.vp-blog .elementor .vp-blog-kt ul { list-style: none; margin: 0; padding: 0; }
body.vp-blog .elementor .vp-blog-kt li { position: relative; padding-left: 20px; margin: 7px 0; font-size: 14px; }
body.vp-blog .elementor .vp-blog-kt li::before { content: ""; position: absolute; left: 0; top: .62em; width: 6px; height: 6px; background: var(--vpb-saffron); }
body.vp-blog .elementor .vp-blog-faq { margin-top: 40px; }
body.vp-blog .elementor .vp-blog-article .vp-blog-faq-title { font-size: 32px; line-height: 1; margin: 0 0 18px; }
body.vp-blog .elementor .vp-blog-faq details { background: var(--vpb-card-bg); border: 1.5px solid var(--vpb-edge); border-radius: 6px; box-shadow: 5px 6px 0 var(--vpb-edge); padding: 15px 18px; margin: 0 0 14px; }
body.vp-blog .elementor .vp-blog-faq summary { font-weight: 600; cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
body.vp-blog .elementor .vp-blog-faq summary::-webkit-details-marker { display: none; }
body.vp-blog .elementor .vp-blog-faq summary::after { content: "+"; font-weight: 400; }
body.vp-blog .elementor .vp-blog-faq details[open] summary::after { content: "\2013"; }
body.vp-blog .elementor .vp-blog-faq details p { font-size: 14px; color: var(--vpb-muted); margin: 8px 0 0; }

/* Share row */
body.vp-blog .elementor .vp-blog-share { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px; padding: 30px 0 6px; }
body.vp-blog .elementor .vp-blog-share-label p { margin: 0; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--vpb-muted); }
body.vp-blog .elementor .vp-blog-share :is(.elementor-share-btn, .vp-blog-copy) { border: 1.5px solid var(--vpb-divider); border-radius: 999px; padding: 6px 12px; font-size: 13px; background: transparent; color: var(--vpb-text); cursor: pointer; }
body.vp-blog .elementor .vp-blog-copy-msg { font-size: 13px; }

/* Related */
body.vp-blog .elementor .vp-blog-related { padding: 44px 0 54px; }
body.vp-blog .elementor .vp-blog-related:not(:has(.e-loop-item)) { display: none; }

/* Testimonials */
body.vp-blog .elementor .vp-blog-testi { padding: 50px 0 56px; }
body.vp-blog .elementor .vp-blog-tgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
body.vp-blog .elementor .vp-blog-tq { padding: 22px 22px 20px; gap: 12px; }
body.vp-blog .elementor .vp-blog-stars p { color: var(--vpb-saffron) !important; letter-spacing: 2px; margin: 0; }
body.vp-blog .elementor .vp-blog-quote p { font: 600 21px/1.25 var(--e-global-typography-cardtitle-font-family, 'Barlow Condensed'), sans-serif; margin: 0; }
body.vp-blog .elementor .vp-blog-who p { margin: 0; font-size: 13px; color: var(--vpb-muted); }
body.vp-blog .elementor .vp-blog-who strong { display: block; font-size: 11px; letter-spacing: .12em; color: var(--vpb-text); }

/* Sign-up placeholder */
body.vp-blog .elementor .vp-blog-signup { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; max-width: 460px; margin: 22px auto 0; }
body.vp-blog .elementor .vp-blog-signup input { flex: 1 1 220px; min-width: 0; background: var(--vpb-card); border: 1.5px solid var(--vpb-deep); border-radius: 4px; padding: 13px 14px; font-size: 14px; color: var(--vpb-deep); opacity: .75; }
body.vp-blog .elementor .vp-blog-signup button[disabled] { opacity: .75; cursor: not-allowed; }
body.vp-blog .elementor .vp-blog-signup-msg { flex-basis: 100%; text-align: center; font-size: 13px; margin: 0; }
body.vp-blog .elementor .vp-blog-band-teal .vp-blog-signup-msg { color: var(--vpb-cream); }

/* Keyboard focus */
body.vp-blog :is(.vp-blog-more, .vp-blog-cats a, .vp-blog-copy, .vp-blog-faq summary, .vp-blog-lc-title a):focus-visible { outline: 2px solid var(--vpb-saffron); outline-offset: 3px; }

/* Phones (Elementor mobile breakpoint 767px) */
@media (max-width: 767px) {
	body.vp-blog .elementor .vp-blog-in { width: 88%; }
	body.vp-blog .elementor .vp-blog-hero { padding: 36px 0 30px; }
	body.vp-blog .elementor .vp-blog-h1 .elementor-heading-title { font-size: var(--e-global-typography-display-font-size); }
	body.vp-blog .elementor .vp-blog-body { flex-direction: column; gap: 20px; padding-top: 24px; }
	body.vp-blog .elementor .vp-blog-toc-col { flex-basis: auto; width: 100%; align-self: auto; }
	body.vp-blog .elementor .vp-blog-toc-col .elementor-widget-table-of-contents { position: static; }
	body.vp-blog .elementor .vp-blog-feat { padding: 22px 20px; }
	body.vp-blog .elementor .vp-blog-feat-title .elementor-heading-title { font-size: 28px; }
	body.vp-blog .elementor .vp-blog-band-teal .elementor-heading-title,
	body.vp-blog .elementor .vp-blog-h2-lg .elementor-heading-title { font-size: 32px; }
	body.vp-blog .elementor .vp-blog-article .vp-blog-faq-title { font-size: 26px; }
	body.vp-blog .elementor .vp-blog-tgrid { grid-template-columns: 1fr; }
}

/* Keep the blog independent of page-only marketing defaults. */
body.vp-blog { --page-title-display: block; }
body.vp-blog .elementor .vp-blog-toc-col { padding: 0; }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__header { padding: 16px 16px 8px; border-bottom: 0; }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__body { padding: 0 16px 14px; }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__list-item { padding-inline: 0; }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__list-item-text-wrapper > svg { display: none; }
body.vp-blog .elementor .vp-blog-feat { margin-bottom: 0; }
body.vp-blog .elementor .vp-blog-feat-grid { margin-bottom: 34px; }
body.vp-blog .elementor .vp-blog-stars p { color: color-mix(in srgb, var(--vpb-saffron) 50%, var(--vpb-deep)) !important; }
body.vp-blog[data-mode="dark"] .elementor .vp-blog-stars p { color: color-mix(in srgb, var(--vpb-saffron) 80%, var(--vpb-cream)) !important; }
body.vp-blog .elementor .vp-blog-band-teal .elementor-button { background: var(--vpb-saffron); color: var(--vpb-deep); }
body.vp-blog .skip-link { color: var(--vpb-deep); background: var(--vpb-saffron); }
body.vp-blog .elementor .vp-blog-share { flex-direction: row; padding-bottom: 44px; }
body.vp-blog .elementor .vp-blog-share > .elementor-element { width: auto; }
body.vp-blog .elementor .vp-blog-share .elementor-share-btn { --share-button-size: 13px; height: auto; }
body.vp-blog .elementor .vp-blog-share .elementor-share-btn__text { font-size: 13px; padding: 0; }
body.vp-blog .elementor .vp-blog-copy { box-shadow: none; }
body.vp-blog .elementor .vp-blog-by .elementor-icon-list-icon { width: 30px; flex: 0 0 30px; }
body.vp-blog .elementor .vp-blog-by img { min-width: 30px; }
body.vp-blog .elementor .vp-blog-related > .vp-blog-h2-lg .elementor-heading-title { font-size: 34px; }

body.vp-blog .elementor .vp-blog-lc-title .elementor-heading-title { font-family: var(--e-global-typography-cardtitle-font-family, 'Barlow Condensed'), sans-serif; font-weight: 700; }

body.vp-blog .elementor .elementor-pagination .page-numbers { color: var(--vpb-text); }
body.vp-blog .elementor .elementor-pagination span.prev,
body.vp-blog .elementor .elementor-pagination span.next { display: none; }

body.vp-blog .elementor .vp-blog-by :is(.elementor-icon-list-text, .elementor-icon-list-text span, a, .elementor-post-info__item--type-author) { color: var(--vpb-muted); }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__toggle-button { color: var(--vpb-text); }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__toggle-button svg { fill: currentColor; }
body.vp-blog .elementor .vp-blog-lc-title a { font: inherit; }
body.vp-blog .elementor .vp-blog-article { padding: 0; }
body.vp-blog .elementor .vp-blog-band-teal .vp-blog-in p { max-width: 56ch; margin-inline: auto; }
body.vp-blog .elementor .vp-blog-hero .vp-blog-home-h1 .elementor-heading-title { font-size: 73px; line-height: .98; }
@media (max-width: 767px) {
 body.vp-blog .elementor .vp-blog-h1 .elementor-heading-title,
 body.vp-blog .elementor .vp-blog-hero .vp-blog-home-h1 .elementor-heading-title { font-size: 46px; }
}

body.vp-blog .elementor .vp-blog-article :is(h4, h5, h6, th, td) { color: var(--vpb-text); }

/* Approved mock-up alignment and mobile Contents treatment. */
body.vp-blog .elementor .vp-blog-lc > .elementor-widget-shortcode:last-child { margin-top: auto; }
body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__list-item-text { font-size: 13px; line-height: 1.4; }
body.vp-blog .elementor .vp-blog-tgrid { padding: 0; }
body.vp-blog .elementor .vp-blog-who br { display: none; }
body.vp-blog .elementor .vp-blog-feat { gap: 12px; }
body.vp-blog .elementor .vp-blog-feat .vp-blog-lc-ex { font-size: 15px; line-height: 1.6; }
@media (max-width: 767px) {
 body.vp-blog .elementor .vp-blog-toc-col .elementor-widget-table-of-contents { border-inline: 0; border-radius: 0; box-shadow: none; background: transparent; }
 body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__header { padding: 12px 0; }
 body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__header-title { font: 600 14px/1.4 var(--e-global-typography-body-font-family, 'DM Sans'), sans-serif; }
}

body.vp-blog .elementor .vp-blog-signup-wrap { padding: 0; }
@media (max-width: 767px) {
 body.vp-blog .elementor .vp-blog-toc-col .elementor-widget-table-of-contents { border-block: 1px solid var(--vpb-divider); }
 body.vp-blog .elementor .vp-blog-toc-col .elementor-toc__toggle-button svg { width: 12px; height: 12px; }
}

body.vp-blog .elementor .vp-blog-by .elementor-icon-list-text { font-size: 13px; }
body.vp-blog .elementor .vp-blog-article .elementor-widget-theme-post-content > p:first-of-type { font-size: 16px; }

body.vp-blog .elementor .vp-blog-testi > .vp-blog-h2-lg,
body.vp-blog .elementor .vp-blog-related > .vp-blog-h2-lg { margin-bottom: 20px; }
body.vp-blog .elementor .e-load-more-anchor { padding: 0; }
