/* ============================================================
   Podcast Knowledge Hub — project styles.
   Loads AFTER leanscale.css; reuses its tokens/shell/cards.
   ============================================================ */

/* ---------- leanscale.team palette match ----------
   The shared design standard accents in lime (#E8FFCF). Audited
   www.leanscale.team on 2026-08-06: lime appears nowhere on it. The live
   accent is orchid #DB84C9 (the hero highlight word) over the same plum
   #301934 / purple #642585 / grey #E9E9E7 the standard already uses.
   This hub is the property headed for leanscale.team, so it matches the
   website rather than the other microsites: the lime tokens are retargeted
   to the orchid family here, which carries every downstream use of them
   in both stylesheets without forking the shared file. */
:root{
  --ls-orchid:#DB84C9;          /* live-site hero accent */
  --ls-orchid-soft:#F6DDEF;     /* soft wash — was --ls-lime */
  --ls-lime:#F6DDEF;
  --ls-lime-deep:#EDB4DC;
}
/* Live site sets the hero highlight as orchid TEXT, not an underline. */
.hl{color:var(--ls-orchid);white-space:normal}
.hl:after{display:none}
/* Nav CTA matches the site's dark-plum "Talk To Us" pill with its arrow disc. */
.nav-cta{background:var(--ls-dark-purple);padding:8px 8px 8px 18px;display:inline-flex;align-items:center;gap:10px}
.nav-cta:hover{background:#43264a}
.nav-cta__arrow{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;
  border-radius:50%;background:#fff;color:var(--ls-dark-purple);font-size:12px;line-height:1}

/* ---------- inline entity cross-links (autolinked prose) ---------- */
.xref{color:var(--ls-strong-purple);font-weight:600;
  border-bottom:1.5px solid var(--ls-orchid-soft);transition:border-color .15s,background .15s}
.xref:hover{border-bottom-color:var(--ls-orchid);background:var(--ls-orchid-soft)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:800;padding:11px 18px;border-radius:100px;
  border:1.5px solid var(--ls-light-gray);background:#fff;color:var(--ls-dark-purple);cursor:pointer;transition:all .15s;white-space:nowrap}
.btn:hover{border-color:var(--ls-medium-purple);color:var(--ls-strong-purple);transform:translateY(-1px)}
.btn--primary{background:var(--ls-strong-purple);color:#fff;border-color:var(--ls-strong-purple)}
.btn--primary:hover{background:#51206c;color:#fff}
.btn--share{font-family:inherit}
.btn--tiny{font-size:12px;padding:7px 13px}
.btn--md{border-style:dashed;color:var(--ls-strong-purple);border-color:var(--ls-medium-purple)}
.btn--md:hover{background:var(--ls-orchid-soft)}

/* ---------- episode-index search ---------- */
.hubsearch--index{margin-top:30px;max-width:640px}
.epx-grid [data-ep][hidden]{display:none}
.epx-empty{margin-top:8px;font-size:15px;color:var(--ls-dark-gray);font-weight:600;
  display:flex;align-items:center;gap:12px}
.ep-hero__upd{color:var(--ls-strong-purple);font-weight:600}

/* ---------- episode hero ---------- */
.ep-hero{padding-top:52px}
.ep-hero__grid{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:start}
.ep-hero h1{font-size:clamp(2.1rem,4.6vw,3.5rem);max-width:20ch;color:var(--ls-dark-purple)}
.ep-hero .sub{margin-top:16px;font-size:clamp(1.05rem,2vw,1.3rem);color:var(--ls-dark-gray);max-width:52ch}
.ep-hero__by{margin-top:22px;font-size:15px;color:var(--ls-ink);font-weight:500;line-height:1.7}
.ep-hero__by strong{color:var(--ls-dark-purple);font-weight:800}
.ep-hero__by a{color:var(--ls-strong-purple);font-weight:700}
.ep-hero__hostline{display:block;font-size:13.5px;color:var(--ls-dark-gray)}
.ep-hero__meta{margin-top:16px;display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:13px;color:var(--ls-dark-gray);font-weight:600}
.ep-hero__meta span[aria-hidden]{color:var(--ls-medium-purple)}
.ep-hero__pills{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px}
.ep-hero__cta{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px}

.ep-hero__aside{position:sticky;top:80px}
.guestcard{background:#fff;border:1px solid var(--ls-light-gray);border-radius:var(--radius);box-shadow:var(--shadow);
  padding:26px 22px;text-align:center}
.guestcard__av{width:150px;height:150px;border-radius:50%;object-fit:cover;object-position:top center;
  border:4px solid var(--ls-lime);box-shadow:var(--shadow);margin:0 auto 16px;display:block}
/* initials-monogram fallback (guests without a headshot) */
.mono-av,.guestcard__av--mono,.feat__img--mono,.guest-hero__img--mono{
  display:flex;align-items:center;justify-content:center;font-weight:800;letter-spacing:-.02em;color:#fff;
  background:linear-gradient(135deg,var(--ls-dark-purple),var(--ls-strong-purple));text-transform:uppercase}
.guestcard__av--mono{font-size:3.2rem}
.feat__img--mono{font-size:4rem;border-radius:18px!important}
.guest-hero__img--mono{font-size:3.4rem}
.guestcard__name{font-size:1.2rem;font-weight:800;color:var(--ls-dark-purple);letter-spacing:-.02em}
.guestcard__title{font-size:13px;color:var(--ls-dark-gray);font-weight:600;margin-top:3px;line-height:1.4}
.guestcard__co{font-size:13px;color:var(--ls-strong-purple);font-weight:800;margin-top:6px}
.guestcard__link{display:inline-block;margin-top:16px;font-size:13px;font-weight:800;color:var(--ls-strong-purple)}

/* ---------- site search ---------- */
.hubsearch{margin-top:40px;position:relative}
.hubsearch input{width:100%;font-family:inherit;font-size:16px;padding:16px 20px;border-radius:14px;
  border:1.5px solid var(--ls-light-gray);background:#fff;color:var(--ls-ink);box-shadow:var(--shadow);transition:border-color .15s}
.hubsearch input:focus{outline:none;border-color:var(--ls-strong-purple)}
.hubsearch__count{margin-top:8px;font-size:13px;color:var(--ls-dark-gray);font-weight:600;min-height:18px}
mark{background:var(--ls-lime-deep);color:var(--ls-dark-purple);border-radius:3px;padding:0 2px}

/* ---------- jump nav ---------- */
.jump{position:sticky;top:53px;z-index:40;background:rgba(255,251,255,.9);backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--ls-light-gray);margin-top:34px}
.jump__row{padding:12px 0;display:flex;gap:20px;font-size:13px;font-weight:700;color:var(--ls-dark-gray);overflow-x:auto}
.jump__row a{white-space:nowrap;padding:3px 0}
.jump__row a:hover,.jump__row a.on{color:var(--ls-strong-purple)}
@media(max-width:640px){.jump{top:0}}

/* ---------- prose ---------- */
.prose--wide{max-width:74ch}
.prose--wide p{font-size:1.08rem;line-height:1.72;color:var(--ls-dark-gray);margin:0 0 18px}
#executive-summary .prose--wide p:first-child{font-size:1.18rem;color:var(--ls-ink)}

/* ---------- key takeaways ---------- */
.tk-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.tk{padding:26px 26px 22px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
.tk:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--ls-medium-purple)}
.tk__n{font-size:12px;font-weight:800;color:var(--ls-medium-purple);letter-spacing:.1em}
.tk__title{font-size:1.2rem;font-weight:800;color:var(--ls-dark-purple);letter-spacing:-.02em;line-height:1.2;margin:8px 0 12px}
.tk__b{font-size:.97rem;line-height:1.6;color:var(--ls-dark-gray);margin:0 0 14px}
.tk__imp{font-size:.92rem;line-height:1.55;color:var(--ls-ink);background:var(--ls-purple-soft);border-radius:12px;padding:12px 15px;margin:0 0 14px}
.tk__imp strong{color:var(--ls-strong-purple)}
.tk__aud{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}

/* ---------- frameworks ---------- */
.fw-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.fw{padding:26px}
.fw__top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.fw__name{font-size:1.15rem;font-weight:800;color:var(--ls-dark-purple);letter-spacing:-.02em;line-height:1.2}
.fw__ts{font-size:12px;font-weight:800;color:var(--ls-strong-purple);background:var(--ls-purple-soft);padding:4px 10px;border-radius:100px;white-space:nowrap}
.fw__def{font-size:.98rem;line-height:1.58;color:var(--ls-ink);margin:0 0 10px;font-weight:500}
.fw__exp{font-size:.92rem;line-height:1.55;color:var(--ls-dark-gray);margin:0}

/* ---------- quotes ---------- */
.q-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.q{padding:26px}
.q blockquote{font-size:1.1rem;line-height:1.45;font-weight:600;color:var(--ls-dark-purple);letter-spacing:-.01em;margin:0 0 16px}
.q figcaption{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--ls-light-gray);padding-top:13px}
.q__who{font-size:13px;font-weight:800;color:var(--ls-strong-purple)}
.q__ts{font-size:12px;color:var(--ls-dark-gray);font-weight:700}
.q__actions{margin-left:auto;display:flex;gap:6px}
.q__btn{font-family:inherit;font-size:11.5px;font-weight:800;color:var(--ls-dark-gray);background:var(--ls-light-gray);
  border:none;border-radius:100px;padding:5px 12px;cursor:pointer;transition:all .15s}
.q__btn:hover{background:var(--ls-strong-purple);color:#fff}

/* ---------- advice ---------- */
.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.adv{padding:24px}
.adv__role{font-size:1.05rem;font-weight:800;color:var(--ls-strong-purple);margin:0 0 14px;padding-bottom:12px;border-bottom:2px solid var(--ls-lime)}
.adv__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.adv__list li{font-size:.93rem;line-height:1.55;color:var(--ls-dark-gray);padding-left:18px;position:relative}
.adv__list li:before{content:"→";position:absolute;left:0;color:var(--ls-strong-purple);font-weight:800}

/* ---------- AI section ---------- */
.ai-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.ai{padding:22px 24px}
.ai h4{font-size:1rem;font-weight:800;color:var(--ls-dark-purple);margin:0 0 8px;letter-spacing:-.01em}
.ai p{font-size:.92rem;line-height:1.55;color:var(--ls-dark-gray);margin:0}
.ai-ideas{margin-top:22px;background:var(--ls-lime);border-radius:var(--radius);padding:24px 28px}
.ai-ideas h4{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--ls-strong-purple);font-weight:800;margin:0 0 12px}
.ai-ideas ul{margin:0;padding-left:20px}
.ai-ideas li{font-size:.98rem;line-height:1.55;color:var(--ls-dark-purple);font-weight:600;margin-bottom:8px}

/* ---------- ops takeaways ---------- */
.ops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ops{padding:24px}
.ops__h{font-size:1rem;font-weight:800;color:var(--ls-strong-purple);margin:0 0 14px}
.ops__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.ops__list li{font-size:.9rem;line-height:1.5;color:var(--ls-dark-gray)}
.ops__list li b{color:var(--ls-dark-purple);font-weight:800}

/* ---------- metrics ---------- */
.mx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mx{padding:22px 24px}
.mx__v{font-size:1.55rem;font-weight:800;color:var(--ls-strong-purple);letter-spacing:-.03em;line-height:1.1}
.mx__k{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ls-dark-gray);margin:8px 0 8px}
.mx__c{font-size:.9rem;line-height:1.5;color:var(--ls-dark-gray);margin:0}

/* ---------- entities ---------- */
.sub-h{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ls-dark-gray);margin:28px 0 14px}
.sub-h:first-child{margin-top:0}
.ent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ent-grid--pills{display:flex;flex-wrap:wrap;gap:8px}
.ent{padding:20px 22px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
a.ent:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);border-color:var(--ls-medium-purple)}
.ent__top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px}
.ent__name{font-size:1.02rem;font-weight:800;color:var(--ls-dark-purple)}
.ent__cat{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ls-medium-purple);white-space:nowrap}
.ent__d{font-size:.88rem;line-height:1.5;color:var(--ls-dark-gray);margin:0 0 14px;flex:1}
.ent__foot{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11.5px}
.ent__ts{color:var(--ls-dark-gray);font-weight:700}
.ent__go{color:var(--ls-strong-purple);font-weight:800}
.metho{margin-top:24px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.metho__lbl{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ls-dark-gray);margin-right:4px}

/* ---------- services ---------- */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.svc{padding:26px 24px;transition:transform .2s,box-shadow .2s,border-color .2s}
.svc:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--ls-medium-purple)}
.svc__h{font-size:1.1rem;font-weight:800;color:var(--ls-strong-purple);margin:0 0 8px}
.svc__b{font-size:.92rem;line-height:1.5;color:var(--ls-ink);margin:0 0 12px}
.svc__why{font-size:.85rem;line-height:1.5;color:var(--ls-dark-gray);margin:0;font-style:italic;border-top:1px solid var(--ls-light-gray);padding-top:12px}

/* ---------- related episodes ---------- */
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rel{padding:24px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
a.rel:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--ls-medium-purple)}
.rel--archive{opacity:.86}
.rel__n{font-size:11px;font-weight:800;color:var(--ls-medium-purple);letter-spacing:.08em}
.rel__h{font-size:1.05rem;font-weight:800;color:var(--ls-dark-purple);line-height:1.2;margin:8px 0 6px;letter-spacing:-.01em}
.rel__g{font-size:12.5px;color:var(--ls-strong-purple);font-weight:700;margin-bottom:10px}
.rel__why{font-size:.88rem;line-height:1.5;color:var(--ls-dark-gray);margin:0 0 14px;flex:1}
.rel__tag{font-size:11px;font-weight:800;color:var(--ls-dark-gray);text-transform:uppercase;letter-spacing:.05em}
a.rel .rel__tag{color:var(--ls-strong-purple)}

/* ---------- FAQ ---------- */
.faq{display:flex;flex-direction:column;gap:12px;max-width:78ch}
.faq__item{background:#fff;border:1px solid var(--ls-light-gray);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.faq__q{font-size:1.05rem;font-weight:800;color:var(--ls-dark-purple);padding:18px 22px;cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:14px}
.faq__q::-webkit-details-marker{display:none}
.faq__q:after{content:"+";font-size:1.4rem;color:var(--ls-strong-purple);font-weight:400;flex:0 0 auto}
.faq__item[open] .faq__q:after{content:"–"}
.faq__a{padding:0 22px 20px}
.faq__a p{font-size:.98rem;line-height:1.62;color:var(--ls-dark-gray);margin:0}

/* ---------- timeline ---------- */
.tl{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 24px;max-width:900px}
.tl__row{display:flex;gap:14px;align-items:baseline;padding:10px 12px;border-radius:10px;transition:background .12s}
.tl__row:hover{background:var(--ls-purple-soft)}
.tl__t{font-size:13px;font-weight:800;color:var(--ls-strong-purple);font-variant-numeric:tabular-nums;flex:0 0 58px}
.tl__title{font-size:14px;color:var(--ls-ink);font-weight:500}

/* ---------- transcript ---------- */
.ts-tools{display:flex;gap:8px;margin-bottom:16px}
.ts{display:flex;flex-direction:column;gap:10px}
.tsec{background:#fff;border:1px solid var(--ls-light-gray);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.tsec__sum{padding:16px 20px;cursor:pointer;list-style:none;display:flex;align-items:center;gap:16px}
.tsec__sum::-webkit-details-marker{display:none}
.tsec__sum:hover{background:var(--ls-purple-soft)}
.tsec__t{font-size:13px;font-weight:800;color:var(--ls-strong-purple);font-variant-numeric:tabular-nums;flex:0 0 auto}
.tsec__title{font-size:15px;font-weight:700;color:var(--ls-dark-purple)}
.tsec[open] .tsec__sum{border-bottom:1px solid var(--ls-light-gray)}
.tsec__body{padding:12px 22px 20px}
.tseg{font-size:.96rem;line-height:1.68;color:var(--ls-ink);margin:0 0 12px}
.tseg__t{font-size:11px;font-weight:800;color:var(--ls-medium-purple);font-variant-numeric:tabular-nums;margin-right:8px;
  background:var(--ls-purple-soft);padding:2px 7px;border-radius:100px;vertical-align:1px}
.tseg.hide{display:none}

/* ---------- home / index ---------- */
.feat{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center;padding:30px;transition:transform .2s,box-shadow .2s,border-color .2s}
.feat:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--ls-medium-purple)}
.feat__img{width:200px;height:200px;border-radius:18px;object-fit:cover;object-position:top center;border:4px solid var(--ls-lime)}
.feat__n{font-size:12px;font-weight:800;color:var(--ls-medium-purple);letter-spacing:.08em}
.feat__h{font-size:1.7rem;font-weight:800;color:var(--ls-dark-purple);letter-spacing:-.02em;line-height:1.1;margin:8px 0 8px}
.feat__sub{font-size:1rem;color:var(--ls-dark-gray);margin:0 0 12px}
.feat__by{font-size:14px;color:var(--ls-ink)}.feat__by strong{color:var(--ls-dark-purple)}
.feat__go{display:inline-block;margin-top:14px;font-size:14px;font-weight:800;color:var(--ls-strong-purple)}

.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.topicx{padding:24px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;flex-direction:column}
.topicx:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--ls-medium-purple)}
.topicx h3{font-size:1.15rem;font-weight:800;color:var(--ls-dark-purple);letter-spacing:-.02em;margin:0 0 8px}
.topicx p{font-size:.9rem;line-height:1.5;color:var(--ls-dark-gray);margin:0 0 14px;flex:1}
.topicx__n{font-size:12px;font-weight:800;color:var(--ls-strong-purple)}

.epx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.epx{padding:24px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
.epx:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--ls-medium-purple)}
.epx__n{font-size:11px;font-weight:800;color:var(--ls-medium-purple);letter-spacing:.08em}
.epx__h{font-size:1.12rem;font-weight:800;color:var(--ls-dark-purple);line-height:1.2;margin:8px 0 8px;letter-spacing:-.01em}
.epx__sub{font-size:.9rem;line-height:1.5;color:var(--ls-dark-gray);margin:0 0 14px;flex:1}
.epx__meta{font-size:12px;color:var(--ls-dark-gray);font-weight:600}

.guest-hero{display:flex;gap:28px;align-items:center}
.guest-hero__img{width:160px;height:160px;border-radius:50%;object-fit:cover;object-position:top center;border:5px solid var(--ls-lime);box-shadow:var(--shadow)}
.answer{padding:30px 34px;background:linear-gradient(135deg,var(--ls-purple-soft),#fff)}
.answer .kick{margin-bottom:10px}
.answer__a{font-size:1.15rem;line-height:1.6;color:var(--ls-dark-purple);font-weight:500;margin:0}

/* ---------- responsive ---------- */
@media(max-width:960px){
  .ep-hero__grid{grid-template-columns:1fr}
  .ep-hero__aside{position:static;max-width:320px}
  .tk-grid,.fw-grid,.q-grid,.rel-grid,.svc-grid,.topic-grid,.epx-grid,.ai-grid,.ops-grid{grid-template-columns:1fr}
  .adv-grid,.mx-grid,.ent-grid{grid-template-columns:repeat(2,1fr)}
  .tl{grid-template-columns:1fr}
  .feat{grid-template-columns:1fr;text-align:center}
  .feat__img{margin:0 auto}
  .guest-hero{flex-direction:column;text-align:center}
}
@media(max-width:600px){
  .adv-grid,.mx-grid,.ent-grid{grid-template-columns:1fr}
  .ep-hero__cta{flex-direction:column;align-items:stretch}
  .btn{justify-content:center}
}
