/* ============================================================
   JOKLOVEN GOLF — i18n.css  (language switcher + CJK typography)
   ============================================================ */
.topbar__right{display:flex;align-items:center;gap:24px}
.lang{position:relative}
.lang__btn{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-display);font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.82);transition:color .3s var(--ease)}
.lang__btn:hover{color:#fff}
.lang__chev{opacity:.75;transition:transform .3s var(--ease)}
.lang.is-open .lang__chev{transform:rotate(180deg)}
.lang__panel{position:absolute;right:0;top:calc(100% + 14px);min-width:160px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 36px 72px -28px rgba(14,15,17,.6);padding:8px;display:none;z-index:300}
.lang.is-open .lang__panel{display:block}
.lang__panel::before{content:"";position:absolute;top:-6px;right:16px;width:10px;height:10px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg)}
.lang__panel button{display:block;width:100%;text-align:left;padding:9px 13px;border-radius:9px;font-size:13.5px;color:var(--ink);transition:background .25s var(--ease)}
.lang__panel button:hover{background:var(--bone)}
.lang__panel button.on{background:var(--ink);color:#fff}
.drawer__langs{display:flex;flex-wrap:wrap;gap:8px;padding:18px 0 2px;margin-top:8px;border-top:1px solid var(--line)}
.drawer__langs button{border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:12.5px;color:var(--gray);transition:.3s var(--ease)}
.drawer__langs button:hover{border-color:var(--ink);color:var(--ink)}
.drawer__langs button.on{background:var(--ink);border-color:var(--ink);color:#fff}
.footer__locale{gap:12px;flex-wrap:wrap}
.drawer__langs__label{width:100%;font-family:var(--font-display);font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gray-2);margin:0 0 2px}
.lang__panel button,.drawer__langs button,.footer__locale button{white-space:nowrap;flex:0 0 auto}
.footer__locale button{font-family:var(--font-display);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.62);transition:color .25s var(--ease);cursor:pointer}
.footer__locale button:hover{color:#fff}
.footer__locale button.on{color:#fff;border-bottom:2px solid var(--red);padding-bottom:3px}
/* CJK font priority per language */
html[data-lang="zh"]{--font-body:"Inter","Archivo","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;--font-display:"Archivo","Noto Sans SC","PingFang SC",sans-serif}
html[data-lang="ja"]{--font-body:"Inter","Archivo","Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;--font-display:"Archivo","Noto Sans JP","Hiragino Sans",sans-serif}
html[data-lang="ko"]{--font-body:"Inter","Archivo","Noto Sans KR","Malgun Gothic",sans-serif;--font-display:"Archivo","Noto Sans KR","Malgun Gothic",sans-serif}
/* CJK typography tweaks */
html[data-lang="zh"] body,html[data-lang="ja"] body,html[data-lang="ko"] body{line-height:1.8}
html[data-lang="zh"] .eyebrow,html[data-lang="ja"] .eyebrow,html[data-lang="ko"] .eyebrow{letter-spacing:.16em}
html[data-lang="zh"] .display-xl,html[data-lang="zh"] .display-l,html[data-lang="zh"] .display-m,html[data-lang="zh"] .display-s,
html[data-lang="ja"] .display-xl,html[data-lang="ja"] .display-l,html[data-lang="ja"] .display-m,html[data-lang="ja"] .display-s,
html[data-lang="ko"] .display-xl,html[data-lang="ko"] .display-l,html[data-lang="ko"] .display-m,html[data-lang="ko"] .display-s{letter-spacing:0;line-height:1.14}
html[data-lang="zh"] .btn,html[data-lang="ja"] .btn,html[data-lang="ko"] .btn{letter-spacing:.08em}
html[data-lang="zh"] .nav__link,html[data-lang="ja"] .nav__link,html[data-lang="ko"] .nav__link{letter-spacing:.06em}
html[data-lang="zh"] .link-arrow,html[data-lang="ja"] .link-arrow,html[data-lang="ko"] .link-arrow{letter-spacing:.1em}
html[data-lang="zh"] .jcard__txt .t,html[data-lang="ja"] .jcard__txt .t,html[data-lang="ko"] .jcard__txt .t{letter-spacing:0}
@media (max-width:900px){.topbar__right{gap:0}}

/* CJK line-break rules */
html[data-lang="ja"] body{line-break:strict;word-break:normal}
html[data-lang="zh"] body{line-break:strict}

/* Traditional Chinese (Hong Kong / Taiwan) */
html[data-lang="zh-Hant"]{--font-body:"Inter","Archivo","Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;--font-display:"Archivo","Noto Sans TC","PingFang TC",sans-serif}
html[data-lang="zh-Hant"] body{line-height:1.8;line-break:strict}
html[data-lang="zh-Hant"] .eyebrow{letter-spacing:.16em}
html[data-lang="zh-Hant"] .display-xl,html[data-lang="zh-Hant"] .display-l,html[data-lang="zh-Hant"] .display-m,html[data-lang="zh-Hant"] .display-s{letter-spacing:0;line-height:1.14}
html[data-lang="zh-Hant"] .btn{letter-spacing:.08em}
html[data-lang="zh-Hant"] .nav__link{letter-spacing:.06em}
html[data-lang="zh-Hant"] .link-arrow{letter-spacing:.1em}
html[data-lang="zh-Hant"] .jcard__txt .t{letter-spacing:0}


/* ============================================================
   2026-10-30 · CJK display 改宋体（品牌字，不是海报字）
   ============================================================ */
html[data-lang="zh"]{--font-display:"Archivo","Songti SC","Source Han Serif SC","Noto Serif SC",SimSun,serif}
html[data-lang="zh-Hant"]{--font-display:"Archivo","PingFang TC","Songti TC","Noto Serif TC",PMingLiU,serif}
html[data-lang="ja"]{--font-display:"Archivo","Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif}
html[data-lang="ko"]{--font-display:"Archivo","Nanum Myeongjo","Noto Serif KR","Malgun Gothic",serif}

html[data-lang="zh"] .hero__title,
html[data-lang="zh"] .display-xl,
html[data-lang="zh"] .display-l,
html[data-lang="zh"] .display-m,
html[data-lang="zh"] .display-s,
html[data-lang="zh-Hant"] .hero__title,
html[data-lang="zh-Hant"] .display-xl,
html[data-lang="zh-Hant"] .display-l,
html[data-lang="zh-Hant"] .display-m,
html[data-lang="zh-Hant"] .display-s,
html[data-lang="ja"] .hero__title,
html[data-lang="ja"] .display-xl,
html[data-lang="ja"] .display-l,
html[data-lang="ja"] .display-m,
html[data-lang="ja"] .display-s,
html[data-lang="ko"] .hero__title,
html[data-lang="ko"] .display-xl,
html[data-lang="ko"] .display-l,
html[data-lang="ko"] .display-m,
html[data-lang="ko"] .display-s{
  font-weight:600;
  letter-spacing:.02em;
  line-height:1.34;
  text-transform:none;
}

/* 卡片级标题：同族、更紧、不用 800 */
html[data-lang="zh"] .lcard__t,
html[data-lang="zh"] .jcard__txt .t,
html[data-lang="zh"] .product-card__txt .t,
html[data-lang="zh"] .pdp__info h1,
html[data-lang="zh-Hant"] .lcard__t,
html[data-lang="zh-Hant"] .jcard__txt .t,
html[data-lang="zh-Hant"] .product-card__txt .t,
html[data-lang="zh-Hant"] .pdp__info h1{
  font-weight:600;
  letter-spacing:.01em;
  line-height:1.45;
}
