/* 台指期 page. Uses the site's colour variables from /style.css; layout follows the partner page. */
.txHero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:56px;align-items:center;padding-top:64px;padding-bottom:30px}
.txHero h1{font-size:clamp(34px,4.4vw,54px);line-height:1.18;margin:0 0 20px}
.txLead{max-width:560px}
.txActions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:28px 0 0}
.txActions .textlink{margin-top:0;font-size:15px}
.txHeroArt picture{display:block}
.txHeroArt img{display:block;width:100%;height:auto;border-radius:16px;border:1px solid #2f5566;box-shadow:0 30px 80px #000a}
.tx{padding-top:36px}
.txWrap{display:grid;grid-template-columns:minmax(0,1fr);gap:64px}
.txBlock h2,.txEnd h2{font-size:clamp(24px,2.6vw,32px);line-height:1.3;letter-spacing:0;margin:0 0 12px}
.txIcon{width:44px;height:44px;color:var(--gold,#efd49f);flex:none}
.txStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #efd49f40;border-bottom:1px solid #efd49f40}
.txStats>div{padding:28px 30px;border-inline-start:1px solid #efd49f26;min-width:0}
.txStats>div:first-child{border-inline-start:0;padding-inline-start:0}
.txStats b{display:block;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(30px,4.2vw,50px);line-height:1.15;color:#fff;white-space:nowrap}
.txStats span{display:block;margin-top:10px;font-size:15px;line-height:1.6;color:#9fb6c3}
.txCards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0 0}
.txCards article{min-width:0;border:1px solid var(--line,#3a5a6b);background:var(--panel,#0e354a);border-radius:10px;padding:28px 26px}
.txCards h3{font-size:19px;line-height:1.4;margin:18px 0 8px;color:var(--text,#f7fafb)}
.txCards p{font-size:16px;line-height:1.75;color:var(--muted,#c2d3dd);margin:0}
.txHow{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.txHow li{position:relative;min-width:0;text-align:start}
.txHowIcon{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;border:1px solid #efd49f66;background:#efd49f12}
.txHowIcon .txIcon{width:34px;height:34px}
.txHow li:not(:last-child)::after{content:"";position:absolute;top:36px;inset-inline-start:86px;inset-inline-end:-6px;border-top:1px dashed #efd49f66}
.txHow b{display:block;margin-top:16px;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:20px;color:var(--gold,#efd49f)}
.txHow p{font-size:16px;line-height:1.7;color:var(--text,#f7fafb);margin:6px 0 0;padding-inline-end:10px}
.txQa{max-width:860px;margin-top:20px}
.txQa details{border:1px solid var(--line,#3a5a6b);background:var(--panel,#0e354a);border-radius:10px;padding:18px 22px;margin-bottom:12px}
.txQa summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:20px}
.txQa summary::-webkit-details-marker{display:none}
.txQa summary::after{content:"+";color:var(--gold,#efd49f);font-size:22px;line-height:1}
.txQa details[open] summary::after{content:"−"}
.txQa p{font-size:16px;line-height:1.8;color:var(--muted,#c2d3dd);margin:12px 0 0}
.txEnd{display:flex;align-items:center;justify-content:space-between;gap:24px 44px;flex-wrap:wrap;border:1px solid #efd49f66;border-radius:14px;padding:40px 44px;background:linear-gradient(120deg,#efd49f1f,#efd49f08 60%,transparent)}
.txEnd p{font-size:16.5px;line-height:1.8;color:var(--muted,#c2d3dd);margin:0}
.txEnd .txActions{margin:0}
@media(max-width:960px){
  .txHero{grid-template-columns:minmax(0,1fr);gap:34px;padding-top:44px}
  .txHow{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}
  .txHow li::after{display:none}
  .txStats>div{padding:24px 18px}
  .txCards{grid-template-columns:minmax(0,1fr);gap:14px}
  .txCards article{display:flex;gap:18px;align-items:flex-start;padding:22px 20px}
  .txCards h3{margin-top:0}
}
@media(max-width:760px){
  .txWrap{gap:48px}
  .txStats{grid-template-columns:minmax(0,1fr)}
  .txStats>div{padding:20px 0;border-inline-start:0;border-top:1px solid #efd49f26}
  .txStats>div:first-child{border-top:0}
  .txEnd{padding:28px 24px}
}
@media(max-width:480px){
  .txHow{grid-template-columns:minmax(0,1fr);gap:20px}
  .txHow li{display:grid;grid-template-columns:72px minmax(0,1fr);column-gap:16px;align-items:center}
  .txHowIcon{grid-row:span 2}
  .txHow b{margin-top:0}
  .txHow p{padding:0}
}
