/* roulang page: index */
:root{
      --bg:#fff8f5;
      --bg-soft:#fffbf7;
      --panel:#ffffff;
      --panel-tint:#fff2f6;
      --primary:#b83280;
      --primary-2:#c0267a;
      --mint:#17b890;
      --mint-2:#2ec4b6;
      --coral:#ff6b4a;
      --pink:#ff4d8d;
      --text:#2b2b33;
      --muted:#6f6f7a;
      --light:#f8edf1;
      --border:rgba(120,70,90,.13);
      --shadow:0 18px 48px rgba(90,40,70,.10);
      --shadow-soft:0 12px 30px rgba(90,40,70,.07);
      --radius-sm:14px;
      --radius:24px;
      --radius-lg:34px;
      --pill:999px;
      --container:1220px;
      --nav-h:68px;
      --ease:cubic-bezier(.2,.8,.2,1);
    }
    *{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 8% 4%, rgba(255,77,141,.16), transparent 28rem),
        radial-gradient(circle at 88% 12%, rgba(46,196,182,.16), transparent 26rem),
        linear-gradient(180deg,var(--bg) 0%,#fffdfb 52%,#fff7f3 100%);
      line-height:1.8;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none;transition:all .22s var(--ease)}
    a:hover,a:focus{color:var(--primary)}
    img{max-width:100%;height:auto;display:block}
    button,input,textarea,select{font:inherit}
    input,textarea{
      width:100%;
      border:1px solid var(--border);
      border-radius:18px;
      background:#fffaf8;
      color:var(--text);
      padding:14px 16px;
      outline:none;
      transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease);
      box-shadow:none;
    }
    input:focus,textarea:focus{
      border-color:rgba(184,50,128,.55);
      background:#fff;
      box-shadow:0 0 0 4px rgba(184,50,128,.10);
    }
    textarea{min-height:118px;resize:vertical}
    label{
      display:block;
      font-weight:700;
      color:#3a3138;
      margin-bottom:8px;
      font-size:14px;
    }
    .site-wrap{position:relative;min-height:100vh}
    .site-wrap:before{
      content:"";
      position:absolute;
      inset:0;
      pointer-events:none;
      background-image:radial-gradient(rgba(184,50,128,.08) 1px, transparent 1px);
      background-size:22px 22px;
      mask-image:linear-gradient(180deg,rgba(0,0,0,.85),transparent 46%);
      opacity:.45;
      z-index:-1;
    }
    .page-container{
      width:min(calc(100% - 40px),var(--container));
      margin:0 auto;
    }
    .section{
      padding:88px 0;
      position:relative;
    }
    .section-tight{padding:68px 0}
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:24px;
      margin-bottom:30px;
    }
    .section-kicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border-radius:var(--pill);
      background:#fff;
      border:1px solid var(--border);
      color:var(--primary);
      font-size:14px;
      font-weight:800;
      box-shadow:var(--shadow-soft);
      margin-bottom:12px;
    }
    .section-kicker:before{
      content:"";
      width:8px;
      height:8px;
      border-radius:50%;
      background:linear-gradient(135deg,var(--pink),var(--mint));
      box-shadow:0 0 0 5px rgba(255,77,141,.09);
    }
    h1,h2,h3,h4,p{margin-top:0}
    h1{
      font-size:clamp(34px,5vw,56px);
      line-height:1.14;
      letter-spacing:-.04em;
      font-weight:850;
      margin-bottom:20px;
      color:#241f28;
    }
    h2{
      font-size:clamp(26px,3.4vw,40px);
      line-height:1.22;
      letter-spacing:-.025em;
      font-weight:820;
      margin-bottom:12px;
      color:#28222b;
    }
    h3{
      font-size:clamp(19px,2vw,23px);
      line-height:1.35;
      font-weight:780;
      color:#302733;
      margin-bottom:10px;
    }
    p{color:var(--muted);font-size:16px}
    .lead{
      font-size:18px;
      color:#5d5964;
      line-height:1.9;
      max-width:760px;
    }
    .btn-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      border:0;
      cursor:pointer;
      border-radius:var(--pill);
      padding:13px 20px;
      font-size:15px;
      font-weight:800;
      line-height:1.2;
      min-height:48px;
      transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease);
      user-select:none;
    }
    .btn-primary{
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--pink) 55%,var(--coral));
      box-shadow:0 14px 28px rgba(184,50,128,.24);
    }
    .btn-primary:hover,.btn-primary:focus{
      color:#fff;
      transform:translateY(-2px);
      box-shadow:0 18px 36px rgba(184,50,128,.30);
    }
    .btn-secondary{
      color:var(--primary);
      background:#fff;
      border:1px solid rgba(184,50,128,.24);
      box-shadow:var(--shadow-soft);
    }
    .btn-secondary:hover,.btn-secondary:focus{
      background:#fff0f6;
      border-color:rgba(184,50,128,.38);
      transform:translateY(-2px);
    }
    .btn-mint{
      color:#083d35;
      background:linear-gradient(135deg,#d9fff5,#b8f7ec);
      border:1px solid rgba(23,184,144,.24);
    }
    .btn-mint:hover,.btn-mint:focus{transform:translateY(-2px);box-shadow:0 14px 28px rgba(23,184,144,.18)}
    .site-header{
      position:fixed;
      top:18px;
      left:0;
      width:100%;
      z-index:50;
      pointer-events:none;
    }
    .nav-shell{
      width:min(calc(100% - 32px),var(--container));
      margin:0 auto;
      pointer-events:auto;
      display:flex;
      align-items:center;
      justify-content:space-between;
      min-height:var(--nav-h);
      padding:8px 10px 8px 14px;
      border-radius:var(--pill);
      border:1px solid rgba(120,70,90,.14);
      background:rgba(255,255,255,.84);
      backdrop-filter:blur(18px);
      box-shadow:0 18px 44px rgba(90,40,70,.12);
    }
    .brand{
      display:flex;
      align-items:center;
      gap:10px;
      font-weight:900;
      letter-spacing:-.03em;
      color:#2d2230;
      white-space:nowrap;
    }
    .brand-mark{
      width:42px;
      height:42px;
      border-radius:16px;
      display:grid;
      place-items:center;
      color:#fff;
      background:
        radial-gradient(circle at 70% 24%,rgba(255,255,255,.55),transparent 22%),
        linear-gradient(135deg,var(--primary),var(--pink) 58%,var(--coral));
      box-shadow:0 12px 24px rgba(184,50,128,.22);
      font-size:18px;
      font-weight:900;
    }
    .nav-menu{
      display:flex;
      align-items:center;
      gap:6px;
      list-style:none;
      padding:0;
      margin:0;
    }
    .nav-menu a{
      display:flex;
      align-items:center;
      min-height:42px;
      padding:0 16px;
      border-radius:var(--pill);
      font-size:15px;
      font-weight:750;
      color:#514b55;
      position:relative;
    }
    .nav-menu a:hover{background:#fff0f6;color:var(--primary)}
    .nav-menu a.active{
      color:var(--primary);
      background:linear-gradient(135deg,rgba(184,50,128,.12),rgba(255,77,141,.10));
    }
    .nav-actions{display:flex;align-items:center;gap:8px}
    .menu-toggle{
      display:none;
      width:44px;
      height:44px;
      border-radius:50%;
      border:1px solid var(--border);
      background:#fff;
      align-items:center;
      justify-content:center;
      color:var(--primary);
      cursor:pointer;
    }
    .menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{
      display:block;
      width:18px;
      height:2px;
      background:currentColor;
      border-radius:2px;
      position:relative;
      transition:.2s var(--ease);
    }
    .menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0}
    .menu-toggle span:before{top:-6px}
    .menu-toggle span:after{top:6px}
    .mobile-panel{
      display:none;
      width:min(calc(100% - 32px),var(--container));
      margin:10px auto 0;
      pointer-events:auto;
      border-radius:28px;
      border:1px solid var(--border);
      background:rgba(255,255,255,.95);
      backdrop-filter:blur(16px);
      box-shadow:var(--shadow);
      padding:14px;
    }
    .mobile-panel.open{display:block}
    .mobile-panel a{
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:14px 16px;
      border-radius:18px;
      font-weight:800;
      color:#4d4550;
    }
    .mobile-panel a.active,.mobile-panel a:hover{background:#fff0f6;color:var(--primary)}
    .hero{
      padding:118px 0 72px;
    }
    .creator-hero{
      overflow:hidden;
      border-radius:42px;
      border:1px solid rgba(120,70,90,.12);
      background:
        radial-gradient(circle at 18% 10%,rgba(255,77,141,.26),transparent 26rem),
        radial-gradient(circle at 82% 6%,rgba(46,196,182,.22),transparent 24rem),
        linear-gradient(135deg,#fff 0%,#fff4f8 48%,#fffaf1 100%);
      box-shadow:var(--shadow);
      position:relative;
      padding:30px;
    }
    .creator-hero:after{
      content:"";
      position:absolute;
      right:-60px;
      bottom:-80px;
      width:260px;
      height:260px;
      border-radius:50%;
      background:rgba(255,107,74,.12);
      filter:blur(4px);
    }
    .cover-strip{
      position:absolute;
      inset:0 0 auto 0;
      height:132px;
      background:
        linear-gradient(90deg,rgba(184,50,128,.18),rgba(255,77,141,.10),rgba(23,184,144,.15)),
        repeating-linear-gradient(135deg,rgba(255,255,255,.24) 0 10px,transparent 10px 20px);
    }
    .creator-content{position:relative;z-index:2;padding-top:58px}
    .creator-profile{
      display:flex;
      align-items:flex-end;
      gap:18px;
      margin-bottom:26px;
    }
    .avatar{
      width:104px;
      height:104px;
      border-radius:34px;
      display:grid;
      place-items:center;
      color:#fff;
      font-size:36px;
      font-weight:950;
      background:
        radial-gradient(circle at 68% 24%,rgba(255,255,255,.54),transparent 18%),
        linear-gradient(135deg,var(--primary),var(--pink) 52%,var(--coral));
      border:6px solid rgba(255,255,255,.9);
      box-shadow:0 18px 34px rgba(184,50,128,.23);
      flex:0 0 auto;
    }
    .profile-name{padding-bottom:4px}
    .profile-name strong{
      display:block;
      font-size:24px;
      line-height:1.2;
      color:#211c24;
      font-weight:900;
      letter-spacing:-.03em;
    }
    .profile-name span{
      display:inline-flex;
      align-items:center;
      gap:6px;
      margin-top:8px;
      color:#6d5867;
      font-weight:700;
      font-size:14px;
      background:#fff;
      border:1px solid var(--border);
      border-radius:var(--pill);
      padding:5px 10px;
    }
    .badge-line{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin:18px 0 22px;
    }
    .tag{
      display:inline-flex;
      align-items:center;
      gap:7px;
      border-radius:var(--pill);
      padding:7px 12px;
      font-size:14px;
      font-weight:800;
      border:1px solid rgba(120,70,90,.10);
      color:#55434e;
      background:#fff;
    }
    .tag .dot{
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--mint);
      box-shadow:0 0 0 5px rgba(23,184,144,.10);
    }
    .tag.pink{background:#fff0f6;color:var(--primary)}
    .tag.orange{background:#fff2ed;color:#c8492c}
    .hero-stats{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
      margin-top:24px;
    }
    .stat-pill{
      padding:16px;
      background:rgba(255,255,255,.78);
      border:1px solid var(--border);
      border-radius:22px;
      box-shadow:var(--shadow-soft);
    }
    .stat-pill b{
      display:block;
      color:#2a202b;
      font-size:24px;
      font-weight:950;
      line-height:1.1;
    }
    .stat-pill small{
      display:block;
      color:var(--muted);
      margin-top:5px;
      font-weight:700;
    }
    .hero-board{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:14px;
      align-content:end;
      height:100%;
      padding-top:42px;
    }
    .vertical-card{
      min-height:190px;
      border-radius:28px;
      background:#fff;
      border:1px solid var(--border);
      padding:18px;
      box-shadow:var(--shadow-soft);
      position:relative;
      overflow:hidden;
      transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease);
    }
    .vertical-card:hover{
      transform:translateY(-4px);
      box-shadow:0 22px 46px rgba(90,40,70,.12);
      border-color:rgba(184,50,128,.28);
    }
    .vertical-card:before{
      content:"";
      position:absolute;
      right:-36px;
      top:-38px;
      width:100px;
      height:100px;
      border-radius:50%;
      background:linear-gradient(135deg,rgba(255,77,141,.18),rgba(46,196,182,.14));
    }
    .corner-badge{
      display:inline-flex;
      align-items:center;
      padding:5px 9px;
      border-radius:var(--pill);
      background:linear-gradient(135deg,var(--pink),var(--coral));
      color:#fff;
      font-size:12px;
      font-weight:900;
      margin-bottom:18px;
      box-shadow:0 10px 20px rgba(255,77,141,.18);
    }
    .vertical-card h3{font-size:18px;margin-bottom:8px}
    .vertical-card p{font-size:14px;line-height:1.65;margin-bottom:0}
    .vertical-card.mint .corner-badge{background:linear-gradient(135deg,var(--mint),var(--mint-2))}
    .vertical-card.soft{background:linear-gradient(180deg,#fff,#fff5f8)}
    .stage-wrap{
      border-radius:36px;
      border:1px solid var(--border);
      background:#fff;
      box-shadow:var(--shadow);
      padding:22px;
      overflow:hidden;
    }
    .stage-toolbar{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:12px;
      margin-bottom:18px;
      padding:8px 8px 14px;
      border-bottom:1px solid rgba(120,70,90,.10);
    }
    .traffic{display:flex;gap:7px}
    .traffic i{
      width:12px;
      height:12px;
      border-radius:50%;
      background:var(--pink);
      display:block;
    }
    .traffic i:nth-child(2){background:var(--coral)}
    .traffic i:nth-child(3){background:var(--mint)}
    .stage-search{
      max-width:340px;
      width:100%;
      border-radius:var(--pill);
      background:#fff8f5;
      border:1px solid var(--border);
      color:#85727d;
      font-weight:700;
      padding:10px 14px;
      font-size:14px;
    }
    .screenshot-grid{
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:18px;
    }
    .preview-main{
      border-radius:30px;
      background:
        linear-gradient(135deg,#fff7fb,#fffefc),
        radial-gradient(circle at top right,rgba(46,196,182,.16),transparent 260px);
      border:1px solid var(--border);
      padding:24px;
      min-height:390px;
    }
    .preview-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
    .preview-tab{
      padding:8px 12px;
      border-radius:var(--pill);
      background:#fff;
      border:1px solid var(--border);
      font-weight:800;
      color:#68525f;
      font-size:14px;
    }
    .preview-tab.active{background:#2b2b33;color:#fff;border-color:#2b2b33}
    .preview-list{display:grid;gap:12px}
    .preview-row{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:15px;
      border-radius:22px;
      background:#fff;
      border:1px solid rgba(120,70,90,.10);
    }
    .preview-row strong{font-size:16px;color:#302732}
    .preview-row span{font-size:13px;color:var(--muted);font-weight:700}
    .mini-status{
      display:inline-flex;
      align-items:center;
      gap:6px;
      flex:0 0 auto;
      padding:6px 10px;
      border-radius:var(--pill);
      background:#eafff9;
      color:#0b7d66;
      font-size:12px;
      font-weight:900;
    }
    .preview-side{display:grid;gap:18px}
    .note-card,.metric-card,.soft-card{
      border-radius:28px;
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow-soft);
      padding:22px;
    }
    .metric-card{
      background:linear-gradient(135deg,#fff0f6,#fff);
    }
    .metric-card b{
      display:block;
      font-size:42px;
      line-height:1;
      font-weight:950;
      color:var(--primary);
      letter-spacing:-.04em;
    }
    .metric-card span{
      color:var(--muted);
      font-weight:700;
      display:block;
      margin-top:10px;
    }
    .step-road{
      position:relative;
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:18px;
      margin-top:26px;
    }
    .step-card{
      border-radius:30px;
      padding:24px;
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow-soft);
      position:relative;
      overflow:hidden;
      min-height:235px;
    }
    .step-num{
      width:46px;
      height:46px;
      display:grid;
      place-items:center;
      border-radius:17px;
      color:#fff;
      font-weight:950;
      background:linear-gradient(135deg,var(--primary),var(--pink));
      box-shadow:0 12px 24px rgba(184,50,128,.20);
      margin-bottom:18px;
    }
    .step-card:nth-child(2){transform:translateY(20px)}
    .step-card:nth-child(2) .step-num{background:linear-gradient(135deg,var(--mint),var(--mint-2))}
    .step-card:nth-child(3) .step-num{background:linear-gradient(135deg,var(--coral),var(--pink))}
    .step-card ul{
      margin:14px 0 0;
      padding:0;
      list-style:none;
      display:grid;
      gap:8px;
    }
    .step-card li{
      color:#625965;
      font-size:14px;
      font-weight:700;
      display:flex;
      gap:8px;
      align-items:flex-start;
    }
    .step-card li:before{
      content:"";
      width:7px;
      height:7px;
      border-radius:50%;
      background:var(--mint);
      margin-top:10px;
      flex:0 0 auto;
    }
    .invite-panel{
      border-radius:38px;
      background:
        radial-gradient(circle at 18% 18%,rgba(255,255,255,.34),transparent 210px),
        linear-gradient(135deg,#b83280,#ff4d8d 58%,#ff7b56);
      padding:28px;
      color:#fff;
      box-shadow:0 22px 60px rgba(184,50,128,.24);
      overflow:hidden;
      position:relative;
    }
    .invite-panel p,.invite-panel h2,.invite-panel h3{color:#fff}
    .invite-panel p{opacity:.88}
    .progress-card{
      background:rgba(255,255,255,.16);
      border:1px solid rgba(255,255,255,.30);
      border-radius:28px;
      padding:22px;
      backdrop-filter:blur(10px);
    }
    .progress-top{
      display:flex;
      justify-content:space-between;
      gap:16px;
      align-items:center;
      margin-bottom:14px;
      font-weight:900;
    }
    .progress{
      height:14px;
      background:rgba(255,255,255,.24);
      border-radius:var(--pill);
      overflow:hidden;
      margin-bottom:16px;
    }
    .progress-meter{
      width:68%;
      height:100%;
      border-radius:var(--pill);
      background:linear-gradient(90deg,#fff,#c7fff3);
      box-shadow:0 0 22px rgba(255,255,255,.40);
    }
    .rank-list{
      display:grid;
      gap:10px;
      margin-top:16px;
    }
    .rank-item{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      padding:12px 14px;
      border-radius:18px;
      background:rgba(255,255,255,.14);
      border:1px solid rgba(255,255,255,.18);
      font-weight:800;
    }
    .rank-item small{opacity:.82}
    .review-wall{
      display:grid;
      grid-template-columns:1fr 1.15fr .9fr;
      gap:18px;
      align-items:start;
    }
    .review-card{
      border-radius:30px;
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow-soft);
      padding:22px;
      transition:.22s var(--ease);
    }
    .review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
    .review-card.tall{min-height:280px}
    .review-head{
      display:flex;
      align-items:center;
      gap:12px;
      margin-bottom:16px;
    }
    .initial{
      width:44px;
      height:44px;
      display:grid;
      place-items:center;
      border-radius:16px;
      background:linear-gradient(135deg,#fff0f6,#eafff9);
      color:var(--primary);
      font-weight:950;
      border:1px solid var(--border);
    }
    .review-head strong{display:block;color:#302733}
    .review-head small{color:var(--muted);font-weight:700}
    .stars{color:#ff9d2e;letter-spacing:2px;font-weight:900;margin-bottom:10px}
    .news-layout{
      display:grid;
      grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
      gap:24px;
    }
    .news-list{
      border-radius:32px;
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow-soft);
      overflow:hidden;
    }
    .news-item{
      display:grid;
      grid-template-columns:96px 1fr auto;
      gap:16px;
      align-items:center;
      padding:20px;
      border-bottom:1px solid rgba(120,70,90,.09);
    }
    .news-item:last-child{border-bottom:0}
    .news-date{
      border-radius:20px;
      background:#fff4f8;
      color:var(--primary);
      padding:12px 10px;
      text-align:center;
      font-weight:950;
      line-height:1.2;
      border:1px solid rgba(184,50,128,.10);
    }
    .news-date small{display:block;color:#8c687a;font-size:12px;margin-top:4px}
    .news-item h3{font-size:18px;margin-bottom:4px}
    .news-item p{font-size:14px;margin:0}
    .arrow{
      width:40px;
      height:40px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:#fff8f5;
      color:var(--primary);
      font-weight:900;
      border:1px solid var(--border);
    }
    .news-item:hover{background:#fffafc}
    .news-item:hover .arrow{background:var(--primary);color:#fff}
    .side-stack{display:grid;gap:16px}
    .topic-chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
    .topic-chip{
      display:inline-flex;
      align-items:center;
      border-radius:var(--pill);
      background:#fff7fb;
      border:1px solid var(--border);
      padding:8px 11px;
      color:#624959;
      font-weight:800;
      font-size:13px;
    }
    .topic-chip:hover{background:var(--primary);color:#fff;border-color:var(--primary)}
    .download-card{
      border-radius:38px;
      border:1px solid rgba(120,70,90,.12);
      background:
        radial-gradient(circle at 12% 30%,rgba(46,196,182,.18),transparent 240px),
        linear-gradient(135deg,#ffffff,#fff3f8 62%,#fff8ee);
      box-shadow:var(--shadow);
      padding:32px;
      overflow:hidden;
    }
    .download-options{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:14px;
      margin-top:18px;
    }
    .option-card{
      border-radius:26px;
      background:#fff;
      border:1px solid var(--border);
      padding:18px;
      box-shadow:var(--shadow-soft);
    }
    .option-icon{
      width:42px;
      height:42px;
      border-radius:15px;
      display:grid;
      place-items:center;
      color:#fff;
      font-weight:950;
      background:linear-gradient(135deg,var(--primary),var(--pink));
      margin-bottom:12px;
    }
    .option-card:nth-child(2) .option-icon{background:linear-gradient(135deg,var(--mint),var(--mint-2))}
    .option-card:nth-child(3) .option-icon{background:linear-gradient(135deg,var(--coral),var(--pink))}
    .accordion{
      background:transparent;
      margin:24px 0 0;
    }
    .accordion-item{
      margin-bottom:12px;
      border-radius:22px;
      overflow:hidden;
      border:1px solid var(--border);
      background:#fff;
      box-shadow:var(--shadow-soft);
    }
    .accordion-title{
      border:0!important;
      color:#302733!important;
      font-weight:850;
      font-size:17px;
      padding:18px 56px 18px 20px;
      background:#fff;
    }
    .accordion-title:hover,.accordion-title:focus{background:#fff6fa;color:var(--primary)!important}
    .accordion-title:before{color:var(--primary);font-size:22px;margin-top:-12px}
    .accordion-content{
      border:0!important;
      padding:0 20px 20px;
      color:var(--muted);
      line-height:1.85;
      background:#fff;
      position:relative;
    }
    .accordion-content:before{
      content:"";
      display:block;
      width:56px;
      height:4px;
      border-radius:var(--pill);
      background:linear-gradient(90deg,var(--primary),var(--mint));
      margin-bottom:14px;
    }
    .contact-grid{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:24px;
      align-items:stretch;
    }
    .contact-note{
      border-radius:32px;
      background:#2b2b33;
      color:#fff;
      padding:28px;
      position:relative;
      overflow:hidden;
    }
    .contact-note:after{
      content:"";
      position:absolute;
      width:220px;
      height:220px;
      border-radius:50%;
      right:-80px;
      bottom:-90px;
      background:rgba(255,77,141,.22);
    }
    .contact-note h2,.contact-note p{color:#fff}
    .contact-note p{opacity:.78}
    .check-list{
      list-style:none;
      padding:0;
      margin:20px 0 0;
      display:grid;
      gap:12px;
      position:relative;
      z-index:1;
    }
    .check-list li{
      display:flex;
      gap:10px;
      color:rgba(255,255,255,.86);
      font-weight:700;
    }
    .check-list li:before{
      content:"✓";
      width:24px;
      height:24px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:rgba(46,196,182,.20);
      color:#9ff4e7;
      flex:0 0 auto;
      font-size:13px;
      font-weight:950;
    }
    .form-card{
      border-radius:32px;
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      padding:26px;
    }
    .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .form-card .btn{width:100%;margin-top:10px}
    .form-tip{
      margin:12px 0 0;
      font-size:13px;
      color:#8a7b84;
      line-height:1.7;
    }
    .site-footer{
      padding:54px 0 28px;
      background:linear-gradient(180deg,rgba(255,242,246,.55),rgba(255,248,245,.94));
      border-top:1px solid rgba(120,70,90,.10);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.2fr .8fr .8fr;
      gap:28px;
      align-items:start;
    }
    .footer-brand{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:14px;
      font-weight:950;
      color:#2d2230;
      font-size:18px;
    }
    .footer-links{
      list-style:none;
      padding:0;
      margin:8px 0 0;
      display:grid;
      gap:9px;
    }
    .footer-links a{
      color:#625965;
      font-weight:700;
    }
    .footer-links a:hover{color:var(--primary);padding-left:3px}
    .copyright{
      display:flex;
      justify-content:space-between;
      gap:16px;
      flex-wrap:wrap;
      margin-top:34px;
      padding-top:20px;
      border-top:1px solid rgba(120,70,90,.10);
      color:#8b7d85;
      font-size:13px;
    }
    .float-top{
      position:fixed;
      right:18px;
      bottom:18px;
      z-index:40;
      width:48px;
      height:48px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:#fff;
      color:var(--primary);
      border:1px solid var(--border);
      box-shadow:var(--shadow-soft);
      font-weight:950;
    }
    .float-top:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}
    @media (max-width:1024px){
      :root{--nav-h:62px}
      .section{padding:70px 0}
      .nav-menu,.nav-actions .desktop-cta{display:none}
      .menu-toggle{display:flex}
      .hero{padding-top:102px}
      .creator-content{padding-top:48px}
      .hero-board{padding-top:20px}
      .screenshot-grid,.news-layout,.contact-grid{grid-template-columns:1fr}
      .step-road{grid-template-columns:1fr}
      .step-card:nth-child(2){transform:none}
      .review-wall{grid-template-columns:1fr 1fr}
      .download-options{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .page-container{width:min(calc(100% - 28px),var(--container))}
      .nav-shell{width:min(calc(100% - 24px),var(--container));padding-left:10px}
      .brand span{font-size:15px}
      .brand-mark{width:38px;height:38px;border-radius:14px}
      .creator-hero{border-radius:30px;padding:20px}
      .cover-strip{height:112px}
      .creator-profile{align-items:center;gap:12px}
      .avatar{width:82px;height:82px;border-radius:26px;font-size:28px;border-width:5px}
      .profile-name strong{font-size:20px}
      .hero-stats{grid-template-columns:1fr}
      .hero-board{grid-template-columns:1fr}
      .vertical-card{min-height:160px}
      .section-head{display:block}
      .stage-toolbar{align-items:flex-start;flex-direction:column}
      .stage-search{max-width:none}
      .preview-row{align-items:flex-start;flex-direction:column}
      .review-wall{grid-template-columns:1fr}
      .news-item{grid-template-columns:1fr;gap:10px}
      .news-date{text-align:left}
      .form-row,.footer-grid{grid-template-columns:1fr}
    }
    @media (max-width:520px){
      body{line-height:1.75}
      .hero{padding-top:96px;padding-bottom:48px}
      .section{padding:56px 0}
      .lead{font-size:16px}
      .btn-row{flex-direction:column;align-items:stretch}
      .btn{width:100%}
      .creator-hero,.stage-wrap,.invite-panel,.download-card{border-radius:24px}
      .hero-board{
        display:flex;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        padding-bottom:8px;
      }
      .hero-board .vertical-card{
        min-width:78%;
        scroll-snap-align:start;
      }
      .stage-wrap,.preview-main,.form-card,.contact-note{padding:18px}
      .copyright{display:block}
      .copyright span{display:block;margin-top:8px}
    }

/* roulang page: category1 */
:root{
      --bg:#FFF8F5;
      --bg-2:#FFFBF7;
      --panel:#ffffff;
      --panel-soft:rgba(255,255,255,.78);
      --text:#2B2B33;
      --muted:#6F6F7A;
      --line:rgba(120,70,90,.12);
      --line-strong:rgba(184,50,128,.25);
      --primary:#B83280;
      --primary-2:#C0267A;
      --accent:#17B890;
      --accent-2:#FF6B4A;
      --shadow:0 16px 40px rgba(90, 40, 70, .08);
      --shadow-strong:0 22px 58px rgba(90, 40, 70, .14);
      --radius-xl:28px;
      --radius-lg:22px;
      --radius-md:18px;
      --radius-sm:14px;
      --container:1240px;
      --ease:cubic-bezier(.2,.7,.2,1);
    }
    *{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% 8%, rgba(184,50,128,.08), transparent 22%),
        radial-gradient(circle at 90% 10%, rgba(23,184,144,.10), transparent 24%),
        radial-gradient(circle at 82% 78%, rgba(255,107,74,.08), transparent 22%),
        linear-gradient(180deg, var(--bg), var(--bg-2) 62%, #fff 100%);
      line-height:1.85;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none;transition:.24s var(--ease)}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    ::selection{background:rgba(184,50,128,.18)}
    .page-container{
      width:min(var(--container), calc(100% - 32px));
      margin:0 auto;
    }
    .site-header{
      position:sticky;
      top:16px;
      z-index:60;
      padding:0 0 8px;
    }
    .nav-shell{
      width:min(var(--container), calc(100% - 20px));
      margin:0 auto;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      padding:14px 18px;
      border:1px solid rgba(120,70,90,.10);
      border-radius:999px;
      background:rgba(255,255,255,.82);
      backdrop-filter:blur(18px);
      box-shadow:0 14px 38px rgba(108, 46, 77, .10);
    }
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      font-weight:800;
      letter-spacing:.2px;
      color:var(--text);
      white-space:nowrap;
      flex:0 0 auto;
    }
    .brand-mark,
    .footer-brand .brand-mark{
      width:36px;height:36px;border-radius:50%;
      display:grid;place-items:center;
      color:#fff;
      background:linear-gradient(135deg, var(--primary), var(--accent-2));
      box-shadow:0 10px 24px rgba(184,50,128,.22);
      font-size:16px;
      font-weight:800;
      flex:0 0 auto;
    }
    .nav-menu{
      display:flex;
      align-items:center;
      gap:10px;
      list-style:none;
      margin:0;
      padding:0;
      flex:1 1 auto;
      justify-content:center;
    }
    .nav-menu a{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:11px 16px;
      border-radius:999px;
      font-weight:650;
      font-size:14px;
      color:var(--muted);
      border:1px solid transparent;
    }
    .nav-menu a:hover,
    .nav-menu a:focus-visible{
      background:rgba(184,50,128,.08);
      color:var(--primary);
      outline:none;
    }
    .nav-menu a.active{
      color:var(--primary);
      background:rgba(184,50,128,.12);
      border-color:rgba(184,50,128,.16);
      box-shadow:inset 0 0 0 1px rgba(184,50,128,.08);
    }
    .nav-actions{
      display:flex;
      align-items:center;
      gap:12px;
      flex:0 0 auto;
    }
    .button, .btn{
      border-radius:999px;
      font-weight:700;
      border:0;
      transition:transform .24s var(--ease), box-shadow .24s var(--ease), background .24s var(--ease), color .24s var(--ease), border-color .24s var(--ease);
    }
    .button{
      padding:13px 20px;
      font-size:14px;
      line-height:1;
    }
    .button.primary,
    .btn-primary{
      color:#fff;
      background:linear-gradient(135deg, var(--primary), var(--accent-2));
      box-shadow:0 14px 30px rgba(184,50,128,.22);
    }
    .button.primary:hover,
    .btn-primary:hover,
    .button.primary:focus-visible,
    .btn-primary:focus-visible{
      transform:translateY(-2px);
      color:#fff;
      box-shadow:0 18px 36px rgba(184,50,128,.28);
      outline:none;
    }
    .button.secondary{
      color:var(--primary);
      background:#fff;
      border:1px solid rgba(184,50,128,.18);
    }
    .button.secondary:hover,
    .button.secondary:focus-visible{
      background:rgba(184,50,128,.06);
      transform:translateY(-2px);
      outline:none;
    }
    .desktop-cta{display:inline-flex}
    .menu-toggle{
      display:none;
      width:46px;height:46px;
      border-radius:50%;
      border:1px solid rgba(184,50,128,.18);
      background:#fff;
      align-items:center;
      justify-content:center;
      box-shadow:0 10px 24px rgba(90,40,70,.08);
      cursor:pointer;
      transition:.24s var(--ease);
    }
    .menu-toggle:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(90,40,70,.12)}
    .menu-toggle span{
      position:relative;
      width:18px;height:2px;
      background:var(--primary);
      border-radius:2px;
      display:block;
    }
    .menu-toggle span::before,
    .menu-toggle span::after{
      content:"";
      position:absolute;
      left:0;
      width:18px;height:2px;
      background:var(--primary);
      border-radius:2px;
      transition:.24s var(--ease);
    }
    .menu-toggle span::before{top:-6px}
    .menu-toggle span::after{top:6px}
    .menu-toggle.is-open span{background:transparent}
    .menu-toggle.is-open span::before{transform:translateY(6px) rotate(45deg)}
    .menu-toggle.is-open span::after{transform:translateY(-6px) rotate(-45deg)}
    .mobile-panel{
      display:none;
      width:min(var(--container), calc(100% - 20px));
      margin:12px auto 0;
      padding:12px;
      border-radius:24px;
      background:rgba(255,255,255,.92);
      border:1px solid rgba(120,70,90,.10);
      box-shadow:var(--shadow);
      backdrop-filter:blur(18px);
    }
    .mobile-panel a{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      padding:14px 14px;
      border-radius:16px;
      font-weight:650;
      color:var(--text);
    }
    .mobile-panel a + a{margin-top:4px}
    .mobile-panel a span{
      font-size:12px;
      color:var(--muted);
      padding:6px 10px;
      border-radius:999px;
      background:rgba(184,50,128,.07);
    }
    .mobile-panel a.active,
    .mobile-panel a:hover{
      background:rgba(184,50,128,.08);
      color:var(--primary);
    }

    main{padding-bottom:52px}
    .hero{
      position:relative;
      padding:92px 0 32px;
      overflow:hidden;
    }
    .hero::before,
    .hero::after{
      content:"";
      position:absolute;
      border-radius:50%;
      pointer-events:none;
      filter:blur(8px);
    }
    .hero::before{
      width:260px;height:260px;
      right:-90px;top:38px;
      background:radial-gradient(circle, rgba(184,50,128,.16), transparent 68%);
    }
    .hero::after{
      width:220px;height:220px;
      left:-80px;bottom:-10px;
      background:radial-gradient(circle, rgba(23,184,144,.12), transparent 68%);
    }
    .hero-grid{
      display:grid;
      grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
      gap:28px;
      align-items:stretch;
    }
    .hero-copy{
      padding:24px 8px 6px 0;
      position:relative;
      z-index:2;
    }
    .hero-badges{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-bottom:18px;
    }
    .pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 14px;
      border-radius:999px;
      font-size:14px;
      font-weight:650;
      line-height:1;
      border:1px solid transparent;
    }
    .pill.primary{
      color:var(--primary);
      background:rgba(184,50,128,.10);
      border-color:rgba(184,50,128,.14);
    }
    .pill.teal{
      color:#0f7e66;
      background:rgba(23,184,144,.12);
      border-color:rgba(23,184,144,.14);
    }
    .pill.warm{
      color:#b94c20;
      background:rgba(255,107,74,.12);
      border-color:rgba(255,107,74,.14);
    }
    h1,h2,h3,h4{
      margin:0 0 14px;
      line-height:1.22;
      letter-spacing:.2px;
      color:#22212a;
    }
    h1{
      font-size:clamp(32px, 4.4vw, 52px);
      font-weight:800;
      max-width:12em;
    }
    .lead{
      font-size:clamp(16px, 1.42vw, 18px);
      color:var(--muted);
      max-width:38em;
      margin-bottom:24px;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin-bottom:18px;
    }
    .trust-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px 18px;
      margin-top:16px;
      color:var(--muted);
      font-size:14px;
    }
    .trust-row span{
      display:inline-flex;
      align-items:center;
      gap:8px;
    }
    .trust-row i{
      width:8px;height:8px;border-radius:50%;
      background:linear-gradient(135deg, var(--accent), var(--primary));
      display:inline-block;
      box-shadow:0 0 0 4px rgba(23,184,144,.10);
    }

    .hero-panel{
      position:relative;
      z-index:2;
      display:grid;
      gap:14px;
      align-content:stretch;
    }
    .hero-panel .panel-head{
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap:14px;
      margin-bottom:2px;
    }
    .hero-panel .panel-head h3{
      margin-bottom:6px;
      font-size:24px;
    }
    .hero-panel .panel-head p{
      margin:0;
      color:var(--muted);
      font-size:14px;
    }
    .status-bar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      padding:12px 16px;
      border-radius:18px;
      background:rgba(255,255,255,.82);
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .status-dot{
      width:10px;height:10px;border-radius:50%;
      background:var(--accent);
      box-shadow:0 0 0 5px rgba(23,184,144,.12);
      flex:0 0 auto;
    }
    .status-bar strong{display:block;font-size:15px}
    .status-bar span{display:block;color:var(--muted);font-size:13px}
    .matrix{
      display:grid;
      grid-template-columns:repeat(2, minmax(0,1fr));
      gap:14px;
    }
    .mini-card{
      min-height:150px;
      padding:18px 18px 16px;
      border-radius:24px;
      background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.86));
      border:1px solid var(--line);
      box-shadow:var(--shadow);
      transition:transform .24s var(--ease), box-shadow .24s var(--ease), border-color .24s var(--ease);
      position:relative;
      overflow:hidden;
    }
    .mini-card::before{
      content:"";
      position:absolute;
      inset:auto -30px -30px auto;
      width:94px;height:94px;border-radius:50%;
      background:radial-gradient(circle, rgba(184,50,128,.12), transparent 72%);
    }
    .mini-card:hover{
      transform:translateY(-3px);
      box-shadow:var(--shadow-strong);
      border-color:rgba(184,50,128,.22);
    }
    .mini-kicker{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:6px 10px;
      border-radius:999px;
      font-size:12px;
      font-weight:700;
      color:var(--primary);
      background:rgba(184,50,128,.08);
      margin-bottom:12px;
    }
    .mini-card h4{
      font-size:18px;
      margin-bottom:8px;
    }
    .mini-card p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.75;
    }
    .mini-meta{
      margin-top:12px;
      display:flex;
      align-items:center;
      gap:8px;
      color:#0f7e66;
      font-size:12px;
      font-weight:700;
    }

    .section{
      padding:72px 0;
      position:relative;
    }
    .section-head{
      margin-bottom:26px;
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:18px;
      flex-wrap:wrap;
    }
    .section-head h2{
      font-size:clamp(24px, 3vw, 38px);
      font-weight:800;
      margin-bottom:8px;
    }
    .section-head p{
      margin:0;
      color:var(--muted);
      max-width:48em;
    }
    .section-note{
      color:var(--primary);
      font-weight:700;
      font-size:14px;
      padding:8px 14px;
      border-radius:999px;
      background:rgba(184,50,128,.08);
      border:1px solid rgba(184,50,128,.14);
      white-space:nowrap;
    }

    .callout-card,
    .info-card,
    .stat-card,
    .compare-card,
    .testimonial-card,
    .contact-card,
    .faq-shell,
    .side-card{
      border-radius:var(--radius-lg);
      border:1px solid var(--line);
      background:rgba(255,255,255,.90);
      box-shadow:var(--shadow);
    }
    .callout-card{
      padding:22px;
    }
    .problem-grid{
      display:grid;
      grid-template-columns:1.12fr .88fr;
      gap:18px;
    }
    .problem-grid .feature-list{
      display:grid;
      gap:14px;
    }
    .problem-item{
      padding:18px 18px 18px 20px;
      border-radius:22px;
      background:linear-gradient(180deg, #fff, rgba(255,255,255,.86));
      border:1px solid var(--line);
      display:flex;
      gap:14px;
      align-items:flex-start;
      transition:transform .24s var(--ease), box-shadow .24s var(--ease), border-color .24s var(--ease);
    }
    .problem-item:hover{
      transform:translateY(-2px);
      box-shadow:var(--shadow);
      border-color:rgba(184,50,128,.20);
    }
    .problem-index{
      width:38px;height:38px;border-radius:50%;
      display:grid;place-items:center;
      color:#fff;
      background:linear-gradient(135deg, var(--primary), var(--accent-2));
      box-shadow:0 10px 22px rgba(184,50,128,.20);
      font-weight:800;
      flex:0 0 auto;
    }
    .problem-item h3{
      font-size:20px;
      margin-bottom:6px;
    }
    .problem-item p{
      margin:0;
      color:var(--muted);
      font-size:15px;
      line-height:1.8;
    }
    .highlight-card{
      position:sticky;
      top:112px;
      padding:22px;
      border-radius:26px;
      background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.88)),
        radial-gradient(circle at top right, rgba(184,50,128,.12), transparent 35%);
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .highlight-card h3{
      font-size:22px;
      margin-bottom:12px;
    }
    .highlight-card p{
      margin:0 0 16px;
      color:var(--muted);
      font-size:15px;
    }
    .small-stack{
      display:grid;
      gap:12px;
    }
    .small-row{
      padding:14px 14px 14px 16px;
      border-radius:18px;
      background:rgba(184,50,128,.05);
      border:1px solid rgba(184,50,128,.10);
      display:flex;
      justify-content:space-between;
      gap:10px;
      align-items:center;
      font-size:14px;
    }
    .small-row strong{color:var(--text)}
    .small-row span{color:var(--muted)}

    .workflow{
      display:grid;
      grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
      gap:18px;
      align-items:stretch;
    }
    .stepper{
      padding:18px;
      border-radius:26px;
      background:rgba(255,255,255,.90);
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .stepper-list{
      display:grid;
      gap:14px;
      margin:0;
      padding:0;
      list-style:none;
    }
    .step{
      display:grid;
      grid-template-columns:52px minmax(0,1fr);
      gap:14px;
      align-items:start;
      position:relative;
      padding:6px 4px;
    }
    .step:not(:last-child)::after{
      content:"";
      position:absolute;
      left:25px;
      top:56px;
      bottom:-6px;
      width:2px;
      background:linear-gradient(180deg, rgba(184,50,128,.38), rgba(23,184,144,.20));
    }
    .step-num{
      width:52px;height:52px;border-radius:50%;
      display:grid;place-items:center;
      font-weight:800;
      font-size:18px;
      background:rgba(184,50,128,.10);
      color:var(--primary);
      border:1px solid rgba(184,50,128,.14);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);
    }
    .step.active .step-num{
      color:#fff;
      background:linear-gradient(135deg, var(--primary), var(--accent-2));
      border-color:transparent;
      box-shadow:0 12px 24px rgba(184,50,128,.20);
    }
    .step h3{
      font-size:18px;
      margin-bottom:6px;
    }
    .step p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.8;
    }
    .workflow-card{
      padding:22px;
      border-radius:26px;
      background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.88));
      border:1px solid var(--line);
      box-shadow:var(--shadow);
      display:grid;
      gap:14px;
      align-content:start;
    }
    .workflow-card h3{
      font-size:22px;
      margin-bottom:4px;
    }
    .workflow-card .summary{
      color:var(--muted);
      margin:0;
    }
    .spot-list{
      display:grid;
      grid-template-columns:repeat(2, minmax(0,1fr));
      gap:12px;
    }
    .spot{
      padding:14px 14px 15px;
      border-radius:18px;
      background:rgba(247,250,248,.9);
      border:1px solid rgba(23,184,144,.12);
    }
    .spot .label{
      display:inline-flex;
      margin-bottom:8px;
      font-size:12px;
      color:#0f7e66;
      font-weight:700;
      padding:5px 8px;
      border-radius:999px;
      background:rgba(23,184,144,.10);
    }
    .spot strong{
      display:block;
      margin-bottom:4px;
      font-size:15px;
    }
    .spot p{
      margin:0;
      color:var(--muted);
      font-size:13px;
      line-height:1.7;
    }

    .result-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:16px;
      margin-bottom:18px;
    }
    .stat-card{
      padding:22px;
      min-height:160px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      position:relative;
      overflow:hidden;
    }
    .stat-card::after{
      content:"";
      position:absolute;
      right:-40px; bottom:-50px;
      width:140px;height:140px;border-radius:50%;
      background:radial-gradient(circle, rgba(255,107,74,.10), transparent 64%);
      pointer-events:none;
    }
    .stat-value{
      font-size:42px;
      line-height:1;
      font-weight:800;
      color:var(--primary);
      margin-bottom:10px;
    }
    .stat-label{
      font-weight:700;
      margin-bottom:8px;
      font-size:16px;
    }
    .stat-card p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.75;
      max-width:18em;
    }
    .compare-card{
      padding:22px;
      display:grid;
      grid-template-columns:repeat(2, minmax(0,1fr));
      gap:18px;
      align-items:start;
    }
    .compare-card .compare-col{
      padding:18px;
      border-radius:20px;
      background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,255,255,.88));
      border:1px solid var(--line);
    }
    .compare-card .compare-col h3{
      font-size:18px;
      margin-bottom:10px;
    }
    .compare-card ul{
      margin:0;
      padding-left:18px;
      color:var(--muted);
      line-height:1.9;
      font-size:14px;
    }
    .compare-card li + li{margin-top:6px}
    .compare-col.good{
      border-color:rgba(23,184,144,.18);
      box-shadow:inset 0 0 0 1px rgba(23,184,144,.06);
      background:linear-gradient(180deg, rgba(247,250,248,.98), rgba(255,255,255,.95));
    }
    .compare-tag{
      display:inline-flex;
      margin-bottom:12px;
      padding:6px 10px;
      border-radius:999px;
      font-size:12px;
      font-weight:700;
      background:rgba(184,50,128,.08);
      color:var(--primary);
    }

    .feedback-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:16px;
    }
    .testimonial-card{
      padding:20px;
      min-height:220px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      transition:transform .24s var(--ease), box-shadow .24s var(--ease);
    }
    .testimonial-card:hover{
      transform:translateY(-3px);
      box-shadow:var(--shadow-strong);
    }
    .quote{
      font-size:16px;
      line-height:1.85;
      color:var(--text);
      margin:0;
    }
    .profile{
      display:flex;
      align-items:center;
      gap:12px;
      margin-top:18px;
    }
    .avatar{
      width:46px;height:46px;border-radius:50%;
      display:grid;place-items:center;
      font-weight:800;
      color:#fff;
      background:linear-gradient(135deg, var(--primary), var(--accent));
      box-shadow:0 10px 20px rgba(184,50,128,.20);
      flex:0 0 auto;
    }
    .profile strong{
      display:block;
      font-size:15px;
    }
    .profile span{
      display:block;
      font-size:13px;
      color:var(--muted);
    }
    .stars{
      display:flex;
      gap:4px;
      margin-bottom:12px;
      color:#FFB340;
      font-size:15px;
    }

    .faq-wrap{
      display:grid;
      grid-template-columns:minmax(0,1fr) 340px;
      gap:18px;
      align-items:start;
    }
    .faq-shell{
      padding:10px;
    }
    .accordion{
      margin:0;
      background:transparent;
      border:0;
    }
    .accordion-item{
      border:0;
      margin-bottom:10px;
      border-radius:20px;
      overflow:hidden;
      background:#fff;
      border:1px solid var(--line);
      box-shadow:0 10px 24px rgba(90, 40, 70, .05);
    }
    .accordion-title{
      font-size:16px;
      font-weight:700;
      color:var(--text);
      padding:18px 18px 18px 20px;
      border:0;
      background:#fff;
      transition:.24s var(--ease);
    }
    .accordion-title:hover{background:rgba(184,50,128,.04)}
    .accordion-title::before{
      right:20px;
      color:var(--primary);
      font-size:24px;
      margin-top:-12px;
    }
    .accordion-content{
      border:0;
      padding:0 20px 18px;
      color:var(--muted);
      font-size:15px;
      line-height:1.85;
    }
    .accordion-content p{margin:0}
    .faq-side{
      position:sticky;
      top:112px;
      display:grid;
      gap:14px;
    }
    .side-card{
      padding:20px;
    }
    .side-card h3{
      font-size:20px;
      margin-bottom:10px;
    }
    .side-card p{
      margin:0;
      color:var(--muted);
      font-size:14px;
      line-height:1.8;
    }
    .side-card .mini-links{
      display:grid;
      gap:10px;
      margin-top:14px;
    }
    .mini-link{
      display:flex;
      justify-content:space-between;
      gap:10px;
      padding:12px 14px;
      border-radius:16px;
      border:1px solid rgba(184,50,128,.12);
      background:rgba(184,50,128,.04);
      font-size:14px;
      font-weight:650;
      color:var(--text);
    }

    .contact-card{
      padding:24px;
      overflow:hidden;
      background:
        linear-gradient(135deg, rgba(184,50,128,.08), rgba(255,107,74,.06) 45%, rgba(255,255,255,.98) 72%),
        #fff;
    }
    .contact-grid{
      display:grid;
      grid-template-columns:1fr .9fr;
      gap:18px;
      align-items:start;
    }
    .contact-copy h2{
      margin-bottom:10px;
    }
    .contact-copy p{
      margin:0 0 14px;
      color:var(--muted);
      max-width:34em;
    }
    .tag-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:18px;
    }
    .tag-chip{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:9px 12px;
      border-radius:999px;
      font-size:13px;
      font-weight:700;
      color:var(--primary);
      background:rgba(184,50,128,.08);
      border:1px solid rgba(184,50,128,.14);
    }
    .contact-form{
      display:grid;
      gap:14px;
      padding:18px;
      border-radius:22px;
      background:rgba(255,255,255,.9);
      border:1px solid rgba(184,50,128,.14);
      box-shadow:var(--shadow);
    }
    .form-row{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
    }
    .field{
      display:grid;
      gap:8px;
    }
    label{
      font-size:14px;
      font-weight:700;
      color:#373645;
    }
    input, select, textarea{
      width:100%;
      border-radius:16px;
      border:1px solid rgba(120,70,90,.14);
      background:#fff;
      padding:13px 14px;
      color:var(--text);
      outline:none;
      transition:.24s var(--ease);
      box-shadow:0 1px 0 rgba(255,255,255,.6);
    }
    textarea{min-height:118px;resize:vertical}
    input::placeholder, textarea::placeholder{color:#94929d}
    input:focus, select:focus, textarea:focus{
      border-color:rgba(184,50,128,.40);
      box-shadow:0 0 0 4px rgba(184,50,128,.10);
    }
    .form-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      align-items:center;
      justify-content:space-between;
      margin-top:2px;
    }
    .form-hint{
      color:var(--muted);
      font-size:13px;
    }

    .site-footer{
      padding:30px 0 26px;
      margin-top:24px;
      background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(247,250,248,.98));
      border-top:1px solid rgba(120,70,90,.10);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.18fr .7fr .8fr;
      gap:24px;
      padding:24px 0 18px;
    }
    .footer-brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      font-weight:800;
      font-size:18px;
      margin-bottom:12px;
    }
    .site-footer p{
      color:var(--muted);
      margin:0;
      max-width:32em;
      line-height:1.9;
      font-size:14px;
    }
    .footer-links{
      list-style:none;
      padding:0;
      margin:0;
    }
    .footer-links li + li{margin-top:10px}
    .footer-links a{
      color:var(--muted);
      font-size:14px;
    }
    .footer-links a:hover,
    .footer-links a:focus-visible{
      color:var(--primary);
      outline:none;
    }
    .site-footer h3{
      font-size:16px;
      margin-bottom:12px;
    }
    .copyright{
      display:flex;
      justify-content:space-between;
      gap:12px;
      flex-wrap:wrap;
      padding-top:18px;
      border-top:1px solid rgba(120,70,90,.10);
      color:var(--muted);
      font-size:13px;
    }

    .grid-gap-16{gap:16px}
    .mt-12{margin-top:12px}
    .mt-16{margin-top:16px}
    .mt-18{margin-top:18px}
    .mt-20{margin-top:20px}
    .mt-24{margin-top:24px}
    .mb-0{margin-bottom:0}
    .subtle{
      color:var(--muted);
      font-size:14px;
      line-height:1.8;
    }
    .bordered{
      border:1px solid var(--line);
    }

    @media (max-width: 1024px){
      .nav-shell{
        border-radius:26px;
        padding:14px 16px;
      }
      .nav-menu{display:none}
      .desktop-cta{display:none}
      .menu-toggle{display:inline-flex}
      .mobile-panel.is-open{display:block}
      .hero{padding-top:62px}
      .hero-grid,
      .problem-grid,
      .workflow,
      .faq-wrap,
      .contact-grid,
      .footer-grid{
        grid-template-columns:1fr;
      }
      .hero-copy{padding-right:0}
      .highlight-card,
      .faq-side{
        position:static;
      }
      .result-grid,
      .feedback-grid{
        grid-template-columns:repeat(2, minmax(0,1fr));
      }
      .matrix{
        grid-template-columns:repeat(2, minmax(0,1fr));
      }
      .footer-grid{gap:18px}
    }
    @media (max-width: 768px){
      .page-container{width:min(var(--container), calc(100% - 22px))}
      .site-header{top:10px}
      .nav-shell{
        width:min(var(--container), calc(100% - 12px));
        border-radius:22px;
        padding:12px 14px;
      }
      .brand{font-size:15px}
      .brand-mark,.footer-brand .brand-mark{width:32px;height:32px}
      .hero{padding:56px 0 24px}
      h1{max-width:none}
      .lead{max-width:none}
      .hero-actions .button,
      .form-actions .button{
        width:100%;
        justify-content:center;
      }
      .hero-actions{display:grid;grid-template-columns:1fr}
      .matrix,
      .result-grid,
      .feedback-grid,
      .spot-list,
      .form-row{
        grid-template-columns:1fr;
      }
      .compare-card{
        grid-template-columns:1fr;
      }
      .section{padding:56px 0}
      .section-head{
        align-items:flex-start;
      }
      .section-note{white-space:normal}
      .problem-item{
        padding:16px;
      }
      .step{
        grid-template-columns:46px minmax(0,1fr);
      }
      .step-num{
        width:46px;height:46px;font-size:16px;
      }
      .step:not(:last-child)::after{left:22px;top:48px}
      .stat-card{min-height:auto}
      .contact-card{padding:18px}
      .contact-form{padding:14px}
      .copyright{
        flex-direction:column;
      }
    }
    @media (max-width: 520px){
      .hero-badges{gap:8px}
      .pill{font-size:12px;padding:7px 10px}
      h1{font-size:clamp(30px, 9vw, 38px)}
      .section-head h2{font-size:clamp(24px, 7vw, 30px)}
      .mini-card,.callout-card,.stat-card,.testimonial-card,.side-card{border-radius:20px}
      .status-bar{padding:11px 14px}
      .accordion-title{padding:16px 16px 16px 18px}
      .accordion-content{padding:0 18px 16px}
    }
