:root{
  --primary:#E8455A;
  --p1:#7c3aed;
  --p2:#ec4899;
  --p3:#f97316;
  --p4:#3b82f6;
}
/* video49 — Vibrant Gradient Mesh 渐变网格 / 流动彩色渐变 + 大圆角白卡 */
*{box-sizing:border-box;}
body{background:#fbfaff;color:#4b4b63;font-family:"Poppins","Segoe UI",-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;}
::selection{background:#ec4899;color:#fff;}
::-webkit-scrollbar{width:11px;}
::-webkit-scrollbar-track{background:#f0eefb;}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#7c3aed,#ec4899);border-radius:9999px;}

@keyframes meshmove{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}
.mesh{
  background:linear-gradient(120deg,#7c3aed,#ec4899,#f97316,#3b82f6,#7c3aed);
  background-size:300% 300%;
  animation:meshmove 14s ease infinite;
}
.mesh-soft{
  background:
    radial-gradient(38rem 26rem at 8% 0%,rgba(124,58,237,.16),transparent 60%),
    radial-gradient(34rem 24rem at 100% 12%,rgba(236,72,153,.16),transparent 62%),
    radial-gradient(30rem 22rem at 50% 100%,rgba(249,115,22,.14),transparent 60%);
}
.t-mesh{background:linear-gradient(120deg,#7c3aed,#ec4899 55%,#f97316);-webkit-background-clip:text;background-clip:text;color:transparent;}

.gm-card{background:#fff;border-radius:1.75rem;box-shadow:0 14px 40px -18px rgba(80,40,140,.3);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s;}
.gm-card:hover,.gm-card.video-card:hover{transform:translateY(-7px);box-shadow:0 28px 56px -18px rgba(124,58,237,.4);}
.gm-soft{background:#fff;border-radius:1.5rem;box-shadow:0 10px 30px -16px rgba(80,40,140,.25);}

.gm-btn{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;border-radius:9999px;padding:.9rem 2rem;background:linear-gradient(120deg,#7c3aed,#ec4899);color:#fff;box-shadow:0 12px 28px -10px rgba(124,58,237,.7);transition:transform .25s,box-shadow .25s;}
.gm-btn:hover{transform:translateY(-3px);box-shadow:0 18px 38px -10px rgba(236,72,153,.75);}
.gm-btn-2{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;border-radius:9999px;padding:.9rem 2rem;background:#fff;color:#7c3aed;border:2px solid #ece7fb;transition:.25s;}
.gm-btn-2:hover{border-color:#7c3aed;}

.chip{border-radius:9999px;background:#f3effd;color:#7c3aed;}

.cat-tab{border-radius:9999px;background:#fff;border:2px solid #ece7fb;color:#8a86a6;font-weight:600;transition:.25s;}
.cat-tab:hover{color:#7c3aed;}
.cat-tab.active{background:linear-gradient(120deg,#7c3aed,#ec4899);color:#fff;border-color:transparent;}

.nav-link{border-radius:9999px;color:#6b6885;font-weight:600;transition:.2s;}
.nav-link:hover{color:#7c3aed;background:#f3effd;}
.nav-link.active{background:linear-gradient(120deg,#7c3aed,#ec4899);color:#fff;}

.nav{display:flex;}
@media(max-width:1023px){
  .nav{position:fixed;top:0;right:0;bottom:0;width:80%;max-width:330px;flex-direction:column;align-items:stretch;gap:.5rem;background:#fff;border-radius:2rem 0 0 2rem;padding:6rem 1.5rem 2rem;transform:translateX(103%);transition:transform .35s cubic-bezier(.2,.8,.2,1);z-index:60;overflow-y:auto;box-shadow:-16px 0 50px -12px rgba(80,40,140,.35);}
  .nav.active{transform:translateX(0);}
  .menu-overlay{position:fixed;inset:0;background:rgba(40,20,70,.4);opacity:0;visibility:hidden;transition:opacity .3s;z-index:55;}
  .menu-overlay.active{opacity:1;visibility:visible;}
  body.menu-open{overflow:hidden;}
}

.faq-answer{max-height:0;overflow:hidden;opacity:0;transition:max-height .35s ease,opacity .35s ease;}
.faq-item.active .faq-icon{transform:rotate(180deg);}
.faq-icon{transition:transform .3s ease;}

.back-to-top{opacity:0;visibility:hidden;transition:opacity .3s;}
.back-to-top.visible{opacity:1;visibility:visible;}

@media print{header,footer,.no-print{display:none;}}
