/* roulang page: index */
:root{
      --bg:#08110d;
      --bg2:#0c1712;
      --panel:#111d16;
      --panel-2:#14241c;
      --panel-3:#182b22;
      --line:rgba(184,255,138,.16);
      --line-2:rgba(180,124,255,.24);
      --text:#dde8df;
      --muted:#9fb3a7;
      --soft:#75877d;
      --purple:#b47cff;
      --purple-2:#9b5cff;
      --green:#7dff8a;
      --green-2:#b8ff5a;
      --orange:#ffb45e;
      --shadow:0 20px 60px rgba(0,0,0,.38);
      --shadow-soft:0 12px 34px rgba(0,0,0,.24);
      --radius:24px;
      --radius-sm:18px;
      --radius-xs:14px;
      --container:1180px;
      --gap:24px;
      --header-h:82px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      min-height:100vh;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      line-height:1.75;
      color:var(--text);
      background:
        linear-gradient(180deg,rgba(125,255,138,.05),transparent 22%),
        linear-gradient(135deg,rgba(155,92,255,.06),transparent 40%),
        linear-gradient(180deg,#07110d 0%,#091510 32%,#0b1712 100%);
      letter-spacing:0;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background:
        linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px) 0 0/72px 72px,
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px) 0 0/72px 72px;
      mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 92%);
      opacity:.2;
      z-index:-1;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,textarea,select{font:inherit}
    button{cursor:pointer}
    ::selection{background:rgba(155,92,255,.3);color:#fff}
    .container{
      width:min(var(--container),calc(100% - 64px));
      margin:0 auto;
    }
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      backdrop-filter:saturate(150%) blur(14px);
      background:rgba(8,17,13,.88);
      border-bottom:1px solid rgba(255,255,255,.06);
    }
    .header-row{
      min-height:var(--header-h);
      display:flex;
      align-items:center;
      gap:18px;
    }
    .brand{
      display:flex;
      align-items:center;
      gap:12px;
      flex:0 0 auto;
      font-weight:800;
      letter-spacing:0;
      min-width:max-content;
    }
    .brand-mark{
      width:38px;
      height:38px;
      border-radius:14px;
      display:grid;
      place-items:center;
      background:linear-gradient(135deg,rgba(155,92,255,.24),rgba(125,255,138,.18));
      border:1px solid rgba(184,255,138,.2);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    }
    .brand-mark svg{width:21px;height:21px}
    .brand-text{
      display:flex;
      flex-direction:column;
      gap:2px;
      line-height:1.15;
    }
    .brand-text strong{font-size:16px}
    .brand-text span{font-size:12px;color:var(--muted);font-weight:600}
    .nav-wrap{
      flex:1 1 auto;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      min-width:0;
    }
    .nav-links{
      display:flex;
      align-items:center;
      gap:8px;
      flex-wrap:wrap;
      min-width:0;
    }
    .nav-links a,
    .nav-links button{
      border:1px solid transparent;
      background:transparent;
      color:var(--muted);
      height:42px;
      padding:0 15px;
      border-radius:999px;
      display:inline-flex;
      align-items:center;
      gap:8px;
      transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;
      white-space:nowrap;
    }
    .nav-links a:hover,
    .nav-links button:hover{
      color:var(--text);
      border-color:rgba(184,255,138,.18);
      background:rgba(255,255,255,.03);
      transform:translateY(-1px);
    }
    .nav-links a.active{
      color:#eaf6ee;
      background:linear-gradient(135deg,rgba(155,92,255,.15),rgba(125,255,138,.1));
      border-color:rgba(180,124,255,.28);
      box-shadow:0 0 0 1px rgba(125,255,138,.08) inset;
    }
    .nav-cta{
      display:flex;
      align-items:center;
      gap:10px;
      flex:0 0 auto;
    }
    .btn{
      border:none;
      outline:none;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:46px;
      padding:0 18px;
      border-radius:999px;
      transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease;
      letter-spacing:0;
      font-weight:700;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-2px)}
    .btn:focus-visible,
    .nav-links a:focus-visible,
    .nav-links button:focus-visible,
    input:focus-visible,
    textarea:focus-visible{
      outline:2px solid rgba(125,255,138,.56);
      outline-offset:2px;
    }
    .btn-primary{
      color:#07110d;
      background:linear-gradient(135deg,var(--purple-2),var(--green));
      box-shadow:0 18px 38px rgba(155,92,255,.18),0 10px 30px rgba(125,255,138,.12);
    }
    .btn-primary:hover{box-shadow:0 18px 42px rgba(155,92,255,.24),0 12px 34px rgba(125,255,138,.18)}
    .btn-secondary{
      color:var(--text);
      background:rgba(255,255,255,.02);
      border:1px solid rgba(180,124,255,.28);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
    }
    .btn-secondary:hover{
      background:rgba(180,124,255,.08);
      border-color:rgba(125,255,138,.26);
    }
    .btn svg{width:16px;height:16px;flex:0 0 auto}
    .menu-toggle{
      display:none;
      width:44px;height:44px;
      border-radius:14px;
      background:rgba(255,255,255,.03);
      border:1px solid rgba(255,255,255,.08);
      color:var(--text);
      align-items:center;
      justify-content:center;
    }
    .menu-toggle svg{width:20px;height:20px}
    .mobile-nav{
      display:none;
      padding:0 0 14px;
    }
    .mobile-nav a{
      display:flex;
      align-items:center;
      justify-content:space-between;
      min-height:48px;
      padding:0 14px;
      margin-top:8px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.06);
      background:rgba(255,255,255,.02);
      color:var(--muted);
    }
    .mobile-nav a.active{
      color:#eef7f0;
      border-color:rgba(180,124,255,.22);
      background:linear-gradient(135deg,rgba(155,92,255,.12),rgba(125,255,138,.08));
    }
    main{
      padding-bottom:110px;
    }
    .hero{
      padding:28px 0 22px;
    }
    .hero-shell{
      position:relative;
      overflow:hidden;
      border-radius:34px;
      border:1px solid rgba(184,255,138,.14);
      background:
        radial-gradient(1000px 400px at 15% 0%,rgba(155,92,255,.18),transparent 55%),
        radial-gradient(900px 360px at 88% 18%,rgba(125,255,138,.12),transparent 55%),
        linear-gradient(180deg,rgba(17,29,22,.96),rgba(10,18,14,.98));
      box-shadow:var(--shadow);
      padding:34px;
    }
    .hero-shell:after{
      content:"";
      position:absolute;
      inset:auto 0 0 0;
      height:1px;
      background:linear-gradient(90deg,transparent,rgba(184,255,138,.26),rgba(180,124,255,.26),transparent);
    }
    .hero-grid{
      position:relative;
      display:grid;
      grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
      gap:28px;
      align-items:stretch;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border-radius:999px;
      background:rgba(255,255,255,.03);
      border:1px solid rgba(184,255,138,.16);
      color:#d9f2dd;
      font-size:13px;
      font-weight:700;
      margin-bottom:16px;
    }
    .eyebrow .dot{
      width:8px;height:8px;border-radius:999px;background:var(--green);box-shadow:0 0 0 4px rgba(125,255,138,.12);
    }
    h1{
      margin:0;
      font-size:clamp(34px,5vw,62px);
      line-height:1.12;
      letter-spacing:0;
      max-width:11.5ch;
    }
    .hero-copy{
      margin:16px 0 22px;
      max-width:58ch;
      color:var(--muted);
      font-size:17px;
      line-height:1.82;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin:0 0 18px;
    }
    .trust-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .tag{
      display:inline-flex;
      align-items:center;
      gap:8px;
      min-height:34px;
      padding:0 12px;
      border-radius:999px;
      background:rgba(255,255,255,.03);
      border:1px solid rgba(255,255,255,.08);
      color:#d8e8dd;
      font-size:13px;
      font-weight:600;
    }
    .tag .mini{
      width:8px;height:8px;border-radius:99px;background:var(--green);
      box-shadow:0 0 0 4px rgba(125,255,138,.12);
    }
    .hero-form{
      display:grid;
      gap:12px;
      margin-top:24px;
      padding:18px;
      border-radius:28px;
      border:1px solid rgba(255,255,255,.07);
      background:rgba(0,0,0,.12);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
    }
    .form-title{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin-bottom:2px;
    }
    .form-title strong{
      font-size:15px;
    }
    .form-title span{
      color:var(--soft);
      font-size:12px;
    }
    .form-grid{
      display:grid;
      grid-template-columns:1.15fr .85fr auto;
      gap:10px;
    }
    .field{
      min-width:0;
      height:52px;
      border-radius:16px;
      border:1px solid rgba(184,255,138,.15);
      background:rgba(8,17,13,.72);
      color:var(--text);
      padding:0 14px;
      outline:none;
      transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
    }
    .field::placeholder{color:#6f8178}
    .field:focus{
      border-color:rgba(125,255,138,.44);
      box-shadow:0 0 0 4px rgba(125,255,138,.08);
      background:rgba(8,17,13,.88);
    }
    .hero-panel{
      display:grid;
      gap:14px;
      align-content:stretch;
    }
    .panel{
      border-radius:28px;
      background:linear-gradient(180deg,rgba(20,36,28,.98),rgba(15,26,20,.98));
      border:1px solid rgba(184,255,138,.14);
      box-shadow:var(--shadow-soft);
    }
    .panel-inner{
      padding:20px;
    }
    .hero-visual{
      position:relative;
      overflow:hidden;
      min-height:100%;
      background:
        linear-gradient(180deg,rgba(255,255,255,.04),transparent 20%),
        linear-gradient(135deg,rgba(180,124,255,.12),rgba(125,255,138,.08)),
        linear-gradient(180deg,rgba(14,26,20,.98),rgba(10,19,15,.98));
    }
    .hero-visual .visual-title{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin-bottom:14px;
    }
    .pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 10px;
      border-radius:999px;
      background:rgba(255,255,255,.03);
      border:1px solid rgba(180,124,255,.18);
      color:#e3d8ff;
      font-size:12px;
      font-weight:700;
    }
    .score{
      font-variant-numeric:tabular-nums;
      font-size:18px;
      font-weight:800;
      color:#f2fff3;
    }
    .mini-board{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:12px;
      margin:14px 0 0;
    }
    .mini-stat{
      padding:14px;
      border-radius:18px;
      background:rgba(8,17,13,.54);
      border:1px solid rgba(255,255,255,.06);
    }
    .mini-stat .label{
      color:var(--soft);
      font-size:12px;
      margin-bottom:8px;
    }
    .mini-stat .num{
      font-size:26px;
      line-height:1.1;
      font-weight:800;
      color:#eef7f0;
      margin-bottom:8px;
    }
    .mini-stat .bar{
      height:6px;
      border-radius:999px;
      background:rgba(255,255,255,.06);
      overflow:hidden;
    }
    .mini-stat .bar span{
      display:block;
      height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg,var(--purple),var(--green));
    }
    .signal-list{
      display:grid;
      gap:10px;
      margin-top:14px;
    }
    .signal{
      display:flex;
      align-items:flex-start;
      gap:10px;
      padding:12px 13px;
      border-radius:16px;
      background:rgba(255,255,255,.03);
      border:1px solid rgba(255,255,255,.06);
    }
    .signal svg{
      width:18px;height:18px;flex:0 0 auto;margin-top:2px;color:var(--green);
    }
    .signal strong{
      display:block;
      font-size:13px;
      margin-bottom:2px;
    }
    .signal span{
      display:block;
      color:var(--muted);
      font-size:13px;
      line-height:1.6;
    }
    .section{
      padding:26px 0;
    }
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:18px;
      margin-bottom:18px;
    }
    .section-head h2{
      margin:0;
      font-size:clamp(24px,3vw,36px);
      line-height:1.18;
      letter-spacing:0;
    }
    .section-head p{
      margin:0;
      max-width:56ch;
      color:var(--muted);
      line-height:1.8;
      font-size:15px;
    }
    .step-grid{
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:18px;
    }
    .step-card{
      position:relative;
      overflow:hidden;
      padding:22px;
      border-radius:26px;
      background:
        linear-gradient(180deg,rgba(255,255,255,.04),transparent 24%),
        linear-gradient(180deg,rgba(18,30,24,.98),rgba(13,22,17,.98));
      border:1px solid rgba(184,255,138,.12);
      box-shadow:var(--shadow-soft);
      transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
    }
    .step-card:hover{
      transform:translateY(-2px);
      border-color:rgba(125,255,138,.24);
      box-shadow:0 18px 48px rgba(0,0,0,.34),0 0 0 1px rgba(180,124,255,.08) inset;
    }
    .step-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-bottom:16px;
    }
    .badge{
      display:inline-flex;
      align-items:center;
      gap:8px;
      min-height:30px;
      padding:0 10px;
      border-radius:999px;
      border:1px solid rgba(180,124,255,.22);
      background:rgba(155,92,255,.08);
      color:#ebe2ff;
      font-size:12px;
      font-weight:700;
    }
    .badge.neutral{
      background:rgba(255,255,255,.03);
      border-color:rgba(255,255,255,.08);
      color:var(--muted);
    }
    .step-no{
      width:42px;height:42px;border-radius:14px;
      display:grid;place-items:center;
      font-weight:800;
      font-size:13px;
      color:#08110d;
      background:linear-gradient(135deg,var(--purple),var(--green));
      box-shadow:0 12px 24px rgba(125,255,138,.12);
      flex:0 0 auto;
    }
    .step-card h3{
      margin:0 0 10px;
      font-size:20px;
      line-height:1.25;
    }
    .step-card p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.78;
    }
    .progress{
      margin-top:18px;
      height:8px;
      border-radius:999px;
      background:rgba(255,255,255,.05);
      overflow:hidden;
    }
    .progress span{
      display:block;
      height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg,var(--purple),var(--green));
    }
    .news-grid{
      display:grid;
      grid-template-columns:1.25fr .75fr;
      gap:18px;
    }
    .news-list{
      display:grid;
      gap:12px;
    }
    .news-item{
      display:flex;
      align-items:flex-start;
      gap:12px;
      padding:16px;
      border-radius:22px;
      background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.02));
      border:1px solid rgba(255,255,255,.06);
      transition:transform .2s ease,border-color .2s ease,background .2s ease;
    }
    .news-item:hover{
      transform:translateY(-2px);
      border-color:rgba(125,255,138,.18);
      background:rgba(255,255,255,.04);
    }
    .news-item .index{
      width:32px;height:32px;border-radius:11px;
      display:grid;place-items:center;
      background:rgba(125,255,138,.12);
      color:#dfffe3;
      font-weight:800;
      font-size:13px;
      flex:0 0 auto;
    }
    .news-item strong{
      display:block;
      margin-bottom:4px;
      font-size:15px;
      line-height:1.4;
    }
    .news-item p{
      margin:0;
      color:var(--muted);
      font-size:13px;
      line-height:1.7;
    }
    .sidebar-box{
      padding:20px;
      border-radius:26px;
      border:1px solid rgba(180,124,255,.16);
      background:
        linear-gradient(180deg,rgba(155,92,255,.08),transparent 26%),
        linear-gradient(180deg,rgba(18,30,24,.98),rgba(12,20,16,.98));
    }
    .sidebar-box h3{
      margin:0 0 12px;
      font-size:18px;
      line-height:1.25;
    }
    .checklist{
      display:grid;
      gap:10px;
      margin:0;
      padding:0;
      list-style:none;
    }
    .checklist li{
      display:flex;
      gap:10px;
      align-items:flex-start;
      color:var(--muted);
      font-size:14px;
      line-height:1.7;
    }
    .checklist svg{
      width:18px;height:18px;flex:0 0 auto;color:var(--green);margin-top:2px;
    }
    .proof-grid{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:18px;
    }
    .metric-card{
      padding:20px;
      border-radius:24px;
      background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.02));
      border:1px solid rgba(184,255,138,.12);
      box-shadow:var(--shadow-soft);
      min-height:100%;
    }
    .metric-card .kicker{
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:6px 10px;
      border-radius:999px;
      background:rgba(255,255,255,.03);
      border:1px solid rgba(255,255,255,.07);
      color:var(--muted);
      font-size:12px;
      font-weight:700;
      margin-bottom:14px;
    }
    .metric-card .value{
      font-size:40px;
      line-height:1;
      font-weight:800;
      margin-bottom:10px;
      background:linear-gradient(135deg,#f7fff8, #cdfbd2 40%, #efe0ff 80%);
      -webkit-background-clip:text;
      background-clip:text;
      color:transparent;
    }
    .metric-card p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.7;
    }
    .case-card{
      padding:20px;
      border-radius:24px;
      background:linear-gradient(180deg,rgba(24,42,34,.98),rgba(13,22,17,.98));
      border:1px solid rgba(180,124,255,.18);
      box-shadow:var(--shadow-soft);
    }
    .case-card .flag{
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-bottom:14px;
      color:#efe2ff;
      font-size:12px;
      font-weight:800;
      letter-spacing:0;
    }
    .case-card .flag i{
      width:8px;height:8px;border-radius:999px;background:var(--purple);
      box-shadow:0 0 0 4px rgba(155,92,255,.12);
      display:inline-block;
    }
    .case-card h3{
      margin:0 0 10px;
      font-size:18px;
      line-height:1.3;
    }
    .case-card p{
      margin:0 0 12px;
      color:var(--muted);
      font-size:14px;
      line-height:1.75;
    }
    .mini-list{
      display:grid;
      gap:8px;
      margin:0;
      padding:0;
      list-style:none;
    }
    .mini-list li{
      display:flex;
      align-items:flex-start;
      gap:8px;
      color:#cfddd3;
      font-size:13px;
      line-height:1.65;
    }
    .mini-list li:before{
      content:"";
      width:6px;height:6px;border-radius:999px;background:var(--green);
      margin-top:8px;flex:0 0 auto;
      box-shadow:0 0 0 4px rgba(125,255,138,.1);
    }
    .topic-grid{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:18px;
    }
    .topic-card{
      padding:24px;
      border-radius:28px;
      background:
        linear-gradient(135deg,rgba(180,124,255,.1),transparent 36%),
        linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.02));
      border:1px solid rgba(255,255,255,.07);
      box-shadow:var(--shadow-soft);
      display:grid;
      gap:14px;
    }
    .topic-card .topline{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
    }
    .topic-card h3{
      margin:0;
      font-size:20px;
      line-height:1.25;
    }
    .topic-card p{
      margin:0;
      color:var(--muted);
      line-height:1.78;
      font-size:14px;
    }
    .inline-actions{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .link-chip{
      display:inline-flex;
      align-items:center;
      gap:8px;
      min-height:36px;
      padding:0 12px;
      border-radius:999px;
      border:1px solid rgba(184,255,138,.18);
      background:rgba(255,255,255,.02);
      color:#dce8de;
      font-size:13px;
      font-weight:700;
      transition:transform .2s ease,background .2s ease,border-color .2s ease;
    }
    .link-chip:hover{
      transform:translateY(-1px);
      background:rgba(125,255,138,.08);
      border-color:rgba(125,255,138,.24);
    }
    .faq-wrap{
      display:grid;
      gap:12px;
    }
    details{
      border-radius:22px;
      border:1px solid rgba(255,255,255,.07);
      background:rgba(255,255,255,.03);
      overflow:hidden;
      transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;
    }
    details[open]{
      border-color:rgba(125,255,138,.22);
      background:rgba(255,255,255,.045);
      box-shadow:0 0 0 1px rgba(155,92,255,.08) inset;
    }
    summary{
      list-style:none;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:18px 18px;
      cursor:pointer;
      font-weight:700;
      color:var(--text);
    }
    summary::-webkit-details-marker{display:none}
    summary .q{
      display:flex;
      align-items:flex-start;
      gap:12px;
      min-width:0;
    }
    summary .qn{
      width:30px;height:30px;border-radius:11px;
      display:grid;place-items:center;
      background:rgba(155,92,255,.12);
      color:#efe3ff;
      font-size:12px;
      flex:0 0 auto;
    }
    summary span:last-child{
      color:var(--text);
      line-height:1.5;
    }
    .chev{
      width:18px;height:18px;flex:0 0 auto;color:var(--muted);transition:transform .2s ease;
    }
    details[open] .chev{transform:rotate(180deg)}
    .answer{
      padding:0 18px 18px 60px;
      color:var(--muted);
      font-size:14px;
      line-height:1.8;
    }
    .cta-band{
      padding:26px 0 38px;
    }
    .cta-shell{
      overflow:hidden;
      position:relative;
      padding:30px;
      border-radius:34px;
      background:
        radial-gradient(700px 220px at 18% 18%,rgba(155,92,255,.2),transparent 60%),
        radial-gradient(780px 240px at 88% 24%,rgba(125,255,138,.18),transparent 62%),
        linear-gradient(180deg,rgba(21,37,29,.98),rgba(11,20,15,.99));
      border:1px solid rgba(184,255,138,.18);
      box-shadow:var(--shadow);
    }
    .cta-grid{
      display:grid;
      grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
      gap:22px;
      align-items:center;
    }
    .cta-band h2{
      margin:0 0 10px;
      font-size:clamp(26px,3.6vw,42px);
      line-height:1.16;
    }
    .cta-band p{
      margin:0;
      color:var(--muted);
      max-width:56ch;
      font-size:15px;
      line-height:1.82;
    }
    .cta-checks{
      display:grid;
      gap:10px;
      margin:18px 0 22px;
    }
    .cta-checks .check{
      display:flex;
      align-items:flex-start;
      gap:10px;
      color:#d5e4da;
      font-size:14px;
      line-height:1.7;
    }
    .cta-checks svg{
      width:18px;height:18px;flex:0 0 auto;color:var(--green);margin-top:2px;
    }
    .cta-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
    }
    .submit-panel{
      padding:20px;
      border-radius:28px;
      background:rgba(8,17,13,.52);
      border:1px solid rgba(255,255,255,.06);
    }
    .submit-panel .mini-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin-bottom:12px;
    }
    .submit-panel .mini-head strong{font-size:15px}
    .submit-panel .mini-head span{font-size:12px;color:var(--soft)}
    .submit-panel .row{
      display:grid;
      gap:10px;
    }
    .submit-panel .note{
      display:flex;
      gap:8px;
      color:var(--soft);
      font-size:12px;
      line-height:1.6;
      margin-top:10px;
    }
    .submit-panel .note svg{width:16px;height:16px;flex:0 0 auto;margin-top:1px}
    footer{
      padding:26px 0 120px;
      border-top:1px solid rgba(255,255,255,.06);
      background:linear-gradient(180deg,rgba(7,14,11,.28),rgba(7,14,11,.8));
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr .8fr;
      gap:24px;
    }
    .footer-brand{
      display:grid;
      gap:12px;
    }
    .footer-brand p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.8;
      max-width:38ch;
    }
    .footer-title{
      font-size:15px;
      font-weight:800;
      margin:0 0 12px;
    }
    .footer-links{
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:var(--muted);
      font-size:14px;
      line-height:1.7;
      transition:color .2s ease,transform .2s ease;
    }
    .footer-links a:hover{
      color:#e8f4ea;
      transform:translateX(2px);
    }
    .footer-note{
      margin-top:16px;
      color:var(--soft);
      font-size:12px;
      line-height:1.8;
    }
    .mobile-tab{
      display:none;
      position:fixed;
      left:0;
      right:0;
      bottom:0;
      z-index:60;
      padding:10px 12px calc(10px + env(safe-area-inset-bottom));
      background:linear-gradient(180deg,rgba(10,18,14,.15),rgba(8,17,13,.96) 20%,rgba(8,17,13,.98));
      border-top:1px solid rgba(255,255,255,.06);
      backdrop-filter:blur(14px);
    }
    .mobile-tab .tabs{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:8px;
    }
    .mobile-tab a{
      display:grid;
      place-items:center;
      gap:6px;
      min-height:54px;
      padding:8px 6px;
      border-radius:18px;
      color:var(--muted);
      border:1px solid transparent;
      transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
      text-align:center;
    }
    .mobile-tab a.active{
      background:linear-gradient(135deg,rgba(155,92,255,.16),rgba(125,255,138,.12));
      border-color:rgba(184,255,138,.18);
      color:#eef8f0;
    }
    .mobile-tab a:hover{transform:translateY(-1px)}
    .mobile-tab svg{
      width:18px;height:18px;
    }
    .mobile-tab span{
      font-size:11px;
      line-height:1.2;
      white-space:nowrap;
    }
    .sr-only{
      position:absolute;
      width:1px;height:1px;
      padding:0;margin:-1px;
      overflow:hidden;
      clip:rect(0,0,0,0);
      white-space:nowrap;
      border:0;
    }
    @media (max-width: 1023px){
      .container{width:min(var(--container),calc(100% - 48px))}
      .hero-grid,
      .cta-grid,
      .news-grid,
      .footer-grid{
        grid-template-columns:1fr;
      }
      .proof-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
      }
    }
    @media (max-width: 767px){
      .container{width:min(var(--container),calc(100% - 32px))}
      .header-row{min-height:72px}
      .nav-wrap{justify-content:flex-end}
      .nav-links,
      .nav-cta .desktop-only{display:none}
      .menu-toggle{display:inline-flex}
      .mobile-nav[aria-hidden="false"]{display:block}
      .hero-shell{padding:22px;border-radius:28px}
      .hero{padding-top:18px}
      h1{max-width:100%}
      .hero-copy{font-size:16px}
      .form-grid{grid-template-columns:1fr}
      .step-grid,
      .proof-grid,
      .topic-grid{
        grid-template-columns:1fr;
      }
      .mini-board{grid-template-columns:1fr}
      .section-head{
        flex-direction:column;
        align-items:flex-start;
      }
      .cta-shell{padding:22px;border-radius:28px}
      .mobile-tab{display:block}
      main{padding-bottom:132px}
      footer{padding-bottom:138px}
      .answer{padding-left:18px}
    }
    @media (max-width: 389px){
      .container{width:min(var(--container),calc(100% - 24px))}
      .hero-shell,
      .cta-shell,
      .panel-inner,
      .step-card,
      .case-card,
      .metric-card,
      .topic-card,
      .sidebar-box{
        border-radius:22px;
      }
      h1{font-size:32px}
      .section-head h2{font-size:24px}
      .btn{padding:0 16px}
      .hero-form{padding:14px}
      .mobile-tab a span{font-size:10px}
    }

/* roulang page: category2 */
:root {
      --bg: #07110d;
      --bg-2: #0b1712;
      --panel: #101c16;
      --panel-2: #14251d;
      --panel-3: #182a22;
      --text: #dde8df;
      --muted: #9fb3a7;
      --weak: #75877d;
      --purple: #b47cff;
      --purple-2: #9b5cff;
      --green: #7dff8a;
      --green-2: #b8ff5a;
      --orange: #ffb45e;
      --border: rgba(184, 255, 90, .18);
      --border-purple: rgba(180, 124, 255, .22);
      --shadow: 0 20px 60px rgba(0, 0, 0, .35);
      --shadow-soft: 0 14px 34px rgba(0, 0, 0, .28);
      --radius-xl: 28px;
      --radius-lg: 22px;
      --radius-md: 16px;
      --radius-pill: 999px;
      --container: 1180px;
      --ease: 220ms ease;
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      min-height: 100vh;
      color: var(--text);
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
      line-height: 1.75;
      background:
        radial-gradient(circle at 16% 8%, rgba(180, 124, 255, .18), transparent 32%),
        radial-gradient(circle at 84% 16%, rgba(125, 255, 138, .12), transparent 34%),
        linear-gradient(135deg, rgba(184, 255, 90, .04) 0 1px, transparent 1px 34px),
        linear-gradient(90deg, var(--bg), var(--bg-2) 48%, #08140f);
      overflow-x: hidden;
    }

    body::before {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
      background:
        linear-gradient(90deg, transparent 0 12%, rgba(184, 255, 90, .04) 12% 12.15%, transparent 12.15% 88%, rgba(180, 124, 255, .035) 88% 88.15%, transparent 88.15%),
        radial-gradient(circle at 50% 0, rgba(184, 255, 90, .06), transparent 46%);
      mask-image: linear-gradient(to bottom, #000, transparent 82%);
      z-index: -1;
    }

    a {
      color: inherit;
      text-decoration: none;
      transition: color var(--ease), border-color var(--ease), background var(--ease), transform var(--ease), box-shadow var(--ease);
    }

    img,
    svg {
      display: block;
      max-width: 100%;
    }

    button,
    input,
    select,
    textarea {
      font: inherit;
    }

    button {
      cursor: pointer;
      border: 0;
    }

    input,
    select,
    textarea {
      width: 100%;
      color: var(--text);
      background: rgba(7, 17, 13, .78);
      border: 1px solid var(--border);
      border-radius: 14px;
      outline: none;
      padding: 14px 15px;
      transition: border-color var(--ease), box-shadow var(--ease), background var(--ease);
    }

    input:focus,
    select:focus,
    textarea:focus {
      border-color: rgba(125, 255, 138, .75);
      box-shadow: 0 0 0 4px rgba(125, 255, 138, .1);
      background: rgba(16, 28, 22, .95);
    }

    .container {
      width: min(100% - 64px, var(--container));
      margin: 0 auto;
    }

    .site-header {
      position: sticky;
      top: 0;
      z-index: 50;
      background: rgba(7, 17, 13, .84);
      backdrop-filter: blur(18px);
      border-bottom: 1px solid rgba(184, 255, 90, .14);
      box-shadow: 0 10px 30px rgba(0, 0, 0, .22);
    }

    .header-row {
      min-height: 78px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
    }

    .brand {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      min-width: max-content;
    }

    .brand:hover .brand-mark {
      transform: translateY(-2px) rotate(-4deg);
      box-shadow: 0 0 26px rgba(180, 124, 255, .26);
    }

    .brand-mark {
      width: 44px;
      height: 44px;
      display: grid;
      place-items: center;
      flex: 0 0 auto;
      border-radius: 16px;
      background: linear-gradient(145deg, rgba(180, 124, 255, .18), rgba(125, 255, 138, .12));
      border: 1px solid var(--border-purple);
      transition: transform var(--ease), box-shadow var(--ease);
    }

    .brand-mark svg {
      width: 28px;
      height: 28px;
    }

    .brand-text {
      display: grid;
      line-height: 1.25;
    }

    .brand-text strong {
      font-size: 16px;
      letter-spacing: .02em;
    }

    .brand-text span {
      margin-top: 3px;
      color: var(--muted);
      font-size: 12px;
    }

    .nav-wrap {
      display: flex;
      align-items: center;
      gap: 18px;
      min-width: 0;
    }

    .nav-links {
      display: flex;
      align-items: center;
      gap: 6px;
      padding: 6px;
      border: 1px solid rgba(184, 255, 90, .12);
      border-radius: var(--radius-pill);
      background: rgba(16, 28, 22, .58);
    }

    .nav-links a {
      position: relative;
      color: var(--muted);
      font-size: 14px;
      line-height: 1;
      padding: 11px 15px;
      border-radius: var(--radius-pill);
    }

    .nav-links a:hover,
    .nav-links a:focus-visible {
      color: var(--text);
      background: rgba(180, 124, 255, .1);
      outline: none;
    }

    .nav-links a.active {
      color: #07110d;
      background: linear-gradient(135deg, var(--purple), var(--green));
      box-shadow: 0 8px 24px rgba(125, 255, 138, .16);
    }

    .nav-cta {
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 46px;
      padding: 0 18px;
      border-radius: var(--radius-pill);
      font-weight: 700;
      letter-spacing: .01em;
      white-space: nowrap;
      border: 1px solid transparent;
      transition: transform var(--ease), box-shadow var(--ease), border-color var(--ease), background var(--ease), color var(--ease);
    }

    .btn svg {
      width: 18px;
      height: 18px;
    }

    .btn:hover,
    .btn:focus-visible {
      transform: translateY(-2px);
      outline: none;
    }

    .btn-primary {
      color: #08120e;
      background: linear-gradient(135deg, var(--purple-2), var(--green));
      box-shadow: 0 14px 34px rgba(125, 255, 138, .18), inset 0 1px 0 rgba(255, 255, 255, .34);
    }

    .btn-primary:hover,
    .btn-primary:focus-visible {
      box-shadow: 0 20px 42px rgba(180, 124, 255, .22), 0 0 30px rgba(125, 255, 138, .18);
      background-position: 100% 0;
    }

    .btn-secondary {
      color: var(--text);
      background: rgba(16, 28, 22, .78);
      border-color: rgba(180, 124, 255, .28);
    }

    .btn-secondary:hover,
    .btn-secondary:focus-visible {
      border-color: rgba(125, 255, 138, .48);
      background: rgba(20, 37, 29, .96);
      box-shadow: 0 12px 30px rgba(180, 124, 255, .1);
    }

    .menu-toggle {
      display: none;
      width: 46px;
      height: 46px;
      color: var(--text);
      border-radius: 15px;
      background: rgba(16, 28, 22, .84);
      border: 1px solid var(--border);
      place-items: center;
    }

    .menu-toggle svg {
      width: 22px;
      height: 22px;
    }

    .mobile-nav {
      display: none;
      padding: 0 0 16px;
      gap: 10px;
    }

    .mobile-nav a {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 13px 15px;
      color: var(--muted);
      border: 1px solid var(--border);
      border-radius: 16px;
      background: rgba(16, 28, 22, .74);
    }

    .mobile-nav a.active {
      color: #08120e;
      border-color: transparent;
      background: linear-gradient(135deg, var(--purple), var(--green));
      font-weight: 800;
    }

    main {
      overflow: hidden;
    }

    .section {
      padding: 74px 0;
      position: relative;
    }

    .section.compact {
      padding: 48px 0;
    }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: var(--green);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
      padding: 8px 12px;
      border-radius: var(--radius-pill);
      background: rgba(125, 255, 138, .08);
      border: 1px solid rgba(125, 255, 138, .22);
    }

    .eyebrow::before {
      content: "";
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--green);
      box-shadow: 0 0 14px rgba(125, 255, 138, .8);
    }

    .hero {
      padding: 74px 0 52px;
    }

    .hero-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.02fr) minmax(340px, .82fr);
      gap: 28px;
      align-items: stretch;
    }

    .hero-copy {
      position: relative;
      min-height: 560px;
      padding: 38px;
      border-radius: 34px;
      background:
        radial-gradient(circle at 28% 18%, rgba(180, 124, 255, .22), transparent 38%),
        linear-gradient(145deg, rgba(20, 37, 29, .96), rgba(9, 21, 15, .94));
      border: 1px solid rgba(184, 255, 90, .18);
      box-shadow: var(--shadow);
      overflow: hidden;
    }

    .hero-copy::after {
      content: "";
      position: absolute;
      inset: auto -20% -35% 20%;
      height: 260px;
      background: radial-gradient(circle, rgba(125, 255, 138, .16), transparent 62%);
      pointer-events: none;
    }

    .hero h1 {
      position: relative;
      z-index: 1;
      max-width: 760px;
      margin: 18px 0 18px;
      font-size: clamp(36px, 5vw, 64px);
      line-height: 1.18;
      letter-spacing: -.045em;
    }

    .hero h1 span {
      color: transparent;
      background: linear-gradient(135deg, var(--green-2), var(--purple));
      -webkit-background-clip: text;
      background-clip: text;
    }

    .hero-lead {
      position: relative;
      z-index: 1;
      max-width: 680px;
      margin: 0;
      color: var(--muted);
      font-size: 17px;
    }

    .hero-actions {
      position: relative;
      z-index: 1;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 12px;
      margin-top: 28px;
    }

    .hero-reward {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 14px;
      margin-top: 34px;
    }

    .reward-card {
      padding: 18px;
      border-radius: 20px;
      background: rgba(7, 17, 13, .58);
      border: 1px solid rgba(180, 124, 255, .22);
    }

    .reward-card strong {
      display: block;
      font-size: 24px;
      line-height: 1;
      color: var(--green-2);
      margin-bottom: 8px;
    }

    .reward-card span {
      color: var(--muted);
      font-size: 13px;
    }

    .invite-progress {
      position: relative;
      z-index: 1;
      margin-top: 28px;
      padding: 20px;
      border-radius: 22px;
      background: linear-gradient(135deg, rgba(180, 124, 255, .13), rgba(125, 255, 138, .08));
      border: 1px solid rgba(184, 255, 90, .2);
    }

    .progress-head {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      color: var(--text);
      font-weight: 800;
      margin-bottom: 12px;
    }

    .progress-head span:last-child {
      color: var(--green);
    }

    .progress-track {
      height: 12px;
      border-radius: var(--radius-pill);
      background: rgba(117, 135, 125, .2);
      overflow: hidden;
      border: 1px solid rgba(255, 255, 255, .06);
    }

    .progress-fill {
      width: 72%;
      height: 100%;
      border-radius: inherit;
      background: linear-gradient(90deg, var(--purple-2), var(--green));
      box-shadow: 0 0 24px rgba(125, 255, 138, .32);
    }

    .progress-text {
      margin: 10px 0 0;
      color: var(--muted);
      font-size: 13px;
    }

    .summary-board {
      display: grid;
      gap: 16px;
    }

    .score-card {
      position: relative;
      padding: 24px;
      border-radius: 26px;
      background:
        linear-gradient(145deg, rgba(24, 42, 34, .94), rgba(12, 24, 18, .96)),
        linear-gradient(90deg, rgba(180, 124, 255, .18), transparent);
      border: 1px solid var(--border-purple);
      box-shadow: var(--shadow-soft);
      overflow: hidden;
    }

    .score-card::before {
      content: "";
      position: absolute;
      inset: 0 0 auto;
      height: 4px;
      background: linear-gradient(90deg, var(--purple), var(--green), transparent);
      opacity: .9;
    }

    .score-label {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      color: var(--muted);
      font-size: 13px;
      margin-bottom: 12px;
    }

    .score-label b {
      color: var(--orange);
      font-size: 12px;
      padding: 5px 9px;
      border-radius: var(--radius-pill);
      background: rgba(255, 180, 94, .1);
      border: 1px solid rgba(255, 180, 94, .24);
    }

    .score-card h2,
    .score-card h3 {
      margin: 0 0 10px;
      font-size: 24px;
      line-height: 1.28;
    }

    .score-card p {
      margin: 0;
      color: var(--muted);
      font-size: 14px;
    }

    .mini-list {
      display: grid;
      gap: 10px;
      margin-top: 18px;
    }

    .mini-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 12px 13px;
      border-radius: 15px;
      background: rgba(7, 17, 13, .52);
      border: 1px solid rgba(184, 255, 90, .13);
      color: var(--muted);
      font-size: 14px;
    }

    .mini-item i {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: var(--green);
      box-shadow: 0 0 14px rgba(125, 255, 138, .7);
      flex: 0 0 auto;
    }

    .mini-item strong {
      margin-left: auto;
      color: var(--text);
      font-size: 13px;
    }

    .board-strip {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 14px;
      margin-top: 28px;
    }

    .strip-item {
      padding: 18px;
      border-radius: 20px;
      background: rgba(16, 28, 22, .78);
      border: 1px solid var(--border);
      box-shadow: var(--shadow-soft);
    }

    .strip-item span {
      display: block;
      color: var(--weak);
      font-size: 12px;
      margin-bottom: 6px;
    }

    .strip-item strong {
      display: block;
      font-size: 22px;
      line-height: 1.1;
      color: var(--green-2);
    }

    .section-head {
      display: grid;
      grid-template-columns: minmax(0, .78fr) minmax(280px, .42fr);
      gap: 28px;
      align-items: end;
      margin-bottom: 28px;
    }

    .section-title {
      margin: 14px 0 0;
      font-size: clamp(28px, 3.2vw, 44px);
      line-height: 1.22;
      letter-spacing: -.03em;
    }

    .section-summary {
      margin: 0;
      color: var(--muted);
      font-size: 15px;
    }

    .matrix {
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(310px, .72fr);
      gap: 22px;
      align-items: start;
    }

    .featured-card {
      position: relative;
      padding: 30px;
      min-height: 384px;
      border-radius: var(--radius-xl);
      background:
        radial-gradient(circle at 78% 18%, rgba(125, 255, 138, .15), transparent 32%),
        linear-gradient(145deg, rgba(24, 42, 34, .96), rgba(12, 24, 18, .97));
      border: 1px solid rgba(180, 124, 255, .24);
      box-shadow: var(--shadow);
      overflow: hidden;
    }

    .featured-card::after {
      content: "02";
      position: absolute;
      right: 26px;
      bottom: -18px;
      color: rgba(184, 255, 90, .08);
      font-size: 112px;
      font-weight: 900;
      line-height: 1;
    }

    .corner-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 8px 12px;
      border-radius: 0 16px 16px 16px;
      color: #07110d;
      background: linear-gradient(135deg, var(--green-2), var(--purple));
      font-weight: 900;
      font-size: 13px;
    }

    .featured-card h2 {
      max-width: 620px;
      margin: 22px 0 14px;
      font-size: 34px;
      line-height: 1.24;
      letter-spacing: -.025em;
    }

    .featured-card p {
      max-width: 680px;
      margin: 0;
      color: var(--muted);
    }

    .check-grid {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 14px;
      margin-top: 26px;
    }

    .check-card {
      padding: 16px;
      border-radius: 18px;
      background: rgba(7, 17, 13, .56);
      border: 1px solid rgba(184, 255, 90, .14);
    }

    .check-card b {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 6px;
      line-height: 1.35;
    }

    .check-card b::before {
      content: "✓";
      display: grid;
      place-items: center;
      width: 22px;
      height: 22px;
      color: #07110d;
      border-radius: 50%;
      background: var(--green);
      font-size: 13px;
    }

    .check-card span {
      color: var(--muted);
      font-size: 13px;
    }

    .entry-list {
      display: grid;
      gap: 14px;
    }

    .entry-row {
      display: grid;
      grid-template-columns: 42px minmax(0, 1fr) auto;
      align-items: center;
      gap: 14px;
      padding: 17px;
      border-radius: 20px;
      background: rgba(16, 28, 22, .84);
      border: 1px solid rgba(184, 255, 90, .14);
      box-shadow: 0 10px 26px rgba(0, 0, 0, .2);
    }

    .entry-row:hover {
      transform: translateY(-2px);
      border-color: rgba(125, 255, 138, .42);
      box-shadow: 0 18px 34px rgba(0, 0, 0, .28);
    }

    .entry-icon {
      width: 42px;
      height: 42px;
      display: grid;
      place-items: center;
      color: var(--green);
      border-radius: 15px;
      background: rgba(125, 255, 138, .08);
      border: 1px solid rgba(125, 255, 138, .22);
      font-weight: 900;
    }

    .entry-row h3 {
      margin: 0 0 3px;
      font-size: 16px;
      line-height: 1.35;
    }

    .entry-row p {
      margin: 0;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.55;
    }

    .entry-arrow {
      color: var(--green);
      font-size: 20px;
    }

    .flow-wrap {
      display: grid;
      grid-template-columns: 340px minmax(0, 1fr);
      gap: 22px;
      align-items: stretch;
    }

    .side-panel,
    .form-panel {
      padding: 24px;
      border-radius: var(--radius-xl);
      background: rgba(16, 28, 22, .82);
      border: 1px solid var(--border);
      box-shadow: var(--shadow-soft);
    }

    .side-panel h2,
    .form-panel h2 {
      margin: 0 0 12px;
      font-size: 24px;
      line-height: 1.3;
    }

    .side-panel p,
    .form-panel p {
      margin: 0;
      color: var(--muted);
    }

    .timeline {
      display: grid;
      gap: 14px;
      margin-top: 22px;
    }

    .time-item {
      position: relative;
      padding: 18px 18px 18px 58px;
      border-radius: 20px;
      background: rgba(7, 17, 13, .54);
      border: 1px solid rgba(180, 124, 255, .18);
    }

    .time-item::before {
      content: attr(data-step);
      position: absolute;
      left: 16px;
      top: 18px;
      width: 28px;
      height: 28px;
      display: grid;
      place-items: center;
      color: #07110d;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--purple), var(--green));
      font-weight: 900;
      font-size: 12px;
    }

    .time-item h3 {
      margin: 0 0 5px;
      font-size: 17px;
      line-height: 1.35;
    }

    .time-item p {
      margin: 0;
      color: var(--muted);
      font-size: 14px;
    }

    .group-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px;
    }

    .group-card {
      position: relative;
      padding: 22px;
      min-height: 220px;
      border-radius: 24px;
      background:
        linear-gradient(180deg, rgba(180, 124, 255, .1), transparent 36%),
        rgba(16, 28, 22, .82);
      border: 1px solid rgba(180, 124, 255, .2);
      box-shadow: var(--shadow-soft);
      overflow: hidden;
    }

    .group-card:hover {
      transform: translateY(-4px);
      border-color: rgba(125, 255, 138, .36);
      box-shadow: 0 22px 44px rgba(0, 0, 0, .3), 0 0 26px rgba(180, 124, 255, .11);
    }

    .group-card::before {
      content: "";
      position: absolute;
      inset: 0 0 auto;
      height: 3px;
      background: linear-gradient(90deg, var(--purple), var(--green));
    }

    .group-card .num {
      display: inline-flex;
      width: 38px;
      height: 38px;
      align-items: center;
      justify-content: center;
      color: #07110d;
      border-radius: 14px;
      background: var(--green);
      font-weight: 900;
      margin-bottom: 18px;
    }

    .group-card h3 {
      margin: 0 0 10px;
      font-size: 20px;
      line-height: 1.32;
    }

    .group-card p {
      margin: 0 0 18px;
      color: var(--muted);
      font-size: 14px;
    }

    .tag-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 16px;
    }

    .tag {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      min-height: 30px;
      padding: 0 10px;
      color: var(--muted);
      font-size: 12px;
      border-radius: var(--radius-pill);
      background: rgba(7, 17, 13, .48);
      border: 1px solid rgba(184, 255, 90, .15);
    }

    .tag.hot {
      color: var(--green);
      border-color: rgba(125, 255, 138, .32);
      background: rgba(125, 255, 138, .07);
    }

    .proof-panel {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 18px;
    }

    .proof-card {
      padding: 24px;
      border-radius: 24px;
      background: rgba(16, 28, 22, .82);
      border: 1px solid var(--border);
      box-shadow: var(--shadow-soft);
    }

    .proof-card strong {
      display: block;
      color: var(--green-2);
      font-size: 40px;
      line-height: 1;
      margin-bottom: 10px;
    }

    .proof-card h3 {
      margin: 0 0 8px;
      font-size: 18px;
    }

    .proof-card p {
      margin: 0;
      color: var(--muted);
      font-size: 14px;
    }

    .faq-layout {
      display: grid;
      grid-template-columns: minmax(280px, .42fr) minmax(0, .74fr);
      gap: 24px;
      align-items: start;
    }

    .faq-intro {
      position: sticky;
      top: 100px;
      padding: 26px;
      border-radius: var(--radius-xl);
      background: linear-gradient(145deg, rgba(24, 42, 34, .94), rgba(9, 21, 15, .94));
      border: 1px solid var(--border-purple);
      box-shadow: var(--shadow-soft);
    }

    .faq-intro h2 {
      margin: 14px 0 12px;
      font-size: 30px;
      line-height: 1.24;
    }

    .faq-intro p {
      margin: 0;
      color: var(--muted);
    }

    .faq-list {
      display: grid;
      gap: 12px;
    }

    .faq-item {
      border-radius: 20px;
      background: rgba(16, 28, 22, .84);
      border: 1px solid rgba(184, 255, 90, .14);
      overflow: hidden;
      transition: border-color var(--ease), background var(--ease), box-shadow var(--ease);
    }

    .faq-item.active {
      border-color: rgba(125, 255, 138, .38);
      background: rgba(20, 37, 29, .96);
      box-shadow: 0 14px 34px rgba(0, 0, 0, .22);
    }

    .faq-question {
      width: 100%;
      display: grid;
      grid-template-columns: 42px minmax(0, 1fr) 26px;
      align-items: center;
      gap: 12px;
      color: var(--text);
      text-align: left;
      background: transparent;
      padding: 18px;
    }

    .faq-question .q-num {
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      color: #07110d;
      border-radius: 13px;
      background: linear-gradient(135deg, var(--purple), var(--green));
      font-weight: 900;
      font-size: 12px;
    }

    .faq-question strong {
      font-size: 16px;
      line-height: 1.45;
    }

    .faq-arrow {
      color: var(--green);
      transition: transform var(--ease);
    }

    .faq-item.active .faq-arrow {
      transform: rotate(45deg);
    }

    .faq-answer {
      max-height: 0;
      opacity: 0;
      overflow: hidden;
      transition: max-height 240ms ease, opacity 240ms ease;
    }

    .faq-item.active .faq-answer {
      max-height: 220px;
      opacity: 1;
    }

    .faq-answer p {
      margin: 0;
      padding: 0 20px 20px 72px;
      color: var(--muted);
      font-size: 14px;
    }

    .form-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 14px;
      margin-top: 22px;
    }

    .form-grid .full {
      grid-column: 1 / -1;
    }

    .field label {
      display: block;
      color: var(--muted);
      font-size: 13px;
      margin-bottom: 7px;
    }

    .static-submit {
      margin-top: 16px;
      display: flex;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
    }

    .form-tip {
      color: var(--weak);
      font-size: 13px;
    }

    .cta-panel {
      position: relative;
      display: grid;
      grid-template-columns: minmax(0, .76fr) minmax(260px, .38fr);
      gap: 24px;
      align-items: center;
      padding: 34px;
      border-radius: 34px;
      background:
        radial-gradient(circle at 18% 16%, rgba(180, 124, 255, .28), transparent 35%),
        radial-gradient(circle at 88% 82%, rgba(125, 255, 138, .22), transparent 36%),
        linear-gradient(145deg, rgba(24, 42, 34, .98), rgba(8, 18, 14, .98));
      border: 1px solid rgba(184, 255, 90, .24);
      box-shadow: var(--shadow);
      overflow: hidden;
    }

    .cta-panel::before {
      content: "";
      position: absolute;
      inset: 18px;
      border: 1px solid rgba(184, 255, 90, .08);
      border-radius: 26px;
      pointer-events: none;
    }

    .cta-panel h2 {
      position: relative;
      margin: 12px 0;
      font-size: clamp(28px, 3vw, 42px);
      line-height: 1.2;
    }

    .cta-panel p {
      position: relative;
      margin: 0;
      color: var(--muted);
    }

    .cta-checks {
      position: relative;
      display: grid;
      gap: 10px;
    }

    .cta-checks div {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 13px 14px;
      border-radius: 16px;
      color: var(--text);
      background: rgba(7, 17, 13, .5);
      border: 1px solid rgba(184, 255, 90, .14);
      font-size: 14px;
    }

    .cta-checks div::before {
      content: "✓";
      width: 22px;
      height: 22px;
      display: grid;
      place-items: center;
      color: #07110d;
      border-radius: 50%;
      background: var(--green);
      font-weight: 900;
      flex: 0 0 auto;
    }

    .cta-actions {
      position: relative;
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 24px;
    }

    footer {
      position: relative;
      padding: 58px 0 110px;
      background:
        linear-gradient(180deg, rgba(7, 17, 13, .1), rgba(7, 17, 13, .92)),
        linear-gradient(90deg, rgba(184, 255, 90, .04) 0 1px, transparent 1px 38px);
      border-top: 1px solid rgba(184, 255, 90, .14);
    }

    .footer-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.2fr) .45fr .45fr;
      gap: 34px;
      align-items: start;
    }

    .footer-brand p {
      max-width: 520px;
      margin: 18px 0 0;
      color: var(--muted);
      font-size: 14px;
    }

    .footer-title {
      color: var(--text);
      font-weight: 900;
      margin-bottom: 14px;
    }

    .footer-links {
      display: grid;
      gap: 9px;
    }

    .footer-links a {
      color: var(--muted);
      font-size: 14px;
    }

    .footer-links a:hover,
    .footer-links a:focus-visible {
      color: var(--green);
      outline: none;
    }

    .footer-note {
      color: var(--weak);
      font-size: 13px;
    }

    .bottom-tab {
      display: none;
      position: fixed;
      left: 12px;
      right: 12px;
      bottom: 12px;
      z-index: 60;
      padding: 8px 8px calc(8px + env(safe-area-inset-bottom));
      border-radius: 24px;
      background: rgba(7, 17, 13, .92);
      border: 1px solid rgba(184, 255, 90, .18);
      box-shadow: 0 18px 52px rgba(0, 0, 0, .44);
      backdrop-filter: blur(18px);
    }

    .bottom-tab a {
      position: relative;
      display: grid;
      place-items: center;
      gap: 4px;
      color: var(--weak);
      font-size: 12px;
      padding: 8px 6px;
      border-radius: 18px;
    }

    .bottom-tab a svg {
      width: 21px;
      height: 21px;
    }

    .bottom-tab a.active {
      color: #07110d;
      background: linear-gradient(135deg, var(--purple), var(--green));
      font-weight: 900;
    }

    .bottom-tab a.active::before {
      content: "";
      position: absolute;
      top: -8px;
      width: 32px;
      height: 3px;
      border-radius: var(--radius-pill);
      background: var(--green);
      box-shadow: 0 0 12px rgba(125, 255, 138, .8);
    }

    @media (max-width: 1024px) {
      .container {
        width: min(100% - 48px, var(--container));
      }

      .hero-grid,
      .matrix,
      .flow-wrap,
      .faq-layout,
      .cta-panel {
        grid-template-columns: 1fr;
      }

      .hero-copy {
        min-height: auto;
      }

      .board-strip,
      .group-grid {
        grid-template-columns: repeat(2, 1fr);
      }

      .faq-intro {
        position: relative;
        top: auto;
      }

      .desktop-only {
        display: none;
      }
    }

    @media (max-width: 768px) {
      body {
        padding-bottom: 82px;
      }

      .container {
        width: min(100% - 32px, var(--container));
      }

      .site-header {
        position: sticky;
      }

      .header-row {
        min-height: 68px;
      }

      .brand-text strong {
        font-size: 14px;
      }

      .brand-text span {
        font-size: 11px;
      }

      .nav-links {
        display: none;
      }

      .menu-toggle {
        display: grid;
      }

      .nav-cta .btn-primary {
        display: none;
      }

      .mobile-nav.open {
        display: grid;
      }

      .hero {
        padding: 38px 0 32px;
      }

      .hero-copy,
      .featured-card,
      .side-panel,
      .form-panel,
      .faq-intro,
      .cta-panel {
        padding: 22px;
        border-radius: 24px;
      }

      .hero-reward,
      .check-grid,
      .proof-panel,
      .form-grid,
      .footer-grid {
        grid-template-columns: 1fr;
      }

      .board-strip,
      .group-grid {
        grid-template-columns: 1fr;
      }

      .section {
        padding: 48px 0;
      }

      .section-head {
        grid-template-columns: 1fr;
        gap: 14px;
      }

      .entry-row {
        grid-template-columns: 40px minmax(0, 1fr);
      }

      .entry-arrow {
        display: none;
      }

      .faq-question {
        grid-template-columns: 36px minmax(0, 1fr) 22px;
        padding: 16px;
      }

      .faq-answer p {
        padding: 0 16px 18px 64px;
      }

      .cta-actions .btn,
      .hero-actions .btn,
      .static-submit .btn {
        width: 100%;
      }

      .bottom-tab {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
      }

      footer {
        padding-bottom: 128px;
      }
    }

    @media (max-width: 520px) {
      .container {
        width: min(100% - 28px, var(--container));
      }

      .brand-mark {
        width: 40px;
        height: 40px;
        border-radius: 14px;
      }

      .hero h1 {
        font-size: 34px;
      }

      .featured-card h2 {
        font-size: 26px;
      }

      .strip-item,
      .reward-card,
      .proof-card {
        padding: 16px;
      }

      .bottom-tab {
        left: 8px;
        right: 8px;
        bottom: 8px;
        border-radius: 20px;
      }

      .bottom-tab a {
        font-size: 11px;
      }
    }

    @media (max-width: 390px) {
      .brand-text span {
        display: none;
      }

      .hero h1 {
        font-size: 31px;
      }

      .btn {
        min-height: 44px;
        padding: 0 15px;
      }

      .hero-copy,
      .featured-card,
      .side-panel,
      .form-panel,
      .cta-panel {
        padding: 18px;
      }
    }

/* roulang page: category1 */
:root{
  --bg:#07110d;
  --bg-2:#0b1712;
  --panel:#101c16;
  --panel-2:#14251d;
  --panel-3:#182a22;
  --line:rgba(184,255,90,.18);
  --line-2:rgba(180,124,255,.22);
  --text:#dde8df;
  --muted:#9fb3a7;
  --weak:#75877d;
  --purple:#b47cff;
  --purple-2:#9b5cff;
  --green:#7dff8a;
  --green-2:#b8ff5a;
  --orange:#ffb45e;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --shadow-soft:0 12px 28px rgba(0,0,0,.22);
  --r-lg:28px;
  --r-md:20px;
  --r-sm:14px;
  --container:1180px;
  --header-h:78px;
  --tab-h:70px;
}
*{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(1200px 700px at 12% 0%, rgba(180,124,255,.12), transparent 52%),
    radial-gradient(900px 560px at 88% 10%, rgba(125,255,138,.10), transparent 48%),
    linear-gradient(180deg, #06100c 0%, #08130f 42%, #09140f 100%);
  line-height:1.75;
  letter-spacing:0;
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,0) 72%);
  opacity:.45;
}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
img{max-width:100%;display:block}
svg{display:block}
::selection{background:rgba(125,255,138,.22);color:var(--text)}
.container{
  width:min(var(--container),calc(100% - 64px));
  margin:0 auto;
}
.site-header{
  position:sticky;
  top:0;
  z-index:40;
  backdrop-filter:blur(14px);
  background:linear-gradient(180deg, rgba(7,17,13,.92), rgba(7,17,13,.76));
  border-bottom:1px solid rgba(184,255,90,.14);
}
.header-row{
  min-height:var(--header-h);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.brand-mark{
  width:42px;
  height:42px;
  border-radius:14px;
  background:
    linear-gradient(135deg, rgba(180,124,255,.16), rgba(125,255,138,.12)),
    rgba(16,28,22,.85);
  border:1px solid rgba(184,255,90,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  display:grid;
  place-items:center;
  flex:none;
}
.brand-mark svg{
  width:24px;
  height:24px;
}
.brand-text{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.brand-text strong{
  font-size:15px;
  line-height:1.2;
  letter-spacing:0;
}
.brand-text span{
  font-size:12px;
  color:var(--muted);
  line-height:1.2;
}
.nav-wrap{
  display:flex;
  align-items:center;
  gap:18px;
}
.nav-links{
  display:flex;
  align-items:center;
  gap:6px;
  padding:7px;
  border:1px solid rgba(184,255,90,.14);
  border-radius:999px;
  background:rgba(12,22,18,.84);
  box-shadow:var(--shadow-soft);
}
.nav-links a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  color:var(--muted);
  font-size:14px;
  transition:transform .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease;
}
.nav-links a:hover,
.nav-links a:focus-visible{
  color:var(--text);
  background:rgba(255,255,255,.04);
  transform:translateY(-1px);
  outline:none;
}
.nav-links a.active{
  color:#07110d;
  background:linear-gradient(135deg, var(--green-2), var(--green));
  box-shadow:0 10px 24px rgba(125,255,138,.18);
}
.nav-cta{
  display:flex;
  align-items:center;
  gap:10px;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
  white-space:nowrap;
}
.btn svg{
  width:18px;
  height:18px;
}
.btn:hover,
.btn:focus-visible{
  transform:translateY(-2px);
  outline:none;
}
.btn-primary{
  color:#08120d;
  background:linear-gradient(135deg, var(--purple), var(--green));
  box-shadow:0 14px 30px rgba(155,92,255,.18), 0 12px 24px rgba(125,255,138,.14);
}
.btn-primary:hover,
.btn-primary:focus-visible{
  box-shadow:0 18px 38px rgba(155,92,255,.22), 0 16px 32px rgba(125,255,138,.18);
}
.btn-secondary{
  color:var(--text);
  border-color:rgba(180,124,255,.24);
  background:rgba(16,28,22,.86);
}
.btn-secondary:hover,
.btn-secondary:focus-visible{
  background:rgba(24,42,34,.96);
  border-color:rgba(125,255,138,.30);
}
.menu-toggle{
  display:none;
  width:46px;
  height:46px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(184,255,90,.16);
  background:rgba(16,28,22,.88);
  color:var(--text);
  box-shadow:var(--shadow-soft);
  cursor:pointer;
}
.menu-toggle svg{width:20px;height:20px}
.mobile-nav{
  display:none;
}
main{
  padding-bottom:42px;
}
.hero{
  position:relative;
  padding:26px 0 28px;
}
.hero-shell{
  position:relative;
  overflow:hidden;
  border-radius:var(--r-lg);
  border:1px solid rgba(184,255,90,.16);
  background:
    linear-gradient(180deg, rgba(16,28,22,.94), rgba(12,22,18,.96)),
    linear-gradient(135deg, rgba(180,124,255,.10), rgba(125,255,138,.06));
  box-shadow:var(--shadow);
}
.hero-shell::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(184,255,90,.08) 1px, transparent 1px) 0 0/72px 72px,
    linear-gradient(rgba(184,255,90,.08) 1px, transparent 1px) 0 0/72px 72px;
  opacity:.25;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.7), rgba(0,0,0,.12));
}
.hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
  gap:28px;
  padding:34px;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(184,255,90,.16);
  background:rgba(8,16,13,.64);
  color:var(--green-2);
  font-size:13px;
  letter-spacing:0;
}
.eyebrow i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--purple), var(--green));
  box-shadow:0 0 0 4px rgba(125,255,138,.08);
  display:inline-block;
}
h1{
  margin:16px 0 14px;
  font-size:clamp(34px, 5vw, 66px);
  line-height:1.18;
  letter-spacing:0;
}
.hero-copy{
  max-width:700px;
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.8;
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.hero-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(184,255,90,.14);
  background:rgba(8,16,13,.58);
  color:var(--text);
  font-size:13px;
}
.tag::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 3px rgba(125,255,138,.10);
}
.hero-side{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.side-panel{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(180,124,255,.20);
  background:linear-gradient(180deg, rgba(20,37,29,.98), rgba(12,22,18,.96));
  box-shadow:var(--shadow-soft);
  padding:18px;
}
.side-panel::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  border:1px solid rgba(125,255,138,.08);
}
.panel-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.panel-title{
  font-size:15px;
  color:var(--text);
  font-weight:700;
}
.panel-badge{
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(125,255,138,.18);
  background:rgba(125,255,138,.08);
  color:var(--green-2);
  font-size:12px;
}
.progress{
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  overflow:hidden;
  margin:12px 0 10px;
}
.progress span{
  display:block;
  height:100%;
  width:76%;
  border-radius:inherit;
  background:linear-gradient(90deg, var(--purple), var(--green));
  box-shadow:0 0 18px rgba(125,255,138,.24);
}
.panel-list{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.panel-list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 12px;
  border-radius:16px;
  border:1px solid rgba(184,255,90,.12);
  background:rgba(8,16,13,.48);
  color:var(--muted);
  font-size:14px;
  line-height:1.65;
}
.check{
  width:20px;
  height:20px;
  border-radius:50%;
  flex:none;
  margin-top:1px;
  background:linear-gradient(135deg, var(--green), var(--purple));
  box-shadow:0 0 0 4px rgba(125,255,138,.08);
  position:relative;
}
.check::after{
  content:"";
  position:absolute;
  left:6px;
  top:5px;
  width:6px;
  height:3px;
  border-left:2px solid #08120d;
  border-bottom:2px solid #08120d;
  transform:rotate(-45deg);
}
.side-stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.stat{
  border-radius:18px;
  border:1px solid rgba(184,255,90,.14);
  background:rgba(8,16,13,.56);
  padding:14px;
}
.stat strong{
  display:block;
  font-size:24px;
  line-height:1.1;
  letter-spacing:0;
  margin-bottom:6px;
  color:#f4faf5;
}
.stat span{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.55;
}
.section{
  padding:18px 0 0;
}
.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.section-title{
  margin:0;
  font-size:clamp(22px,2.8vw,34px);
  line-height:1.25;
}
.section-desc{
  margin:0;
  color:var(--muted);
  max-width:720px;
  font-size:15px;
  line-height:1.8;
}
.section-badge{
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(180,124,255,.22);
  background:rgba(180,124,255,.08);
  color:#e9dcff;
  font-size:13px;
  white-space:nowrap;
}
.flow{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.flow-card,
.proof-card,
.faq-item,
.entry-card,
.cta-shell{
  border-radius:var(--r-md);
  border:1px solid rgba(184,255,90,.14);
  background:linear-gradient(180deg, rgba(16,28,22,.96), rgba(12,22,18,.96));
  box-shadow:var(--shadow-soft);
}
.flow-card{
  position:relative;
  overflow:hidden;
  padding:20px;
  min-height:210px;
}
.flow-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(180,124,255,.06), transparent 56%);
  pointer-events:none;
}
.step-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(180,124,255,.18), rgba(125,255,138,.10));
  border:1px solid rgba(184,255,90,.16);
  color:var(--green-2);
  font-weight:700;
  margin-bottom:16px;
}
.flow-card h3{
  margin:0 0 10px;
  font-size:19px;
  line-height:1.35;
}
.flow-card p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.8;
}
.flow-meta{
  margin-top:16px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(180,124,255,.16);
  background:rgba(180,124,255,.08);
  color:#eadfff;
  font-size:12px;
}
.pill.green{
  border-color:rgba(125,255,138,.16);
  background:rgba(125,255,138,.08);
  color:#ddffe1;
}
.proof{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.proof-card{
  padding:20px;
}
.metric-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.metric{
  font-size:34px;
  line-height:1;
  font-weight:800;
  letter-spacing:0;
}
.metric-label{
  color:var(--muted);
  font-size:14px;
}
.small-note{
  color:var(--weak);
  font-size:13px;
  line-height:1.7;
}
.proof-list{
  display:grid;
  gap:10px;
  margin:16px 0 0;
  padding:0;
  list-style:none;
}
.proof-list li{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:11px 12px;
  border-radius:14px;
  background:rgba(8,16,13,.46);
  border:1px solid rgba(184,255,90,.10);
  font-size:14px;
}
.proof-list li span:last-child{
  color:var(--green-2);
}
.qa-wrap{
  display:grid;
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);
  gap:18px;
}
.filter-panel{
  padding:20px;
  border-radius:var(--r-md);
  border:1px solid rgba(184,255,90,.14);
  background:linear-gradient(180deg, rgba(16,28,22,.98), rgba(11,20,16,.96));
  box-shadow:var(--shadow-soft);
  position:sticky;
  top:98px;
  align-self:start;
}
.filter-panel h3{
  margin:0 0 12px;
  font-size:18px;
  line-height:1.35;
}
.filter-panel p{
  margin:0 0 16px;
  color:var(--muted);
  font-size:14px;
  line-height:1.8;
}
.filter-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.filter-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(180,124,255,.18);
  background:rgba(255,255,255,.02);
  color:var(--text);
  font-size:13px;
  cursor:default;
}
.filter-tag.active{
  background:linear-gradient(135deg, rgba(180,124,255,.16), rgba(125,255,138,.10));
  border-color:rgba(125,255,138,.24);
  color:#f1fff3;
}
.filter-box{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(184,255,90,.12);
}
.filter-box .mini-title{
  margin:0 0 10px;
  font-size:14px;
  color:#edf7ef;
}
.filter-box ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}
.filter-box li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:var(--muted);
  font-size:14px;
  line-height:1.7;
}
.filter-box .dot{
  width:8px;
  height:8px;
  border-radius:50%;
  margin-top:8px;
  background:var(--green);
  box-shadow:0 0 0 4px rgba(125,255,138,.08);
  flex:none;
}
.entry-list{
  display:grid;
  gap:16px;
}
.entry-card{
  position:relative;
  overflow:hidden;
  padding:20px;
}
.entry-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:linear-gradient(90deg, var(--purple), var(--green));
}
.entry-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.entry-card h3{
  margin:0;
  font-size:20px;
  line-height:1.34;
}
.entry-badge{
  flex:none;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(125,255,138,.08);
  border:1px solid rgba(125,255,138,.16);
  color:var(--green-2);
  font-size:12px;
}
.entry-card p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.85;
}
.entry-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.entry-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(184,255,90,.10);
}
.entry-foot .mini{
  color:var(--weak);
  font-size:13px;
}
.entry-foot .btn{
  min-height:40px;
  padding:0 14px;
  font-size:14px;
}
.entry-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.faq-grid{
  display:grid;
  gap:12px;
}
.faq-item{
  overflow:hidden;
}
.faq-q{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:18px 20px;
  background:transparent;
  border:0;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.faq-q strong{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:16px;
  line-height:1.45;
}
.faq-q strong .qnum{
  width:28px;
  height:28px;
  border-radius:999px;
  display:grid;
  place-items:center;
  flex:none;
  background:rgba(180,124,255,.14);
  border:1px solid rgba(180,124,255,.22);
  color:#f1e9ff;
  font-size:12px;
}
.faq-arrow{
  width:18px;
  height:18px;
  color:var(--green-2);
  transition:transform .22s ease;
  flex:none;
}
.faq-a{
  max-height:0;
  overflow:hidden;
  transition:max-height .24s ease, opacity .22s ease, padding .22s ease;
  opacity:0;
  padding:0 20px;
  color:var(--muted);
  font-size:14px;
  line-height:1.85;
}
.faq-item.open{
  border-color:rgba(125,255,138,.24);
  box-shadow:0 16px 36px rgba(125,255,138,.08);
}
.faq-item.open .faq-q{
  background:linear-gradient(180deg, rgba(24,42,34,.65), rgba(16,28,22,.2));
}
.faq-item.open .faq-arrow{
  transform:rotate(180deg);
}
.faq-item.open .faq-a{
  max-height:240px;
  opacity:1;
  padding:0 20px 18px;
}
.cta-shell{
  position:relative;
  overflow:hidden;
  padding:24px;
  background:
    radial-gradient(780px 300px at 15% 0%, rgba(180,124,255,.18), transparent 56%),
    radial-gradient(620px 260px at 88% 28%, rgba(125,255,138,.16), transparent 54%),
    linear-gradient(180deg, rgba(16,28,22,.98), rgba(12,20,16,.98));
}
.cta-shell::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  border:1px solid rgba(255,255,255,.04);
}
.cta-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
  gap:18px;
  align-items:center;
}
.cta-grid h2{
  margin:0 0 12px;
  font-size:clamp(24px,3vw,38px);
  line-height:1.22;
}
.cta-grid p{
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.85;
}
.cta-checks{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.cta-checks div{
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border-radius:14px;
  background:rgba(8,16,13,.42);
  border:1px solid rgba(184,255,90,.10);
  color:var(--text);
  font-size:14px;
}
.cta-aside{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(184,255,90,.12);
  background:rgba(8,16,13,.38);
}
.cta-aside .mini-title{
  margin:0 0 12px;
  font-size:15px;
}
.form-grid{
  display:grid;
  gap:10px;
}
.field{
  display:grid;
  gap:7px;
}
.field label{
  font-size:13px;
  color:var(--muted);
}
.field input,
.field textarea{
  width:100%;
  border-radius:16px;
  border:1px solid rgba(184,255,90,.14);
  background:rgba(11,20,16,.88);
  color:var(--text);
  padding:12px 14px;
  outline:none;
  transition:border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.field textarea{
  min-height:96px;
  resize:vertical;
}
.field input::placeholder,
.field textarea::placeholder{
  color:#74867d;
}
.field input:focus,
.field textarea:focus{
  border-color:rgba(125,255,138,.42);
  box-shadow:0 0 0 4px rgba(125,255,138,.08);
}
.form-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:6px;
}
footer{
  margin-top:18px;
  padding:26px 0 30px;
  border-top:1px solid rgba(184,255,90,.12);
  background:linear-gradient(180deg, rgba(8,16,13,.84), rgba(6,12,10,.96));
}
.footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,.8fr));
  gap:22px;
  align-items:start;
}
.footer-brand .brand{
  margin-bottom:14px;
}
.footer-brand p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.85;
  max-width:440px;
}
.footer-title{
  font-size:15px;
  color:#edf7ef;
  margin-bottom:12px;
  font-weight:700;
}
.footer-links{
  display:grid;
  gap:10px;
}
.footer-links a{
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
  transition:color .22s ease, transform .22s ease;
}
.footer-links a:hover,
.footer-links a:focus-visible{
  color:var(--text);
  transform:translateX(2px);
  outline:none;
}
.footer-note{
  margin-top:18px;
  color:var(--weak);
  font-size:13px;
  line-height:1.8;
}
.mobile-bottom-nav{
  display:none;
}
:focus-visible{
  outline:2px solid rgba(125,255,138,.45);
  outline-offset:2px;
}
@media (max-width: 1080px){
  .hero-grid,
  .cta-grid,
  .qa-wrap{
    grid-template-columns:1fr;
  }
  .filter-panel{
    position:static;
  }
  .proof{
    grid-template-columns:1fr;
  }
  .entry-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 920px){
  .nav-links{
    display:none;
  }
  .desktop-only{
    display:none;
  }
  .menu-toggle{
    display:inline-flex;
  }
  .mobile-nav{
    display:block;
    max-height:0;
    overflow:hidden;
    transition:max-height .24s ease, opacity .24s ease;
    opacity:0;
    border-top:1px solid rgba(184,255,90,.10);
    background:rgba(7,17,13,.96);
  }
  .mobile-nav.open{
    max-height:360px;
    opacity:1;
  }
  .mobile-nav-inner{
    display:grid;
    gap:8px;
    padding:12px 0 16px;
  }
  .mobile-nav a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:46px;
    padding:0 12px;
    border-radius:14px;
    border:1px solid rgba(184,255,90,.12);
    background:rgba(16,28,22,.76);
    color:var(--muted);
  }
  .mobile-nav a.active{
    background:linear-gradient(135deg, rgba(180,124,255,.20), rgba(125,255,138,.18));
    color:#f5fff7;
    border-color:rgba(125,255,138,.26);
  }
  .flow{
    grid-template-columns:1fr;
  }
  .footer-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 768px){
  .container{
    width:min(var(--container),calc(100% - 32px));
  }
  .hero{
    padding-top:18px;
  }
  .hero-grid{
    padding:22px 18px;
  }
  h1{
    font-size:clamp(32px,9vw,42px);
  }
  .section-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .section-title{
    font-size:clamp(21px,6vw,30px);
  }
  .entry-top,
  .metric-row{
    flex-direction:column;
    align-items:flex-start;
  }
  .cta-shell{
    padding:18px;
  }
  .faq-q{
    padding:16px 16px;
  }
  .faq-a{
    padding:0 16px;
  }
  .faq-item.open .faq-a{
    padding:0 16px 16px;
  }
  .mobile-bottom-nav{
    display:flex;
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:45;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    background:linear-gradient(180deg, rgba(6,12,10,0), rgba(6,12,10,.94) 22%, rgba(6,12,10,.98));
    border-top:1px solid rgba(184,255,90,.10);
    backdrop-filter:blur(14px);
 padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    gap:8px;
    align-items:center;
    justify-content:space-between;
  }
  .mobile-bottom-nav a{
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-height:56px;
    border-radius:18px;
    color:var(--muted);
    font-size:12px;
    border:1px solid transparent;
    transition:transform .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease;
  }
  .mobile-bottom-nav a svg{
    width:18px;
    height:18px;
  }
  .mobile-bottom-nav a.active{
    color:#f5fff7;
    background:linear-gradient(135deg, rgba(180,124,255,.20), rgba(125,255,138,.16));
    border-color:rgba(125,255,138,.18);
    box-shadow:0 10px 24px rgba(125,255,138,.08);
    transform:translateY(-1px);
  }
  main{
    padding-bottom:calc(112px + env(safe-area-inset-bottom));
  }
}
@media (max-width: 520px){
  .container{
    width:min(var(--container),calc(100% - 24px));
  }
  .header-row{
    min-height:72px;
  }
  .brand-text strong{
    font-size:14px;
  }
  .brand-text span{
    display:none;
  }
  .hero-grid{
    padding:18px 14px;
    gap:18px;
  }
  .hero-actions .btn,
  .form-actions .btn{
    width:100%;
  }
  .btn{
    min-height:46px;
  }
  .side-panel,
  .flow-card,
  .proof-card,
  .entry-card,
  .cta-aside{
    padding:16px;
    border-radius:20px;
  }
  .section{
    padding-top:14px;
  }
  .hero-copy,
  .section-desc,
  .small-note,
  .filter-panel p,
  .entry-card p,
  .cta-grid p,
  .footer-brand p{
    font-size:14px;
  }
  .faq-q strong{
    font-size:15px;
  }
}
