/* Jackhao.tv V66 — responsive convergence for mobile navigation, platforms and warm footer */
:root{--jh-page-gutter-mobile:20px}

/* Shared footer: warm editorial surface, readable contrast and real touch targets. */
.site-footer-v35{padding:0!important;background:#EEE5DB!important;color:#51463F!important;border-top:1px solid #DCCFC3!important}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main){width:min(1240px,calc(100% - 48px));margin-inline:auto;padding:54px 0 40px;display:grid;grid-template-columns:minmax(260px,1.55fr) repeat(auto-fit,minmax(128px,1fr));gap:40px;border-bottom:1px solid #D8CBC0!important}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main)>section{min-width:0}
.site-footer-v35 :where(.v35-footer-name,.jh-footer-name){display:flex;align-items:baseline;gap:9px;color:#2B211C!important;text-decoration:none}
.site-footer-v35 :where(.v35-footer-name,.jh-footer-name) span{font-family:var(--v35-serif,"Noto Serif SC","Songti SC",serif);font-size:29px;line-height:1.2;color:#2B211C!important}
.site-footer-v35 :where(.v35-footer-name,.jh-footer-name) em{font-family:Georgia,serif;font-size:20px;font-weight:400;font-style:normal;color:#915033!important}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) section p{max-width:320px;margin:18px 0 12px!important;color:#675A52!important;font-size:14px!important;line-height:1.8!important}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) section>a:not(.v35-footer-name):not(.jh-footer-name){display:inline-flex;align-items:center;min-height:40px;color:#6A574B!important;font-size:14px!important}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav{min-width:0;display:flex!important;flex-direction:column!important;align-items:stretch;gap:2px!important}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav>b{display:block;margin:0 0 9px;color:#2B211C!important;font-size:13px!important;line-height:1.35!important;letter-spacing:.08em!important}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav>a{display:flex!important;align-items:center;min-height:40px;padding:4px 0;color:#695B53!important;font-size:14px!important;line-height:1.45!important;white-space:normal;text-decoration:none}
.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav>a:hover,.site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav>a:focus-visible{color:#915033!important}
.site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom){width:min(1240px,calc(100% - 48px));margin-inline:auto;padding:20px 0 calc(22px + env(safe-area-inset-bottom));display:flex!important;align-items:center;justify-content:space-between;gap:18px;color:#81736A!important;font-size:12px!important;line-height:1.55!important;letter-spacing:0!important}
.site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom)>span:last-child{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom) a{display:inline-flex;align-items:center;min-height:36px;color:#74655C!important;text-decoration:none}
.site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom) a:hover,.site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom) a:focus-visible{color:#915033!important}

/* Platforms page: keep the editorial look, but make mobile genuinely mobile. */
.page-platforms .jh-platform-card{touch-action:manipulation}
.page-platforms .jh-platform-card:focus-visible{outline:3px solid rgba(182,111,74,.35);outline-offset:3px}
.page-platforms .jh-platform-card .jh-platform-icon{justify-self:center}
.page-platforms .jh-platform-card i{justify-self:end}

@media(max-width:700px){
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main){width:calc(100% - 40px)!important;padding:40px 0 30px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 18px!important}
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main)>section{grid-column:1/-1!important;padding-bottom:2px}
  .site-footer-v35 :where(.v35-footer-name,.jh-footer-name) span{font-size:26px}
  .site-footer-v35 :where(.v35-footer-name,.jh-footer-name) em{font-size:19px}
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) section p{margin:14px 0 10px!important;font-size:14px!important;line-height:1.78!important;color:#675A52!important}
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav{padding-top:16px!important;border-top:1px solid #D8CBC0!important}
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav>b{font-size:13px!important;margin-bottom:7px!important}
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main) nav>a{min-height:44px!important;padding:6px 0!important;font-size:15px!important;line-height:1.45!important}
  .site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom){width:calc(100% - 40px)!important;padding:18px 0 calc(24px + env(safe-area-inset-bottom))!important;align-items:flex-start!important;flex-direction:column!important;gap:8px!important;font-size:12px!important}
  .site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom)>span:last-child{gap:16px!important}
  .site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom) a{min-height:40px!important}

  .page-platforms .jh-platform-shell{width:calc(100% - 40px)!important}
  .page-platforms .jh-platforms-hero{padding:48px 0 40px!important}
  .page-platforms .jh-platforms-hero h1{max-width:10.5em!important;margin-bottom:16px!important;font-size:clamp(34px,9.4vw,42px)!important;line-height:1.13!important;letter-spacing:-.025em!important}
  .page-platforms .jh-platforms-hero>div>p:not(.jh-platform-kicker){margin-bottom:26px!important;font-size:17px!important;line-height:1.72!important;color:#51463F!important}
  .page-platforms .jh-platform-kicker{font-size:11px!important;letter-spacing:.055em!important}
  .page-platforms .jh-platform-grid{grid-template-columns:1fr!important;gap:12px!important}
  .page-platforms .jh-platform-card{width:100%;min-height:76px!important;padding:14px 16px!important;grid-template-columns:36px minmax(0,1fr) 24px!important;gap:14px!important;border-radius:16px!important}
  .page-platforms .jh-platform-card .jh-platform-icon{display:block!important;width:30px!important;height:30px!important;object-fit:contain!important}
  .page-platforms .jh-platform-card b{font-size:16px!important;line-height:1.3!important;white-space:nowrap}
  .page-platforms .jh-platform-card small{display:block!important;font-size:13px!important;line-height:1.45!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
  .page-platforms .jh-platform-card i{display:block!important;font-size:18px!important;line-height:1!important}
  .page-platforms .jh-platforms-section{padding:58px 0!important}
  .page-platforms .jh-platform-heading{grid-template-columns:1fr!important;gap:14px!important;margin:0!important}
  .page-platforms .jh-platform-heading h2{font-size:clamp(30px,8vw,34px)!important;line-height:1.28!important;letter-spacing:-.025em!important}
  .page-platforms .jh-platform-heading>p:last-child{font-size:16px!important;line-height:1.8!important}
}

@media(max-width:390px){
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main),.site-footer-v35 :where(.v35-footer-bottom,.jh-footer-bottom){width:calc(100% - 36px)!important}
  .page-platforms .jh-platform-shell{width:calc(100% - 36px)!important}
  .page-platforms .jh-platforms-hero h1{font-size:clamp(32px,9vw,36px)!important}
  .page-platforms .jh-platform-card{min-height:74px!important;padding:13px 14px!important;grid-template-columns:34px minmax(0,1fr) 22px!important;gap:12px!important}
}

@media(max-width:360px){
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main){grid-template-columns:1fr!important}
  .site-footer-v35 :where(.v35-footer-grid,.jh-footer-main)>section{grid-column:auto!important}
}
