/* ==========================================================================
   777老虎游 · 共享样式表 /assets/site.css
   赛博夜场 × 复古街机厅：老虎机红黑金 + 霓虹青 + 电光紫
   ========================================================================== */

/* ---------- 1. Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,figure,blockquote,dl,dd{margin:0;padding:0}
ul,ol{list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}
img,svg,video{display:block;max-width:100%;height:auto}
table{border-collapse:collapse;width:100%}
hr{border:0;border-top:1px solid #3A222C}

/* ---------- 2. 设计令牌 ---------- */
:root{
  --ink:#0B0709;
  --ink-2:#2A0A12;
  --ink-3:#150A10;
  --red:#E01F33;
  --red-deep:#8E0F1F;
  --gold:#FFC64B;
  --cyan:#2FF3E0;
  --violet:#A65BFF;
  --bone:#F7F2E9;
  --muted:#B9A9AE;
  --line:#3A222C;
  --cyan-soft:rgba(47,243,224,.14);
  --red-soft:rgba(224,31,51,.16);
  --gold-soft:rgba(255,198,75,.14);
  --violet-soft:rgba(166,91,255,.14);

  --font-sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono","Courier New",monospace;

  --fs-12:12px;--fs-14:14px;--fs-16:16px;--fs-18:18px;
  --fs-24:24px;--fs-32:32px;--fs-48:48px;--fs-72:72px;--fs-120:120px;
  --lh-body:1.75;

  --s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:48px;--s6:64px;--s7:96px;
  --w-page:1240px;
  --w-prose:68ch;
  --gutter:clamp(16px,4vw,40px);
  --header-h:76px;
  --radius:0;

  --ease:cubic-bezier(.22,.61,.36,1);
  --dur:240ms;
}

/* ---------- 3. 基础排版 ---------- */
html{scroll-behavior:smooth}
body{
  min-height:100%;
  background-color:var(--ink);
  background-image:
    radial-gradient(circle at 12% -10%, rgba(224,31,51,.22), transparent 60%),
    radial-gradient(circle at 92% 6%, rgba(166,91,255,.14), transparent 62%),
    linear-gradient(180deg,#140709 0%, var(--ink) 42%);
  background-attachment:fixed;
  color:var(--bone);
  font-family:var(--font-sans);
  font-size:var(--fs-16);
  line-height:var(--lh-body);
  letter-spacing:.01em;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:
    linear-gradient(to right, rgba(58,34,44,.45) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(58,34,44,.45) 1px, transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(120% 90% at 50% 0%, #000 18%, transparent 78%);
  mask-image:radial-gradient(120% 90% at 50% 0%, #000 18%, transparent 78%);
  opacity:.7;
}
::selection{background:var(--red);color:#fff}
:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

h1,h2,h3,h4,h5,h6{font-weight:800;line-height:1.14;letter-spacing:-.01em;color:var(--bone)}
h1{font-size:clamp(40px,7vw,88px)}
h2{font-size:clamp(28px,4vw,48px)}
h3{font-size:clamp(20px,2.4vw,28px)}
h4{font-size:var(--fs-18);line-height:1.4}
p{max-width:var(--w-prose)}
strong,b{font-weight:800}
code,kbd,samp{font-family:var(--font-mono);font-size:.94em;letter-spacing:.04em;color:var(--gold)}

/* ---------- 4. 跳转与进度 ---------- */
.tj-skip{
  position:absolute;
  left:12px;
  top:-72px;
  z-index:120;
  padding:10px 18px;
  background:var(--cyan);
  color:var(--ink);
  font-weight:800;
  font-size:var(--fs-14);
  border:1px solid var(--cyan);
  transition:top 140ms var(--ease);
}
.tj-skip:focus{top:12px}
.tj-progress{
  position:fixed;
  top:0;left:0;right:0;
  height:2px;
  z-index:90;
  pointer-events:none;
  background:transparent;
}
.tj-progress__bar{
  display:block;
  height:100%;
  width:0;
  background:linear-gradient(90deg,var(--red) 0%,var(--gold) 48%,var(--cyan) 100%);
  box-shadow:0 0 12px rgba(47,243,224,.55);
  transition:width 80ms linear;
}

/* ---------- 5. 头部 ---------- */
.tj-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:70;
  background:transparent;
  border-bottom:1px solid transparent;
  transition:background-color 200ms var(--ease),border-color 200ms var(--ease);
}
.tj-header[data-scrolled],
.tj-header[data-open]{
  background-color:rgba(11,7,9,.95);
  border-bottom-color:var(--line);
}
.tj-header__inner{
  width:100%;
  max-width:var(--w-page);
  margin-inline:auto;
  padding:12px var(--gutter);
  display:flex;
  align-items:center;
  gap:var(--s3);
  min-height:var(--header-h);
}

.tj-brand{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}
.tj-brand__mark{
  font-family:var(--font-mono);
  font-size:14px;
  font-weight:700;
  letter-spacing:.1em;
  line-height:1;
  color:var(--ink);
  padding:6px 8px;
  background:linear-gradient(160deg,#FFE08A 0%,var(--gold) 55%,#FF9E2E 100%);
  box-shadow:0 0 18px rgba(255,198,75,.35);
}
.tj-brand__text{display:block}
.tj-brand__name{
  display:block;
  font-size:20px;
  font-weight:800;
  letter-spacing:.02em;
  color:var(--bone);
  text-shadow:0 0 14px rgba(224,31,51,.6);
}
.tj-brand__tagline{
  display:block;
  margin-top:2px;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.06em;
  color:var(--muted);
  white-space:nowrap;
}

.tj-nav{margin-left:auto}
.tj-nav__list{display:flex;align-items:center;gap:2px}
.tj-nav__item{display:block}
.tj-nav__link{
  position:relative;
  display:block;
  padding:10px 12px;
  font-size:15px;
  font-weight:600;
  white-space:nowrap;
  color:var(--bone);
  border:1px solid transparent;
  transition:color 120ms var(--ease),border-color 120ms var(--ease),background-color 120ms var(--ease);
}
.tj-nav__link:hover{
  color:var(--cyan);
  border-color:rgba(47,243,224,.5);
  background-color:rgba(47,243,224,.07);
}
.tj-nav__link:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.tj-nav__link[aria-current="page"]{
  color:var(--gold);
  border-color:rgba(255,198,75,.55);
  background-color:rgba(255,198,75,.08);
}
.tj-nav__link[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:12px;right:12px;bottom:2px;
  height:2px;
  background:var(--red);
  box-shadow:0 0 10px rgba(224,31,51,.8);
}

.tj-header__aside{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
}
.tj-header__cta{flex:0 0 auto}
.tj-status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.05em;
  color:var(--muted);
  white-space:nowrap;
}
.tj-status__dot{
  width:8px;height:8px;
  background:var(--cyan);
  box-shadow:0 0 10px var(--cyan);
  animation:tj-pulse 1.8s ease-in-out infinite;
}
@keyframes tj-pulse{0%,100%{opacity:1}50%{opacity:.3}}

.tj-burger{
  display:none;
  align-items:center;
  gap:9px;
  padding:9px 12px;
  color:var(--bone);
  font-size:var(--fs-14);
  font-weight:800;
  border:1px solid rgba(224,31,51,.55);
  background:linear-gradient(180deg,rgba(224,31,51,.2),rgba(224,31,51,.05));
}
.tj-burger__bars{display:grid;gap:4px;width:18px}
.tj-burger__bars span{display:block;height:2px;background:var(--cyan);transition:transform 160ms var(--ease),opacity 160ms var(--ease)}
.tj-burger__label{line-height:1}
.tj-header[data-open] .tj-burger__bars span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.tj-header[data-open] .tj-burger__bars span:nth-child(2){opacity:0}
.tj-header[data-open] .tj-burger__bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* ---------- 6. 页脚 ---------- */
.tj-footer{
  position:relative;
  z-index:1;
  margin-top:var(--s7);
  background:linear-gradient(180deg,#150709 0%,var(--ink) 58%);
  border-top:1px solid var(--line);
  color:var(--bone);
}
.tj-footer::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:2px;
  background:linear-gradient(90deg,var(--red) 0%,var(--gold) 34%,var(--cyan) 66%,var(--violet) 100%);
  opacity:.85;
}
.tj-footer__inner{
  width:100%;
  max-width:var(--w-page);
  margin-inline:auto;
  padding:var(--s6) var(--gutter) var(--s4);
}
.tj-footer__top{
  display:grid;
  grid-template-columns:1.5fr repeat(3,minmax(0,1fr));
  gap:var(--s4) var(--s5);
}
.tj-footer__brand{display:grid;gap:var(--s2);align-content:start}
.tj-footer__brand-name{
  font-size:24px;
  font-weight:800;
  letter-spacing:.02em;
  color:var(--bone);
  text-shadow:0 0 14px rgba(224,31,51,.55);
}
.tj-footer__desc{
  font-size:var(--fs-14);
  line-height:1.8;
  color:var(--muted);
  max-width:36ch;
}
.tj-footer__glyph{
  font-family:var(--font-mono);
  font-weight:700;
  font-size:clamp(44px,7vw,84px);
  line-height:1;
  letter-spacing:.08em;
  color:transparent;
  -webkit-text-stroke:1px rgba(224,31,51,.65);
  text-shadow:0 0 24px rgba(224,31,51,.35);
}
.tj-footer__col{display:grid;gap:var(--s2);align-content:start}
.tj-footer__col-title{
  font-family:var(--font-mono);
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
  color:var(--gold);
}
.tj-footer__list{display:grid;gap:10px}
.tj-footer__item{display:block}
.tj-footer__link{
  display:inline-block;
  font-size:15px;
  color:var(--bone);
  opacity:.9;
  border-bottom:1px solid transparent;
  transition:color 120ms var(--ease),opacity 120ms var(--ease),border-color 120ms var(--ease);
}
.tj-footer__link:hover{color:var(--cyan);opacity:1;border-bottom-color:var(--cyan)}

.tj-footer__contact{
  margin-top:var(--s5);
  padding-block:var(--s3);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:var(--s2) var(--s4);
}
.tj-footer__contact-item{
  max-width:none;
  font-size:var(--fs-14);
  line-height:1.7;
  color:var(--muted);
  word-break:break-word;
}
.tj-footer__contact-item--wide{grid-column:1/-1}
.tj-footer__contact-key{
  display:block;
  margin-bottom:4px;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.14em;
  color:var(--gold);
}
.tj-footer__note{
  grid-column:1/-1;
  max-width:none;
  margin-top:var(--s1);
  font-size:13px;
  line-height:1.75;
  color:var(--muted);
}
.tj-footer__bottom{
  margin-top:var(--s3);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px var(--s3);
}
.tj-footer__legal{display:flex;flex-wrap:wrap;gap:8px var(--s3)}
.tj-footer__meta{
  max-width:none;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.04em;
  color:var(--muted);
}
.tj-footer__region{
  max-width:none;
  margin-top:var(--s2);
  font-size:12px;
  letter-spacing:.02em;
  color:var(--muted);
  opacity:.85;
}

/* ---------- 7. 页面骨架 ---------- */
.tj-main{
  position:relative;
  z-index:1;
  display:block;
  padding-top:var(--header-h);
  min-height:60vh;
}
#main-content{scroll-margin-top:calc(var(--header-h) + 16px)}
.tj-container{
  width:100%;
  max-width:var(--w-page);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.tj-page-head{padding-top:var(--s5);padding-bottom:var(--s3)}
.tj-section{position:relative;padding-block:var(--s6)}
.tj-section--tight{padding-block:var(--s4)}
.tj-section--darkred{
  background:linear-gradient(180deg,rgba(42,10,18,.92) 0%,rgba(42,10,18,.5) 100%);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.tj-section-head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  justify-content:space-between;
  gap:var(--s2) var(--s3);
  margin-bottom:var(--s4);
}

/* ---------- 8. 文字层级 ---------- */
.tj-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:var(--s1);
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.16em;
  color:var(--cyan);
}
.tj-eyebrow::before{
  content:"";
  width:24px;
  height:1px;
  background:var(--cyan);
}
.tj-title{
  font-size:clamp(28px,4vw,48px);
  font-weight:800;
  line-height:1.14;
  color:var(--bone);
}
.tj-title--xl{
  font-size:clamp(40px,7vw,88px);
  letter-spacing:-.02em;
}
.tj-lede{
  max-width:60ch;
  font-size:17px;
  line-height:1.75;
  color:var(--muted);
}
.tj-prose{max-width:var(--w-prose)}
.tj-prose > * + *{margin-top:1em}
.tj-prose p{font-size:17px;line-height:1.75;color:var(--bone)}
.tj-prose h2{margin-top:1.8em;font-size:clamp(24px,3vw,32px)}
.tj-prose h3{margin-top:1.5em;font-size:var(--fs-24)}
.tj-prose ul,.tj-prose ol{display:grid;gap:10px}
.tj-prose li{position:relative;padding-left:20px;font-size:17px;line-height:1.75}
.tj-prose li::before{
  content:"";
  position:absolute;
  left:0;top:.78em;
  width:10px;height:1px;
  background:var(--cyan);
}
.tj-prose a{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}
.tj-prose blockquote{
  padding-left:var(--s2);
  border-left:2px solid var(--red);
  color:var(--muted);
}

/* ---------- 9. 网格 ---------- */
.tj-grid{display:grid;gap:var(--s3)}
.tj-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tj-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tj-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tj-grid--split{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}

/* ---------- 10. 面板、卡片 ---------- */
.tj-panel{
  position:relative;
  padding:var(--s3);
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(42,10,18,.82) 0%,rgba(11,7,9,.92) 100%);
}
.tj-panel__title{
  font-family:var(--font-mono);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  color:var(--gold);
  margin-bottom:var(--s2);
}
.tj-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:var(--s3);
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(42,10,18,.72) 0%,rgba(11,7,9,.92) 100%);
  transition:border-color 140ms var(--ease),transform 140ms var(--ease);
}
.tj-card:hover{
  border-color:rgba(47,243,224,.55);
  transform:translateY(-2px);
}
.tj-card__kicker{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.1em;
  color:var(--gold);
}
.tj-card__title{font-size:20px;font-weight:800;line-height:1.35;color:var(--bone)}
.tj-card__meta{font-size:13px;color:var(--muted)}
.tj-card__body{font-size:15px;line-height:1.75;color:var(--muted);max-width:none}
.tj-tilt-l{transform:rotate(-.6deg)}
.tj-tilt-r{transform:rotate(.8deg)}

/* ---------- 11. 标签与数据 ---------- */
.tj-tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:3px 8px;
  border:1px solid var(--line);
  background:rgba(11,7,9,.6);
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--muted);
}
.tj-tag--red{border-color:rgba(224,31,51,.6);color:#FF7E8C;background:var(--red-soft)}
.tj-tag--gold{border-color:rgba(255,198,75,.55);color:var(--gold);background:var(--gold-soft)}
.tj-tag--cyan{border-color:rgba(47,243,224,.5);color:var(--cyan);background:var(--cyan-soft)}
.tj-tag--violet{border-color:rgba(166,91,255,.55);color:#C9A2FF;background:var(--violet-soft)}
.tj-stat{
  display:grid;
  gap:6px;
  padding:var(--s3) 0;
  border-top:1px solid var(--line);
}
.tj-stat__value{
  font-family:var(--font-mono);
  font-size:clamp(24px,3vw,32px);
  font-weight:700;
  letter-spacing:.02em;
  color:var(--gold);
}
.tj-stat__label{font-size:13px;line-height:1.6;color:var(--muted)}

/* ---------- 12. 图片容器 ---------- */
.tj-media{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  background:linear-gradient(135deg,rgba(42,10,18,.92) 0%,rgba(11,7,9,.96) 100%);
}
.tj-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:repeating-linear-gradient(0deg, rgba(47,243,224,.06) 0 1px, transparent 1px 3px);
  mix-blend-mode:screen;
}
.tj-media__img{width:100%;height:100%;object-fit:cover}
.tj-media--wide{aspect-ratio:16/9}
.tj-media--square{aspect-ratio:1/1}
.tj-media--portrait{aspect-ratio:3/4}
.tj-media__caption{
  margin-top:10px;
  font-size:13px;
  line-height:1.7;
  color:var(--muted);
  max-width:none;
}

/* ---------- 13. 灯带 ---------- */
.tj-marquee{
  position:relative;
  overflow:hidden;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:linear-gradient(90deg,var(--red-soft) 0%,var(--violet-soft) 50%,var(--cyan-soft) 100%);
}
.tj-marquee__track{
  display:flex;
  align-items:center;
  gap:var(--s4);
  width:max-content;
  padding:12px 0;
  animation:tj-scroll 24s linear infinite;
}
.tj-marquee:hover .tj-marquee__track{animation-play-state:paused}
.tj-marquee__item{
  display:inline-flex;
  align-items:center;
  gap:var(--s3);
  white-space:nowrap;
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.14em;
  color:var(--bone);
}
@keyframes tj-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- 14. 显现 ---------- */
.tj-reveal{
  transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);
  transition-delay:var(--tj-delay,0ms);
}
.js-ready .tj-reveal{opacity:0;transform:translateY(16px)}
.js-ready .tj-reveal.is-visible{opacity:1;transform:none}

/* ---------- 15. 按钮 ---------- */
.tj-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 18px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--bone);
  font-size:var(--fs-14);
  font-weight:800;
  line-height:1;
  letter-spacing:.02em;
  text-align:center;
  transition:background-color 120ms var(--ease),border-color 120ms var(--ease),color 120ms var(--ease),transform 120ms var(--ease);
}
.tj-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.tj-btn--primary{
  background:var(--red);
  border-color:var(--red);
  color:#fff;
  box-shadow:0 0 18px rgba(224,31,51,.4);
}
.tj-btn--primary:hover{background:#F5273C;border-color:#F5273C;transform:translateY(-1px)}
.tj-btn--ghost{border-color:rgba(47,243,224,.55);color:var(--cyan)}
.tj-btn--ghost:hover{background:rgba(47,243,224,.12);border-color:var(--cyan)}
.tj-btn--gold{border-color:rgba(255,198,75,.6);color:var(--gold)}
.tj-btn--gold:hover{background:rgba(255,198,75,.14);border-color:var(--gold)}
.tj-btn--sm{padding:9px 14px;font-size:13px}
.tj-btn--block{width:100%}

/* ---------- 16. 面包屑 ---------- */
.tj-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding-block:var(--s2);
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.04em;
  color:var(--muted);
}
.tj-breadcrumb__link{color:var(--muted);border-bottom:1px solid transparent;transition:color 120ms var(--ease),border-color 120ms var(--ease)}
.tj-breadcrumb__link:hover{color:var(--cyan);border-bottom-color:var(--cyan)}
.tj-breadcrumb__sep{color:var(--line)}
.tj-breadcrumb__current{color:var(--bone)}

/* ---------- 17. 响应式 ---------- */
@media (max-width:1180px){
  .tj-brand__tagline{display:none}
}
@media (max-width:1080px){
  .tj-status{display:none}
}
@media (max-width:1000px){
  .tj-header__inner{flex-wrap:wrap;align-items:center}
  .tj-header__aside{margin-left:auto}
  .tj-burger{display:inline-flex}
  .tj-nav{
    order:3;
    width:100%;
    margin-left:0;
    max-height:0;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    transition:max-height 280ms var(--ease),opacity 200ms var(--ease),visibility 200ms var(--ease);
  }
  .tj-header[data-open] .tj-nav{
    max-height:60vh;
    overflow-y:auto;
    opacity:1;
    visibility:visible;
  }
  .tj-nav__list{
    flex-direction:column;
    align-items:stretch;
    gap:0;
    margin-top:var(--s2);
    padding-bottom:var(--s2);
    border-top:1px solid var(--line);
  }
  .tj-nav__link{
    padding:14px 4px;
    font-size:17px;
    border:0;
    border-bottom:1px solid rgba(58,34,44,.7);
  }
  .tj-nav__link[aria-current="page"]::after{left:4px;right:auto;width:28px;bottom:8px}
}
@media (max-width:960px){
  .tj-footer__top{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}
  .tj-grid--3,.tj-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tj-grid--split{grid-template-columns:minmax(0,1fr)}
  .tj-section{padding-block:var(--s5)}
}
@media (max-width:680px){
  :root{--header-h:68px}
  .tj-header__cta{display:none}
  .tj-brand__name{font-size:18px}
  .tj-grid--2,.tj-grid--3,.tj-grid--4{grid-template-columns:minmax(0,1fr)}
  .tj-footer__top{grid-template-columns:minmax(0,1fr)}
  .tj-footer__inner{padding-top:var(--s5)}
  .tj-footer__bottom{flex-direction:column;align-items:flex-start}
  .tj-page-head{padding-top:var(--s4)}
  .tj-prose p,.tj-prose li{font-size:16px}
}

/* ---------- 18. 动效降级 ---------- */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    transition-delay:0ms !important;
  }
  .tj-marquee__track{animation:none !important;transform:none !important}
  .tj-status__dot{animation:none !important;opacity:1}
  .js-ready .tj-reveal{opacity:1;transform:none}
  .tj-card:hover{transform:none}
  .tj-btn:hover{transform:none}
}
