:root{
    --silver:#d4d4d8;
    --purple:#a855f7;
    --pink:#ff5edb;
    --ink:#0b0614;
    --paper:#f4eefb;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
    background:
      radial-gradient(900px 500px at 12% -8%, rgba(168,85,247,.35), transparent 62%),
      radial-gradient(760px 460px at 92% 4%, rgba(255,94,219,.26), transparent 60%),
      radial-gradient(900px 700px at 50% 108%, rgba(212,212,216,.18), transparent 65%),
      #0b0614;
    color:#efe9f7;
    line-height:1.65;
    font-size:15px;
    -webkit-font-smoothing:antialiased;
  }
  a{color:inherit;text-decoration:none;}
  img{display:block;max-width:100%;}
  .container{width:100%;max-width:1180px;margin:0 auto;padding:0 16px;}

  /* header */
  .site-header{
    position:sticky;top:0;z-index:60;
    backdrop-filter:blur(14px);
    background:linear-gradient(120deg, rgba(212,212,216,.14), rgba(168,85,247,.22) 60%, rgba(255,94,219,.16));
    border-bottom:1px solid rgba(212,212,216,.28);
    box-shadow:0 4px 22px rgba(168,85,247,.22);
  }
  .header-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;flex-wrap:wrap;}
  .logo{
    display:flex;align-items:center;gap:8px;
    font-weight:800;font-size:19px;letter-spacing:2px;
    background:linear-gradient(92deg,#ffffff,#d4d4d8 40%,#a855f7 78%,#ff5edb);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .logo .dot{
    width:12px;height:12px;border-radius:50%;
    background:conic-gradient(#d4d4d8,#a855f7,#ff5edb,#ffffff,#d4d4d8);
    box-shadow:0 0 12px rgba(168,85,247,.9);
    -webkit-text-fill-color:initial;
  }
  .nav-links{display:flex;gap:6px;flex-wrap:wrap;}
  .nav-links a{
    font-size:13px;padding:6px 11px;border-radius:8px;
    border:1px solid rgba(212,212,216,.3);
    background:rgba(255,255,255,.05);
    transition:.22s;
    white-space:nowrap;
  }
  .nav-links a:hover{
    background:linear-gradient(120deg, rgba(168,85,247,.7), rgba(255,94,219,.55));
    border-color:rgba(255,255,255,.6);
    box-shadow:0 0 16px rgba(168,85,247,.65);
    transform:translateY(-1px);
  }

  /* hero */
  .hero{padding:34px 0 20px;}
  .hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px;align-items:center;}
  .eyebrow{
    display:inline-block;font-size:11px;letter-spacing:3px;padding:4px 10px;border-radius:999px;
    color:#f2e9ff;border:1px solid rgba(212,212,216,.45);
    background:linear-gradient(100deg, rgba(212,212,216,.22), rgba(255,94,219,.2));
    box-shadow:0 0 14px rgba(255,94,219,.35);
  }
  h1{
    font-size:clamp(23px,3.4vw,36px);
    line-height:1.3;margin:12px 0 10px;letter-spacing:.5px;
    background:linear-gradient(96deg,#ffffff,#d4d4d8 34%,#a855f7 70%,#ff5edb);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    text-shadow:0 0 28px rgba(168,85,247,.28);
  }
  .hero p.lead{color:#d9d2e6;margin:0 0 14px;font-size:14.5px;}
  .btn-row{display:flex;gap:10px;flex-wrap:wrap;}
  .btn{
    display:inline-block;padding:9px 18px;border-radius:9px;font-size:13.5px;font-weight:600;
    border:1px solid rgba(255,255,255,.5);
    background:linear-gradient(115deg,#a855f7,#ff5edb);
    color:#fff;box-shadow:0 0 20px rgba(168,85,247,.55);
    transition:.22s;
  }
  .btn:hover{transform:translateY(-2px);box-shadow:0 0 28px rgba(255,94,219,.8);}
  .btn.ghost{
    background:rgba(212,212,216,.1);color:#efe9f7;
    border-color:rgba(212,212,216,.45);box-shadow:none;
  }
  .btn.ghost:hover{background:rgba(168,85,247,.3);}
  .hero-figure{
    border-radius:12px;overflow:hidden;border:1px solid rgba(212,212,216,.35);
    box-shadow:0 0 26px rgba(168,85,247,.42);
  }
  .hero-figure img{width:100%;height:210px;object-fit:cover;}

  /* section shell */
  section{padding:18px 0;}
  .sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap;}
  h2{
    font-size:20px;margin:0;letter-spacing:.6px;
    background:linear-gradient(92deg,#ffffff,#d4d4d8 45%,#a855f7 85%);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .sec-head .hint{font-size:12px;color:#b9aecb;letter-spacing:1px;}
  h3{font-size:15px;margin:0 0 6px;color:#f6f0ff;}

  /* geo */
  .geo-box{
    padding:16px 18px;border-radius:12px;
    background:linear-gradient(140deg, rgba(212,212,216,.13), rgba(168,85,247,.16) 55%, rgba(255,94,219,.12));
    border:1px solid rgba(212,212,216,.3);
    box-shadow:0 0 20px rgba(168,85,247,.22);
    font-size:14px;color:#e7deF5;
  }
  .geo-box strong{color:#fff;}

  /* masonry */
  .masonry{column-count:3;column-gap:12px;}
  .card{
    break-inside:avoid;margin:0 0 12px;padding:13px 14px;border-radius:11px;
    background:linear-gradient(150deg, rgba(212,212,216,.15), rgba(168,85,247,.17) 58%, rgba(255,94,219,.13));
    border:1px solid rgba(212,212,216,.28);
    box-shadow:0 0 16px rgba(168,85,247,.22), inset 0 0 22px rgba(255,255,255,.04);
    transition:.25s;
    position:relative;
    overflow:hidden;
  }
  .card::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(115deg, rgba(255,255,255,.14) 0%, transparent 28%, transparent 70%, rgba(255,94,219,.12) 100%);
    opacity:.7;
  }
  .card:hover{transform:translateY(-2px);box-shadow:0 0 26px rgba(255,94,219,.42);}
  .card p{margin:6px 0 0;font-size:13.3px;color:#ded5ec;}
  .card img{border-radius:7px;margin-bottom:9px;border:1px solid rgba(212,212,216,.28);width:100%;object-fit:cover;}
  .num{
    font-size:24px;font-weight:800;letter-spacing:1px;
    background:linear-gradient(96deg,#ffffff,#d4d4d8 40%,#a855f7 80%,#ff5edb);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .stat-label{font-size:12px;color:#bbafcd;letter-spacing:.5px;}
  .tag{
    display:inline-block;font-size:11px;padding:2px 8px;border-radius:999px;
    border:1px solid rgba(255,94,219,.55);color:#ffd9f5;
    background:rgba(255,94,219,.14);margin-bottom:6px;letter-spacing:1px;
  }
  .quote{font-style:normal;border-left:2px solid var(--purple);padding-left:10px;color:#e9e0f7;font-size:13px;}

  /* news */
  .news-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
  .news-item{
    padding:15px;border-radius:11px;
    background:linear-gradient(150deg, rgba(212,212,216,.14), rgba(168,85,247,.16) 60%, rgba(255,94,219,.11));
    border:1px solid rgba(212,212,216,.26);
    box-shadow:0 0 16px rgba(168,85,247,.2);
    transition:.25s;
  }
  .news-item:hover{box-shadow:0 0 26px rgba(168,85,247,.45);transform:translateY(-2px);}
  .news-item h3{font-size:14.5px;line-height:1.45;}
  .news-item .date{
    font-size:11.5px;color:#ffb9ef;letter-spacing:.6px;margin:2px 0 8px;display:block;
  }
  .news-item p{font-size:13px;color:#ded5ec;margin:0 0 6px;}
  .news-item p.quote{margin-top:8px;}

  /* faq */
  .faq-wrap{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
  details.faq-item{
    border-radius:11px;padding:0 14px;
    background:linear-gradient(140deg, rgba(212,212,216,.12), rgba(168,85,247,.15));
    border:1px solid rgba(212,212,216,.26);
    box-shadow:0 0 14px rgba(168,85,247,.18);
  }
  details.faq-item[open]{box-shadow:0 0 24px rgba(255,94,219,.36);}
  details.faq-item summary{
    cursor:pointer;padding:11px 0;font-size:13.8px;font-weight:600;color:#f7f1ff;
    list-style:none;position:relative;
  }
  details.faq-item summary::-webkit-details-marker{display:none;}
  details.faq-item summary::after{
    content:"+";position:absolute;right:0;top:10px;color:#ff5edb;font-size:16px;
  }
  details.faq-item[open] summary::after{content:"−";}
  details.faq-item p{margin:0 0 12px;font-size:13.2px;color:#ded5ec;}

  /* testimonial / partners / contact */
  .t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
  .partner-row{display:flex;flex-wrap:wrap;gap:8px;}
  .partner-row span{
    font-size:12.5px;padding:6px 13px;border-radius:8px;
    border:1px solid rgba(212,212,216,.3);
    background:rgba(255,255,255,.05);
    color:#e3daf1;letter-spacing:1px;
  }
  .contact-box{
    display:grid;grid-template-columns:repeat(2,1fr);gap:12px;
    padding:16px;border-radius:12px;
    background:linear-gradient(140deg, rgba(212,212,216,.13), rgba(168,85,247,.16) 60%, rgba(255,94,219,.12));
    border:1px solid rgba(212,212,216,.28);
    box-shadow:0 0 20px rgba(168,85,247,.24);
    font-size:13.4px;
  }
  .contact-box b{color:#fff;display:block;font-size:12px;letter-spacing:1.5px;color:#ffb9ef;font-weight:600;margin-bottom:2px;}

  .cta-band{
    margin:6px 0 4px;padding:20px;border-radius:13px;text-align:center;
    background:linear-gradient(115deg, rgba(168,85,247,.4), rgba(255,94,219,.3) 55%, rgba(212,212,216,.22));
    border:1px solid rgba(255,255,255,.4);
    box-shadow:0 0 30px rgba(168,85,247,.5);
  }
  .cta-band h2{margin-bottom:6px;}
  .cta-band p{font-size:13.5px;color:#f0e7fb;margin:0 0 12px;}

  /* footer */
  footer{
    margin-top:24px;padding:22px 0 16px;
    border-top:1px solid rgba(212,212,216,.25);
    background:linear-gradient(180deg, rgba(168,85,247,.1), rgba(11,6,20,.6));
    font-size:12.8px;color:#c8bdd9;
  }
  .foot-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;}
  .foot-grid h4{font-size:13px;color:#fff;margin:0 0 6px;letter-spacing:1.5px;}
  .foot-grid p{margin:3px 0;}
  .foot-links a{color:#e6d9f7;border-bottom:1px dashed rgba(255,94,219,.5);}
  .foot-bottom{
    margin-top:14px;padding-top:12px;border-top:1px dashed rgba(212,212,216,.22);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;color:#a99cbb;
  }

  @media (max-width:900px){
    .hero-grid{grid-template-columns:1fr;}
    .masonry{column-count:2;}
    .news-list{grid-template-columns:1fr 1fr;}
    .faq-wrap{grid-template-columns:1fr;}
    .t-grid{grid-template-columns:1fr 1fr;}
    .foot-grid{grid-template-columns:1fr;}
    .contact-box{grid-template-columns:1fr;}
  }
  @media (max-width:600px){
    .masonry{column-count:1;}
    .news-list{grid-template-columns:1fr;}
    .t-grid{grid-template-columns:1fr;}
    .hero-figure img{height:170px;}
  }