:root{
  --vvp-navy:#0B1F3B;
  --vvp-red:#C7362F;
  --vvp-text:#111827;
  --vvp-muted:#4B5563;
  --vvp-line:#E5E7EB;
  --vvp-bg:#F6F7F9;
  --vvp-white:#FFFFFF;
}
.vvp-podcast-player{display:grid;grid-template-columns:minmax(210px,34%) 1fr;margin:28px 0;border:1px solid var(--vvp-line);border-radius:18px;overflow:hidden;background:var(--vvp-white);box-shadow:0 8px 28px rgba(11,31,59,.07)}
.vvp-podcast-player__cover{min-height:220px;background:var(--vvp-bg);overflow:hidden}
.vvp-podcast-player__cover img{width:100%;height:100%;min-height:220px;object-fit:cover;display:block}
.vvp-podcast-player__panel{padding:28px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.vvp-podcast-player__eyebrow{font-size:12px;line-height:1.4;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--vvp-red);margin-bottom:10px}
.vvp-podcast-player__title{font-size:clamp(20px,2vw,28px);line-height:1.25;font-weight:750;color:var(--vvp-navy);margin-bottom:20px}
.vvp-podcast-player__controls{display:grid;grid-template-columns:auto auto auto auto minmax(80px,1fr) auto auto;align-items:center;gap:10px}
.vvp-podcast-player button,.vvp-podcast-sticky button{font:inherit;border:0;cursor:pointer}
.vvp-audio-play{width:46px;height:46px;border-radius:50%;background:var(--vvp-red);color:#fff;font-weight:800}
.vvp-audio-skip,.vvp-audio-speed{height:36px;padding:0 10px;border-radius:9px!important;background:var(--vvp-bg);color:var(--vvp-navy);font-weight:700}
.vvp-audio-current,.vvp-audio-duration{font-variant-numeric:tabular-nums;font-size:13px;color:var(--vvp-muted)}
.vvp-audio-progress{width:100%;accent-color:var(--vvp-red);cursor:pointer}
.vvp-podcast-player__episode{display:inline-block;margin-top:18px;color:var(--vvp-navy);font-weight:700;text-decoration:none}
.vvp-podcast-player__episode:hover{text-decoration:underline}

.vvp-podcast-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.vvp-podcast-card{border:1px solid var(--vvp-line);border-radius:16px;overflow:hidden;background:#fff;transition:transform .18s ease,box-shadow .18s ease}
.vvp-podcast-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(11,31,59,.08)}
.vvp-podcast-card__image{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--vvp-bg)}
.vvp-podcast-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.vvp-podcast-card:hover .vvp-podcast-card__image img{transform:scale(1.02)}
.vvp-podcast-card__play{position:absolute;left:18px;bottom:18px;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--vvp-red);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.2);font-size:17px}
.vvp-podcast-card__body{padding:18px 18px 22px}
.vvp-podcast-card__meta{font-size:12px;font-weight:700;color:var(--vvp-red);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}
.vvp-podcast-card h3{font-size:19px;line-height:1.35;margin:0;color:var(--vvp-navy)}
.vvp-podcast-card h3 a{color:inherit;text-decoration:none}
.vvp-podcast-card.is-playing{box-shadow:0 0 0 2px rgba(199,54,47,.2)}

.vvp-podcast-sticky{position:fixed;left:18px;right:18px;bottom:18px;z-index:99990;max-width:1120px;margin:0 auto;background:var(--vvp-navy);color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:15px;box-shadow:0 14px 42px rgba(0,0,0,.28);backdrop-filter:saturate(120%)}
.vvp-podcast-sticky[hidden]{display:none!important}
.vvp-podcast-sticky__inner{display:flex;align-items:center;gap:14px;padding:12px 14px}
.vvp-sticky-play{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:var(--vvp-red);color:#fff;font-weight:800}
.vvp-podcast-sticky__info{min-width:0;flex:1}
.vvp-sticky-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;text-decoration:none;font-weight:700;font-size:14px;margin-bottom:5px}
.vvp-podcast-sticky__timeline{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}
.vvp-sticky-current,.vvp-sticky-duration{font-size:11px;color:rgba(255,255,255,.72);font-variant-numeric:tabular-nums}

/* Sticky seekbar 0.9.12: fully custom visual/control surface.
   No native range track is rendered, so Chromium cannot add invisible endpoint paddings.
   The rail itself is the seek geometry on desktop and mobile: 0% = left edge, 100% = right edge. */
.vvp-sticky-seek{
  --vvp-sticky-progress:0%;
  --vvp-sticky-preview:0%;
  position:relative;
  min-width:0;
  height:28px;
  cursor:pointer;
  touch-action:none;
  outline:none;
}
.vvp-sticky-seek__rail{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:4px;
  transform:translateY(-50%);
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  pointer-events:none;
}
.vvp-sticky-seek__fill{
  display:block;
  width:var(--vvp-sticky-progress);
  height:100%;
  border-radius:999px 0 0 999px;
  background:var(--vvp-red);
}
.vvp-sticky-seek__thumb{
  position:absolute;
  z-index:2;
  left:var(--vvp-sticky-progress);
  top:50%;
  width:16px;
  height:16px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:var(--vvp-red);
  box-shadow:0 0 0 3px rgba(199,54,47,.16),0 2px 7px rgba(0,0,0,.2);
  pointer-events:none;
}
.vvp-sticky-seek__tooltip{
  position:absolute;
  z-index:4;
  left:clamp(22px,var(--vvp-sticky-preview),calc(100% - 22px));
  top:-29px;
  transform:translateX(-50%) translateY(3px);
  min-width:40px;
  padding:4px 6px;
  border-radius:6px;
  background:#fff;
  color:var(--vvp-navy);
  font-size:10px;
  line-height:1;
  font-weight:750;
  font-variant-numeric:tabular-nums;
  text-align:center;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  box-shadow:0 5px 16px rgba(0,0,0,.18);
  transition:opacity .12s ease,transform .12s ease,visibility .12s ease;
}
.vvp-sticky-seek.is-previewing .vvp-sticky-seek__tooltip{
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0);
}
.vvp-sticky-seek:focus-visible::after{
  content:"";
  position:absolute;
  inset:1px -3px;
  border:2px solid rgba(255,255,255,.9);
  border-radius:8px;
  pointer-events:none;
}

.vvp-sticky-skip{
  flex:0 0 auto;
  min-width:38px;
  height:34px;
  padding:0 7px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.9)!important;
  font-size:11px!important;
  line-height:32px!important;
  font-weight:800!important;
  font-variant-numeric:tabular-nums;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.vvp-sticky-skip:hover{
  background:rgba(255,255,255,.11)!important;
  border-color:rgba(255,255,255,.28)!important;
}
.vvp-sticky-skip:active{transform:scale(.96)}

.vvp-sticky-speed,.vvp-sticky-close{background:transparent;color:#fff;padding:8px;font-weight:700}
.vvp-sticky-speed{min-width:38px;height:34px;padding:0 8px;border:1px solid rgba(255,255,255,.16)!important;border-radius:9px!important;background:rgba(255,255,255,.06)!important;font-size:11px}
.vvp-sticky-speed:hover{background:rgba(255,255,255,.11)!important;border-color:rgba(255,255,255,.28)!important}
.vvp-sticky-close{width:34px;height:34px;padding:0;font-size:22px;font-weight:400;border-radius:9px!important}
.vvp-sticky-close:hover{background:rgba(255,255,255,.08)}

/* Network feedback without adding another UI row. */
.vvp-podcast-inline.is-buffering .vvp-audio-play,
.vvp-podcast-player.is-buffering .vvp-audio-play,
.vvp-podcast-sticky.is-buffering .vvp-sticky-play{
  position:relative;
  color:transparent!important;
}
.vvp-podcast-inline.is-buffering .vvp-audio-play::after,
.vvp-podcast-player.is-buffering .vvp-audio-play::after,
.vvp-podcast-sticky.is-buffering .vvp-sticky-play::after{
  content:"";
  position:absolute;
  inset:10px;
  border:2px solid rgba(255,255,255,.38);
  border-top-color:#fff;
  border-radius:50%;
  animation:vvpPodcastSpin .72s linear infinite;
}
@keyframes vvpPodcastSpin{to{transform:rotate(360deg)}}


.vvp-podcasts-archive{background:#fff;color:var(--vvp-text);padding:56px 20px 72px}
.vvp-podcasts-shell{width:min(1280px,100%);margin:0 auto}
.vvp-podcasts-hero{padding:36px 0 44px;border-bottom:1px solid var(--vvp-line);margin-bottom:42px}
.vvp-podcasts-kicker{font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--vvp-red);margin-bottom:10px}
.vvp-podcasts-hero h1{margin:0 0 12px;font-size:clamp(36px,5vw,64px);line-height:1.03;color:var(--vvp-navy);letter-spacing:-.03em}
.vvp-podcasts-hero p{margin:0;max-width:760px;color:var(--vvp-muted);font-size:18px;line-height:1.6}
.vvp-podcasts-section{margin:0 0 52px}
.vvp-section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}
.vvp-section-heading h2{margin:0;font-size:clamp(26px,3vw,38px);color:var(--vvp-navy)}
.vvp-podcast-categories{display:flex;flex-wrap:wrap;gap:10px}
.vvp-podcast-categories a{display:flex;gap:10px;align-items:center;padding:11px 14px;border:1px solid var(--vvp-line);border-radius:999px;color:var(--vvp-navy);text-decoration:none;font-weight:700;background:#fff}
.vvp-podcast-categories a:hover{border-color:var(--vvp-navy)}
.vvp-podcast-categories small{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--vvp-bg);color:var(--vvp-muted)}
.vvp-podcast-summary{font-size:17px;line-height:1.7;color:var(--vvp-text);margin:22px 0}
.vvp-podcast-source-link a{display:inline-flex;padding:12px 18px;border-radius:10px;background:var(--vvp-navy);color:#fff!important;text-decoration:none;font-weight:700}

@media (max-width:960px){
  .vvp-podcast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vvp-podcast-player{grid-template-columns:260px 1fr}
  .vvp-podcast-player__controls{grid-template-columns:auto auto auto 1fr auto}.vvp-audio-current{display:none}.vvp-audio-duration{display:none}
}
@media (max-width:700px){
  .vvp-podcast-player{grid-template-columns:1fr;border-radius:14px;margin:22px 0}.vvp-podcast-player__cover{min-height:0;aspect-ratio:16/9}.vvp-podcast-player__cover img{min-height:0;height:100%}.vvp-podcast-player__panel{padding:20px}.vvp-podcast-player__title{font-size:20px}.vvp-podcast-player__controls{grid-template-columns:auto auto auto 1fr auto;gap:7px}.vvp-audio-skip{padding:0 8px;font-size:12px}.vvp-audio-play{width:44px;height:44px}.vvp-podcast-grid{grid-template-columns:1fr}.vvp-podcast-sticky{left:calc(8px + env(safe-area-inset-left,0px));right:calc(8px + env(safe-area-inset-right,0px));bottom:calc(8px + env(safe-area-inset-bottom,0px));border-radius:12px}.vvp-podcast-sticky__inner{gap:6px;padding:9px}.vvp-sticky-title{font-size:12px;margin-bottom:4px}.vvp-sticky-current,.vvp-sticky-duration{font-size:10px}.vvp-sticky-skip{min-width:34px;height:32px;padding:0 5px!important;line-height:30px!important}.vvp-sticky-speed{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:32px;padding:0 6px}.vvp-sticky-close{width:30px;height:32px}.vvp-podcasts-archive{padding:32px 16px 58px}.vvp-podcasts-hero{padding:24px 0 34px;margin-bottom:34px}
}


@media (max-width:380px){
  .vvp-podcast-sticky__inner{gap:5px;padding:8px}
  .vvp-sticky-play{width:40px;height:40px}
  .vvp-sticky-skip{min-width:32px;width:32px;padding:0!important;font-size:10px!important}
  .vvp-sticky-speed{display:none}
  .vvp-sticky-title{font-size:11px}
}

@media (prefers-reduced-motion:reduce){
  .vvp-sticky-seek__tooltip,.vvp-sticky-skip,.vvp-sticky-speed{transition:none!important}
}

/* Editorial audio player for source articles: compact, fluid and brand-consistent. */
.vvp-podcast-inline{
  --vvp-player-progress:0%;
  width:100%;
  max-width:none;
  box-sizing:border-box;
  margin:14px 0;
  padding:14px 15px 13px;
  border:0;
  border-left:3px solid var(--vvp-navy);
  border-radius:0 10px 10px 0;
  background:#F4F6F9;
  box-shadow:none;
}
.vvp-podcast-inline__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 11px;
}
.vvp-podcast-inline__label{
  min-width:0;
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.085em;
  text-transform:uppercase;
  color:var(--vvp-navy);
}
.vvp-podcast-inline__nav{
  min-width:0;
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  font-size:11px;
  line-height:1.2;
  font-weight:700;
  white-space:nowrap;
}
.vvp-podcast-inline__nav a{
  color:var(--vvp-navy);
  text-decoration:none;
  text-underline-offset:2px;
}
.vvp-podcast-inline__nav a:hover{text-decoration:underline}
.vvp-podcast-inline__nav-sep{color:#9AA4B2;font-weight:500}
.vvp-podcast-inline__nav-mobile{display:none}
.vvp-podcast-inline__head .vvp-audio-speed{
  flex:0 0 auto;
  min-width:34px;
  height:28px;
  padding:0 8px;
  border:1px solid rgba(11,31,59,.28)!important;
  border-radius:8px!important;
  background:transparent;
  color:var(--vvp-navy);
  font-size:11px;
  line-height:26px;
  font-weight:750;
}
.vvp-podcast-inline__head .vvp-audio-speed:hover{
  border-color:var(--vvp-navy)!important;
  background:#fff;
}
.vvp-podcast-inline__body{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  align-items:center;
  gap:12px;
  min-width:0;
}
.vvp-podcast-inline .vvp-audio-play{
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  border-radius:50%;
  background:var(--vvp-red);
  color:#fff;
  font-size:15px;
  line-height:1;
  font-weight:800;
  box-shadow:0 3px 9px rgba(199,54,47,.20);
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;
}
.vvp-podcast-inline .vvp-audio-play:hover{
  transform:translateY(-1px);
  box-shadow:0 5px 13px rgba(199,54,47,.26);
  filter:saturate(1.06);
}
.vvp-podcast-inline__timeline{
  min-width:0;
  display:grid;
  gap:6px;
}
.vvp-podcast-inline .vvp-audio-progress{
  --vvp-progress:0%;
  display:block;
  width:100%;
  min-width:0;
  height:14px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
}
.vvp-podcast-inline .vvp-audio-progress::-webkit-slider-runnable-track{
  height:4px;
  border-radius:999px;
  background:linear-gradient(to right,var(--vvp-red) 0 var(--vvp-progress),#C9D0D9 var(--vvp-progress) 100%);
}
.vvp-podcast-inline .vvp-audio-progress::-webkit-slider-thumb{
  width:14px;
  height:14px;
  margin-top:-5px;
  border:0;
  border-radius:50%;
  background:var(--vvp-red);
  box-shadow:0 0 0 3px rgba(199,54,47,.10);
  -webkit-appearance:none;
  appearance:none;
}
.vvp-podcast-inline .vvp-audio-progress::-moz-range-track{
  height:4px;
  border:0;
  border-radius:999px;
  background:#C9D0D9;
}
.vvp-podcast-inline .vvp-audio-progress::-moz-range-progress{
  height:4px;
  border-radius:999px;
  background:var(--vvp-red);
}
.vvp-podcast-inline .vvp-audio-progress::-moz-range-thumb{
  width:14px;
  height:14px;
  border:0;
  border-radius:50%;
  background:var(--vvp-red);
  box-shadow:0 0 0 3px rgba(199,54,47,.10);
}
.vvp-podcast-inline__time{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.vvp-podcast-inline .vvp-audio-current,
.vvp-podcast-inline .vvp-audio-duration{
  display:inline!important;
  color:#6B7280;
  font-size:10px;
  line-height:1;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

/* Explicit desktop/mobile shortcode variants prevent the two article slots from appearing together. */
.vvp-podcast-device--mobile{display:none!important}
.vvp-podcast-device--desktop{display:block}

.elementor-widget-shortcode:has(.vvp-podcast-inline),
.elementor-widget-shortcode:has(.vvp-podcast-inline) > .elementor-widget-container,
.elementor-widget-shortcode:has(.vvp-podcast-inline) .elementor-shortcode,
.vvp-podcast-slot:has(.vvp-podcast-inline){
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}

@media (min-width:768px){
  .elementor-widget-shortcode:has(.vvp-podcast-device--mobile),
  .vvp-podcast-slot:has(.vvp-podcast-device--mobile){
    display:none!important;
    margin:0!important;
    padding:0!important;
  }
}

@media (max-width:767px){
  .vvp-podcast-device--desktop{display:none!important}
  .vvp-podcast-device--mobile{display:block!important}

  .elementor-widget-shortcode:has(.vvp-podcast-device--desktop),
  .vvp-podcast-slot:has(.vvp-podcast-device--desktop){
    display:none!important;
    margin:0!important;
    padding:0!important;
  }

  .elementor-widget-shortcode:has(.vvp-podcast-inline){
    width:100%!important;
    max-width:100%!important;
    flex:1 1 100%!important;
    align-self:stretch!important;
  }
  .elementor-widget-shortcode:has(.vvp-podcast-inline) > .elementor-widget-container,
  .elementor-widget-shortcode:has(.vvp-podcast-inline) .elementor-shortcode,
  .vvp-podcast-slot:has(.vvp-podcast-inline){
    width:100%!important;
    max-width:100%!important;
  }

  .vvp-podcast-inline{
    width:100%!important;
    max-width:none!important;
    margin:10px 0;
    padding:13px 13px 12px;
    border-left-width:3px;
    border-radius:0 9px 9px 0;
  }
  .vvp-podcast-inline__head{gap:8px;margin-bottom:10px}
  .vvp-podcast-inline__label{font-size:10.5px}
  .vvp-podcast-inline__nav{gap:5px;font-size:10.5px}
  .vvp-podcast-inline__nav-desktop{display:none}
  .vvp-podcast-inline__nav-mobile{display:inline}
  .vvp-podcast-inline__head .vvp-audio-speed{min-width:32px;padding:0 6px}
  .vvp-podcast-inline__body{
    grid-template-columns:42px minmax(0,1fr);
    gap:11px;
  }
  .vvp-podcast-inline .vvp-audio-play{
    width:42px;
    height:42px;
  }
}

/* No podcast for this article: leave absolutely no visible or layout footprint. */
.vvp-podcast-empty[hidden]{display:none!important}
.elementor-widget-shortcode:has(.vvp-podcast-empty){display:none!important;margin:0!important;padding:0!important}
.vvp-podcast-slot:has(.vvp-podcast-empty){display:none!important;margin:0!important;padding:0!important}

@media (min-width:768px){
  .vvp-podcast-widget--mobile{display:none!important;margin:0!important;padding:0!important}
}
@media (max-width:767px){
  .vvp-podcast-widget--desktop{display:none!important;margin:0!important;padding:0!important}
  .elementor-widget-shortcode.vvp-podcast-widget--mobile{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    flex:1 1 100%!important;
    align-self:stretch!important;
  }
  .elementor-widget-shortcode.vvp-podcast-widget--mobile > .elementor-widget-container,
  .elementor-widget-shortcode.vvp-podcast-widget--mobile .elementor-shortcode{
    width:100%!important;
    max-width:100%!important;
  }
}


@media (prefers-reduced-motion:reduce){
  .vvp-podcast-card,
  .vvp-podcast-card__image img,
  .vvp-podcast-inline .vvp-audio-play{transition:none!important}
  .vvp-podcast-inline.is-buffering .vvp-audio-play::after,
  .vvp-podcast-player.is-buffering .vvp-audio-play::after,
  .vvp-podcast-sticky.is-buffering .vvp-sticky-play::after{animation-duration:1.4s}
}

/* =========================================================
   VVP PODCASTS 0.9.20 — editorial archive + richer episode
   ========================================================= */
.vvp-podcast-single{
  width:min(1320px,calc(100% - 32px));
  margin:28px auto 72px;
}
.vvp-podcast-single .vvp-podcast-player{
  grid-template-columns:minmax(360px,42%) minmax(0,1fr);
  min-height:520px;
  margin:0;
  border-radius:24px;
  box-shadow:0 12px 36px rgba(11,31,59,.08);
}
.vvp-podcast-single .vvp-podcast-player__cover{min-height:520px}
.vvp-podcast-single .vvp-podcast-player__cover img{min-height:520px;height:100%;object-fit:cover}
.vvp-podcast-single .vvp-podcast-player__panel{
  justify-content:flex-start;
  padding:clamp(32px,4vw,58px);
}
.vvp-podcast-player__title{
  font-size:clamp(27px,2.6vw,42px);
  line-height:1.12;
  letter-spacing:-.025em;
  margin-bottom:14px;
}
.vvp-podcast-player__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  margin:0 0 22px;
  color:#6B7280;
  font-size:12px;
  font-weight:700;
}
.vvp-podcast-player__meta a{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  background:#F2F5F8;
  color:var(--vvp-navy)!important;
  text-decoration:none;
}
.vvp-podcast-player__meta a:hover{background:#E7ECF2}
.vvp-podcast-player__summary{
  max-width:780px;
  margin:0 0 26px;
  color:#344054;
  font-size:16px;
  line-height:1.72;
}
.vvp-podcast-player__summary p{margin:0 0 12px}
.vvp-podcast-player__summary p:last-child{margin-bottom:0}
.vvp-podcast-player__controls{margin-top:auto}
.vvp-podcast-player__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.vvp-podcast-player__actions .vvp-podcast-source-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:11px 17px;
  border-radius:10px;
  background:var(--vvp-navy);
  color:#fff!important;
  text-decoration:none;
  font-size:14px;
  font-weight:750;
}
.vvp-podcast-player__actions .vvp-podcast-source-link:hover{filter:brightness(1.08)}

.vvp-podcast-related{
  margin:64px 0 0;
  padding-top:42px;
  border-top:1px solid var(--vvp-line);
}
.vvp-section-heading--stack{
  display:block;
  margin-bottom:22px;
}
.vvp-section-heading--stack h2{margin-bottom:8px}
.vvp-section-heading--stack p{
  max-width:760px;
  margin:0;
  color:#667085;
  font-size:15px;
  line-height:1.6;
}

.vvp-podcasts-archive{
  padding:48px 20px 86px;
  background:linear-gradient(180deg,#F8FAFC 0,#fff 360px);
}
.vvp-podcasts-shell{width:min(1320px,100%)}
.vvp-podcasts-hero{
  position:relative;
  overflow:hidden;
  padding:54px clamp(28px,5vw,72px);
  margin:0 0 52px;
  border:1px solid #E3E8EF;
  border-radius:24px;
  background:#fff;
  box-shadow:0 12px 38px rgba(11,31,59,.055);
}
.vvp-podcasts-hero::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-86px;
  top:-92px;
  border-radius:50%;
  background:rgba(199,54,47,.055);
  pointer-events:none;
}
.vvp-podcasts-kicker{margin-bottom:14px;font-size:12px;letter-spacing:.14em}
.vvp-podcasts-hero h1{max-width:900px;font-size:clamp(40px,5vw,66px);margin-bottom:18px}
.vvp-podcasts-hero p{
  max-width:900px;
  color:#475467;
  font-size:clamp(17px,1.55vw,21px);
  line-height:1.62;
}
.vvp-podcasts-hero__nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.vvp-podcasts-hero__nav a,.vvp-podcasts-back{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:9px 14px;
  border:1px solid #D6DCE5;
  border-radius:10px;
  background:#fff;
  color:var(--vvp-navy)!important;
  text-decoration:none;
  font-size:13px;
  font-weight:750;
}
.vvp-podcasts-hero__nav a:hover,.vvp-podcasts-back:hover{border-color:var(--vvp-navy)}
.vvp-podcasts-back{margin-top:20px}
.vvp-podcasts-section{margin-bottom:64px}
.vvp-section-heading h2{font-size:clamp(28px,3vw,42px);letter-spacing:-.02em}

.vvp-podcast-grid{gap:24px}
.vvp-podcast-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  border-radius:18px;
  border-color:#E2E7ED;
}
.vvp-podcast-card__image-wrap{position:relative;overflow:hidden;background:var(--vvp-bg)}
.vvp-podcast-card__image{aspect-ratio:16/10}
.vvp-podcast-card__play{
  left:18px;
  bottom:18px;
  border:0;
  cursor:pointer;
  z-index:3;
  transition:transform .15s ease,box-shadow .15s ease;
}
.vvp-podcast-card__play:hover{transform:scale(1.04);box-shadow:0 10px 28px rgba(0,0,0,.24)}
.vvp-podcast-card__body{display:flex;flex:1;flex-direction:column;padding:19px 20px 22px}
.vvp-podcast-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  align-items:center;
  margin-bottom:9px;
  color:#667085;
  font-size:11px;
  letter-spacing:.035em;
}
.vvp-podcast-card__meta span:first-child{color:var(--vvp-red)}
.vvp-podcast-card__meta i{font-style:normal;color:#A7AFBA}
.vvp-podcast-card h3{font-size:20px;line-height:1.33;letter-spacing:-.01em}
.vvp-podcast-card__summary{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  margin:11px 0 0;
  color:#667085;
  font-size:14px;
  line-height:1.55;
}
.vvp-podcast-card__listens{
  margin-top:auto;
  padding-top:14px;
  color:#98A2B3;
  font-size:11px;
  font-weight:650;
}

/* Categories are navigation cards, not tiny filter pills. */
.vvp-podcast-categories{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.vvp-podcast-categories .vvp-podcast-category{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:116px;
  padding:19px 20px;
  border:1px solid #DFE5EC;
  border-radius:16px;
  background:#fff;
  color:var(--vvp-navy);
  text-decoration:none;
  box-shadow:0 5px 18px rgba(11,31,59,.035);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.vvp-podcast-categories .vvp-podcast-category:hover{
  transform:translateY(-2px);
  border-color:#BCC7D4;
  box-shadow:0 10px 24px rgba(11,31,59,.07);
}
.vvp-podcast-category__name{font-size:18px;line-height:1.25;font-weight:780}
.vvp-podcast-category__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}
.vvp-podcast-category__foot small{padding:0;background:none;color:#7B8794;font-size:12px;font-weight:650}
.vvp-podcast-category__foot b{font-size:18px;color:var(--vvp-red);font-weight:600}

@media (max-width:1050px){
  .vvp-podcast-single .vvp-podcast-player{grid-template-columns:minmax(300px,40%) minmax(0,1fr);min-height:470px}
  .vvp-podcast-single .vvp-podcast-player__cover,.vvp-podcast-single .vvp-podcast-player__cover img{min-height:470px}
  .vvp-podcast-categories{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .vvp-podcast-single{width:min(100% - 24px,1320px);margin:16px auto 54px}
  .vvp-podcast-single .vvp-podcast-player{grid-template-columns:1fr;min-height:0;border-radius:18px}
  .vvp-podcast-single .vvp-podcast-player__cover{min-height:0;aspect-ratio:1/1}
  .vvp-podcast-single .vvp-podcast-player__cover img{min-height:0;height:100%}
  .vvp-podcast-single .vvp-podcast-player__panel{padding:23px 20px 25px}
  .vvp-podcast-player__title{font-size:26px}
  .vvp-podcast-player__summary{font-size:15px;line-height:1.64;margin-bottom:22px}
  .vvp-podcast-player__controls{margin-top:0}
  .vvp-podcast-related{margin-top:44px;padding-top:32px}
  .vvp-podcasts-archive{padding:24px 14px 64px}
  .vvp-podcasts-hero{padding:32px 22px;margin-bottom:40px;border-radius:18px}
  .vvp-podcasts-hero h1{font-size:38px}
  .vvp-podcasts-hero p{font-size:16px}
  .vvp-podcasts-section{margin-bottom:50px}
  .vvp-podcast-categories{grid-template-columns:1fr}
  .vvp-podcast-categories .vvp-podcast-category{min-height:94px;padding:17px 18px}
}

/* =========================================================
   VVP PODCASTS 0.9.21 — audience copy, mobile single, linked taxonomy
   ========================================================= */
.vvp-podcast-card__meta .vvp-podcast-card__category{
  color:var(--vvp-red)!important;
  text-decoration:none;
  font-weight:800;
}
.vvp-podcast-card__meta .vvp-podcast-card__category:hover{text-decoration:underline;text-underline-offset:3px}

/* Mobile overlay player is deliberately absent on desktop. */
.vvp-podcast-mobile-player{display:none}

@media (max-width:760px){
  .vvp-podcast-single{
    width:min(100% - 20px,1320px);
    margin:10px auto 46px;
  }
  .vvp-podcast-single .vvp-podcast-player{
    overflow:hidden;
    border-radius:20px;
    border-color:#E1E6EC;
    box-shadow:0 10px 28px rgba(11,31,59,.07);
  }
  .vvp-podcast-single .vvp-podcast-player__cover{
    position:relative;
    aspect-ratio:16/10;
    background:#111827;
  }
  .vvp-podcast-single .vvp-podcast-player__cover::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:0;
    height:46%;
    pointer-events:none;
    background:linear-gradient(180deg,rgba(6,18,36,0),rgba(6,18,36,.78));
  }
  .vvp-podcast-single .vvp-podcast-player__cover img{
    width:100%;height:100%;object-fit:cover;
  }
  .vvp-podcast-mobile-player{
    position:absolute;
    left:14px;right:14px;bottom:13px;
    z-index:4;
    display:grid;
    grid-template-columns:46px minmax(0,1fr) 38px;
    align-items:center;
    gap:11px;
    padding:10px 11px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;
    background:rgba(7,25,48,.82);
    box-shadow:0 10px 24px rgba(0,0,0,.22);
    backdrop-filter:blur(8px) saturate(125%);
  }
  .vvp-podcast-mobile-player .vvp-audio-play{
    width:46px;height:46px;
    margin:0;
    background:var(--vvp-red);
    color:#fff;
    border-radius:50%;
    font-size:15px;
  }
  .vvp-podcast-mobile-player__track{display:grid;gap:5px;min-width:0}
  .vvp-podcast-mobile-player .vvp-audio-progress{
    --vvp-progress:0%;
    width:100%;height:15px;margin:0;padding:0;
    appearance:none;-webkit-appearance:none;background:transparent;
  }
  .vvp-podcast-mobile-player .vvp-audio-progress::-webkit-slider-runnable-track{
    height:4px;border-radius:999px;
    background:linear-gradient(to right,var(--vvp-red) 0 var(--vvp-progress),rgba(255,255,255,.42) var(--vvp-progress) 100%);
  }
  .vvp-podcast-mobile-player .vvp-audio-progress::-webkit-slider-thumb{
    width:14px;height:14px;margin-top:-5px;border:0;border-radius:50%;background:#fff;-webkit-appearance:none;
  }
  .vvp-podcast-mobile-player .vvp-audio-progress::-moz-range-track{height:4px;border-radius:999px;background:rgba(255,255,255,.42)}
  .vvp-podcast-mobile-player .vvp-audio-progress::-moz-range-progress{height:4px;border-radius:999px;background:var(--vvp-red)}
  .vvp-podcast-mobile-player .vvp-audio-progress::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:#fff}
  .vvp-podcast-mobile-player__time{
    display:flex;justify-content:space-between;gap:10px;
    color:rgba(255,255,255,.76);
    font-size:10px;font-variant-numeric:tabular-nums;
  }
  .vvp-podcast-mobile-player .vvp-audio-speed{
    width:38px;height:34px;padding:0;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:9px!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;font-size:11px;font-weight:750;
  }
  .vvp-podcast-single .vvp-podcast-player__panel{
    padding:22px 18px 24px;
  }
  .vvp-podcast-single .vvp-podcast-player__eyebrow{
    margin-bottom:9px;font-size:11px;
  }
  .vvp-podcast-single .vvp-podcast-player__title{
    margin-bottom:12px;
    font-size:clamp(24px,7vw,31px);
    line-height:1.18;
    letter-spacing:-.018em;
  }
  .vvp-podcast-single .vvp-podcast-player__meta{
    gap:7px;margin-bottom:17px;
  }
  .vvp-podcast-single .vvp-podcast-player__meta a{
    min-height:27px;padding:5px 9px;font-size:11px;
  }
  .vvp-podcast-single .vvp-podcast-player__summary{
    margin-bottom:20px;
    font-size:15px;line-height:1.62;
  }
  /* Full desktop controls are redundant on mobile because the player sits on the image. */
  .vvp-podcast-single .vvp-podcast-player__panel > .vvp-podcast-player__controls{display:none}
  .vvp-podcast-single .vvp-podcast-player__actions{margin-top:4px}
  .vvp-podcast-single .vvp-podcast-player__actions .vvp-podcast-source-link{
    width:100%;min-height:48px;padding:12px 16px;border-radius:11px;
  }
  .vvp-podcast-related{
    margin-top:38px;padding-top:30px;
  }
  .vvp-podcast-related .vvp-section-heading--stack p{font-size:14px}

  .vvp-podcasts-archive{padding:18px 12px 58px}
  .vvp-podcasts-shell{width:100%}
  .vvp-podcasts-hero{
    padding:27px 20px 30px;
    margin-bottom:34px;
    border-radius:17px;
  }
  .vvp-podcasts-hero h1{font-size:clamp(34px,10vw,44px);line-height:1.02}
  .vvp-podcasts-hero p{font-size:15px;line-height:1.55}
  .vvp-podcasts-section{margin-bottom:44px}
  .vvp-section-heading--stack{margin-bottom:18px}
  .vvp-section-heading--stack h2{font-size:29px;line-height:1.08}
  .vvp-section-heading--stack p{font-size:14px;line-height:1.52}
  .vvp-podcast-grid{gap:16px}
  .vvp-podcast-card{border-radius:16px}
  .vvp-podcast-card__body{padding:16px 17px 19px}
  .vvp-podcast-card h3{font-size:19px;line-height:1.3}
  .vvp-podcast-card__summary{-webkit-line-clamp:3;font-size:13px}
  .vvp-podcast-categories .vvp-podcast-category{
    min-height:82px;
    padding:15px 16px;
    border-radius:14px;
  }
  .vvp-podcast-category__name{font-size:17px}
  .vvp-podcast-category__foot{margin-top:13px}
}
.vvp-podcast-player__meta-label{color:#7B8794;font-weight:650}
.vvp-podcast-single-page{background:linear-gradient(180deg,#F8FAFC 0,#fff 420px);padding:18px 0 1px}
@media (max-width:760px){.vvp-podcast-single-page{padding:6px 0 1px;background:#fff}}

/* =========================================================
   VVP PODCASTS 0.9.22 — cache-resilient article slot
   ========================================================= */
.vvp-podcast-dynamic-slot:empty{display:none!important;margin:0!important;padding:0!important}
.vvp-podcast-dynamic-slot[aria-busy="true"]{min-height:0}

/* =========================================================
   VVP PODCASTS 0.9.23 — breadcrumb navigation + archive order
   ========================================================= */
.vvp-podcast-breadcrumbs{
  box-sizing:border-box;
  width:min(1320px,100%);
  margin:0 auto 16px;
  color:#7B8794;
  font-size:12px;
  line-height:1.35;
}
.vvp-podcasts-shell > .vvp-podcast-breadcrumbs{
  width:100%;
  margin-bottom:18px;
}
.vvp-podcast-breadcrumbs ol{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  margin:0;
  padding:0;
  list-style:none;
}
.vvp-podcast-breadcrumbs li{
  display:inline-flex;
  min-width:0;
  align-items:center;
  gap:7px;
}
.vvp-podcast-breadcrumbs li:not(:last-child)::after{
  content:"›";
  color:#B5BDC8;
  font-size:14px;
  line-height:1;
}
.vvp-podcast-breadcrumbs a{
  color:#5F6B7A!important;
  text-decoration:none;
  font-weight:650;
}
.vvp-podcast-breadcrumbs a:hover{
  color:var(--vvp-red)!important;
  text-decoration:underline;
  text-underline-offset:3px;
}
.vvp-podcast-breadcrumbs li[aria-current="page"] span{
  color:var(--vvp-navy);
  font-weight:700;
}
.vvp-podcast-single-page > .vvp-podcast-breadcrumbs{
  padding:0 20px;
  margin-top:0;
  margin-bottom:10px;
}

@media (max-width:760px){
  .vvp-podcast-breadcrumbs{
    margin-bottom:12px;
    font-size:11px;
  }
  .vvp-podcast-single-page > .vvp-podcast-breadcrumbs{
    width:100%;
    padding:0 12px;
    margin-bottom:8px;
  }
  .vvp-podcasts-shell > .vvp-podcast-breadcrumbs{
    margin-bottom:12px;
  }
  .vvp-podcast-breadcrumbs ol{
    flex-wrap:nowrap;
    gap:5px;
    overflow-x:auto;
    padding:3px 0 5px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .vvp-podcast-breadcrumbs ol::-webkit-scrollbar{display:none}
  .vvp-podcast-breadcrumbs li{
    flex:0 0 auto;
    gap:5px;
    white-space:nowrap;
  }
  .vvp-podcast-breadcrumbs li[aria-current="page"]{
    min-width:0;
    max-width:58vw;
  }
  .vvp-podcast-breadcrumbs li[aria-current="page"] span{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .vvp-podcasts-archive .vvp-podcasts-back{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    min-height:40px;
    margin-top:17px;
  }
}

/* =========================================================
   VVP PODCASTS 0.9.25 — site-wide editorial style alignment
   The podcast section inherits the VVP/TheGem typography and
   follows the same visual hierarchy as the main editorial site.
   ========================================================= */

.vvp-podcasts-archive,
.vvp-podcast-single-page,
.vvp-podcast-inline,
.vvp-podcast-sticky{
  font-family:inherit;
}

/* Breadcrumbs: quiet editorial navigation, not a UI control bar. */
.vvp-podcast-breadcrumbs{
  width:min(1320px,100%);
  margin:0 auto 22px;
  padding:0;
  color:#667085;
  font-size:12px;
  line-height:1.45;
  font-weight:600;
}
.vvp-podcast-breadcrumbs ol{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:0;
  list-style:none;
  margin:0;
  padding:0;
}
.vvp-podcast-breadcrumbs li{display:flex;align-items:center;min-width:0}
.vvp-podcast-breadcrumbs li+li::before{
  content:'›';
  margin:0 9px;
  color:#A0A8B4;
  font-weight:500;
}
.vvp-podcast-breadcrumbs a{
  color:#667085;
  text-decoration:none;
  transition:color .15s ease;
}
.vvp-podcast-breadcrumbs a:hover{color:var(--vvp-red)}
.vvp-podcast-breadcrumbs [aria-current="page"] span{color:#344054}

/* Hero follows the same VVP editorial hierarchy as the homepage. */
.vvp-podcasts-archive{
  background:#fff;
  color:var(--vvp-text);
  padding-top:34px;
}
.vvp-podcasts-hero{
  position:relative;
  overflow:hidden;
  padding:38px 0 42px;
  margin-bottom:50px;
  border-top:1px solid #EEF1F4;
  border-bottom:1px solid #E7EBF0;
  background:#fff;
  border-radius:0;
  box-shadow:none;
}
.vvp-podcasts-hero::after{display:none}
.vvp-podcasts-kicker{
  margin-bottom:13px;
  color:var(--vvp-red);
  font-size:12px;
  line-height:1.4;
  font-weight:800;
  letter-spacing:.105em;
  text-transform:uppercase;
}
.vvp-podcasts-hero h1{
  max-width:980px;
  margin:0 0 16px;
  color:var(--vvp-navy);
  font-size:clamp(38px,4.4vw,62px);
  line-height:1.06;
  letter-spacing:-.028em;
  font-weight:750;
}
.vvp-podcasts-hero p{
  max-width:820px;
  margin:0;
  color:#475467;
  font-size:17px;
  line-height:1.62;
}

/* Hero links are lightweight editorial anchors, not competing CTA buttons. */
.vvp-podcasts-hero__nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px 22px;
  margin-top:25px;
}
.vvp-podcasts-hero__nav a{
  display:inline-flex;
  align-items:center;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--vvp-navy)!important;
  font-size:13px;
  line-height:1.5;
  font-weight:700;
  text-decoration:none;
}
.vvp-podcasts-hero__nav a::after{content:' →';margin-left:5px;color:var(--vvp-red)}
.vvp-podcasts-hero__nav a:hover{color:var(--vvp-red)!important;border:0}

/* Section titles mirror normal editorial section headings. */
.vvp-podcasts-section{margin-bottom:62px}
.vvp-section-heading--stack{max-width:860px;margin-bottom:23px}
.vvp-section-heading--stack h2,
.vvp-section-heading h2{
  margin:0 0 8px;
  color:var(--vvp-navy);
  font-size:clamp(27px,2.7vw,38px);
  line-height:1.12;
  letter-spacing:-.018em;
  font-weight:750;
}
.vvp-section-heading--stack p{
  margin:0;
  max-width:760px;
  color:#667085;
  font-size:15px;
  line-height:1.6;
}

/* Episode cards: closer to VVP editorial cards, less app-like. */
.vvp-podcast-grid{gap:28px 22px}
.vvp-podcast-card{
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
  overflow:visible;
}
.vvp-podcast-card:hover{transform:none;box-shadow:none}
.vvp-podcast-card__image-wrap,
.vvp-podcast-card__image{
  overflow:hidden;
  border-radius:10px;
}
.vvp-podcast-card__body{padding:14px 1px 2px}
.vvp-podcast-card__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  margin-bottom:8px;
  color:#7A8492;
  font-size:11px;
  line-height:1.4;
  font-weight:700;
  letter-spacing:.035em;
  text-transform:none;
}
.vvp-podcast-card__category{
  color:var(--vvp-red)!important;
  text-decoration:none;
}
.vvp-podcast-card__category:hover{text-decoration:underline}
.vvp-podcast-card h3{
  color:var(--vvp-navy);
  font-size:20px;
  line-height:1.32;
  letter-spacing:-.012em;
  font-weight:730;
}
.vvp-podcast-card__summary{
  margin:9px 0 0;
  color:#667085;
  font-size:14px;
  line-height:1.55;
}
.vvp-podcast-card__listens{margin-top:10px;font-size:11px;color:#98A2B3}
.vvp-podcast-card__play{
  left:14px;
  bottom:14px;
  width:48px;
  height:48px;
  border:2px solid rgba(255,255,255,.82);
  box-shadow:0 6px 18px rgba(11,31,59,.2);
}

/* Categories: editorial directory cards; same visual language, not filters. */
.vvp-podcast-categories{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  border-top:1px solid #E5E9EF;
  border-left:1px solid #E5E9EF;
}
.vvp-podcast-categories .vvp-podcast-category{
  min-height:132px;
  padding:20px 21px;
  border:0;
  border-right:1px solid #E5E9EF;
  border-bottom:1px solid #E5E9EF;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.vvp-podcast-categories .vvp-podcast-category:hover{
  transform:none;
  background:#F8FAFC;
  border-color:#E5E9EF;
}
.vvp-podcast-category__name{
  color:var(--vvp-navy);
  font-size:18px;
  line-height:1.28;
  font-weight:730;
}
.vvp-podcast-category__foot{margin-top:auto;padding-top:24px}
.vvp-podcast-category__foot small{color:#7A8492;font-size:11px;font-weight:650}
.vvp-podcast-category__foot b{color:var(--vvp-red);font-size:18px}

/* Single episode: same page rhythm as VVP materials. */
.vvp-podcast-single-page{background:#fff;padding:32px 20px 68px}
.vvp-podcast-single{margin-top:0}
.vvp-podcast-single .vvp-podcast-player{
  border:1px solid #E4E9EF;
  border-radius:12px;
  box-shadow:none;
}
.vvp-podcast-player__eyebrow{
  color:var(--vvp-red);
  font-size:11px;
  letter-spacing:.09em;
}
.vvp-podcast-player__title{font-weight:750;letter-spacing:-.018em}
.vvp-podcast-player__summary{color:#475467}
.vvp-podcast-player__meta a{border-radius:6px;background:#F4F6F8}
.vvp-podcast-player__actions .vvp-podcast-source-link{border-radius:6px}

/* Inline player on articles should feel like a VVP service element, not an ad. */
.vvp-podcast-inline{
  border:1px solid #E2E7ED;
  border-left:3px solid var(--vvp-red);
  border-radius:8px;
  background:#F7F8FA;
}
.vvp-podcast-inline__label{
  color:var(--vvp-navy);
  letter-spacing:.055em;
}
.vvp-podcast-inline__nav a{color:#475467}
.vvp-podcast-inline__nav a:hover{color:var(--vvp-red)}

@media (max-width:1024px){
  .vvp-podcast-categories{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:767px){
  .vvp-podcasts-archive{padding:22px 16px 52px}
  .vvp-podcast-single-page{padding:20px 12px 48px}
  .vvp-podcast-breadcrumbs{
    margin-bottom:15px;
    overflow-x:auto;
    white-space:nowrap;
    scrollbar-width:none;
    font-size:11px;
  }
  .vvp-podcast-breadcrumbs::-webkit-scrollbar{display:none}
  .vvp-podcast-breadcrumbs ol{flex-wrap:nowrap;width:max-content;max-width:none}
  .vvp-podcast-breadcrumbs li+li::before{margin:0 7px}
  .vvp-podcasts-hero{
    padding:27px 0 31px;
    margin-bottom:38px;
  }
  .vvp-podcasts-kicker{font-size:10.5px;letter-spacing:.08em;margin-bottom:10px}
  .vvp-podcasts-hero h1{font-size:34px;line-height:1.08;margin-bottom:13px}
  .vvp-podcasts-hero p{font-size:15px;line-height:1.55}
  .vvp-podcasts-hero__nav{gap:7px 16px;margin-top:19px}
  .vvp-podcasts-hero__nav a{font-size:12px}
  .vvp-podcasts-section{margin-bottom:44px}
  .vvp-section-heading--stack{margin-bottom:17px}
  .vvp-section-heading--stack h2,.vvp-section-heading h2{font-size:27px}
  .vvp-section-heading--stack p{font-size:14px;line-height:1.52}
  .vvp-podcast-grid{gap:28px}
  .vvp-podcast-card__body{padding-top:12px}
  .vvp-podcast-card h3{font-size:19px}
  .vvp-podcast-card__summary{font-size:13.5px;line-height:1.5}
  .vvp-podcast-categories{grid-template-columns:1fr}
  .vvp-podcast-categories .vvp-podcast-category{min-height:104px;padding:17px 18px}
  .vvp-podcast-category__foot{padding-top:17px}
  .vvp-podcast-single .vvp-podcast-player{border-radius:10px}
}

/* =========================================================
   VVP PODCASTS 0.9.29 — adaptive article-player header

   The component adapts to its OWN width, not viewport width:
   - normal/wide: one row, full labels;
   - narrow: one row, compact labels;
   - ultra-narrow: two rows, full labels because the second row
     has enough horizontal room.
   This prevents the old 0.9.26 behaviour where every narrow
   player was forced into two rows even when a compact one-row
   header would fit comfortably.
   ========================================================= */

.vvp-podcast-inline{
  container-type:inline-size;
  container-name:vvpArticleAudio;
}

/* Keep the correct article slot visible across the VVP article layout. */
@media (max-width:1199px){
  .vvp-podcast-device--desktop{display:none!important}
  .vvp-podcast-device--mobile{display:block!important}

  .elementor-widget-shortcode:has(.vvp-podcast-device--desktop),
  .vvp-podcast-slot:has(.vvp-podcast-device--desktop),
  .vvp-podcast-widget--desktop{
    display:none!important;
    margin:0!important;
    padding:0!important;
  }

  .elementor-widget-shortcode:has(.vvp-podcast-device--mobile),
  .elementor-widget-shortcode.vvp-podcast-widget--mobile,
  .vvp-podcast-slot:has(.vvp-podcast-device--mobile),
  .vvp-podcast-widget--mobile{
    display:block!important;
  }

  .elementor-widget-shortcode.vvp-podcast-widget--mobile,
  .elementor-widget-shortcode:has(.vvp-podcast-device--mobile){
    width:100%!important;
    max-width:100%!important;
    flex:1 1 100%!important;
    align-self:stretch!important;
  }
  .elementor-widget-shortcode.vvp-podcast-widget--mobile > .elementor-widget-container,
  .elementor-widget-shortcode.vvp-podcast-widget--mobile .elementor-shortcode,
  .elementor-widget-shortcode:has(.vvp-podcast-device--mobile) > .elementor-widget-container,
  .elementor-widget-shortcode:has(.vvp-podcast-device--mobile) .elementor-shortcode,
  .vvp-podcast-slot:has(.vvp-podcast-device--mobile){
    width:100%!important;
    max-width:100%!important;
  }
}

@media (min-width:1200px){
  .vvp-podcast-device--mobile{display:none!important}
  .vvp-podcast-device--desktop{display:block!important}
  .elementor-widget-shortcode:has(.vvp-podcast-device--mobile),
  .vvp-podcast-slot:has(.vvp-podcast-device--mobile),
  .vvp-podcast-widget--mobile{
    display:none!important;
    margin:0!important;
    padding:0!important;
  }
}

/* Default: full labels in ONE row. This is intentionally compact enough
   for a normal 425px phone card and a healthy desktop sidebar. */
.vvp-podcast-inline__head{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr) max-content;
  grid-template-areas:"label nav speed";
  align-items:center;
  column-gap:5px;
  row-gap:0;
  margin-bottom:10px;
}
.vvp-podcast-inline__label{
  grid-area:label;
  min-width:0;
  font-size:11px;
  line-height:1.2;
  letter-spacing:.05em;
  white-space:nowrap;
}
.vvp-podcast-inline__label-full{display:inline}
.vvp-podcast-inline__label-short{display:none}

.vvp-podcast-inline__nav{
  grid-area:nav;
  min-width:0;
  width:max-content;
  max-width:100%;
  margin:0;
  justify-self:end;
  justify-content:flex-end;
  flex-wrap:nowrap;
  gap:5px;
  font-size:11.5px;
  line-height:1.2;
  white-space:nowrap;
}
.vvp-podcast-inline__nav a{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:1px 0;
  white-space:nowrap;
}
.vvp-podcast-inline__nav-desktop{display:inline}
.vvp-podcast-inline__nav-mobile{display:none}
.vvp-podcast-inline__nav-sep{display:inline}

.vvp-podcast-inline__head .vvp-audio-speed{
  grid-area:speed;
  justify-self:end;
  min-width:35px;
  width:auto;
  height:32px;
  padding:0 7px;
  font-size:12px;
  line-height:30px;
}

/* Narrow component: keep ONE row, but use the short service label and
   short episode link. This covers a 320px phone and narrow desktop sidebars. */
@container vvpArticleAudio (max-width:339px){
  .vvp-podcast-inline{
    padding:12px 11px 11px;
  }
  .vvp-podcast-inline__head{
    grid-template-columns:max-content minmax(0,1fr) max-content;
    grid-template-areas:"label nav speed";
    column-gap:4px;
    row-gap:0;
    margin-bottom:9px;
  }
  .vvp-podcast-inline__label-full{display:none}
  .vvp-podcast-inline__label-short{display:inline}
  .vvp-podcast-inline__label{
    font-size:11.5px;
    letter-spacing:.045em;
  }
  .vvp-podcast-inline__nav{
    width:max-content;
    max-width:100%;
    justify-self:end;
    justify-content:flex-end;
    gap:5px;
    font-size:12px;
  }
  .vvp-podcast-inline__nav a{
    min-height:34px;
    padding:2px 0;
  }
  .vvp-podcast-inline__nav-desktop{display:none}
  .vvp-podcast-inline__nav-mobile{display:inline}
  .vvp-podcast-inline__nav-sep{display:none}
  .vvp-podcast-inline__head .vvp-audio-speed{
    min-width:36px;
    height:34px;
    padding:0 6px;
    font-size:12px;
    line-height:32px;
  }
  .vvp-podcast-inline__body{
    grid-template-columns:44px minmax(0,1fr);
    gap:10px;
  }
  .vvp-podcast-inline .vvp-audio-play{
    width:44px;
    height:44px;
  }
}

/* The smallest possible embeds: now the header stacks only when even the
   compact one-row version would be cramped. Because navigation owns its own
   row here, restore the full labels instead of needlessly abbreviating them. */
@container vvpArticleAudio (max-width:229px){
  .vvp-podcast-inline__head{
    grid-template-columns:minmax(0,1fr) max-content;
    grid-template-areas:
      "label speed"
      "nav nav";
    column-gap:8px;
    row-gap:2px;
  }
  .vvp-podcast-inline__label-full{display:inline}
  .vvp-podcast-inline__label-short{display:none}
  .vvp-podcast-inline__label{font-size:11.5px}
  .vvp-podcast-inline__nav{
    width:100%;
    justify-self:stretch;
    justify-content:flex-start;
    gap:7px;
    font-size:12.5px;
  }
  .vvp-podcast-inline__nav-desktop{display:inline}
  .vvp-podcast-inline__nav-mobile{display:none}
  .vvp-podcast-inline__nav-sep{display:inline}
}

/* Full labels can breathe once the component has enough real width. */
@container vvpArticleAudio (min-width:390px){
  .vvp-podcast-inline{
    padding:14px 15px 13px;
  }
  .vvp-podcast-inline__head{
    column-gap:8px;
    margin-bottom:11px;
  }
  .vvp-podcast-inline__label{
    font-size:12.5px;
    letter-spacing:.055em;
  }
  .vvp-podcast-inline__nav{
    gap:7px;
    font-size:13px;
  }
  .vvp-podcast-inline__nav a{min-height:34px}
  .vvp-podcast-inline__head .vvp-audio-speed{
    min-width:38px;
    height:34px;
    padding:0 8px;
    font-size:12.5px;
    line-height:32px;
  }
}

@container vvpArticleAudio (min-width:520px){
  .vvp-podcast-inline__head{column-gap:10px}
  .vvp-podcast-inline__label{font-size:13px}
  .vvp-podcast-inline__nav{font-size:14px;gap:8px}
  .vvp-podcast-inline__head .vvp-audio-speed{font-size:13px}
}

@container vvpArticleAudio (min-width:760px){
  .vvp-podcast-inline{
    padding:16px 18px 15px;
  }
  .vvp-podcast-inline__label{font-size:13.5px}
  .vvp-podcast-inline__nav{font-size:15px;gap:10px}
  .vvp-podcast-inline__nav a{min-height:36px}
  .vvp-podcast-inline__head .vvp-audio-speed{
    min-width:42px;
    height:36px;
    font-size:13.5px;
    line-height:34px;
  }
  .vvp-podcast-inline__body{
    grid-template-columns:46px minmax(0,1fr);
    gap:14px;
  }
  .vvp-podcast-inline .vvp-audio-play{
    width:46px;
    height:46px;
  }
}

/* Conservative fallback for older browsers without container queries. */
@supports not (container-type:inline-size){
  @media (max-width:420px){
    .vvp-podcast-inline__label-full{display:none}
    .vvp-podcast-inline__label-short{display:inline}
    .vvp-podcast-inline__nav-desktop{display:none}
    .vvp-podcast-inline__nav-mobile{display:inline}
    .vvp-podcast-inline__nav-sep{display:none}
    .vvp-podcast-inline__label{font-size:11.5px}
    .vvp-podcast-inline__nav{font-size:12px;gap:5px}
  }
}


/* =========================================================
   VVP PODCASTS 0.9.34 — mobile time + sticky + breadcrumbs
   ========================================================= */

/* Mobile player: time is always visible with clear contrast */
@media (max-width:760px){
  .vvp-podcast-mobile-player__time{
    display:flex!important;
    justify-content:space-between;
    align-items:center;
    min-height:14px;
    margin-top:1px;
    font-size:11px;
    line-height:1.2;
    color:rgba(255,255,255,.82);
  }

  /* Floating player remains usable while reading */
  .vvp-podcast-sticky{
    left:10px;
    right:10px;
    bottom:10px;
  }

  .vvp-podcast-sticky__inner{
    gap:9px;
    padding:10px;
  }

  .vvp-sticky-title{
    font-size:13px;
  }

  .vvp-podcast-sticky__timeline{
    grid-template-columns:auto minmax(70px,1fr) auto;
  }
}

/* Breadcrumbs: no horizontal overflow on narrow screens */
.vvp-podcast-breadcrumbs{
  overflow:hidden;
}

@media (max-width:760px){
  .vvp-podcast-breadcrumbs ol{
    overflow:hidden;
    flex-wrap:nowrap;
  }

  .vvp-podcast-breadcrumbs li[aria-current="page"]{
    display:none;
  }

  .vvp-podcast-breadcrumbs li{
    flex:0 1 auto;
    max-width:42vw;
    overflow:hidden;
  }

  .vvp-podcast-breadcrumbs li span,
  .vvp-podcast-breadcrumbs li a{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    display:block;
  }
}


/* =========================================================
   VVP PODCASTS 0.9.36 — share + commercial CTA + final breadcrumb fix
   ========================================================= */

/* Older podcast CSS generations used both ::after and ::before separators.
   Keep a single separator source so arrows are never duplicated. */
.vvp-podcast-breadcrumbs li::after{content:none!important;display:none!important}

.vvp-podcast-share,
.vvp-podcast-order-cta,
.vvp-podcast-product-card,
.vvp-podcast-note-upsell{
  box-sizing:border-box;
  font-family:inherit;
}
.vvp-podcast-share{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:22px 0 30px;
  padding:18px 20px;
  border:1px solid #E5E7EB;
  border-radius:14px;
  background:#fff;
}
.vvp-podcast-share>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.vvp-podcast-share strong{color:#0B1F3B;font-size:16px;line-height:1.3}
.vvp-podcast-share span{color:#667085;font-size:13px;line-height:1.45}
.vvp-podcast-share__actions{display:flex;gap:8px;flex:0 0 auto}
.vvp-podcast-share__actions button{
  min-height:40px;
  padding:8px 13px;
  border:1px solid #D8DEE7;
  border-radius:9px;
  background:#fff;
  color:#0B1F3B;
  font:inherit;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
}
.vvp-podcast-share__actions button:hover{border-color:#0B1F3B;background:#F7F8FA}

.vvp-podcast-order-cta{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:32px;
  align-items:center;
  margin:32px 0 46px;
  padding:30px 32px;
  border-radius:16px;
  background:#0B1F3B;
  color:#fff;
}
.vvp-podcast-order-cta__kicker{
  display:block;
  margin-bottom:8px;
  color:#C9A24A;
  font-size:11px;
  line-height:1.3;
  font-weight:800;
  letter-spacing:.085em;
}
.vvp-podcast-order-cta h2{margin:0 0 9px!important;color:#fff!important;font-size:26px!important;line-height:1.18!important}
.vvp-podcast-order-cta p{max-width:780px;margin:0!important;color:rgba(255,255,255,.78)!important;font-size:15px;line-height:1.58}
.vvp-podcast-order-cta__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.vvp-podcast-order-cta__primary,
.vvp-podcast-order-cta__secondary{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 17px;
  border-radius:8px;
  font-size:14px;
  line-height:1.25;
  font-weight:750;
  text-decoration:none!important;
  white-space:nowrap;
}
.vvp-podcast-order-cta__primary{border:1px solid #C7362F;background:#C7362F;color:#fff!important}
.vvp-podcast-order-cta__primary:hover{background:#A92D27;border-color:#A92D27}
.vvp-podcast-order-cta__secondary{border:1px solid rgba(255,255,255,.32);background:transparent;color:#fff!important}
.vvp-podcast-order-cta__secondary:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.vvp-podcast-order-cta--compact{margin:0;padding:26px 28px}
.vvp-podcasts-section--order{margin-top:12px}

.vvp-podcast-page-insert{width:min(calc(100% - 40px),1220px);margin:70px auto}
.vvp-podcast-product-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  padding:34px;
  border:1px solid #E5E7EB;
  border-left:4px solid #C7362F;
  border-radius:16px;
  background:#fff;
  color:#111827;
  box-shadow:0 14px 36px rgba(11,31,59,.06);
}
.vvp-podcast-product-card h2{margin:0 0 10px!important;color:#0B1F3B!important;font-size:30px!important;line-height:1.18!important}
.vvp-podcast-product-card p{margin:0 0 14px;color:#4B5563;font-size:16px;line-height:1.6}
.vvp-podcast-product-card ul{margin:15px 0 0;padding-left:20px;color:#4B5563;font-size:14px;line-height:1.55}
.vvp-podcast-product-card__price{margin-top:16px!important;color:#0B1F3B!important;font-weight:750}
.vvp-podcast-product-card .vvp-podcast-order-cta__primary{align-self:center}

.vvp-podcast-note-upsell{
  width:min(calc(100% - 40px),1120px);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  margin:36px auto;
  padding:22px 24px;
  border:1px solid #E5E7EB;
  border-radius:14px;
  background:#F6F7F9;
}
.vvp-podcast-note-upsell strong{display:block;margin-bottom:5px;color:#0B1F3B;font-size:18px}
.vvp-podcast-note-upsell p{margin:0!important;color:#4B5563;font-size:14px;line-height:1.55}
.vvp-podcast-note-upsell a{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;padding:10px 16px;border-radius:8px;background:#C7362F;color:#fff!important;font-size:14px;font-weight:750;text-decoration:none!important}

@media (max-width:760px){
  .vvp-podcast-share{align-items:flex-start;flex-direction:column;margin:18px 0 24px;padding:16px}
  .vvp-podcast-share__actions{width:100%}
  .vvp-podcast-share__actions button{flex:1}
  .vvp-podcast-order-cta{grid-template-columns:1fr;gap:20px;margin:24px 0 34px;padding:23px 20px}
  .vvp-podcast-order-cta h2{font-size:22px!important}
  .vvp-podcast-order-cta__actions{justify-content:flex-start;width:100%}
  .vvp-podcast-order-cta__primary,.vvp-podcast-order-cta__secondary{width:100%}
  .vvp-podcast-page-insert{width:min(calc(100% - 24px),1220px);margin:44px auto}
  .vvp-podcast-product-card{grid-template-columns:1fr;gap:22px;padding:24px 20px}
  .vvp-podcast-product-card h2{font-size:25px!important}
  .vvp-podcast-product-card .vvp-podcast-order-cta__primary{width:100%}
  .vvp-podcast-note-upsell{width:min(calc(100% - 24px),1120px);align-items:flex-start;flex-direction:column;margin:28px auto;padding:19px}
  .vvp-podcast-note-upsell a{width:100%;justify-content:center}

  /* One compact breadcrumb line, no page-title item and no overflow. */
  .vvp-podcast-breadcrumbs{overflow:hidden!important;white-space:normal!important}
  .vvp-podcast-breadcrumbs ol{width:100%!important;max-width:100%!important;overflow:hidden!important;flex-wrap:nowrap!important}
  .vvp-podcast-breadcrumbs li{flex:0 1 auto!important;min-width:0!important;max-width:44vw!important;overflow:hidden!important}
  .vvp-podcast-breadcrumbs li[aria-current="page"]{display:none!important}
  .vvp-podcast-breadcrumbs a,.vvp-podcast-breadcrumbs span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

/* =========================================================
   VVP PODCASTS 0.9.37 — bilingual platforms + two audio offers
   ========================================================= */
.vvp-podcast-platforms{
  box-sizing:border-box;
  margin:28px 0 38px;
  padding:26px;
  border:1px solid #E5E7EB;
  border-radius:16px;
  background:#F6F7F9;
  color:#111827;
}
.vvp-podcast-platforms__head{max-width:820px;margin-bottom:20px}
.vvp-podcast-platforms__head h2{margin:0 0 8px!important;color:#0B1F3B!important;font-size:25px!important;line-height:1.2!important}
.vvp-podcast-platforms__head p{margin:0!important;color:#4B5563!important;font-size:14px;line-height:1.55}
.vvp-podcast-platforms__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.vvp-podcast-platforms__channel{min-width:0;padding:18px;border:1px solid #E5E7EB;border-radius:12px;background:#fff}
.vvp-podcast-platforms__lang{display:flex;flex-direction:column;gap:3px;margin-bottom:13px}
.vvp-podcast-platforms__lang strong{color:#0B1F3B;font-size:16px;line-height:1.25}
.vvp-podcast-platforms__lang span{overflow:hidden;color:#667085;font-size:12px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.vvp-podcast-platforms__links{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 12px}
.vvp-podcast-platform{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:6px 10px;border:1px solid #DDE2E9;border-radius:9px;background:#fff;color:#0B1F3B!important;font-size:12px;font-weight:700;text-decoration:none!important;transition:border-color .15s ease,background .15s ease}
.vvp-podcast-platform:hover{border-color:#AEB8C6;background:#F9FAFB}
.vvp-podcast-platform__icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:6px;overflow:hidden;background:#F1F3F6}
.vvp-podcast-platform__icon img{display:block;width:100%;height:100%;object-fit:contain}
.vvp-podcast-platforms__fallback{display:grid;place-items:center;width:100%;height:100%;color:#0B1F3B;font-size:11px;font-weight:800}
.vvp-podcast-platforms__all{display:inline-flex;margin-top:2px;color:#C7362F!important;font-size:12px;font-weight:750;text-decoration:none!important}
.vvp-podcast-platforms__all:hover{text-decoration:underline!important}
.vvp-podcast-platforms--compact{margin:24px 0 30px;padding:20px}
.vvp-podcast-platforms--compact .vvp-podcast-platforms__head h2{font-size:21px!important}
.vvp-podcasts-section--platforms{margin-top:16px}

.vvp-podcast-order-cta__mini{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;color:rgba(255,255,255,.9);font-size:13px;line-height:1.45}
.vvp-podcast-order-cta__mini span{display:inline-flex;gap:5px}
.vvp-podcast-order-cta__mini strong{color:#fff}

.vvp-podcast-products{box-sizing:border-box;color:#111827}
.vvp-podcast-products__head{max-width:880px;margin-bottom:22px}
.vvp-podcast-products__head h2{margin:0 0 9px!important;color:#0B1F3B!important;font-size:32px!important;line-height:1.18!important}
.vvp-podcast-products__head p{margin:0!important;color:#4B5563!important;font-size:15px;line-height:1.6}
.vvp-podcast-products__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.vvp-podcast-products .vvp-podcast-product-card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:24px;
  min-width:0;
  padding:28px;
  border:1px solid #E5E7EB;
  border-top:3px solid #C7362F;
  border-left:1px solid #E5E7EB;
  border-radius:15px;
  background:#fff;
  box-shadow:0 12px 30px rgba(11,31,59,.05);
}
.vvp-podcast-products .vvp-podcast-product-card--field{border-top-color:#C9A24A}
.vvp-podcast-product-card__type{margin-bottom:8px;color:#667085;font-size:10px;line-height:1.3;font-weight:800;letter-spacing:.09em}
.vvp-podcast-products .vvp-podcast-product-card h3{margin:0 0 10px!important;color:#0B1F3B!important;font-size:24px!important;line-height:1.2!important}
.vvp-podcast-products .vvp-podcast-product-card p{margin:0 0 12px!important;color:#4B5563;font-size:14px;line-height:1.58}
.vvp-podcast-products .vvp-podcast-product-card ul{margin:15px 0 0;padding-left:19px;color:#4B5563;font-size:13px;line-height:1.55}
.vvp-podcast-products .vvp-podcast-product-card__price{margin-top:16px!important;color:#0B1F3B!important;font-size:18px!important;font-weight:800}
.vvp-podcast-products .vvp-podcast-product-card__note{margin-top:4px!important;color:#667085!important;font-size:12px!important}
.vvp-podcast-products .vvp-podcast-order-cta__primary{align-self:flex-start}

@media (max-width:760px){
  .vvp-podcast-platforms{margin:22px 0 30px;padding:18px}
  .vvp-podcast-platforms__head h2{font-size:21px!important}
  .vvp-podcast-platforms__grid{grid-template-columns:1fr}
  .vvp-podcast-platforms__channel{padding:15px}
  .vvp-podcast-platforms__links{gap:7px}
  .vvp-podcast-platform{max-width:100%}
  .vvp-podcast-products__head h2{font-size:26px!important}
  .vvp-podcast-products__grid{grid-template-columns:1fr}
  .vvp-podcast-products .vvp-podcast-product-card{padding:22px 19px}
  .vvp-podcast-products .vvp-podcast-product-card h3{font-size:22px!important}
  .vvp-podcast-products .vvp-podcast-order-cta__primary{width:100%}
  .vvp-podcast-order-cta__mini{flex-direction:column;gap:5px}
}

/* =========================================================
   VVP PODCASTS 0.9.38 — unified site headings, compact placement
   teaser, dedicated order page and embedded platform panel
   ========================================================= */

/* Podcast archive follows the site's normal editorial scale instead of a
   separate oversized landing-page typography. */
.vvp-podcasts-archive{padding-top:28px}
.vvp-podcasts-hero{
  display:block;
  padding:32px 0 38px;
  margin-bottom:42px;
  border:0;
  border-bottom:1px solid #E5E7EB;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.vvp-podcasts-hero--with-platforms{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  gap:48px;
  align-items:start;
}
.vvp-podcasts-hero__copy{min-width:0}
.vvp-podcasts-hero h1{
  max-width:900px;
  margin:0 0 14px!important;
  color:#0B1F3B!important;
  font-size:40px!important;
  line-height:1.15!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}
.vvp-podcasts-hero p{max-width:820px;font-size:16px;line-height:1.62}
.vvp-podcasts-kicker{margin-bottom:12px;font-size:11px;letter-spacing:.085em}
.vvp-podcasts-hero__nav{margin-top:24px}
.vvp-podcasts-hero--category{max-width:none}
.vvp-podcasts-hero--category h1{max-width:900px;font-size:40px!important;line-height:1.15!important}
.vvp-section-heading--stack h2,.vvp-section-heading h2{
  font-size:28px!important;
  line-height:1.2!important;
  letter-spacing:-.015em!important;
  text-transform:none!important;
}
.vvp-section-heading--stack p{font-size:15px;line-height:1.58}


/* Single episode uses the same page-heading scale as the rest of VVP. */
.vvp-podcast-single .vvp-podcast-player__title{
  margin:0 0 14px!important;
  font-size:40px!important;
  line-height:1.15!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}

/* Platform selector becomes the right side of the main podcast hero instead
   of a second full-width heading directly below it. */
.vvp-podcasts-hero__platforms{min-width:0}
.vvp-podcast-platforms--embedded{
  margin:0;
  padding:22px;
  border:1px solid #E5E7EB;
  border-radius:14px;
  background:#F6F7F9;
}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__head{margin-bottom:14px}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__head h2{font-size:20px!important;margin-bottom:6px!important}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__head p{font-size:13px}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__grid{grid-template-columns:1fr;gap:9px}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__channel{padding:13px 14px;border-radius:10px}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__lang{margin-bottom:7px}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__lang span{display:none}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__links{margin:6px 0 8px}
.vvp-podcast-platforms--embedded .vvp-podcast-platform{min-height:34px;padding:5px 8px}
.vvp-podcast-platforms--embedded .vvp-podcast-platform__icon{width:21px;height:21px;flex-basis:21px}
.vvp-podcasts-section--category-platforms{margin-top:-10px;margin-bottom:34px}
.vvp-podcasts-section--category-platforms .vvp-podcast-platforms{margin:0}

/* Existing VVP Share module rendered inside podcast pages. The actual icons,
   providers and QR remain owned by VVP Share. This wrapper only normalizes
   spacing within the podcast layout. */
.vvp-podcast-single > .vvp-share{margin:22px 0 30px!important;max-width:100%}

/* Compact teaser on /razmeshchenie/ — intentionally mirrors the existing
   horizontal "Деловая заметка" product row instead of adding another large
   two-card landing block. */
.vvp-podcast-page-insert{width:min(calc(100% - 40px),1220px);margin:32px auto 54px}
.vvp-podcast-placement-teaser{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:34px;
  align-items:center;
  box-sizing:border-box;
  padding:26px 46px;
  border:1px solid #E5E7EB;
  border-radius:14px;
  background:#F6F7F9;
  color:#111827;
}
.vvp-podcast-placement-teaser h3{margin:0 0 5px!important;color:#0B1F3B!important;font-size:20px!important;line-height:1.25!important}
.vvp-podcast-placement-teaser p{max-width:850px;margin:0!important;color:#4B5563!important;font-size:14px;line-height:1.55}
.vvp-podcast-placement-teaser__side{display:flex;min-width:150px;flex-direction:column;align-items:flex-end;gap:7px}
.vvp-podcast-placement-teaser__side strong{color:#0B1F3B;font-size:22px;line-height:1.1;font-weight:800;white-space:nowrap}
.vvp-podcast-placement-teaser__side a{color:#C7362F!important;font-size:14px;font-weight:700;text-decoration:none!important;white-space:nowrap}
.vvp-podcast-placement-teaser__side a:hover{text-decoration:underline!important}

/* Dedicated commercial podcast page. */
.vvp-podcast-order-page{padding:28px 18px 72px;color:#111827}
.vvp-podcast-order-shell{width:min(1220px,100%);margin:0 auto}
.vvp-podcast-order-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;color:#667085;font-size:12px}
.vvp-podcast-order-breadcrumbs a{color:#667085!important;text-decoration:none!important}
.vvp-podcast-order-breadcrumbs strong{color:#0B1F3B;font-weight:700}
.vvp-podcast-order-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:46px;
  align-items:center;
  padding:34px 0 42px;
  border-bottom:1px solid #E5E7EB;
}
.vvp-podcast-order-hero h1{margin:0 0 14px!important;color:#0B1F3B!important;font-size:40px!important;line-height:1.15!important;letter-spacing:-.02em!important;text-transform:none!important}
.vvp-podcast-order-hero p{max-width:760px;margin:0!important;color:#4B5563!important;font-size:16px;line-height:1.62}
.vvp-podcast-order-hero__facts{display:grid;grid-template-columns:1fr;gap:10px}
.vvp-podcast-order-hero__facts>div{padding:15px 16px;border:1px solid #E5E7EB;border-radius:10px;background:#F6F7F9}
.vvp-podcast-order-hero__facts strong{display:block;margin-bottom:3px;color:#0B1F3B;font-size:15px}
.vvp-podcast-order-hero__facts span{display:block;color:#667085;font-size:12px;line-height:1.45}
.vvp-podcast-order-section{padding:48px 0;border-bottom:1px solid #E5E7EB}
.vvp-podcast-order-section:last-child{border-bottom:0}
.vvp-podcast-order-section .vvp-podcast-products__head h2,
.vvp-podcast-order-section__head h2,
.vvp-podcast-order-form__intro h2{font-size:28px!important;line-height:1.2!important;letter-spacing:-.015em!important;text-transform:none!important}
.vvp-podcast-order-language__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}
.vvp-podcast-order-language__grid article{padding:22px 24px;border:1px solid #E5E7EB;border-radius:12px;background:#F6F7F9}
.vvp-podcast-order-language__grid strong{display:block;margin-bottom:7px;color:#0B1F3B;font-size:17px}
.vvp-podcast-order-language__grid p{margin:0!important;color:#4B5563;font-size:14px;line-height:1.6}
.vvp-podcast-order-platform-section .vvp-podcast-platforms{margin:0}
.vvp-podcast-order-form-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);gap:54px;align-items:start}
.vvp-podcast-order-form__intro p{max-width:470px;color:#4B5563;font-size:15px;line-height:1.6}
.vvp-podcast-order-form{padding:26px;border:1px solid #E5E7EB;border-radius:14px;background:#F6F7F9}
.vvp-podcast-order-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.vvp-podcast-order-form label{display:flex;flex-direction:column;gap:7px;color:#0B1F3B;font-size:13px;font-weight:700}
.vvp-podcast-order-form__wide{grid-column:1/-1}
.vvp-podcast-order-form input[type="text"],
.vvp-podcast-order-form input[type="email"],
.vvp-podcast-order-form select,
.vvp-podcast-order-form textarea{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #CBD2DC;border-radius:8px;background:#fff;color:#111827;font:inherit;font-weight:400}
.vvp-podcast-order-form textarea{min-height:142px;resize:vertical}
.vvp-podcast-order-consent{display:grid!important;grid-template-columns:auto 1fr!important;gap:9px!important;margin:18px 0;color:#4B5563!important;font-size:12px!important;font-weight:400!important;line-height:1.5}
.vvp-podcast-order-consent input{margin-top:2px}
.vvp-podcast-order-consent a{color:#0B1F3B!important;text-decoration:underline!important}
.vvp-podcast-order-submit{min-height:46px;padding:11px 20px;border:1px solid #C7362F;border-radius:8px;background:#C7362F;color:#fff;font:inherit;font-size:14px;font-weight:750;cursor:pointer}
.vvp-podcast-order-submit:hover{background:#A92D27;border-color:#A92D27}
.vvp-podcast-order-success{margin:0 0 18px;padding:13px 15px;border:1px solid #B7D6C0;border-radius:9px;background:#F0F8F2;color:#166534;font-size:13px}
.vvp-podcast-order-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}

@media (max-width:980px){
  .vvp-podcasts-hero--with-platforms{grid-template-columns:1fr;gap:28px}
  .vvp-podcasts-hero__platforms{max-width:760px}
  .vvp-podcast-order-hero{grid-template-columns:1fr;gap:24px}
  .vvp-podcast-order-hero__facts{grid-template-columns:repeat(2,minmax(0,1fr));max-width:700px}
  .vvp-podcast-order-form-section{grid-template-columns:1fr;gap:26px}
}

@media (max-width:760px){
  .vvp-podcasts-archive{padding-top:18px}
  .vvp-podcasts-hero{padding:22px 0 28px;margin-bottom:32px}
  .vvp-podcasts-hero h1,.vvp-podcasts-hero--category h1{font-size:30px!important;line-height:1.16!important}
  .vvp-podcasts-hero p{font-size:15px}

  .vvp-podcast-single .vvp-podcast-player__title{font-size:30px!important;line-height:1.16!important;margin-bottom:12px!important}
  .vvp-section-heading--stack h2,.vvp-section-heading h2{font-size:24px!important}
  .vvp-podcast-platforms--embedded{padding:16px}
  .vvp-podcast-platforms--embedded .vvp-podcast-platforms__head h2{font-size:18px!important}
  .vvp-podcast-page-insert{width:min(calc(100% - 24px),1220px);margin:26px auto 38px}
  .vvp-podcast-placement-teaser{grid-template-columns:1fr;gap:18px;padding:21px 20px}
  .vvp-podcast-placement-teaser__side{min-width:0;align-items:flex-start}
  .vvp-podcast-placement-teaser__side strong{font-size:20px}
  .vvp-podcast-order-page{padding:18px 12px 52px}
  .vvp-podcast-order-hero{padding:24px 0 30px}
  .vvp-podcast-order-hero h1{font-size:30px!important;line-height:1.16!important}
  .vvp-podcast-order-hero p{font-size:15px}
  .vvp-podcast-order-hero__facts{grid-template-columns:1fr}
  .vvp-podcast-order-section{padding:34px 0}
  .vvp-podcast-order-section .vvp-podcast-products__head h2,.vvp-podcast-order-section__head h2,.vvp-podcast-order-form__intro h2{font-size:24px!important}
  .vvp-podcast-order-language__grid{grid-template-columns:1fr}
  .vvp-podcast-order-form{padding:19px 16px}
  .vvp-podcast-order-form__grid{grid-template-columns:1fr}
  .vvp-podcast-order-form__wide{grid-column:auto}
}


/* =========================================================
   VVP PODCASTS 0.9.39 — commercial page, category hero,
   placement teaser and exact seekbar endpoints
   ========================================================= */

/* Native range controls reserve half a thumb at both ends; the visible rail is inset so 0% and 100% align with the thumb centre. */
.vvp-podcast-player .vvp-audio-progress,
.vvp-podcast-inline .vvp-audio-progress,
.vvp-podcast-mobile-player .vvp-audio-progress{
  --vvp-progress:0%;
  --vvp-seek-thumb:14px;
  --vvp-seek-rest:#C9D0D9;
  box-sizing:border-box;
  display:block;
  width:100%;
  min-width:0;
  height:18px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  outline:0;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
  background:
    linear-gradient(to right,var(--vvp-red) 0 var(--vvp-progress),var(--vvp-seek-rest) var(--vvp-progress) 100%)
    center / calc(100% - var(--vvp-seek-thumb)) 4px no-repeat!important;
}
.vvp-podcast-player .vvp-audio-progress::-webkit-slider-runnable-track,
.vvp-podcast-inline .vvp-audio-progress::-webkit-slider-runnable-track,
.vvp-podcast-mobile-player .vvp-audio-progress::-webkit-slider-runnable-track{
  height:4px;
  border:0;
  border-radius:999px;
  background:transparent!important;
}
.vvp-podcast-player .vvp-audio-progress::-webkit-slider-thumb,
.vvp-podcast-inline .vvp-audio-progress::-webkit-slider-thumb,
.vvp-podcast-mobile-player .vvp-audio-progress::-webkit-slider-thumb{
  width:var(--vvp-seek-thumb);
  height:var(--vvp-seek-thumb);
  margin-top:-5px;
  border:0;
  border-radius:50%;
  background:var(--vvp-red);
  box-shadow:0 0 0 3px rgba(199,54,47,.10);
  -webkit-appearance:none;
  appearance:none;
}
.vvp-podcast-player .vvp-audio-progress::-moz-range-track,
.vvp-podcast-inline .vvp-audio-progress::-moz-range-track,
.vvp-podcast-mobile-player .vvp-audio-progress::-moz-range-track,
.vvp-podcast-player .vvp-audio-progress::-moz-range-progress,
.vvp-podcast-inline .vvp-audio-progress::-moz-range-progress,
.vvp-podcast-mobile-player .vvp-audio-progress::-moz-range-progress{
  height:4px;
  border:0;
  border-radius:999px;
  background:transparent!important;
}
.vvp-podcast-player .vvp-audio-progress::-moz-range-thumb,
.vvp-podcast-inline .vvp-audio-progress::-moz-range-thumb,
.vvp-podcast-mobile-player .vvp-audio-progress::-moz-range-thumb{
  width:var(--vvp-seek-thumb);
  height:var(--vvp-seek-thumb);
  border:0;
  border-radius:50%;
  background:var(--vvp-red);
  box-shadow:0 0 0 3px rgba(199,54,47,.10);
}
.vvp-podcast-mobile-player .vvp-audio-progress{
  --vvp-seek-rest:rgba(255,255,255,.42);
}
.vvp-podcast-mobile-player .vvp-audio-progress::-webkit-slider-thumb,
.vvp-podcast-mobile-player .vvp-audio-progress::-moz-range-thumb{
  background:#fff;
  box-shadow:none;
}

/* /razmeshchenie/: same parent width as the existing "Деловая заметка" row. */
.vvp-podcast-page-insert{
  width:100%;
  max-width:none;
  margin:32px 0 54px;
}
.vvp-podcast-placement-teaser{
  grid-template-columns:56px minmax(0,1fr) auto;
  gap:26px;
  width:100%;
  padding:27px 46px;
}
.vvp-podcast-placement-teaser__icon{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border:1px solid #DCE2E9;
  border-radius:13px;
  background:#fff;
  color:#C7362F;
}
.vvp-podcast-placement-teaser__icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.vvp-podcast-placement-teaser__copy{min-width:0}
.vvp-podcast-placement-teaser h3{
  font-size:20px!important;
  line-height:1.3!important;
}
.vvp-podcast-placement-teaser p{
  max-width:920px;
  font-size:15px!important;
  line-height:1.55!important;
}

/* Main archive and category pages use the same compact two-column masthead. */
.vvp-podcasts-hero--category{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  gap:48px;
  align-items:start;
}
.vvp-podcasts-hero--category .vvp-podcasts-back{
  margin-top:20px;
}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__channel{
  min-width:0;
  padding:13px;
}
.vvp-podcast-platforms--embedded .vvp-podcast-platforms__links{
  gap:6px;
}
.vvp-podcast-platforms--embedded .vvp-podcast-platform{
  max-width:100%;
  min-width:0;
}
.vvp-podcast-platforms--embedded .vvp-podcast-platform>span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.vvp-podcasts-section--category-list{
  margin-top:0;
}

/* Dedicated commercial podcast page follows the brandbook editorial scale:
   body 18px desktop / 16px mobile, with restrained document-like blocks. */
.vvp-podcast-order-page{
  font-size:18px;
  line-height:1.65;
}
.vvp-podcast-order-shell{
  width:min(1220px,100%);
}
.vvp-podcast-order-hero{
  grid-template-columns:minmax(0,1fr) 360px;
  gap:56px;
  padding:36px 0 46px;
}
.vvp-podcast-order-hero p{
  max-width:800px;
  font-size:18px!important;
  line-height:1.65!important;
}
.vvp-podcast-order-hero__facts{
  gap:11px;
}
.vvp-podcast-order-hero__facts>div{
  padding:17px 18px;
}
.vvp-podcast-order-hero__facts strong{
  font-size:17px;
}
.vvp-podcast-order-hero__facts span{
  font-size:14px;
  line-height:1.5;
}
.vvp-podcast-order-section{
  padding:52px 0;
}
.vvp-podcast-order-section__head{
  max-width:900px;
  margin-bottom:24px;
}
.vvp-podcast-order-section__head h2,
.vvp-podcast-order-section .vvp-podcast-products__head h2,
.vvp-podcast-order-form__intro h2{
  margin:0 0 12px!important;
  font-size:28px!important;
  line-height:1.2!important;
}
.vvp-podcast-order-section__head>p,
.vvp-podcast-order-form__intro>p,
.vvp-podcast-order-prose>p{
  max-width:900px;
  margin:0 0 18px!important;
  color:#4B5563!important;
  font-size:18px!important;
  line-height:1.65!important;
}

/* Value block */
.vvp-podcast-order-benefits{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:30px;
}
.vvp-podcast-order-benefits>div{
  padding:20px 22px;
  border:1px solid #E5E7EB;
  border-radius:12px;
  background:#F6F7F9;
}
.vvp-podcast-order-benefits strong{
  display:block;
  margin-bottom:5px;
  color:#0B1F3B;
  font-size:17px;
  line-height:1.35;
}
.vvp-podcast-order-benefits span{
  display:block;
  color:#4B5563;
  font-size:15px;
  line-height:1.55;
}

/* "Not just text-to-speech" block */
.vvp-podcast-order-editorial__grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:42px;
  align-items:start;
}
.vvp-podcast-order-editorial__grid p{
  margin:0 0 18px!important;
  color:#4B5563!important;
  font-size:18px!important;
  line-height:1.65!important;
}
.vvp-podcast-order-editorial__grid ul{
  margin:0;
  padding:20px 22px 20px 42px;
  border-left:3px solid #C7362F;
  background:#F6F7F9;
  color:#111827;
  font-size:16px;
  line-height:1.65;
}
.vvp-podcast-order-editorial__grid li+li{margin-top:9px}

/* Product formats are intentionally stacked: easier to scan and room for explanation. */
.vvp-podcast-products__head{
  max-width:940px;
  margin-bottom:26px;
}
.vvp-podcast-products__head p{
  font-size:18px!important;
  line-height:1.65!important;
}
.vvp-podcast-products__grid{
  grid-template-columns:1fr!important;
  gap:20px;
}
.vvp-podcast-products .vvp-podcast-product-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 260px;
  gap:34px;
  align-items:stretch;
  padding:30px 32px!important;
}
.vvp-podcast-product-card__content{min-width:0}
.vvp-podcast-products .vvp-podcast-product-card h3{
  margin-bottom:12px!important;
  font-size:26px!important;
  line-height:1.22!important;
}
.vvp-podcast-products .vvp-podcast-product-card p{
  max-width:790px;
  margin-bottom:15px!important;
  font-size:18px!important;
  line-height:1.62!important;
}
.vvp-podcast-products .vvp-podcast-product-card ul{
  margin:17px 0 0;
  font-size:16px!important;
  line-height:1.62!important;
}
.vvp-podcast-products .vvp-podcast-product-card li+li{margin-top:6px}
.vvp-podcast-product-card__type{
  margin-bottom:10px;
  font-size:11px!important;
}
.vvp-podcast-product-card__side{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:15px;
  padding-left:28px;
  border-left:1px solid #E5E7EB;
}
.vvp-podcast-product-card__price-group{
  display:grid;
  grid-template-columns:1fr;
  gap:2px;
}
.vvp-podcast-product-card__price-group span{
  margin-top:9px;
  color:#667085;
  font-size:13px;
  font-weight:650;
}
.vvp-podcast-product-card__price-group span:first-child{margin-top:0}
.vvp-podcast-product-card__price-group strong{
  color:#0B1F3B;
  font-size:24px;
  line-height:1.15;
  font-weight:820;
}
.vvp-podcast-product-card__side small{
  color:#667085;
  font-size:12px;
  line-height:1.45;
}
.vvp-podcast-product-card__side .vvp-podcast-order-cta__primary{
  align-self:stretch!important;
}

/* Bilingual explanation */
.vvp-podcast-order-language__grid article{
  padding:24px 26px;
}
.vvp-podcast-order-language__grid strong{
  font-size:18px;
}
.vvp-podcast-order-language__grid p{
  font-size:16px!important;
  line-height:1.62!important;
}
.vvp-podcast-order-section__head--platforms p{
  max-width:900px;
}
.vvp-podcast-order-platform-section > .vvp-podcast-platforms .vvp-podcast-platforms__head{
  display:none;
}
.vvp-podcast-order-platform-section > .vvp-podcast-platforms{
  margin-top:22px;
}

/* Process */
.vvp-podcast-order-process__steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:0;
  padding:0;
  list-style:none;
}
.vvp-podcast-order-process__steps li{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:16px;
  padding:21px 22px;
  border:1px solid #E5E7EB;
  border-radius:12px;
  background:#fff;
}
.vvp-podcast-order-process__steps li>span{
  color:#C7362F;
  font-size:13px;
  font-weight:800;
  letter-spacing:.05em;
}
.vvp-podcast-order-process__steps strong{
  display:block;
  margin-bottom:5px;
  color:#0B1F3B;
  font-size:17px;
}
.vvp-podcast-order-process__steps p{
  margin:0!important;
  color:#4B5563!important;
  font-size:15px!important;
  line-height:1.58!important;
}

/* FAQ */
.vvp-podcast-order-faq__list{
  border-top:1px solid #E5E7EB;
}
.vvp-podcast-order-faq__list details{
  border-bottom:1px solid #E5E7EB;
}
.vvp-podcast-order-faq__list summary{
  position:relative;
  padding:19px 42px 19px 0;
  color:#0B1F3B;
  font-size:17px;
  line-height:1.45;
  font-weight:750;
  cursor:pointer;
  list-style:none;
}
.vvp-podcast-order-faq__list summary::-webkit-details-marker{display:none}
.vvp-podcast-order-faq__list summary::after{
  content:"+";
  position:absolute;
  right:3px;
  top:17px;
  color:#C7362F;
  font-size:24px;
  font-weight:500;
}
.vvp-podcast-order-faq__list details[open] summary::after{content:"−"}
.vvp-podcast-order-faq__list details p{
  max-width:940px;
  margin:0 0 20px!important;
  color:#4B5563!important;
  font-size:16px!important;
  line-height:1.65!important;
}

/* Form */
.vvp-podcast-order-form-section{
  grid-template-columns:minmax(0,.85fr) minmax(520px,1.15fr);
  gap:56px;
}
.vvp-podcast-order-form__intro>p{
  max-width:500px;
}
.vvp-podcast-order-form__prices{
  display:grid;
  gap:8px;
  margin-top:22px;
}
.vvp-podcast-order-form__prices span{
  color:#4B5563;
  font-size:14px;
}
.vvp-podcast-order-form__prices strong{
  color:#0B1F3B;
  font-size:16px;
}
.vvp-podcast-order-form__wrap{min-width:0}
.vvp-podcast-order-form label{
  font-size:14px;
}
.vvp-podcast-order-form input[type="text"],
.vvp-podcast-order-form input[type="email"],
.vvp-podcast-order-form select,
.vvp-podcast-order-form textarea{
  font-size:16px;
}
.vvp-podcast-order-consent{
  font-size:13px!important;
}

@media (max-width:980px){
  .vvp-podcasts-hero--category{
    grid-template-columns:1fr;
    gap:28px;
  }
  .vvp-podcasts-hero__platforms{max-width:none}
  .vvp-podcast-order-editorial__grid{
    grid-template-columns:1fr;
    gap:22px;
  }
  .vvp-podcast-products .vvp-podcast-product-card{
    grid-template-columns:1fr;
    gap:22px;
  }
  .vvp-podcast-product-card__side{
    padding:20px 0 0;
    border-top:1px solid #E5E7EB;
    border-left:0;
  }
  .vvp-podcast-product-card__price-group{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:18px;
  }
}

@media (max-width:760px){
  .vvp-podcast-page-insert{
    width:100%;
    margin:26px 0 38px;
  }
  .vvp-podcast-placement-teaser{
    grid-template-columns:44px minmax(0,1fr);
    gap:15px;
    padding:21px 20px;
  }
  .vvp-podcast-placement-teaser__icon{
    width:42px;
    height:42px;
    border-radius:11px;
  }
  .vvp-podcast-placement-teaser__icon svg{width:24px;height:24px}
  .vvp-podcast-placement-teaser__side{
    grid-column:1/-1;
    padding-left:59px;
  }

  .vvp-podcast-platforms--embedded .vvp-podcast-platforms__grid{
    grid-template-columns:1fr;
  }

  .vvp-podcast-order-page{
    font-size:16px;
  }
  .vvp-podcast-order-hero{
    gap:24px;
    padding:24px 0 32px;
  }
  .vvp-podcast-order-hero p,
  .vvp-podcast-order-section__head>p,
  .vvp-podcast-order-form__intro>p,
  .vvp-podcast-order-prose>p,
  .vvp-podcast-order-editorial__grid p,
  .vvp-podcast-products__head p,
  .vvp-podcast-products .vvp-podcast-product-card p{
    font-size:16px!important;
    line-height:1.62!important;
  }
  .vvp-podcast-order-section{
    padding:38px 0;
  }
  .vvp-podcast-order-section__head h2,
  .vvp-podcast-order-section .vvp-podcast-products__head h2,
  .vvp-podcast-order-form__intro h2{
    font-size:24px!important;
  }
  .vvp-podcast-order-benefits{
    grid-template-columns:1fr;
  }
  .vvp-podcast-order-benefits>div{
    padding:17px 18px;
  }
  .vvp-podcast-products .vvp-podcast-product-card{
    padding:23px 20px!important;
  }
  .vvp-podcast-products .vvp-podcast-product-card h3{
    font-size:22px!important;
  }
  .vvp-podcast-products .vvp-podcast-product-card ul{
    font-size:15px!important;
  }
  .vvp-podcast-product-card__price-group{
    grid-template-columns:1fr;
  }
  .vvp-podcast-product-card__price-group strong{
    font-size:22px;
  }
  .vvp-podcast-order-process__steps{
    grid-template-columns:1fr;
  }
  .vvp-podcast-order-faq__list summary{
    font-size:16px;
  }
  .vvp-podcast-order-faq__list details p{
    font-size:15px!important;
  }
  .vvp-podcast-order-form-section{
    grid-template-columns:1fr;
    gap:28px;
  }
}

/* =========================================================
   VVP PODCASTS 0.9.40 — mobile recovery + first-screen distribution
   ========================================================= */

/* The commercial page now uses distribution as the useful right-hand side of
   the hero. Keep the left column readable and avoid the squeezed 2-column
   layout that appeared on phones after 0.9.39. */
.vvp-podcast-order-hero{
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
  gap:48px!important;
  align-items:start!important;
}
.vvp-podcast-order-hero__copy{min-width:0}
.vvp-podcast-order-hero__platforms{min-width:0}
.vvp-podcast-order-hero__platforms .vvp-podcast-platforms--embedded{
  margin:0!important;
  padding:20px!important;
}
.vvp-podcast-order-hero__mini{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:22px;
}
.vvp-podcast-order-hero__mini span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:8px 11px;
  border:1px solid #E5E7EB;
  border-radius:9px;
  background:#F6F7F9;
  color:#667085;
  font-size:12px;
  line-height:1.35;
}
.vvp-podcast-order-hero__mini strong{
  color:#0B1F3B;
  font-size:13px;
  white-space:nowrap;
}

/* Shorter, calmer process lead and enough room before the step grid. */
.vvp-podcast-order-process .vvp-podcast-order-section__head{
  max-width:980px;
}

/* Tablet: CTA must stop using a narrow text column + wide buttons. */
@media (max-width:1100px){
  .vvp-podcast-order-cta,
  .vvp-podcast-order-cta--compact{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .vvp-podcast-order-cta__actions{
    justify-content:flex-start!important;
  }
  .vvp-podcast-order-cta__mini{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px 18px;
  }
}

/* 0.9.39 base rules were declared after an older 980px media query. Re-apply
   the responsive columns here, at the end of the stylesheet, so they win. */
@media (max-width:980px){
  .vvp-podcast-order-hero{
    grid-template-columns:1fr!important;
    gap:26px!important;
  }
  .vvp-podcast-order-hero__platforms{
    width:100%;
    max-width:760px;
  }
  .vvp-podcast-products .vvp-podcast-product-card{
    grid-template-columns:1fr!important;
  }
}

@media (max-width:760px){
  /* Commercial landing: force a true single-column first screen. */
  .vvp-podcast-order-page{
    overflow-x:hidden;
    padding:14px 12px 48px!important;
  }
  .vvp-podcast-order-shell{
    width:100%!important;
    max-width:100%!important;
  }
  .vvp-podcast-order-breadcrumbs{
    margin-bottom:18px;
    font-size:11px;
  }
  .vvp-podcast-order-hero{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    padding:18px 0 28px!important;
  }
  .vvp-podcast-order-hero__copy,
  .vvp-podcast-order-hero__platforms{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .vvp-podcast-order-hero .vvp-podcasts-kicker{
    margin-bottom:9px!important;
    font-size:10px!important;
    line-height:1.35!important;
    letter-spacing:.08em!important;
  }
  .vvp-podcast-order-hero h1{
    max-width:none!important;
    margin:0 0 13px!important;
    font-size:30px!important;
    line-height:1.12!important;
    letter-spacing:-.02em!important;
  }
  .vvp-podcast-order-hero p{
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    font-size:16px!important;
    line-height:1.58!important;
  }
  .vvp-podcast-order-hero__mini{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:18px;
  }
  .vvp-podcast-order-hero__mini span{
    display:block;
    min-width:0;
    min-height:0;
    padding:10px 11px;
    font-size:11px;
  }
  .vvp-podcast-order-hero__mini strong{
    display:block;
    margin-bottom:3px;
    font-size:13px;
  }
  .vvp-podcast-order-hero__platforms{
    margin-top:20px;
  }
  .vvp-podcast-order-hero__platforms .vvp-podcast-platforms--embedded{
    padding:15px!important;
    border-radius:12px!important;
  }
  .vvp-podcast-order-hero__platforms .vvp-podcast-platforms__head{
    margin-bottom:11px!important;
  }
  .vvp-podcast-order-hero__platforms .vvp-podcast-platforms__head h2{
    margin-bottom:4px!important;
    font-size:18px!important;
    line-height:1.2!important;
  }
  .vvp-podcast-order-hero__platforms .vvp-podcast-platforms__head p{
    font-size:12px!important;
    line-height:1.45!important;
  }

  /* Product prices: no CSS grid inside a narrow card. */
  .vvp-podcast-products .vvp-podcast-product-card{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    padding:22px 18px!important;
  }
  .vvp-podcast-product-card__content,
  .vvp-podcast-product-card__side{
    width:auto!important;
    min-width:0!important;
  }
  .vvp-podcast-product-card__side{
    display:block!important;
    margin-top:20px!important;
    padding:18px 0 0!important;
    border-top:1px solid #E5E7EB!important;
    border-left:0!important;
  }
  .vvp-podcast-product-card__price-group{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:2px!important;
  }
  .vvp-podcast-product-card__price-group strong{
    display:block!important;
    margin:0 0 7px!important;
    font-size:22px!important;
    line-height:1.12!important;
  }
  .vvp-podcast-product-card__side .vvp-podcast-order-cta__primary{
    width:100%!important;
    margin-top:13px!important;
  }

  /* CTA under podcast pages: compact copy first, actions below. */
  .vvp-podcast-order-cta,
  .vvp-podcast-order-cta--compact{
    display:block!important;
    padding:22px 18px!important;
  }
  .vvp-podcast-order-cta__copy{width:100%!important;min-width:0!important}
  .vvp-podcast-order-cta__mini{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    margin-top:13px!important;
  }
  .vvp-podcast-order-cta__actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    width:100%!important;
    margin-top:18px!important;
  }
  .vvp-podcast-order-cta__primary,
  .vvp-podcast-order-cta__secondary{
    width:100%!important;
    box-sizing:border-box!important;
  }

  /* Mobile overlay player: 0.9.39 inherited display:none from the generic
     <=960px timer rule. Explicitly restore current/total time. */
  .vvp-podcast-mobile-player__time{
    display:flex!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:10px!important;
    min-height:14px!important;
  }
  .vvp-podcast-mobile-player .vvp-audio-current,
  .vvp-podcast-mobile-player .vvp-audio-duration{
    display:inline!important;
    visibility:visible!important;
    opacity:1!important;
    color:rgba(255,255,255,.82)!important;
    font-size:10px!important;
    line-height:1!important;
    font-variant-numeric:tabular-nums;
  }
  .vvp-podcast-mobile-player__track{
    grid-template-rows:15px 14px!important;
    gap:4px!important;
  }

  /* Existing placement teaser stays balanced on small screens. */
  .vvp-podcast-placement-teaser{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:14px!important;
    padding:19px 17px!important;
  }
  .vvp-podcast-placement-teaser h3{font-size:19px!important}
  .vvp-podcast-placement-teaser p{font-size:14px!important;line-height:1.5!important}
  .vvp-podcast-placement-teaser__side{
    grid-column:1/-1!important;
    padding-left:56px!important;
  }
}

@media (max-width:420px){
  .vvp-podcast-order-hero__mini{grid-template-columns:1fr}
  .vvp-podcast-order-hero__platforms .vvp-podcast-platforms__grid{grid-template-columns:1fr!important}
}

/* Tablet full player: keep time visible as well. */
@media (min-width:761px) and (max-width:960px){
  .vvp-podcast-player__controls{
    grid-template-columns:auto auto auto auto minmax(70px,1fr) auto auto!important;
  }
  .vvp-podcast-player .vvp-audio-current,
  .vvp-podcast-player .vvp-audio-duration,
  .vvp-podcast-inline .vvp-audio-current,
  .vvp-podcast-inline .vvp-audio-duration{
    display:inline!important;
  }
}

/* Main /razmeshchenie/ mobile pricing typography. The JS adds these classes
   only to the detected “Форматы и цены” section on the placement page. */
@media (max-width:760px){
  .vvp-placement-pricing-normalized{
    min-width:0!important;
    overflow:visible!important;
  }
  .vvp-placement-pricing-normalized h2{
    margin-top:0!important;
    margin-bottom:10px!important;
    font-size:25px!important;
    line-height:1.16!important;
    letter-spacing:-.015em!important;
  }
  .vvp-placement-pricing-card{
    min-width:0!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }
  .vvp-placement-pricing-title{
    max-width:100%!important;
    margin-top:0!important;
    margin-bottom:6px!important;
    font-size:22px!important;
    line-height:1.18!important;
    letter-spacing:-.012em!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
}

/* 0.9.41 — category mobile flow: episodes first, platforms after the list. */
.vvp-podcasts-category-platforms--mobile{display:none}

@media (max-width:760px){
  .vvp-podcasts-hero--category .vvp-podcasts-category-platforms--desktop{
    display:none!important;
  }
  .vvp-podcasts-category-platforms--mobile{
    display:block!important;
    margin-top:6px!important;
    margin-bottom:32px!important;
  }
  .vvp-podcasts-category-platforms--mobile .vvp-podcast-platforms--embedded{
    margin:0!important;
    padding:18px!important;
  }
  .vvp-podcasts-category-platforms--mobile .vvp-podcast-platforms__head{
    margin-bottom:14px!important;
  }
  .vvp-podcasts-category-platforms--mobile .vvp-podcast-platforms__grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}

@media (max-width:460px){
  .vvp-podcasts-category-platforms--mobile .vvp-podcast-platforms__grid{
    grid-template-columns:1fr!important;
  }
}

/* 0.9.41 — main /razmeshchenie/ mobile price cards: make the content scan
   as label → title → explanation → price → conditions instead of a dense
   uninterrupted stack. Scoped by JS to the detected “Форматы и цены” block. */
@media (max-width:760px){
  .vvp-placement-pricing-normalized .vvp2-price-grid{
    gap:16px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-card,
  .vvp-placement-pricing-normalized .vvp-placement-pricing-card{
    padding:24px 22px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-card > .elementor-element,
  .vvp-placement-pricing-normalized .vvp-placement-pricing-card > .elementor-element{
    margin-top:0!important;
    margin-bottom:0!important;
  }
  .vvp-placement-pricing-normalized .vvp2-card-label{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    margin:0 0 12px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-card-label .elementor-widget-container,
  .vvp-placement-pricing-normalized .vvp2-card-label p{
    margin:0!important;
  }
  .vvp-placement-pricing-normalized .vvp2-card-label p{
    display:inline-block!important;
    padding:6px 10px!important;
    border-radius:999px!important;
    font-size:11px!important;
    line-height:1.15!important;
    letter-spacing:.08em!important;
    font-weight:750!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-title,
  .vvp-placement-pricing-normalized .vvp-placement-pricing-title{
    margin:0 0 12px!important;
    font-size:22px!important;
    line-height:1.18!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-title .elementor-heading-title{
    margin:0!important;
    font-size:22px!important;
    line-height:1.18!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-copy{
    margin:0 0 17px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-copy p{
    margin:0!important;
    font-size:15px!important;
    line-height:1.52!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price,
  .vvp-placement-pricing-normalized .vvp2-price-value,
  .vvp-placement-pricing-normalized [class*="price-value"]{
    margin:0 0 12px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price p,
  .vvp-placement-pricing-normalized .vvp2-price-value p,
  .vvp-placement-pricing-normalized [class*="price-value"] p{
    margin:0!important;
    font-size:30px!important;
    line-height:1.05!important;
    font-weight:800!important;
    letter-spacing:-.02em!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-sale,
  .vvp-placement-pricing-normalized [class*="price-sale"]{
    margin:0 0 17px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-sale p,
  .vvp-placement-pricing-normalized [class*="price-sale"] p{
    margin:0!important;
    padding:9px 11px!important;
    border-radius:8px!important;
    font-size:14px!important;
    line-height:1.35!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-note,
  .vvp-placement-pricing-normalized [class*="price-note"]{
    margin:0 0 16px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-note p,
  .vvp-placement-pricing-normalized [class*="price-note"] p{
    margin:0!important;
    font-size:14px!important;
    line-height:1.48!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-list,
  .vvp-placement-pricing-normalized .vvp2-includes,
  .vvp-placement-pricing-normalized ul{
    margin:17px 0 0!important;
    padding-top:16px!important;
    border-top:1px solid #E5E7EB!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-list li,
  .vvp-placement-pricing-normalized .vvp2-includes li,
  .vvp-placement-pricing-normalized ul li{
    margin:0!important;
    font-size:15px!important;
    line-height:1.45!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-list li + li,
  .vvp-placement-pricing-normalized .vvp2-includes li + li,
  .vvp-placement-pricing-normalized ul li + li{
    margin-top:11px!important;
  }
}

@media (max-width:760px){
  .vvp-placement-pricing-normalized .vvp2-price-value .elementor-heading-title,
  .vvp-placement-pricing-normalized .vvp2-price-value h3,
  .vvp-placement-pricing-normalized .vvp2-price-value h4{
    margin:0!important;
    font-size:30px!important;
    line-height:1.05!important;
    font-weight:800!important;
    letter-spacing:-.02em!important;
  }
  .vvp-placement-pricing-normalized .vvp2-price-note-sale p{
    padding:9px 11px!important;
    border-radius:8px!important;
  }
  .vvp-placement-pricing-normalized .vvp2-check-list{
    margin:17px 0 0!important;
    padding-top:16px!important;
    border-top:1px solid #E5E7EB!important;
  }
  .vvp-placement-pricing-normalized .vvp2-check-list ul{
    margin:0!important;
    padding-top:0!important;
    border-top:0!important;
  }
}

/* 0.9.42 — podcast order payment handoff to existing VVP Commercial Orders/YooKassa flow. */
.vvp-podcast-order-payment-note{margin:12px 0 0!important;color:#6B7280;font-size:13px!important;line-height:1.5!important}
.vvp-podcast-order-success--error{border-color:#F3C6C3!important;background:#FFF5F4!important;color:#7F1D1D!important}
@media (max-width:760px){
  .vvp-podcast-order-payment-note{font-size:13px!important;line-height:1.45!important}
}
