
    /* ===== TOKENS ===== */
    :root {
      --navy: #0C1F36;
      --navy-dark: #060F1C;
      --navy-mid: #132D4A;
      --gold: #C9971A;
      --gold-light: #DDB84A;
      --white: #FFFFFF;
      --snow: #F5F6F8;
      --smoke: #E8EAED;
      --ink: #1A1D22;
      --stone: #5F6670;
      --silver: #959CA6;
      --primary: var(--navy);
      --primary-dark: var(--navy-dark);
      --accent: var(--gold);
      --accent-light: var(--gold-light);
      --bg: var(--white);
      --bg-light: var(--snow);
      --text: var(--ink);
      --text-secondary: var(--stone);
      --text-muted: var(--silver);
      --border: var(--smoke);
      --max-width: 1200px;
    }

    /* ===== RESET ===== */
    *,
    *::before,
    *::after {
      margin: 0;
      padding: 0;
      box-sizing: border-box
    }

    html {
      font-size: 16px;
      -webkit-font-smoothing: antialiased
    }

    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", sans-serif;
      color: var(--text);
      background: var(--bg);
      line-height: 1.6
    }

    a {
      text-decoration: none;
      color: inherit
    }

    ul {
      list-style: none
    }

    /* ===== SECTION ===== */
    .sec-wide {
      padding: 72px 0;
      background: var(--bg);
      position: relative
    }

    .wrap {
      max-width: var(--max-width);
      margin: 0 auto;
      padding: 0 40px;
      position: relative;
      z-index: 1
    }

    /* ===== HEADER ===== */
    .process-header {
      margin-bottom: 42px;
      max-width: 720px
    }

    .label {
      display: inline-block;
      font-size: 0.7rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.14em;
      color: var(--accent);
      margin-bottom: 14px
    }

    h2 {
      font-size: clamp(1.5rem, 3.2vw, 2.3rem);
      font-weight: 700;
      line-height: 1.15;
      letter-spacing: -0.02em;
      color: var(--primary)
    }

    .sec-sub {
      color: var(--text-secondary);
      font-size: 0.92rem;
      line-height: 1.65;
      max-width: 560px;
      margin-top: 10px
    }

    /* ===== PROCESS GRID - Editorial Layout ===== */
    .process-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 18px 30px;
      position: relative
    }

    /* subtle horizontal gold line across the grid */
    .process-grid::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      right: 0;
      height: 1px;
      background: linear-gradient(90deg,
          transparent 0%,
          rgba(201, 151, 26, 0.2) 20%,
          rgba(201, 151, 26, 0.35) 50%,
          rgba(201, 151, 26, 0.2) 80%,
          transparent 100%);
      z-index: 0;
      pointer-events: none
    }

    .process-item {
      position: relative;
      padding: 48px 21px 33px;
      min-height: 240px;
      display: flex;
      flex-direction: column;
      z-index: 1;
      transition: background 0.25s ease
    }

    .process-item:nth-child(even) {
      transform: translateY(48px)
    }

    .process-item:hover {
      background: var(--bg-light)
    }

    /* oversized background number */
    .process-item-bg {
      position: absolute;
      top: -6px;
      left: 6px;
      font-family: 'Georgia', 'Times New Roman', serif;
      font-size: clamp(4.1rem, 6.8vw, 6.4rem);
      font-weight: 700;
      color: var(--navy);
      opacity: 0.05;
      line-height: 1;
      letter-spacing: -0.04em;
      z-index: 0;
      pointer-events: none;
      user-select: none
    }

    /* gold accent line — removed */

    .process-item-icon {
      position: relative;
      z-index: 1;
      width: 33px;
      height: 33px;
      color: var(--accent);
      margin-bottom: 21px;
      margin-left: 6px;
      flex-shrink: 0
    }

    .process-item-num {
      position: relative;
      z-index: 1;
      font-size: 0.68rem;
      font-weight: 700;
      color: var(--accent);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      margin-bottom: 10px
    }

    .process-item h4 {
      position: relative;
      z-index: 1;
      font-size: 1rem;
      font-weight: 700;
      color: var(--primary);
      margin-bottom: 10px;
      line-height: 1.35;
      max-width: 220px
    }

    .process-item p {
      position: relative;
      z-index: 1;
      font-size: 0.82rem;
      color: var(--text-secondary);
      line-height: 1.7;
      max-width: 240px
    }

    /* ===== TABLET ===== */
    @media(max-width:1024px) {
      .sec-wide {
        padding: 68px 0
      }

      .wrap {
        padding: 0 28px
      }

      .process-header {
        margin-bottom: 48px
      }

      .process-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px 22px
      }

      .process-item {
        padding: 40px 20px 28px;
        min-height: 220px
      }

      .process-item:nth-child(even) {
        transform: translateY(36px)
      }

      .process-item-icon {
        width: 30px;
        height: 30px;
        margin-bottom: 18px
      }

      .process-item h4 {
        font-size: 0.94rem;
        max-width: 100%
      }

      .process-item p {
        font-size: 0.8rem;
        max-width: 100%
      }
    }

    /* ===== MOBILE ===== */
    @media(max-width:768px) {
      .sec-wide {
        padding: 40px 0
      }

      .wrap {
        padding: 0 16px
      }

      h2 {
        font-size: 1.2rem
      }

      .sec-sub {
        font-size: 0.8rem
      }

      .process-header {
        margin-bottom: 28px
      }

      .process-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px 14px
      }

      .process-grid::before {
        display: none
      }

      .process-item {
        padding: 20px 12px 16px;
        min-height: auto;
        border: none;
        transform: none !important
      }

      .process-item-bg {
        left: auto;
        right: -4px;
        top: 10px;
        font-size: 3rem;
        opacity: 0.04
      }

      .process-item-icon {
        width: 22px;
        height: 22px;
        margin-bottom: 10px;
        margin-left: 0
      }

      .process-item-num {
        font-size: 0.6rem;
        margin-bottom: 6px
      }

      .process-item h4 {
        font-size: 0.84rem;
        margin-bottom: 6px
      }

      .process-item p {
        font-size: 0.72rem;
        line-height: 1.45
      }
    }

    /* ===== SMALL MOBILE ===== */
    @media(max-width:400px) {
      .sec-wide {
        padding: 32px 0
      }

      .wrap {
        padding: 0 12px
      }

      h2 {
        font-size: 1.1rem
      }

      .sec-sub {
        font-size: 0.76rem
      }

      .process-grid {
        gap: 8px 10px
      }

      .process-item {
        padding: 16px 8px 12px
      }

      .process-item-bg {
        font-size: 2.6rem
      }

      .process-item-icon {
        width: 20px;
        height: 20px;
        margin-bottom: 8px
      }

      .process-item h4 {
        font-size: 0.78rem
      }

      .process-item p {
        font-size: 0.68rem
      }
    }
  