/* roulang page: index */
:root {
            --bg: #f6f1e8;
            --bg-alt: #ece3d6;
            --panel: rgba(255, 252, 246, 0.82);
            --panel-strong: #fffaf2;
            --text: #171412;
            --muted: #6f675f;
            --line: rgba(23, 20, 18, 0.10);
            --gold: #c9a15b;
            --gold-deep: #9d7530;
            --shadow: 0 18px 45px rgba(61, 48, 27, 0.08);
            --shadow-soft: 0 10px 25px rgba(61, 48, 27, 0.06);
            --radius-xl: 28px;
            --radius-lg: 22px;
            --radius-md: 16px;
            --radius-sm: 12px;
            --container: 1180px;
            --gap: clamp(16px, 2vw, 24px);
            --speed: 220ms ease;
        }

        * { box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body {
            margin: 0;
            font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
            color: var(--text);
            background:
                radial-gradient(circle at top left, rgba(201, 161, 91, 0.12), transparent 28%),
                radial-gradient(circle at right 15%, rgba(255, 255, 255, 0.65), transparent 24%),
                linear-gradient(180deg, var(--bg) 0%, #f3ede3 42%, #ede5d9 100%);
            line-height: 1.75;
            letter-spacing: 0.01em;
        }
        a { color: inherit; text-decoration: none; }
        img { max-width: 100%; display: block; }
        button, input, textarea { font: inherit; }
        ::selection { background: rgba(201, 161, 91, 0.25); }

        .container { width: min(100% - 32px, var(--container)); margin: 0 auto; }
        .site-header {
            position: sticky;
            top: 0;
            z-index: 1000;
            backdrop-filter: blur(18px);
            background: rgba(246, 241, 232, 0.78);
            border-bottom: 1px solid rgba(23, 20, 18, 0.08);
        }
        .header-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 18px;
            min-height: 76px;
        }
        .brand {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            font-weight: 800;
            letter-spacing: 0.03em;
            color: var(--text);
            white-space: nowrap;
        }
        .brand-mark {
            width: 40px;
            height: 40px;
            border-radius: 14px;
            display: grid;
            place-items: center;
            background: linear-gradient(135deg, #201c17, #463823);
            color: #f4e6c9;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.15);
        }
        .brand span { font-size: 1rem; }
        .nav {
            display: flex;
            align-items: center;
            gap: 8px;
            flex-wrap: wrap;
            justify-content: center;
        }
        .nav a {
            padding: 10px 14px;
            border-radius: 999px;
            color: var(--muted);
            transition: transform var(--speed), background var(--speed), color var(--speed), box-shadow var(--speed);
        }
        .nav a:hover, .nav a:focus-visible {
            outline: none;
            background: rgba(201, 161, 91, 0.10);
            color: var(--text);
            transform: translateY(-1px);
        }
        .nav a.active {
            background: linear-gradient(135deg, rgba(201,161,91,.20), rgba(157,117,48,.14));
            color: var(--text);
            box-shadow: inset 0 0 0 1px rgba(201, 161, 91, 0.22);
        }
        .header-cta {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            padding: 12px 18px;
            border-radius: 999px;
            background: linear-gradient(135deg, #1d1915, #4a3922);
            color: #fff7ea;
            box-shadow: 0 14px 25px rgba(29, 25, 21, 0.16);
            transition: transform var(--speed), box-shadow var(--speed);
            white-space: nowrap;
        }
        .header-cta:hover, .header-cta:focus-visible { transform: translateY(-1px); box-shadow: 0 18px 30px rgba(29, 25, 21, 0.22); outline: none; }

        .hero {
            padding: 44px 0 28px;
        }
        .hero-shell {
            display: grid;
            grid-template-columns: 1.05fr 0.95fr;
            gap: 26px;
            align-items: stretch;
        }
        .hero-copy, .hero-visual, .panel, .card, .faq-item, .section-box, .price-card, .news-card {
            background: var(--panel);
            border: 1px solid rgba(23, 20, 18, 0.08);
            box-shadow: var(--shadow-soft);
            border-radius: var(--radius-xl);
        }
        .hero-copy { padding: clamp(26px, 4vw, 42px); display: flex; flex-direction: column; justify-content: space-between; }
        .eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            width: fit-content;
            padding: 8px 12px;
            border-radius: 999px;
            background: rgba(201, 161, 91, 0.12);
            color: var(--gold-deep);
            font-size: 0.92rem;
            margin-bottom: 16px;
        }
        h1 {
            margin: 0;
            font-size: clamp(2.2rem, 5vw, 4.6rem);
            line-height: 1.08;
            letter-spacing: -0.03em;
        }
        .lead {
            margin: 18px 0 0;
            color: var(--muted);
            font-size: clamp(1rem, 1.2vw, 1.12rem);
            max-width: 36rem;
        }
        .cta-row {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin-top: 24px;
        }
        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            padding: 13px 18px;
            border-radius: 999px;
            border: 1px solid transparent;
            transition: transform var(--speed), box-shadow var(--speed), background var(--speed), color var(--speed), border-color var(--speed);
            cursor: pointer;
        }
        .btn-primary {
            background: linear-gradient(135deg, #1b1713, #4a3922);
            color: #fff8ee;
            box-shadow: 0 14px 26px rgba(29, 25, 21, 0.16);
        }
        .btn-secondary {
            background: rgba(255, 250, 243, 0.68);
            border-color: rgba(23, 20, 18, 0.10);
            color: var(--text);
        }
        .btn:hover, .btn:focus-visible { transform: translateY(-1px); outline: none; }
        .btn-primary:hover { box-shadow: 0 18px 32px rgba(29, 25, 21, 0.22); }
        .btn-secondary:hover { background: rgba(255, 250, 243, 0.92); }

        .hero-meta {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 12px;
            margin-top: 24px;
        }
        .mini-stat {
            padding: 14px 16px;
            border-radius: var(--radius-md);
            background: rgba(255, 255, 255, 0.55);
            border: 1px solid rgba(23, 20, 18, 0.08);
        }
        .mini-stat strong {
            display: block;
            font-size: 1.1rem;
            margin-bottom: 2px;
        }
        .mini-stat span { color: var(--muted); font-size: 0.92rem; }

        .hero-visual {
            padding: 18px;
            display: grid;
            gap: 14px;
        }
        .visual-board {
            background: linear-gradient(160deg, #221d17, #43331f 72%, #5e4527);
            border-radius: calc(var(--radius-xl) - 6px);
            color: #fff7ea;
            padding: 22px;
            min-height: 320px;
            position: relative;
            overflow: hidden;
        }
        .visual-board::before, .visual-board::after {
            content: '';
            position: absolute;
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.08);
        }
        .visual-board::before { width: 220px; height: 220px; top: -80px; right: -70px; }
        .visual-board::after { width: 160px; height: 160px; left: -50px; bottom: -60px; }
        .visual-title { font-size: 1.15rem; font-weight: 700; margin-bottom: 14px; }
        .matrix {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 12px;
            position: relative;
            z-index: 1;
        }
        .matrix .cell {
            min-height: 92px;
            padding: 14px;
            border-radius: 18px;
            background: rgba(255, 248, 238, 0.10);
            border: 1px solid rgba(255, 255, 255, 0.12);
            backdrop-filter: blur(6px);
        }
        .matrix .cell strong { display: block; font-size: 1rem; margin-bottom: 6px; }
        .matrix .cell span { color: rgba(255, 248, 238, 0.78); font-size: 0.92rem; }
        .hero-note {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
        }
        .tag {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            padding: 8px 12px;
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.62);
            border: 1px solid rgba(23, 20, 18, 0.08);
            color: var(--muted);
            font-size: 0.92rem;
        }

        .section {
            padding: 18px 0;
        }
        .section-box {
            padding: clamp(22px, 3vw, 34px);
        }
        .section-head {
            display: flex;
            align-items: end;
            justify-content: space-between;
            gap: 18px;
            margin-bottom: 18px;
        }
        .section-head h2 {
            margin: 0;
            font-size: clamp(1.5rem, 2.4vw, 2.2rem);
            line-height: 1.15;
            letter-spacing: -0.02em;
        }
        .section-head p { margin: 0; color: var(--muted); max-width: 42rem; }

        .kpi-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 14px;
        }
        .kpi {
            padding: 18px;
            border-radius: var(--radius-lg);
            background: rgba(255, 255, 255, 0.72);
            border: 1px solid rgba(23, 20, 18, 0.08);
        }
        .kpi strong { font-size: 1.65rem; display: block; line-height: 1; margin-bottom: 8px; }
        .kpi span { color: var(--muted); font-size: 0.94rem; }

        .feature-grid {
            display: grid;
            grid-template-columns: 1.1fr 0.9fr;
            gap: 16px;
        }
        .feature-stack { display: grid; gap: 16px; }
        .card, .news-card, .faq-item, .price-card, .panel { padding: 20px; }
        .card h3, .news-card h3, .price-card h3 { margin: 0 0 10px; font-size: 1.08rem; }
        .card p, .news-card p, .price-card p { margin: 0; color: var(--muted); }
        .feature-list {
            display: grid;
            gap: 12px;
        }
        .feature-list li {
            list-style: none;
            display: flex;
            gap: 10px;
            padding: 12px 14px;
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.62);
            border: 1px solid rgba(23, 20, 18, 0.08);
        }
        .feature-list strong { display: block; }
        .feature-list span { color: var(--muted); font-size: 0.94rem; }
        .feature-icon {
            width: 34px;
            height: 34px;
            border-radius: 12px;
            display: grid;
            place-items: center;
            background: linear-gradient(135deg, rgba(201,161,91,.18), rgba(157,117,48,.10));
            color: var(--gold-deep);
            flex: 0 0 auto;
        }

        .service-grid {
            display: grid;
            grid-template-columns: 1.2fr 0.8fr;
            gap: 16px;
            align-items: start;
        }
        .service-tabs {
            display: grid;
            gap: 12px;
        }
        .service-tabs .tab {
            padding: 16px 18px;
            border-radius: 18px;
            background: rgba(255, 255, 255, 0.70);
            border: 1px solid rgba(23, 20, 18, 0.08);
        }
        .service-tabs .tab strong { display: block; margin-bottom: 6px; }
        .service-tabs .tab p { margin: 0; color: var(--muted); }
        .side-panel {
            background: linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.52));
            border-radius: var(--radius-xl);
            padding: 20px;
            border: 1px solid rgba(23, 20, 18, 0.08);
        }
        .timeline { display: grid; gap: 14px; margin-top: 10px; }
        .timeline-item {
            display: grid;
            grid-template-columns: 28px 1fr;
            gap: 12px;
            align-items: start;
        }
        .dot {
            width: 14px; height: 14px; margin-top: 6px;
            border-radius: 50%; background: var(--gold);
            box-shadow: 0 0 0 6px rgba(201,161,91,.14);
        }
        .timeline-item strong { display: block; margin-bottom: 4px; }
        .timeline-item span { color: var(--muted); font-size: 0.94rem; }

        .news-layout {
            display: grid;
            grid-template-columns: 1.05fr 0.95fr;
            gap: 16px;
        }
        .news-list { display: grid; gap: 14px; }
        .news-row {
            display: grid;
            gap: 8px;
            padding: 16px 0;
            border-bottom: 1px solid rgba(23, 20, 18, 0.08);
        }
        .news-row:last-child { border-bottom: none; padding-bottom: 0; }
        .news-row a { font-weight: 700; }
        .news-row a:hover { color: var(--gold-deep); }
        .news-row small { color: var(--muted); }
        .hot-list { display: grid; gap: 12px; }
        .hot-item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 14px 16px;
            border-radius: 16px;
            background: rgba(255,255,255,.68);
            border: 1px solid rgba(23,20,18,.08);
        }
        .hot-item span { color: var(--muted); font-size: 0.92rem; }

        .price-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 16px;
        }
        .price-card {
            position: relative;
            overflow: hidden;
        }
        .price-card.featured {
            background: linear-gradient(180deg, rgba(255, 252, 247, 0.96), rgba(243, 232, 214, 0.90));
            box-shadow: 0 22px 50px rgba(61, 48, 27, 0.12);
            transform: translateY(-4px);
        }
        .price-badge {
            display: inline-flex;
            margin-bottom: 14px;
            padding: 7px 10px;
            border-radius: 999px;
            background: rgba(201,161,91,.12);
            color: var(--gold-deep);
            font-size: 0.88rem;
        }
        .price-figure { font-size: 2rem; font-weight: 800; margin: 8px 0 14px; }
        .price-card ul { margin: 0 0 18px; padding: 0; }
        .price-card li { list-style: none; margin: 10px 0; color: var(--muted); }
        .price-card li::before { content: '•'; color: var(--gold-deep); margin-right: 8px; }

        .faq-grid { display: grid; gap: 12px; }
        .faq-item summary {
            cursor: pointer;
            list-style: none;
            font-weight: 700;
        }
        .faq-item summary::-webkit-details-marker { display: none; }
        .faq-item p { margin: 12px 0 0; color: var(--muted); }

        .cta-banner {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 18px;
            align-items: center;
            padding: 24px;
            border-radius: var(--radius-xl);
            background: linear-gradient(135deg, #1f1a16, #4a3922 72%, #6a4f2c);
            color: #fff8ef;
            border: 1px solid rgba(255,255,255,.08);
            box-shadow: 0 26px 50px rgba(29, 25, 21, 0.18);
        }
        .cta-banner p { margin: 8px 0 0; color: rgba(255,248,239,.80); max-width: 50rem; }
        .cta-banner .btn-secondary { background: rgba(255,255,255,.12); color: #fff8ef; border-color: rgba(255,255,255,.18); }

        .site-footer {
            margin-top: 20px;
            padding: 28px 0 96px;
            color: var(--muted);
        }
        .footer-grid {
            display: grid;
            grid-template-columns: 1.2fr 0.8fr;
            gap: 18px;
            padding-top: 20px;
            border-top: 1px solid rgba(23,20,18,.10);
        }
        .footer-links { display: flex; flex-wrap: wrap; gap: 10px 14px; }
        .footer-links a:hover { color: var(--text); }
        .footer-meta { text-align: right; }

        .mobile-tabbar {
            display: none;
        }

        @media (max-width: 1024px) {
            .hero-shell, .feature-grid, .service-grid, .news-layout, .footer-grid, .cta-banner { grid-template-columns: 1fr; }
            .kpi-grid, .price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
            .footer-meta { text-align: left; }
        }
        @media (max-width: 768px) {
            .header-inner { flex-wrap: wrap; padding: 12px 0; }
            .nav { order: 3; width: 100%; justify-content: flex-start; overflow-x: auto; padding-bottom: 2px; }
            .nav a { flex: 0 0 auto; }
            .hero { padding-top: 22px; }
            h1 { font-size: clamp(2rem, 10vw, 3.2rem); }
            .hero-meta, .kpi-grid, .price-grid { grid-template-columns: 1fr; }
            .matrix { grid-template-columns: 1fr; }
            .section-head { flex-direction: column; align-items: start; }
            .mobile-tabbar {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 8px;
                position: fixed;
                left: 12px;
                right: 12px;
                bottom: 12px;
                z-index: 999;
                padding: 10px;
                background: rgba(250, 245, 237, 0.92);
                border: 1px solid rgba(23,20,18,.10);
                border-radius: 22px;
                box-shadow: 0 18px 38px rgba(29,25,21,.14);
                backdrop-filter: blur(14px);
            }
            .mobile-tabbar a {
                display: grid;
                gap: 4px;
                justify-items: center;
                padding: 10px 8px;
                border-radius: 16px;
                color: var(--muted);
                font-size: 0.88rem;
            }
            .mobile-tabbar a.active {
                background: rgba(201,161,91,.12);
                color: var(--text);
            }
        }
        @media (max-width: 520px) {
            .container { width: min(100% - 20px, var(--container)); }
            .hero-copy, .hero-visual, .card, .news-card, .faq-item, .price-card, .panel, .section-box, .cta-banner { border-radius: 20px; }
            .brand span { font-size: 0.96rem; }
            .btn, .header-cta { width: 100%; }
            .cta-row { flex-direction: column; }
        }

/* roulang page: category1 */
:root{
      --bg:#0f1115;
      --bg-2:#141821;
      --panel:#171b23;
      --panel-2:#1d232d;
      --card:#202634;
      --card-2:#252c3a;
      --text:#f5f1e8;
      --muted:#b8becc;
      --soft:#8891a2;
      --line:rgba(255,255,255,.09);
      --line-2:rgba(255,255,255,.14);
      --accent:#d7b56d;
      --accent-2:#f2d79a;
      --accent-3:#8a6b2f;
      --ok:#6ed39a;
      --warn:#f0b45e;
      --shadow:0 20px 50px rgba(0,0,0,.28);
      --shadow-soft:0 12px 28px rgba(0,0,0,.16);
      --radius:18px;
      --radius-lg:26px;
      --radius-xl:34px;
      --container:1180px;
      --space:clamp(18px, 2vw, 28px);
      --space-lg:clamp(28px, 4vw, 56px);
      --ease:cubic-bezier(.2,.8,.2,1);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:
        radial-gradient(1200px 600px at 15% -5%, rgba(215,181,109,.14), transparent 45%),
        radial-gradient(1000px 500px at 85% 10%, rgba(242,215,154,.08), transparent 45%),
        linear-gradient(180deg, #0b0d11 0%, #10141a 50%, #0f1115 100%);
      color:var(--text);
      line-height:1.7;
      text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,textarea,select{font:inherit}
    ::selection{background:rgba(215,181,109,.28);color:#fff}
    :focus-visible{outline:2px solid rgba(215,181,109,.85);outline-offset:3px}
    .container{
      width:min(var(--container), calc(100% - 32px));
      margin-inline:auto;
    }
    .skip-link{
      position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;
    }
    .skip-link:focus{
      left:16px;top:16px;width:auto;height:auto;padding:10px 14px;
      background:#fff;color:#111;border-radius:999px;z-index:1000;
    }

    .site-header{
      position:sticky;top:0;z-index:80;
      backdrop-filter:saturate(130%) blur(18px);
      background:rgba(8,10,14,.72);
      border-bottom:1px solid var(--line);
    }
    .header-inner{
      min-height:78px;
      display:flex;
      align-items:center;
      gap:18px;
      justify-content:space-between;
    }
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      font-weight:800;
      letter-spacing:.02em;
      white-space:nowrap;
      color:var(--text);
    }
    .brand-mark{
      width:38px;height:38px;border-radius:14px;
      display:grid;place-items:center;
      background:linear-gradient(145deg, rgba(215,181,109,.24), rgba(215,181,109,.08));
      border:1px solid rgba(215,181,109,.35);
      color:var(--accent-2);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
      flex:0 0 auto;
    }
    .brand span:last-child{
      font-size:1.02rem;
      max-width:min(52vw, 460px);
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .nav{
      display:flex;
      align-items:center;
      gap:8px;
      padding:8px;
      border-radius:999px;
      background:rgba(255,255,255,.03);
      border:1px solid var(--line);
    }
    .nav a{
      position:relative;
      padding:10px 16px;
      border-radius:999px;
      color:var(--muted);
      font-weight:600;
      font-size:.95rem;
      transition:transform .2s var(--ease), background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
      border:1px solid transparent;
    }
    .nav a:hover{
      color:var(--text);
      background:rgba(255,255,255,.04);
      transform:translateY(-1px);
    }
    .nav a.active{
      color:#101214;
      background:linear-gradient(135deg, var(--accent-2), var(--accent));
      border-color:rgba(255,255,255,.1);
      box-shadow:0 10px 20px rgba(215,181,109,.16);
    }
    .header-cta{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:46px;
      padding:0 18px;
      border-radius:999px;
      background:linear-gradient(135deg, rgba(215,181,109,.16), rgba(215,181,109,.07));
      border:1px solid rgba(215,181,109,.26);
      color:var(--accent-2);
      font-weight:700;
      transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
      white-space:nowrap;
    }
    .header-cta:hover{
      transform:translateY(-1px);
      box-shadow:0 14px 24px rgba(0,0,0,.24);
      border-color:rgba(215,181,109,.45);
    }

    main{padding-bottom:42px}
    .hero{
      position:relative;
      padding:24px 0 12px;
    }
    .hero-shell{
      display:grid;
      grid-template-columns: 5fr 7fr;
      gap:22px;
      align-items:stretch;
      min-height:calc(100vh - 126px);
      padding:16px 0 6px;
    }
    .hero-copy{
      display:flex;
      flex-direction:column;
      justify-content:center;
      gap:18px;
      padding:18px 0 24px;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:10px;
      color:var(--accent-2);
      font-weight:700;
      font-size:.94rem;
      letter-spacing:.06em;
      text-transform:uppercase;
    }
    .eyebrow::before{
      content:"";
      width:34px;height:1px;
      background:linear-gradient(90deg, transparent, var(--accent), transparent);
    }
    h1{
      margin:0;
      font-size:clamp(2.15rem, 4vw, 4.5rem);
      line-height:1.06;
      letter-spacing:-.03em;
      font-weight:900;
      max-width:12ch;
    }
    .hero p{
      margin:0;
      max-width:38rem;
      color:var(--muted);
      font-size:1.03rem;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin-top:6px;
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      min-height:48px;
      padding:0 18px;
      border-radius:999px;
      border:1px solid transparent;
      cursor:pointer;
      transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease), color .2s var(--ease);
      font-weight:700;
      letter-spacing:.01em;
      user-select:none;
    }
    .btn-primary{
      background:linear-gradient(135deg, var(--accent-2), var(--accent));
      color:#111214;
      box-shadow:0 16px 30px rgba(215,181,109,.18);
    }
    .btn-primary:hover{transform:translateY(-1px);box-shadow:0 18px 36px rgba(215,181,109,.24)}
    .btn-secondary{
      background:rgba(255,255,255,.04);
      color:var(--text);
      border-color:var(--line-2);
    }
    .btn-secondary:hover{
      transform:translateY(-1px);
      background:rgba(255,255,255,.07);
      border-color:rgba(255,255,255,.18);
    }
    .trust-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:8px;
    }
    .tag{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      color:var(--muted);
      font-size:.9rem;
    }
    .tag strong{color:var(--text)}
    .hero-kpis{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:12px;
      margin-top:10px;
      max-width:560px;
    }
    .kpi{
      padding:14px 15px;
      border-radius:var(--radius);
      background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
      border:1px solid var(--line);
      box-shadow:var(--shadow-soft);
    }
    .kpi .num{
      display:block;
      font-size:1.38rem;
      font-weight:900;
      color:var(--accent-2);
      line-height:1.1;
    }
    .kpi .desc{
      display:block;
      margin-top:6px;
      color:var(--muted);
      font-size:.88rem;
    }

    .hero-visual{
      position:relative;
      min-height:560px;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .dp-cover{
      position:relative;
      width:min(100%, 640px);
      min-height:560px;
      border-radius:clamp(24px, 4vw, 42px);
      background:
        radial-gradient(700px 300px at 25% 20%, rgba(215,181,109,.20), transparent 50%),
        linear-gradient(160deg, rgba(33,39,51,.98), rgba(16,19,25,.96));
      border:1px solid rgba(255,255,255,.1);
      box-shadow:0 28px 60px rgba(0,0,0,.34);
      overflow:hidden;
      padding:22px;
      isolation:isolate;
    }
    .dp-cover::before{
      content:"";
      position:absolute;inset:auto -12% -18% auto;
      width:320px;height:320px;border-radius:50%;
      background:radial-gradient(circle at 30% 30%, rgba(242,215,154,.18), rgba(242,215,154,.02) 65%, transparent 68%);
      filter:blur(4px);
      pointer-events:none;
    }
    .dp-cover::after{
      content:"";
      position:absolute;inset:14px;
      border-radius:calc(34px - 14px);
      border:1px solid rgba(255,255,255,.05);
      pointer-events:none;
    }
    .cover-top{
      position:relative;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      z-index:2;
      margin-bottom:16px;
    }
    .cover-top .title{
      font-weight:800;
      letter-spacing:.03em;
      color:var(--text);
    }
    .cover-top .badge{
      padding:8px 12px;
      border-radius:999px;
      background:rgba(215,181,109,.12);
      border:1px solid rgba(215,181,109,.28);
      color:var(--accent-2);
      font-size:.86rem;
      font-weight:700;
    }
    .cover-grid{
      position:relative;
      z-index:2;
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap:14px;
      height:calc(100% - 58px);
    }
    .cover-card{
      border-radius:24px;
      background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04));
      border:1px solid rgba(255,255,255,.09);
      box-shadow:var(--shadow-soft);
      overflow:hidden;
    }
    .cover-card.large{
      position:relative;
      padding:18px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      min-height:100%;
      transform:translateY(18px) rotate(-2deg);
      background:
        linear-gradient(180deg, rgba(215,181,109,.12), rgba(255,255,255,.03)),
        linear-gradient(160deg, rgba(31,37,49,.98), rgba(18,21,28,.94));
    }
    .cover-card.large .section-label{
      display:inline-flex;
      align-items:center;
      gap:8px;
      width:max-content;
      padding:8px 12px;
      border-radius:999px;
      background:rgba(0,0,0,.22);
      border:1px solid rgba(255,255,255,.08);
      color:var(--accent-2);
      font-size:.84rem;
      font-weight:700;
    }
    .cover-card.large h2{
      margin:12px 0 10px;
      font-size:1.75rem;
      line-height:1.08;
      letter-spacing:-.03em;
      max-width:10ch;
    }
    .cover-card.large p{
      margin:0;
      color:var(--muted);
      max-width:24ch;
      font-size:.98rem;
    }
    .mini-strip{
      display:grid;
      gap:10px;
      align-content:end;
    }
    .mini-item{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      padding:14px 15px;
      border-radius:20px;
      background:rgba(15,17,21,.36);
      border:1px solid rgba(255,255,255,.08);
    }
    .mini-item .name{
      display:block;
      font-weight:700;
      color:var(--text);
    }
    .mini-item .meta{
      display:block;
      margin-top:4px;
      color:var(--soft);
      font-size:.88rem;
    }
    .mini-item .score{
      color:var(--accent-2);
      font-weight:800;
      font-size:1.02rem;
      white-space:nowrap;
    }
    .cover-side{
      display:grid;
      gap:14px;
      padding-top:20px;
      transform:translateY(-12px);
    }
    .stat-panel{
      padding:18px;
      border-radius:24px;
      background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
      border:1px solid rgba(255,255,255,.09);
    }
    .stat-panel .panel-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-bottom:12px;
    }
    .stat-panel .panel-head strong{
      font-size:1rem;
    }
    .stat-panel .panel-head span{
      color:var(--soft);
      font-size:.88rem;
    }
    .bar-list{
      display:grid;
      gap:12px;
    }
    .bar-row{
      display:grid;
      gap:8px;
    }
    .bar-top{
      display:flex;
      justify-content:space-between;
      gap:12px;
      font-size:.9rem;
    }
    .bar-top span:first-child{color:var(--text);font-weight:700}
    .bar-top span:last-child{color:var(--accent-2);font-weight:800}
    .bar{
      height:10px;
      border-radius:999px;
      background:rgba(255,255,255,.08);
      overflow:hidden;
    }
    .bar > i{
      display:block;height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg, var(--accent), var(--accent-2));
      box-shadow:0 0 20px rgba(215,181,109,.24);
    }
    .info-card{
      padding:18px;
      border-radius:24px;
      background:
        linear-gradient(180deg, rgba(215,181,109,.12), rgba(255,255,255,.03)),
        rgba(255,255,255,.03);
      border:1px solid rgba(215,181,109,.22);
    }
    .info-card .tiny{
      color:var(--accent-2);
      font-weight:700;
      font-size:.86rem;
      letter-spacing:.06em;
    }
    .info-card h3{
      margin:10px 0 8px;
      font-size:1.2rem;
      line-height:1.2;
    }
    .info-card p{
      margin:0;
      color:var(--muted);
      font-size:.95rem;
    }
    .section{
      padding:var(--space-lg) 0;
      scroll-margin-top:90px;
    }
    .section-head{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:18px;
      margin-bottom:20px;
    }
    .section-title{
      margin:0;
      font-size:clamp(1.45rem, 2.4vw, 2.2rem);
      line-height:1.15;
      letter-spacing:-.02em;
    }
    .section-sub{
      margin:0;
      max-width:56ch;
      color:var(--muted);
      font-size:.98rem;
    }
    .section-soft{
      background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
      border-top:1px solid rgba(255,255,255,.04);
      border-bottom:1px solid rgba(255,255,255,.04);
    }

    .feature-grid{
      display:grid;
      grid-template-columns: 1.3fr .95fr .95fr;
      gap:16px;
    }
    .feature-grid .feature-main{
      padding:24px;
      min-height:230px;
    }
    .card{
      position:relative;
      padding:20px;
      border-radius:var(--radius-lg);
      background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.035));
      border:1px solid var(--line);
      box-shadow:var(--shadow-soft);
      transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);
      overflow:hidden;
    }
    .card:hover{
      transform:translateY(-4px);
      border-color:rgba(215,181,109,.24);
      box-shadow:0 18px 32px rgba(0,0,0,.24);
      background:linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.04));
    }
    .card .icon{
      width:44px;height:44px;border-radius:16px;
      display:grid;place-items:center;
      background:rgba(215,181,109,.12);
      border:1px solid rgba(215,181,109,.25);
      color:var(--accent-2);
      margin-bottom:14px;
    }
    .card h3{
      margin:0 0 10px;
      font-size:1.08rem;
      line-height:1.2;
    }
    .card p{
      margin:0;
      color:var(--muted);
      font-size:.95rem;
    }
    .card .mini-meta{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-top:14px;
    }
    .pill{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:7px 10px;
      border-radius:999px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      color:var(--muted);
      font-size:.84rem;
    }
    .pill strong{color:var(--text)}
    .grid-3{
      display:grid;
      grid-template-columns:repeat(3, minmax(0, 1fr));
      gap:16px;
    }
    .grid-4{
      display:grid;
      grid-template-columns:repeat(4, minmax(0, 1fr));
      gap:16px;
    }
    .scenario-wrap{
      display:grid;
      grid-template-columns: .9fr 1.1fr;
      gap:16px;
      align-items:stretch;
    }
    .scenario-list{
      display:grid;
      gap:14px;
    }
    .scenario-step{
      display:flex;
      gap:14px;
      align-items:flex-start;
      padding:18px;
      border-radius:24px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
    }
    .step-no{
      flex:0 0 auto;
      width:40px;height:40px;
      border-radius:14px;
      display:grid;place-items:center;
      background:linear-gradient(135deg, rgba(215,181,109,.24), rgba(215,181,109,.08));
      border:1px solid rgba(215,181,109,.28);
      color:var(--accent-2);
      font-weight:800;
    }
    .scenario-step h3{
      margin:0 0 6px;
      font-size:1rem;
    }
    .scenario-step p{
      margin:0;
      color:var(--muted);
      font-size:.94rem;
    }
    .scenario-side{
      display:grid;
      gap:16px;
    }
    .switch-bar{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      padding:12px;
      border-radius:24px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
    }
    .switch-bar .tag{
      background:transparent;
      cursor:default;
    }
    .switch-bar .tag.active{
      background:rgba(215,181,109,.14);
      border-color:rgba(215,181,109,.26);
      color:var(--accent-2);
    }
    .stack-card{
      padding:20px;
      border-radius:24px;
      background:
        linear-gradient(180deg, rgba(215,181,109,.10), rgba(255,255,255,.04)),
        rgba(255,255,255,.03);
      border:1px solid rgba(215,181,109,.22);
    }
    .stack-card h3{
      margin:0 0 12px;
      font-size:1.1rem;
    }
    .checklist{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap:10px;
    }
    .checklist li{
      position:relative;
      padding-left:28px;
      color:var(--muted);
    }
    .checklist li::before{
      content:"";
      position:absolute;
      left:0;top:.48em;
      width:16px;height:16px;
      border-radius:50%;
      background:linear-gradient(135deg, var(--accent-2), var(--accent));
      box-shadow:0 0 0 4px rgba(215,181,109,.12);
    }

    .catalog-toolbar{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      align-items:center;
      justify-content:space-between;
      margin-bottom:16px;
    }
    .search-box{
      flex:1 1 360px;
      display:flex;
      align-items:center;
      gap:10px;
      padding:10px 14px;
      border-radius:999px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      min-height:52px;
    }
    .search-box svg{flex:0 0 auto;color:var(--soft)}
    .search-box input{
      width:100%;
      border:0;
      background:transparent;
      color:var(--text);
      outline:none;
    }
    .search-box input::placeholder{color:var(--soft)}
    .filter-chips{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .chip{
      padding:9px 12px;
      border-radius:999px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      color:var(--muted);
      font-size:.88rem;
      font-weight:600;
    }
    .chip.active{
      background:rgba(215,181,109,.14);
      border-color:rgba(215,181,109,.25);
      color:var(--accent-2);
    }
    .catalog-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:16px;
    }
    .catalog-card{
      display:flex;
      flex-direction:column;
      min-height:100%;
    }
    .catalog-card .thumb{
      position:relative;
      height:160px;
      border-radius:22px;
      background:
        linear-gradient(145deg, rgba(215,181,109,.18), rgba(255,255,255,.02)),
        linear-gradient(160deg, rgba(42,48,61,.96), rgba(18,21,28,.96));
      border:1px solid rgba(255,255,255,.08);
      overflow:hidden;
      margin-bottom:16px;
    }
    .catalog-card .thumb::before,
    .catalog-card .thumb::after{
      content:"";
      position:absolute;
      border-radius:50%;
      background:radial-gradient(circle, rgba(242,215,154,.24), rgba(242,215,154,0) 70%);
      filter:blur(2px);
    }
    .catalog-card .thumb::before{
      width:180px;height:180px;left:-40px;top:-30px;
    }
    .catalog-card .thumb::after{
      width:220px;height:220px;right:-70px;bottom:-90px;
    }
    .thumb-label{
      position:absolute;
      left:14px;top:14px;
      padding:7px 10px;
      border-radius:999px;
      background:rgba(0,0,0,.28);
      border:1px solid rgba(255,255,255,.1);
      color:#fff;
      font-size:.8rem;
      font-weight:700;
    }
    .thumb-focus{
      position:absolute;
      left:14px;bottom:14px;right:14px;
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:12px;
    }
    .thumb-focus .title{
      font-size:1.05rem;
      font-weight:800;
      max-width:12ch;
      line-height:1.15;
    }
    .thumb-focus .trend{
      padding:8px 10px;
      border-radius:999px;
      background:rgba(215,181,109,.14);
      border:1px solid rgba(215,181,109,.24);
      color:var(--accent-2);
      font-size:.8rem;
      font-weight:700;
      white-space:nowrap;
    }
    .catalog-card .body{
      display:flex;
      flex-direction:column;
      gap:12px;
      flex:1;
    }
    .catalog-card .meta-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      font-size:.84rem;
      color:var(--soft);
    }
    .catalog-card .meta-top strong{
      color:var(--accent-2);
      font-weight:800;
    }
    .catalog-card .summary{
      color:var(--muted);
      font-size:.94rem;
      margin:0;
    }
    .catalog-card .meta-tags{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
    }
    .catalog-card .card-actions{
      display:flex;
      gap:10px;
      margin-top:auto;
      padding-top:4px;
    }
    .btn-small{
      min-height:42px;
      padding:0 14px;
      font-size:.92rem;
    }

    .results{
      display:grid;
      grid-template-columns:repeat(4, minmax(0,1fr));
      gap:16px;
    }
    .result{
      padding:18px;
      border-radius:24px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
    }
    .result .big{
      font-size:1.9rem;
      font-weight:900;
      line-height:1;
      color:var(--accent-2);
      margin-bottom:10px;
    }
    .result h3{
      margin:0 0 8px;
      font-size:1.02rem;
    }
    .result p{
      margin:0;
      color:var(--muted);
      font-size:.94rem;
    }

    .pricing-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:16px;
      align-items:stretch;
    }
    .price-card{
      display:flex;
      flex-direction:column;
      gap:16px;
      min-height:100%;
    }
    .price-card.featured{
      background:
        linear-gradient(180deg, rgba(215,181,109,.14), rgba(255,255,255,.04)),
        linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035));
      border-color:rgba(215,181,109,.28);
      transform:translateY(-6px);
    }
    .price-head{
      display:flex;
      justify-content:space-between;
      gap:12px;
      align-items:flex-start;
    }
    .price-head h3{
      margin:0 0 8px;
      font-size:1.12rem;
    }
    .price-head .flag{
      padding:8px 10px;
      border-radius:999px;
      background:rgba(215,181,109,.14);
      border:1px solid rgba(215,181,109,.24);
      color:var(--accent-2);
      font-size:.82rem;
      font-weight:700;
      white-space:nowrap;
    }
    .price{
      font-size:2.3rem;
      line-height:1;
      font-weight:900;
      letter-spacing:-.04em;
    }
    .price small{
      font-size:.9rem;
      color:var(--soft);
      font-weight:600;
    }
    .price-list{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap:10px;
    }
    .price-list li{
      display:flex;
      gap:10px;
      align-items:flex-start;
      color:var(--muted);
      font-size:.94rem;
    }
    .price-list li::before{
      content:"✓";
      color:var(--ok);
      font-weight:800;
      flex:0 0 auto;
    }
    .price-card .btn{
      width:100%;
      margin-top:auto;
    }

    .faq-grid{
      display:grid;
      gap:12px;
    }
    details.faq-item{
      border-radius:22px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      overflow:hidden;
      box-shadow:var(--shadow-soft);
    }
    details.faq-item[open]{
      border-color:rgba(215,181,109,.22);
      background:rgba(255,255,255,.05);
    }
    .faq-item summary{
      list-style:none;
      cursor:pointer;
      padding:18px 20px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      font-weight:700;
      color:var(--text);
    }
    .faq-item summary::-webkit-details-marker{display:none}
    .faq-item summary::after{
      content:"+";
      flex:0 0 auto;
      width:30px;height:30px;
      border-radius:50%;
      display:grid;place-items:center;
      background:rgba(215,181,109,.12);
      color:var(--accent-2);
      font-weight:800;
    }
    details[open] summary::after{content:"–"}
    .faq-body{
      padding:0 20px 18px;
      color:var(--muted);
    }

    .cta-section{
      padding:22px;
      border-radius:var(--radius-xl);
      background:
        radial-gradient(700px 240px at 15% 0%, rgba(215,181,109,.14), transparent 52%),
        linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
      border:1px solid rgba(255,255,255,.1);
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .cta-grid{
      display:grid;
      grid-template-columns:1.05fr .95fr;
      gap:18px;
      align-items:center;
    }
    .cta-copy h2{
      margin:0 0 10px;
      font-size:clamp(1.45rem, 2.8vw, 2.4rem);
      line-height:1.1;
    }
    .cta-copy p{
      margin:0;
      color:var(--muted);
      max-width:46ch;
    }
    .cta-form{
      display:grid;
      gap:12px;
      padding:18px;
      border-radius:24px;
      background:rgba(11,13,17,.38);
      border:1px solid rgba(255,255,255,.1);
    }
    .field{
      display:grid;
      gap:8px;
    }
    .field label{
      font-size:.88rem;
      color:var(--soft);
      font-weight:600;
    }
    .field input{
      width:100%;
      min-height:50px;
      padding:0 16px;
      border-radius:14px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.04);
      color:var(--text);
      transition:border-color .2s var(--ease), background .2s var(--ease), box-shadow .2s var(--ease);
    }
    .field input::placeholder{color:var(--soft)}
    .field input:focus{
      border-color:rgba(215,181,109,.36);
      background:rgba(255,255,255,.06);
      box-shadow:0 0 0 4px rgba(215,181,109,.08);
      outline:none;
    }
    .form-note{
      font-size:.85rem;
      color:var(--soft);
    }

    .site-footer{
      margin-top:18px;
      padding:28px 0 86px;
      border-top:1px solid rgba(255,255,255,.06);
      background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:18px;
      align-items:start;
    }
    .footer-meta{
      display:grid;
      justify-items:end;
      gap:10px;
    }
    .footer-links{
      display:flex;
      flex-wrap:wrap;
      justify-content:flex-end;
      gap:10px;
    }
    .footer-links a{
      padding:9px 12px;
      border-radius:999px;
      background:rgba(255,255,255,.03);
      border:1px solid var(--line);
      color:var(--muted);
      font-size:.9rem;
      transition:background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);
    }
    .footer-links a:hover{
      color:var(--text);
      background:rgba(255,255,255,.06);
      transform:translateY(-1px);
    }
    .site-footer .brand{
      margin-bottom:10px;
    }
    .site-footer div{
      color:var(--muted);
    }
    .site-footer a[href*="zhenhonglog.com"]{
      color:var(--accent-2);
    }

    .mobile-tabbar{
      position:fixed;
      left:0;right:0;bottom:0;
      display:none;
      z-index:90;
      padding:10px 12px 12px;
      background:linear-gradient(180deg, rgba(9,11,15,.06), rgba(9,11,15,.94) 28%, rgba(9,11,15,.98));
      border-top:1px solid rgba(255,255,255,.08);
      backdrop-filter:blur(18px);
    }
    .tabbar-inner{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:10px;
    }
    .tabbar-inner a{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap:6px;
      padding:10px 8px 8px;
      border-radius:18px;
      color:var(--muted);
      border:1px solid transparent;
      transition:background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease), border-color .2s var(--ease);
    }
    .tabbar-inner a svg{width:20px;height:20px}
    .tabbar-inner a span{font-size:.78rem;font-weight:600}
    .tabbar-inner a.active{
      color:var(--accent-2);
      background:rgba(215,181,109,.1);
      border-color:rgba(215,181,109,.2);
    }
    .tabbar-inner a:hover{transform:translateY(-1px);color:var(--text)}
    .breadcrumb{
      display:flex;
      align-items:center;
      gap:8px;
      color:var(--soft);
      font-size:.9rem;
      margin-bottom:16px;
      flex-wrap:wrap;
    }
    .breadcrumb a{color:var(--muted)}
    .breadcrumb span{color:var(--soft)}
    .breadcrumb strong{color:var(--text)}

    .section-head .more-link{
      color:var(--accent-2);
      font-weight:700;
      white-space:nowrap;
    }

    @media (max-width: 1120px){
      .hero-shell,
      .cta-grid,
      .scenario-wrap,
      .footer-grid{
        grid-template-columns:1fr;
      }
      .hero-shell{min-height:auto}
      .hero-visual{min-height:520px}
      .feature-grid{grid-template-columns:1fr 1fr}
      .feature-grid .feature-main{grid-column:1 / -1}
      .catalog-grid{grid-template-columns:1fr 1fr}
      .results{grid-template-columns:1fr 1fr}
      .pricing-grid{grid-template-columns:1fr}
      .footer-meta{justify-items:start}
      .footer-links{justify-content:flex-start}
      .header-inner{flex-wrap:wrap;padding:12px 0}
      .nav{order:3;width:100%;justify-content:center;overflow:auto}
    }
    @media (max-width: 768px){
      .site-header{position:sticky}
      .header-cta{display:none}
      .hero{padding-top:12px}
      .hero-shell{gap:16px}
      .hero p{font-size:1rem}
      .hero-kpis{grid-template-columns:1fr}
      .feature-grid,
      .grid-3,
      .grid-4,
      .catalog-grid,
      .results{
        grid-template-columns:1fr;
      }
      .catalog-toolbar{
        align-items:stretch;
      }
      .search-box{flex-basis:100%}
      .nav{
        justify-content:flex-start;
        padding:8px 6px;
        border-radius:18px;
      }
      .nav a{padding:10px 12px}
      .dp-cover{min-height:520px;padding:18px}
      .cover-grid{grid-template-columns:1fr;gap:12px}
      .cover-card.large{transform:none;min-height:240px}
      .cover-side{transform:none;padding-top:0}
      .mobile-tabbar{display:block}
      body{padding-bottom:92px}
    }
    @media (max-width: 520px){
      .container{width:min(calc(100% - 20px), var(--container))}
      .header-inner{gap:12px}
      .brand span:last-child{max-width:72vw;font-size:.96rem}
      h1{max-width:100%}
      .hero-actions .btn{width:100%}
      .btn{width:100%}
      .section-head{
        align-items:flex-start;
        flex-direction:column;
      }
      .card,
      .stat-panel,
      .info-card,
      .scenario-step,
      .result,
      .cta-section,
      .cta-form,
      .cover-card.large{
        border-radius:20px;
      }
      .dp-cover{min-height:480px}
      .faq-item summary{padding:16px}
      .faq-body{padding:0 16px 16px}
      .price{font-size:2rem}
      .tabbar-inner a{padding:10px 4px}
      .tabbar-inner a span{font-size:.73rem}
    }

/* roulang page: category2 */
:root{
            --bg:#0d0e12;
            --bg-2:#12141a;
            --panel:#161922;
            --panel-2:#1b1f29;
            --card:#181c25;
            --card-2:#1f2430;
            --line:rgba(255,255,255,.08);
            --line-2:rgba(255,255,255,.14);
            --text:#f4f1ea;
            --muted:#b7b2a7;
            --muted-2:#8c879a;
            --accent:#d4af73;
            --accent-2:#f0d8a4;
            --accent-3:#9f8352;
            --success:#71d0a4;
            --danger:#ef7e76;
            --shadow:0 24px 60px rgba(0,0,0,.32);
            --shadow-soft:0 16px 34px rgba(0,0,0,.22);
            --radius:18px;
            --radius-lg:26px;
            --container:1200px;
            --gap:24px;
            --transition:.24s ease;
        }
        *, *::before, *::after{box-sizing:border-box;}
        html{scroll-behavior:smooth;}
        body{
            margin:0;
            font-family: "PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
            color:var(--text);
            background:
                radial-gradient(circle at top left, rgba(212,175,115,.16), transparent 28%),
                radial-gradient(circle at 85% 10%, rgba(240,216,164,.09), transparent 22%),
                radial-gradient(circle at 50% 120%, rgba(159,131,82,.12), transparent 28%),
                linear-gradient(180deg, #0a0b0f 0%, #0e1116 46%, #0b0d11 100%);
            min-height:100vh;
            line-height:1.7;
            letter-spacing:.01em;
            padding-bottom:84px;
        }
        img{max-width:100%;display:block;}
        a{color:inherit;text-decoration:none;}
        button,input,select,textarea{
            font:inherit;
        }
        button{
            cursor:pointer;
        }
        ::selection{
            background:rgba(212,175,115,.28);
            color:#fff;
        }
        .container{
            width:min(var(--container), calc(100% - 32px));
            margin:0 auto;
        }
        .skip-link{
            position:absolute;
            left:-999px;
            top:8px;
            z-index:9999;
            background:var(--accent);
            color:#121212;
            padding:10px 14px;
            border-radius:999px;
            font-weight:700;
        }
        .skip-link:focus{
            left:16px;
            outline:none;
        }
        .site-header{
            position:sticky;
            top:0;
            z-index:50;
            backdrop-filter:blur(18px);
            background:linear-gradient(180deg, rgba(10,11,15,.88), rgba(10,11,15,.72));
            border-bottom:1px solid var(--line);
        }
        .header-inner{
            min-height:78px;
            display:flex;
            align-items:center;
            gap:18px;
        }
        .brand{
            display:inline-flex;
            align-items:center;
            gap:12px;
            min-width:0;
            font-weight:800;
            letter-spacing:.04em;
            color:var(--text);
        }
        .brand-mark{
            width:34px;
            height:34px;
            border-radius:12px;
            display:grid;
            place-items:center;
            background:linear-gradient(145deg, rgba(212,175,115,.24), rgba(212,175,115,.08));
            border:1px solid rgba(212,175,115,.4);
            color:var(--accent-2);
            box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
            flex:0 0 auto;
        }
        .brand span:last-child{
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
        }
        .nav{
            margin-left:auto;
            display:flex;
            align-items:center;
            gap:8px;
            flex-wrap:wrap;
        }
        .nav a{
            position:relative;
            padding:10px 14px;
            border-radius:999px;
            color:var(--muted);
            border:1px solid transparent;
            transition:transform var(--transition), background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
        }
        .nav a:hover,
        .nav a:focus-visible{
            color:var(--text);
            background:rgba(255,255,255,.04);
            border-color:rgba(255,255,255,.08);
            outline:none;
            transform:translateY(-1px);
        }
        .nav a.active{
            color:#0f1115;
            background:linear-gradient(145deg, var(--accent), var(--accent-2));
            border-color:transparent;
            box-shadow:0 10px 24px rgba(212,175,115,.24);
        }
        .nav a.active::after{
            content:"";
            position:absolute;
            inset:100% 50% auto auto;
            width:6px;
            height:6px;
            margin-top:4px;
            border-radius:50%;
            background:var(--accent-2);
            transform:translateX(50%);
        }
        .header-cta{
            margin-left:8px;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            padding:11px 18px;
            border-radius:999px;
            background:linear-gradient(145deg, rgba(212,175,115,.2), rgba(212,175,115,.1));
            color:var(--accent-2);
            border:1px solid rgba(212,175,115,.34);
            box-shadow:var(--shadow-soft);
            transition:transform var(--transition), border-color var(--transition), background var(--transition);
            white-space:nowrap;
        }
        .header-cta:hover,
        .header-cta:focus-visible{
            transform:translateY(-1px);
            border-color:rgba(240,216,164,.55);
            background:linear-gradient(145deg, rgba(212,175,115,.26), rgba(212,175,115,.14));
            outline:none;
        }
        main{
            padding:28px 0 60px;
        }
        .hero{
            padding:24px 0 18px;
        }
        .hero-grid{
            display:grid;
            grid-template-columns:minmax(0,1.06fr) minmax(340px,.94fr);
            gap:28px;
            align-items:stretch;
        }
        .eyebrow{
            display:inline-flex;
            align-items:center;
            gap:10px;
            padding:8px 13px;
            border-radius:999px;
            background:rgba(255,255,255,.04);
            border:1px solid var(--line);
            color:var(--accent-2);
            font-size:.92rem;
            letter-spacing:.06em;
        }
        .eyebrow::before{
            content:"";
            width:8px;
            height:8px;
            border-radius:50%;
            background:var(--accent);
            box-shadow:0 0 0 6px rgba(212,175,115,.15);
        }
        h1,h2,h3,p{margin:0;}
        .hero h1{
            margin-top:18px;
            font-size:clamp(2.2rem, 4.2vw, 4.9rem);
            line-height:1.03;
            letter-spacing:-.03em;
            font-weight:900;
            max-width:11ch;
        }
        .hero-lead{
            margin-top:18px;
            font-size:1.06rem;
            color:var(--muted);
            max-width:58ch;
        }
        .hero-actions{
            display:flex;
            flex-wrap:wrap;
            gap:12px;
            margin-top:26px;
        }
        .btn{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:10px;
            min-height:48px;
            padding:0 18px;
            border-radius:999px;
            border:1px solid transparent;
            transition:transform var(--transition), background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
            font-weight:700;
            letter-spacing:.02em;
        }
        .btn:hover,
        .btn:focus-visible{
            outline:none;
            transform:translateY(-1px);
        }
        .btn-primary{
            background:linear-gradient(145deg, var(--accent), var(--accent-2));
            color:#111215;
            box-shadow:0 16px 30px rgba(212,175,115,.22);
        }
        .btn-primary:hover,
        .btn-primary:focus-visible{
            box-shadow:0 20px 36px rgba(212,175,115,.28);
        }
        .btn-ghost{
            background:rgba(255,255,255,.04);
            color:var(--text);
            border-color:var(--line);
        }
        .btn-ghost:hover,
        .btn-ghost:focus-visible{
            border-color:rgba(212,175,115,.42);
            background:rgba(212,175,115,.08);
        }
        .hero-badges{
            display:flex;
            flex-wrap:wrap;
            gap:10px;
            margin-top:22px;
        }
        .badge{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:8px 12px;
            border-radius:999px;
            background:rgba(255,255,255,.04);
            border:1px solid var(--line);
            color:var(--muted);
            font-size:.92rem;
        }
        .badge strong{
            color:var(--text);
        }
        .hero-panel{
            position:relative;
            overflow:hidden;
            border-radius:var(--radius-lg);
            background:
                linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)),
                linear-gradient(180deg, rgba(27,31,41,.95), rgba(18,20,26,.98));
            border:1px solid rgba(255,255,255,.08);
            box-shadow:var(--shadow);
            padding:22px;
        }
        .hero-panel::before,
        .hero-panel::after{
            content:"";
            position:absolute;
            border-radius:50%;
            pointer-events:none;
            filter:blur(4px);
        }
        .hero-panel::before{
            width:220px;
            height:220px;
            background:radial-gradient(circle, rgba(212,175,115,.18), transparent 64%);
            right:-70px;
            top:-70px;
        }
        .hero-panel::after{
            width:180px;
            height:180px;
            background:radial-gradient(circle, rgba(240,216,164,.1), transparent 66%);
            left:-60px;
            bottom:-60px;
        }
        .panel-head{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:16px;
            margin-bottom:20px;
        }
        .panel-title{
            font-size:1rem;
            font-weight:800;
            letter-spacing:.04em;
        }
        .meter-wrap{
            display:grid;
            grid-template-columns:160px minmax(0,1fr);
            gap:18px;
            align-items:center;
        }
        .meter{
            --progress:86;
            width:160px;
            aspect-ratio:1/1;
            border-radius:50%;
            background:
                radial-gradient(circle at center, rgba(13,14,18,1) 54%, transparent 55%),
                conic-gradient(var(--accent) calc(var(--progress) * 1%), rgba(255,255,255,.08) 0);
            border:1px solid rgba(255,255,255,.08);
            display:grid;
            place-items:center;
            box-shadow:inset 0 0 0 10px rgba(255,255,255,.02);
        }
        .meter-inner{
            text-align:center;
        }
        .meter-value{
            font-size:2rem;
            line-height:1;
            font-weight:900;
            color:var(--accent-2);
        }
        .meter-label{
            margin-top:8px;
            font-size:.9rem;
            color:var(--muted);
        }
        .meter-meta{
            display:grid;
            gap:12px;
        }
        .meta-card{
            padding:14px 16px;
            border-radius:16px;
            background:rgba(255,255,255,.035);
            border:1px solid var(--line);
        }
        .meta-card strong{
            display:block;
            font-size:1.1rem;
            margin-bottom:4px;
            color:var(--text);
        }
        .meta-card span{
            color:var(--muted);
            font-size:.92rem;
        }
        .deck{
            display:grid;
            gap:12px;
            margin-top:18px;
        }
        .deck-card{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:14px;
            padding:14px 16px;
            border-radius:16px;
            background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.022));
            border:1px solid var(--line);
        }
        .deck-card strong{
            display:block;
            font-size:1rem;
        }
        .deck-card small{
            color:var(--muted);
        }
        .deck-pill{
            padding:6px 10px;
            border-radius:999px;
            background:rgba(212,175,115,.12);
            color:var(--accent-2);
            border:1px solid rgba(212,175,115,.22);
            font-size:.84rem;
            white-space:nowrap;
        }
        .trust-strip{
            margin-top:26px;
            display:grid;
            grid-template-columns:repeat(3, minmax(0, 1fr));
            gap:14px;
        }
        .trust-card{
            padding:16px 18px;
            border-radius:18px;
            background:rgba(255,255,255,.03);
            border:1px solid var(--line);
        }
        .trust-card strong{
            display:block;
            color:var(--accent-2);
            font-size:1.08rem;
            margin-bottom:4px;
        }
        .trust-card span{
            color:var(--muted);
            font-size:.94rem;
        }
        .section{
            padding:26px 0;
        }
        .section-shell{
            border-radius:28px;
            border:1px solid rgba(255,255,255,.08);
            background:
                linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.02)),
                linear-gradient(180deg, rgba(18,21,28,.98), rgba(13,14,18,.98));
            box-shadow:var(--shadow-soft);
            padding:24px;
        }
        .section-head{
            display:flex;
            justify-content:space-between;
            gap:16px;
            align-items:flex-end;
            margin-bottom:18px;
        }
        .section-title{
            font-size:clamp(1.45rem, 2vw, 2.15rem);
            line-height:1.15;
            font-weight:850;
            letter-spacing:-.02em;
        }
        .section-desc{
            color:var(--muted);
            max-width:64ch;
            margin-top:10px;
        }
        .toolbar{
            display:grid;
            grid-template-columns:minmax(0,1.3fr) auto;
            gap:14px;
            align-items:center;
            margin-bottom:18px;
        }
        .searchbox{
            display:flex;
            align-items:center;
            gap:10px;
            padding:12px 14px;
            border-radius:18px;
            background:rgba(255,255,255,.04);
            border:1px solid var(--line);
        }
        .searchbox svg{
            width:18px;
            height:18px;
            flex:0 0 auto;
            fill:var(--muted-2);
        }
        .searchbox input{
            width:100%;
            border:none;
            background:transparent;
            color:var(--text);
            outline:none;
        }
        .searchbox input::placeholder{
            color:var(--muted-2);
        }
        .sorter{
            display:flex;
            align-items:center;
            gap:10px;
        }
        .sorter select{
            min-width:180px;
            padding:12px 14px;
            border-radius:16px;
            background:rgba(255,255,255,.04);
            color:var(--text);
            border:1px solid var(--line);
            outline:none;
        }
        .filters{
            display:flex;
            flex-wrap:wrap;
            gap:10px;
            margin-bottom:18px;
        }
        .filter-chip{
            padding:10px 14px;
            border-radius:999px;
            border:1px solid var(--line);
            background:rgba(255,255,255,.03);
            color:var(--muted);
            transition:transform var(--transition), background var(--transition), color var(--transition), border-color var(--transition);
        }
        .filter-chip:hover,
        .filter-chip:focus-visible{
            outline:none;
            transform:translateY(-1px);
            border-color:rgba(212,175,115,.32);
            color:var(--text);
        }
        .filter-chip.active{
            background:linear-gradient(145deg, rgba(212,175,115,.22), rgba(212,175,115,.08));
            border-color:rgba(212,175,115,.34);
            color:var(--accent-2);
        }
        .rank-layout{
            display:grid;
            grid-template-columns:minmax(0,1.22fr) minmax(280px,.78fr);
            gap:18px;
            align-items:start;
        }
        .rank-grid{
            display:grid;
            grid-template-columns:repeat(2, minmax(0, 1fr));
            gap:16px;
        }
        .rank-card{
            position:relative;
            overflow:hidden;
            border-radius:22px;
            background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
            border:1px solid var(--line);
            padding:18px;
            transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
        }
        .rank-card:hover{
            transform:translateY(-2px);
            border-color:rgba(212,175,115,.28);
            box-shadow:0 16px 32px rgba(0,0,0,.24);
        }
        .rank-card.featured{
            grid-column:1 / -1;
            background:
                linear-gradient(180deg, rgba(212,175,115,.09), rgba(255,255,255,.03)),
                linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
        }
        .rank-top{
            display:flex;
            justify-content:space-between;
            gap:12px;
            align-items:flex-start;
        }
        .rank-no{
            width:42px;
            height:42px;
            border-radius:14px;
            display:grid;
            place-items:center;
            background:rgba(212,175,115,.12);
            border:1px solid rgba(212,175,115,.25);
            color:var(--accent-2);
            font-weight:900;
            flex:0 0 auto;
        }
        .rank-title{
            font-size:1.12rem;
            font-weight:800;
            margin-bottom:8px;
        }
        .rank-summary{
            color:var(--muted);
            margin-bottom:14px;
        }
        .tag-row{
            display:flex;
            flex-wrap:wrap;
            gap:8px;
            margin-bottom:14px;
        }
        .tag{
            display:inline-flex;
            align-items:center;
            padding:6px 10px;
            border-radius:999px;
            font-size:.84rem;
            background:rgba(255,255,255,.04);
            border:1px solid var(--line);
            color:var(--muted);
        }
        .tag.accent{
            color:var(--accent-2);
            background:rgba(212,175,115,.11);
            border-color:rgba(212,175,115,.22);
        }
        .rank-stats{
            display:flex;
            flex-wrap:wrap;
            gap:12px;
            margin-bottom:16px;
        }
        .rank-stat{
            padding:10px 12px;
            border-radius:14px;
            background:rgba(255,255,255,.035);
            border:1px solid var(--line);
            color:var(--muted);
            font-size:.92rem;
        }
        .rank-stat strong{
            display:block;
            color:var(--text);
            font-size:1rem;
            margin-bottom:2px;
        }
        .rank-action{
            display:inline-flex;
            align-items:center;
            gap:8px;
            color:var(--accent-2);
            font-weight:700;
        }
        .rank-action::after{
            content:"→";
            transition:transform var(--transition);
        }
        .rank-card:hover .rank-action::after{
            transform:translateX(2px);
        }
        .insight-panel{
            position:sticky;
            top:94px;
            padding:18px;
            border-radius:22px;
            background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
            border:1px solid var(--line);
        }
        .insight-panel h3{
            font-size:1.2rem;
            margin-bottom:12px;
            font-weight:800;
        }
        .insight-list{
            list-style:none;
            margin:0;
            padding:0;
            display:grid;
            gap:12px;
        }
        .insight-list li{
            display:flex;
            gap:12px;
            align-items:flex-start;
            padding:12px 0;
            border-bottom:1px solid rgba(255,255,255,.06);
        }
        .insight-list li:last-child{
            border-bottom:none;
        }
        .insight-dot{
            width:10px;
            height:10px;
            border-radius:50%;
            margin-top:8px;
            background:var(--accent);
            box-shadow:0 0 0 6px rgba(212,175,115,.12);
            flex:0 0 auto;
        }
        .insight-list strong{
            display:block;
            margin-bottom:4px;
        }
        .insight-list span{
            color:var(--muted);
            font-size:.94rem;
        }
        .scenario-grid{
            display:grid;
            grid-template-columns:repeat(3, minmax(0, 1fr));
            gap:16px;
        }
        .scenario-card{
            padding:20px;
            border-radius:22px;
            background:
                linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.02));
            border:1px solid var(--line);
        }
        .scenario-step{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            width:44px;
            height:44px;
            border-radius:14px;
            background:rgba(212,175,115,.12);
            border:1px solid rgba(212,175,115,.25);
            color:var(--accent-2);
            font-weight:900;
            margin-bottom:14px;
        }
        .scenario-card h3{
            font-size:1.05rem;
            margin-bottom:8px;
            font-weight:800;
        }
        .scenario-card p{
            color:var(--muted);
        }
        .evidence-grid{
            display:grid;
            grid-template-columns:repeat(3, minmax(0, 1fr));
            gap:16px;
        }
        .evidence-card{
            padding:20px;
            border-radius:22px;
            background:
                linear-gradient(180deg, rgba(212,175,115,.08), rgba(255,255,255,.02));
            border:1px solid rgba(212,175,115,.18);
        }
        .evidence-card strong{
            display:block;
            margin-bottom:8px;
            font-size:1.08rem;
        }
        .evidence-metric{
            display:inline-flex;
            align-items:center;
            padding:7px 11px;
            border-radius:999px;
            background:rgba(255,255,255,.04);
            border:1px solid var(--line);
            color:var(--accent-2);
            margin-bottom:12px;
            font-weight:700;
        }
        .evidence-card p{
            color:var(--muted);
        }
        .pricing-grid{
            display:grid;
            grid-template-columns:repeat(3, minmax(0, 1fr));
            gap:16px;
            align-items:stretch;
        }
        .price-card{
            position:relative;
            padding:22px;
            border-radius:24px;
            background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.02));
            border:1px solid var(--line);
            box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
        }
        .price-card.featured{
            background:
                linear-gradient(180deg, rgba(212,175,115,.12), rgba(255,255,255,.03)),
                linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
            border-color:rgba(212,175,115,.3);
            transform:translateY(-4px);
        }
        .price-badge{
            display:inline-flex;
            align-items:center;
            padding:7px 11px;
            border-radius:999px;
            background:rgba(255,255,255,.04);
            border:1px solid var(--line);
            color:var(--muted);
            font-size:.88rem;
            margin-bottom:14px;
        }
        .price-card h3{
            font-size:1.14rem;
            margin-bottom:8px;
            font-weight:850;
        }
        .price{
            font-size:2rem;
            line-height:1;
            font-weight:900;
            color:var(--accent-2);
            margin-bottom:14px;
        }
        .check-list{
            list-style:none;
            padding:0;
            margin:0 0 18px;
            display:grid;
            gap:10px;
        }
        .check-list li{
            position:relative;
            padding-left:26px;
            color:var(--muted);
        }
        .check-list li::before{
            content:"";
            position:absolute;
            left:0;
            top:10px;
            width:11px;
            height:11px;
            border-radius:50%;
            background:var(--success);
            box-shadow:0 0 0 5px rgba(113,208,164,.12);
        }
        .price-card .btn{
            width:100%;
        }
        .faq-grid{
            display:grid;
            gap:12px;
        }
        .faq-item{
            border-radius:18px;
            background:rgba(255,255,255,.03);
            border:1px solid var(--line);
            overflow:hidden;
        }
        .faq-question{
            width:100%;
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:18px;
            padding:18px 18px;
            background:transparent;
            border:none;
            color:var(--text);
            text-align:left;
            font-weight:750;
        }
        .faq-question span{
            flex:0 0 auto;
            width:30px;
            height:30px;
            border-radius:50%;
            display:grid;
            place-items:center;
            background:rgba(212,175,115,.12);
            border:1px solid rgba(212,175,115,.22);
            color:var(--accent-2);
            transition:transform var(--transition), background var(--transition);
        }
        .faq-item.is-open .faq-question span{
            transform:rotate(45deg);
            background:rgba(212,175,115,.18);
        }
        .faq-answer{
            padding:0 18px 18px;
            color:var(--muted);
        }
        .cta-shell{
            padding:26px;
            border-radius:28px;
            border:1px solid rgba(212,175,115,.22);
            background:
                radial-gradient(circle at top right, rgba(212,175,115,.14), transparent 26%),
                linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.025));
            box-shadow:var(--shadow-soft);
        }
        .cta-inner{
            display:flex;
            justify-content:space-between;
            gap:20px;
            align-items:center;
            flex-wrap:wrap;
        }
        .cta-inner h2{
            font-size:clamp(1.5rem, 2.4vw, 2.3rem);
            line-height:1.12;
            font-weight:900;
            margin-bottom:10px;
        }
        .cta-inner p{
            color:var(--muted);
            max-width:62ch;
        }
        .cta-actions{
            display:flex;
            flex-wrap:wrap;
            gap:12px;
        }
        .site-footer{
            margin-top:34px;
            padding:30px 0 110px;
            border-top:1px solid var(--line);
            background:linear-gradient(180deg, rgba(10,11,15,.08), rgba(10,11,15,.34));
        }
        .footer-grid{
            display:grid;
            grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
            gap:20px;
            align-items:start;
        }
        .footer-meta{
            display:grid;
            gap:14px;
            justify-items:end;
        }
        .footer-links{
            display:flex;
            flex-wrap:wrap;
            gap:10px 14px;
            justify-content:flex-end;
        }
        .footer-links a{
            color:var(--muted);
            transition:color var(--transition);
        }
        .footer-links a:hover,
        .footer-links a:focus-visible{
            color:var(--accent-2);
            outline:none;
        }
        .site-footer .brand{
            margin-bottom:10px;
        }
        .site-footer a[href*="zhenhonglog.com"]{
            color:var(--accent-2);
        }
        .site-footer .brand + div,
        .site-footer .brand + div + div{
            color:var(--muted);
        }
        .mobile-tabbar{
            display:none;
            position:fixed;
            left:0;
            right:0;
            bottom:0;
            z-index:60;
            padding:10px 10px calc(10px + env(safe-area-inset-bottom));
            background:rgba(11,12,17,.92);
            backdrop-filter:blur(16px);
            border-top:1px solid var(--line);
            box-shadow:0 -18px 30px rgba(0,0,0,.24);
        }
        .mobile-tabbar nav{
            display:grid;
            grid-template-columns:repeat(3, minmax(0, 1fr));
            gap:8px;
        }
        .tab-link{
            display:flex;
            flex-direction:column;
            align-items:center;
            justify-content:center;
            gap:6px;
            padding:10px 8px;
            border-radius:16px;
            color:var(--muted);
            border:1px solid transparent;
            transition:background var(--transition), color var(--transition), border-color var(--transition);
            min-height:60px;
        }
        .tab-link svg{
            width:18px;
            height:18px;
            fill:currentColor;
        }
        .tab-link.active{
            background:rgba(212,175,115,.12);
            color:var(--accent-2);
            border-color:rgba(212,175,115,.22);
        }
        .tab-link span{
            font-size:.76rem;
            line-height:1;
            text-align:center;
        }
        .focus-ring:focus-visible{
            outline:2px solid rgba(240,216,164,.75);
            outline-offset:2px;
        }
        @media (max-width: 1100px){
            .hero-grid,
            .rank-layout,
            .footer-grid{
                grid-template-columns:1fr;
            }
            .insight-panel{
                position:relative;
                top:auto;
            }
            .pricing-grid,
            .evidence-grid,
            .scenario-grid{
                grid-template-columns:1fr;
            }
        }
        @media (max-width: 900px){
            .nav{
                display:none;
            }
            .header-cta{
                margin-left:auto;
            }
            .toolbar{
                grid-template-columns:1fr;
            }
            .rank-grid{
                grid-template-columns:1fr;
            }
            .trust-strip{
                grid-template-columns:1fr;
            }
            .footer-meta{
                justify-items:start;
            }
            .footer-links{
                justify-content:flex-start;
            }
        }
        @media (max-width: 768px){
            main{
                padding-top:18px;
            }
            .hero h1{
                max-width:12ch;
            }
            .meter-wrap{
                grid-template-columns:1fr;
            }
            .meter{
                margin:0 auto;
            }
            .header-inner{
                min-height:70px;
            }
            .header-cta{
                padding-inline:14px;
            }
            .section-shell{
                padding:20px 16px;
                border-radius:22px;
            }
            .cta-shell{
                padding:20px 16px;
            }
            .mobile-tabbar{
                display:block;
            }
            body{
                padding-bottom:96px;
            }
        }
        @media (max-width: 520px){
            .container{
                width:min(var(--container), calc(100% - 20px));
            }
            .hero{
                padding-top:12px;
            }
            .hero-panel,
            .rank-card,
            .scenario-card,
            .evidence-card,
            .price-card,
            .faq-item{
                border-radius:18px;
            }
            .panel-head,
            .cta-inner{
                align-items:flex-start;
            }
            .hero-actions,
            .cta-actions{
                width:100%;
            }
            .btn{
                width:100%;
            }
            .sorter select{
                min-width:0;
                width:100%;
            }
            .site-footer{
                padding-bottom:120px;
            }
        }
        @media (prefers-reduced-motion: reduce){
            html{scroll-behavior:auto;}
            *, *::before, *::after{
                animation:none !important;
                transition:none !important;
            }
        }
