@import url('/assets/css/ui-v69-2.css?v=69.2');
/* Jackhao.tv V69.3 — home hero + footer convergence hotfix.
   This layer is intentionally loaded last. It isolates the home hero and canonical
   footer from legacy V35/V67/V68 rules so mixed edge/browser caches cannot create
   the three-column stretched layout seen in production. */

:root{
  --jh93-shell:1320px;
  --jh93-paper:#fffdfa;
  --jh93-soft:#f8f3ed;
  --jh93-footer:#eee7df;
  --jh93-ink:#2b231e;
  --jh93-copy:#62574f;
  --jh93-muted:#81746b;
  --jh93-accent:#8f4f34;
  --jh93-line:#e2d7cc;
  --jh93-line-strong:#d5c7ba;
}

html{overflow-x:clip!important}
html body.page-home,html body.page-home main{min-width:0!important}
html body.page-home .ref-home-shell{width:min(var(--jh93-shell),calc(100% - 48px))!important;min-width:0!important;margin:16px auto 0!important;overflow:hidden!important}

/* HOME HERO — one stable visual unit followed by a full-width recommendation rail. */
html body.page-home .ref-hero-layout{
  display:block!important;
  grid-template-columns:none!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
html body.page-home .ref-hero-main{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:clamp(500px,43vw,620px)!important;
  max-height:620px!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background:#f4efe9!important;
}
html body.page-home .ref-hero-main::after{display:none!important;content:none!important}
html body.page-home .ref-hero-main>img{
  position:relative!important;
  inset:auto!important;
  grid-column:2!important;
  grid-row:1!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  min-height:0!important;
  max-height:620px!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center 46%!important;
  filter:none!important;
  transform:none!important;
}
html body.page-home .ref-hero-copy{
  position:relative!important;
  inset:auto!important;
  z-index:2!important;
  grid-column:1!important;
  grid-row:1!important;
  align-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  padding:clamp(34px,4.3vw,64px)!important;
  background:linear-gradient(145deg,#f8f3ed 0%,#f5eee7 100%)!important;
}
html body.page-home .ref-hero-copy,html body.page-home .ref-hero-copy *{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
}
html body.page-home .ref-hero-copy .ref-kicker{
  margin:0 0 16px!important;
  max-width:25em!important;
  font-size:12px!important;
  line-height:1.6!important;
  letter-spacing:.08em!important;
  color:var(--jh93-accent)!important;
}
html body.page-home .ref-hero-copy h1{
  width:100%!important;
  max-width:9.6em!important;
  min-width:0!important;
  margin:0!important;
  font-size:clamp(42px,4vw,60px)!important;
  line-height:1.09!important;
  letter-spacing:-.045em!important;
  color:var(--jh93-ink)!important;
  overflow:visible!important;
  text-wrap:balance!important;
}
html body.page-home .ref-hero-copy>p:not(.ref-kicker){
  width:100%!important;
  max-width:36em!important;
  margin:18px 0 0!important;
  font-size:clamp(15px,1.1vw,17px)!important;
  line-height:1.78!important;
  color:var(--jh93-copy)!important;
}
html body.page-home .ref-hero-copy .jh-growth-tagline{margin-top:13px!important;font-weight:650!important;color:var(--jh93-ink)!important}
html body.page-home .ref-hero-actions{margin-top:22px!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important}
html body.page-home .ref-hero-actions a{writing-mode:horizontal-tb!important;min-height:46px!important}

/* RECENT LISTENS — always below the hero, never a third desktop column. */
html body.page-home .ref-latest{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  padding:24px 26px 26px!important;
  border:0!important;
  border-top:1px solid var(--jh93-line)!important;
  border-radius:0!important;
  background:#fbf7f2!important;
  overflow:visible!important;
}
html body.page-home .ref-latest,html body.page-home .ref-latest *{writing-mode:horizontal-tb!important;text-orientation:mixed!important}
html body.page-home .ref-latest-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;margin:0 0 14px!important}
html body.page-home .ref-latest-head h2{margin:0!important;max-width:none!important;font-size:22px!important;line-height:1.2!important;color:var(--jh93-ink)!important}
html body.page-home .ref-latest-list{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
}
html body.page-home .ref-latest-item{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:4px!important;
  align-items:center!important;
  min-width:0!important;
  min-height:94px!important;
  padding:12px!important;
  border:1px solid var(--jh93-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  overflow:hidden!important;
}
html body.page-home .ref-latest-item img{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  width:64px!important;
  height:64px!important;
  min-width:64px!important;
  max-width:64px!important;
  max-height:64px!important;
  aspect-ratio:1!important;
  object-fit:cover!important;
  border-radius:11px!important;
  filter:none!important;
}
html body.page-home .ref-latest-item span{grid-column:2!important;grid-row:1!important;min-width:0!important;display:block!important}
html body.page-home .ref-latest-item b{display:block!important;font-size:14px!important;line-height:1.35!important;color:var(--jh93-ink)!important;overflow-wrap:anywhere!important}
html body.page-home .ref-latest-item small{display:block!important;margin-top:3px!important;font-size:11px!important;line-height:1.4!important;color:var(--jh93-muted)!important}
html body.page-home .ref-latest-item em{
  grid-column:2!important;
  grid-row:2!important;
  justify-self:start!important;
  display:inline-flex!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-style:normal!important;
  background:#f3e8de!important;
  color:var(--jh93-accent)!important;
}
html body.page-home .ref-latest-more{display:flex!important;width:100%!important;min-height:42px!important;margin:14px 0 0!important;align-items:center!important;justify-content:center!important}

/* CANONICAL COMPACT FOOTER — component-scoped reset, no legacy inline/vertical leakage. */
html body.premium-v35 footer.site-footer-v35{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  background:var(--jh93-footer)!important;
  color:var(--jh93-copy)!important;
  border-top:1px solid var(--jh93-line-strong)!important;
  overflow:visible!important;
}
html body.premium-v35 footer.site-footer-v35 :where(section,nav,div,span,a,b,em,p){
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
  transform:none!important;
  max-width:100%;
  box-sizing:border-box;
}
html body.premium-v35 footer.site-footer-v35 .v35-footer-grid{
  width:min(var(--jh93-shell),calc(100% - 48px))!important;
  margin:0 auto!important;
  padding:32px 0 22px!important;
  display:grid!important;
  grid-template-columns:minmax(250px,1.45fr) repeat(3,minmax(130px,.72fr))!important;
  grid-auto-flow:row!important;
  align-items:start!important;
  gap:28px 34px!important;
  border-bottom:1px solid var(--jh93-line-strong)!important;
}
html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>section{display:block!important;min-width:0!important;padding:0!important;margin:0!important;border:0!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-name{display:inline-flex!important;align-items:baseline!important;gap:7px!important;width:auto!important;text-decoration:none!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-name span{display:inline!important;font-size:22px!important;line-height:1.2!important;font-weight:700!important;color:var(--jh93-ink)!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-name em{display:inline!important;font-size:15px!important;line-height:1.2!important;font-style:italic!important;color:var(--jh93-accent)!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-grid section p{display:block!important;max-width:360px!important;margin:10px 0 7px!important;font-size:13px!important;line-height:1.7!important;color:var(--jh93-copy)!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-grid section>a:not(.v35-footer-name){display:inline-flex!important;min-height:32px!important;align-items:center!important;font-size:13px!important;color:var(--jh93-accent)!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>nav{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  gap:2px!important;
  border:0!important;
}
html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>nav>b{display:block!important;width:100%!important;margin:0 0 7px!important;font-size:12px!important;line-height:1.35!important;letter-spacing:.05em!important;color:var(--jh93-ink)!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>nav>a{
  display:flex!important;
  width:auto!important;
  min-width:0!important;
  min-height:34px!important;
  align-items:center!important;
  margin:0!important;
  padding:4px 0!important;
  font-size:13px!important;
  line-height:1.35!important;
  color:#665b53!important;
  text-decoration:none!important;
}
html body.premium-v35 footer.site-footer-v35 .v35-footer-bottom{
  width:min(var(--jh93-shell),calc(100% - 48px))!important;
  margin:0 auto!important;
  padding:14px 0 calc(16px + env(safe-area-inset-bottom))!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px 18px!important;
  font-size:11px!important;
  line-height:1.5!important;
  color:var(--jh93-muted)!important;
}
html body.premium-v35 footer.site-footer-v35 .v35-footer-bottom>span{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:12px!important;min-width:0!important}
html body.premium-v35 footer.site-footer-v35 .v35-footer-bottom a{display:inline-flex!important;align-items:center!important;min-height:30px!important;margin:0!important;padding:0!important;color:var(--jh93-muted)!important;text-decoration:none!important}

@media(max-width:1100px){
  html body.page-home .ref-home-shell{width:calc(100% - 32px)!important}
  html body.page-home .ref-hero-main{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)!important;height:540px!important;max-height:540px!important}
  html body.page-home .ref-hero-copy{padding:36px!important}
  html body.page-home .ref-hero-copy h1{font-size:clamp(40px,4.6vw,52px)!important}
  html body.page-home .ref-latest-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid{width:calc(100% - 32px)!important;grid-template-columns:minmax(230px,1.2fr) repeat(3,minmax(110px,.7fr))!important;gap:22px!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-bottom{width:calc(100% - 32px)!important}
}

@media(max-width:900px){
  html body.page-home .ref-hero-main{
    grid-template-columns:1fr!important;
    grid-template-rows:clamp(300px,48vw,390px) auto!important;
    height:auto!important;
    max-height:none!important;
  }
  html body.page-home .ref-hero-main>img{grid-column:1!important;grid-row:1!important;height:100%!important;max-height:none!important;object-position:center 40%!important}
  html body.page-home .ref-hero-copy{grid-column:1!important;grid-row:2!important;padding:34px!important}
  html body.page-home .ref-hero-copy h1{max-width:11em!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px 22px!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>section{grid-column:1/-1!important;padding-bottom:4px!important}
}

@media(max-width:700px){
  html body.page-home .ref-home-shell{width:calc(100% - 20px)!important;margin-top:10px!important}
  html body.page-home .ref-hero-main{grid-template-rows:280px auto!important}
  html body.page-home .ref-hero-copy{padding:28px 20px 30px!important}
  html body.page-home .ref-hero-copy h1{max-width:none!important;font-size:clamp(34px,9.2vw,43px)!important;line-height:1.1!important}
  html body.page-home .ref-hero-copy>p:not(.ref-kicker){font-size:16px!important;line-height:1.72!important}
  html body.page-home .ref-latest{padding:21px 14px 23px!important}
  html body.page-home .ref-latest-list{grid-template-columns:1fr!important}
  html body.page-home .ref-latest-item{min-height:86px!important;grid-template-columns:60px minmax(0,1fr)!important}
  html body.page-home .ref-latest-item img{width:60px!important;height:60px!important;min-width:60px!important;max-width:60px!important;max-height:60px!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid{width:calc(100% - 36px)!important;padding:26px 0 18px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px 12px!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>section{grid-column:1/-1!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>nav>a{min-height:38px!important;font-size:13px!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-bottom{width:calc(100% - 36px)!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:4px!important}
}

@media(max-width:480px){
  html body.page-home .ref-hero-main{grid-template-rows:240px auto!important}
  html body.page-home .ref-hero-copy{padding:24px 18px 26px!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid{grid-template-columns:1fr!important;gap:4px!important}
  html body.premium-v35 footer.site-footer-v35 .v35-footer-grid>nav{padding:12px 0!important;border-top:1px solid var(--jh93-line-strong)!important}
}

@media(prefers-reduced-motion:reduce){html body.page-home *,html body.premium-v35 footer.site-footer-v35 *{animation:none!important;transition:none!important;transform:none!important}}
