/* roulang page: index */
:root{
      --bg:#fff9f7;
      --bg-soft:#fbf7ff;
      --bg-mint:#f4fffc;
      --card:#ffffff;
      --text:#2f2b36;
      --muted:#736b7d;
      --weak:#9d94a9;
      --line:#eee3ed;
      --line-strong:#e6d5e2;
      --primary:#ff7f96;
      --primary-deep:#ef657f;
      --primary-soft:#ffe7ec;
      --secondary:#a98cf7;
      --secondary-soft:#f0eaff;
      --accent:#55cfc2;
      --accent-soft:#e8fbf8;
      --cream:#fff1df;
      --shadow:0 18px 50px rgba(82,56,88,.10);
      --shadow-hover:0 22px 60px rgba(82,56,88,.16);
      --radius:26px;
      --radius-sm:18px;
      --radius-xs:12px;
      --container:1200px;
      --nav-h:74px;
      --ease:all .24s ease;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--text);
      background:
        radial-gradient(circle at 8% 8%, rgba(255,127,150,.13), transparent 28%),
        radial-gradient(circle at 84% 18%, rgba(169,140,247,.12), transparent 26%),
        linear-gradient(180deg,var(--bg) 0%,#fff 42%,var(--bg-soft) 100%);
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      line-height:1.75;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none;transition:var(--ease)}
    a:hover,a:focus{color:var(--primary-deep)}
    button,input,select,textarea{font:inherit}
    img{max-width:100%;display:block}
    .site-container{width:min(calc(100% - 40px),var(--container));margin:0 auto}
    .section{padding:86px 0;position:relative}
    .section.compact{padding:58px 0}
    .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px}
    .section-kicker{
      display:inline-flex;align-items:center;gap:8px;
      color:var(--primary-deep);font-size:13px;font-weight:750;letter-spacing:.04em;
      background:var(--primary-soft);border:1px solid rgba(255,127,150,.22);
      padding:7px 12px;border-radius:999px;margin-bottom:12px;
    }
    .section-kicker::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--primary)}
    h1,h2,h3,h4,p{margin-top:0}
    h1{
      font-size:clamp(32px,5vw,56px);
      line-height:1.13;
      letter-spacing:-.04em;
      font-weight:850;
      margin-bottom:18px;
      color:#282330;
    }
    h2{
      font-size:clamp(26px,3.5vw,38px);
      line-height:1.22;
      letter-spacing:-.03em;
      font-weight:820;
      margin-bottom:10px;
    }
    h3{font-size:21px;line-height:1.35;font-weight:800;margin-bottom:10px}
    .lead{font-size:17px;color:var(--muted);max-width:690px}
    .muted{color:var(--muted)}
    .mini{font-size:13px;color:var(--weak)}
    .site-header{
      position:sticky;top:0;z-index:50;
      background:rgba(255,255,255,.88);
      backdrop-filter:saturate(160%) blur(18px);
      border-bottom:1px solid rgba(238,227,237,.9);
    }
    .top-bar{
      max-width:var(--container);
      margin:0 auto;
      min-height:var(--nav-h);
      padding:0 20px;
      background:transparent;
    }
    .top-bar,.top-bar ul{background:transparent}
    .brand{
      display:inline-flex;align-items:center;gap:12px;
      font-weight:850;color:var(--text);
      letter-spacing:-.02em;
      min-height:44px;
    }
    .brand-mark{
      width:34px;height:34px;border-radius:12px;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:0 10px 24px rgba(255,127,150,.24);
      position:relative;
    }
    .brand-mark::after{
      content:"";position:absolute;inset:8px;border-radius:8px;
      border:1px solid rgba(255,255,255,.75);
      background:rgba(255,255,255,.18);
    }
    .menu.simple li+li{margin-left:8px}
    .nav-link{
      position:relative;
      display:inline-flex!important;align-items:center;gap:7px;
      min-height:42px;
      padding:10px 14px!important;
      color:#4c4557;
      font-size:14px;
      font-weight:700;
      border-radius:999px;
    }
    .nav-link:hover{background:var(--bg-soft);color:var(--primary-deep)}
    .nav-link.active{
      color:var(--primary-deep);
      background:#fff2f5;
    }
    .nav-link.active::after{
      content:"";position:absolute;left:18px;right:18px;bottom:5px;height:2px;
      background:linear-gradient(90deg,var(--primary),var(--secondary));
      border-radius:999px;
    }
    .menu-toggle{
      display:none;
      border:1px solid var(--line-strong);
      border-radius:999px;
      padding:9px 14px;
      background:#fff;
      color:var(--text);
      font-weight:750;
      cursor:pointer;
    }
    .menu-toggle:hover{border-color:rgba(255,127,150,.5);background:var(--primary-soft)}
    .hero{
      padding:64px 0 38px;
    }
    .hero-stage{
      position:relative;
      overflow:hidden;
      border:1px solid var(--line);
      border-radius:34px;
      background:
        linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,246,250,.90) 45%,rgba(246,241,255,.94)),
        radial-gradient(circle at 90% 10%,rgba(85,207,194,.18),transparent 28%);
      box-shadow:var(--shadow);
      padding:42px;
    }
    .hero-stage::before{
      content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;
      background:rgba(255,127,150,.11);
    }
    .hero-stage::after{
      content:"";position:absolute;left:-60px;bottom:-80px;width:220px;height:220px;border-radius:42%;
      background:rgba(169,140,247,.10);
    }
    .hero-content{position:relative;z-index:1}
    .hero-badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
    .badge{
      display:inline-flex;align-items:center;gap:7px;
      padding:7px 12px;border-radius:999px;
      font-size:13px;font-weight:750;
      border:1px solid var(--line);
      color:#5a5165;
      background:rgba(255,255,255,.72);
    }
    .badge .dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 22px}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      min-height:46px;
      padding:13px 20px;
      border-radius:999px;
      font-weight:800;
      line-height:1;
      border:1px solid transparent;
      cursor:pointer;
      transition:var(--ease);
    }
    .btn-primary{
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--primary-deep));
      box-shadow:0 12px 28px rgba(255,127,150,.28);
    }
    .btn-primary:hover,.btn-primary:focus{
      color:#fff;transform:translateY(-2px);
      box-shadow:0 16px 34px rgba(239,101,127,.34);
    }
    .btn-secondary{
      color:#4b4059;background:#fff;border-color:var(--line-strong);
    }
    .btn-secondary:hover,.btn-secondary:focus{
      color:var(--primary-deep);
      background:#fff4f6;
      border-color:rgba(255,127,150,.45);
      transform:translateY(-2px);
    }
    .btn-soft{
      color:var(--primary-deep);background:var(--primary-soft);border-color:rgba(255,127,150,.18);
    }
    .btn-soft:hover{background:#ffdae2;color:#db526e}
    .hero-note{
      display:flex;align-items:flex-start;gap:10px;
      color:#6a6175;font-size:14px;
      background:rgba(255,255,255,.68);
      border:1px solid var(--line);
      border-radius:18px;
      padding:12px 14px;
      max-width:680px;
    }
    .hero-note strong{color:var(--primary-deep)}
    .support-panel{
      position:relative;z-index:1;
      background:rgba(255,255,255,.86);
      border:1px solid var(--line);
      border-radius:28px;
      padding:22px;
      box-shadow:0 14px 42px rgba(95,69,108,.10);
    }
    .progress-wrap{
      display:grid;
      grid-template-columns:148px 1fr;
      gap:22px;
      align-items:center;
      margin-bottom:18px;
    }
    .ring{
      width:148px;height:148px;border-radius:50%;
      background:conic-gradient(var(--primary) 0 68%,var(--secondary-soft) 68% 100%);
      display:grid;place-items:center;
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),0 12px 28px rgba(255,127,150,.18);
    }
    .ring-inner{
      width:108px;height:108px;border-radius:50%;
      background:#fff;
      display:grid;place-items:center;text-align:center;
      border:1px solid var(--line);
    }
    .ring-inner strong{font-size:30px;line-height:1;color:var(--primary-deep)}
    .ring-inner span{display:block;font-size:12px;color:var(--weak);margin-top:4px}
    .tier-list{display:grid;gap:10px}
    .tier{
      display:flex;align-items:center;justify-content:space-between;gap:12px;
      padding:12px 13px;border-radius:18px;
      background:linear-gradient(90deg,#fff,var(--bg-soft));
      border:1px solid var(--line);
    }
    .tier b{font-size:14px}
    .tier span{font-size:12px;color:var(--muted)}
    .metric-strip{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:10px;
      margin-top:16px;
    }
    .metric-mini{
      border:1px solid var(--line);
      background:#fff;
      border-radius:18px;
      padding:13px;
    }
    .metric-mini strong{display:block;font-size:20px;color:#302936;line-height:1.2}
    .metric-mini span{font-size:12px;color:var(--weak)}
    .series-nav{
      padding-top:34px;
    }
    .series-card{
      min-height:100%;
      border:1px solid var(--line);
      background:#fff;
      border-radius:24px;
      padding:24px;
      box-shadow:0 10px 34px rgba(82,56,88,.07);
      transition:var(--ease);
      position:relative;
      overflow:hidden;
    }
    .series-card::after{
      content:"";position:absolute;right:-36px;top:-36px;width:96px;height:96px;border-radius:30px;
      background:rgba(169,140,247,.12);transform:rotate(14deg);
    }
    .series-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:rgba(255,127,150,.36)}
    .index-tag{
      display:inline-flex;align-items:center;justify-content:center;
      min-width:42px;height:28px;border-radius:999px;
      background:linear-gradient(135deg,var(--primary-soft),var(--secondary-soft));
      color:var(--primary-deep);font-size:12px;font-weight:850;
      margin-bottom:16px;
    }
    .card-link{
      display:inline-flex;align-items:center;gap:6px;
      margin-top:12px;color:var(--primary-deep);font-weight:800;font-size:14px;
    }
    .feature-matrix{
      background:linear-gradient(180deg,#fff 0%,#fff7fb 100%);
      border-top:1px solid rgba(238,227,237,.7);
      border-bottom:1px solid rgba(238,227,237,.7);
    }
    .matrix-card{
      border:1px solid var(--line);
      border-radius:var(--radius);
      background:rgba(255,255,255,.88);
      box-shadow:var(--shadow);
      padding:25px;
      min-height:100%;
      transition:var(--ease);
      position:relative;
      overflow:hidden;
    }
    .matrix-card.large{min-height:322px}
    .matrix-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:rgba(169,140,247,.34)}
    .matrix-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}
    .soft-label{
      font-size:12px;font-weight:800;color:#6f5aa8;
      background:var(--secondary-soft);
      border:1px solid rgba(169,140,247,.18);
      border-radius:999px;padding:6px 10px;
      white-space:nowrap;
    }
    .attr-list{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}
    .attr-list li{
      display:flex;align-items:center;justify-content:space-between;gap:12px;
      padding:10px 0;border-top:1px dashed var(--line);
      color:var(--muted);font-size:14px;
    }
    .bar{
      width:92px;height:8px;border-radius:999px;background:#f2edf5;overflow:hidden;flex:0 0 auto;
    }
    .bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--secondary));}
    .showcase-card{
      border-radius:28px;
      overflow:hidden;
      border:1px solid var(--line);
      background:#fff;
      box-shadow:var(--shadow);
      transition:var(--ease);
      min-height:100%;
    }
    .showcase-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
    .poster{
      height:160px;
      background:
        radial-gradient(circle at 25% 25%,rgba(255,255,255,.7),transparent 22%),
        linear-gradient(135deg,rgba(255,127,150,.78),rgba(169,140,247,.72) 58%,rgba(85,207,194,.62));
      position:relative;
    }
    .poster::before{
      content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.55);border-radius:22px;
    }
    .poster::after{
      content:"18+";
      position:absolute;right:18px;top:18px;
      background:rgba(255,255,255,.88);
      color:var(--primary-deep);
      border-radius:999px;
      padding:5px 10px;font-weight:850;font-size:12px;
    }
    .showcase-body{padding:22px}
    .info-layout{
      display:grid;
      grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
      gap:26px;
      align-items:start;
    }
    .news-list{
      background:#fff;border:1px solid var(--line);border-radius:28px;
      box-shadow:var(--shadow);padding:12px;
    }
    .news-item{
      display:grid;grid-template-columns:92px 1fr;gap:16px;
      padding:18px;border-radius:20px;border-bottom:1px solid var(--line);
    }
    .news-item:last-child{border-bottom:0}
    .news-date{
      height:70px;border-radius:18px;
      display:grid;place-items:center;text-align:center;
      background:linear-gradient(135deg,var(--primary-soft),var(--bg-soft));
      color:var(--primary-deep);font-weight:850;font-size:13px;
    }
    .news-item a{font-weight:820;color:#332d3a}
    .news-item a:hover{color:var(--primary-deep)}
    .recommend-box{
      border:1px solid var(--line);
      border-radius:28px;
      background:
        linear-gradient(160deg,#fff,var(--bg-soft)),
        radial-gradient(circle at 80% 20%,rgba(85,207,194,.16),transparent 35%);
      box-shadow:var(--shadow);
      padding:26px;
      position:sticky;
      top:94px;
    }
    .check-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}
    .check-list li{display:flex;gap:10px;color:var(--muted);font-size:14px}
    .check{
      width:22px;height:22px;flex:0 0 auto;border-radius:50%;
      background:var(--accent-soft);
      color:#159789;
      display:inline-grid;place-items:center;
      font-weight:900;font-size:13px;
    }
    .comparison{
      background:
        radial-gradient(circle at 12% 18%,rgba(255,127,150,.10),transparent 26%),
        radial-gradient(circle at 88% 70%,rgba(85,207,194,.10),transparent 24%),
        #fff;
    }
    .compare-card{
      border:1px solid var(--line);
      border-radius:28px;
      background:#fff;
      box-shadow:var(--shadow);
      padding:28px;
      min-height:100%;
    }
    .compare-card.highlight{
      border-color:rgba(255,127,150,.34);
      background:linear-gradient(180deg,#fff,#fff6f8);
    }
    .compare-row{
      display:grid;grid-template-columns:138px 1fr;gap:14px;
      padding:13px 0;border-top:1px dashed var(--line);
      font-size:14px;
    }
    .compare-row b{color:#3b3443}
    .compare-row span{color:var(--muted)}
    .steps-wrap{counter-reset:step}
    .step-card{
      counter-increment:step;
      border:1px solid var(--line);
      border-radius:24px;
      background:#fff;
      padding:24px;
      min-height:100%;
      box-shadow:0 12px 34px rgba(82,56,88,.07);
      transition:var(--ease);
    }
    .step-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}
    .step-card::before{
      content:"0" counter(step);
      display:inline-flex;
      padding:7px 12px;
      border-radius:999px;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      color:#fff;
      font-weight:850;
      font-size:12px;
      margin-bottom:16px;
    }
    .safety-band{
      border-radius:34px;
      padding:34px;
      background:
        linear-gradient(135deg,#fff,var(--bg-mint)),
        radial-gradient(circle at 90% 0%,rgba(85,207,194,.16),transparent 30%);
      border:1px solid var(--line);
      box-shadow:var(--shadow);
    }
    .shield-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
    .shield{
      background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;
      transition:var(--ease);
    }
    .shield:hover{transform:translateY(-3px);border-color:rgba(85,207,194,.34)}
    .shield-icon{
      width:42px;height:42px;border-radius:16px;
      background:var(--accent-soft);
      display:grid;place-items:center;margin-bottom:12px;
      color:#159789;font-weight:900;
    }
    .accordion{
      background:transparent;
      border:0;
    }
    .accordion-item{
      margin-bottom:12px;
      border:1px solid var(--line);
      border-radius:22px;
      background:#fff;
      overflow:hidden;
      box-shadow:0 10px 28px rgba(82,56,88,.06);
    }
    .accordion-title{
      border:0!important;
      color:#332d3a!important;
      font-weight:820;
      font-size:16px;
      padding:19px 54px 19px 22px;
      background:#fff;
    }
    .accordion-title:hover,.accordion-title:focus{background:#fff6f8;color:var(--primary-deep)!important}
    .accordion-title::before{right:22px;color:var(--primary-deep);font-size:22px;margin-top:-13px}
    .accordion-content{
      border:0!important;
      color:var(--muted);
      padding:0 22px 20px 22px;
      background:#fff;
    }
    .is-active>.accordion-title{background:#fff6f8}
    .form-section{
      padding-bottom:98px;
    }
    .form-card{
      border:1px solid var(--line);
      border-radius:34px;
      background:
        linear-gradient(135deg,#fff,rgba(255,247,251,.94)),
        radial-gradient(circle at 90% 20%,rgba(169,140,247,.13),transparent 28%);
      box-shadow:var(--shadow);
      padding:34px;
      overflow:hidden;
    }
    label{font-weight:780;color:#4a4155;font-size:14px;margin-bottom:7px}
    input[type="text"],input[type="email"],select,textarea{
      border:1px solid var(--line-strong);
      background:#fff;
      border-radius:16px;
      min-height:48px;
      box-shadow:none;
      color:var(--text);
      transition:var(--ease);
      padding:11px 14px;
    }
    textarea{min-height:118px;resize:vertical}
    input:focus,select:focus,textarea:focus{
      border-color:rgba(255,127,150,.72);
      box-shadow:0 0 0 4px rgba(255,127,150,.12);
      background:#fff;
    }
    .checkbox-row{
      display:flex;align-items:flex-start;gap:10px;
      color:var(--muted);font-size:14px;
      margin:8px 0 18px;
    }
    .checkbox-row input{margin-top:6px}
    .process-mini{
      display:grid;gap:12px;
      margin-top:22px;
    }
    .process-mini div{
      display:flex;gap:12px;align-items:flex-start;
      padding:14px;border-radius:18px;
      background:#fff;border:1px solid var(--line);
    }
    .process-mini b{
      width:30px;height:30px;border-radius:999px;
      flex:0 0 auto;
      display:grid;place-items:center;
      background:var(--primary-soft);
      color:var(--primary-deep);
      font-size:12px;
    }
    .site-footer{
      border-top:1px solid var(--line);
      background:#fff8f2;
      padding:46px 0 28px;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.2fr .8fr .8fr;
      gap:30px;
      align-items:start;
    }
    .footer-links{display:grid;gap:10px}
    .footer-links a{color:var(--muted);font-weight:700;font-size:14px}
    .footer-links a:hover{color:var(--primary-deep)}
    .copyright{
      margin-top:30px;
      padding-top:20px;
      border-top:1px solid rgba(230,213,226,.75);
      display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
      color:var(--weak);font-size:13px;
    }
    .float-cta{
      position:fixed;left:50%;bottom:18px;transform:translateX(-50%);
      z-index:40;
      width:min(calc(100% - 28px),760px);
      background:rgba(255,255,255,.92);
      border:1px solid var(--line);
      box-shadow:0 16px 48px rgba(82,56,88,.16);
      backdrop-filter:blur(14px);
      border-radius:999px;
      padding:10px 12px 10px 18px;
      display:flex;justify-content:space-between;align-items:center;gap:12px;
    }
    .float-cta span{font-size:14px;color:var(--muted);font-weight:700}
    @media (max-width:1024px){
      .hero-stage{padding:32px}
      .progress-wrap{grid-template-columns:128px 1fr}
      .ring{width:128px;height:128px}
      .ring-inner{width:94px;height:94px}
      .metric-strip{grid-template-columns:1fr}
      .shield-grid{grid-template-columns:repeat(2,1fr)}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .site-container{width:min(calc(100% - 28px),var(--container))}
      .section{padding:62px 0}
      .section-head{display:block}
      .top-bar{padding:12px 14px;min-height:66px;align-items:flex-start}
      .top-bar-left{width:100%;display:flex;align-items:center;justify-content:space-between}
      .menu-toggle{display:inline-flex}
      .top-bar-right{display:none;width:100%;padding-top:10px}
      .top-bar-right.open{display:block}
      .menu.simple{display:block;width:100%}
      .menu.simple li+li{margin-left:0}
      .nav-link{width:100%;justify-content:flex-start;border-radius:14px;border-top:1px solid rgba(238,227,237,.7)}
      .hero{padding-top:28px}
      .hero-stage{padding:24px;border-radius:26px}
      .progress-wrap{grid-template-columns:1fr;justify-items:center;text-align:center}
      .hero-actions .btn{width:100%}
      .info-layout{grid-template-columns:1fr}
      .recommend-box{position:relative;top:auto}
      .news-item{grid-template-columns:1fr}
      .news-date{height:auto;min-height:48px}
      .compare-row{grid-template-columns:1fr;gap:4px}
      .shield-grid{grid-template-columns:1fr}
      .form-card{padding:24px;border-radius:26px}
      .footer-grid{grid-template-columns:1fr}
      .float-cta{border-radius:22px;align-items:flex-start;flex-direction:column}
      .float-cta .btn{width:100%}
    }
    @media (max-width:520px){
      h1{font-size:31px}
      h2{font-size:25px}
      .hero-badge-row{gap:8px}
      .badge{font-size:12px}
      .metric-strip{grid-template-columns:1fr}
      .tier{align-items:flex-start;flex-direction:column}
      .poster{height:132px}
      .safety-band{padding:24px;border-radius:26px}
      .brand span{font-size:15px}
    }

/* roulang page: category1 */
:root{
      --bg:#fff9f7;
      --bg-soft:#fbf7ff;
      --bg-cool:#f8fbff;
      --card:#ffffff;
      --text:#27232b;
      --muted:#706979;
      --mini:#8a8193;
      --primary:#f47f95;
      --primary-strong:#ea647f;
      --primary-soft:#ffe6eb;
      --lavender:#bba7ff;
      --lavender-soft:#f0ebff;
      --mint:#69d6ca;
      --mint-soft:#e7fbf8;
      --line:#eadfe8;
      --line-strong:#e4cfdd;
      --shadow:0 18px 46px rgba(102,72,99,.12);
      --shadow-hover:0 24px 64px rgba(102,72,99,.18);
      --radius-xl:28px;
      --radius-lg:22px;
      --radius-md:16px;
      --container:1180px;
      --transition:all .22s ease;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--text);
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      line-height:1.75;
      background:
        radial-gradient(circle at 7% 8%, rgba(244,127,149,.12), transparent 28%),
        radial-gradient(circle at 88% 12%, rgba(187,167,255,.14), transparent 30%),
        linear-gradient(180deg,var(--bg) 0%,var(--bg-soft) 48%,var(--bg-cool) 100%);
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none;transition:var(--transition)}
    a:hover,a:focus{color:var(--primary-strong)}
    button,input,select,textarea{font:inherit}
    input,select,textarea{width:100%}
    img{max-width:100%;height:auto}
    .site-container{
      width:min(calc(100% - 40px),var(--container));
      margin:0 auto;
    }
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(255,255,255,.86);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(234,223,232,.82);
    }
    .site-header .top-bar{
      width:min(calc(100% - 40px),var(--container));
      min-height:72px;
      margin:0 auto;
      padding:0;
      background:transparent;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:22px;
      color:var(--text);
    }
    .top-bar-left,.top-bar-right{display:flex;align-items:center}
    .brand{
      display:inline-flex;
      align-items:center;
      gap:10px;
      font-weight:800;
      letter-spacing:-.02em;
      color:var(--text);
      white-space:nowrap;
    }
    .brand:hover{color:var(--text)}
    .brand-mark{
      width:34px;
      height:34px;
      border-radius:13px;
      background:
        linear-gradient(135deg,var(--primary),var(--lavender));
      position:relative;
      box-shadow:0 10px 26px rgba(244,127,149,.28);
      flex:0 0 auto;
    }
    .brand-mark:before{
      content:"";
      position:absolute;
      inset:8px;
      border-radius:50%;
      background:rgba(255,255,255,.78);
    }
    .brand-mark:after{
      content:"";
      position:absolute;
      right:6px;
      top:6px;
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--mint);
      border:2px solid #fff;
    }
    .menu.simple{
      gap:8px;
      align-items:center;
      display:flex;
    }
    .menu.simple li{display:flex;align-items:center}
    .nav-link{
      position:relative;
      display:inline-flex;
      align-items:center;
      min-height:40px;
      padding:8px 14px;
      border-radius:999px;
      color:#4a4350;
      font-size:14px;
      font-weight:650;
    }
    .nav-link:hover{
      background:var(--primary-soft);
      color:var(--primary-strong);
    }
    .nav-link.active{
      color:var(--primary-strong);
      background:rgba(255,230,235,.78);
    }
    .nav-link.active:after{
      content:"";
      position:absolute;
      left:18px;
      right:18px;
      bottom:5px;
      height:2px;
      border-radius:99px;
      background:linear-gradient(90deg,var(--primary),var(--lavender));
    }
    .menu-toggle{
      display:none;
      margin-left:14px;
      padding:9px 14px;
      border:1px solid var(--line);
      border-radius:999px;
      color:var(--text);
      background:#fff;
      cursor:pointer;
      min-height:42px;
    }
    .section{
      padding:86px 0;
      position:relative;
    }
    .section.tight{padding:58px 0}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border:1px solid var(--line);
      border-radius:999px;
      color:var(--primary-strong);
      background:rgba(255,255,255,.76);
      font-size:13px;
      font-weight:750;
      box-shadow:0 8px 20px rgba(102,72,99,.06);
    }
    .eyebrow .dot,.status-dot{
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--mint);
      box-shadow:0 0 0 5px rgba(105,214,202,.14);
    }
    h1,h2,h3,p{margin-top:0}
    h1{
      margin:18px 0 18px;
      font-size:clamp(32px,5vw,54px);
      line-height:1.14;
      letter-spacing:-.045em;
      font-weight:850;
      color:#221d26;
    }
    h2{
      margin:0 0 16px;
      font-size:clamp(26px,3vw,38px);
      line-height:1.22;
      letter-spacing:-.035em;
      font-weight:820;
    }
    h3{
      font-size:20px;
      line-height:1.35;
      font-weight:780;
      margin-bottom:10px;
    }
    .lead{
      color:var(--muted);
      font-size:17px;
      max-width:680px;
    }
    .muted{color:var(--muted)}
    .mini{font-size:13px;color:var(--mini);line-height:1.65}
    .hero{
      padding:76px 0 54px;
      overflow:hidden;
    }
    .hero:before{
      content:"";
      position:absolute;
      width:420px;
      height:420px;
      right:-160px;
      top:120px;
      border-radius:50%;
      background:linear-gradient(135deg,rgba(244,127,149,.13),rgba(187,167,255,.12));
      filter:blur(2px);
      z-index:-1;
    }
    .hero-copy{
      padding:28px 0;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin:28px 0 20px;
    }
    .button.primary-btn,.primary-btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      margin:0;
      min-height:48px;
      padding:13px 22px;
      border:0;
      border-radius:999px;
      background:linear-gradient(135deg,var(--primary),var(--primary-strong));
      color:#fff;
      font-weight:780;
      box-shadow:0 14px 30px rgba(244,127,149,.28);
      cursor:pointer;
    }
    .button.primary-btn:hover,.button.primary-btn:focus,.primary-btn:hover,.primary-btn:focus{
      color:#fff;
      transform:translateY(-2px);
      box-shadow:0 18px 42px rgba(244,127,149,.36);
      background:linear-gradient(135deg,#f7728a,#e95774);
    }
    .button.ghost-btn,.ghost-btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:48px;
      padding:12px 20px;
      border:1px solid var(--line-strong);
      border-radius:999px;
      background:rgba(255,255,255,.72);
      color:#443d49;
      font-weight:760;
      box-shadow:none;
    }
    .button.ghost-btn:hover,.button.ghost-btn:focus,.ghost-btn:hover,.ghost-btn:focus{
      color:var(--primary-strong);
      border-color:#f5a8b7;
      background:var(--primary-soft);
      transform:translateY(-2px);
    }
    .notice{
      display:flex;
      align-items:flex-start;
      gap:10px;
      max-width:660px;
      padding:14px 16px;
      border:1px solid rgba(244,127,149,.2);
      border-radius:18px;
      background:rgba(255,255,255,.7);
      color:#6c5d66;
      font-size:14px;
    }
    .notice strong{color:var(--primary-strong)}
    .panel{
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.74));
      box-shadow:var(--shadow);
      position:relative;
      overflow:hidden;
    }
    .panel:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        radial-gradient(circle at 12% 15%,rgba(244,127,149,.13),transparent 24%),
        radial-gradient(circle at 90% 6%,rgba(105,214,202,.14),transparent 22%),
        linear-gradient(135deg,rgba(187,167,255,.08),transparent 58%);
      pointer-events:none;
    }
    .panel-inner{position:relative;padding:24px}
    .panel-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      margin-bottom:18px;
    }
    .index-badge,.soft-badge{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:6px 11px;
      min-height:28px;
      border-radius:999px;
      background:var(--lavender-soft);
      color:#7462c7;
      font-size:12px;
      font-weight:800;
      letter-spacing:.02em;
    }
    .soft-badge.pink{background:var(--primary-soft);color:var(--primary-strong)}
    .soft-badge.mint{background:var(--mint-soft);color:#27998e}
    .stat-grid{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:12px;
    }
    .stat-card{
      padding:16px;
      border:1px solid rgba(234,223,232,.82);
      border-radius:20px;
      background:rgba(255,255,255,.72);
    }
    .stat-label{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      color:var(--mini);
      font-size:12px;
      font-weight:750;
    }
    .stat-value{
      margin-top:8px;
      font-size:24px;
      font-weight:850;
      color:#2a2430;
      letter-spacing:-.03em;
    }
    .meter{
      height:8px;
      margin-top:12px;
      border-radius:99px;
      background:#f2eaf0;
      overflow:hidden;
    }
    .meter span{
      display:block;
      height:100%;
      border-radius:99px;
      background:linear-gradient(90deg,var(--primary),var(--lavender),var(--mint));
    }
    .tag-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:22px;
    }
    .pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      min-height:36px;
      padding:8px 13px;
      border:1px solid var(--line);
      border-radius:999px;
      background:#fff;
      color:#5f5665;
      font-size:13px;
      font-weight:700;
      cursor:default;
      transition:var(--transition);
    }
    .pill:hover{
      border-color:#f4a7b5;
      color:var(--primary-strong);
      transform:translateY(-1px);
    }
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:26px;
      margin-bottom:28px;
    }
    .section-head .lead{margin-bottom:0}
    .filter-strip{
      padding:18px;
      border:1px solid var(--line);
      border-radius:24px;
      background:rgba(255,255,255,.78);
      box-shadow:0 12px 34px rgba(102,72,99,.08);
    }
    .button-group.filter-buttons{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin:0;
    }
    .button-group.filter-buttons .button{
      margin:0;
      border-radius:999px!important;
      border:1px solid var(--line);
      background:#fff;
      color:#574f5e;
      font-weight:760;
      padding:11px 15px;
    }
    .button-group.filter-buttons .button:hover,
    .button-group.filter-buttons .button.is-active{
      background:var(--primary-soft);
      border-color:#f2a6b5;
      color:var(--primary-strong);
    }
    .card-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:18px;
    }
    .feature-card{
      position:relative;
      min-height:100%;
      padding:22px;
      border:1px solid var(--line);
      border-radius:var(--radius-lg);
      background:rgba(255,255,255,.83);
      box-shadow:0 12px 34px rgba(102,72,99,.08);
      overflow:hidden;
      transition:var(--transition);
    }
    .feature-card:hover{
      transform:translateY(-4px);
      border-color:#f3a9b7;
      box-shadow:var(--shadow-hover);
    }
    .feature-card:after{
      content:"";
      position:absolute;
      right:-36px;
      top:-36px;
      width:120px;
      height:120px;
      border-radius:42px;
      transform:rotate(18deg);
      background:linear-gradient(135deg,rgba(244,127,149,.12),rgba(187,167,255,.12));
    }
    .card-top{
      position:relative;
      z-index:1;
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:12px;
      margin-bottom:16px;
    }
    .feature-card h3,.feature-card p,.feature-card ul,.feature-card a{position:relative;z-index:1}
    .feature-card p{color:var(--muted);font-size:15px;margin-bottom:16px}
    .attribute-list{
      margin:0;
      padding:0;
      list-style:none;
      display:grid;
      gap:10px;
    }
    .attribute-list li{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:9px 10px;
      border-radius:14px;
      background:rgba(251,247,255,.72);
      color:#5b5261;
      font-size:13px;
    }
    .attribute-list b{color:#2b2630;font-weight:800}
    .text-link{
      display:inline-flex;
      align-items:center;
      margin-top:18px;
      color:var(--primary-strong);
      font-weight:800;
      font-size:14px;
    }
    .text-link:hover{transform:translateX(3px)}
    .split-card{
      padding:26px;
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      background:rgba(255,255,255,.82);
      box-shadow:var(--shadow);
      min-height:100%;
    }
    .compare-row{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:16px;
    }
    .compare-item{
      padding:18px;
      border-radius:22px;
      border:1px solid var(--line);
      background:#fff;
    }
    .compare-item.after{
      background:linear-gradient(180deg,#fff,#fff5f7);
      border-color:#f5bbc5;
    }
    .compare-list{
      list-style:none;
      padding:0;
      margin:16px 0 0;
      display:grid;
      gap:12px;
    }
    .compare-list li{
      display:flex;
      gap:10px;
      align-items:flex-start;
      color:#5d5463;
      font-size:14px;
    }
    .check,.dash{
      width:22px;
      height:22px;
      border-radius:50%;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      flex:0 0 auto;
      font-size:13px;
      font-weight:900;
    }
    .check{background:var(--mint-soft);color:#23998d}
    .dash{background:#f4eef4;color:#8a8193}
    .steps{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }
    .step-card{
      padding:20px;
      border:1px solid var(--line);
      border-radius:22px;
      background:rgba(255,255,255,.82);
      box-shadow:0 12px 30px rgba(102,72,99,.07);
    }
    .step-no{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:42px;
      height:32px;
      border-radius:999px;
      margin-bottom:14px;
      background:linear-gradient(135deg,var(--primary-soft),var(--lavender-soft));
      color:var(--primary-strong);
      font-weight:850;
      font-size:13px;
    }
    .faq-wrap{
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      background:rgba(255,255,255,.82);
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .accordion{
      margin:0;
      background:transparent;
    }
    .accordion-item{
      border-bottom:1px solid var(--line);
    }
    .accordion-item:last-child{border-bottom:0}
    .accordion-title{
      position:relative;
      padding:21px 58px 21px 26px;
      border:0!important;
      color:#2b2630;
      font-weight:820;
      font-size:16px;
      background:transparent;
    }
    .accordion-title:hover,.accordion-title:focus{
      background:#fff5f7;
      color:var(--primary-strong);
    }
    .accordion-title:before{
      right:26px;
      margin-top:-10px;
      font-size:22px;
      color:var(--primary-strong);
    }
    .is-active>.accordion-title{
      background:linear-gradient(90deg,rgba(255,230,235,.8),rgba(240,235,255,.45));
      color:var(--primary-strong);
    }
    .accordion-content{
      border:0!important;
      padding:0 26px 22px 26px;
      background:rgba(255,255,255,.68);
      color:var(--muted);
    }
    .form-panel{
      padding:30px;
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(251,247,255,.82));
      box-shadow:var(--shadow);
    }
    label{
      color:#3e3745;
      font-size:14px;
      font-weight:780;
      margin-bottom:8px;
    }
    input[type="text"],input[type="email"],select,textarea{
      border:1px solid var(--line-strong);
      border-radius:16px;
      background:#fff;
      min-height:48px;
      padding:11px 14px;
      color:var(--text);
      box-shadow:none;
      transition:var(--transition);
    }
    textarea{min-height:116px;resize:vertical}
    input:focus,select:focus,textarea:focus{
      border-color:#f29bac;
      box-shadow:0 0 0 4px rgba(244,127,149,.12);
      outline:none;
      background:#fff;
    }
    .checkbox-line{
      display:flex;
      gap:10px;
      align-items:flex-start;
      padding:14px;
      border:1px solid var(--line);
      border-radius:16px;
      background:rgba(255,255,255,.72);
      color:#5f5665;
      font-size:14px;
      line-height:1.6;
    }
    .checkbox-line input{width:auto;margin-top:5px}
    .form-note{
      padding:18px;
      border-radius:22px;
      background:var(--mint-soft);
      color:#327e77;
      border:1px solid rgba(105,214,202,.28);
    }
    .site-footer{
      padding:58px 0 24px;
      background:rgba(255,252,249,.82);
      border-top:1px solid var(--line);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.45fr .7fr .95fr;
      gap:34px;
      align-items:start;
    }
    .site-footer h3{
      font-size:15px;
      margin:4px 0 14px;
    }
    .footer-links{
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:var(--muted);
      font-size:14px;
    }
    .footer-links a:hover{color:var(--primary-strong);padding-left:4px}
    .copyright{
      margin-top:34px;
      padding-top:18px;
      border-top:1px solid var(--line);
      display:flex;
      justify-content:space-between;
      gap:16px;
      color:var(--mini);
      font-size:13px;
      flex-wrap:wrap;
    }
    .decor-card{
      position:relative;
      overflow:hidden;
    }
    .decor-card:before{
      content:"";
      position:absolute;
      inset:auto -80px -90px auto;
      width:210px;
      height:210px;
      border-radius:50%;
      background:rgba(187,167,255,.12);
    }
    .success-tip{
      display:none;
      margin-top:14px;
      padding:12px 14px;
      border-radius:16px;
      background:var(--mint-soft);
      color:#2e8d83;
      font-weight:700;
      font-size:14px;
    }
    @media (max-width:1024px){
      .section{padding:70px 0}
      .card-grid{grid-template-columns:repeat(2,1fr)}
      .steps{grid-template-columns:repeat(2,1fr)}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .site-header .top-bar{
        width:min(calc(100% - 28px),var(--container));
        min-height:66px;
        align-items:flex-start;
        padding:14px 0;
        flex-direction:column;
        gap:12px;
      }
      .top-bar-left{width:100%;justify-content:space-between}
      .menu-toggle{display:inline-flex}
      .top-bar-right{
        display:none;
        width:100%;
        padding:10px 0 2px;
      }
      .top-bar-right.is-open{display:block}
      .menu.simple{
        width:100%;
        display:grid;
        gap:4px;
      }
      .menu.simple li{width:100%}
      .nav-link{
        width:100%;
        justify-content:flex-start;
        min-height:44px;
        border-radius:14px;
      }
      .site-container{width:min(calc(100% - 28px),var(--container))}
      .hero{padding:46px 0 36px}
      .hero-copy{padding:0}
      .hero-actions{flex-direction:column}
      .button.primary-btn,.button.ghost-btn{width:100%}
      .section-head{display:block}
      .section-head .lead{margin-top:10px}
      .stat-grid,.compare-row,.card-grid,.steps,.footer-grid{grid-template-columns:1fr}
      .panel-inner,.form-panel,.split-card{padding:22px}
      .section{padding:58px 0}
    }
    @media (max-width:520px){
      h1{font-size:31px}
      h2{font-size:25px}
      .brand span:last-child{font-size:15px}
      .tag-row{gap:8px}
      .pill{font-size:12px;padding:7px 10px}
      .filter-strip{padding:14px}
      .button-group.filter-buttons .button{width:100%;justify-content:center}
      .copyright{display:grid}
    }

/* roulang page: category2 */
:root{
      --bg:#fff9f7;
      --bg-soft:#fbf7ff;
      --bg-blue:#f7fbff;
      --surface:#ffffff;
      --surface-2:#fff3f0;
      --text:#2d2730;
      --muted:#756b78;
      --mini:#938895;
      --primary:#f27a8d;
      --primary-strong:#e95f76;
      --primary-soft:#ffe2e8;
      --secondary:#a996e8;
      --secondary-soft:#eee9ff;
      --accent:#62cfc6;
      --accent-soft:#e3fbf8;
      --warning:#f2a85b;
      --border:#eadfe8;
      --border-strong:#f4b8c4;
      --shadow:0 18px 48px rgba(108,83,118,.12);
      --shadow-soft:0 12px 32px rgba(108,83,118,.08);
      --radius-lg:28px;
      --radius-md:20px;
      --radius-sm:14px;
      --container:1180px;
      --ease:all .22s ease;
    }
    *{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% 6%, rgba(242,122,141,.14), transparent 26%),
        radial-gradient(circle at 92% 12%, rgba(169,150,232,.16), transparent 28%),
        linear-gradient(180deg,var(--bg) 0%,var(--bg-soft) 48%,#fff 100%);
      line-height:1.75;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none;transition:var(--ease)}
    a:hover,a:focus{color:var(--primary-strong)}
    button,input,select,textarea{font:inherit}
    button,.button{transition:var(--ease)}
    img{max-width:100%;height:auto}
    .site-container{
      width:min(calc(100% - 40px),var(--container));
      margin:0 auto;
    }
    .muted{color:var(--muted)}
    .mini{font-size:14px;color:var(--mini);line-height:1.7}
    .section{
      padding:86px 0;
      position:relative;
    }
    .section.compact{padding:64px 0}
    .section-title{
      max-width:760px;
      margin-bottom:34px;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border:1px solid var(--border);
      border-radius:999px;
      background:rgba(255,255,255,.74);
      color:var(--primary-strong);
      font-size:13px;
      font-weight:700;
      letter-spacing:.03em;
      box-shadow:0 8px 22px rgba(242,122,141,.08);
    }
    .eyebrow::before{
      content:"";
      width:8px;height:8px;border-radius:50%;
      background:linear-gradient(135deg,var(--primary),var(--accent));
      box-shadow:0 0 0 5px rgba(242,122,141,.12);
    }
    h1,h2,h3,h4,p{margin-top:0}
    h1{
      margin:18px 0 18px;
      font-size:clamp(32px,4.5vw,54px);
      line-height:1.14;
      letter-spacing:-.04em;
      font-weight:800;
      color:#261f2a;
    }
    h2{
      font-size:clamp(26px,3vw,38px);
      line-height:1.22;
      letter-spacing:-.03em;
      font-weight:800;
      color:#28212c;
      margin-bottom:14px;
    }
    h3{
      font-size:20px;
      line-height:1.35;
      font-weight:800;
      color:#2c2430;
    }
    p{font-size:16px}
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(255,255,255,.88);
      border-bottom:1px solid rgba(234,223,232,.85);
      backdrop-filter:blur(14px);
    }
    .site-header .top-bar{
      width:min(calc(100% - 40px),var(--container));
      min-height:72px;
      margin:0 auto;
      padding:0;
      background:transparent;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:24px;
    }
    .top-bar-left,.top-bar-right{display:flex;align-items:center}
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      font-weight:800;
      color:#2b2330;
      letter-spacing:-.02em;
      white-space:nowrap;
    }
    .brand-mark{
      width:34px;height:34px;border-radius:12px;
      background:
        radial-gradient(circle at 30% 25%, #fff 0 18%, transparent 19%),
        linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:0 10px 24px rgba(242,122,141,.24);
      position:relative;
      flex:0 0 auto;
    }
    .brand-mark::after{
      content:"";
      position:absolute;
      right:-4px;bottom:5px;
      width:12px;height:12px;border-radius:50%;
      background:var(--accent);
      border:3px solid #fff;
    }
    .menu-toggle{
      display:none;
      margin-left:14px;
      min-height:42px;
      padding:8px 14px;
      border:1px solid var(--border);
      border-radius:999px;
      background:#fff;
      color:var(--text);
      cursor:pointer;
    }
    .site-header .menu{
      gap:6px;
      align-items:center;
    }
    .nav-link{
      position:relative;
      display:inline-flex;
      align-items:center;
      min-height:42px;
      padding:9px 14px;
      border-radius:999px;
      color:#5b525e;
      font-size:15px;
      font-weight:700;
    }
    .nav-link::after{
      content:"";
      position:absolute;
      left:16px;right:16px;bottom:5px;
      height:2px;
      border-radius:999px;
      background:transparent;
      transform:scaleX(.35);
      transition:var(--ease);
    }
    .nav-link:hover{
      background:var(--secondary-soft);
      color:#3d3243;
    }
    .nav-link.active{
      color:var(--primary-strong);
      background:var(--primary-soft);
    }
    .nav-link.active::after{
      background:var(--primary);
      transform:scaleX(1);
    }
    .hero{
      padding:74px 0 52px;
      position:relative;
      overflow:hidden;
    }
    .hero::before,.hero::after{
      content:"";
      position:absolute;
      border-radius:999px;
      pointer-events:none;
      opacity:.55;
      filter:blur(.2px);
    }
    .hero::before{
      width:360px;height:360px;
      right:-130px;top:70px;
      background:radial-gradient(circle, rgba(169,150,232,.22), transparent 68%);
    }
    .hero::after{
      width:260px;height:260px;
      left:-120px;bottom:0;
      background:radial-gradient(circle, rgba(98,207,198,.18), transparent 70%);
    }
    .hero-card{
      position:relative;
      z-index:1;
      padding:36px;
      border:1px solid rgba(234,223,232,.92);
      border-radius:var(--radius-lg);
      background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,247,252,.86));
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .hero-card::before{
      content:"";
      position:absolute;
      inset:0;
      background-image:
        radial-gradient(circle, rgba(242,122,141,.14) 1px, transparent 1px),
        radial-gradient(circle, rgba(169,150,232,.12) 1px, transparent 1px);
      background-size:26px 26px,38px 38px;
      background-position:0 0,14px 12px;
      opacity:.32;
      pointer-events:none;
    }
    .hero-copy,.compare-panel{position:relative;z-index:1}
    .hero-sub{
      max-width:650px;
      color:var(--muted);
      font-size:17px;
      margin-bottom:22px;
    }
    .trust-strip{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin:20px 0 26px;
    }
    .trust-item{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:9px 12px;
      border-radius:999px;
      background:#fff;
      border:1px solid var(--border);
      color:#5f5363;
      font-size:14px;
      font-weight:700;
    }
    .trust-item .dot{
      width:8px;height:8px;border-radius:50%;
      background:var(--accent);
      box-shadow:0 0 0 5px var(--accent-soft);
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      align-items:center;
      margin-top:22px;
    }
    .btn-primary,.btn-secondary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:48px;
      padding:13px 20px;
      border-radius:999px;
      font-size:15px;
      font-weight:800;
      cursor:pointer;
      border:1px solid transparent;
      line-height:1;
    }
    .btn-primary{
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--primary-strong));
      box-shadow:0 14px 26px rgba(242,122,141,.26);
    }
    .btn-primary:hover,.btn-primary:focus{
      color:#fff;
      transform:translateY(-2px);
      box-shadow:0 18px 34px rgba(242,122,141,.34);
    }
    .btn-secondary{
      color:#413643;
      background:rgba(255,255,255,.8);
      border-color:var(--border);
    }
    .btn-secondary:hover,.btn-secondary:focus{
      background:var(--secondary-soft);
      border-color:#d6c9ff;
      transform:translateY(-2px);
    }
    .btn-primary:focus,.btn-secondary:focus,.menu-toggle:focus,input:focus,select:focus,textarea:focus{
      outline:3px solid rgba(242,122,141,.24);
      outline-offset:2px;
    }
    .attribute-panel{
      position:relative;
      z-index:1;
      padding:22px;
      border:1px solid var(--border);
      border-radius:24px;
      background:rgba(255,255,255,.82);
      box-shadow:var(--shadow-soft);
      height:100%;
    }
    .panel-head{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:16px;
      margin-bottom:18px;
    }
    .panel-title{
      font-weight:800;
      color:#302836;
      margin-bottom:4px;
    }
    .panel-badge,.badge{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:6px 10px;
      border-radius:999px;
      background:var(--accent-soft);
      color:#277a74;
      border:1px solid rgba(98,207,198,.28);
      font-size:12px;
      font-weight:800;
      white-space:nowrap;
    }
    .metric-list{
      display:grid;
      gap:14px;
    }
    .metric{
      padding:14px;
      border:1px solid var(--border);
      border-radius:18px;
      background:linear-gradient(135deg,#fff,rgba(251,247,255,.82));
    }
    .metric-top{
      display:flex;
      justify-content:space-between;
      gap:12px;
      color:#473d4a;
      font-weight:800;
      font-size:14px;
      margin-bottom:10px;
    }
    .bar{
      height:9px;
      border-radius:999px;
      background:#f4edf4;
      overflow:hidden;
    }
    .bar span{
      display:block;
      height:100%;
      border-radius:999px;
      background:linear-gradient(90deg,var(--primary),var(--secondary),var(--accent));
    }
    .notice{
      margin-top:16px;
      padding:14px 16px;
      border-radius:18px;
      background:var(--surface-2);
      border:1px solid #ffd2da;
      color:#6b4b52;
      font-size:14px;
    }
    .pill-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:18px;
    }
    .pill{
      display:inline-flex;
      align-items:center;
      min-height:38px;
      padding:8px 13px;
      border-radius:999px;
      background:#fff;
      border:1px solid var(--border);
      color:#5e5361;
      font-size:14px;
      font-weight:700;
    }
    .pill.active,.pill:hover{
      background:var(--primary-soft);
      border-color:#ffc0cb;
      color:var(--primary-strong);
    }
    .compare-wrap{
      border-radius:var(--radius-lg);
      background:#fff;
      border:1px solid var(--border);
      box-shadow:var(--shadow-soft);
      padding:24px;
    }
    .compare-card{
      height:100%;
      padding:22px;
      border-radius:24px;
      border:1px solid var(--border);
      background:linear-gradient(180deg,#fff,rgba(251,247,255,.72));
      position:relative;
      overflow:hidden;
    }
    .compare-card.highlight{
      border-color:#ffd0da;
      background:linear-gradient(135deg,#fff,#fff2f5 56%,#f1fffd);
    }
    .compare-card::after{
      content:"";
      position:absolute;
      width:110px;height:110px;
      right:-38px;top:-40px;
      border-radius:36px;
      transform:rotate(24deg);
      background:rgba(169,150,232,.12);
    }
    .compare-label{
      display:inline-flex;
      padding:6px 11px;
      border-radius:999px;
      background:var(--secondary-soft);
      color:#6757a5;
      font-size:12px;
      font-weight:800;
      margin-bottom:14px;
    }
    .compare-card.highlight .compare-label{
      background:var(--primary-soft);
      color:var(--primary-strong);
    }
    .check-list{
      list-style:none;
      margin:18px 0 0;
      padding:0;
      display:grid;
      gap:12px;
    }
    .check-list li{
      display:flex;
      align-items:flex-start;
      gap:10px;
      color:#5f5462;
      font-size:15px;
    }
    .check-list li::before{
      content:"";
      width:18px;height:18px;
      margin-top:4px;
      border-radius:50%;
      background:linear-gradient(135deg,var(--accent),#9de5df);
      box-shadow:0 0 0 5px var(--accent-soft);
      flex:0 0 auto;
    }
    .check-list.muted-list li::before{
      background:#d8ced9;
      box-shadow:0 0 0 5px #f4eff5;
    }
    .steps-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
    }
    .step-card,.entry-card,.faq-card,.form-card{
      border:1px solid var(--border);
      background:rgba(255,255,255,.86);
      border-radius:var(--radius-md);
      box-shadow:var(--shadow-soft);
      transition:var(--ease);
    }
    .step-card{
      padding:22px;
      min-height:230px;
      position:relative;
      overflow:hidden;
    }
    .step-card:hover,.entry-card:hover{
      transform:translateY(-4px);
      border-color:#ffc2cd;
      box-shadow:var(--shadow);
    }
    .step-number{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:48px;height:32px;
      border-radius:999px;
      color:#fff;
      font-weight:900;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:0 12px 22px rgba(242,122,141,.2);
      margin-bottom:18px;
    }
    .step-card::after{
      content:"";
      position:absolute;
      right:-30px;bottom:-30px;
      width:100px;height:100px;border-radius:32px;
      background:rgba(98,207,198,.12);
      transform:rotate(20deg);
    }
    .entry-grid{
      display:grid;
      grid-template-columns:1.25fr .9fr .9fr;
      gap:18px;
    }
    .entry-card{
      padding:24px;
      position:relative;
      overflow:hidden;
    }
    .entry-card.featured{
      background:linear-gradient(135deg,#fff,#fff2f5 58%,#f2fffd);
    }
    .card-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin-bottom:18px;
    }
    .index{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-width:44px;
      height:30px;
      padding:0 10px;
      border-radius:999px;
      background:#2f2734;
      color:#fff;
      font-size:13px;
      font-weight:900;
    }
    .property-list{
      list-style:none;
      margin:16px 0 20px;
      padding:0;
      display:grid;
      gap:10px;
    }
    .property-list li{
      display:flex;
      justify-content:space-between;
      gap:12px;
      padding:10px 12px;
      border-radius:14px;
      background:#fff;
      border:1px solid var(--border);
      color:#5f5361;
      font-size:14px;
    }
    .property-list strong{
      color:#302735;
      white-space:nowrap;
    }
    .inline-link{
      display:inline-flex;
      align-items:center;
      gap:6px;
      color:var(--primary-strong);
      font-weight:800;
      font-size:14px;
    }
    .inline-link:hover{gap:10px}
    .cta-band{
      padding:28px;
      border-radius:var(--radius-lg);
      border:1px solid #ffd3db;
      background:
        radial-gradient(circle at 15% 20%, rgba(242,122,141,.16), transparent 28%),
        radial-gradient(circle at 88% 25%, rgba(98,207,198,.14), transparent 30%),
        linear-gradient(135deg,#fff,#fff4f6);
      box-shadow:var(--shadow-soft);
    }
    .faq-card{
      padding:8px;
      background:#fff;
    }
    .accordion{
      margin:0;
      background:transparent;
    }
    .accordion-item{
      border-bottom:1px solid var(--border);
    }
    .accordion-item:last-child{border-bottom:0}
    .accordion-title{
      border:0!important;
      color:#2d2730!important;
      padding:20px 52px 20px 20px!important;
      font-size:16px!important;
      font-weight:800;
      background:#fff!important;
      border-radius:16px!important;
    }
    .accordion-title:hover,.accordion-title:focus{
      background:var(--bg-soft)!important;
    }
    .accordion-title::before{
      right:20px!important;
      color:var(--primary-strong);
      font-size:22px!important;
      margin-top:-13px!important;
    }
    .accordion-content{
      border:0!important;
      padding:0 20px 20px!important;
      color:var(--muted);
      background:#fff!important;
      line-height:1.75;
    }
    .is-active>.accordion-title{
      color:var(--primary-strong)!important;
      background:var(--primary-soft)!important;
    }
    .form-zone{
      border-radius:var(--radius-lg);
      border:1px solid var(--border);
      background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(251,247,255,.9));
      box-shadow:var(--shadow);
      padding:30px;
      overflow:hidden;
      position:relative;
    }
    .form-zone::before{
      content:"";
      position:absolute;
      right:-80px;top:-80px;
      width:220px;height:220px;
      border-radius:50%;
      background:rgba(169,150,232,.15);
    }
    .form-card{
      position:relative;
      z-index:1;
      padding:24px;
      background:#fff;
    }
    label{
      color:#403642;
      font-weight:800;
      font-size:14px;
      margin-bottom:8px;
    }
    input[type="text"],input[type="email"],select,textarea{
      min-height:48px;
      border-radius:16px;
      border:1px solid var(--border);
      background:#fffdfd;
      color:var(--text);
      box-shadow:none;
      padding:12px 14px;
      transition:var(--ease);
    }
    textarea{min-height:118px;resize:vertical}
    input[type="text"]:focus,input[type="email"]:focus,select:focus,textarea:focus{
      border-color:var(--primary);
      background:#fff;
      box-shadow:0 0 0 4px rgba(242,122,141,.12);
    }
    .checkbox-line{
      display:flex;
      gap:10px;
      align-items:flex-start;
      padding:14px;
      border-radius:16px;
      background:var(--surface-2);
      border:1px solid #ffd5dd;
      margin:4px 0 18px;
      color:#5e4a51;
      font-size:14px;
    }
    .checkbox-line input{margin-top:5px}
    .side-steps{
      display:grid;
      gap:12px;
      position:relative;
      z-index:1;
    }
    .side-step{
      padding:16px;
      border:1px solid var(--border);
      border-radius:18px;
      background:rgba(255,255,255,.76);
      display:flex;
      gap:12px;
      align-items:flex-start;
    }
    .side-step b{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:34px;height:34px;
      border-radius:12px;
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      flex:0 0 auto;
    }
    .site-footer{
      padding:54px 0 26px;
      background:#fff8f4;
      border-top:1px solid var(--border);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.35fr .75fr .9fr;
      gap:34px;
      align-items:start;
    }
    .site-footer h3{
      font-size:15px;
      margin:0 0 14px;
    }
    .footer-links{
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:#675d6a;
      font-weight:700;
      font-size:14px;
    }
    .footer-links a:hover{color:var(--primary-strong);transform:translateX(3px)}
    .copyright{
      margin-top:34px;
      padding-top:20px;
      border-top:1px solid var(--border);
      display:flex;
      justify-content:space-between;
      gap:16px;
      flex-wrap:wrap;
      color:#8a7d8c;
      font-size:13px;
    }
    @media (max-width:1024px){
      .section{padding:72px 0}
      .steps-grid{grid-template-columns:repeat(2,1fr)}
      .entry-grid{grid-template-columns:1fr 1fr}
      .entry-card.featured{grid-column:1/-1}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .site-header .top-bar{
        width:min(calc(100% - 28px),var(--container));
        min-height:66px;
        align-items:flex-start;
        padding:12px 0;
        flex-direction:column;
        gap:10px;
      }
      .top-bar-left{
        width:100%;
        justify-content:space-between;
      }
      .menu-toggle{display:inline-flex;align-items:center}
      .top-bar-right{
        display:none;
        width:100%;
        padding:8px 0 4px;
        border-top:1px solid var(--border);
      }
      .top-bar-right.is-open{display:block}
      .site-header .menu{
        width:100%;
        display:grid!important;
        gap:2px;
      }
      .site-header .menu li{width:100%}
      .nav-link{
        width:100%;
        justify-content:flex-start;
        border-radius:14px;
        min-height:46px;
      }
      .site-container{width:min(calc(100% - 28px),var(--container))}
      .hero{padding:42px 0 34px}
      .hero-card{padding:24px}
      .hero-actions .btn-primary,.hero-actions .btn-secondary{width:100%}
      .attribute-panel{margin-top:22px}
      .section{padding:58px 0}
      .section.compact{padding:48px 0}
      .compare-wrap{padding:16px}
      .steps-grid,.entry-grid{grid-template-columns:1fr}
      .entry-card.featured{grid-column:auto}
      .footer-grid{grid-template-columns:1fr}
      .copyright{display:grid}
      .form-zone{padding:20px}
    }
    @media (max-width:520px){
      h1{font-size:31px}
      h2{font-size:25px}
      .brand span:last-child{font-size:15px}
      .brand-mark{width:30px;height:30px;border-radius:10px}
      .trust-strip,.pill-row{gap:8px}
      .trust-item,.pill{width:100%;justify-content:flex-start}
      .card-top,.panel-head{align-items:flex-start;flex-direction:column}
      .property-list li{display:grid;gap:4px}
      .btn-primary,.btn-secondary{padding-left:16px;padding-right:16px}
    }
