/* Vulcan7 podcast episode page (plugin 1.5.0).
   Generated from the Updated V7 Design System: its token block and the component
   rules the episode page uses, every selector scoped under .v7-pod so nothing leaks
   into the theme. Do not hand-edit: change the design system, then regenerate. */

/* Fallback face. Proxima Nova comes from the site when it is loaded there. */
@font-face { font-family: "Figtree"; font-style: normal; font-weight: 300 900; font-display: swap; src: url("figtree-latin.woff2") format("woff2"); }

/* ---------- Tokens ---------- */
.v7-pod {
  --grey-lightest: #B4B7BD;
  --grey-lighter:  #9C9FA6;
  --grey-light:    #6C6F76;
  --grey-base:     #55585F;
  --grey-dark:     #26272B;
  --grey-darker:   #111214;
  --grey-darkest:  #0A0A0B;
  --warm-lightest: #F7F5F1;
  --warm-lighter:  #F2EFEA;
  --warm-light:    #EFEBE4;
  --warm-base:     #E6E1D8;
  --warm-dark:     #D6D0C6;
  --warm-darker:   #A39B8E;
  --warm-darkest:  #6F685D;
  --orange-lightest: #FFE8DE;
  --orange-lighter:  #FF9A6E;
  --orange-light:    #FF5A1F;
  --orange-base:     #FF4000;
  --orange-dark:     #D93600;
  --orange-darker:   #B83000;
  --orange-darkest:  #8F2500;
  --status-verified: #5FD08F;
  --status-white:    #FFFFFF;
  --text-eyebrow: #3A3C41;
  --ui-panel: var(--status-white);
  --ui-bar: #FAF9F7;
  --ui-rule: var(--warm-light);
  --ui-alert: #C4122F;
  --ui-success: #1F7A4D;
  --tint-featured: rgba(255, 64, 0, .05);
  --surface-paper: var(--warm-lightest);
  --surface-stone: var(--warm-light);
  --surface-ink:   var(--grey-darkest);
  --surface-panel: var(--grey-darker);
  --surface-card:  var(--status-white);
  --text-on-light:       var(--grey-darkest);
  --text-on-light-muted: var(--grey-base);
  --text-on-ink:         var(--warm-lighter);
  --text-on-ink-strong:  var(--status-white);
  --text-on-ink-muted:   var(--grey-lightest);
  --text-on-ink-subtle:  var(--grey-lighter);
  --text-on-orange:      var(--status-white);
  --rule-light:        var(--warm-dark);
  --rule-light-strong: var(--grey-lightest);
  --rule-ink:          var(--grey-dark);
  --orange-fill:       var(--orange-base);
  --orange-fill-hover: var(--orange-light);
  --orange-text-light: var(--orange-darker);
  --orange-text-ink:   var(--orange-base);
  --orange-icon-light: var(--orange-base);
  --orange-icon-card:  var(--orange-darker);
  --font-sans: proxima-nova, Figtree, system-ui, sans-serif;
  --weight-regular: 400; --weight-medium: 500; --weight-semibold: 600; --weight-bold: 700; --weight-heavy: 800;
  --type-closer-font-size: clamp(40px, 4.6vw, 64px);  --type-closer-line-height: 1;    --type-closer-font-weight: 800; --type-closer-letter-spacing: -0.04em;
  --type-h1-font-size: clamp(44px, 5.2vw, 64px);      --type-h1-line-height: 1;        --type-h1-font-weight: 800;     --type-h1-letter-spacing: -0.04em;
  --type-h2-font-size: clamp(32px, 3.6vw, 48px);      --type-h2-line-height: 1.08;     --type-h2-font-weight: 800;     --type-h2-letter-spacing: -0.03em;
  --type-subhead-font-size: clamp(22px, 2.1vw, 28px); --type-subhead-line-height: 1.2; --type-subhead-font-weight: 700; --type-subhead-letter-spacing: -0.015em;
  --type-h3-font-size: 22px;                          --type-h3-line-height: 1.25;     --type-h3-font-weight: 800;     --type-h3-letter-spacing: -0.015em;
  --type-stat-font-size: clamp(64px, 6vw, 88px);      --type-stat-line-height: 0.88;   --type-stat-font-weight: 800;   --type-stat-letter-spacing: -0.05em;
  --type-lead-font-size: 18px;                        --type-lead-line-height: 1.65;   --type-lead-font-weight: 400;
  --type-body-font-size: 16px;                        --type-body-line-height: 1.6;    --type-body-font-weight: 400;
  --type-button-font-size: 19px;                      --type-button-line-height: 1;    --type-button-font-weight: 800;
  --type-eyebrow-font-size: 13px;                     --type-eyebrow-line-height: 1.4; --type-eyebrow-font-weight: 700; --type-eyebrow-letter-spacing: 0.14em;
  --type-label-font-size: 13px;                       --type-label-line-height: 1.4;   --type-label-font-weight: 700;   --type-label-letter-spacing: 0.14em;
  --type-faq-font-size: 18px;                         --type-faq-line-height: 1.4;     --type-faq-font-weight: 700;
  --type-quote-font-size: clamp(32px, 5vw, 72px);     --type-quote-line-height: 1.04;  --type-quote-letter-spacing: -0.04em;
  --type-h2-xl-font-size: clamp(36px, 4.4vw, 56px);   --type-h2-xl-line-height: 1.04;  --type-h2-xl-letter-spacing: -0.035em;
  --type-h3-xl-font-size: clamp(32px, 3.2vw, 44px);   --type-h3-xl-line-height: 1.05;  --type-h3-xl-letter-spacing: -0.03em;
  --type-h2-sm-font-size: 30px;                       --type-h2-sm-line-height: 1.15;  --type-h2-sm-letter-spacing: -0.02em;
  --type-h3-col-font-size: 24px;                      --type-h3-col-line-height: 1.2;  --type-h3-col-letter-spacing: -0.02em;
  --type-phone-font-size: 28px;                       --type-phone-letter-spacing: -0.01em;
  --type-stat-xl-font-size: clamp(80px, 8vw, 120px);  --type-stat-xl-line-height: 0.85; --type-stat-xl-letter-spacing: -0.05em;
  --type-stat-lg-font-size: clamp(64px, 6.8vw, 96px); --type-stat-lg-line-height: 0.88;
  --type-stat-sm-font-size: 56px;                     --type-stat-sm-line-height: 0.95; --type-stat-sm-letter-spacing: -0.045em;
  --type-price-font-size: 48px;                      --type-price-letter-spacing: -0.03em;
  --type-stat-compact-font-size: 40px;               --type-stat-compact-line-height: 1; --type-stat-compact-letter-spacing: -0.03em;
  --type-stat-sub-font-size: 22px;                    --type-stat-sub-line-height: 1.3; --type-stat-sub-letter-spacing: -0.01em;
  --type-stat-note-line-height: 1.4;
  --type-title-font-size: 20px;                       --type-title-line-height: 1.25;  --type-title-letter-spacing: -0.01em;
  --type-intro-font-size: 20px;                       --type-intro-line-height: 1.4;
  --type-lead-lg-font-size: 19px;                     --type-lead-lg-line-height: 1.65;
  --type-faq-answer-font-size: 17px;                  --type-faq-answer-line-height: 1.65;
  --type-sub-font-size: 17px;
  --type-caption-name-font-size: 17px;
  --type-note-font-size: 14px;                        --type-note-line-height: 1.6;
  --type-count-font-size: 13px;                       --type-count-letter-spacing: 0.12em;
  --type-kicker-font-size: 12px;                      --type-kicker-letter-spacing: 0.14em;
  --type-band-font-size: 12px;
  --type-meta-font-size: 12px;                        --type-meta-line-height: 1.4;    --type-meta-letter-spacing: 0.12em;
  --type-micro-font-size: 11px;                       --type-micro-letter-spacing: 0.14em;
  --ui-font-size-xxs: 9px; --ui-font-size-xs: 10px; --ui-font-size-sm: 11px; --ui-font-size-md: 12px;
  --ui-font-size-base: 13px; --ui-font-size-lg: 14px; --ui-font-size-xl: 20px; --ui-font-size-num: 40px;
  --space-page-desktop: 72px;
  --space-page-tablet: 32px;
  --space-page-mobile: 16px;
  --space-gutter: 24px;
  --space-column: 48px;
  --space-header: 64px;
  --space-section: 120px;
  --container: 1240px;
  --space-page: 24px;
  --space-section-hero-top: 112px;
  --space-section-close: 144px;
  --space-video-overlap: 180px;
  --space-band-top: calc(var(--space-video-overlap) + 72px);
  --space-band-bottom: 88px;
  --space-header-hero: 72px;
  --space-eyebrow: 24px;
  --space-stack-sm: 20px;
  --space-text: 28px;
  --space-column-intro: 64px;
  --space-column-split: 80px;
  --space-row-intro: 32px;
  --space-row-ui: 40px;
  --space-buttons: 12px;
  --space-card: 16px;
  --space-col: 14px;
  --space-stat: 12px;
  --space-caption: 10px;
  --space-ui-item: 20px;
  --pad-card: 32px;  --pad-feature: 56px;  --pad-feature-mobile: 32px 24px;  --pad-package: 40px 36px;
  --pad-col-x: 28px; --pad-pillar: 24px 28px; --pad-stat: 40px 32px 40px 0; --pad-stat-band: 0 32px; --pad-faq-y: 22px;
  --pad-button: 0 32px; --pad-button-outline: 0 28px;
  --measure-quote: 1100px; --measure-h2: 800px; --measure-head: 760px; --measure-copy: 460px; --measure-single: 560px;
  --radius-pill: 999px;
  --radius-label: 4px;
  --radius-panel: 6px;
  --radius-card: 8px;
  --radius-ui-tag: 3px;
  --radius-round: 50%;
  --rule-width: 1px;  --caret-width: 1.5px;
  --shadow-video: 0 40px 100px rgba(10, 10, 11, .35);
  --shadow-play: 0 12px 40px rgba(255, 64, 0, .4);
  --shadow-ui: 0 16px 40px rgba(10, 10, 11, .08);
  --shadow-card-hover: 0 18px 50px rgba(10, 10, 11, .08);
  --shadow-featured: 0 30px 80px rgba(10, 10, 11, .18);
  --gradient-poster: linear-gradient(180deg, rgba(10, 10, 11, 0) 55%, rgba(10, 10, 11, .55) 100%);
  --size-button: 58px; --size-dot: 8px; --size-play: 96px; --size-play-glyph: 56px; --size-arrow: 56px;
  --size-faq-toggle: 28px; --size-avatar: 80px; --size-avatar-sm: 48px;
  --icon-pillar: 28px; --icon-card: 24px; --icon-phone: 22px; --icon-label: 20px; --icon-button: 18px;
  --icon-check: 16px; --icon-link: 15px; --icon-tag: 14px; --icon-faq: 12px;
  --motion-fast: .15s; --motion-base: .2s; --motion-hover-scale: 1.06; --motion-loop-ui: 6s;
}

/* ---------- Theme guards: stop theme link, button and heading styles reaching the page ---------- */
.v7-pod :where(a):hover, .v7-pod :where(a):focus { color: inherit; text-decoration: none; }
.v7-pod :where(button, input) { margin: 0; text-transform: none; letter-spacing: normal; text-shadow: none; box-shadow: none; background-image: none; }
.v7-pod :where(h1, h2, h3, p) { text-transform: none; }
.v7-pod :where(summary) { margin: 0; font-style: inherit; }
.v7-pod :where(li) { line-height: inherit; }
.v7-pod :where(aside, details, figure, nav) { margin: 0; float: none; width: auto; }

/* ---------- Design system components (subset) ---------- */
.v7-pod { font-family: var(--font-sans); color: var(--text-on-light); background: var(--surface-ink); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-size: 16px; font-weight: 400; line-height: 1.5; text-align: left; overflow-x: clip; }
.v7-pod *, .v7-pod *::before, .v7-pod *::after { box-sizing: border-box; }
.v7-pod :where(h1, h2, h3, h4, p, ul, ol, li, figure, blockquote, cite, dl, dd) { margin: 0; padding: 0; }
.v7-pod :where(h1, h2, h3, h4) { font-family: var(--font-sans); color: inherit; font-weight: var(--weight-heavy); }
.v7-pod :where(ul, ol) { list-style: none; }
.v7-pod :where(img) { display: block; max-width: 100%; height: auto; border: 0; }
.v7-pod :where(a) { color: inherit; text-decoration: none; }
.v7-pod :where(button) { font: inherit; color: inherit; margin: 0; }
.v7-pod :where(strong, b) { font-weight: var(--weight-bold); }
.v7-pod :where(svg) { fill: none; flex: none; }
.v7-pod .v7-sec { padding: var(--space-section) var(--space-page); line-height: normal; }
.v7-pod .v7-sec--paper { background: var(--surface-paper); color: var(--text-on-light); }
.v7-pod .v7-sec--stone { background: var(--surface-stone); color: var(--text-on-light); }
.v7-pod .v7-sec--ink { background: var(--surface-ink); color: var(--text-on-ink); }
.v7-pod .v7-sec--seam { border-top: var(--rule-width) solid var(--rule-light); }
.v7-pod .v7-sec--hero { padding: var(--space-section-hero-top) var(--space-page) 0; }
.v7-pod .v7-sec--band { padding: var(--space-band-top) var(--space-page) var(--space-band-bottom); }
.v7-pod .v7-sec--band-solo { padding: var(--space-band-bottom) var(--space-page); }
.v7-pod .v7-sec--close { padding: var(--space-section-close) var(--space-page); }
.v7-pod .v7-wrap { width: 100%; max-width: var(--container); margin: 0 auto; }
.v7-pod .v7-stack { display: flex; flex-direction: column; gap: var(--space-header); }
.v7-pod .v7-stack--xl { gap: var(--space-header-hero); }
.v7-pod .v7-stack--md { gap: var(--space-header); }
.v7-pod .v7-stack--sm { gap: var(--space-stack-sm); }
.v7-pod .v7-stack--48 { gap: 48px; }
.v7-pod .v7-h1 { font-size: var(--type-h1-font-size); line-height: var(--type-h1-line-height); letter-spacing: var(--type-h1-letter-spacing); font-weight: var(--weight-heavy); color: var(--text-on-light); }
.v7-pod .v7-h2 { font-size: var(--type-h2-font-size); line-height: var(--type-h2-line-height); letter-spacing: var(--type-h2-letter-spacing); font-weight: var(--weight-heavy); color: var(--text-on-light); }
.v7-pod .v7-h2--xl { font-size: var(--type-h2-xl-font-size); line-height: var(--type-h2-xl-line-height); letter-spacing: var(--type-h2-xl-letter-spacing); max-width: var(--measure-h2); }
.v7-pod .v7-h2--close { font-size: var(--type-closer-font-size); line-height: var(--type-closer-line-height); letter-spacing: var(--type-closer-letter-spacing); }
.v7-pod .v7-h2--sm { font-size: var(--type-h2-sm-font-size); line-height: var(--type-h2-sm-line-height); letter-spacing: var(--type-h2-sm-letter-spacing); }
.v7-pod .v7-h3 { font-size: var(--type-h3-font-size); line-height: var(--type-h3-line-height); letter-spacing: var(--type-h3-letter-spacing); font-weight: var(--weight-heavy); color: var(--text-on-light); }
.v7-pod .v7-h3--col { font-size: var(--type-h3-col-font-size); line-height: var(--type-h3-col-line-height); letter-spacing: var(--type-h3-col-letter-spacing); }
.v7-pod .v7-h3--xl { font-size: var(--type-h3-xl-font-size); line-height: var(--type-h3-xl-line-height); letter-spacing: var(--type-h3-xl-letter-spacing); }
.v7-pod .v7-sec--ink :is(.v7-h1, .v7-h2, .v7-h3) { color: var(--text-on-ink); }
.v7-pod .v7-accent { color: var(--orange-text-light); }
.v7-pod .v7-sec--ink .v7-accent { color: var(--orange-text-ink); }
.v7-pod .v7-lead { font-size: var(--type-lead-font-size); line-height: var(--type-lead-line-height); color: var(--text-on-light-muted); }
.v7-pod .v7-lead--hero { font-size: var(--type-lead-lg-font-size); line-height: var(--type-lead-lg-line-height); color: var(--text-on-light); }
.v7-pod .v7-sec--ink .v7-lead { color: var(--text-on-ink-muted); }
.v7-pod .v7-intro-strong { font-size: var(--type-intro-font-size); line-height: var(--type-intro-line-height); font-weight: var(--weight-bold); color: var(--text-on-light); }
.v7-pod .v7-body { font-size: var(--type-body-font-size); line-height: var(--type-body-line-height); color: var(--text-on-light-muted); }
.v7-pod .v7-note { font-size: var(--type-note-font-size); line-height: var(--type-note-line-height); color: var(--text-on-light-muted); max-width: var(--measure-copy); }
.v7-pod .v7-sec--ink :is(.v7-body, .v7-note) { color: var(--text-on-ink-muted); }
.v7-pod .v7-label { display: flex; align-items: center; gap: 12px; font-family: var(--font-sans); font-size: var(--type-eyebrow-font-size); font-weight: var(--weight-bold); line-height: var(--type-eyebrow-line-height); letter-spacing: var(--type-eyebrow-letter-spacing); text-transform: uppercase; color: var(--grey-base); }
.v7-pod .v7-label::before { content: ""; width: var(--size-dot); height: var(--size-dot); background: var(--orange-fill); flex: none; }
.v7-pod .v7-label--hero { color: var(--text-eyebrow); }
.v7-pod .v7-sec--ink .v7-label { color: var(--text-on-ink-subtle); }
.v7-pod .v7-kicker { font-size: var(--type-kicker-font-size); font-weight: var(--weight-regular); letter-spacing: var(--type-kicker-letter-spacing); text-transform: uppercase; color: var(--orange-text-light); }
.v7-pod .v7-btns { display: flex; flex-wrap: wrap; gap: var(--space-buttons); }
.v7-pod .v7-btn, .v7-pod .v7-btn-ol, .v7-pod .v7-btn-ol-d { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: var(--size-button); border-radius: var(--radius-pill); font-family: var(--font-sans); font-size: var(--type-button-font-size); font-weight: var(--weight-heavy); line-height: normal; text-decoration: none; cursor: pointer; white-space: nowrap; transition: background-color var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast); }
.v7-pod .v7-btn svg, .v7-pod .v7-btn-ol svg, .v7-pod .v7-btn-ol-d svg { width: var(--icon-button); height: var(--icon-button); }
.v7-pod .v7-btn { padding: var(--pad-button); background: var(--orange-fill); color: var(--text-on-orange); border: 0; }
.v7-pod .v7-btn:hover { background: var(--orange-fill-hover); }
.v7-pod .v7-btn:active { background: var(--orange-dark); }
.v7-pod .v7-btn-ol { padding: var(--pad-button-outline); background: transparent; color: var(--text-on-light); border: var(--rule-width) solid var(--text-on-light); }
.v7-pod .v7-btn-ol:hover { background: var(--grey-darkest); color: var(--warm-lighter); }
.v7-pod .v7-btn-ol-d { padding: var(--pad-button-outline); background: transparent; color: var(--text-on-ink); border: var(--rule-width) solid var(--grey-light); }
.v7-pod .v7-btn-ol-d:hover { background: var(--warm-lighter); color: var(--grey-darkest); border-color: var(--warm-lighter); }
.v7-pod :is(.v7-btn, .v7-btn-ol, .v7-btn-ol-d):focus-visible { outline: 2px solid var(--orange-base); outline-offset: 3px; }
.v7-pod .v7-link { display: inline-flex; align-items: center; gap: 8px; font-size: var(--type-body-font-size); font-weight: var(--weight-bold); line-height: normal; color: var(--orange-text-light); text-decoration: none; }
.v7-pod .v7-link svg { width: var(--icon-link); height: var(--icon-link); }
.v7-pod .v7-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.v7-pod .v7-link:focus-visible { outline: 2px solid var(--orange-base); outline-offset: 3px; }
.v7-pod .v7-intro { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr)); gap: var(--space-row-intro) var(--space-column-intro); }
.v7-pod .v7-head { display: flex; flex-direction: column; gap: var(--space-eyebrow); }
.v7-pod .v7-head--stack { gap: var(--space-stack-sm); max-width: var(--measure-head); }
.v7-pod .v7-intro__side { display: flex; flex-direction: column; gap: 32px; }
.v7-pod .v7-head--center { align-items: center; text-align: center; max-width: var(--measure-head); margin: 0 auto; }
.v7-pod .v7-head--center .v7-label { justify-content: center; }
.v7-pod .v7-intro { align-items: start; }
@media (min-width: 1032px) {
  .v7-pod .v7-intro > .v7-head:has(> .v7-label) ~ * { margin-top: calc(var(--type-eyebrow-font-size) * var(--type-eyebrow-line-height) + var(--space-eyebrow)); }
}
.v7-pod .v7-video { position: relative; border-radius: var(--radius-panel); overflow: hidden; background: var(--surface-panel); aspect-ratio: 16 / 9; box-shadow: var(--shadow-video); }
.v7-pod .v7-video--overlap { margin-bottom: calc(-1 * var(--space-video-overlap)); }
.v7-pod .v7-play { display: block; position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: var(--grey-darkest); cursor: pointer; }
.v7-pod .v7-play img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.v7-pod .v7-play__shade { position: absolute; inset: 0; background: var(--gradient-poster); }
.v7-pod .v7-play__disc { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: var(--size-play); height: var(--size-play); border-radius: var(--radius-pill); background: var(--orange-fill); color: var(--status-white); display: flex; align-items: center; justify-content: center; padding-left: 5px; box-shadow: var(--shadow-play); transition: transform var(--motion-base); }
.v7-pod .v7-play__disc svg { width: var(--size-play-glyph); height: var(--size-play-glyph); fill: currentColor; }
.v7-pod .v7-play:hover .v7-play__disc, .v7-pod .v7-play:focus-visible .v7-play__disc { transform: translate(-50%, -50%) scale(var(--motion-hover-scale)); }
.v7-pod .v7-play:focus-visible { outline: 3px solid var(--orange-base); outline-offset: -3px; }
.v7-pod .v7-play__cap { position: absolute; left: 32px; bottom: 28px; display: flex; align-items: center; gap: 12px; font-size: var(--type-kicker-font-size); letter-spacing: var(--type-kicker-letter-spacing); text-transform: uppercase; color: var(--warm-lighter); }
.v7-pod .v7-play__cap::before { content: ""; width: var(--size-dot); height: var(--size-dot); background: var(--orange-fill); }
.v7-pod .v7-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.v7-pod .v7-card { display: flex; flex-direction: column; gap: var(--space-card); padding: var(--pad-card); background: var(--surface-paper); border: var(--rule-width) solid var(--rule-light); border-radius: var(--radius-panel); transition: border-color var(--motion-fast), box-shadow var(--motion-fast); }
.v7-pod .v7-sec--paper .v7-card { background: var(--surface-stone); }
.v7-pod a.v7-card:hover, .v7-pod .v7-card--hover:hover { box-shadow: var(--shadow-card-hover); border-color: var(--grey-darkest); }
.v7-pod .v7-card svg.v7-card__icon { width: var(--icon-card); height: var(--icon-card); color: var(--orange-icon-card); }
.v7-pod .v7-card .v7-body { line-height: var(--type-body-line-height); }
.v7-pod .v7-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: var(--space-gutter); }
.v7-pod .v7-faq { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 440px), 1fr)); gap: 0 var(--space-column-intro); align-items: start; }
.v7-pod .v7-faq__col { display: flex; flex-direction: column; border-bottom: var(--rule-width) solid var(--rule-light); }
.v7-pod .v7-faq__item { border-top: var(--rule-width) solid var(--rule-light); }
.v7-pod .v7-faq__item summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; padding: var(--pad-faq-y) 0; }
.v7-pod .v7-faq__item summary::-webkit-details-marker { display: none; }
.v7-pod .v7-faq__item summary:focus-visible { outline: 2px solid var(--orange-base); outline-offset: 4px; }
.v7-pod .v7-faq__q { font-size: var(--type-faq-font-size); line-height: var(--type-faq-line-height); font-weight: var(--weight-bold); color: var(--text-on-light); }
.v7-pod .v7-faq__icon { flex: none; width: var(--size-faq-toggle); height: var(--size-faq-toggle); border-radius: var(--radius-pill); border: var(--rule-width) solid var(--rule-light-strong); color: var(--text-on-light); display: flex; align-items: center; justify-content: center; transition: background var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast); }
.v7-pod .v7-faq__icon svg { width: var(--icon-faq); height: var(--icon-faq); }
.v7-pod .v7-faq__item[open] .v7-faq__icon { background: var(--grey-darkest); border-color: var(--grey-darkest); color: var(--warm-lighter); }
.v7-pod .v7-faq__item[open] .v7-faq__v { display: none; }
.v7-pod .v7-faq__a { padding: 0 52px 24px 0; font-size: var(--type-faq-answer-font-size); line-height: var(--type-faq-answer-line-height); color: var(--grey-base); }
.v7-pod .v7-ccta { display: flex; flex-direction: column; align-items: center; gap: var(--space-text); text-align: center; max-width: var(--measure-quote); margin: 0 auto; }
.v7-pod .v7-ccta .v7-lead { max-width: var(--measure-head); }
.v7-pod .v7-ccta .v7-btns { justify-content: center; }
.v7-pod .v7-index { display: flex; flex-direction: column; border-bottom: var(--rule-width) solid var(--rule-light); }
.v7-pod .v7-index > li { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 0 24px; padding: 24px 0; border-top: var(--rule-width) solid var(--rule-light); }
.v7-pod .v7-index__n { font-size: var(--type-title-font-size); line-height: 1.25; font-weight: var(--weight-heavy); color: var(--orange-text-light); font-variant-numeric: tabular-nums; }
.v7-pod .v7-index li > div { display: flex; flex-direction: column; gap: 6px; }
.v7-pod .v7-index .v7-h3 { font-size: var(--type-title-font-size); line-height: var(--type-title-line-height); letter-spacing: var(--type-title-letter-spacing); }
.v7-pod .v7-cards > .v7-card { display: grid; grid-row: span var(--rows, 3); grid-template-rows: subgrid; row-gap: var(--space-card); align-content: start; }
.v7-pod .v7-intro__action { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-gutter); }
@media (max-width: 560px) {
  .v7-pod .v7-btn, .v7-pod .v7-btn-ol, .v7-pod .v7-btn-ol-d { white-space: normal; text-align: center; line-height: 1.2; padding-top: 12px; padding-bottom: 12px; max-width: 100%; }
}

/* ---------- Episode additions: tokens only ---------- */
.v7-pod { --v7-ep-head: 65px; --v7-ep-clear: calc(var(--v7-ep-head) + var(--space-row-intro)); }
.v7-pod .v7-ep-top { display: flex; flex-direction: column; gap: var(--space-row-intro); }
.v7-pod .v7-ep-top .v7-h1 { max-width: var(--measure-quote); text-wrap: balance; }
.v7-pod .v7-ep-top .v7-lead--hero { max-width: var(--measure-head); }
.v7-pod .v7-ep-back { align-self: flex-start; }
.v7-pod .v7-ep-back svg { transform: rotate(180deg); }
.v7-pod .v7-pod-meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 var(--space-stat); font-size: var(--type-note-font-size); line-height: var(--type-note-line-height); color: var(--text-on-light-muted); }
.v7-pod .v7-pod-meta > * + *::before { content: "\00B7"; margin-right: var(--space-stat); color: var(--warm-darker); }
.v7-pod .v7-pod-meta__who { font-weight: var(--weight-bold); color: var(--text-on-light); }
.v7-pod .v7-ep-top .v7-pod-meta { margin-top: calc(-1 * var(--space-card)); font-size: var(--type-body-font-size); line-height: var(--type-body-line-height); }
.v7-pod .v7-ep-guestline { font-size: var(--type-lead-font-size); line-height: var(--type-lead-line-height); color: var(--text-on-light-muted); }
.v7-pod .v7-ep-guestline strong { color: var(--text-on-light); }
.v7-pod .v7-ep-media { display: flex; flex-direction: column; gap: var(--space-gutter); margin-top: var(--space-header); }
.v7-pod .v7-ep-media .v7-video { box-shadow: var(--shadow-ui); }
.v7-pod .v7-play img { max-width: none; }
.v7-pod a.v7-play:hover, .v7-pod a.v7-play:focus { color: var(--status-white); }
.v7-pod .v7-ep-listen { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-stat) var(--space-gutter); }
.v7-pod .v7-ep-key { font-size: var(--type-meta-font-size); line-height: var(--type-meta-line-height); letter-spacing: var(--type-meta-letter-spacing); font-weight: var(--weight-bold); text-transform: uppercase; color: var(--text-on-light-muted); }
.v7-pod a.v7-link:hover, .v7-pod a.v7-link:focus { color: var(--orange-text-light); }
.v7-pod a.v7-btn-ol:hover, .v7-pod a.v7-btn-ol:focus { color: var(--warm-lighter); text-decoration: none; }
.v7-pod a.v7-btn-ol-d:hover, .v7-pod a.v7-btn-ol-d:focus { color: var(--grey-darkest); text-decoration: none; }
.v7-pod a.v7-btn:hover, .v7-pod a.v7-btn:focus { color: var(--status-white); text-decoration: none; }
.v7-pod .v7-ep-side { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-row-intro); }
@media (min-width: 1032px) {
  .v7-pod .v7-ep-side { position: sticky; top: var(--v7-ep-clear); }
}
.v7-pod .v7-ep-take .v7-index .v7-lead { color: var(--text-on-light); }
.v7-pod .v7-ep-read { display: grid; grid-template-columns: minmax(0, var(--measure-head)) minmax(0, 1fr); column-gap: var(--space-column-split); align-items: start; }
.v7-pod .v7-ep-text { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; min-width: 0; }
.v7-pod .v7-ep-rail { grid-column: 2; grid-row: 1; position: sticky; top: var(--v7-ep-clear); display: flex; flex-direction: column; gap: var(--space-row-intro); max-height: calc(100vh - var(--v7-ep-clear) - var(--space-row-intro)); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.v7-pod .v7-ep-nav { flex: 0 1 auto; min-height: 0; display: flex; flex-direction: column; gap: var(--space-row-intro); }
.v7-pod .v7-ep-prog, .v7-pod .v7-ep-rail > .v7-ep-promo, .v7-pod .v7-ep-top-link { flex: none; }
.v7-pod .v7-ep-prog { display: flex; flex-direction: column; gap: var(--space-caption); }
.v7-pod .v7-ep-prog__label { font-size: var(--type-meta-font-size); line-height: var(--type-meta-line-height); letter-spacing: var(--type-meta-letter-spacing); font-weight: var(--weight-bold); text-transform: uppercase; color: var(--text-on-light); }
.v7-pod .v7-ep-prog__bar { display: block; height: calc(var(--rule-width) * 3); background: var(--rule-light); }
.v7-pod .v7-ep-prog__bar span { display: block; height: 100%; width: 0; background: var(--grey-darkest); transition: width var(--motion-base); }
.v7-pod .v7-ep-toggle { display: none; }
.v7-pod .v7-ep-chs { flex: none; display: flex; flex-direction: column; border-bottom: var(--rule-width) solid var(--rule-light); }
.v7-pod .v7-ep-chs--scroll { flex: 0 1 auto; min-height: calc(var(--space-section) * 1.5); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.v7-pod .v7-ep-chs > li { flex: none; }
.v7-pod .v7-ep-chs a { display: grid; grid-template-columns: calc(var(--space-gutter) * 2) minmax(0, 1fr); gap: 0 var(--space-stat); padding: var(--space-stat) 0; border-top: var(--rule-width) solid var(--rule-light); font-size: var(--type-note-font-size); line-height: var(--type-note-line-height); color: var(--text-on-light-muted); }
.v7-pod .v7-ep-chs a:hover, .v7-pod .v7-ep-chs a:focus { color: var(--text-on-light); }
.v7-pod .v7-ep-chs a:focus-visible { outline: 2px solid var(--orange-base); outline-offset: 2px; }
.v7-pod .v7-ep-chs a[aria-current="true"], .v7-pod .v7-ep-chs a[aria-current="true"]:hover { color: var(--text-on-light); font-weight: var(--weight-bold); }
.v7-pod .v7-ep-chs__t { font-variant-numeric: tabular-nums; }
.v7-pod .v7-ep-top-link { align-self: flex-start; }
.v7-pod .v7-ep-top-link svg { transform: rotate(-90deg); }
.v7-pod .v7-card .v7-col-end { margin-top: auto; padding-top: 4px; }
.v7-pod .v7-ep-promo .v7-h3 { font-size: var(--type-h3-col-font-size); line-height: var(--type-h3-col-line-height); letter-spacing: var(--type-h3-col-letter-spacing); }
.v7-pod .v7-ep-promo--after { display: none; grid-column: 1; grid-row: 2; margin-top: var(--space-column); }
.v7-pod .v7-ep-ch { display: flex; flex-direction: column; gap: var(--space-caption); font-family: var(--font-sans); text-transform: none; margin-top: var(--space-column); padding-top: var(--space-row-intro); border-top: var(--rule-width) solid var(--rule-light); scroll-margin-top: var(--v7-ep-clear); font-size: var(--type-h3-col-font-size); line-height: var(--type-h3-col-line-height); letter-spacing: var(--type-h3-col-letter-spacing); font-weight: var(--weight-heavy); color: var(--text-on-light); }
.v7-pod .v7-ep-ch__t { font-size: var(--type-meta-font-size); line-height: var(--type-meta-line-height); letter-spacing: var(--type-meta-letter-spacing); font-weight: var(--weight-bold); color: var(--text-on-light-muted); font-variant-numeric: tabular-nums; }
.v7-pod .v7-turn { display: flex; flex-direction: column; gap: var(--space-stat); margin-top: var(--space-row-intro); }
.v7-pod .v7-turn--cont { margin-top: var(--space-stat); }
.v7-pod .v7-speaker { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 var(--space-stat); font-size: var(--type-body-font-size); line-height: var(--type-body-line-height); font-weight: var(--weight-bold); color: var(--text-on-light); }
.v7-pod .v7-speaker span { font-size: var(--type-note-font-size); font-weight: var(--weight-regular); color: var(--text-on-light-muted); font-variant-numeric: tabular-nums; }
.v7-pod .v7-line, .v7-pod .v7-ep-text > p { font-size: var(--type-lead-font-size); line-height: var(--type-lead-line-height); color: var(--text-on-light); overflow-wrap: break-word; }
.v7-pod .v7-ep-text > p { margin-top: var(--space-row-intro); }
.v7-pod .v7-turn--host .v7-line { color: var(--text-on-light-muted); }
.v7-pod .v7-cont { margin-right: var(--space-caption); font-size: var(--type-meta-font-size); letter-spacing: var(--type-meta-letter-spacing); font-weight: var(--weight-bold); color: var(--text-on-light-muted); font-variant-numeric: tabular-nums; }
.v7-pod .v7-ep-text > :first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.v7-pod .v7-editor-note { display: block; margin-top: var(--space-row-intro); padding: var(--pad-card); border: var(--rule-width) solid var(--rule-light); border-radius: var(--radius-panel); background: var(--surface-paper); font-size: var(--type-body-font-size); line-height: var(--type-body-line-height); color: var(--text-on-light-muted); }
.v7-pod .v7-sec--paper .v7-editor-note { background: var(--surface-stone); }
.v7-pod .v7-editor-note > strong:first-child { display: block; margin-bottom: var(--space-card); font-size: var(--type-kicker-font-size); font-weight: var(--weight-regular); letter-spacing: var(--type-kicker-letter-spacing); text-transform: uppercase; color: var(--orange-text-light); }
.v7-pod :is(.v7-ep-text, .v7-ep-guest, .v7-faq__a, .v7-ep-plain) a:not([class]) { color: var(--orange-text-light); font-weight: var(--weight-bold); text-decoration: underline; text-underline-offset: 4px; }
.v7-pod :is(.v7-ep-text, .v7-ep-guest, .v7-faq__a, .v7-ep-plain) a:not([class]):hover, .v7-pod :is(.v7-ep-text, .v7-ep-guest, .v7-faq__a, .v7-ep-plain) a:not([class]):focus { color: var(--orange-darkest); text-decoration: underline; }
.v7-pod .v7-ep-guest { display: flex; flex-direction: column; gap: var(--space-card); }
.v7-pod .v7-ep-plain p + p { margin-top: var(--space-card); }
.v7-pod .v7-pod-card { --rows: 4; color: var(--text-on-light); }
.v7-pod a.v7-pod-card:hover, .v7-pod a.v7-pod-card:focus { color: var(--text-on-light); }
.v7-pod .v7-pod-card .v7-h3 { text-wrap: pretty; }
.v7-pod .v7-pod-card .v7-pod-meta { align-self: end; }
.v7-pod .v7-pod-thumb { position: relative; display: block; margin: 0; aspect-ratio: 16 / 9; border-radius: var(--radius-panel); overflow: hidden; background: var(--surface-panel); }
.v7-pod .v7-pod-thumb img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.v7-pod .v7-pod-thumb--bare { display: flex; align-items: center; justify-content: center; padding: var(--space-gutter); background: var(--surface-ink); color: var(--text-on-ink-subtle); font-size: var(--type-meta-font-size); line-height: var(--type-meta-line-height); letter-spacing: var(--type-meta-letter-spacing); font-weight: var(--weight-bold); text-transform: uppercase; text-align: center; }
.v7-pod .v7-ep-action { display: flex; align-items: flex-end; justify-content: flex-end; }
@media (min-width: 1048px) {
  .v7-pod .v7-ep-half { max-width: calc((100% - var(--space-column-intro)) / 2); }
}
.v7-pod .v7-ep-preview { padding: var(--space-stat) var(--space-page); background: var(--surface-ink); color: var(--text-on-ink); font-size: var(--type-note-font-size); line-height: var(--type-note-line-height); text-align: center; }
@media (min-width: 1032px) and (max-height: 820px) {
  .v7-pod .v7-ep-rail, .v7-pod .v7-ep-nav { gap: var(--space-card); }
  .v7-pod .v7-ep-top-link { display: none; }
}
@media (max-width: 1031px) {
  .v7-pod .v7-ep-read { grid-template-columns: minmax(0, 1fr); row-gap: var(--space-row-intro); }
  .v7-pod .v7-ep-text { grid-row: auto; }
  .v7-pod .v7-ep-rail { grid-column: 1; grid-row: auto; position: static; max-height: none; overflow: visible; gap: var(--space-stat); }
  .v7-pod .v7-ep-rail--bare { display: none; }
  .v7-pod .v7-ep-nav { gap: var(--space-stat); }
  .v7-pod .v7-ep-chs, .v7-pod .v7-ep-chs--scroll { flex: none; min-height: 0; overflow: visible; }
  .v7-pod .v7-ep-rail > .v7-ep-promo, .v7-pod .v7-ep-rail > .v7-ep-top-link { display: none; }
  .v7-pod .v7-ep-promo--after { display: flex; grid-row: auto; margin-top: var(--space-row-intro); }
  .v7-pod .v7-ep-action { justify-content: flex-start; }
  .v7-pod .v7-ep-ch { scroll-margin-top: calc(var(--v7-ep-head) + var(--space-gutter)); }
  .v7-pod.v7-ep-js .v7-ep-rail { position: sticky; top: var(--v7-ep-head); z-index: 20; margin: 0 calc(-1 * var(--space-page)); padding: var(--space-stat) var(--space-page); background: var(--surface-stone); border-bottom: var(--rule-width) solid var(--rule-light); }
  .v7-pod.v7-ep-js .v7-sec--paper .v7-ep-rail { background: var(--surface-paper); }
  .v7-pod.v7-ep-js .v7-ep-toggle { display: flex; align-items: center; justify-content: space-between; gap: var(--space-card); width: 100%; min-height: calc(var(--space-gutter) * 2); padding: 0; border: 0; border-radius: 0; background: transparent; font-family: var(--font-sans); font-size: var(--type-note-font-size); line-height: var(--type-note-line-height); font-weight: var(--weight-bold); color: var(--text-on-light); text-align: left; cursor: pointer; }
  .v7-pod.v7-ep-js .v7-ep-toggle:hover, .v7-pod.v7-ep-js .v7-ep-toggle:focus { border: 0; background: transparent; color: var(--text-on-light); }
  .v7-pod.v7-ep-js .v7-ep-toggle:focus-visible { outline: 2px solid var(--orange-base); outline-offset: 2px; }
  .v7-pod .v7-ep-toggle svg { flex: none; width: var(--icon-check); height: var(--icon-check); transition: transform var(--motion-fast); }
  .v7-pod .v7-ep-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
  .v7-pod.v7-ep-js .v7-ep-chs { display: none; }
  .v7-pod.v7-ep-js .v7-ep-rail[data-open] .v7-ep-chs { display: flex; max-height: 60vh; overflow: auto; overscroll-behavior: contain; }
  .v7-pod.v7-ep-js .v7-ep-ch { scroll-margin-top: calc(var(--v7-ep-head) + var(--v7-ep-bar, 114px) + var(--space-stat)); }
}
.v7-pod [hidden] { display: none !important; }

/* ---------- Page chrome ---------- */
/* The site reserves 80px under every page for the sticky affiliate bar. With no bar on the page it is an empty strip. */
body.v7-podcast-episode:not(:has(#sticky-aff-bar)) { padding-bottom: 0; }
