/* roulang page: index */
:root {
      --color-primary: #3F7D6B;
      --color-primary-dark: #326A5A;
      --color-primary-soft: rgba(63, 125, 107, 0.12);
      --color-secondary: #7B4D68;
      --color-secondary-soft: rgba(123, 77, 104, 0.12);
      --color-bg: #F6EFE6;
      --color-bg-2: #FFF8EE;
      --color-card: #FFFDF8;
      --color-text: #2C2A28;
      --color-muted: #746E68;
      --color-border: #E7DDD2;
      --color-warning: #B77942;
      --color-warning-soft: rgba(183, 121, 66, 0.14);
      --radius-sm: 12px;
      --radius-md: 16px;
      --radius-card: 20px;
      --radius-lg: 28px;
      --radius-pill: 999px;
      --shadow-card: 0 14px 40px rgba(63, 45, 32, 0.08);
      --shadow-hover: 0 20px 60px rgba(63, 45, 32, 0.14);
      --shadow-nav: 0 16px 44px rgba(63, 45, 32, 0.10);
      --font-cn: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", "Source Han Sans SC", Arial, sans-serif;
      --section-space: 104px;
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      font-family: var(--font-cn);
      color: var(--color-text);
      background:
        radial-gradient(circle at 10% 8%, rgba(63, 125, 107, 0.10), transparent 28%),
        radial-gradient(circle at 86% 14%, rgba(123, 77, 104, 0.09), transparent 26%),
        linear-gradient(180deg, var(--color-bg), #FFFDF8 36%, #F7F0E7 100%);
      font-size: 16px;
      line-height: 1.8;
      overflow-x: hidden;
    }

    a {
      color: inherit;
      text-decoration: none;
      transition: color .22s ease, background .22s ease, transform .22s ease, box-shadow .22s ease;
    }

    a:hover {
      color: var(--color-primary);
    }

    img {
      max-width: 100%;
      height: auto;
      display: block;
    }

    button,
    input,
    textarea,
    select {
      font-family: inherit;
    }

    button:focus-visible,
    a:focus-visible,
    input:focus-visible,
    textarea:focus-visible,
    select:focus-visible {
      outline: 3px solid rgba(63, 125, 107, 0.28);
      outline-offset: 3px;
      box-shadow: 0 0 0 4px rgba(63, 125, 107, 0.12);
    }

    .container,
    .container-lg {
      max-width: 1200px;
    }

    .site-header {
      position: fixed;
      top: 18px;
      left: 0;
      right: 0;
      z-index: 1030;
      padding: 0 14px;
      pointer-events: none;
    }

    .site-navbar {
      pointer-events: auto;
      max-width: 1200px;
      margin: 0 auto;
      border-radius: var(--radius-pill);
      background: rgba(255, 253, 248, 0.72);
      border: 1px solid rgba(255, 255, 255, 0.62);
      box-shadow: var(--shadow-nav);
      backdrop-filter: blur(18px) saturate(132%);
      -webkit-backdrop-filter: blur(18px) saturate(132%);
      padding: 10px 14px;
      transition: background .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease;
    }

    .site-header.scrolled .site-navbar {
      background: rgba(255, 253, 248, 0.96);
      border-color: rgba(231, 221, 210, 0.95);
      box-shadow: 0 18px 50px rgba(63, 45, 32, 0.13);
    }

    .navbar-brand {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-right: 26px;
      color: var(--color-text);
      font-weight: 750;
      letter-spacing: .02em;
      white-space: nowrap;
    }

    .brand-mark {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: #FFFDF8;
      font-size: 18px;
      font-weight: 800;
      background:
        linear-gradient(135deg, rgba(63, 125, 107, 0.96), rgba(123, 77, 104, 0.92)),
        radial-gradient(circle at 30% 20%, rgba(255,255,255,.38), transparent 34%);
      box-shadow: 0 10px 26px rgba(63, 125, 107, 0.22);
      position: relative;
      overflow: hidden;
    }

    .brand-mark::after {
      content: "";
      position: absolute;
      width: 30px;
      height: 12px;
      border: 1px solid rgba(255, 253, 248, 0.48);
      border-left: 0;
      border-right: 0;
      border-radius: 50%;
      transform: rotate(-28deg);
    }

    .brand-text {
      display: flex;
      flex-direction: column;
      line-height: 1.18;
    }

    .brand-title {
      font-size: 17px;
    }

    .brand-sub {
      color: var(--color-muted);
      font-size: 11px;
      font-weight: 600;
    }

    .navbar-toggler {
      border: 0;
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: rgba(63, 125, 107, 0.10);
      padding: 0;
      color: var(--color-primary);
    }

    .navbar-toggler:focus {
      box-shadow: 0 0 0 4px rgba(63, 125, 107, 0.15);
    }

    .navbar-toggler-icon {
      width: 1.25em;
      height: 1.25em;
      background-image: none;
      position: relative;
    }

    .navbar-toggler-icon::before,
    .navbar-toggler-icon::after,
    .navbar-toggler-icon {
      border-top: 2px solid var(--color-primary);
    }

    .navbar-toggler-icon::before,
    .navbar-toggler-icon::after {
      content: "";
      position: absolute;
      left: 0;
      width: 100%;
    }

    .navbar-toggler-icon::before {
      top: -7px;
    }

    .navbar-toggler-icon::after {
      top: 7px;
    }

    .navbar-nav {
      gap: 6px;
      align-items: center;
    }

    .nav-link {
      color: var(--color-text);
      font-size: 15px;
      font-weight: 650;
      padding: 10px 14px !important;
      border-radius: var(--radius-pill);
    }

    .nav-link:hover {
      background: rgba(63, 125, 107, 0.10);
      color: var(--color-primary-dark);
    }

    .nav-link.active {
      color: #FFFDF8 !important;
      background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
      box-shadow: 0 10px 22px rgba(63, 125, 107, 0.18);
    }

    .nav-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-left: auto;
    }

    .search-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      min-height: 42px;
      padding: 0 15px;
      border-radius: var(--radius-pill);
      color: var(--color-muted);
      background: rgba(255, 253, 248, 0.76);
      border: 1px solid rgba(231, 221, 210, 0.88);
      font-size: 14px;
      font-weight: 600;
    }

    .search-pill:hover {
      color: var(--color-primary);
      border-color: rgba(63, 125, 107, 0.32);
      background: rgba(63, 125, 107, 0.08);
    }

    .btn-brand,
    .btn-ghost,
    .btn-warn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      border-radius: var(--radius-pill);
      min-height: 46px;
      padding: 12px 24px;
      font-weight: 700;
      border: 1px solid transparent;
      transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
      line-height: 1.2;
    }

    .btn-brand {
      color: #FFFDF8;
      background: var(--color-primary);
      box-shadow: 0 12px 30px rgba(63, 125, 107, 0.22);
    }

    .btn-brand:hover,
    .btn-brand:active {
      color: #FFFDF8;
      background: var(--color-primary-dark);
      transform: translateY(-2px);
      box-shadow: 0 16px 38px rgba(63, 125, 107, 0.30);
    }

    .btn-ghost {
      color: var(--color-primary);
      background: rgba(255, 253, 248, 0.76);
      border-color: rgba(63, 125, 107, 0.35);
    }

    .btn-ghost:hover {
      color: var(--color-primary-dark);
      background: rgba(63, 125, 107, 0.10);
      border-color: rgba(63, 125, 107, 0.52);
      transform: translateY(-2px);
    }

    .btn-warn {
      color: #6C4523;
      background: rgba(183, 121, 66, 0.14);
      border-color: rgba(183, 121, 66, 0.20);
      min-height: 38px;
      padding: 9px 15px;
      font-size: 13px;
    }

    .hero {
      position: relative;
      min-height: 850px;
      padding: 150px 0 82px;
      display: flex;
      align-items: center;
      overflow: hidden;
      background:
        radial-gradient(circle at 82% 28%, rgba(123, 77, 104, 0.16), transparent 26%),
        radial-gradient(circle at 18% 24%, rgba(63, 125, 107, 0.16), transparent 25%),
        linear-gradient(135deg, #F8F0E7 0%, #FFFDF8 48%, #F3E7DA 100%);
    }

    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: .07;
      background-image:
        linear-gradient(120deg, transparent 0 47%, rgba(63,125,107,.55) 48% 49%, transparent 50% 100%),
        radial-gradient(circle at center, transparent 0 38%, rgba(123,77,104,.42) 39% 40%, transparent 41%);
      background-size: 86px 86px, 180px 180px;
      pointer-events: none;
    }

    .hero::after {
      content: "";
      position: absolute;
      right: -120px;
      bottom: -180px;
      width: 520px;
      height: 520px;
      border-radius: 50%;
      border: 1px solid rgba(63, 125, 107, 0.16);
      box-shadow: inset 0 0 0 26px rgba(255,253,248,.48);
      opacity: .9;
    }

    .hero-content {
      position: relative;
      z-index: 1;
    }

    .eyebrow {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
      margin-bottom: 22px;
    }

    .badge-soft {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      border-radius: var(--radius-pill);
      padding: 8px 13px;
      font-size: 13px;
      font-weight: 700;
      color: var(--color-primary-dark);
      background: rgba(63, 125, 107, 0.12);
      border: 1px solid rgba(63, 125, 107, 0.16);
      line-height: 1.2;
    }

    .badge-soft.secondary {
      color: var(--color-secondary);
      background: rgba(123, 77, 104, 0.12);
      border-color: rgba(123, 77, 104, 0.16);
    }

    .badge-soft.warning {
      color: #7B4D23;
      background: var(--color-warning-soft);
      border-color: rgba(183, 121, 66, 0.22);
    }

    .hero h1 {
      max-width: 680px;
      margin: 0;
      color: var(--color-text);
      font-size: clamp(34px, 5.2vw, 56px);
      line-height: 1.16;
      letter-spacing: -.035em;
      font-weight: 800;
    }

    .hero .lead {
      max-width: 650px;
      margin-top: 24px;
      color: var(--color-muted);
      font-size: 18px;
      line-height: 1.9;
    }

    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 34px;
    }

    .hero-note {
      margin-top: 20px;
      color: var(--color-muted);
      font-size: 14px;
    }

    .dashboard-wrap {
      position: relative;
      min-height: 560px;
    }

    .dashboard-card {
      position: relative;
      margin-left: auto;
      max-width: 500px;
      border-radius: var(--radius-lg);
      background: rgba(255, 253, 248, 0.82);
      border: 1px solid rgba(255, 255, 255, 0.68);
      box-shadow: 0 28px 80px rgba(63, 45, 32, 0.14);
      backdrop-filter: blur(12px);
      padding: 28px;
      overflow: hidden;
    }

    .dashboard-card::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(135deg, rgba(63,125,107,.10), transparent 36%),
        radial-gradient(circle at 88% 10%, rgba(123,77,104,.14), transparent 24%);
      pointer-events: none;
    }

    .dash-top,
    .dash-grid,
    .dash-list {
      position: relative;
      z-index: 1;
    }

    .dash-top {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      align-items: flex-start;
      margin-bottom: 24px;
    }

    .dash-title {
      font-size: 22px;
      font-weight: 760;
      line-height: 1.35;
      margin: 0;
    }

    .dash-sub {
      color: var(--color-muted);
      font-size: 14px;
      margin-top: 6px;
    }

    .seal {
      width: 72px;
      height: 72px;
      border-radius: 24px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #FFFDF8;
      background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
      font-size: 26px;
      font-weight: 800;
      box-shadow: 0 16px 34px rgba(63, 125, 107, 0.22);
    }

    .dash-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      margin-bottom: 18px;
    }

    .metric-card {
      border-radius: 18px;
      padding: 18px;
      background: rgba(255, 253, 248, 0.84);
      border: 1px solid rgba(231, 221, 210, 0.88);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .metric-card:hover {
      transform: translateY(-4px);
      border-color: rgba(63,125,107,.32);
      box-shadow: var(--shadow-card);
    }

    .metric-value {
      font-size: 28px;
      line-height: 1.1;
      font-weight: 800;
      color: var(--color-primary);
    }

    .metric-label {
      color: var(--color-muted);
      font-size: 13px;
      margin-top: 6px;
    }

    .dash-list {
      display: grid;
      gap: 10px;
    }

    .dash-item {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 14px;
      border-radius: 16px;
      background: rgba(246, 239, 230, 0.72);
      border: 1px solid rgba(231, 221, 210, 0.72);
      color: var(--color-muted);
      font-size: 14px;
      font-weight: 620;
    }

    .dot-icon {
      flex: 0 0 auto;
      width: 28px;
      height: 28px;
      border-radius: 50%;
      background: rgba(63, 125, 107, 0.12);
      position: relative;
    }

    .dot-icon::after {
      content: "";
      position: absolute;
      inset: 9px;
      border-radius: 50%;
      background: var(--color-primary);
    }

    .floating-card {
      position: absolute;
      left: 0;
      bottom: 54px;
      width: 230px;
      padding: 20px;
      border-radius: 22px;
      background: rgba(255, 253, 248, 0.92);
      border: 1px solid rgba(231, 221, 210, 0.86);
      box-shadow: 0 18px 48px rgba(63, 45, 32, 0.12);
      z-index: 2;
    }

    .floating-card strong {
      display: block;
      font-size: 18px;
      line-height: 1.4;
    }

    .floating-card span {
      display: block;
      color: var(--color-muted);
      font-size: 13px;
      margin-top: 8px;
    }

    .trust-strip {
      position: relative;
      z-index: 2;
      margin-top: -58px;
    }

    .trust-inner {
      border-radius: var(--radius-lg);
      background: rgba(255, 253, 248, 0.93);
      border: 1px solid rgba(231, 221, 210, 0.9);
      box-shadow: var(--shadow-card);
      padding: 22px;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 14px;
    }

    .trust-item {
      padding: 16px 18px;
      border-radius: 18px;
      background: linear-gradient(180deg, rgba(246,239,230,.70), rgba(255,253,248,.80));
      border: 1px solid rgba(231, 221, 210, 0.76);
    }

    .trust-item strong {
      display: block;
      color: var(--color-text);
      font-size: 16px;
      font-weight: 760;
    }

    .trust-item span {
      display: block;
      color: var(--color-muted);
      font-size: 13px;
      margin-top: 4px;
      line-height: 1.55;
    }

    .section {
      padding: var(--section-space) 0;
      position: relative;
    }

    .section.compact {
      padding-top: 78px;
    }

    .section-head {
      max-width: 760px;
      margin-bottom: 42px;
    }

    .section-head.center {
      margin-left: auto;
      margin-right: auto;
      text-align: center;
    }

    .section-kicker {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 12px;
      color: var(--color-primary);
      font-size: 14px;
      font-weight: 760;
      letter-spacing: .05em;
    }

    .section-kicker::before {
      content: "";
      width: 26px;
      height: 2px;
      border-radius: 99px;
      background: var(--color-primary);
    }

    .section-head.center .section-kicker::after {
      content: "";
      width: 26px;
      height: 2px;
      border-radius: 99px;
      background: var(--color-primary);
    }

    .section h2 {
      margin: 0;
      font-size: clamp(28px, 3.6vw, 40px);
      line-height: 1.25;
      letter-spacing: -.025em;
      font-weight: 800;
    }

    .section-desc {
      margin-top: 16px;
      color: var(--color-muted);
      font-size: 17px;
      line-height: 1.85;
    }

    .category-entry {
      display: grid;
      grid-template-columns: 1.08fr .92fr;
      gap: 28px;
      align-items: stretch;
    }

    .feature-panel,
    .category-card,
    .scenario-card,
    .story-card,
    .price-card,
    .faq-shell,
    .cta-band {
      background: var(--color-card);
      border: 1px solid rgba(231, 221, 210, 0.92);
      border-radius: var(--radius-card);
      box-shadow: var(--shadow-card);
    }

    .category-card {
      padding: 34px;
      min-height: 320px;
      overflow: hidden;
      position: relative;
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .category-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-hover);
      border-color: rgba(63, 125, 107, 0.32);
    }

    .category-card::before {
      content: "";
      position: absolute;
      inset: 0 0 auto;
      height: 5px;
      background: linear-gradient(90deg, var(--color-primary), var(--color-secondary), #D1AA76);
    }

    .category-card.primary {
      min-height: 390px;
      background:
        radial-gradient(circle at 90% 12%, rgba(63,125,107,.12), transparent 28%),
        var(--color-card);
    }

    .category-card.secondary {
      background:
        radial-gradient(circle at 84% 18%, rgba(123,77,104,.12), transparent 28%),
        var(--color-card);
    }

    .category-card h3 {
      font-size: 25px;
      line-height: 1.35;
      font-weight: 780;
      margin: 18px 0 12px;
    }

    .category-card p {
      color: var(--color-muted);
      margin: 0 0 24px;
      line-height: 1.82;
    }

    .card-link {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: var(--color-primary);
      font-weight: 760;
    }

    .card-link .arrow {
      transition: transform .22s ease;
    }

    .card-link:hover .arrow {
      transform: translateX(4px);
    }

    .mini-list {
      display: grid;
      gap: 12px;
      margin-top: 24px;
    }

    .mini-line {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      padding: 14px;
      border-radius: 16px;
      background: rgba(246, 239, 230, 0.72);
      border: 1px solid rgba(231, 221, 210, 0.72);
      color: var(--color-muted);
    }

    .mini-line b {
      color: var(--color-text);
      font-weight: 760;
    }

    .function-layout {
      display: grid;
      grid-template-columns: 310px 1fr;
      gap: 26px;
      align-items: stretch;
    }

    .feature-tabs {
      display: grid;
      gap: 12px;
    }

    .feature-tab {
      width: 100%;
      text-align: left;
      border: 1px solid rgba(231, 221, 210, 0.88);
      border-radius: 18px;
      background: rgba(255, 253, 248, 0.74);
      padding: 18px;
      color: var(--color-text);
      font-weight: 720;
      transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
    }

    .feature-tab span {
      display: block;
      margin-top: 4px;
      color: var(--color-muted);
      font-size: 13px;
      font-weight: 560;
    }

    .feature-tab.active,
    .feature-tab:hover {
      background: #FFFDF8;
      border-color: rgba(63, 125, 107, 0.36);
      transform: translateX(4px);
      box-shadow: var(--shadow-card);
    }

    .feature-panel {
      padding: 34px;
      min-height: 420px;
      overflow: hidden;
      position: relative;
    }

    .feature-panel::after {
      content: "";
      position: absolute;
      width: 320px;
      height: 320px;
      right: -120px;
      top: -140px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(63,125,107,.14), transparent 65%);
    }

    .feature-content {
      display: none;
      position: relative;
      z-index: 1;
    }

    .feature-content.active {
      display: block;
    }

    .feature-icon {
      width: 58px;
      height: 58px;
      border-radius: 20px;
      background: linear-gradient(135deg, rgba(63,125,107,.16), rgba(123,77,104,.14));
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--color-primary);
      font-size: 26px;
      font-weight: 800;
      margin-bottom: 20px;
    }

    .feature-content h3 {
      font-size: 28px;
      line-height: 1.32;
      font-weight: 800;
      margin-bottom: 14px;
    }

    .feature-content p {
      color: var(--color-muted);
      font-size: 17px;
      max-width: 680px;
    }

    .check-list {
      list-style: none;
      padding: 0;
      margin: 24px 0 0;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 12px;
    }

    .check-list li {
      position: relative;
      padding: 13px 14px 13px 38px;
      border-radius: 15px;
      background: rgba(246, 239, 230, 0.72);
      border: 1px solid rgba(231,221,210,.72);
      color: var(--color-muted);
      font-size: 15px;
    }

    .check-list li::before {
      content: "✓";
      position: absolute;
      left: 14px;
      top: 12px;
      color: var(--color-primary);
      font-weight: 900;
    }

    .scenario-layout {
      display: grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 28px;
      align-items: center;
    }

    .scenario-main {
      border-radius: var(--radius-lg);
      padding: 42px;
      min-height: 470px;
      color: #FFFDF8;
      background:
        linear-gradient(135deg, rgba(38,61,54,.96), rgba(63,125,107,.88)),
        radial-gradient(circle at 80% 10%, rgba(246,239,230,.22), transparent 30%);
      position: relative;
      overflow: hidden;
      box-shadow: 0 20px 58px rgba(38,61,54,.18);
    }

    .scenario-main::after {
      content: "";
      position: absolute;
      right: -80px;
      bottom: -100px;
      width: 300px;
      height: 300px;
      border-radius: 50%;
      border: 1px solid rgba(255,253,248,.18);
      box-shadow: inset 0 0 0 24px rgba(255,253,248,.05);
    }

    .scenario-main h3 {
      position: relative;
      z-index: 1;
      font-size: 34px;
      line-height: 1.28;
      font-weight: 800;
      margin-bottom: 18px;
    }

    .scenario-main p {
      position: relative;
      z-index: 1;
      color: rgba(255,253,248,.78);
      font-size: 17px;
      max-width: 560px;
    }

    .scenario-tags {
      position: relative;
      z-index: 1;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 28px;
    }

    .scenario-tags .badge-soft {
      background: rgba(255,253,248,.12);
      border-color: rgba(255,253,248,.18);
      color: #FFFDF8;
    }

    .scenario-stack {
      display: grid;
      gap: 18px;
    }

    .scenario-card {
      padding: 24px;
      display: grid;
      grid-template-columns: 54px 1fr;
      gap: 16px;
      align-items: flex-start;
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .scenario-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-hover);
      border-color: rgba(63, 125, 107, 0.32);
    }

    .scenario-num {
      width: 54px;
      height: 54px;
      border-radius: 18px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 850;
      color: var(--color-primary);
      background: rgba(63, 125, 107, 0.11);
    }

    .scenario-card h4 {
      font-size: 19px;
      line-height: 1.35;
      margin-bottom: 6px;
      font-weight: 760;
    }

    .scenario-card p {
      color: var(--color-muted);
      margin: 0;
      font-size: 15px;
      line-height: 1.72;
    }

    .timeline {
      position: relative;
      display: grid;
      gap: 20px;
      padding-left: 28px;
    }

    .timeline::before {
      content: "";
      position: absolute;
      left: 8px;
      top: 18px;
      bottom: 18px;
      width: 2px;
      border-radius: 99px;
      background: linear-gradient(180deg, var(--color-primary), rgba(123,77,104,.45), rgba(231,221,210,.6));
    }

    .story-card {
      position: relative;
      padding: 26px 28px;
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .story-card:hover {
      transform: translateY(-4px);
      border-color: rgba(63,125,107,.32);
      box-shadow: var(--shadow-hover);
    }

    .story-card::before {
      content: "";
      position: absolute;
      left: -27px;
      top: 28px;
      width: 16px;
      height: 16px;
      border-radius: 50%;
      background: var(--color-primary);
      box-shadow: 0 0 0 6px rgba(63,125,107,.13);
    }

    .story-card h3 {
      font-size: 22px;
      line-height: 1.35;
      font-weight: 780;
      margin-bottom: 10px;
    }

    .story-card p {
      color: var(--color-muted);
      margin-bottom: 14px;
    }

    .quote {
      margin: 0;
      padding: 14px 16px;
      border-left: 3px solid var(--color-primary);
      background: rgba(63,125,107,.08);
      color: var(--color-muted);
      border-radius: 0 14px 14px 0;
      font-size: 15px;
    }

    .pricing-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      align-items: stretch;
    }

    .price-card {
      padding: 30px;
      position: relative;
      overflow: hidden;
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .price-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-hover);
      border-color: rgba(63, 125, 107, 0.32);
    }

    .price-card.recommended {
      border-color: rgba(63,125,107,.42);
      box-shadow: 0 22px 62px rgba(63, 125, 107, 0.14);
      transform: translateY(-8px);
    }

    .price-card.recommended::before {
      content: "推荐";
      position: absolute;
      top: 18px;
      right: 18px;
      border-radius: var(--radius-pill);
      padding: 7px 12px;
      color: #FFFDF8;
      font-size: 13px;
      font-weight: 760;
      background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
    }

    .plan-name {
      font-size: 24px;
      font-weight: 800;
      margin-bottom: 8px;
    }

    .plan-for {
      color: var(--color-muted);
      font-size: 15px;
      min-height: 54px;
      margin-bottom: 22px;
    }

    .plan-price {
      font-size: 28px;
      font-weight: 850;
      color: var(--color-primary);
      margin-bottom: 20px;
    }

    .plan-list {
      list-style: none;
      padding: 0;
      margin: 0 0 26px;
      display: grid;
      gap: 12px;
    }

    .plan-list li {
      position: relative;
      padding-left: 25px;
      color: var(--color-muted);
      font-size: 15px;
    }

    .plan-list li::before {
      content: "";
      position: absolute;
      left: 0;
      top: 11px;
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: var(--color-primary);
    }

    .pricing-note {
      margin-top: 22px;
      padding: 18px 20px;
      border-radius: 18px;
      background: rgba(183, 121, 66, 0.10);
      border: 1px solid rgba(183, 121, 66, 0.20);
      color: #75502E;
      font-size: 14px;
    }

    .faq-shell {
      padding: 12px;
    }

    .accordion {
      --bs-accordion-bg: transparent;
      --bs-accordion-border-color: transparent;
      --bs-accordion-btn-focus-box-shadow: none;
      display: grid;
      gap: 12px;
    }

    .accordion-item {
      border: 1px solid rgba(231, 221, 210, 0.92) !important;
      border-radius: 18px !important;
      overflow: hidden;
      background: #FFFDF8;
      box-shadow: none;
    }

    .accordion-button {
      padding: 20px 22px;
      color: var(--color-text);
      background: #FFFDF8;
      font-weight: 750;
      line-height: 1.45;
      border-radius: 18px !important;
      box-shadow: none !important;
    }

    .accordion-button:not(.collapsed) {
      color: var(--color-primary-dark);
      background: rgba(63,125,107,.08);
    }

    .accordion-button::after {
      filter: sepia(30%) saturate(700%) hue-rotate(110deg);
    }

    .accordion-body {
      padding: 0 22px 22px;
      color: var(--color-muted);
      line-height: 1.85;
      background: #FFFDF8;
    }

    .cta-band {
      position: relative;
      padding: 48px;
      overflow: hidden;
      background:
        linear-gradient(135deg, rgba(63,125,107,.96), rgba(123,77,104,.86)),
        radial-gradient(circle at 80% 10%, rgba(246,239,230,.24), transparent 28%);
      color: #FFFDF8;
      border: 0;
      box-shadow: 0 24px 70px rgba(63, 125, 107, 0.20);
    }

    .cta-band::after {
      content: "";
      position: absolute;
      right: -90px;
      bottom: -130px;
      width: 360px;
      height: 360px;
      border-radius: 50%;
      border: 1px solid rgba(255,253,248,.20);
      box-shadow: inset 0 0 0 30px rgba(255,253,248,.06);
    }

    .cta-band .row {
      position: relative;
      z-index: 1;
    }

    .cta-band h2 {
      color: #FFFDF8;
      font-size: clamp(28px, 3.2vw, 40px);
    }

    .cta-band p {
      color: rgba(255,253,248,.78);
      margin: 14px 0 0;
      max-width: 720px;
    }

    .cta-band .btn-ghost {
      background: rgba(255,253,248,.12);
      border-color: rgba(255,253,248,.46);
      color: #FFFDF8;
    }

    .cta-band .btn-ghost:hover {
      background: rgba(255,253,248,.20);
      color: #FFFDF8;
    }

    .cta-band .btn-brand {
      background: #FFFDF8;
      color: var(--color-primary-dark);
      box-shadow: 0 14px 36px rgba(38, 61, 54, 0.16);
    }

    .site-footer {
      padding: 70px 0 28px;
      background:
        radial-gradient(circle at 8% 20%, rgba(63,125,107,.22), transparent 28%),
        linear-gradient(180deg, #2C2A28, #263D36);
      color: rgba(246,239,230,.80);
    }

    .footer-brand {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 18px;
      color: #FFFDF8;
      font-weight: 800;
      font-size: 18px;
    }

    .footer-desc {
      max-width: 430px;
      color: rgba(246,239,230,.72);
      line-height: 1.82;
      margin-bottom: 20px;
    }

    .footer-title {
      color: #FFFDF8;
      font-size: 16px;
      font-weight: 760;
      margin-bottom: 16px;
    }

    .footer-links {
      list-style: none;
      padding: 0;
      margin: 0;
      display: grid;
      gap: 10px;
    }

    .footer-links a {
      color: rgba(246,239,230,.70);
    }

    .footer-links a:hover {
      color: #BEE1D5;
      transform: translateX(3px);
    }

    .footer-badges {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .footer-badges span {
      border-radius: var(--radius-pill);
      padding: 7px 11px;
      color: rgba(246,239,230,.82);
      border: 1px solid rgba(246,239,230,.18);
      background: rgba(246,239,230,.07);
      font-size: 13px;
      font-weight: 650;
    }

    .footer-bottom {
      margin-top: 46px;
      padding-top: 22px;
      border-top: 1px solid rgba(246,239,230,.14);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      color: rgba(246,239,230,.60);
      font-size: 14px;
    }

    @media (max-width: 1199.98px) {
      .hero {
        min-height: auto;
      }

      .dashboard-card {
        max-width: 460px;
      }

      .floating-card {
        left: -8px;
      }

      .trust-inner {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    @media (max-width: 991.98px) {
      :root {
        --section-space: 76px;
      }

      .site-navbar {
        border-radius: 28px;
      }

      .navbar-collapse {
        margin-top: 12px;
        padding: 14px;
        border-radius: 22px;
        background: rgba(255,253,248,.96);
        border: 1px solid rgba(231,221,210,.92);
        box-shadow: var(--shadow-card);
      }

      .navbar-nav {
        align-items: stretch;
      }

      .nav-link {
        padding: 13px 16px !important;
      }

      .nav-actions {
        margin-left: 0;
        margin-top: 12px;
        align-items: stretch;
        flex-direction: column;
      }

      .search-pill,
      .nav-actions .btn-brand {
        width: 100%;
      }

      .hero {
        padding-top: 132px;
        padding-bottom: 86px;
      }

      .dashboard-wrap {
        min-height: auto;
        margin-top: 44px;
      }

      .dashboard-card {
        max-width: none;
      }

      .floating-card {
        position: relative;
        left: auto;
        bottom: auto;
        width: auto;
        margin-top: 16px;
      }

      .trust-strip {
        margin-top: -36px;
      }

      .category-entry,
      .function-layout,
      .scenario-layout {
        grid-template-columns: 1fr;
      }

      .feature-tab.active,
      .feature-tab:hover {
        transform: translateY(-2px);
      }

      .pricing-grid {
        grid-template-columns: 1fr;
      }

      .price-card.recommended {
        transform: none;
      }

      .check-list {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 767.98px) {
      body {
        font-size: 16px;
      }

      .site-header {
        top: 10px;
        padding: 0 10px;
      }

      .site-navbar {
        padding: 8px 10px;
      }

      .brand-mark {
        width: 38px;
        height: 38px;
      }

      .brand-title {
        font-size: 15px;
      }

      .brand-sub {
        display: none;
      }

      .hero {
        padding-top: 118px;
      }

      .hero .lead,
      .section-desc {
        font-size: 16px;
      }

      .hero-actions,
      .cta-band .d-flex {
        flex-direction: column;
        align-items: stretch !important;
      }

      .btn-brand,
      .btn-ghost {
        width: 100%;
      }

      .dash-grid,
      .trust-inner {
        grid-template-columns: 1fr;
      }

      .section-head {
        margin-bottom: 30px;
      }

      .category-card,
      .feature-panel,
      .scenario-main,
      .price-card {
        padding: 24px;
      }

      .scenario-main {
        min-height: auto;
      }

      .scenario-main h3 {
        font-size: 28px;
      }

      .scenario-card {
        grid-template-columns: 46px 1fr;
        padding: 20px;
      }

      .scenario-num {
        width: 46px;
        height: 46px;
        border-radius: 15px;
      }

      .timeline {
        padding-left: 22px;
      }

      .story-card::before {
        left: -23px;
      }

      .cta-band {
        padding: 30px 24px;
      }

      .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
      }
    }

    @media (max-width: 575.98px) {
      .hero h1 {
        font-size: 34px;
      }

      .eyebrow {
        gap: 8px;
      }

      .badge-soft {
        font-size: 12px;
        padding: 7px 10px;
      }

      .dashboard-card {
        padding: 22px;
      }

      .dash-top {
        flex-direction: column;
      }

      .seal {
        width: 60px;
        height: 60px;
        border-radius: 20px;
      }

      .trust-inner {
        padding: 14px;
      }

      .section {
        padding: 62px 0;
      }

      .category-card h3,
      .feature-content h3 {
        font-size: 24px;
      }
    }

/* roulang page: category2 */
:root{
      --color-primary:#3F7D6B;
      --color-primary-dark:#326A5A;
      --color-primary-soft:#E7F1EC;
      --color-secondary:#7B4D68;
      --color-secondary-soft:#F1E7EE;
      --color-bg:#F6EFE6;
      --color-bg-soft:#FBF6EF;
      --color-card:#FFFDF8;
      --color-text:#2C2A28;
      --color-muted:#746E68;
      --color-border:#E7DDD2;
      --color-amber:#B77942;
      --color-amber-soft:#F7E8D5;
      --radius-sm:12px;
      --radius-md:16px;
      --radius-card:20px;
      --radius-xl:28px;
      --radius-pill:999px;
      --shadow-card:0 14px 40px rgba(63,45,32,.08);
      --shadow-hover:0 20px 60px rgba(63,45,32,.14);
      --shadow-nav:0 12px 34px rgba(63,45,32,.10);
      --container:1200px;
      --transition:all .25s ease;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC","Source Han Sans SC",Arial,sans-serif;
      color:var(--color-text);
      background:
        radial-gradient(circle at 8% 10%, rgba(63,125,107,.10), transparent 28%),
        radial-gradient(circle at 90% 18%, rgba(123,77,104,.10), transparent 30%),
        linear-gradient(180deg,var(--color-bg) 0%,#FFFDF8 46%,var(--color-bg-soft) 100%);
      line-height:1.8;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.055;
      background-image:
        radial-gradient(circle at 1px 1px, #3F7D6B 1px, transparent 0),
        linear-gradient(135deg, transparent 48%, #7B4D68 49%, transparent 51%);
      background-size:28px 28px,80px 80px;
      z-index:-1;
    }
    a{color:inherit;text-decoration:none;transition:var(--transition)}
    a:hover{color:var(--color-primary)}
    img{max-width:100%;height:auto;display:block}
    button,input,textarea,select{font:inherit}
    ::selection{background:rgba(63,125,107,.20);color:var(--color-text)}
    .container{max-width:var(--container)}
    .section{
      padding:96px 0;
      position:relative;
    }
    .section-sm{padding:72px 0}
    .section-kicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 13px;
      border-radius:var(--radius-pill);
      background:rgba(63,125,107,.10);
      color:var(--color-primary-dark);
      border:1px solid rgba(63,125,107,.18);
      font-size:14px;
      font-weight:700;
      margin-bottom:18px;
    }
    .section-kicker::before{
      content:"";
      width:7px;
      height:7px;
      border-radius:50%;
      background:var(--color-primary);
      box-shadow:0 0 0 5px rgba(63,125,107,.12);
    }
    .section-title{
      font-size:clamp(32px,4vw,42px);
      line-height:1.25;
      font-weight:750;
      letter-spacing:-.02em;
      margin:0 0 18px;
    }
    .section-lead{
      color:var(--color-muted);
      font-size:17px;
      line-height:1.85;
      max-width:760px;
      margin:0;
    }

    .site-header{
      position:fixed;
      top:18px;
      left:0;
      right:0;
      z-index:1000;
      padding:0 18px;
      transition:var(--transition);
    }
    .site-header.is-scrolled{top:10px}
    .site-navbar{
      max-width:1220px;
      margin:0 auto;
      padding:10px 14px;
      border-radius:var(--radius-pill);
      background:rgba(255,253,248,.72);
      border:1px solid rgba(255,255,255,.68);
      box-shadow:var(--shadow-nav);
      backdrop-filter:blur(18px) saturate(130%);
      -webkit-backdrop-filter:blur(18px) saturate(130%);
    }
    .site-header.is-scrolled .site-navbar{
      background:#FFFDF8;
      border-color:rgba(231,221,210,.95);
      box-shadow:0 14px 42px rgba(63,45,32,.13);
    }
    .navbar-brand{
      display:flex;
      align-items:center;
      gap:10px;
      min-width:max-content;
      margin-right:18px;
    }
    .brand-mark{
      width:42px;
      height:42px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border-radius:50%;
      color:#FFFDF8;
      font-weight:800;
      font-size:21px;
      background:
        linear-gradient(135deg,var(--color-primary),var(--color-secondary)),
        radial-gradient(circle at 30% 20%,rgba(255,255,255,.55),transparent 35%);
      box-shadow:0 10px 24px rgba(63,125,107,.22);
      position:relative;
      overflow:hidden;
    }
    .brand-mark::after{
      content:"";
      position:absolute;
      width:30px;
      height:12px;
      border:1px solid rgba(255,255,255,.38);
      border-left:none;
      border-right:none;
      transform:rotate(-28deg);
    }
    .brand-text{display:flex;flex-direction:column;line-height:1.15}
    .brand-title{
      font-size:17px;
      font-weight:800;
      color:var(--color-text);
      letter-spacing:.01em;
    }
    .brand-sub{
      margin-top:3px;
      font-size:12px;
      color:var(--color-muted);
      font-weight:650;
    }
    .navbar-toggler{
      border:1px solid rgba(63,125,107,.24);
      border-radius:14px;
      padding:8px 10px;
      box-shadow:none!important;
      background:rgba(63,125,107,.06);
    }
    .navbar-toggler:focus-visible{
      outline:3px solid rgba(63,125,107,.22);
    }
    .navbar-toggler-icon{
      width:1.3em;
      height:1.3em;
      background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2844,42,40,.82%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 8h22M4 15h22M4 22h22'/%3e%3c/svg%3e");
    }
    .navbar-nav{
      gap:4px;
      align-items:center;
    }
    .nav-link{
      color:var(--color-text);
      font-size:15px;
      font-weight:700;
      padding:10px 15px!important;
      border-radius:var(--radius-pill);
      position:relative;
    }
    .nav-link:hover{
      color:var(--color-primary-dark);
      background:rgba(63,125,107,.08);
    }
    .nav-link.active{
      color:var(--color-primary-dark)!important;
      background:rgba(63,125,107,.13);
    }
    .nav-actions{
      display:flex;
      align-items:center;
      gap:10px;
      margin-left:12px;
    }
    .search-pill{
      display:inline-flex;
      align-items:center;
      gap:7px;
      min-height:42px;
      padding:9px 14px;
      border-radius:var(--radius-pill);
      background:rgba(255,253,248,.84);
      border:1px solid rgba(231,221,210,.9);
      color:var(--color-muted);
      font-size:14px;
      font-weight:700;
    }
    .search-pill:hover{
      color:var(--color-primary-dark);
      border-color:rgba(63,125,107,.35);
      background:var(--color-primary-soft);
    }
    .btn-brand,.btn-outline-brand,.btn-soft{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:46px;
      border-radius:var(--radius-pill);
      padding:12px 22px;
      font-weight:750;
      line-height:1;
      border:1px solid transparent;
      transition:var(--transition);
      cursor:pointer;
      white-space:nowrap;
    }
    .btn-brand{
      color:#FFFDF8!important;
      background:var(--color-primary);
      box-shadow:0 12px 26px rgba(63,125,107,.22);
    }
    .btn-brand:hover{
      background:var(--color-primary-dark);
      transform:translateY(-2px);
      box-shadow:0 16px 34px rgba(63,125,107,.28);
    }
    .btn-outline-brand{
      color:var(--color-primary-dark);
      background:rgba(255,253,248,.64);
      border-color:rgba(63,125,107,.34);
    }
    .btn-outline-brand:hover{
      color:var(--color-primary-dark);
      background:var(--color-primary-soft);
      border-color:rgba(63,125,107,.48);
      transform:translateY(-2px);
    }
    .btn-soft{
      color:#6C431D;
      background:var(--color-amber-soft);
      border-color:rgba(183,121,66,.20);
      min-height:38px;
      padding:9px 15px;
      font-size:14px;
    }
    .btn-brand:focus-visible,.btn-outline-brand:focus-visible,.btn-soft:focus-visible,.nav-link:focus-visible,.search-pill:focus-visible,a:focus-visible,button:focus-visible{
      outline:3px solid rgba(63,125,107,.24);
      outline-offset:3px;
    }

    .hero{
      min-height:660px;
      padding:138px 0 82px;
      display:flex;
      align-items:center;
      position:relative;
      overflow:hidden;
      background:
        linear-gradient(135deg,rgba(255,253,248,.72),rgba(246,239,230,.96) 56%,rgba(231,241,236,.72)),
        radial-gradient(circle at 86% 24%,rgba(123,77,104,.13),transparent 34%);
    }
    .hero::before{
      content:"";
      position:absolute;
      inset:0;
      opacity:.08;
      background:
        repeating-radial-gradient(circle at 18% 18%, transparent 0 18px, rgba(63,125,107,.70) 19px 20px, transparent 21px 42px),
        linear-gradient(120deg,transparent 0 48%,rgba(123,77,104,.25) 49%,transparent 50%);
      pointer-events:none;
    }
    .hero::after{
      content:"";
      position:absolute;
      right:-120px;
      bottom:-160px;
      width:520px;
      height:520px;
      border-radius:50%;
      border:1px solid rgba(63,125,107,.16);
      box-shadow:inset 0 0 0 42px rgba(63,125,107,.04), inset 0 0 0 90px rgba(123,77,104,.035);
      pointer-events:none;
    }
    .hero .container{position:relative;z-index:1}
    .hero-badge-row{
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:10px;
      margin-bottom:20px;
    }
    .badge-soft{
      display:inline-flex;
      align-items:center;
      gap:7px;
      border-radius:var(--radius-pill);
      padding:8px 13px;
      font-size:14px;
      font-weight:750;
      line-height:1;
      border:1px solid transparent;
    }
    .badge-primary{background:var(--color-primary-soft);color:var(--color-primary-dark);border-color:rgba(63,125,107,.16)}
    .badge-secondary{background:var(--color-secondary-soft);color:var(--color-secondary);border-color:rgba(123,77,104,.16)}
    .badge-amber{background:var(--color-amber-soft);color:#7A4B21;border-color:rgba(183,121,66,.18)}
    .hero h1{
      font-size:clamp(34px,5vw,54px);
      line-height:1.18;
      letter-spacing:-.035em;
      font-weight:800;
      margin:0 0 22px;
      color:var(--color-text);
    }
    .hero-lead{
      font-size:18px;
      color:var(--color-muted);
      line-height:1.9;
      max-width:650px;
      margin:0 0 30px;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:14px;
      margin-bottom:34px;
    }
    .hero-note{
      display:flex;
      gap:12px;
      align-items:flex-start;
      max-width:640px;
      color:var(--color-muted);
      font-size:15px;
      line-height:1.8;
      padding:16px 18px;
      border:1px solid rgba(183,121,66,.20);
      background:rgba(247,232,213,.54);
      border-radius:18px;
    }
    .note-dot{
      flex:0 0 auto;
      width:10px;
      height:10px;
      margin-top:9px;
      border-radius:50%;
      background:var(--color-amber);
      box-shadow:0 0 0 6px rgba(183,121,66,.13);
    }
    .compliance-panel{
      background:rgba(255,253,248,.86);
      border:1px solid rgba(231,221,210,.92);
      border-radius:var(--radius-xl);
      box-shadow:var(--shadow-card);
      padding:28px;
      position:relative;
      overflow:hidden;
      backdrop-filter:blur(12px);
    }
    .compliance-panel::before{
      content:"";
      position:absolute;
      inset:0 0 auto;
      height:5px;
      background:linear-gradient(90deg,var(--color-primary),var(--color-secondary),#D6AA7B);
    }
    .panel-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      margin-bottom:24px;
    }
    .panel-seal{
      width:70px;
      height:70px;
      border-radius:22px;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#FFFDF8;
      font-size:25px;
      font-weight:850;
      background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));
      box-shadow:0 16px 28px rgba(63,125,107,.20);
      flex:0 0 auto;
    }
    .panel-title{
      margin:0;
      font-size:24px;
      line-height:1.35;
      font-weight:780;
    }
    .check-list{
      display:grid;
      gap:14px;
      margin:0;
      padding:0;
      list-style:none;
    }
    .check-list li{
      display:flex;
      align-items:flex-start;
      gap:12px;
      padding:14px;
      border-radius:16px;
      background:rgba(246,239,230,.58);
      border:1px solid rgba(231,221,210,.76);
      color:var(--color-muted);
    }
    .check-icon{
      flex:0 0 auto;
      width:25px;
      height:25px;
      border-radius:50%;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      background:rgba(63,125,107,.12);
      color:var(--color-primary-dark);
      font-weight:850;
      line-height:1;
    }
    .mini-metrics{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
      margin-top:18px;
    }
    .metric{
      padding:14px 12px;
      border-radius:16px;
      background:#FFFDF8;
      border:1px solid rgba(231,221,210,.85);
      text-align:center;
    }
    .metric strong{
      display:block;
      color:var(--color-primary-dark);
      font-size:20px;
      line-height:1.2;
      margin-bottom:4px;
    }
    .metric span{
      display:block;
      color:var(--color-muted);
      font-size:13px;
      font-weight:650;
    }

    .principle-strip{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      border-radius:var(--radius-xl);
      background:var(--color-card);
      border:1px solid rgba(231,221,210,.92);
      box-shadow:var(--shadow-card);
      overflow:hidden;
      margin-top:36px;
    }
    .principle-item{
      padding:30px 24px;
      position:relative;
      min-height:230px;
      border-right:1px solid rgba(231,221,210,.8);
      transition:var(--transition);
    }
    .principle-item:last-child{border-right:none}
    .principle-item:hover{
      background:linear-gradient(180deg,rgba(231,241,236,.80),#FFFDF8);
    }
    .principle-number{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:42px;
      height:42px;
      border-radius:15px;
      color:#FFFDF8;
      background:var(--color-primary);
      font-weight:800;
      margin-bottom:18px;
      box-shadow:0 12px 22px rgba(63,125,107,.18);
    }
    .principle-item:nth-child(2) .principle-number,
    .principle-item:nth-child(4) .principle-number{background:var(--color-secondary)}
    .principle-item h3{
      font-size:22px;
      line-height:1.35;
      font-weight:750;
      margin:0 0 12px;
      transition:var(--transition);
    }
    .principle-item:hover h3{color:var(--color-primary-dark)}
    .principle-item p{
      color:var(--color-muted);
      margin:0;
      font-size:15.5px;
      line-height:1.78;
    }

    .interface-section{
      background:
        linear-gradient(180deg,rgba(255,253,248,.88),rgba(246,239,230,.70)),
        radial-gradient(circle at 0 40%,rgba(63,125,107,.08),transparent 34%);
    }
    .visual-board{
      min-height:520px;
      border-radius:var(--radius-xl);
      background:
        linear-gradient(135deg,rgba(63,125,107,.92),rgba(123,77,104,.78)),
        radial-gradient(circle at 70% 20%,rgba(255,253,248,.34),transparent 30%);
      padding:28px;
      position:relative;
      overflow:hidden;
      box-shadow:0 22px 60px rgba(63,45,32,.15);
    }
    .visual-board::before{
      content:"";
      position:absolute;
      inset:24px;
      border:1px solid rgba(255,253,248,.22);
      border-radius:24px;
      pointer-events:none;
    }
    .visual-card{
      position:relative;
      background:rgba(255,253,248,.88);
      border:1px solid rgba(255,255,255,.46);
      border-radius:22px;
      padding:22px;
      box-shadow:0 16px 40px rgba(44,42,40,.16);
      backdrop-filter:blur(14px);
      max-width:360px;
    }
    .visual-card + .visual-card{margin-top:18px;margin-left:auto}
    .visual-line{
      height:10px;
      border-radius:var(--radius-pill);
      background:rgba(63,125,107,.16);
      margin:13px 0;
      overflow:hidden;
    }
    .visual-line span{
      display:block;
      height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));
    }
    .visual-card h3{
      font-size:19px;
      font-weight:780;
      margin:0 0 8px;
    }
    .visual-card p{
      margin:0;
      color:var(--color-muted);
      font-size:14.5px;
      line-height:1.7;
    }
    .floating-label{
      position:absolute;
      right:28px;
      bottom:28px;
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:12px 16px;
      border-radius:var(--radius-pill);
      color:#FFFDF8;
      background:rgba(44,42,40,.32);
      border:1px solid rgba(255,253,248,.25);
      backdrop-filter:blur(10px);
      font-weight:750;
    }
    .detail-list{
      display:grid;
      gap:16px;
      margin-top:28px;
    }
    .detail-item{
      display:flex;
      gap:16px;
      padding:20px;
      border-radius:var(--radius-card);
      background:var(--color-card);
      border:1px solid rgba(231,221,210,.9);
      box-shadow:0 10px 30px rgba(63,45,32,.055);
      transition:var(--transition);
    }
    .detail-item:hover{
      transform:translateY(-4px);
      box-shadow:var(--shadow-hover);
      border-color:rgba(63,125,107,.32);
    }
    .detail-symbol{
      width:42px;
      height:42px;
      border-radius:15px;
      flex:0 0 auto;
      display:flex;
      align-items:center;
      justify-content:center;
      background:var(--color-primary-soft);
      color:var(--color-primary-dark);
      font-weight:850;
      font-size:18px;
    }
    .detail-item h3{
      margin:0 0 6px;
      font-size:20px;
      font-weight:750;
    }
    .detail-item p{
      margin:0;
      color:var(--color-muted);
      font-size:15.5px;
      line-height:1.75;
    }

    .bento-grid{
      display:grid;
      grid-template-columns:1.05fr .95fr 1fr;
      grid-auto-rows:minmax(210px,auto);
      gap:22px;
      margin-top:36px;
    }
    .bento-card{
      background:var(--color-card);
      border:1px solid rgba(231,221,210,.92);
      border-radius:var(--radius-card);
      padding:26px;
      box-shadow:var(--shadow-card);
      transition:var(--transition);
      position:relative;
      overflow:hidden;
    }
    .bento-card::before{
      content:"";
      position:absolute;
      inset:0 0 auto;
      height:4px;
      background:linear-gradient(90deg,var(--color-primary),rgba(123,77,104,.72));
      opacity:.86;
    }
    .bento-card:hover{
      transform:translateY(-4px);
      box-shadow:var(--shadow-hover);
      border-color:rgba(63,125,107,.32);
    }
    .bento-card.large{
      grid-row:span 2;
      background:
        linear-gradient(160deg,rgba(231,241,236,.86),#FFFDF8 58%),
        radial-gradient(circle at 80% 14%,rgba(123,77,104,.12),transparent 30%);
    }
    .bento-card.wide{grid-column:span 2}
    .bento-icon{
      width:48px;
      height:48px;
      border-radius:17px;
      display:flex;
      align-items:center;
      justify-content:center;
      background:rgba(123,77,104,.10);
      color:var(--color-secondary);
      font-weight:850;
      margin-bottom:18px;
    }
    .bento-card h3{
      font-size:22px;
      font-weight:780;
      margin:0 0 12px;
      line-height:1.35;
    }
    .bento-card p{
      color:var(--color-muted);
      margin:0;
      font-size:15.8px;
      line-height:1.78;
    }
    .capability-tags{
      display:flex;
      flex-wrap:wrap;
      gap:9px;
      margin-top:20px;
    }
    .capability-tags span{
      display:inline-flex;
      padding:7px 11px;
      border-radius:var(--radius-pill);
      color:var(--color-primary-dark);
      background:rgba(63,125,107,.10);
      border:1px solid rgba(63,125,107,.15);
      font-size:13px;
      font-weight:750;
    }

    .process-timeline{
      margin-top:36px;
      position:relative;
      display:grid;
      gap:18px;
    }
    .process-timeline::before{
      content:"";
      position:absolute;
      left:24px;
      top:16px;
      bottom:16px;
      width:2px;
      background:linear-gradient(180deg,var(--color-primary),rgba(123,77,104,.35));
    }
    .process-item{
      position:relative;
      display:grid;
      grid-template-columns:54px 1fr;
      gap:18px;
      align-items:start;
    }
    .process-dot{
      width:50px;
      height:50px;
      border-radius:18px;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#FFFDF8;
      background:var(--color-primary);
      box-shadow:0 12px 28px rgba(63,125,107,.22);
      font-weight:850;
      z-index:1;
    }
    .process-content{
      background:var(--color-card);
      border:1px solid rgba(231,221,210,.92);
      border-radius:var(--radius-card);
      padding:22px 24px;
      box-shadow:0 12px 34px rgba(63,45,32,.065);
    }
    .process-content h3{
      margin:0 0 8px;
      font-size:20px;
      font-weight:760;
    }
    .process-content p{
      margin:0;
      color:var(--color-muted);
      line-height:1.75;
    }

    .form-wrap{
      border-radius:var(--radius-xl);
      background:
        linear-gradient(135deg,rgba(255,253,248,.95),rgba(246,239,230,.80)),
        radial-gradient(circle at 94% 6%,rgba(63,125,107,.12),transparent 32%);
      border:1px solid rgba(231,221,210,.92);
      box-shadow:var(--shadow-card);
      padding:34px;
    }
    .consult-form{
      display:grid;
      gap:18px;
    }
    .form-label{
      font-weight:750;
      color:var(--color-text);
      margin-bottom:8px;
    }
    .form-control,.form-select{
      min-height:52px;
      border-radius:14px;
      border:1px solid rgba(231,221,210,.95);
      background:#FFFDF8;
      color:var(--color-text);
      padding:12px 15px;
      box-shadow:none!important;
      transition:var(--transition);
    }
    textarea.form-control{
      min-height:132px;
      border-radius:16px;
      resize:vertical;
    }
    .form-control::placeholder{color:#9A9189}
    .form-control:focus,.form-select:focus{
      border-color:var(--color-primary);
      box-shadow:0 0 0 4px rgba(63,125,107,.14)!important;
      background:#FFFDF8;
    }
    .privacy-card{
      height:100%;
      border-radius:var(--radius-xl);
      padding:30px;
      color:#FFFDF8;
      background:
        linear-gradient(145deg,rgba(38,61,54,.96),rgba(63,125,107,.90)),
        radial-gradient(circle at 86% 18%,rgba(255,253,248,.18),transparent 26%);
      box-shadow:0 20px 56px rgba(38,61,54,.20);
      position:relative;
      overflow:hidden;
    }
    .privacy-card::after{
      content:"";
      position:absolute;
      width:220px;
      height:220px;
      right:-80px;
      bottom:-80px;
      border-radius:50%;
      border:1px solid rgba(255,253,248,.20);
      box-shadow:inset 0 0 0 34px rgba(255,253,248,.045);
    }
    .privacy-card h3{
      font-size:26px;
      line-height:1.35;
      font-weight:780;
      margin:0 0 14px;
    }
    .privacy-card p{
      color:rgba(255,253,248,.78);
      margin:0 0 22px;
    }
    .privacy-points{
      list-style:none;
      margin:0;
      padding:0;
      display:grid;
      gap:12px;
      position:relative;
      z-index:1;
    }
    .privacy-points li{
      display:flex;
      align-items:flex-start;
      gap:10px;
      color:rgba(255,253,248,.88);
      padding:12px 0;
      border-bottom:1px solid rgba(255,253,248,.12);
    }
    .privacy-points li:last-child{border-bottom:none}
    .privacy-points span{
      color:#F6D4AA;
      font-weight:850;
    }

    .faq-wrap{
      max-width:880px;
      margin:38px auto 0;
    }
    .accordion{
      display:grid;
      gap:14px;
    }
    .accordion-item{
      border:1px solid rgba(231,221,210,.92)!important;
      border-radius:18px!important;
      overflow:hidden;
      background:var(--color-card);
      box-shadow:0 10px 30px rgba(63,45,32,.055);
    }
    .accordion-button{
      padding:20px 22px;
      color:var(--color-text);
      background:var(--color-card);
      font-weight:760;
      line-height:1.45;
      box-shadow:none!important;
    }
    .accordion-button:not(.collapsed){
      color:var(--color-primary-dark);
      background:linear-gradient(180deg,rgba(231,241,236,.72),#FFFDF8);
    }
    .accordion-button::after{
      filter:none;
      opacity:.75;
    }
    .accordion-button:focus{
      box-shadow:none!important;
      border-color:transparent;
    }
    .accordion-button:focus-visible{
      outline:3px solid rgba(63,125,107,.22);
      outline-offset:-5px;
    }
    .accordion-body{
      color:var(--color-muted);
      padding:0 22px 22px;
      line-height:1.82;
      background:#FFFDF8;
    }

    .cta-band{
      border-radius:var(--radius-xl);
      padding:42px;
      color:#FFFDF8;
      background:
        linear-gradient(135deg,var(--color-primary),rgba(123,77,104,.90)),
        radial-gradient(circle at 90% 20%,rgba(246,239,230,.22),transparent 34%);
      box-shadow:0 24px 68px rgba(63,45,32,.16);
      overflow:hidden;
      position:relative;
    }
    .cta-band::before{
      content:"";
      position:absolute;
      width:360px;
      height:360px;
      right:-150px;
      top:-150px;
      border-radius:50%;
      border:1px solid rgba(255,253,248,.20);
      box-shadow:inset 0 0 0 42px rgba(255,253,248,.04);
    }
    .cta-band h2{
      font-size:clamp(28px,4vw,40px);
      line-height:1.28;
      font-weight:800;
      margin:0 0 14px;
      position:relative;
    }
    .cta-band p{
      color:rgba(255,253,248,.80);
      font-size:17px;
      margin:0;
      max-width:720px;
      position:relative;
    }
    .cta-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      justify-content:flex-end;
      position:relative;
    }
    .cta-band .btn-brand{
      background:#FFFDF8;
      color:var(--color-primary-dark)!important;
      box-shadow:none;
    }
    .cta-band .btn-brand:hover{
      background:#F6EFE6;
      color:var(--color-primary-dark)!important;
    }
    .cta-band .btn-outline-brand{
      color:#FFFDF8;
      border-color:rgba(255,253,248,.52);
      background:rgba(255,253,248,.08);
    }
    .cta-band .btn-outline-brand:hover{
      background:rgba(255,253,248,.16);
      color:#FFFDF8;
    }

    .site-footer{
      background:
        linear-gradient(180deg,#2C2A28,#263D36);
      color:rgba(246,239,230,.86);
      padding:72px 0 28px;
      position:relative;
      overflow:hidden;
    }
    .site-footer::before{
      content:"";
      position:absolute;
      inset:0;
      opacity:.06;
      background:
        radial-gradient(circle at 20% 20%,#F6EFE6 0 1px,transparent 1px),
        linear-gradient(135deg,transparent 48%,#F6EFE6 49%,transparent 51%);
      background-size:30px 30px,90px 90px;
      pointer-events:none;
    }
    .site-footer .container{position:relative}
    .footer-brand{
      display:inline-flex;
      align-items:center;
      gap:10px;
      color:#FFFDF8;
      font-size:20px;
      font-weight:820;
      margin-bottom:18px;
    }
    .footer-brand:hover{color:#D9EFE6}
    .footer-desc{
      color:rgba(246,239,230,.72);
      line-height:1.85;
      margin:0 0 18px;
      font-size:15.5px;
    }
    .footer-badges{
      display:flex;
      flex-wrap:wrap;
      gap:9px;
    }
    .footer-badges span{
      display:inline-flex;
      padding:7px 11px;
      border-radius:var(--radius-pill);
      background:rgba(246,239,230,.08);
      border:1px solid rgba(246,239,230,.14);
      color:rgba(246,239,230,.84);
      font-size:13px;
      font-weight:700;
    }
    .footer-title{
      color:#FFFDF8;
      font-weight:780;
      margin-bottom:16px;
      font-size:16px;
    }
    .footer-links{
      margin:0;
      padding:0;
      list-style:none;
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:rgba(246,239,230,.70);
      font-size:15px;
    }
    .footer-links a:hover{
      color:#D9EFE6;
      padding-left:3px;
    }
    .footer-bottom{
      display:flex;
      justify-content:space-between;
      gap:18px;
      flex-wrap:wrap;
      margin-top:48px;
      padding-top:22px;
      border-top:1px solid rgba(246,239,230,.12);
      color:rgba(246,239,230,.58);
      font-size:14px;
    }

    @media (max-width:1199.98px){
      .site-navbar{border-radius:28px}
      .navbar-nav{gap:0}
      .nav-link{padding:10px 11px!important;font-size:14px}
      .search-pill span:last-child{display:none}
      .principle-strip{grid-template-columns:repeat(2,1fr)}
      .principle-item:nth-child(2){border-right:none}
      .principle-item:nth-child(1),.principle-item:nth-child(2){border-bottom:1px solid rgba(231,221,210,.8)}
      .bento-grid{grid-template-columns:1fr 1fr}
      .bento-card.large{grid-row:auto}
      .bento-card.wide{grid-column:span 2}
    }
    @media (max-width:991.98px){
      .site-header{top:12px;padding:0 12px}
      .site-navbar{padding:10px 12px;border-radius:24px}
      .navbar-collapse{
        margin-top:12px;
        padding:14px;
        background:#FFFDF8;
        border:1px solid rgba(231,221,210,.92);
        border-radius:20px;
        box-shadow:var(--shadow-card);
      }
      .navbar-nav{align-items:stretch}
      .nav-link{padding:13px 14px!important}
      .nav-actions{
        margin-left:0;
        margin-top:12px;
        display:grid;
        grid-template-columns:1fr 1fr;
      }
      .search-pill,.nav-actions .btn-brand{width:100%;justify-content:center}
      .search-pill span:last-child{display:inline}
      .hero{padding:130px 0 68px;min-height:auto}
      .compliance-panel{margin-top:34px}
      .section{padding:76px 0}
      .visual-board{min-height:460px;margin-bottom:30px}
      .cta-actions{justify-content:flex-start;margin-top:26px}
    }
    @media (max-width:767.98px){
      .brand-title{font-size:16px}
      .brand-sub{display:none}
      .brand-mark{width:40px;height:40px}
      .hero h1{font-size:36px}
      .hero-lead{font-size:16px}
      .hero-actions{display:grid}
      .hero-actions a{width:100%}
      .mini-metrics{grid-template-columns:1fr}
      .principle-strip{grid-template-columns:1fr}
      .principle-item{
        border-right:none!important;
        border-bottom:1px solid rgba(231,221,210,.8)!important;
        min-height:auto;
      }
      .principle-item:last-child{border-bottom:none!important}
      .bento-grid{grid-template-columns:1fr}
      .bento-card.wide{grid-column:auto}
      .form-wrap{padding:24px}
      .visual-card + .visual-card{margin-left:0}
      .floating-label{position:relative;right:auto;bottom:auto;margin-top:18px}
      .section-title{font-size:31px}
      .cta-band{padding:30px 24px}
      .footer-bottom{display:grid}
    }
    @media (max-width:575.98px){
      .site-header{padding:0 10px}
      .site-navbar{border-radius:20px}
      .nav-actions{grid-template-columns:1fr}
      .hero{padding-top:118px}
      .hero-badge-row{gap:8px}
      .badge-soft{font-size:13px}
      .section{padding:62px 0}
      .section-sm{padding:56px 0}
      .detail-item{padding:18px;gap:12px}
      .process-item{grid-template-columns:44px 1fr;gap:12px}
      .process-dot{width:42px;height:42px;border-radius:14px}
      .process-timeline::before{left:20px}
      .visual-board{padding:20px}
      .visual-card{padding:18px}
      .form-wrap{padding:20px}
      .btn-brand,.btn-outline-brand{width:100%}
    }

/* roulang page: category1 */
:root{
      --color-primary:#3F7D6B;
      --color-primary-dark:#326A5A;
      --color-secondary:#7B4D68;
      --color-bg:#F6EFE6;
      --color-surface:#FFFDF8;
      --color-surface-2:#FBF7F1;
      --color-text:#2C2A28;
      --color-muted:#746E68;
      --color-border:#E7DDD2;
      --color-warning:#B77942;
      --color-warning-soft:rgba(183,121,66,.14);
      --radius-sm:12px;
      --radius-md:20px;
      --radius-lg:28px;
      --radius-pill:999px;
      --shadow-card:0 14px 40px rgba(63,45,32,.08);
      --shadow-hover:0 20px 60px rgba(63,45,32,.14);
      --shadow-soft:0 10px 30px rgba(63,45,32,.06);
      --transition:all .28s ease;
      --container:1200px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC","Source Han Sans SC",Arial,sans-serif;
      color:var(--color-text);
      line-height:1.8;
      background:
        radial-gradient(circle at 10% 10%, rgba(63,125,107,.10), transparent 25%),
        radial-gradient(circle at 90% 0%, rgba(123,77,104,.08), transparent 22%),
        radial-gradient(circle at 85% 72%, rgba(183,121,66,.08), transparent 18%),
        linear-gradient(180deg, #F8F3EB 0%, #FCFAF6 100%);
      overflow-x:hidden;
    }

    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background-image:
        linear-gradient(120deg, rgba(63,125,107,.05) 0 1px, transparent 1px 100%),
        linear-gradient(60deg, rgba(123,77,104,.04) 0 1px, transparent 1px 100%);
      background-size:120px 120px, 160px 160px;
      opacity:.28;
      mask-image:linear-gradient(180deg, rgba(0,0,0,.22), transparent 80%);
      z-index:-1;
    }

    ::selection{
      background:rgba(63,125,107,.18);
      color:var(--color-text);
    }

    a{
      color:inherit;
      text-decoration:none;
      transition:var(--transition);
    }
    a:hover{color:var(--color-primary)}
    img{max-width:100%; display:block}
    button,input,textarea,select{
      font:inherit;
    }

    .container, .container-lg{
      max-width:var(--container);
    }

    .site-header{
      position:fixed;
      top:0;
      left:0;
      right:0;
      z-index:1030;
      padding:14px 0;
      transition:var(--transition);
    }
    .site-header.is-scrolled{
      padding:10px 0;
    }

    .site-navbar{
      width:min(100%, var(--container));
      margin:0 auto;
      padding:14px 18px;
      border:1px solid rgba(255,255,255,.56);
      border-radius:999px;
      background:rgba(255,253,248,.72);
      backdrop-filter:blur(18px) saturate(130%);
      box-shadow:0 10px 30px rgba(63,45,32,.08);
      transition:var(--transition);
    }
    .site-header.is-scrolled .site-navbar{
      background:rgba(255,253,248,.96);
      border-color:var(--color-border);
      box-shadow:0 14px 36px rgba(63,45,32,.10);
    }

    .navbar-brand{
      display:flex;
      align-items:center;
      gap:12px;
      color:var(--color-text);
      white-space:nowrap;
    }
    .brand-mark{
      width:44px;
      height:44px;
      display:grid;
      place-items:center;
      border-radius:16px;
      background:linear-gradient(135deg, var(--color-primary), #59A18D);
      color:#fff;
      font-weight:800;
      font-size:18px;
      box-shadow:0 10px 20px rgba(63,125,107,.22);
      flex:0 0 auto;
    }
    .brand-text{
      display:flex;
      flex-direction:column;
      gap:1px;
      min-width:0;
    }
    .brand-title{
      font-size:18px;
      font-weight:800;
      letter-spacing:.02em;
      line-height:1.15;
    }
    .brand-sub{
      font-size:12px;
      color:var(--color-muted);
      line-height:1.2;
    }

    .navbar-toggler{
      border:1px solid rgba(63,125,107,.22);
      background:rgba(255,253,248,.86);
      border-radius:14px;
      box-shadow:none !important;
      padding:.55rem .72rem;
    }
    .navbar-toggler:focus-visible{
      outline:none;
      box-shadow:0 0 0 4px rgba(63,125,107,.14) !important;
    }
    .navbar-toggler-icon{
      width:1.25em;
      height:1.25em;
      background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(63,125,107,0.95)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
    }

    .navbar-nav{
      gap:4px;
    }
    .nav-link{
      position:relative;
      padding:12px 16px !important;
      color:var(--color-muted);
      font-weight:650;
      border-radius:999px;
      transition:var(--transition);
    }
    .nav-link:hover,
    .nav-link:focus-visible{
      color:var(--color-text);
      background:rgba(63,125,107,.08);
    }
    .nav-link.active{
      color:var(--color-primary) !important;
      background:rgba(63,125,107,.10);
    }
    .nav-link.active::after{
      content:"";
      position:absolute;
      left:16px;
      right:16px;
      bottom:7px;
      height:2px;
      border-radius:999px;
      background:linear-gradient(90deg, var(--color-primary), rgba(63,125,107,.4));
      opacity:.8;
    }

    .nav-actions{
      display:flex;
      align-items:center;
      gap:12px;
      flex-wrap:wrap;
    }
    .search-pill,
    .btn-brand,
    .btn-soft{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      border-radius:var(--radius-pill);
      font-weight:700;
      padding:12px 18px;
      line-height:1.1;
      transition:var(--transition);
      border:1px solid transparent;
      box-shadow:none;
    }
    .search-pill{
      color:var(--color-primary);
      background:rgba(63,125,107,.08);
      border-color:rgba(63,125,107,.14);
    }
    .search-pill:hover,
    .search-pill:focus-visible{
      color:#fff;
      background:var(--color-primary);
      border-color:var(--color-primary);
      transform:translateY(-2px);
      box-shadow:0 12px 24px rgba(63,125,107,.18);
    }
    .btn-brand{
      color:#fff;
      background:linear-gradient(135deg, var(--color-primary), #4E907C);
      box-shadow:0 12px 28px rgba(63,125,107,.18);
    }
    .btn-brand:hover,
    .btn-brand:focus-visible{
      color:#fff;
      background:linear-gradient(135deg, var(--color-primary-dark), #356F60);
      transform:translateY(-2px);
      box-shadow:0 16px 34px rgba(63,125,107,.22);
    }
    .btn-soft{
      color:var(--color-text);
      background:rgba(255,253,248,.86);
      border-color:var(--color-border);
    }
    .btn-soft:hover,
    .btn-soft:focus-visible{
      color:var(--color-primary);
      background:rgba(63,125,107,.08);
      border-color:rgba(63,125,107,.22);
      transform:translateY(-2px);
    }

    .site-header .navbar-collapse{
      justify-content:space-between;
      gap:18px;
    }

    .hero-section{
      position:relative;
      overflow:hidden;
      padding:148px 0 46px;
      background:
        radial-gradient(circle at 20% 16%, rgba(255,255,255,.88), transparent 30%),
        linear-gradient(135deg, rgba(246,239,230,.96), rgba(255,253,248,.84));
      scroll-margin-top:110px;
    }
    .hero-section::before{
      content:"";
      position:absolute;
      inset:-10% -5% auto auto;
      width:460px;
      height:460px;
      background:radial-gradient(circle, rgba(63,125,107,.16), rgba(63,125,107,0) 68%);
      pointer-events:none;
    }
    .hero-section::after{
      content:"";
      position:absolute;
      left:-5%;
      bottom:-120px;
      width:520px;
      height:320px;
      background:radial-gradient(circle, rgba(123,77,104,.12), rgba(123,77,104,0) 70%);
      pointer-events:none;
    }

    .hero-grid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
      gap:32px;
      align-items:center;
    }

    .hero-copy{
      padding:10px 0;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:10px;
      margin:0 0 18px;
      padding:8px 14px;
      border-radius:999px;
      background:rgba(255,253,248,.88);
      border:1px solid rgba(231,221,210,.92);
      color:var(--color-muted);
      font-size:13px;
      font-weight:700;
      box-shadow:var(--shadow-soft);
    }
    .eyebrow::before{
      content:"";
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--color-primary);
      box-shadow:0 0 0 4px rgba(63,125,107,.12);
    }

    .hero-badges{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-bottom:18px;
    }
    .badge-soft,
    .age-badge,
    .tag-badge{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:8px 12px;
      border-radius:999px;
      font-size:13px;
      font-weight:700;
      line-height:1;
      border:1px solid transparent;
    }
    .age-badge{
      color:#7C4B18;
      background:var(--color-warning-soft);
      border-color:rgba(183,121,66,.18);
    }
    .badge-soft{
      color:var(--color-primary);
      background:rgba(63,125,107,.08);
      border-color:rgba(63,125,107,.14);
    }
    .badge-soft.purple{
      color:var(--color-secondary);
      background:rgba(123,77,104,.08);
      border-color:rgba(123,77,104,.14);
    }

    .hero-copy h1{
      margin:0 0 18px;
      font-size:clamp(2.1rem, 4.9vw, 3.7rem);
      line-height:1.18;
      letter-spacing:-.02em;
      font-weight:800;
      color:var(--color-text);
    }
    .hero-lead{
      margin:0 0 24px;
      max-width:46rem;
      color:var(--color-muted);
      font-size:1.05rem;
      line-height:1.85;
    }

    .hero-actions{
      display:flex;
      align-items:center;
      gap:14px;
      flex-wrap:wrap;
      margin-bottom:24px;
    }
    .hero-actions .btn-brand,
    .hero-actions .btn-soft{
      min-width:158px;
    }

    .trust-row{
      display:grid;
      grid-template-columns:repeat(4, minmax(0,1fr));
      gap:12px;
      margin-top:8px;
    }
    .trust-item{
      padding:15px 14px;
      border-radius:18px;
      background:rgba(255,253,248,.88);
      border:1px solid rgba(231,221,210,.92);
      box-shadow:var(--shadow-soft);
      min-height:82px;
    }
    .trust-item strong{
      display:block;
      font-size:14px;
      line-height:1.35;
      margin-bottom:4px;
      color:var(--color-text);
    }
    .trust-item span{
      display:block;
      font-size:13px;
      line-height:1.55;
      color:var(--color-muted);
    }

    .hero-visual{
      position:relative;
      min-height:520px;
      display:flex;
      align-items:stretch;
    }
    .dashboard-shell{
      position:relative;
      width:100%;
      border-radius:var(--radius-lg);
      background:
        linear-gradient(180deg, rgba(255,253,248,.94), rgba(251,247,241,.88));
      border:1px solid rgba(231,221,210,.92);
      box-shadow:var(--shadow-card);
      overflow:hidden;
      padding:24px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      gap:18px;
    }
    .dashboard-shell::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(120deg, rgba(63,125,107,.06), transparent 30%),
        linear-gradient(300deg, rgba(123,77,104,.06), transparent 28%);
      pointer-events:none;
    }
    .dashboard-top{
      position:relative;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      z-index:1;
    }
    .dashboard-title{
      display:flex;
      flex-direction:column;
      gap:4px;
    }
    .dashboard-title strong{
      font-size:18px;
      color:var(--color-text);
      line-height:1.25;
    }
    .dashboard-title span{
      font-size:13px;
      color:var(--color-muted);
    }
    .dashboard-status{
      padding:9px 12px;
      border-radius:999px;
      background:rgba(63,125,107,.10);
      color:var(--color-primary);
      font-size:13px;
      font-weight:700;
      border:1px solid rgba(63,125,107,.14);
      white-space:nowrap;
    }

    .dashboard-orb{
      position:relative;
      z-index:1;
      min-height:210px;
      border-radius:24px;
      background:
        radial-gradient(circle at 30% 28%, rgba(255,255,255,.9), rgba(255,255,255,.42) 28%, transparent 29%),
        linear-gradient(135deg, rgba(63,125,107,.18), rgba(123,77,104,.12));
      border:1px solid rgba(255,255,255,.72);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.4);
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
    }
    .dashboard-orb::before,
    .dashboard-orb::after{
      content:"";
      position:absolute;
      border-radius:50%;
      background:rgba(255,255,255,.24);
      filter:blur(2px);
    }
    .dashboard-orb::before{
      width:140px;
      height:140px;
      left:16%;
      top:18%;
      box-shadow:0 0 0 30px rgba(255,255,255,.06);
    }
    .dashboard-orb::after{
      width:220px;
      height:220px;
      right:-42px;
      bottom:-48px;
      background:rgba(255,255,255,.10);
    }

    .orb-copy{
      position:relative;
      z-index:1;
      text-align:center;
      padding:22px;
    }
    .orb-copy strong{
      display:block;
      font-size:28px;
      line-height:1.2;
      color:#fff;
      letter-spacing:.02em;
      text-shadow:0 8px 26px rgba(44,42,40,.20);
      margin-bottom:8px;
    }
    .orb-copy span{
      display:block;
      font-size:14px;
      color:rgba(255,255,255,.94);
    }

    .dashboard-grid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:repeat(2, minmax(0,1fr));
      gap:12px;
    }
    .dashboard-card{
      padding:16px;
      border-radius:20px;
      border:1px solid rgba(231,221,210,.92);
      background:rgba(255,253,248,.94);
      box-shadow:var(--shadow-soft);
      min-height:112px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      gap:10px;
      transition:var(--transition);
    }
    .dashboard-card:hover{
      transform:translateY(-4px);
      box-shadow:var(--shadow-hover);
      border-color:rgba(63,125,107,.30);
    }
    .dashboard-card .mini-label{
      font-size:12px;
      color:var(--color-muted);
      letter-spacing:.02em;
    }
    .dashboard-card strong{
      font-size:18px;
      line-height:1.3;
      color:var(--color-text);
    }
    .dashboard-card p{
      margin:0;
      font-size:13px;
      line-height:1.6;
      color:var(--color-muted);
    }
    .dashboard-card.primary{
      background:linear-gradient(135deg, rgba(63,125,107,.92), rgba(63,125,107,.80));
      border-color:rgba(255,255,255,.24);
    }
    .dashboard-card.primary .mini-label,
    .dashboard-card.primary p,
    .dashboard-card.primary strong{
      color:#fff;
    }
    .dashboard-card.secondary{
      background:linear-gradient(135deg, rgba(123,77,104,.16), rgba(255,253,248,.96));
    }

    .compliance-section{
      padding:0 0 18px;
      scroll-margin-top:110px;
    }
    .compliance-strip{
      position:relative;
      margin-top:-18px;
      padding:22px 24px;
      border-radius:24px;
      background:linear-gradient(135deg, rgba(63,125,107,.08), rgba(255,253,248,.96));
      border:1px solid rgba(231,221,210,.92);
      box-shadow:var(--shadow-card);
      display:grid;
      grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
      gap:18px;
      align-items:center;
    }
    .compliance-strip h2{
      margin:10px 0 6px;
      font-size:clamp(1.3rem, 2.4vw, 2rem);
      line-height:1.3;
      font-weight:800;
      color:var(--color-text);
    }
    .compliance-strip p{
      margin:0;
      color:var(--color-muted);
      line-height:1.8;
    }
    .compliance-points{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      justify-content:flex-end;
    }
    .compliance-points span{
      padding:10px 12px;
      border-radius:999px;
      background:rgba(255,253,248,.94);
      border:1px solid rgba(231,221,210,.92);
      color:var(--color-text);
      font-size:13px;
      font-weight:700;
      white-space:nowrap;
    }

    .filter-section{
      padding:24px 0 10px;
      scroll-margin-top:110px;
    }
    .filter-shell{
      position:sticky;
      top:92px;
      z-index:25;
      padding:18px;
      border-radius:26px;
      background:rgba(255,253,248,.92);
      border:1px solid rgba(231,221,210,.92);
      box-shadow:var(--shadow-card);
      display:grid;
      grid-template-columns:minmax(230px,.95fr) minmax(0,1.4fr) auto;
      gap:14px;
      align-items:center;
    }
    .filter-search{
      display:flex;
      align-items:center;
      gap:10px;
      padding:0 16px;
      min-height:54px;
      border-radius:18px;
      border:1px solid var(--color-border);
      background:#fff;
      transition:var(--transition);
    }
    .filter-search:focus-within{
      border-color:var(--color-primary);
      box-shadow:0 0 0 4px rgba(63,125,107,.12);
    }
    .filter-search span{
      color:var(--color-primary);
      font-size:18px;
      flex:0 0 auto;
    }
    .filter-input{
      width:100%;
      border:none;
      outline:none;
      background:transparent;
      color:var(--color-text);
      padding:13px 0;
    }
    .filter-input::placeholder{
      color:#9A9087;
    }
    .chip-row,
    .sort-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .filter-chip,
    .sort-chip{
      border:none;
      padding:10px 14px;
      border-radius:999px;
      background:rgba(63,125,107,.08);
      color:var(--color-primary);
      font-size:13px;
      font-weight:700;
      transition:var(--transition);
      white-space:nowrap;
    }
    .filter-chip:hover,
    .sort-chip:hover,
    .filter-chip:focus-visible,
    .sort-chip:focus-visible{
      transform:translateY(-2px);
      background:rgba(63,125,107,.14);
      color:var(--color-primary-dark);
      box-shadow:0 10px 20px rgba(63,125,107,.10);
      outline:none;
    }
    .filter-chip.active,
    .sort-chip.active{
      color:#fff;
      background:linear-gradient(135deg, var(--color-primary), #4E907C);
      box-shadow:0 12px 24px rgba(63,125,107,.18);
    }

    .section-block{
      padding:92px 0;
      scroll-margin-top:110px;
    }
    .section-alt{
      background:linear-gradient(180deg, rgba(255,255,255,.46), rgba(246,239,230,.34));
    }
    .section-head{
      display:flex;
      flex-direction:column;
      gap:12px;
      margin-bottom:28px;
      max-width:760px;
    }
    .section-kicker{
      display:inline-flex;
      width:fit-content;
      align-items:center;
      gap:8px;
      font-size:13px;
      font-weight:800;
      color:var(--color-primary);
      text-transform:none;
      letter-spacing:.04em;
      padding:8px 12px;
      border-radius:999px;
      background:rgba(63,125,107,.08);
      border:1px solid rgba(63,125,107,.14);
    }
    .section-kicker::before{
      content:"";
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--color-primary);
    }
    .section-title{
      margin:0;
      font-size:clamp(1.8rem, 3.2vw, 2.9rem);
      line-height:1.25;
      font-weight:800;
      letter-spacing:-.02em;
      color:var(--color-text);
    }
    .section-lead{
      margin:0;
      font-size:1rem;
      line-height:1.85;
      color:var(--color-muted);
      max-width:58rem;
    }

    .content-layout{
      display:grid;
      grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);
      gap:24px;
      align-items:start;
    }
    .feature-card,
    .sidebar-card,
    .entry-card,
    .scene-card,
    .plan-card,
    .faq-card,
    .note-card{
      position:relative;
      border-radius:var(--radius-md);
      border:1px solid rgba(231,221,210,.92);
      background:var(--color-surface);
      box-shadow:var(--shadow-card);
      transition:var(--transition);
      overflow:hidden;
    }
    .feature-card:hover,
    .sidebar-card:hover,
    .entry-card:hover,
    .scene-card:hover,
    .plan-card:hover,
    .faq-card:hover,
    .note-card:hover{
      transform:translateY(-4px);
      box-shadow:var(--shadow-hover);
      border-color:rgba(63,125,107,.30);
    }

    .feature-card{
      padding:28px;
      background:
        linear-gradient(180deg, rgba(255,253,248,.98), rgba(250,245,238,.92));
    }
    .feature-card::before,
    .plan-card.featured::before,
    .entry-card::before,
    .scene-card::before{
      content:"";
      position:absolute;
      left:0;
      top:0;
      width:100%;
      height:4px;
      background:linear-gradient(90deg, var(--color-primary), var(--color-secondary));
      opacity:.9;
    }
    .feature-header{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:center;
      margin-bottom:16px;
    }
    .feature-card h3,
    .sidebar-card h3,
    .entry-card h3,
    .scene-card h3,
    .plan-card h3,
    .faq-card h3{
      margin:0;
      color:var(--color-text);
      line-height:1.35;
      font-weight:800;
    }
    .feature-card h3{
      font-size:clamp(1.45rem, 2.5vw, 2.05rem);
      margin-bottom:14px;
    }
    .feature-card p,
    .sidebar-card p,
    .entry-card p,
    .scene-card p,
    .plan-card p,
    .faq-card p{
      color:var(--color-muted);
      margin:0;
    }
    .feature-lead{
      font-size:1.02rem;
      line-height:1.85;
      margin-bottom:16px;
    }
    .feature-list{
      list-style:none;
      padding:0;
      margin:18px 0 0;
      display:grid;
      gap:12px;
    }
    .feature-list li{
      position:relative;
      padding-left:26px;
      color:var(--color-text);
      line-height:1.8;
    }
    .feature-list li::before{
      content:"";
      position:absolute;
      left:0;
      top:.7em;
      width:11px;
      height:11px;
      border-radius:50%;
      background:linear-gradient(135deg, var(--color-primary), #67A795);
      box-shadow:0 0 0 4px rgba(63,125,107,.10);
    }
    .feature-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin-top:24px;
    }
    .feature-actions .btn-brand,
    .feature-actions .btn-soft{
      min-width:152px;
    }

    .sidebar-card{
      padding:24px;
      background:linear-gradient(180deg, rgba(255,253,248,.98), rgba(250,246,240,.94));
      position:sticky;
      top:184px;
    }
    .sidebar-card .small-title{
      font-size:13px;
      font-weight:800;
      letter-spacing:.04em;
      color:var(--color-primary);
      margin-bottom:10px;
    }
    .sidebar-section{
      padding:16px 0;
      border-top:1px solid rgba(231,221,210,.92);
    }
    .sidebar-section:first-of-type{
      padding-top:0;
      border-top:none;
    }
    .sidebar-list{
      list-style:none;
      padding:0;
      margin:12px 0 0;
      display:grid;
      gap:10px;
    }
    .sidebar-list li{
      position:relative;
      padding-left:22px;
      color:var(--color-text);
      line-height:1.7;
      font-size:14px;
    }
    .sidebar-list li::before{
      content:"";
      position:absolute;
      left:0;
      top:.65em;
      width:9px;
      height:9px;
      border-radius:50%;
      background:var(--color-primary);
      box-shadow:0 0 0 4px rgba(63,125,107,.10);
    }
    .sidebar-tags{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:12px;
    }

    .entry-grid{
      margin-top:24px;
      display:grid;
      grid-template-columns:repeat(4, minmax(0,1fr));
      gap:18px;
    }
    .entry-card{
      padding:22px;
      background:linear-gradient(180deg, rgba(255,253,248,.98), rgba(252,248,241,.95));
      min-height:220px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }
    .entry-card:nth-child(2n){
      background:linear-gradient(180deg, rgba(255,253,248,.96), rgba(247,241,236,.92));
    }
    .entry-top{
      display:flex;
      justify-content:space-between;
      gap:12px;
      margin-bottom:16px;
      align-items:flex-start;
    }
    .entry-index{
      width:42px;
      height:42px;
      border-radius:14px;
      display:grid;
      place-items:center;
      background:rgba(63,125,107,.10);
      color:var(--color-primary);
      font-weight:800;
      flex:0 0 auto;
    }
    .entry-card h3{
      font-size:1.15rem;
      margin-bottom:10px;
    }
    .entry-card p{
      font-size:14px;
      line-height:1.75;
    }
    .entry-link{
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-top:16px;
      color:var(--color-primary);
      font-weight:700;
      font-size:14px;
    }
    .entry-link span{
      transition:var(--transition);
    }
    .entry-card:hover .entry-link span{
      transform:translateX(4px);
    }

    .scene-grid{
      display:grid;
      grid-template-columns:repeat(4, minmax(0,1fr));
      gap:18px;
      align-items:stretch;
    }
    .scene-card{
      padding:22px;
      background:
        linear-gradient(180deg, rgba(255,253,248,.98), rgba(249,245,238,.94));
      min-height:240px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }
    .scene-card.featured{
      grid-column:span 2;
      min-height:240px;
      background:
        radial-gradient(circle at 20% 10%, rgba(63,125,107,.08), transparent 35%),
        linear-gradient(180deg, rgba(255,253,248,.98), rgba(248,243,236,.94));
    }
    .scene-number{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:44px;
      height:44px;
      border-radius:16px;
      background:rgba(123,77,104,.10);
      color:var(--color-secondary);
      font-weight:800;
      margin-bottom:16px;
    }
    .scene-card h3{
      font-size:1.18rem;
      margin-bottom:12px;
    }
    .scene-card p{
      font-size:14px;
      line-height:1.78;
    }

    .roadmap{
      margin-top:24px;
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:18px;
    }
    .road-item{
      position:relative;
      padding:18px 20px 20px;
      border-radius:20px;
      background:rgba(255,253,248,.92);
      border:1px solid rgba(231,221,210,.92);
      box-shadow:var(--shadow-soft);
      min-height:150px;
    }
    .road-item::before{
      content:"";
      position:absolute;
      left:20px;
      top:18px;
      width:42px;
      height:4px;
      border-radius:999px;
      background:linear-gradient(90deg, var(--color-primary), var(--color-secondary));
    }
    .road-item .step{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      margin-top:20px;
      margin-bottom:10px;
      width:40px;
      height:40px;
      border-radius:14px;
      background:rgba(63,125,107,.10);
      color:var(--color-primary);
      font-weight:800;
    }
    .road-item h3{
      font-size:1.06rem;
      margin-bottom:8px;
    }
    .road-item p{
      margin:0;
      font-size:14px;
      line-height:1.75;
      color:var(--color-muted);
    }

    .plan-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:18px;
    }
    .plan-card{
      padding:24px;
      background:linear-gradient(180deg, rgba(255,253,248,.98), rgba(250,246,240,.94));
      display:flex;
      flex-direction:column;
      gap:18px;
    }
    .plan-card.featured{
      border-color:rgba(63,125,107,.32);
      transform:translateY(-6px);
      background:
        radial-gradient(circle at 100% 0%, rgba(63,125,107,.08), transparent 32%),
        linear-gradient(180deg, rgba(255,253,248,.99), rgba(248,243,236,.95));
    }
    .plan-head{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:12px;
    }
    .plan-name{
      display:flex;
      flex-direction:column;
      gap:6px;
    }
    .plan-name h3{
      font-size:1.24rem;
      margin:0;
    }
    .plan-mark{
      padding:8px 10px;
      border-radius:999px;
      font-size:12px;
      font-weight:800;
      color:var(--color-primary);
      background:rgba(63,125,107,.08);
      border:1px solid rgba(63,125,107,.14);
      white-space:nowrap;
    }
    .plan-price{
      font-size:28px;
      font-weight:800;
      color:var(--color-text);
      line-height:1;
      margin:2px 0 0;
    }
    .plan-price small{
      font-size:13px;
      color:var(--color-muted);
      font-weight:600;
      margin-left:6px;
    }
    .plan-card ul{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap:10px;
    }
    .plan-card li{
      position:relative;
      padding-left:22px;
      font-size:14px;
      color:var(--color-text);
      line-height:1.7;
    }
    .plan-card li::before{
      content:"";
      position:absolute;
      left:0;
      top:.7em;
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--color-primary);
      box-shadow:0 0 0 4px rgba(63,125,107,.10);
    }
    .plan-card .btn{
      margin-top:auto;
      width:fit-content;
    }

    .faq-grid{
      display:grid;
      grid-template-columns:repeat(2, minmax(0,1fr));
      gap:18px;
    }
    .faq-card{
      padding:22px 22px 20px;
      background:linear-gradient(180deg, rgba(255,253,248,.98), rgba(250,246,240,.95));
    }
    .faq-card h3{
      font-size:1.08rem;
      margin-bottom:10px;
    }
    .faq-card p{
      font-size:14px;
      line-height:1.8;
    }

    .cta-band{
      padding:0 0 96px;
      scroll-margin-top:110px;
    }
    .cta-panel{
      border-radius:var(--radius-lg);
      background:
        linear-gradient(135deg, rgba(63,125,107,.96), rgba(123,77,104,.88)),
        linear-gradient(135deg, #3F7D6B, #7B4D68);
      color:#fff;
      padding:32px 30px;
      box-shadow:0 24px 64px rgba(63,45,32,.16);
      position:relative;
      overflow:hidden;
    }
    .cta-panel::before{
      content:"";
      position:absolute;
      inset:auto -100px -120px auto;
      width:300px;
      height:300px;
      border-radius:50%;
      background:rgba(255,255,255,.12);
      pointer-events:none;
    }
    .cta-panel::after{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(120deg, rgba(255,255,255,.08), transparent 34%),
        radial-gradient(circle at 12% 18%, rgba(255,255,255,.12), transparent 24%);
      pointer-events:none;
    }
    .cta-inner{
      position:relative;
      z-index:1;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
      flex-wrap:wrap;
    }
    .cta-copy{
      max-width:720px;
    }
    .cta-copy h2{
      margin:0 0 10px;
      font-size:clamp(1.6rem, 3vw, 2.4rem);
      line-height:1.25;
      font-weight:800;
    }
    .cta-copy p{
      margin:0;
      color:rgba(255,255,255,.90);
      line-height:1.85;
    }
    .cta-actions{
      display:flex;
      gap:12px;
      flex-wrap:wrap;
    }
    .cta-actions .btn{
      min-width:160px;
    }
    .cta-actions .btn-soft{
      background:rgba(255,253,248,.92);
      color:var(--color-primary);
      border-color:rgba(255,255,255,.28);
    }
    .cta-actions .btn-soft:hover,
    .cta-actions .btn-soft:focus-visible{
      background:#fff;
      color:var(--color-primary-dark);
    }

    .site-footer{
      background:linear-gradient(180deg, #263D36 0%, #2C2A28 100%);
      color:#F6EFE6;
      padding:72px 0 22px;
      margin-top:10px;
    }
    .footer-brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      color:#F6EFE6;
      font-weight:800;
      font-size:18px;
      margin-bottom:16px;
    }
    .footer-brand .brand-mark{
      width:42px;
      height:42px;
      border-radius:16px;
      box-shadow:none;
      background:linear-gradient(135deg, #4D8F7C, #6EA894);
    }
    .footer-desc{
      color:rgba(246,239,230,.86);
      line-height:1.85;
      margin-bottom:18px;
      max-width:42rem;
    }
    .footer-badges{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .footer-badges span{
      padding:8px 12px;
      border-radius:999px;
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.10);
      color:#F6EFE6;
      font-size:13px;
      font-weight:700;
    }
    .footer-title{
      font-size:15px;
      font-weight:800;
      color:#FFF7EB;
      margin-bottom:16px;
    }
    .footer-links{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:rgba(246,239,230,.84);
    }
    .footer-links a:hover,
    .footer-links a:focus-visible{
      color:#CFE8DE;
    }
    .footer-bottom{
      margin-top:34px;
      padding-top:18px;
      border-top:1px solid rgba(255,255,255,.10);
      display:flex;
      justify-content:space-between;
      gap:12px;
      flex-wrap:wrap;
      color:rgba(246,239,230,.78);
      font-size:13px;
    }

    .btn, .btn:hover, .btn:focus{
      box-shadow:none;
    }

    :focus-visible{
      outline:none;
      box-shadow:0 0 0 4px rgba(63,125,107,.14);
    }

    @media (max-width: 1199.98px){
      .hero-grid{
        grid-template-columns:1fr .95fr;
      }
      .entry-grid{
        grid-template-columns:repeat(2, minmax(0,1fr));
      }
      .scene-grid{
        grid-template-columns:repeat(2, minmax(0,1fr));
      }
      .scene-card.featured{
        grid-column:span 2;
      }
      .plan-grid{
        grid-template-columns:1fr;
      }
      .plan-card.featured{
        transform:none;
      }
    }

    @media (max-width: 991.98px){
      .site-navbar{
        border-radius:24px;
      }
      .site-header .navbar-collapse{
        margin-top:14px;
        padding:16px;
        border-radius:24px;
        background:rgba(255,253,248,.96);
        border:1px solid var(--color-border);
        box-shadow:var(--shadow-card);
      }
      .navbar-nav{
        padding:8px 0 4px;
      }
      .nav-actions{
        width:100%;
        margin-top:8px;
      }
      .search-pill,
      .btn-brand{
        width:100%;
      }
      .hero-section{
        padding-top:138px;
      }
      .hero-grid,
      .compliance-strip,
      .content-layout{
        grid-template-columns:1fr;
      }
      .hero-visual{
        min-height:420px;
      }
      .sidebar-card{
        position:static;
      }
      .trust-row{
        grid-template-columns:repeat(2, minmax(0,1fr));
      }
      .filter-shell{
        grid-template-columns:1fr;
        position:static;
      }
      .compliance-points{
        justify-content:flex-start;
      }
    }

    @media (max-width: 767.98px){
      .hero-section{
        padding:124px 0 34px;
      }
      .hero-copy h1{
        font-size:clamp(2rem, 9vw, 2.85rem);
      }
      .hero-actions .btn-brand,
      .hero-actions .btn-soft{
        width:100%;
      }
      .trust-row,
      .entry-grid,
      .scene-grid,
      .roadmap,
      .faq-grid{
        grid-template-columns:1fr;
      }
      .scene-card.featured{
        grid-column:span 1;
      }
      .dashboard-shell{
        padding:18px;
      }
      .dashboard-grid{
        grid-template-columns:1fr;
      }
      .filter-section{
        padding-top:18px;
      }
      .section-block{
        padding:64px 0;
      }
      .feature-card,
      .sidebar-card,
      .entry-card,
      .scene-card,
      .plan-card,
      .faq-card,
      .cta-panel{
        padding:20px;
      }
      .cta-inner{
        flex-direction:column;
        align-items:flex-start;
      }
      .cta-actions{
        width:100%;
      }
      .cta-actions .btn{
        width:100%;
      }
    }

    @media (max-width: 575.98px){
      .site-navbar{
        padding:12px 14px;
      }
      .brand-mark{
        width:40px;
        height:40px;
        border-radius:14px;
      }
      .brand-title{
        font-size:16px;
      }
      .brand-sub{
        font-size:11px;
      }
      .hero-section{
        padding-top:118px;
      }
      .eyebrow{
        font-size:12px;
      }
      .dashboard-title strong{
        font-size:16px;
      }
      .dashboard-orb{
        min-height:180px;
      }
      .orb-copy strong{
        font-size:24px;
      }
      .compliance-strip{
        padding:18px;
      }
      .footer-bottom{
        flex-direction:column;
      }
    }
