/* 大象传媒 原创主题样式表 */
:root{
  --tx-pink:#FF4F8A;
  --tx-purple:#3B1F5C;
  --tx-gold:#F2B441;
  --tx-dark:#0F0A1F;
  --tx-mist:#FFE9F2;
  --tx-text:#2A1B3D;
  --tx-muted:#7A6B8A;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"PingFang SC","Microsoft YaHei","Hiragino Sans GB",sans-serif;
  color:var(--tx-text);
  background:linear-gradient(180deg,#fff 0%,#fff5fa 100%);
  line-height:1.7;font-size:15px;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--tx-pink);text-decoration:none;transition:.25s}
a:hover{color:var(--tx-gold)}
.container{max-width:1200px;margin:0 auto;padding:0 20px}

/* Header */
.tx-header{
  position:sticky;top:0;z-index:99;
  background:rgba(15,10,31,.92);
  backdrop-filter:blur(8px);
  border-bottom:2px solid var(--tx-pink);
}
.tx-topbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 0;gap:18px;flex-wrap:wrap;
}
.tx-brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:20px}
.tx-brand img{width:40px;height:40px;border-radius:8px;background:#fff;padding:3px}
.tx-brand .tx-name{background:linear-gradient(90deg,var(--tx-pink),var(--tx-gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.tx-search{flex:1;max-width:380px;position:relative}
.tx-search input{
  width:100%;padding:9px 40px 9px 16px;border-radius:24px;border:0;
  background:rgba(255,255,255,.13);color:#fff;font-size:14px;outline:none;
}
.tx-search input::placeholder{color:#ffd3e3}
.tx-search button{
  position:absolute;right:6px;top:50%;transform:translateY(-50%);
  background:linear-gradient(135deg,var(--tx-pink),var(--tx-gold));
  border:0;color:#fff;border-radius:50%;width:30px;height:30px;cursor:pointer;
}
.tx-nav{background:linear-gradient(90deg,var(--tx-purple),var(--tx-dark))}
.tx-nav-list{display:flex;gap:6px;list-style:none;flex-wrap:wrap;justify-content:center}
.tx-nav-list a{
  display:block;padding:14px 18px;color:#ffe9f2;font-weight:600;font-size:15px;
  position:relative;
}
.tx-nav-list a.active,.tx-nav-list a:hover{
  color:var(--tx-gold);
}
.tx-nav-list a.active::after,.tx-nav-list a:hover::after{
  content:"";position:absolute;left:18px;right:18px;bottom:6px;height:3px;
  background:linear-gradient(90deg,var(--tx-pink),var(--tx-gold));border-radius:2px;
}

/* Hero Banner */
.tx-hero{
  position:relative;height:540px;overflow:hidden;
  background:#0F0A1F url(../images/banner-home.jpg) center/cover no-repeat;
}
.tx-hero::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(15,10,31,.85) 0%,rgba(59,31,92,.5) 50%,rgba(255,79,138,.25) 100%);
}
.tx-hero-inner{
  position:relative;z-index:2;height:100%;display:flex;align-items:center;
}
.tx-hero-text{max-width:680px;color:#fff}
.tx-hero-text h1{
  font-size:46px;line-height:1.25;margin-bottom:18px;
  background:linear-gradient(90deg,#fff,var(--tx-gold) 60%,var(--tx-pink));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.tx-hero-text .lead{font-size:18px;color:#ffd9e8;margin-bottom:26px;line-height:1.8}
.tx-hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.tx-btn{
  display:inline-block;padding:12px 28px;border-radius:30px;font-weight:700;
  background:linear-gradient(135deg,var(--tx-pink),var(--tx-gold));
  color:#fff;border:0;cursor:pointer;
}
.tx-btn.outline{background:transparent;border:2px solid #fff;color:#fff}
.tx-btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(255,79,138,.45)}

/* breadcrumbs */
.tx-crumbs{
  background:#fff5fa;padding:12px 0;font-size:13px;color:var(--tx-muted);
  border-bottom:1px solid #ffd9e8;
}
.tx-crumbs a{color:var(--tx-purple)}
.tx-crumbs span{color:var(--tx-pink);font-weight:600}

/* Section common */
.tx-sec{padding:64px 0}
.tx-sec.alt{background:linear-gradient(180deg,#fff5fa 0%,#fff 100%)}
.tx-sec-head{text-align:center;margin-bottom:40px}
.tx-sec-head h2{
  font-size:32px;color:var(--tx-purple);margin-bottom:8px;position:relative;display:inline-block;padding:0 24px;
}
.tx-sec-head h2::before,.tx-sec-head h2::after{
  content:"♥";color:var(--tx-pink);font-size:20px;
}
.tx-sec-head p{color:var(--tx-muted);font-size:15px}

/* Video card grid */
.tx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:22px}
.tx-card{
  background:#fff;border-radius:14px;overflow:hidden;
  box-shadow:0 4px 18px rgba(59,31,92,.08);
  transition:.3s;border:1px solid #ffe0ec;
}
.tx-card:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(255,79,138,.22);border-color:var(--tx-pink)}
.tx-vthumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}
.tx-vthumb img{width:100%;height:100%;object-fit:cover;transition:.4s}
.tx-card:hover .tx-vthumb img{transform:scale(1.06)}
.tx-play{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:0;transition:.3s;background:rgba(15,10,31,.4);
}
.tx-card:hover .tx-play{opacity:1}
.tx-play .btn{
  width:64px;height:64px;border-radius:50%;
  background:linear-gradient(135deg,var(--tx-pink),var(--tx-gold));
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;
  box-shadow:0 0 0 8px rgba(255,255,255,.25);
}
.tx-vmeta{
  position:absolute;left:0;right:0;bottom:0;padding:8px 12px;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.7));
  color:#fff;font-size:12px;display:flex;justify-content:space-between;
}
.tx-tag{
  position:absolute;top:10px;left:10px;background:var(--tx-pink);color:#fff;
  padding:3px 10px;border-radius:20px;font-size:12px;
}
.tx-cinfo{padding:14px 16px}
.tx-cinfo h3{font-size:16px;color:var(--tx-purple);margin-bottom:6px;line-height:1.5;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.tx-cinfo .desc{font-size:13px;color:var(--tx-muted);line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.tx-cstats{display:flex;gap:14px;margin-top:10px;font-size:12px;color:var(--tx-muted)}
.tx-cstats span b{color:var(--tx-pink)}

/* feature row */
.tx-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.tx-feat{
  background:#fff;border-radius:16px;padding:26px;border:1px solid #ffe0ec;
  border-top:4px solid var(--tx-pink);
}
.tx-feat:nth-child(2){border-top-color:var(--tx-purple)}
.tx-feat:nth-child(3){border-top-color:var(--tx-gold)}
.tx-feat h3{color:var(--tx-purple);font-size:20px;margin-bottom:12px}
.tx-feat ul{list-style:none}
.tx-feat li{padding:6px 0 6px 24px;position:relative;font-size:14px;color:#444}
.tx-feat li::before{content:"▸";position:absolute;left:6px;color:var(--tx-pink)}

/* expert grid */
.tx-experts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.tx-expert{
  background:#fff;border-radius:18px;overflow:hidden;text-align:center;
  box-shadow:0 6px 20px rgba(59,31,92,.08);
}
.tx-expert .ph{aspect-ratio:1/1;overflow:hidden}
.tx-expert .ph img{width:100%;height:100%;object-fit:cover}
.tx-expert-body{padding:18px}
.tx-expert h4{color:var(--tx-purple);font-size:18px;margin-bottom:4px}
.tx-expert .role{color:var(--tx-pink);font-size:13px;margin-bottom:10px}
.tx-expert .bio{font-size:13px;color:#666;line-height:1.6;min-height:60px}
.tx-expert-actions{display:flex;gap:8px;justify-content:center;margin-top:12px}
.tx-expert-actions a{
  font-size:12px;padding:6px 14px;border-radius:20px;
  background:#fff5fa;color:var(--tx-purple);border:1px solid #ffd9e8;
}

/* faq */
.tx-faq details{
  background:#fff;border-radius:12px;margin-bottom:12px;
  border:1px solid #ffe0ec;padding:0 22px;overflow:hidden;
}
.tx-faq summary{
  list-style:none;cursor:pointer;font-weight:600;color:var(--tx-purple);
  padding:18px 0;font-size:16px;display:flex;justify-content:space-between;align-items:center;
}
.tx-faq summary::-webkit-details-marker{display:none}
.tx-faq summary::after{content:"+";color:var(--tx-pink);font-size:24px;transition:.3s}
.tx-faq details[open] summary::after{transform:rotate(45deg)}
.tx-faq .ans{padding:0 0 18px;color:#555;font-size:14px;line-height:1.8;border-top:1px dashed #ffd9e8;padding-top:14px}

/* reviews */
.tx-reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.tx-review{
  background:linear-gradient(135deg,#fff,#fff5fa);
  border-radius:14px;padding:22px;position:relative;
  border:1px solid #ffe0ec;
}
.tx-review::before{content:"”";position:absolute;left:14px;top:0;font-size:54px;color:var(--tx-pink);opacity:.3;font-family:Georgia}
.tx-review .who{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.tx-review .av{
  width:44px;height:44px;border-radius:50%;
  background:linear-gradient(135deg,var(--tx-pink),var(--tx-gold));
  color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;
}
.tx-review h5{color:var(--tx-purple);font-size:15px}
.tx-review .stars{color:var(--tx-gold);font-size:13px}
.tx-review p{font-size:14px;color:#444;line-height:1.8}

/* logos wall */
.tx-logos{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;align-items:center}
.tx-logos .logo-pill{
  padding:14px 26px;border-radius:14px;
  background:#fff;border:1px solid #ffe0ec;color:var(--tx-purple);font-weight:700;
  box-shadow:0 4px 12px rgba(59,31,92,.06);
}

/* contact */
.tx-contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:30px}
.tx-contact-card{
  background:#fff;border-radius:16px;padding:26px;border:1px solid #ffe0ec;
}
.tx-contact-card h3{color:var(--tx-purple);font-size:20px;margin-bottom:14px}
.tx-contact-card .row{display:flex;gap:10px;padding:10px 0;border-bottom:1px dashed #ffd9e8;font-size:14px}
.tx-contact-card .row:last-child{border:0}
.tx-contact-card .row b{color:var(--tx-pink);min-width:90px}
.tx-qr-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.tx-qr-row .qr{text-align:center;background:#fff5fa;padding:14px;border-radius:12px}
.tx-qr-row .qr img{width:100%;max-width:140px;margin:0 auto 8px;background:#fff;padding:6px;border-radius:8px}
.tx-qr-row .qr p{font-size:12px;color:var(--tx-muted)}

/* social share */
.tx-share{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:14px}
.tx-share a{
  padding:8px 18px;border-radius:20px;background:#fff;
  border:1px solid #ffd9e8;color:var(--tx-purple);font-size:13px;
}

/* footer */
.tx-foot{
  background:linear-gradient(180deg,var(--tx-purple),var(--tx-dark));
  color:#ffd9e8;padding:50px 0 20px;margin-top:30px;
}
.tx-foot a{color:#ffd9e8}
.tx-foot a:hover{color:var(--tx-gold)}
.tx-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;margin-bottom:30px}
.tx-foot h4{color:#fff;font-size:16px;margin-bottom:14px;border-left:3px solid var(--tx-pink);padding-left:10px}
.tx-foot ul{list-style:none}
.tx-foot li{padding:4px 0;font-size:13px}
.tx-foot .brand-line{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.tx-foot .brand-line img{width:46px;height:46px;background:#fff;padding:4px;border-radius:10px}
.tx-foot .brand-line span{font-size:18px;font-weight:700;color:#fff}
.tx-foot .desc{font-size:13px;color:#d6c1e8;line-height:1.8}
.tx-foot-bot{
  border-top:1px solid rgba(255,255,255,.12);padding-top:18px;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
  font-size:12px;color:#bca8d3;
}

/* responsive */
@media(max-width:900px){
  .tx-foot-grid{grid-template-columns:1fr 1fr}
  .tx-contact-grid{grid-template-columns:1fr}
  .tx-hero{height:auto;padding:60px 0}
  .tx-hero-text h1{font-size:32px}
  .tx-search{order:3;flex-basis:100%;max-width:none}
}
@media(max-width:520px){
  .tx-foot-grid{grid-template-columns:1fr}
  .tx-nav-list a{padding:12px 10px;font-size:14px}
  .tx-sec{padding:46px 0}
  .tx-sec-head h2{font-size:24px}
}
