/* roulang page: index */
:root{
      --bg:#080714;
      --bg-2:#111026;
      --bg-3:#17152e;
      --panel:#0f1224;
      --panel-soft:#171836;
      --light:#f7f4ff;
      --light-2:#fff6fc;
      --text:#eef1ff;
      --muted:#abb0cf;
      --muted-dark:#5b5775;
      --line:rgba(255,255,255,.11);
      --line-soft:rgba(124,58,237,.16);
      --purple:#7c3aed;
      --pink:#ff4fd8;
      --cyan:#22d3ee;
      --green:#10b981;
      --shadow-dark:0 30px 70px rgba(0,0,0,.38);
      --shadow-glow:0 0 0 1px rgba(124,58,237,.2), 0 18px 40px rgba(124,58,237,.18), 0 0 60px rgba(255,79,216,.12);
      --radius-xl:32px;
      --radius-lg:24px;
      --radius-md:18px;
      --radius-sm:14px;
      --container:1280px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 12% 16%, rgba(124,58,237,.18), transparent 22%),
        radial-gradient(circle at 86% 18%, rgba(255,79,216,.12), transparent 18%),
        radial-gradient(circle at 70% 78%, rgba(34,211,238,.10), transparent 18%),
        linear-gradient(180deg, #090816 0%, #0d0c1c 32%, #080714 100%);
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background-image:
        linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
      background-size:42px 42px;
      mask-image:linear-gradient(180deg, rgba(0,0,0,.42), rgba(0,0,0,.1) 68%, transparent);
      opacity:.35;
      z-index:0;
    }
    a{color:inherit;text-decoration:none;transition:all .25s ease}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    ::selection{background:rgba(255,79,216,.28);color:#fff}
    ::-webkit-scrollbar{width:10px;height:10px}
    ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--purple),var(--pink));border-radius:999px}
    ::-webkit-scrollbar-track{background:#090816}

    .site-shell{position:relative;z-index:1}
    .container-max{max-width:var(--container);margin:0 auto;padding-left:1rem;padding-right:1rem}
    @media (min-width:640px){.container-max{padding-left:1.5rem;padding-right:1.5rem}}
    @media (min-width:1024px){.container-max{padding-left:2rem;padding-right:2rem}}

    .topbar{
      position:sticky;top:0;z-index:50;
      backdrop-filter:blur(18px);
      background:rgba(8,7,20,.86);
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .topbar::after{
      content:"";
      position:absolute;left:0;right:0;bottom:0;height:1px;
      background:linear-gradient(90deg, rgba(124,58,237,0), rgba(124,58,237,.8), rgba(255,79,216,.85), rgba(34,211,238,.8), rgba(124,58,237,0));
      pointer-events:none;
    }
    .logo-mark{
      width:34px;height:34px;border-radius:12px;
      background:linear-gradient(135deg, rgba(124,58,237,.95), rgba(255,79,216,.92));
      box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 10px 24px rgba(124,58,237,.28);
      display:grid;place-items:center;
      position:relative;
      flex:none;
    }
    .logo-mark::before{
      content:"";
      width:14px;height:14px;
      border:2px solid rgba(255,255,255,.95);
      transform:rotate(45deg);
      border-radius:4px;
      box-shadow:0 0 14px rgba(255,255,255,.25);
    }
    .logo-text{
      font-weight:800;
      letter-spacing:.02em;
      color:#fff;
      text-shadow:0 0 20px rgba(255,255,255,.08);
    }
    .nav-link{
      position:relative;
      padding:.55rem .9rem;
      border-radius:999px;
      color:rgba(238,241,255,.84);
      font-size:.95rem;
      white-space:nowrap;
    }
    .nav-link:hover{
      color:#fff;
      background:rgba(255,255,255,.05);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.06), 0 0 0 1px rgba(124,58,237,.08);
    }
    .nav-link.active{
      color:#fff;
      background:linear-gradient(135deg, rgba(124,58,237,.18), rgba(255,79,216,.16));
      box-shadow:0 0 0 1px rgba(124,58,237,.24), 0 0 24px rgba(124,58,237,.22);
    }
    .nav-link.active::after{
      content:"";
      position:absolute;
      left:18px;right:18px;bottom:5px;height:2px;border-radius:999px;
      background:linear-gradient(90deg,var(--purple),var(--pink),var(--cyan));
      filter:drop-shadow(0 0 10px rgba(255,79,216,.72));
    }
    .nav-cta{
      background:linear-gradient(135deg,var(--purple),var(--pink));
      color:#fff;
      box-shadow:0 14px 30px rgba(124,58,237,.28), 0 0 24px rgba(255,79,216,.14);
    }
    .nav-cta:hover{transform:translateY(-1px);box-shadow:0 18px 36px rgba(124,58,237,.34), 0 0 30px rgba(255,79,216,.18)}
    .menu-panel{
      border-top:1px solid rgba(255,255,255,.08);
      background:linear-gradient(180deg, rgba(10,9,22,.98), rgba(15,16,35,.98));
      box-shadow:var(--shadow-dark);
    }

    .hero-band{
      position:relative;
      overflow:hidden;
      border-radius:var(--radius-xl);
      background:
        linear-gradient(135deg, rgba(255,255,255,.82), rgba(248,244,255,.95) 42%, rgba(255,246,252,.98)),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.92));
      color:#19152d;
      border:1px solid rgba(124,58,237,.16);
      box-shadow:0 24px 80px rgba(17,16,38,.22), 0 0 0 1px rgba(255,255,255,.35) inset;
    }
    .hero-band::before,
    .hero-band::after{
      content:"";
      position:absolute;
      border-radius:999px;
      pointer-events:none;
      filter:blur(10px);
      opacity:.78;
      animation:floatGlow 10s ease-in-out infinite;
    }
    .hero-band::before{
      width:260px;height:260px;
      right:-70px;top:-70px;
      background:radial-gradient(circle, rgba(255,79,216,.24), rgba(255,79,216,.04) 62%, transparent 70%);
    }
    .hero-band::after{
      width:220px;height:220px;
      left:-60px;bottom:-60px;
      background:radial-gradient(circle, rgba(124,58,237,.18), rgba(124,58,237,.05) 62%, transparent 72%);
      animation-delay:-4s;
    }
    @keyframes floatGlow{
      0%,100%{transform:translate3d(0,0,0) scale(1)}
      50%{transform:translate3d(0,-12px,0) scale(1.04)}
    }
    .hero-grid{
      display:grid;
      gap:1.4rem;
      align-items:center;
    }
    @media (min-width:1024px){
      .hero-grid{grid-template-columns:1.15fr .85fr;gap:2rem}
    }
    .eyebrow{
      display:inline-flex;align-items:center;gap:.45rem;
      padding:.42rem .78rem;
      border-radius:999px;
      font-size:.82rem;
      font-weight:700;
      letter-spacing:.04em;
      color:#5e2baf;
      background:rgba(124,58,237,.10);
      border:1px solid rgba(124,58,237,.14);
      box-shadow:0 8px 24px rgba(124,58,237,.08);
    }
    .eyebrow .dot{
      width:8px;height:8px;border-radius:999px;
      background:linear-gradient(135deg,var(--purple),var(--pink));
      box-shadow:0 0 0 4px rgba(124,58,237,.12);
    }
    .hero-title{
      font-size:clamp(2.15rem,6vw,4.4rem);
      line-height:1.06;
      letter-spacing:-.04em;
      font-weight:900;
      margin:0;
      max-width:11ch;
    }
    .hero-title .grad{
      background:linear-gradient(135deg,var(--purple),var(--pink) 55%, #0f7cff);
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
      text-shadow:none;
    }
    .hero-copy{
      margin-top:1rem;
      color:#4d4762;
      font-size:1.02rem;
      line-height:1.8;
      max-width:56ch;
    }
    .hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
      min-height:48px;padding:.8rem 1.15rem;
      border-radius:999px;
      border:1px solid transparent;
      font-weight:800;
      transition:transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
      cursor:pointer;
      user-select:none;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-2px)}
    .btn-primary{
      color:#fff;
      background:linear-gradient(135deg,var(--purple),var(--pink));
      box-shadow:0 16px 34px rgba(124,58,237,.24), 0 0 20px rgba(255,79,216,.12);
    }
    .btn-primary:hover{box-shadow:0 22px 40px rgba(124,58,237,.3), 0 0 30px rgba(255,79,216,.18)}
    .btn-secondary{
      color:#241b4d;
      background:rgba(255,255,255,.65);
      border-color:rgba(34,211,238,.4);
      box-shadow:0 12px 30px rgba(31,24,66,.08);
    }
    .btn-secondary:hover{
      border-color:rgba(255,79,216,.42);
      box-shadow:0 18px 34px rgba(124,58,237,.12), 0 0 0 1px rgba(255,79,216,.1) inset;
    }
    .btn-ghost{
      color:#4a4871;
      background:rgba(255,255,255,.36);
      border-color:rgba(124,58,237,.14);
    }
    .btn-ghost:hover{border-color:rgba(124,58,237,.3);background:rgba(255,255,255,.58)}
    .mini-stats{
      display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.35rem
    }
    .stat-pill{
      display:inline-flex;align-items:center;gap:.5rem;
      padding:.58rem .85rem;
      border-radius:999px;
      background:rgba(255,255,255,.82);
      color:#312a53;
      font-size:.92rem;
      border:1px solid rgba(124,58,237,.12);
      box-shadow:0 10px 24px rgba(31,24,66,.06);
    }
    .stat-pill strong{color:#7c3aed;font-weight:900}
    .hero-cluster{
      position:relative;
      display:grid;
      gap:1rem;
    }
    .hero-card{
      border-radius:28px;
      padding:1.1rem;
      background:linear-gradient(180deg, rgba(20,19,45,.98), rgba(14,14,33,.96));
      color:#fff;
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark), 0 0 0 1px rgba(124,58,237,.16) inset;
      position:relative;
      overflow:hidden;
    }
    .hero-card::before{
      content:"";
      position:absolute;inset:0;
      background:
        linear-gradient(135deg, rgba(124,58,237,.16), transparent 30%),
        linear-gradient(225deg, rgba(255,79,216,.12), transparent 32%);
      pointer-events:none;
    }
    .hero-card h3{margin:0;font-size:1.06rem;font-weight:850;letter-spacing:.01em}
    .hero-card p{margin:.55rem 0 0;color:rgba(238,241,255,.78);line-height:1.7;font-size:.95rem}
    .hero-chip{
      display:inline-flex;align-items:center;gap:.35rem;
      padding:.32rem .62rem;border-radius:999px;
      font-size:.76rem;font-weight:800;
      background:rgba(255,255,255,.08);
      color:#d8ddff;
      border:1px solid rgba(255,255,255,.08);
    }
    .hero-chip strong{color:#7ee7ff}
    .bar{
      height:10px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden;margin-top:1rem
    }
    .bar span{
      display:block;height:100%;
      background:linear-gradient(90deg,var(--purple),var(--pink),var(--cyan));
      box-shadow:0 0 16px rgba(255,79,216,.35);
      border-radius:999px;
    }
    .floating-grid{
      display:grid;gap:.9rem;
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .float-tile{
      border-radius:22px;
      padding:.95rem;
      background:rgba(255,255,255,.92);
      border:1px solid rgba(124,58,237,.14);
      color:#261f46;
      box-shadow:0 18px 30px rgba(31,24,66,.08);
      min-height:110px;
    }
    .float-tile .label{
      display:inline-flex;align-items:center;gap:.35rem;
      padding:.28rem .55rem;border-radius:999px;
      font-size:.74rem;font-weight:800;
      background:rgba(124,58,237,.1);
      color:#6d28d9;
    }
    .float-tile strong{display:block;margin-top:.6rem;font-size:1rem}
    .float-tile small{display:block;margin-top:.3rem;color:#6d6787;line-height:1.6}
    .section{
      padding:clamp(3.5rem,7vw,6rem) 0;
      position:relative;
    }
    .section.light{color:#221d3c}
    .section.dark{color:#eef1ff}
    .section-heading{
      display:flex;flex-direction:column;gap:.55rem;margin-bottom:1.5rem
    }
    .section-heading.center{align-items:flex-start}
    .section-kicker{
      display:inline-flex;align-items:center;gap:.5rem;
      width:max-content;
      padding:.38rem .74rem;
      border-radius:999px;
      font-size:.8rem;
      font-weight:800;
      letter-spacing:.04em;
      text-transform:none;
      background:rgba(124,58,237,.1);
      color:#6b2fd6;
      border:1px solid rgba(124,58,237,.16);
    }
    .section-kicker.white{
      background:rgba(255,255,255,.08);
      color:#d8dcff;
      border-color:rgba(255,255,255,.09);
    }
    .section-title{
      margin:0;
      font-size:clamp(1.8rem,4vw,3rem);
      line-height:1.12;
      letter-spacing:-.03em;
      font-weight:900;
    }
    .section-desc{
      margin:0;
      max-width:70ch;
      line-height:1.82;
      color:#5d5875;
      font-size:1rem;
    }
    .section.dark .section-desc{color:rgba(238,241,255,.74)}
    .panel-light{
      background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,242,255,.98));
      border:1px solid rgba(124,58,237,.12);
      box-shadow:0 18px 36px rgba(31,24,66,.08);
    }
    .panel-dark{
      background:linear-gradient(180deg, rgba(17,16,40,.98), rgba(13,13,31,.98));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
    }
    .card{
      border-radius:28px;
      position:relative;
      overflow:hidden;
      transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, background .24s ease;
    }
    .card:hover{transform:translateY(-4px)}
    .card:focus-within{box-shadow:0 0 0 3px rgba(34,211,238,.18)}
    .card-line{
      position:absolute;left:0;top:0;right:0;height:3px;
      background:linear-gradient(90deg,var(--purple),var(--pink),var(--cyan));
    }
    .tag{
      display:inline-flex;align-items:center;gap:.35rem;
      padding:.35rem .6rem;border-radius:999px;
      font-size:.75rem;font-weight:800;line-height:1;
      background:rgba(124,58,237,.1);
      color:#6d28d9;
      border:1px solid rgba(124,58,237,.14);
    }
    .tag.dark{background:rgba(255,255,255,.08);color:#d6ddff;border-color:rgba(255,255,255,.08)}
    .tag-cyan{background:rgba(34,211,238,.12);color:#047c93;border-color:rgba(34,211,238,.18)}
    .tag-pink{background:rgba(255,79,216,.12);color:#ab106d;border-color:rgba(255,79,216,.16)}
    .tag-green{background:rgba(16,185,129,.12);color:#0b6b55;border-color:rgba(16,185,129,.18)}
    .badge-no{
      display:inline-flex;align-items:center;justify-content:center;
      min-width:72px;
      padding:.35rem .6rem;
      border-radius:14px;
      font-size:.76rem;
      font-weight:900;
      letter-spacing:.08em;
      background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(255,79,216,.14));
      color:#5f22b8;
      border:1px solid rgba(124,58,237,.14);
    }
    .badge-no.dark{color:#e3e8ff;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.08)}
    .card-title{
      margin:.8rem 0 .45rem;
      font-size:1.25rem;
      line-height:1.25;
      font-weight:850;
      letter-spacing:-.02em;
    }
    .card-desc{
      margin:0;
      line-height:1.8;
      font-size:.96rem;
      color:#5e5878;
    }
    .section.dark .card-desc{color:rgba(238,241,255,.74)}
    .icon-bullet{
      width:30px;height:30px;border-radius:10px;
      display:grid;place-items:center;
      flex:none;
      background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(255,79,216,.1));
      color:#6b2fd6;
      border:1px solid rgba(124,58,237,.16);
      box-shadow:0 10px 20px rgba(124,58,237,.08);
    }

    .entry-grid{display:grid;gap:1rem}
    @media (min-width:768px){.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
    @media (min-width:1100px){.entry-grid{grid-template-columns:repeat(12,minmax(0,1fr))}}
    .entry-card{
      padding:1.15rem;
      min-height:210px;
      display:flex;flex-direction:column;justify-content:space-between;
    }
    .entry-card.primary{grid-column:auto}
    .entry-card.support{min-height:190px}
    @media (min-width:1100px){
      .entry-card.primary{grid-column:span 7}
      .entry-card.secondary{grid-column:span 5}
      .entry-card.support{grid-column:span 4}
    }
    .entry-card .meta{display:flex;align-items:center;justify-content:space-between;gap:1rem}
    .entry-card .link{
      display:inline-flex;align-items:center;gap:.38rem;
      color:#6d28d9;font-weight:800;font-size:.92rem
    }
    .entry-card .link:hover{gap:.55rem}
    .entry-card.dark .link{color:#8be8ff}
    .grid-note{
      padding:1rem 1.1rem;border-radius:18px;
      background:rgba(255,255,255,.62);
      border:1px solid rgba(124,58,237,.1);
      color:#4a4468;
      line-height:1.75;
      margin-top:1rem;
    }

    .feature-layout{
      display:grid;
      gap:1rem;
    }
    @media (min-width:1100px){
      .feature-layout{grid-template-columns:280px minmax(0,1fr);gap:1.2rem}
    }
    .feature-nav{
      position:sticky;top:92px;
      align-self:start;
      padding:1rem;
      border-radius:28px;
      background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(245,241,255,.98));
      border:1px solid rgba(124,58,237,.12);
      box-shadow:0 18px 36px rgba(31,24,66,.08);
    }
    .feature-nav-item{
      width:100%;
      display:flex;align-items:flex-start;gap:.8rem;
      padding:.92rem .9rem;
      border-radius:20px;
      color:#30274f;
      text-align:left;
      border:1px solid transparent;
      margin-bottom:.7rem;
      background:transparent;
    }
    .feature-nav-item:last-child{margin-bottom:0}
    .feature-nav-item .idx{
      display:inline-flex;align-items:center;justify-content:center;
      width:34px;height:34px;border-radius:12px;
      background:rgba(124,58,237,.1);
      color:#6d28d9;
      font-weight:900;
      flex:none;
    }
    .feature-nav-item strong{display:block;font-size:1rem;margin-bottom:.15rem}
    .feature-nav-item span{display:block;font-size:.88rem;line-height:1.65;color:#6c6588}
    .feature-nav-item.active{
      background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(255,79,216,.09));
      border-color:rgba(124,58,237,.14);
      box-shadow:0 12px 24px rgba(124,58,237,.08);
    }
    .feature-nav-item.active .idx{
      background:linear-gradient(135deg,var(--purple),var(--pink));
      color:#fff;
      box-shadow:0 0 20px rgba(255,79,216,.22);
    }
    .feature-grid{
      display:grid;
      gap:1rem;
      grid-template-columns:repeat(1,minmax(0,1fr));
    }
    @media (min-width:768px){
      .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    }
    .feature-card{
      padding:1.15rem;
      min-height:210px;
    }
    .feature-list{
      margin-top:.9rem;
      display:grid;gap:.6rem;
    }
    .feature-list li{
      display:flex;gap:.6rem;align-items:flex-start;
      color:inherit;
      line-height:1.7;
      font-size:.95rem;
    }
    .feature-list li i{
      width:18px;height:18px;border-radius:999px;
      display:inline-grid;place-items:center;
      margin-top:.22rem;
      background:linear-gradient(135deg,var(--purple),var(--cyan));
      box-shadow:0 0 0 4px rgba(124,58,237,.1);
      flex:none;
    }

    .rules-grid{
      display:grid;gap:1rem;
      grid-template-columns:repeat(1,minmax(0,1fr));
    }
    @media (min-width:768px){.rules-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
    .rule-card{
      padding:1.2rem;
      border-radius:24px;
      background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(247,243,255,.96));
      border:1px solid rgba(124,58,237,.12);
      box-shadow:0 16px 30px rgba(31,24,66,.06);
    }
    .rule-step{
      display:flex;align-items:center;gap:.75rem;margin-bottom:.9rem
    }
    .rule-step .num{
      width:44px;height:44px;border-radius:16px;
      display:grid;place-items:center;
      font-weight:900;color:#fff;
      background:linear-gradient(135deg,var(--purple),var(--pink));
      box-shadow:0 10px 26px rgba(124,58,237,.22);
      flex:none;
    }
    .rule-step strong{font-size:1.08rem}
    .rule-card p{margin:0;color:#5d5775;line-height:1.8}
    .rule-card .tiny{margin-top:.9rem;display:flex;flex-wrap:wrap;gap:.45rem}

    .timeline{
      position:relative;
      display:grid;
      gap:1rem;
    }
    .timeline::before{
      content:"";
      position:absolute;left:14px;top:12px;bottom:12px;width:2px;
      background:linear-gradient(180deg,var(--purple),var(--pink),var(--cyan));
      opacity:.5;
    }
    .scenario{
      position:relative;
      padding:1.15rem 1.15rem 1.15rem 3rem;
      border-radius:24px;
      background:linear-gradient(180deg, rgba(17,16,40,.98), rgba(12,12,27,.98));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
    }
    .scenario::before{
      content:"";
      position:absolute;
      left:8px;top:22px;
      width:14px;height:14px;border-radius:999px;
      background:linear-gradient(135deg,var(--purple),var(--pink));
      box-shadow:0 0 0 5px rgba(124,58,237,.12);
    }
    .scenario h3{margin:0 0 .4rem;font-size:1.12rem;font-weight:850}
    .scenario p{margin:0;color:rgba(238,241,255,.74);line-height:1.8}
    .scenario .taglist{margin-top:.8rem;display:flex;flex-wrap:wrap;gap:.45rem}

    .case-layout{
      display:grid;gap:1rem;
      grid-template-columns:1fr;
    }
    @media (min-width:1100px){
      .case-layout{grid-template-columns:1.2fr .8fr}
    }
    .case-main{padding:1.2rem}
    .case-stack{display:grid;gap:1rem}
    .case-card{
      padding:1.05rem 1.1rem;
      background:linear-gradient(180deg, rgba(17,16,40,.98), rgba(13,12,29,.98));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
    }
    .case-card.light{
      background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,243,255,.98));
      border-color:rgba(124,58,237,.12);
      box-shadow:0 16px 30px rgba(31,24,66,.06);
      color:#241d43;
    }
    .case-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}
    .case-heading h3{margin:0;font-size:1.2rem;font-weight:900}
    .metrics{
      margin-top:1rem;
      display:grid;gap:.8rem;
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .metric{
      padding:.8rem .86rem;border-radius:18px;
      background:rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.08);
    }
    .case-card.light .metric{
      background:rgba(124,58,237,.06);
      border-color:rgba(124,58,237,.08);
    }
    .metric strong{display:block;font-size:1rem;font-weight:900}
    .metric span{display:block;margin-top:.22rem;color:rgba(238,241,255,.72);font-size:.88rem;line-height:1.6}
    .case-card.light .metric span{color:#6b6487}
    .case-main p,
    .case-card p{margin:0;color:rgba(238,241,255,.76);line-height:1.8}
    .case-card.light p{color:#5d5676}
    .case-main .case-body{margin-top:1rem;display:grid;gap:.8rem}
    .case-main .case-body li{display:flex;gap:.62rem;line-height:1.75}
    .case-main .case-body i{
      width:18px;height:18px;border-radius:999px;flex:none;margin-top:.25rem;
      background:linear-gradient(135deg,var(--cyan),var(--purple));
    }

    .news-layout{
      display:grid;gap:1rem;
      grid-template-columns:1fr;
    }
    @media (min-width:1100px){.news-layout{grid-template-columns:1.15fr .85fr}}
    .news-list{display:grid;gap:.9rem}
    .news-item{
      display:flex;gap:1rem;align-items:flex-start;
      padding:1rem 1.05rem;
      border-radius:22px;
      background:rgba(255,255,255,.82);
      border:1px solid rgba(124,58,237,.1);
      box-shadow:0 12px 26px rgba(31,24,66,.05);
    }
    .news-item .date{
      min-width:54px;
      text-align:center;
      border-radius:16px;
      padding:.55rem .4rem;
      background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(255,79,216,.1));
      color:#6b2fd6;
      border:1px solid rgba(124,58,237,.14);
      font-weight:900;
      line-height:1.2;
    }
    .news-item .date span{display:block;font-size:.72rem;font-weight:800;color:#7e72b1}
    .news-item h3{margin:.05rem 0 .4rem;font-size:1.02rem;font-weight:850}
    .news-item p{margin:0;color:#5f5978;line-height:1.7;font-size:.94rem}
    .news-side{padding:1.2rem}
    .news-side .side-box{
      border-radius:22px;
      padding:1rem;
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.08);
      margin-top:1rem;
    }
    .news-side .side-box h3{margin:0 0 .55rem}
    .news-side .side-box p{margin:0;color:rgba(238,241,255,.74);line-height:1.75}

    .pricing-grid{
      display:grid;gap:1rem;
      grid-template-columns:1fr;
      align-items:start;
    }
    @media (min-width:768px){.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
    .price-card{
      padding:1.2rem;
      background:linear-gradient(180deg, rgba(17,16,40,.98), rgba(12,12,27,.98));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
      display:flex;flex-direction:column;gap:1rem;
      min-height:100%;
    }
    .price-card.recommended{
      transform:translateY(-8px);
      border-color:rgba(255,79,216,.22);
      box-shadow:0 24px 54px rgba(124,58,237,.26), 0 0 0 1px rgba(255,79,216,.08) inset;
      background:
        linear-gradient(180deg, rgba(28,22,58,.98), rgba(14,13,33,.98));
    }
    .price-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
    .price-name{margin:0;font-size:1.2rem;font-weight:900}
    .price-value{font-size:2rem;font-weight:950;letter-spacing:-.03em;margin-top:.2rem}
    .price-value small{font-size:.95rem;font-weight:800;color:rgba(238,241,255,.72)}
    .price-meta{color:rgba(238,241,255,.74);line-height:1.75;margin:0;font-size:.95rem}
    .price-card .checklist{display:grid;gap:.65rem}
    .price-card .checklist li{display:flex;gap:.6rem;line-height:1.7;color:rgba(238,241,255,.82)}
    .price-card .checklist i{
      width:18px;height:18px;border-radius:999px;flex:none;margin-top:.22rem;
      background:linear-gradient(135deg,var(--green),var(--cyan));
      box-shadow:0 0 0 4px rgba(16,185,129,.1);
    }
    .compare-wrap{
      margin-top:1rem;
      border-radius:28px;
      overflow:hidden;
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
    }
    .compare-table{
      width:100%;
      border-collapse:collapse;
      background:rgba(255,255,255,.04);
      color:#eef1ff;
    }
    .compare-table th,
    .compare-table td{
      padding:1rem .9rem;
      border-bottom:1px solid rgba(255,255,255,.08);
      text-align:left;
      vertical-align:top;
      font-size:.94rem;
      line-height:1.65;
    }
    .compare-table th{
      background:linear-gradient(135deg, rgba(124,58,237,.22), rgba(255,79,216,.18));
      font-weight:900;
    }
    .compare-table tr:last-child td{border-bottom:none}
    .compare-table tbody tr:nth-child(odd) td{background:rgba(255,255,255,.02)}
    .compare-table .mark{
      color:#9af0ff;font-weight:800
    }

    .faq-wrap{
      max-width:920px;
      margin:0 auto;
      display:grid;
      gap:.9rem;
    }
    details.faq-item{
      border-radius:22px;
      overflow:hidden;
      background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,243,255,.98));
      border:1px solid rgba(124,58,237,.12);
      box-shadow:0 14px 28px rgba(31,24,66,.06);
    }
    details.faq-item[open]{box-shadow:0 18px 34px rgba(124,58,237,.1), 0 0 0 1px rgba(255,79,216,.06) inset}
    details.faq-item summary{
      list-style:none;
      cursor:pointer;
      padding:1rem 1.1rem;
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:1rem;
      font-weight:850;
      color:#2a2347;
    }
    details.faq-item summary::-webkit-details-marker{display:none}
    details.faq-item summary span{
      display:inline-flex;align-items:center;gap:.5rem
    }
    details.faq-item summary .arrow{
      width:30px;height:30px;border-radius:999px;
      display:grid;place-items:center;
      background:rgba(124,58,237,.08);
      color:#6d28d9;
      transition:transform .22s ease, background .22s ease;
      flex:none;
    }
    details.faq-item[open] summary .arrow{
      transform:rotate(180deg);
      background:rgba(255,79,216,.1);
    }
    details.faq-item .faq-body{
      padding:0 1.1rem 1rem;
      color:#5f5978;
      line-height:1.85;
    }

    .contact-shell{
      border-radius:32px;
      overflow:hidden;
      background:linear-gradient(135deg, rgba(17,16,40,.98), rgba(10,10,24,.98));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
    }
    .contact-grid{
      display:grid;gap:0;
    }
    @media (min-width:1024px){
      .contact-grid{grid-template-columns:1fr .95fr}
    }
    .contact-copy{
      padding:1.4rem;
      background:
        radial-gradient(circle at 16% 18%, rgba(124,58,237,.16), transparent 26%),
        radial-gradient(circle at 88% 22%, rgba(255,79,216,.12), transparent 22%);
      border-right:1px solid rgba(255,255,255,.08);
    }
    .contact-copy h2{margin:0;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.12;font-weight:900}
    .contact-copy p{margin:.85rem 0 0;max-width:56ch;line-height:1.8;color:rgba(238,241,255,.76)}
    .contact-points{margin-top:1rem;display:grid;gap:.7rem}
    .contact-points li{display:flex;gap:.6rem;line-height:1.7;color:rgba(238,241,255,.82)}
    .contact-points i{
      width:18px;height:18px;border-radius:999px;flex:none;margin-top:.23rem;
      background:linear-gradient(135deg,var(--purple),var(--cyan));
    }
    .form-panel{
      padding:1.35rem;
      background:rgba(255,255,255,.03);
    }
    .field{
      display:grid;gap:.42rem;margin-bottom:.9rem;
    }
    .field label{font-size:.9rem;font-weight:800;color:#dbe0ff}
    .field input,.field select,.field textarea{
      width:100%;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.10);
      background:rgba(255,255,255,.06);
      color:#fff;
      padding:.9rem 1rem;
      outline:none;
      transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .field input::placeholder,.field textarea::placeholder{color:rgba(238,241,255,.4)}
    .field input:focus,.field select:focus,.field textarea:focus{
      border-color:rgba(34,211,238,.65);
      box-shadow:0 0 0 4px rgba(34,211,238,.12), 0 0 24px rgba(34,211,238,.09);
      background:rgba(255,255,255,.08);
    }
    .form-note{
      margin-top:.8rem;
      color:rgba(238,241,255,.68);
      line-height:1.7;
      font-size:.92rem;
    }

    .footer{
      margin-top:clamp(3rem,7vw,5rem);
      background:linear-gradient(180deg, rgba(8,7,20,.96), rgba(10,9,22,.98));
      color:#d8dcff;
      border-top:1px solid rgba(255,255,255,.08);
      position:relative;
    }
    .footer::before{
      content:"";
      position:absolute;left:0;right:0;top:0;height:2px;
      background:linear-gradient(90deg, rgba(124,58,237,0), rgba(124,58,237,.9), rgba(255,79,216,.9), rgba(34,211,238,.85), rgba(124,58,237,0));
    }
    .footer-grid{
      display:grid;gap:1.2rem;
      grid-template-columns:1.1fr .9fr .9fr;
    }
    @media (max-width:900px){.footer-grid{grid-template-columns:1fr}}
    .footer h3{
      margin:0 0 .7rem;
      font-size:1rem;
      font-weight:900;
      color:#fff;
    }
    .footer a{
      color:#d8dcff;
      opacity:.9;
    }
    .footer a:hover{color:#fff;opacity:1}
    .footer p,.footer li{color:rgba(216,220,255,.78);line-height:1.85}
    .footer-list{display:grid;gap:.45rem}
    .footer-note{
      margin-top:1.2rem;
      padding-top:1rem;
      border-top:1px solid rgba(255,255,255,.08);
      display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem;
      color:rgba(216,220,255,.66);
      font-size:.92rem;
    }
    .floating-spark{
      position:absolute;
      width:12px;height:12px;border-radius:999px;
      background:rgba(255,255,255,.35);
      box-shadow:0 0 24px rgba(255,255,255,.3);
      opacity:.45;
      animation:floatGlow 8s ease-in-out infinite;
      pointer-events:none;
    }
    .spark-a{top:10%;left:4%}
    .spark-b{top:18%;right:10%;animation-delay:-2s}
    .spark-c{bottom:16%;left:12%;animation-delay:-4s}
    .spark-d{bottom:26%;right:18%;animation-delay:-6s}

    .section-border{
      width:88px;height:4px;border-radius:999px;
      background:linear-gradient(90deg,var(--purple),var(--pink),var(--cyan));
      box-shadow:0 0 18px rgba(255,79,216,.22);
      margin-top:.2rem;
    }
    .soft-link{
      color:#6d28d9;
      font-weight:800;
    }
    .soft-link:hover{color:#b01479}
    .dark .soft-link{color:#8be8ff}
    .dark .soft-link:hover{color:#fff}
    .lift{
      box-shadow:0 0 0 1px rgba(124,58,237,.12), 0 20px 48px rgba(31,24,66,.08);
    }
    .content-list{
      display:grid;gap:.9rem;
    }
    .content-item{
      display:flex;gap:1rem;align-items:flex-start;
      padding:1rem 1.05rem;
      border-radius:22px;
      background:rgba(255,255,255,.85);
      border:1px solid rgba(124,58,237,.1);
      box-shadow:0 12px 26px rgba(31,24,66,.05);
      transition:transform .2s ease, box-shadow .2s ease;
    }
    .content-item:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(31,24,66,.08)}
    .content-item .dotbox{
      width:46px;height:46px;border-radius:16px;
      background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(255,79,216,.10));
      color:#6d28d9;
      display:grid;place-items:center;
      font-weight:900;
      flex:none;
      border:1px solid rgba(124,58,237,.12);
    }
    .content-item h3{margin:0 0 .35rem;font-size:1.02rem;font-weight:850;color:#281f45}
    .content-item p{margin:0;color:#5f5978;line-height:1.72;font-size:.94rem}
    .content-item .mini{margin-top:.45rem;display:flex;flex-wrap:wrap;gap:.4rem}
    .recommend-box{
      padding:1.2rem;
      border-radius:26px;
      background:linear-gradient(180deg, rgba(17,16,40,.98), rgba(13,12,29,.98));
      color:#fff;
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
    }
    .recommend-box p{color:rgba(238,241,255,.74);line-height:1.8}
    .recommend-box ul{display:grid;gap:.7rem;margin-top:1rem}
    .recommend-box li{
      display:flex;gap:.6rem;line-height:1.7;color:rgba(238,241,255,.82)
    }
    .recommend-box li i{
      width:18px;height:18px;border-radius:999px;flex:none;margin-top:.23rem;
      background:linear-gradient(135deg,var(--pink),var(--cyan));
    }
    .compare-chip{
      display:inline-flex;align-items:center;gap:.42rem;
      padding:.35rem .68rem;border-radius:999px;
      font-size:.74rem;font-weight:900;
      letter-spacing:.04em;
      background:rgba(255,255,255,.1);
      color:#e9edff;
      border:1px solid rgba(255,255,255,.08);
    }
    .cta-banner{
      padding:1.4rem;
      border-radius:32px;
      background:
        radial-gradient(circle at 12% 16%, rgba(124,58,237,.26), transparent 20%),
        radial-gradient(circle at 86% 18%, rgba(255,79,216,.18), transparent 18%),
        linear-gradient(135deg, rgba(17,16,40,.98), rgba(10,10,24,.98));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-dark);
      display:flex;flex-direction:column;gap:1rem;
    }
    .cta-banner h2{margin:0;font-size:clamp(1.65rem,3vw,2.4rem);font-weight:950;line-height:1.12}
    .cta-banner p{margin:0;max-width:58ch;line-height:1.8;color:rgba(238,241,255,.74)}
    .cta-actions{display:flex;flex-wrap:wrap;gap:.8rem}

    @media (max-width:1023px){
      .feature-nav{position:relative;top:0}
      .hero-title{max-width:none}
    }
    @media (max-width:767px){
      .hero-band{border-radius:26px}
      .hero-title{font-size:clamp(2rem,11vw,2.8rem)}
      .floating-grid{grid-template-columns:1fr}
      .section{padding:3.2rem 0}
      .card{border-radius:24px}
      .contact-copy{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}
      .hero-actions,.cta-actions{gap:.7rem}
      .btn{width:100%}
    }

/* roulang page: category2 */
:root{
    --bg:#f6f2ff;
    --bg-soft:#fff7fd;
    --card:rgba(255,255,255,.82);
    --card-strong:#ffffff;
    --text:#171224;
    --muted:#655a7a;
    --line:rgba(124,58,237,.16);
    --line-2:rgba(255,79,216,.18);
    --purple:#7C3AED;
    --purple-deep:#5b21b6;
    --pink:#FF4FD8;
    --cyan:#22D3EE;
    --dark:#080714;
    --dark-2:#111026;
    --shadow:0 18px 50px rgba(28,16,66,.12);
    --shadow-lg:0 22px 60px rgba(124,58,237,.16);
    --radius-xl:30px;
    --radius-lg:24px;
    --radius-md:18px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    color:var(--text);
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
    background:
      radial-gradient(circle at 15% 10%, rgba(124,58,237,.12), transparent 30%),
      radial-gradient(circle at 85% 0%, rgba(255,79,216,.12), transparent 26%),
      radial-gradient(circle at 70% 35%, rgba(34,211,238,.10), transparent 22%),
      linear-gradient(180deg, #f8f4ff 0%, #fffafc 100%);
    line-height:1.75;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
  }
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  button,input,select,textarea{font:inherit}
  section{scroll-margin-top:92px}
  ::selection{background:rgba(124,58,237,.16);color:#120f1d}

  .container-max{width:min(1240px, calc(100% - 32px)); margin:0 auto;}
  .site-header{
    position:sticky; top:0; z-index:60;
    background:rgba(8,7,20,.86);
    backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(255,255,255,.06);
    box-shadow:0 8px 30px rgba(0,0,0,.18);
  }
  .site-header::after,
  .footer::before{
    content:"";
    position:absolute;
    left:0; right:0; bottom:0;
    height:1px;
    background:linear-gradient(90deg, var(--purple), var(--pink), var(--cyan));
  }
  .header-inner{
    min-height:72px;
    display:flex; align-items:center; justify-content:space-between; gap:16px;
  }
  .brand{display:flex; align-items:center; gap:12px; min-width:0}
  .logo-mark{
    width:34px; height:34px; border-radius:12px;
    background:
      linear-gradient(135deg, rgba(124,58,237,1), rgba(255,79,216,1));
    position:relative;
    box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 10px 24px rgba(124,58,237,.35);
  }
  .logo-mark::before{
    content:"";
    position:absolute;
    inset:9px;
    border:1.5px solid rgba(255,255,255,.85);
    transform:rotate(45deg);
    border-radius:6px;
  }
  .logo-text{
    color:#fff;
    font-weight:900;
    letter-spacing:.02em;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    text-shadow:0 0 18px rgba(124,58,237,.35);
  }
  .nav-link{
    position:relative;
    color:rgba(255,255,255,.76);
    padding:11px 14px;
    border-radius:14px;
    font-size:15px;
    font-weight:700;
    transition:all .22s ease;
  }
  .nav-link:hover{
    color:#fff;
    background:rgba(255,255,255,.06);
  }
  .nav-link.active,
  .nav-link[aria-current="page"]{
    color:#fff;
    background:linear-gradient(180deg, rgba(124,58,237,.20), rgba(255,79,216,.14));
    box-shadow:inset 0 0 0 1px rgba(124,58,237,.22), 0 0 0 1px rgba(255,255,255,.04), 0 10px 20px rgba(124,58,237,.14);
  }
  .nav-link.active::after,
  .nav-link[aria-current="page"]::after{
    content:"";
    position:absolute;
    left:14px; right:14px; bottom:7px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--purple), var(--pink), var(--cyan));
    box-shadow:0 0 10px rgba(124,58,237,.5);
  }
  .header-actions{display:flex; align-items:center; gap:12px}
  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:10px;
    border:0; cursor:pointer;
    padding:12px 18px;
    border-radius:16px;
    font-weight:800;
    transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
    user-select:none;
    white-space:nowrap;
  }
  .btn:hover{transform:translateY(-2px)}
  .btn:active{transform:translateY(0)}
  .btn-primary{
    color:#fff;
    background:linear-gradient(135deg, var(--purple), var(--pink));
    box-shadow:0 14px 30px rgba(124,58,237,.28), 0 0 0 1px rgba(255,255,255,.06);
  }
  .btn-primary:hover{box-shadow:0 18px 36px rgba(124,58,237,.35), 0 0 0 1px rgba(255,255,255,.12)}
  .btn-secondary{
    color:#1a1431;
    background:rgba(255,255,255,.76);
    border:1px solid rgba(34,211,238,.32);
    box-shadow:0 10px 24px rgba(24,18,52,.08);
  }
  .btn-secondary:hover{
    border-color:rgba(255,79,216,.35);
    box-shadow:0 16px 30px rgba(124,58,237,.12);
    background:#fff;
  }
  .btn-ghost{
    color:#fff;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.04);
  }
  .btn-ghost:hover{
    background:rgba(255,255,255,.08);
    box-shadow:0 0 0 1px rgba(124,58,237,.18) inset;
  }
  .menu-toggle{
    width:44px; height:44px;
    display:inline-flex; align-items:center; justify-content:center;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.04);
    color:#fff;
  }
  .menu-bars{
    width:18px; height:14px; position:relative; display:block;
  }
  .menu-bars::before,.menu-bars::after,.menu-bars span{
    content:""; position:absolute; left:0; right:0; height:2px; border-radius:999px;
    background:linear-gradient(90deg, #fff, var(--cyan));
  }
  .menu-bars::before{top:0}
  .menu-bars span{top:6px}
  .menu-bars::after{bottom:0}
  .mobile-panel{
    border-top:1px solid rgba(255,255,255,.08);
    background:rgba(8,7,20,.96);
    backdrop-filter:blur(18px);
  }

  .hero-shell{
    position:relative;
    padding:34px 0 28px;
    overflow:hidden;
  }
  .hero-shell::before{
    content:"";
    position:absolute;
    inset:-40px -20px auto;
    height:420px;
    background:
      radial-gradient(circle at 18% 20%, rgba(255,255,255,.72), transparent 14%),
      radial-gradient(circle at 80% 16%, rgba(255,79,216,.26), transparent 16%),
      radial-gradient(circle at 64% 30%, rgba(34,211,238,.18), transparent 12%),
      linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,248,255,.88));
    filter:saturate(1.05);
    z-index:-2;
  }
  .hero-shell::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background-image:
      linear-gradient(rgba(124,58,237,.07) 1px, transparent 1px),
      linear-gradient(90deg, rgba(124,58,237,.07) 1px, transparent 1px);
    background-size:42px 42px;
    mask-image:linear-gradient(180deg, rgba(0,0,0,.55), transparent 85%);
    opacity:.75;
  }
  .breadcrumb{
    display:inline-flex; align-items:center; gap:8px;
    font-size:14px; color:var(--muted);
    margin-bottom:14px;
  }
  .breadcrumb a{color:#4b3fa5}
  .section-pill{
    display:inline-flex; align-items:center; gap:8px;
    padding:8px 14px;
    border-radius:999px;
    color:var(--purple-deep);
    background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(255,79,216,.10));
    border:1px solid rgba(124,58,237,.12);
    box-shadow:0 10px 24px rgba(124,58,237,.08);
    font-weight:800;
    letter-spacing:.02em;
  }
  .hero-title{
    font-size:clamp(2.15rem, 5vw, 4.4rem);
    line-height:1.08;
    letter-spacing:-.03em;
    font-weight:900;
    margin:18px 0 16px;
  }
  .gradient-text{
    background:linear-gradient(135deg, var(--purple) 0%, var(--pink) 52%, var(--cyan) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    text-shadow:0 10px 40px rgba(124,58,237,.08);
  }
  .hero-copy{
    font-size:clamp(1rem, 2vw, 1.12rem);
    color:var(--muted);
    max-width:38rem;
  }
  .badge-row{
    display:flex; flex-wrap:wrap; gap:10px;
    margin:22px 0 28px;
  }
  .stat-badge{
    display:inline-flex; align-items:center; gap:8px;
    padding:10px 14px;
    border-radius:999px;
    border:1px solid rgba(124,58,237,.14);
    background:rgba(255,255,255,.8);
    box-shadow:0 10px 24px rgba(29,17,68,.05);
    color:#31264f;
    font-weight:700;
  }
  .stat-badge i{
    width:9px; height:9px; border-radius:999px;
    background:linear-gradient(135deg, var(--purple), var(--pink));
    box-shadow:0 0 0 4px rgba(124,58,237,.08);
    display:inline-block;
  }
  .hero-panel,.glass-card,.side-card,.compare-card,.price-card,.form-card,.final-cta,.table-shell,.feature-stack{
    background:var(--card);
    border:1px solid rgba(124,58,237,.14);
    box-shadow:var(--shadow);
    backdrop-filter:blur(10px);
  }
  .hero-panel{
    position:relative;
    border-radius:var(--radius-xl);
    overflow:hidden;
    padding:22px;
  }
  .hero-panel::before{
    content:"";
    position:absolute;
    inset:0;
    background:
      radial-gradient(circle at 15% 15%, rgba(124,58,237,.14), transparent 22%),
      radial-gradient(circle at 84% 20%, rgba(255,79,216,.14), transparent 20%),
      linear-gradient(180deg, rgba(255,255,255,.26), rgba(255,255,255,0));
    pointer-events:none;
  }
  .hero-panel-head{
    display:flex; align-items:center; justify-content:space-between; gap:10px;
    position:relative; z-index:1;
    margin-bottom:18px;
  }
  .hero-panel-head .kicker{
    font-size:13px; font-weight:800; color:#4d3f80;
    padding:6px 10px; border-radius:999px;
    background:rgba(124,58,237,.10);
  }
  .hero-panel-head .state{
    display:inline-flex; align-items:center; gap:8px;
    font-size:13px; color:#5c5580; font-weight:700;
  }
  .hero-panel-head .dot{
    width:9px; height:9px; border-radius:999px; background:#22c55e; box-shadow:0 0 0 4px rgba(34,197,94,.12);
  }
  .hero-card{
    position:relative;
    z-index:1;
    border-radius:26px;
    padding:22px;
    color:#fff;
    background:
      linear-gradient(145deg, rgba(124,58,237,.96), rgba(255,79,216,.88));
    box-shadow:0 20px 40px rgba(124,58,237,.30), inset 0 0 0 1px rgba(255,255,255,.12);
    overflow:hidden;
  }
  .hero-card::after{
    content:"";
    position:absolute;
    inset:-30% -10% auto auto;
    width:220px; height:220px;
    border-radius:999px;
    background:radial-gradient(circle, rgba(255,255,255,.30), rgba(255,255,255,0) 65%);
    filter:blur(10px);
  }
  .hero-card h2{
    font-size:1.5rem; line-height:1.15; font-weight:900; margin:0 0 10px;
  }
  .hero-card p{
    margin:0 0 18px; color:rgba(255,255,255,.92);
  }
  .chip-row{display:flex; flex-wrap:wrap; gap:8px}
  .chip{
    display:inline-flex; align-items:center;
    padding:7px 10px; border-radius:999px;
    font-size:12px; font-weight:700;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.15);
  }
  .hero-mini-grid{
    position:relative; z-index:1;
    display:grid; grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:14px;
  }
  .mini-card{
    padding:14px;
    border-radius:20px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(124,58,237,.10);
    box-shadow:0 12px 24px rgba(24,18,52,.08);
  }
  .mini-card .tag{
    display:inline-flex; align-items:center;
    font-size:12px; font-weight:800;
    color:#4d3f80;
    margin-bottom:8px;
  }
  .mini-card strong{
    display:block;
    font-size:1.02rem;
    line-height:1.35;
    margin-bottom:6px;
    color:#181225;
  }
  .mini-card span{
    color:var(--muted); font-size:13px;
  }

  .section-gap{padding:72px 0}
  .section-header{
    display:flex; flex-direction:column; gap:10px;
    margin-bottom:24px;
  }
  .section-header h2{
    margin:0;
    font-size:clamp(1.7rem, 3vw, 2.8rem);
    line-height:1.12;
    font-weight:900;
    letter-spacing:-.03em;
  }
  .section-header p{
    margin:0;
    color:var(--muted);
    max-width:58rem;
    font-size:1.02rem;
  }

  .panel-grid{display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); gap:20px}
  .main-feature{
    grid-column:span 8;
    border-radius:var(--radius-xl);
    padding:24px;
    position:relative;
    overflow:hidden;
  }
  .main-feature::before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:4px;
    background:linear-gradient(180deg, var(--purple), var(--pink), var(--cyan));
    box-shadow:0 0 16px rgba(124,58,237,.26);
  }
  .main-feature h3{
    font-size:1.5rem; line-height:1.2; font-weight:900; margin:4px 0 10px;
  }
  .main-feature p{margin:0 0 18px; color:var(--muted)}
  .main-feature .meta-row{
    display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px;
  }
  .meta-pill{
    display:inline-flex; align-items:center; gap:8px;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(124,58,237,.08);
    color:#413178;
    font-size:13px;
    font-weight:800;
  }
  .meta-pill .mini-dot{
    width:8px; height:8px; border-radius:999px; background:var(--cyan);
    box-shadow:0 0 0 4px rgba(34,211,238,.12);
  }
  .feature-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    margin-top:18px;
  }
  .flow-item{
    display:flex; align-items:stretch; gap:14px;
    padding:16px;
    border-radius:22px;
    background:rgba(255,255,255,.86);
    border:1px solid rgba(124,58,237,.12);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  }
  .flow-item:hover{
    transform:translateY(-2px);
    border-color:rgba(124,58,237,.22);
    box-shadow:0 18px 28px rgba(124,58,237,.10);
  }
  .flow-index{
    flex:0 0 48px; height:48px;
    border-radius:16px;
    display:flex; align-items:center; justify-content:center;
    background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(255,79,216,.10));
    color:var(--purple-deep);
    font-weight:900;
    box-shadow:inset 0 0 0 1px rgba(124,58,237,.12);
  }
  .flow-content{flex:1; min-width:0}
  .flow-content h4{
    margin:0 0 4px;
    font-size:1.06rem;
    font-weight:800;
  }
  .flow-content p{
    margin:0;
    color:var(--muted);
    font-size:.97rem;
  }
  .flow-actions{
    display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:10px;
  }
  .flow-tag{
    display:inline-flex; align-items:center;
    padding:6px 10px;
    border-radius:999px;
    background:#fff;
    color:#5a4d87;
    border:1px solid rgba(34,211,238,.22);
    font-size:12px; font-weight:700;
  }

  .sidebar-stack{
    grid-column:span 4;
    display:grid;
    gap:16px;
  }
  .side-card{
    border-radius:var(--radius-xl);
    padding:20px;
    position:sticky;
    top:92px;
  }
  .side-card + .side-card{position:relative; top:auto}
  .side-title{
    display:flex; align-items:center; gap:10px;
    font-size:1.05rem; font-weight:900;
    margin:0 0 12px;
  }
  .side-title .bar{
    width:14px; height:14px; border-radius:5px;
    background:linear-gradient(135deg, var(--purple), var(--pink));
    box-shadow:0 0 0 4px rgba(124,58,237,.12);
  }
  .tag-cloud{display:flex; flex-wrap:wrap; gap:10px}
  .tag-cloud .tag{
    padding:8px 12px;
    border-radius:999px;
    background:rgba(124,58,237,.08);
    color:#433777;
    border:1px solid rgba(124,58,237,.08);
    font-size:13px;
    font-weight:700;
  }
  .side-note{
    margin-top:14px;
    color:var(--muted);
    font-size:14px;
  }
  .side-box{
    padding:16px;
    border-radius:20px;
    background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,244,255,.92));
    border:1px solid rgba(124,58,237,.10);
  }

  .compare-shell{
    padding:24px;
    border-radius:var(--radius-xl);
    background:rgba(255,255,255,.88);
    border:1px solid rgba(124,58,237,.14);
    box-shadow:var(--shadow);
  }
  .table-shell{
    border-radius:28px;
    overflow:hidden;
  }
  table.compare-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
  }
  .compare-table thead th{
    background:linear-gradient(135deg, rgba(17,16,38,.98), rgba(8,7,20,.98));
    color:#fff;
    text-align:left;
    padding:18px 16px;
    font-size:14px;
    letter-spacing:.01em;
    border-bottom:1px solid rgba(255,255,255,.06);
  }
  .compare-table tbody td{
    background:rgba(255,255,255,.92);
    border-bottom:1px solid rgba(124,58,237,.08);
    padding:16px;
    color:#32284d;
    vertical-align:top;
  }
  .compare-table tbody tr:nth-child(even) td{background:rgba(248,245,255,.95)}
  .compare-table tbody tr:hover td{background:#fff}
  .compare-row-tag{
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(34,211,238,.12);
    color:#196a79;
    font-size:12px;
    font-weight:800;
  }

  .pagination-wrap{
    display:flex; align-items:center; justify-content:space-between; gap:18px;
    flex-wrap:wrap;
    margin-top:18px;
  }
  .pager{
    display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  }
  .pager a,.pager span{
    min-width:42px; height:42px;
    display:inline-flex; align-items:center; justify-content:center;
    padding:0 14px;
    border-radius:14px;
    background:rgba(255,255,255,.86);
    border:1px solid rgba(124,58,237,.12);
    color:#33294f;
    font-weight:800;
    box-shadow:0 8px 18px rgba(24,18,52,.04);
  }
  .pager a:hover{
    border-color:rgba(124,58,237,.24);
    transform:translateY(-1px);
    box-shadow:0 14px 24px rgba(124,58,237,.08);
  }
  .pager .current{
    color:#fff;
    background:linear-gradient(135deg, var(--purple), var(--pink));
    border-color:transparent;
    box-shadow:0 14px 26px rgba(124,58,237,.22);
  }

  .price-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
    align-items:stretch;
  }
  .price-card{
    border-radius:30px;
    padding:24px;
    position:relative;
    overflow:hidden;
  }
  .price-card::before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:4px;
    background:linear-gradient(90deg, var(--purple), var(--pink), var(--cyan));
  }
  .price-card.recommend{
    transform:translateY(-8px);
    box-shadow:var(--shadow-lg);
    border-color:rgba(255,79,216,.22);
    background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(248,244,255,.92));
  }
  .price-card .topline{
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    margin-bottom:14px;
  }
  .price-card h3{
    margin:0;
    font-size:1.35rem;
    font-weight:900;
  }
  .price-badge{
    display:inline-flex;
    padding:7px 11px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    color:#4c3f78;
    background:rgba(124,58,237,.09);
  }
  .price{
    font-size:1.8rem;
    line-height:1.1;
    font-weight:900;
    color:#191326;
    margin:8px 0 10px;
  }
  .price small{
    font-size:.95rem;
    color:var(--muted);
    font-weight:700;
  }
  .price-desc{margin:0 0 16px; color:var(--muted)}
  .check-list{
    list-style:none;
    padding:0; margin:0 0 18px;
    display:grid; gap:10px;
  }
  .check-list li{
    position:relative;
    padding-left:24px;
    color:#302647;
  }
  .check-list li::before{
    content:"";
    position:absolute; left:0; top:.52em;
    width:10px; height:10px; border-radius:999px;
    background:linear-gradient(135deg, var(--purple), var(--pink));
    box-shadow:0 0 0 4px rgba(124,58,237,.10);
  }

  .final-cta{
    border-radius:32px;
    padding:28px;
    background:
      linear-gradient(135deg, rgba(17,16,38,.98), rgba(124,58,237,.92));
    color:#fff;
    position:relative;
    overflow:hidden;
  }
  .final-cta::after{
    content:"";
    position:absolute;
    inset:auto -10% -30% auto;
    width:260px; height:260px;
    background:radial-gradient(circle, rgba(255,255,255,.16), rgba(255,255,255,0) 65%);
    filter:blur(14px);
    pointer-events:none;
  }
  .final-cta h2{
    margin:0 0 10px;
    font-size:clamp(1.55rem, 3vw, 2.3rem);
    line-height:1.12;
    font-weight:900;
  }
  .final-cta p{
    margin:0;
    max-width:52rem;
    color:rgba(255,255,255,.88);
  }
  .final-cta .action-row{display:flex; gap:12px; flex-wrap:wrap; margin-top:18px}

  .faq-list{
    display:grid;
    gap:14px;
  }
  details.faq-item{
    border-radius:22px;
    background:rgba(255,255,255,.9);
    border:1px solid rgba(124,58,237,.12);
    box-shadow:0 10px 24px rgba(29,17,68,.05);
    overflow:hidden;
  }
  details.faq-item[open]{
    border-color:rgba(124,58,237,.20);
    box-shadow:0 16px 28px rgba(124,58,237,.10);
  }
  .faq-item summary{
    list-style:none;
    cursor:pointer;
    padding:18px 20px;
    font-weight:800;
    color:#251d3d;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
  }
  .faq-item summary::-webkit-details-marker{display:none}
  .faq-item summary .arrow{
    width:12px; height:12px;
    border-right:2px solid var(--purple);
    border-bottom:2px solid var(--purple);
    transform:rotate(45deg);
    transition:transform .22s ease;
    flex:0 0 auto;
  }
  details[open] summary .arrow{transform:rotate(225deg)}
  .faq-body{
    padding:0 20px 18px;
    color:var(--muted);
  }

  .form-card{
    border-radius:32px;
    padding:24px;
    margin-top:18px;
  }
  .form-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:14px;
  }
  .form-field{display:flex; flex-direction:column; gap:8px}
  .form-field.full{grid-column:1 / -1}
  .form-field label{
    font-weight:800;
    color:#2a2240;
    font-size:14px;
  }
  .form-field input,
  .form-field select,
  .form-field textarea{
    width:100%;
    border-radius:16px;
    border:1px solid rgba(124,58,237,.16);
    background:rgba(255,255,255,.92);
    padding:13px 14px;
    color:#1e1730;
    outline:none;
    transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
  }
  .form-field textarea{min-height:122px; resize:vertical}
  .form-field input:focus,
  .form-field select:focus,
  .form-field textarea:focus{
    border-color:rgba(34,211,238,.8);
    box-shadow:0 0 0 4px rgba(34,211,238,.12);
    background:#fff;
  }
  .form-actions{
    display:flex; align-items:center; gap:12px; flex-wrap:wrap;
    margin-top:18px;
  }
  .form-tip{
    color:var(--muted);
    font-size:14px;
  }
  .toast{
    display:none;
    margin-top:14px;
    padding:12px 14px;
    border-radius:16px;
    background:rgba(34,197,94,.10);
    color:#166534;
    border:1px solid rgba(34,197,94,.18);
    font-weight:700;
  }
  .toast.show{display:block}

  .footer{
    position:relative;
    margin-top:50px;
    background:linear-gradient(180deg, #090816, #0d0b1f 100%);
    color:rgba(255,255,255,.88);
    overflow:hidden;
  }
  .footer-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr .8fr;
    gap:28px;
    align-items:start;
  }
  .footer h3{
    margin:0 0 14px;
    color:#fff;
    font-size:1rem;
    font-weight:900;
  }
  .footer p{margin:0;color:rgba(255,255,255,.7)}
  .footer-list{
    display:grid;
    gap:10px;
  }
  .footer-list a,.footer-list p{
    color:rgba(255,255,255,.76);
    font-size:14px;
  }
  .footer-list a:hover{color:#fff}
  .footer-note{
    margin-top:28px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.08);
    display:flex;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    color:rgba(255,255,255,.62);
    font-size:13px;
  }

  .reveal{
    animation:floatUp .7s ease both;
  }
  @keyframes floatUp{
    from{opacity:0; transform:translateY(12px)}
    to{opacity:1; transform:translateY(0)}
  }

  @media (max-width: 1024px){
    .panel-grid{grid-template-columns:1fr}
    .main-feature,.sidebar-stack{grid-column:auto}
    .sidebar-stack .side-card{position:relative; top:auto}
    .price-grid{grid-template-columns:1fr}
    .price-card.recommend{transform:none}
    .footer-grid{grid-template-columns:1fr 1fr}
  }
  @media (max-width: 768px){
    .container-max{width:min(100% - 24px, 1240px)}
    .section-gap{padding:54px 0}
    .hero-shell{padding-top:24px}
    .hero-mini-grid{grid-template-columns:1fr}
    .form-grid{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr}
    .final-cta{padding:22px}
    .compare-table thead th,.compare-table tbody td{padding:14px 12px}
  }
  @media (max-width: 640px){
    .header-inner{min-height:66px}
    .logo-text{font-size:.98rem}
    .hero-title{font-size:2rem}
    .btn{padding:11px 14px; border-radius:14px}
    .badge-row{margin-bottom:22px}
    .pagination-wrap{justify-content:flex-start}
  }

/* roulang page: category1 */
:root{
      --bg-dark:#080714;
      --bg-deep:#111026;
      --bg-soft:#f7f4ff;
      --bg-soft-2:#fff6fc;
      --card:#ffffff;
      --card-deep:rgba(17,16,38,.92);
      --text:#16112b;
      --muted:#645d77;
      --line:rgba(124,58,237,.14);
      --line-strong:rgba(124,58,237,.28);
      --purple:#7c3aed;
      --pink:#ff4fd8;
      --cyan:#22d3ee;
      --green:#19c37d;
      --radius-xl:28px;
      --radius-lg:22px;
      --radius-md:16px;
      --shadow-soft:0 16px 44px rgba(26,16,55,.10);
      --shadow-deep:0 24px 70px rgba(8,7,20,.34);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 15% 12%, rgba(124,58,237,.18), transparent 28%),
        radial-gradient(circle at 84% 10%, rgba(255,79,216,.14), transparent 26%),
        radial-gradient(circle at 52% 28%, rgba(34,211,238,.09), transparent 22%),
        linear-gradient(180deg, #070712 0%, #0f0d24 18%, #f7f4ff 19%, #f7f4ff 100%);
      min-height:100vh;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    ::selection{background:rgba(124,58,237,.22);color:#120e25}
    .container-max{max-width:1240px;margin:0 auto;padding-left:1rem;padding-right:1rem}
    .header-shell{
      position:sticky;top:0;z-index:60;
      background:rgba(8,7,20,.88);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(255,255,255,.06);
    }
    .header-shell::after{
      content:"";
      position:absolute;left:0;bottom:-1px;width:100%;height:1px;
      background:linear-gradient(90deg, transparent, var(--purple), var(--pink), var(--cyan), transparent);
      opacity:.95;
    }
    .logo-mark{
      width:38px;height:38px;display:inline-grid;place-items:center;position:relative;
      border-radius:13px;
      background:linear-gradient(135deg, rgba(124,58,237,.22), rgba(255,79,216,.18));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:0 0 0 1px rgba(124,58,237,.08), 0 12px 30px rgba(124,58,237,.18);
      flex:none;
    }
    .logo-mark::before{
      content:"◆";
      color:#fff;
      font-size:18px;
      text-shadow:0 0 16px rgba(255,255,255,.34), 0 0 18px rgba(255,79,216,.22);
      transform:translateY(-1px);
    }
    .logo-text{
      font-weight:900;
      letter-spacing:.02em;
      color:#fff;
      text-shadow:0 0 18px rgba(255,255,255,.04);
    }
    .nav-link{
      position:relative;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:.72rem .98rem;
      border-radius:999px;
      color:rgba(255,255,255,.78);
      font-size:.95rem;
      transition:all .22s ease;
      border:1px solid transparent;
      white-space:nowrap;
    }
    .nav-link:hover{
      color:#fff;
      background:rgba(255,255,255,.05);
      border-color:rgba(255,255,255,.06);
      transform:translateY(-1px);
    }
    .nav-link.active,
    .nav-link[aria-current="page"]{
      color:#fff;
      background:linear-gradient(135deg, rgba(124,58,237,.18), rgba(255,79,216,.12));
      border-color:rgba(124,58,237,.22);
      box-shadow:0 0 0 1px rgba(124,58,237,.08), 0 0 20px rgba(124,58,237,.16);
    }
    .nav-link.active::after,
    .nav-link[aria-current="page"]::after{
      content:"";
      position:absolute;left:22px;right:22px;bottom:6px;height:2px;border-radius:999px;
      background:linear-gradient(90deg,var(--purple),var(--pink),var(--cyan));
      box-shadow:0 0 12px rgba(124,58,237,.45);
    }
    .btn-grad{
      display:inline-flex;align-items:center;justify-content:center;gap:.45rem;
      border:0;
      color:#fff;
      padding:.9rem 1.2rem;
      border-radius:999px;
      background:linear-gradient(135deg, var(--purple), var(--pink));
      box-shadow:0 12px 28px rgba(124,58,237,.24), 0 0 24px rgba(255,79,216,.08);
      transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
      cursor:pointer;
      font-weight:700;
    }
    .btn-grad:hover{transform:translateY(-2px);filter:saturate(1.06);box-shadow:0 16px 32px rgba(124,58,237,.30), 0 0 28px rgba(255,79,216,.12)}
    .btn-ghost{
      display:inline-flex;align-items:center;justify-content:center;gap:.45rem;
      padding:.9rem 1.2rem;
      border-radius:999px;
      background:rgba(255,255,255,.06);
      color:#fff;
      border:1px solid rgba(34,211,238,.28);
      transition:all .2s ease;
      font-weight:700;
    }
    .btn-ghost:hover{
      transform:translateY(-2px);
      border-color:rgba(255,79,216,.38);
      background:rgba(255,255,255,.09);
      box-shadow:0 0 0 1px rgba(255,79,216,.09), inset 0 0 12px rgba(255,79,216,.08);
    }
    .badge-chip{
      display:inline-flex;align-items:center;gap:.42rem;
      padding:.5rem .8rem;
      border-radius:999px;
      background:rgba(255,255,255,.08);
      color:#fff;
      border:1px solid rgba(255,255,255,.09);
      font-size:.82rem;
      line-height:1;
      box-shadow:0 6px 24px rgba(8,7,20,.16);
      backdrop-filter:blur(10px);
    }
    .badge-chip strong{color:#fff}
    .section-kicker{
      display:inline-flex;align-items:center;gap:.55rem;
      color:var(--purple);
      font-weight:800;
      letter-spacing:.02em;
      font-size:.92rem;
    }
    .section-kicker::before{
      content:"";
      width:24px;height:2px;border-radius:999px;
      background:linear-gradient(90deg,var(--purple),var(--pink),var(--cyan));
      box-shadow:0 0 12px rgba(124,58,237,.28);
    }
    .section-heading{
      font-size:clamp(1.65rem, 1.1rem + 1.6vw, 2.7rem);
      line-height:1.12;
      font-weight:900;
      letter-spacing:-.02em;
      color:#16112b;
    }
    .section-sub{
      color:var(--muted);
      line-height:1.85;
      font-size:1rem;
    }
    .dark-card{
      background:linear-gradient(180deg, rgba(17,16,38,.98), rgba(8,7,20,.92));
      color:#fff;
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-deep);
      border-radius:var(--radius-xl);
    }
    .glass-card{
      background:rgba(255,255,255,.82);
      border:1px solid rgba(124,58,237,.12);
      box-shadow:var(--shadow-soft);
      border-radius:var(--radius-xl);
      backdrop-filter:blur(12px);
    }
    .accent-top{
      height:4px;
      border-radius:999px;
      background:linear-gradient(90deg,var(--purple),var(--pink),var(--cyan));
    }
    .hero-shell{
      position:relative;
      overflow:hidden;
      padding-top:4.8rem;
      padding-bottom:2.5rem;
    }
    .hero-shell::before,
    .hero-shell::after{
      content:"";
      position:absolute;
      inset:auto;
      pointer-events:none;
    }
    .hero-shell::before{
      width:420px;height:420px;left:-110px;top:26px;
      background:radial-gradient(circle, rgba(124,58,237,.24), transparent 68%);
      filter:blur(8px);
      animation:floaty 10s ease-in-out infinite;
    }
    .hero-shell::after{
      width:360px;height:360px;right:-120px;top:54px;
      background:radial-gradient(circle, rgba(255,79,216,.18), transparent 68%);
      filter:blur(8px);
      animation:floaty 12s ease-in-out infinite reverse;
    }
    .hero-grid{
      display:grid;
      gap:1.4rem;
      align-items:center;
    }
    .hero-title{
      font-size:clamp(2.2rem, 1.15rem + 3vw, 4.8rem);
      line-height:1.05;
      font-weight:900;
      letter-spacing:-.04em;
      color:#fff;
      text-shadow:0 0 18px rgba(124,58,237,.16);
    }
    .hero-title .gradient-text{
      background:linear-gradient(90deg,#fff 0%, #ddd6fe 18%, #ffb3ea 50%, #91f0ff 100%);
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
    }
    .hero-copy{
      color:rgba(255,255,255,.82);
      line-height:1.8;
      font-size:1.02rem;
      max-width:44rem;
    }
    .hero-form{
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.1);
      border-radius:24px;
      padding:.95rem;
      box-shadow:0 0 0 1px rgba(124,58,237,.08), inset 0 0 18px rgba(255,255,255,.03);
    }
    .hero-input,
    .field-input,
    .field-select,
    .field-textarea{
      width:100%;
      border-radius:16px;
      border:1px solid rgba(124,58,237,.15);
      background:rgba(255,255,255,.94);
      color:var(--text);
      padding:.92rem 1rem;
      outline:none;
      transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease, background .2s ease;
    }
    .hero-input::placeholder,
    .field-input::placeholder,
    .field-textarea::placeholder{color:#8a8299}
    .hero-input:focus,
    .field-input:focus,
    .field-select:focus,
    .field-textarea:focus{
      border-color:rgba(34,211,238,.82);
      box-shadow:0 0 0 4px rgba(34,211,238,.13), 0 0 0 1px rgba(34,211,238,.18) inset;
      background:#fff;
    }
    .hero-panel{
      position:relative;
      min-height:360px;
      border-radius:32px;
      padding:1.15rem;
      overflow:hidden;
      background:
        radial-gradient(circle at 20% 20%, rgba(255,79,216,.16), transparent 28%),
        radial-gradient(circle at 82% 20%, rgba(34,211,238,.12), transparent 24%),
        linear-gradient(160deg, rgba(17,16,38,.98), rgba(8,7,20,.95));
      border:1px solid rgba(255,255,255,.08);
      box-shadow:0 24px 60px rgba(8,7,20,.36);
    }
    .hero-panel::before{
      content:"";
      position:absolute;inset:0;
      background:
        linear-gradient(115deg, transparent 0%, rgba(255,255,255,.04) 17%, transparent 34%),
        linear-gradient(0deg, rgba(255,255,255,.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
      background-size:100% 100%, 22px 22px, 22px 22px;
      opacity:.22;
      pointer-events:none;
      mask-image:linear-gradient(180deg, rgba(0,0,0,.88), rgba(0,0,0,.72), transparent 100%);
    }
    .hero-main-card{
      position:relative;
      z-index:1;
      border-radius:28px;
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.1);
      padding:1.15rem;
      color:#fff;
      box-shadow:inset 0 0 26px rgba(255,255,255,.03), 0 10px 30px rgba(0,0,0,.2);
    }
    .hero-stat{
      display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;
      padding:.88rem 1rem;border-radius:20px;
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.08);
      margin-bottom:.75rem;
    }
    .hero-stat strong{font-size:1.25rem;font-weight:900;color:#fff}
    .hero-stat span{color:rgba(255,255,255,.72);font-size:.88rem}
    .floating-mini{
      position:absolute;z-index:2;
      border-radius:18px;
      padding:.72rem .9rem;
      background:rgba(255,255,255,.12);
      border:1px solid rgba(255,255,255,.1);
      color:#fff;
      box-shadow:0 16px 36px rgba(8,7,20,.26), inset 0 0 14px rgba(255,255,255,.04);
      backdrop-filter:blur(12px);
      animation:floaty 7s ease-in-out infinite;
    }
    .floating-mini:nth-child(2){animation-delay:-2s}
    .floating-mini:nth-child(3){animation-delay:-4s}
    .filter-panel{
      position:sticky;top:96px;
      border-radius:28px;
      background:rgba(255,255,255,.78);
      border:1px solid rgba(124,58,237,.12);
      box-shadow:var(--shadow-soft);
      backdrop-filter:blur(12px);
      overflow:hidden;
    }
    .filter-head{
      padding:1rem 1.1rem;
      background:linear-gradient(135deg, rgba(124,58,237,.08), rgba(255,79,216,.08));
      border-bottom:1px solid rgba(124,58,237,.12);
    }
    .filter-pill{
      display:inline-flex;align-items:center;justify-content:center;
      padding:.48rem .8rem;
      border-radius:999px;
      background:#fff;
      border:1px solid rgba(124,58,237,.12);
      color:#51496a;
      font-size:.88rem;
      transition:all .2s ease;
      box-shadow:0 8px 20px rgba(26,16,55,.04);
    }
    .filter-pill:hover{transform:translateY(-1px);border-color:rgba(255,79,216,.22);color:#2c2343}
    .filter-pill.active{
      color:#fff;
      border-color:transparent;
      background:linear-gradient(135deg, var(--purple), var(--pink));
      box-shadow:0 10px 22px rgba(124,58,237,.22), 0 0 18px rgba(255,79,216,.14);
    }
    .grid-card{
      position:relative;
      overflow:hidden;
      background:#fff;
      border-radius:28px;
      border:1px solid rgba(124,58,237,.12);
      box-shadow:var(--shadow-soft);
      transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }
    .grid-card:hover{
      transform:translateY(-4px);
      box-shadow:0 18px 44px rgba(26,16,55,.14);
      border-color:rgba(255,79,216,.24);
    }
    .grid-card .card-tag{
      display:inline-flex;align-items:center;gap:.35rem;
      border-radius:999px;
      padding:.34rem .68rem;
      font-size:.77rem;
      font-weight:700;
      background:rgba(124,58,237,.08);
      color:var(--purple);
      border:1px solid rgba(124,58,237,.12);
    }
    .grid-card .meta-line{
      display:flex;flex-wrap:wrap;gap:.5rem;
    }
    .grid-card .mini-kpi{
      display:inline-flex;align-items:center;gap:.35rem;
      font-size:.8rem;color:#675f81;
      background:#f7f4ff;
      border:1px solid rgba(124,58,237,.08);
      padding:.34rem .58rem;border-radius:999px;
    }
    .grid-card .cta-link{
      display:inline-flex;align-items:center;gap:.35rem;
      color:var(--purple);
      font-weight:800;
      transition:color .18s ease, transform .18s ease;
    }
    .grid-card .cta-link:hover{color:var(--pink);transform:translateX(2px)}
    .feature-line{
      display:flex;
      gap:.8rem;
      align-items:flex-start;
      padding:1rem 1.1rem;
      border-radius:22px;
      background:rgba(255,255,255,.76);
      border:1px solid rgba(124,58,237,.12);
    }
    .feature-dot{
      width:40px;height:40px;border-radius:14px;flex:none;
      background:linear-gradient(135deg, rgba(124,58,237,.14), rgba(255,79,216,.12));
      border:1px solid rgba(124,58,237,.16);
      display:grid;place-items:center;
      color:var(--purple);
      font-weight:900;
      box-shadow:0 10px 24px rgba(124,58,237,.12);
    }
    .price-card{
      position:relative;
      background:#fff;
      border-radius:30px;
      border:1px solid rgba(124,58,237,.12);
      box-shadow:var(--shadow-soft);
      overflow:hidden;
      transition:transform .22s ease, box-shadow .22s ease;
    }
    .price-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(26,16,55,.14)}
    .price-card.recommended{
      border-color:rgba(124,58,237,.28);
      box-shadow:0 18px 46px rgba(124,58,237,.16), 0 0 0 1px rgba(255,79,216,.06);
      transform:translateY(-8px);
    }
    .price-badge{
      display:inline-flex;align-items:center;
      padding:.38rem .72rem;border-radius:999px;
      background:rgba(124,58,237,.08);
      color:var(--purple);
      font-weight:800;font-size:.82rem;
      border:1px solid rgba(124,58,237,.14);
    }
    .price-line{
      display:flex;align-items:baseline;gap:.4rem;margin:.9rem 0 1rem;
    }
    .price-line strong{
      font-size:2rem;font-weight:900;color:#1b1430;line-height:1;
    }
    .price-line span{color:var(--muted);font-size:.92rem}
    .table-shell{
      overflow:hidden;border-radius:28px;
      border:1px solid rgba(124,58,237,.12);
      box-shadow:var(--shadow-soft);
      background:#fff;
    }
    .table-shell table{width:100%;border-collapse:collapse}
    .table-shell th{
      background:linear-gradient(135deg, rgba(17,16,38,.98), rgba(26,20,58,.98));
      color:#fff;font-weight:800;text-align:left;padding:1rem 1rem;
    }
    .table-shell td{
      padding:.95rem 1rem;
      border-top:1px solid rgba(124,58,237,.09);
      color:#3b3450;
      vertical-align:top;
    }
    .faq-item{
      background:#fff;
      border-radius:22px;
      border:1px solid rgba(124,58,237,.12);
      box-shadow:var(--shadow-soft);
      overflow:hidden;
    }
    .faq-trigger{
      width:100%;
      display:flex;align-items:center;justify-content:space-between;gap:1rem;
      padding:1.05rem 1.1rem;
      background:transparent;
      border:0;
      text-align:left;
      cursor:pointer;
      color:#1b1430;
      font-weight:800;
    }
    .faq-trigger span:first-child{line-height:1.5}
    .faq-icon{
      width:32px;height:32px;border-radius:999px;
      display:grid;place-items:center;
      background:linear-gradient(135deg, rgba(124,58,237,.12), rgba(255,79,216,.1));
      color:var(--purple);
      flex:none;
      transition:transform .2s ease, background .2s ease;
    }
    .faq-item.open .faq-icon{transform:rotate(45deg);background:linear-gradient(135deg, rgba(124,58,237,.18), rgba(255,79,216,.14))}
    .faq-answer{
      display:none;
      padding:0 1.1rem 1.1rem;
      color:var(--muted);
      line-height:1.85;
      border-top:1px solid rgba(124,58,237,.08);
      background:linear-gradient(180deg, rgba(247,244,255,.28), rgba(255,255,255,.88));
    }
    .faq-item.open .faq-answer{display:block}
    .cta-shell{
      border-radius:32px;
      background:
        radial-gradient(circle at 20% 15%, rgba(124,58,237,.22), transparent 28%),
        radial-gradient(circle at 84% 18%, rgba(255,79,216,.18), transparent 24%),
        linear-gradient(160deg, rgba(17,16,38,.98), rgba(8,7,20,.95));
      color:#fff;
      border:1px solid rgba(255,255,255,.08);
      box-shadow:var(--shadow-deep);
      overflow:hidden;
      position:relative;
    }
    .cta-shell::before{
      content:"";
      position:absolute;inset:0;
      background:
        linear-gradient(120deg, transparent 0%, rgba(255,255,255,.05) 18%, transparent 35%),
        linear-gradient(0deg, rgba(255,255,255,.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
      background-size:100% 100%, 24px 24px, 24px 24px;
      opacity:.18;
      pointer-events:none;
      mask-image:linear-gradient(180deg, rgba(0,0,0,.82), transparent 95%);
    }
    .field-label{
      display:block;
      font-size:.9rem;
      font-weight:700;
      color:rgba(255,255,255,.82);
      margin-bottom:.45rem;
    }
    .field-input,
    .field-select,
    .field-textarea{
      background:rgba(255,255,255,.94);
      border-color:rgba(255,255,255,.12);
      border-radius:16px;
    }
    .field-textarea{min-height:112px;resize:vertical}
    .footer{
      position:relative;
      background:var(--bg-dark);
      color:rgba(255,255,255,.84);
      border-top:1px solid rgba(255,255,255,.06);
      margin-top:2rem;
    }
    .footer::before{
      content:"";
      position:absolute;left:0;top:0;width:100%;height:1px;
      background:linear-gradient(90deg, transparent, var(--purple), var(--pink), var(--cyan), transparent);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.45fr .9fr .95fr;
      gap:2rem;
      align-items:start;
    }
    .footer h3{
      color:#fff;
      font-weight:800;
      font-size:1rem;
      margin-bottom:1rem;
    }
    .footer p{line-height:1.75;color:rgba(255,255,255,.72)}
    .footer-list a,
    .footer-list p{
      display:block;
      padding:.34rem 0;
      color:rgba(255,255,255,.74);
      transition:color .18s ease, transform .18s ease;
    }
    .footer-list a:hover{color:#fff;transform:translateX(2px)}
    .footer-note{
      margin-top:1.7rem;
      padding-top:1rem;
      border-top:1px solid rgba(255,255,255,.08);
      display:flex;
      gap:1rem;
      justify-content:space-between;
      flex-wrap:wrap;
      color:rgba(255,255,255,.58);
      font-size:.92rem;
    }
    .mobile-menu{
      background:rgba(8,7,20,.98);
      border-top:1px solid rgba(255,255,255,.08);
      box-shadow:0 18px 36px rgba(0,0,0,.32);
    }
    .mobile-menu a{
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:.95rem 0;
      border-bottom:1px solid rgba(255,255,255,.06);
      color:rgba(255,255,255,.86);
    }
    .mobile-menu a:last-child{border-bottom:0}
    .mobile-menu a.active{color:#fff}
    .mobile-menu a.active span{
      color:#fff;
      background:linear-gradient(135deg, rgba(124,58,237,.2), rgba(255,79,216,.12));
      border-color:rgba(124,58,237,.24);
    }
    .mobile-menu a span{
      display:inline-flex;align-items:center;justify-content:center;
      width:1.8rem;height:1.8rem;border-radius:999px;
      border:1px solid rgba(255,255,255,.08);
      color:rgba(255,255,255,.64);
    }
    .subtle-glow{
      box-shadow:0 0 0 1px rgba(124,58,237,.08), 0 12px 26px rgba(124,58,237,.08);
    }
    .thin-divider{
      height:1px;
      background:linear-gradient(90deg, transparent, rgba(124,58,237,.14), rgba(255,79,216,.16), rgba(34,211,238,.14), transparent);
    }
    .rounded-panel{
      border-radius:28px;
      overflow:hidden;
    }
    .mini-tag{
      display:inline-flex;align-items:center;gap:.3rem;
      padding:.35rem .6rem;border-radius:999px;
      font-size:.78rem;font-weight:700;
      background:rgba(124,58,237,.08);
      color:var(--purple);
      border:1px solid rgba(124,58,237,.12);
    }
    .mini-tag.dark{
      background:rgba(255,255,255,.08);
      color:#fff;
      border-color:rgba(255,255,255,.1);
    }
    @keyframes floaty{
      0%,100%{transform:translateY(0px)}
      50%{transform:translateY(-10px)}
    }
    @media (min-width:1024px){
      .hero-grid{grid-template-columns:1.08fr .92fr}
    }
    @media (max-width:1023px){
      .footer-grid{grid-template-columns:1fr 1fr}
      .filter-panel{position:static}
    }
    @media (max-width:767px){
      .hero-shell{padding-top:4.2rem}
      .footer-grid{grid-template-columns:1fr}
      .hero-panel{min-height:auto}
      .hero-title{font-size:clamp(2.1rem, 9vw, 3.25rem)}
      .section-heading{font-size:clamp(1.5rem, 6vw, 2.2rem)}
      .price-card.recommended{transform:none}
    }
