.llp {
  --llp-ink: #173d4f;
  --llp-deep: #102f3f;
  --llp-accent: #d9f43f;
  --llp-border: #dce7ea;
  --llp-light: #f3f8f8;
  color: var(--llp-ink);
}
.llp [hidden], .llp[hidden] { display: none !important; }
.llp :focus-visible { outline: 3px solid #087b75; outline-offset: 4px; }
.llp h2 { margin: 0 0 .55em; font-size: clamp(1.6rem, 3vw, 2.7rem); line-height: 1.1; }
.llp h3 { margin: 0 0 .45em; line-height: 1.25; }
.llp p { padding-bottom: 0; margin: 0 0 .9em; }
.llp .llp-eyebrow { font-size: .78rem; line-height: 1.45; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.llp .llp-lead { font-size: clamp(1.1rem, 2vw, 1.45rem); font-weight: 700; }
.llp .llp-credential { font-weight: 700; font-size: .88rem; }
.llp-hero, .llp-slider {
  background: var(--llp-deep);
  color: #fff;
  border-radius: 1rem;
}
.llp-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr);
  gap: clamp(1rem, 4vw, 3.5rem);
  align-items: center;
  padding: clamp(1.4rem, 5vw, 4.5rem);
}
.llp-hero h1 {
  color: #fff;
  font-size: clamp(2.25rem, 5.6vw, 5rem);
  line-height: 1;
  overflow-wrap: break-word;
  margin: 0 0 .32em;
}
.llp-hero .llp-eyebrow, .llp-slider .llp-eyebrow { color: var(--llp-accent); }
.llp-hero-art img { width: 100%; height: auto; display: block; margin: 0; border-radius: .65rem; }
.llp-actions, .llp-platforms { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }
.llp .llp-button {
  display: inline-block;
  padding: .72rem 1.15rem;
  border: 1px solid transparent;
  border-radius: 2rem;
  background: var(--llp-accent);
  color: var(--llp-deep);
  font: inherit;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  cursor: pointer;
}
.llp .llp-button:hover { background: #e7ff75; color: var(--llp-deep); }
.llp .llp-button--outline { background: transparent; border-color: currentColor; color: inherit; }
.llp-section { padding: clamp(1.45rem, 4vw, 3.2rem) 0; border-bottom: 1px solid var(--llp-border); }
.llp .llp-platforms { padding: 0; margin: 1rem 0 0; list-style: none; }
.llp .llp-platforms li { list-style: none; }
.llp-platforms a { display: inline-block; border: 1px solid var(--llp-border); border-radius: 2rem; padding: .35rem .8rem; color: var(--llp-ink); background: var(--llp-light); }
.llp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: 1rem; }
.llp-card { border: 1px solid var(--llp-border); border-radius: .7rem; overflow: hidden; background: #fff; }
.llp-card-body { padding: 1.2rem; }
.llp-card-art { display: block; background: var(--llp-ink); }
.llp-card-art img { display: block; width: 100%; margin: 0; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.llp .llp-card h3 a { color: var(--llp-ink); }
.llp .llp-card p:last-child { margin-bottom: 0; }
.llp-filters { display: flex; flex-wrap: wrap; gap: .8rem; align-items: end; margin: 1.1rem 0; }
.llp-filters label { display: grid; gap: .2rem; flex: 1 1 9rem; font-size: .88rem; font-weight: 700; }
.llp-filters input, .llp-filters select { width: 100%; min-height: 2.7rem; }
.llp-pagination { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1.25rem; }
.llp-pagination .page-numbers { padding: .25rem .6rem; }
.llp-pagination .current { background: var(--llp-light); font-weight: 700; }
.llp-back { margin-bottom: 1rem; }
.llp-prose > p, .llp-prose > ul, .llp-prose > ol, .llp-prose > details { max-width: 75ch; }
.llp-faq details, .llp-prose details { border-top: 1px solid var(--llp-border); padding: .8rem 0; }
.llp details summary { cursor: pointer; font-weight: 700; margin-bottom: .45rem; }
.llp-player { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.llp-player iframe { display: block; width: min(100%, 53rem); height: auto; aspect-ratio: 16 / 9; border: 0; }
.llp-citations li { margin-bottom: .7rem; }
.llp-newsletter { background: var(--llp-light); padding-inline: clamp(1rem, 4vw, 3rem); border-radius: .7rem; }
.llp-slider { position: relative; padding: clamp(1.3rem, 4vw, 3rem); margin: 1rem 0; }
.llp-slider h2 { color: #fff; }
.llp-slider .llp-slide + .llp-slide:not([hidden]) { margin-top: 1.5rem; }
.llp-slider-controls { display: flex; align-items: center; gap: .65rem; margin-top: 1rem; }
.llp-slider-controls button, .llp-banner button { border: 1px solid currentColor; border-radius: 50%; background: transparent; color: #fff; min-width: 2.75rem; min-height: 2.75rem; cursor: pointer; }
.llp-banner { display: none; }
@media (min-width: 1280px) {
  .llp-banner { display: flex; align-items: flex-start; flex-direction: row-reverse; gap: .55rem; position: fixed; right: 1rem; bottom: 5rem; z-index: 1000; width: min(18rem, 21vw); padding: .75rem; border-radius: .65rem; background: var(--llp-deep); color: #fff; box-shadow: 0 .4rem 2rem #102f3f44; }
  .llp-banner a { flex: 1; color: #fff; line-height: 1.4; }
  .llp-banner a:hover { color: var(--llp-accent); }
  .llp-banner strong, .llp-banner span { display: block; }
  .llp-banner span { font-size: .82rem; }
}
@media (max-width: 720px) {
  .llp-hero { grid-template-columns: 1fr; }
  .llp-hero-art { max-width: 26rem; }
}
.llp-hero .llp-card { color: var(--llp-ink); }
.llp-hero .llp-card .llp-eyebrow { color: var(--llp-ink); }
.llp-slider-controls .llp-rotation { border-radius: 2rem; padding-inline: .8rem; }

.llp-platforms .llp-platform { display: inline-flex; align-items: center; gap: .35rem; }
.llp-person > img { width: 7rem; height: 7rem; object-fit: cover; border-radius: 50%; margin: 0 0 .8rem; }
.llp-player-section .llp-player + .llp-player { margin-top: .8rem; }
.llp-player-section audio { width: min(100%, 45rem); margin: 1rem 0; display: block; }
.llp-slide-content { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 16rem); align-items: center; gap: 1.5rem; }
.llp-slide-art img { display: block; width: 100%; height: auto; border-radius: .6rem; margin: 0; }
@media (max-width: 720px) { .llp-slide-content { grid-template-columns: 1fr; } .llp-slide-art { max-width: 13rem; } }

/* Podcast hub. Full-bleed bands frame a consistent reading width. */
.container-wrap.llp-hub-wrap { padding-top: 0; padding-bottom: 0; background: #f5f8f7; }
.llp-hub {
  --llp-brand-teal: #00d6c4;
  --llp-brand-yellow: #ffe300;
  --llp-brand-gradient: linear-gradient(105deg, var(--llp-brand-teal), #adff63 55%, var(--llp-brand-yellow));
  --llp-hub-gutter: clamp(1.1rem, 4.5vw, 5rem);
  background: #fff;
}
.llp-hub-inner { width: 100%; max-width: 94rem; margin: 0 auto; padding-inline: var(--llp-hub-gutter); box-sizing: border-box; }
.llp-hub-band { padding-block: clamp(2.7rem, 6.5vw, 6.4rem); }
.llp-hub h2 { color: var(--llp-deep); font-size: clamp(2rem, 4.2vw, 4.25rem); letter-spacing: -.035em; }
.llp-hub .llp-eyebrow { letter-spacing: .13em; }
.llp-hub-hero { color: #fff; background: var(--llp-deep); border-bottom: .45rem solid transparent; border-image: var(--llp-brand-gradient) 1; }
.llp-hub-hero-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.14fr); align-items: center; gap: clamp(1.4rem, 4.4vw, 4.8rem); padding-block: clamp(2.2rem, 5.2vw, 5.75rem); }
.llp-hub-hero-copy { min-width: 0; }
.llp-hub-breadcrumb { color: #c1d7db; font-size: .84rem; margin-bottom: clamp(1.5rem, 4vw, 3rem); }
.llp-hub-breadcrumb a { color: inherit; text-decoration: underline; text-underline-offset: .18em; }
.llp-hub-hero .llp-eyebrow { color: #adff63; }
.llp-hub .llp-hub-hero h1 {
  color: #fff;
  font-size: clamp(2.95rem, 7.1vw, 7.6rem);
  font-weight: 750;
  letter-spacing: -.058em;
  line-height: .98;
  margin: 0 0 .38em;
}
.llp-hub-hero h1 em { color: #adff63; font: inherit; }
.llp-hub-hero-copy > p { max-width: 45ch; }
.llp-hub-hero-copy > p:not(.llp-eyebrow):not(.llp-lead) { color: #dce9e9; }
.llp-hub-hero .llp-actions { margin-top: 1.35rem; }
.llp-hub-hero .llp-button:not(.llp-button--outline) { background: var(--llp-brand-gradient); }
.llp-hub .llp-hub-hero-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1.34;
  object-fit: cover;
  object-position: center 38%;
  border-radius: .85rem;
  margin: 0;
  box-shadow: 0 1.2rem 2.6rem #071b2575;
}
.llp-hub-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.2rem, 5.2vw, 5rem); align-items: center; }
.llp-hub-intro { background: #e8fbf6; }
.llp-hub-intro .llp-hub-split > div > p:not(.llp-eyebrow) { font-size: clamp(1.03rem, 1.55vw, 1.35rem); line-height: 1.65; margin-bottom: 0; }
.llp-hub-intro h2, .llp-hub-subscribe h2 { margin-bottom: 0; }
.llp-hub-archive { scroll-margin-top: 5rem; background: #fff; }
.llp-hub-archive .llp-filters { margin-block: 1.7rem; }
.llp-episode-stack { display: grid; gap: 1.3rem; }
.llp-hub .llp-episode-card--stacked {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  border: 1px solid #d8e7e6;
  border-radius: .8rem;
  background: #f5faf9;
}
.llp-hub .llp-episode-card--stacked .llp-card-art { display: grid; align-content: center; min-width: 0; }
.llp-hub .llp-episode-card--stacked .llp-card-art img { aspect-ratio: 16 / 9; object-fit: contain; }
.llp-hub .llp-episode-card--stacked .llp-card-body { align-self: center; padding: clamp(1.3rem, 3vw, 3.15rem); min-width: 0; }
.llp-hub .llp-episode-card--stacked h3 { font-size: clamp(1.4rem, 2.65vw, 2.5rem); letter-spacing: -.025em; overflow-wrap: anywhere; }
.llp-hub .llp-episode-card--stacked .llp-eyebrow { color: #005b58; }
.llp-hub .llp-episode-card--stacked .llp-button { margin-top: .35rem; }
.llp-hub .llp-episode-description { max-width: 58ch; }
.llp-hub-banner { position: relative; overflow: hidden; background: #1e4659; aspect-ratio: 1640 / 720; }
.llp-hub .llp-hub-banner img { display: block; width: 100%; height: 100%; object-fit: cover; margin: 0; }
.llp-hub-banner.is-parallax img { transform: translateY(var(--llp-banner-offset, 0px)) scale(.93); }
.llp-hub-presenters { background: #eef8f5; }
.llp-hub-presenters .llp-host-section { padding: 0; border: 0; }
.llp-host-section .llp-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(.8rem, 3vw, 2rem); }
.llp-host-section .llp-person { padding: clamp(1.2rem, 3vw, 2.5rem); border-top: .32rem solid var(--llp-brand-teal); }
.llp-host-section .llp-person:nth-child(even) { border-top-color: #d7d900; }
.llp-host-section .llp-person > img { width: clamp(8rem, 15vw, 13rem); height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 35%; border-radius: .6rem; margin-bottom: 1.15rem; }
.llp-host-section .llp-person h3 { font-size: clamp(1.4rem, 2.5vw, 2.2rem); }
.llp-hub-more { padding-block: clamp(1.25rem, 3vw, 3rem); }
.llp-hub-more .llp-faq { border-bottom: 0; }
@media (max-width: 780px) {
  .llp-hub-hero-inner, .llp-hub-split, .llp-hub .llp-episode-card--stacked, .llp-host-section .llp-grid { grid-template-columns: minmax(0, 1fr); }
  .llp-hub .llp-hub-hero-image { aspect-ratio: 1080 / 645; }
  .llp-hub .llp-hub-banner img { transform: none; }
}
@media (prefers-reduced-motion: reduce) { .llp-hub .llp-hub-banner img { transform: none; } }

.llp .llp-linkedin { display: inline-flex; align-items: center; gap: .4rem; }
.llp-linkedin svg { display: block; flex: none; }
.llp-hub .llp-hub-newsletter-jump { display: inline-block; margin-top: 1rem; color: #dbefec; text-decoration: underline; text-underline-offset: .2em; }
.llp-hub-subscribe { scroll-margin-top: 5rem; background: #d7ff00; color: #111; }
.llp-hub-signup { text-align: center; }
.llp-hub .llp-hub-signup h2 {
  color: #111;
  font-family: 'Arial Narrow', 'Liberation Sans Narrow', 'Roboto Condensed', sans-serif;
  font-size: clamp(2rem, 4vw, 4rem);
  letter-spacing: .015em;
  text-transform: uppercase;
}
.llp-hub-signup > p { max-width: 52rem; margin-inline: auto; }
.llp-hub-signup-form { max-width: 52rem; margin: clamp(1.4rem, 3vw, 2.65rem) auto 0; }
.llp .llp-newsletter-link { margin-top: .55rem; }
.llp .llp-hub-signup .llp-button {
  min-width: 10rem;
  min-height: 3.25rem;
  border: 2px solid #111;
  background: transparent;
  color: #111;
  text-transform: uppercase;
}
.llp .llp-hub-signup .llp-button:hover { background: #111; color: #fff; }
.llp-newsletter-sample fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.llp-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.llp-newsletter-sample-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(.7rem, 1.5vw, 1.5rem); margin-bottom: 1.45rem; }
.llp .llp-newsletter-sample-fields input { box-sizing: border-box; min-width: 0; width: 100%; min-height: 3.45rem; padding: .68rem .95rem; border: 1px solid transparent; border-radius: .65rem; background: #fff; color: #111; font: inherit; }
.llp-newsletter-sample-fields .llp-newsletter-sample-email { grid-column: 1 / -1; }
.llp-newsletter-preview-note, .llp-newsletter-sample [role=status] { font-size: .9rem; color: #304019; }
.llp-newsletter-sample .llp-newsletter-preview-note { margin: 1rem 0 0; }
.llp-subscribe-socials { background: #141b22; }
.llp .llp-subscribe-socials ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; padding: 0; margin: 0; list-style: none; background: #2b3940; }
.llp .llp-subscribe-socials li { list-style: none; margin: 0; }
.llp .llp-subscribe-socials a { display: flex; align-items: center; justify-content: center; gap: .8rem; min-height: 4.75rem; padding: .75rem; background: #141b22; color: #cdf5e7; text-decoration: none; }
.llp .llp-subscribe-socials a:hover { background: #203039; }
.llp-subscribe-socials svg { display: block; flex: none; }
@media (max-width: 560px) {
  .llp .llp-subscribe-socials ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .llp .llp-subscribe-socials a { min-height: 3.85rem; }
}
@media (max-width: 560px) { .llp-newsletter-sample-fields { grid-template-columns: minmax(0, 1fr); } }
.llp-newsletter-sample [role=status] { margin: .65rem 0 0; }
.llp-newsletter-sample [role=status]:empty { margin: 0; }

.llp-hub-listen { background: #d7ff00; text-align: center; }
.llp-hub .llp-hub-listen h2 {
  color: #111;
  font-family: 'Arial Narrow', 'Liberation Sans Narrow', 'Roboto Condensed', sans-serif;
  font-size: clamp(1.55rem, 3vw, 2.75rem);
  letter-spacing: .015em;
  text-transform: uppercase;
}
.llp .llp-hub-listen .llp-platforms { justify-content: center; gap: clamp(.65rem, 1.35vw, 1.25rem); margin-top: clamp(1.1rem, 2.7vw, 2.2rem); }
.llp-hub-listen .llp-platforms li { display: flex; flex: 1 1 12rem; max-width: 20rem; }
.llp .llp-hub-listen .llp-platform { flex: 1; justify-content: center; min-height: clamp(4.1rem, 7.5vw, 6.65rem); padding: .75rem; border: 1px solid transparent; border-radius: .65rem; background: #fff; color: #171717; font-weight: 650; box-shadow: 0 .18rem .65rem #17250019; }
.llp .llp-hub-listen .llp-platform:hover { background: #f4f8ed; border-color: #335500; }
.llp-hub-listen .llp-platform svg { width: clamp(1.35rem, 2.25vw, 2rem); height: clamp(1.35rem, 2.25vw, 2rem); flex: none; }
@media (max-width: 560px) {
  .llp-hub-listen .llp-platforms li { flex: 0 1 calc((100% - .65rem) / 2); }
  .llp .llp-hub-listen .llp-platform { font-size: .9rem; }
}
