/* HLF Streaming — series & episode page styles.
   Inherits the theme's design tokens (--gold, --bg, etc.) when the HLF
   Studios theme is active; provides fallbacks otherwise. */
:root{
  --hlf-gold:#c9a24b; --hlf-gold-bright:#eccd84; --hlf-ember:#e0913f;
  --hlf-bg:#0b0907; --hlf-bg2:#100d0a; --hlf-bg3:#16120d;
  --hlf-line:#2a2118; --hlf-line2:#3a2e1f; --hlf-cream:#efe7d6; --hlf-ash:#a89d88; --hlf-dim:#6f6451;
}
.hlf-stream-wrap{
  --g:var(--gold,var(--hlf-gold));
  --gb:var(--gold-bright,var(--hlf-gold-bright));
  --bg:var(--bg,var(--hlf-bg));
  --bg2:var(--bg-2,var(--hlf-bg2));
  --bg3:var(--bg-3,var(--hlf-bg3));
  --line:var(--line,var(--hlf-line));
  --line2:var(--line-2,var(--hlf-line2));
  --cream:var(--cream,var(--hlf-cream));
  --ash:var(--ash,var(--hlf-ash));
  --dim:var(--dim,var(--hlf-dim));
  color:var(--cream);
  font-family:var(--body,"Barlow",system-ui,sans-serif);
  max-width:1500px;margin-inline:auto;
  padding:clamp(1.2rem,3.5vw,3rem);
}
/* when theme is active, .main already offsets the sidebar; this wrap sits inside it */

.hlf-s-hero{position:relative;border:1px solid var(--line);border-radius:8px;overflow:hidden;min-height:min(56svh,460px);display:flex;align-items:flex-end}
.hlf-s-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hlf-s-hero__ph{position:absolute;inset:0;display:grid;place-items:center;
  background:radial-gradient(120% 120% at 30% 20%,rgba(224,145,63,.18),transparent 55%),linear-gradient(150deg,#171107,#0c0a07)}
.hlf-s-hero__ph span{font-family:var(--display,"Anton",Impact,sans-serif);font-size:5rem;color:rgba(239,231,214,.1)}
.hlf-s-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,6,4,.95) 6%,transparent 60%),linear-gradient(90deg,rgba(8,6,4,.7),transparent 60%)}
.hlf-s-hero__c{position:relative;z-index:2;padding:clamp(1.4rem,4vw,2.6rem)}
.hlf-eyebrow{font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.34em;font-size:.72rem;color:var(--g);display:block;margin-bottom:.6rem}
.hlf-s-hero__c h1{font-family:var(--display,"Anton",Impact,sans-serif);text-transform:uppercase;font-size:clamp(2.4rem,7vw,5rem);line-height:.9;color:var(--cream);margin:0}
.hlf-s-hero__c .tagline{font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.1em;color:var(--g);margin-top:.4rem}

.hlf-badge{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;
  border:1px solid var(--g);color:var(--g);border-radius:30px;padding:.4em .9em;background:rgba(8,6,4,.5)}
.hlf-badge--soon{border-color:var(--hlf-ember);color:var(--hlf-ember)}

.hlf-soon{margin-top:1.6rem;border:1px dashed var(--line2);border-radius:8px;padding:clamp(2rem,6vw,4rem);text-align:center;
  background:linear-gradient(180deg,var(--bg3),var(--bg2))}
.hlf-soon h2{font-family:var(--display,"Anton",Impact,sans-serif);text-transform:uppercase;font-size:clamp(1.8rem,5vw,3rem);color:var(--g);margin:0 0 .6rem}
.hlf-soon p{color:var(--ash);max-width:48ch;margin:0 auto 1.4rem}
.hlf-btn{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.16em;
  font-size:.8rem;font-weight:600;padding:.85em 1.6em;border-radius:4px;text-decoration:none;transition:transform .2s,box-shadow .3s}
.hlf-btn--gold{background:linear-gradient(180deg,var(--gb),var(--g));color:#1a1306;box-shadow:0 6px 24px rgba(201,162,75,.25)}
.hlf-btn--gold:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(201,162,75,.4)}
.hlf-btn--ghost{border:1px solid var(--line2);color:var(--cream)}
.hlf-btn--ghost:hover{border-color:var(--g);color:var(--gb)}

.hlf-eps{margin-top:2rem}
.hlf-eps h2{font-family:var(--display,"Anton",Impact,sans-serif);text-transform:uppercase;font-size:1.4rem;color:var(--cream);margin:0 0 1rem}
.hlf-ep-list{display:grid;gap:.7rem}
.hlf-ep{display:flex;gap:1rem;align-items:center;border:1px solid var(--line);border-radius:6px;background:var(--bg2);
  padding:.8rem;transition:border-color .3s,transform .3s;text-decoration:none;color:inherit}
.hlf-ep:hover{border-color:var(--g);transform:translateY(-2px)}
.hlf-ep__thumb{width:128px;height:72px;border-radius:4px;overflow:hidden;flex:0 0 auto;position:relative;
  background:linear-gradient(150deg,#171107,#0c0a07);display:grid;place-items:center}
.hlf-ep__thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hlf-ep__thumb .play{width:34px;height:34px;border-radius:50%;border:1px solid var(--g);color:var(--g);display:grid;place-items:center;position:relative;z-index:2;background:rgba(8,6,4,.5)}
.hlf-ep__thumb .play svg{width:16px;height:16px;fill:currentColor}
.hlf-ep__m{flex:1;min-width:0}
.hlf-ep__n{font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;color:var(--g)}
.hlf-ep__t{font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.04em;font-size:.95rem;font-weight:600;color:var(--cream);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hlf-ep__d{font-size:.8rem;color:var(--ash);margin-top:.2rem;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.hlf-ep__dur{margin-left:auto;font-family:var(--cond,"Oswald",sans-serif);font-size:.72rem;color:var(--ash);flex:0 0 auto}
.hlf-ep__lock{margin-left:auto;font-size:.72rem;color:var(--dim);flex:0 0 auto}

.hlf-back{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.16em;
  font-size:.72rem;color:var(--ash);text-decoration:none;margin-bottom:1.2rem}
.hlf-back:hover{color:var(--g)}

/* episode player page */
.hlf-watch{max-width:1100px;margin-inline:auto}
.hlf-watch__title{font-family:var(--display,"Anton",Impact,sans-serif);text-transform:uppercase;font-size:clamp(1.6rem,4vw,2.6rem);color:var(--cream);margin:.4rem 0 .2rem}
.hlf-watch__series{font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;color:var(--g)}
.hlf-watch__desc{color:var(--ash);max-width:70ch;margin-top:1rem}
.hlf-player-embed{border-radius:8px;overflow:hidden;border:1px solid var(--line2);background:#000}
.hlf-gate{border:1px solid var(--line2);border-radius:8px;padding:clamp(2rem,6vw,4rem);text-align:center;background:linear-gradient(180deg,var(--bg3),var(--bg2))}
.hlf-gate .lock{width:60px;height:60px;border-radius:50%;border:1px solid var(--g);color:var(--g);display:grid;place-items:center;margin:0 auto 1.2rem}
.hlf-gate .lock svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.5}
.hlf-gate h2{font-family:var(--display,"Anton",Impact,sans-serif);text-transform:uppercase;font-size:1.8rem;color:var(--g);margin:0 0 .5rem}
.hlf-gate p{color:var(--ash);max-width:46ch;margin:0 auto 1.4rem}

.hlf-series-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem;margin-top:1.4rem}
.hlf-poster{position:relative;height:320px;border-radius:6px;overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none;color:inherit;transition:border-color .3s,transform .3s}
.hlf-poster:hover{border-color:var(--g);transform:translateY(-3px)}
.hlf-poster__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hlf-poster__ph{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(120% 120% at 30% 20%,rgba(224,145,63,.18),transparent 55%),linear-gradient(150deg,#171107,#0c0a07)}
.hlf-poster__ph span{font-family:var(--display,"Anton",Impact,sans-serif);font-size:3rem;color:rgba(239,231,214,.12)}
.hlf-poster::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,6,4,.95) 10%,transparent 60%)}
.hlf-poster__c{position:relative;z-index:2;padding:1rem}
.hlf-poster__t{font-family:var(--display,"Anton",Impact,sans-serif);text-transform:uppercase;font-size:1.4rem;line-height:.92;color:var(--cream)}
.hlf-poster__s{font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.16em;font-size:.62rem;color:var(--g);margin-top:.2rem}
.hlf-poster__soon{position:absolute;top:.8rem;right:.8rem;z-index:3;font-family:var(--cond,"Oswald",sans-serif);text-transform:uppercase;letter-spacing:.14em;font-size:.58rem;color:var(--hlf-ember);border:1px solid var(--hlf-ember);border-radius:30px;padding:.3em .7em;background:rgba(8,6,4,.6)}
