:root{
      --bg: #fbfbff;
      --surface: #ffffff;
      --muted: #5a6472;
      --text: #171a22;
      --title: #0f1320;
      --border: rgba(18, 24, 40, .10);
      --shadow: 0 16px 40px rgba(17, 24, 39, .10);
      --shadow2: 0 10px 26px rgba(17, 24, 39, .10);
      --primary: #4a46ff;
      --primary2: #0ea5e9;
      --accent: #f97316;
      --good: #16a34a;
      --mid: #f59e0b;
      --radius-lg: 18px;
      --radius-md: 14px;
      --radius-sm: 12px;
      --focus: 0 0 0 4px rgba(74, 70, 255, .20);
      --container: 1120px;
    }

    *{ box-sizing: border-box; }
    html{ scroll-behavior: smooth; }
    body{
      margin: 0;
      font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "PingFang SC","Hiragino Sans GB","Microsoft YaHei", "Noto Sans SC", sans-serif;
      background:
        radial-gradient(900px 420px at 12% 8%, rgba(74,70,255,.14), transparent 60%),
        radial-gradient(700px 360px at 76% 12%, rgba(14,165,233,.14), transparent 55%),
        radial-gradient(900px 420px at 55% 78%, rgba(249,115,22,.10), transparent 60%),
        linear-gradient(180deg, #fbfbff 0%, #f7f7ff 55%, #fbfbff 100%);
      color: var(--text);
    }

    .skip-link{
      position: absolute;
      left: -999px;
      top: 12px;
      background: var(--surface);
      color: var(--title);
      border: 1px solid var(--border);
      padding: 10px 12px;
      border-radius: 10px;
      z-index: 9999;
      box-shadow: var(--shadow2);
    }
    .skip-link:focus{ left: 12px; outline: none; box-shadow: var(--focus), var(--shadow2); }

    .container{
      width: 100%;
      max-width: var(--container);
      margin: 0 auto;
      padding: 0 20px;
    }

    .site-header{
      position: sticky;
      top: 0;
      z-index: 60;
      background: rgba(251,251,255,.72);
      border-bottom: 1px solid rgba(18, 24, 40, .08);
      backdrop-filter: blur(10px);
    }

    .nav-container{
      height: 72px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
    }

    .brand-link{ display: inline-flex; align-items: center; text-decoration: none; }
    .ai-page-logo{ width: 170px; max-width: 170px; height: auto; }

    .nav-desktop{
      display: flex;
      align-items: center;
      gap: 18px;
      flex-wrap: nowrap;
    }
    .nav-link{
      text-decoration: none;
      color: rgba(15, 19, 32, .88);
      font-weight: 560;
      font-size: 14px;
      padding: 10px 10px;
      border-radius: 12px;
      transition: background .2s ease, color .2s ease, transform .2s ease;
      outline: none;
      white-space: nowrap;
    }
    .nav-link:hover{ background: rgba(74,70,255,.08); color: rgba(15,19,32,1); transform: translateY(-1px); }
    .nav-cta-secondary{
      background: rgba(74,70,255,.10);
      border: 1px solid rgba(74,70,255,.18);
    }

    .nav-toggle{
      display: none;
      align-items: center;
      justify-content: center;
      width: 44px;
      height: 44px;
      border-radius: 12px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.75);
      color: var(--title);
      cursor: pointer;
      transition: transform .18s ease, box-shadow .18s ease;
    }
    .nav-toggle:focus{ outline: none; box-shadow: var(--focus); }
    .nav-toggle:hover{ transform: translateY(-1px); box-shadow: 0 10px 22px rgba(17, 24, 39, .10); }
    .nav-toggle-line{
      width: 18px; height: 2px; background: currentColor; display: block;
      border-radius: 2px;
      margin: 2.8px 0;
    }

    .mobile-menu{
      position: fixed;
      inset: 0;
      background: rgba(11, 15, 24, .45);
      display: none;
      z-index: 80;
      padding: 14px;
    }
    .mobile-menu[aria-hidden="false"]{ display: block; }
    .mobile-menu.show{ display: block; }

    .mobile-menu{
      opacity: 0;
      transition: opacity .2s ease;
    }
    .mobile-menu.show{
      opacity: 1;
    }

    .mobile-menu > *{ max-width: var(--container); margin: 0 auto; }

    .mobile-menu-head{
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 14px 14px 12px;
      border: 1px solid rgba(255,255,255,.18);
      border-radius: 16px;
      background: rgba(255,255,255,.10);
      backdrop-filter: blur(10px);
      box-shadow: 0 20px 60px rgba(0,0,0,.25);
      color: rgba(255,255,255,.92);
    }
    .mobile-brand-name{ font-weight: 760; letter-spacing: .2px; }

    .mobile-close{
      width: 42px; height: 42px;
      border-radius: 12px;
      border: 1px solid rgba(255,255,255,.20);
      background: rgba(255,255,255,.08);
      color: rgba(255,255,255,.92);
      cursor: pointer;
      transition: transform .18s ease, background .18s ease;
    }
    .mobile-close:hover{ transform: translateY(-1px); background: rgba(255,255,255,.12); }
    .mobile-close:focus{ outline: none; box-shadow: 0 0 0 4px rgba(74,70,255,.22); }

    .mobile-menu-links{
      margin-top: 12px;
      border-radius: 16px;
      background: rgba(255,255,255,.10);
      backdrop-filter: blur(10px);
      border: 1px solid rgba(255,255,255,.18);
      box-shadow: 0 20px 60px rgba(0,0,0,.25);
      padding: 12px;
      display: grid;
      gap: 8px;
      overflow: auto;
      max-height: calc(100vh - 120px);
      color: rgba(255,255,255,.92);
    }
    .mobile-link{
      text-decoration: none;
      color: rgba(255,255,255,.92);
      font-weight: 650;
      padding: 12px 12px;
      border-radius: 14px;
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.06);
      transition: transform .18s ease, background .18s ease;
    }
    .mobile-link:hover{ transform: translateY(-1px); background: rgba(255,255,255,.11); }
    .mobile-link-cta{
      background: rgba(74,70,255,.20);
      border-color: rgba(74,70,255,.35);
    }
    .mobile-link-soft{
      background: rgba(14,165,233,.12);
      border-color: rgba(14,165,233,.28);
    }

    .hero{
      padding: 46px 0 12px;
    }
    .hero-container{
      display: grid;
      grid-template-columns: 1.06fr .94fr;
      gap: 22px;
      align-items: start;
    }

    .hero-badge{
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 10px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      box-shadow: 0 14px 30px rgba(17, 24, 39, .06);
      color: rgba(15,19,32,.92);
      font-weight: 650;
      font-size: 13px;
      margin-bottom: 16px;
      letter-spacing: .1px;
    }
    .badge-dot{
      width: 10px; height: 10px; border-radius: 50%;
      background: radial-gradient(circle at 30% 30%, #fff 0%, rgba(255,255,255,.0) 40%), linear-gradient(135deg, var(--primary), var(--primary2));
      box-shadow: 0 0 0 6px rgba(74,70,255,.12);
    }

    .hero-title{
      margin: 0;
      font-size: clamp(30px, 3.2vw, 46px);
      line-height: 1.08;
      letter-spacing: -0.6px;
      color: var(--title);
      font-weight: 860;
    }
    .hero-subtitle{
      margin: 14px 0 0;
      color: rgba(23,26,34,.82);
      line-height: 1.75;
      font-size: 15px;
      max-width: 58ch;
    }

    .hero-actions{
      margin-top: 18px;
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      align-items: center;
    }

    .btn{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 12px 14px;
      border-radius: 14px;
      text-decoration: none;
      border: 1px solid rgba(18, 24, 40, .10);
      font-weight: 750;
      font-size: 14px;
      cursor: pointer;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
      user-select: none;
      white-space: nowrap;
    }
    .btn:focus{ outline: none; box-shadow: var(--focus); }
    .btn:hover{ transform: translateY(-1px); box-shadow: 0 16px 30px rgba(17, 24, 39, .12); }

    .btn-primary{
      background: linear-gradient(135deg, rgba(74,70,255,1) 0%, rgba(14,165,233,1) 100%);
      border-color: rgba(74,70,255,.35);
      color: #fff;
    }
    .btn-outline{
      background: rgba(255,255,255,.72);
      border-color: rgba(74,70,255,.22);
      color: rgba(33,38,52,1);
    }
    .btn-soft{
      background: rgba(14,165,233,.10);
      border-color: rgba(14,165,233,.22);
      color: rgba(23,26,34,.95);
    }
    .btn-ghost{
      background: rgba(255,255,255,.65);
      color: rgba(23,26,34,.95);
      border-color: rgba(18, 24, 40, .10);
    }
    .btn-small{ padding: 10px 12px; border-radius: 12px; font-size: 13px; }

    .hero-meta{
      margin-top: 18px;
      display: grid;
      grid-template-columns: 1fr;
      gap: 12px;
      max-width: 640px;
    }
    .meta-item{
      display: flex;
      align-items: flex-start;
      gap: 12px;
      padding: 12px 12px;
      background: rgba(255,255,255,.60);
      border: 1px solid rgba(18, 24, 40, .09);
      border-radius: 16px;
      box-shadow: 0 16px 40px rgba(17, 24, 39, .06);
      transition: transform .18s ease, background .18s ease;
    }
    .meta-item:hover{ transform: translateY(-2px); background: rgba(255,255,255,.78); }
    .meta-icon{
      width: 38px; height: 38px;
      border-radius: 14px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(74,70,255,1);
      background: radial-gradient(circle at 20% 10%, rgba(255,255,255,.95), rgba(255,255,255,.0) 55%),
        linear-gradient(135deg, rgba(74,70,255,.16), rgba(14,165,233,.10));
      border: 1px solid rgba(74,70,255,.18);
      flex: 0 0 auto;
    }
    .meta-title{ font-weight: 850; color: rgba(15,19,32,.96); font-size: 14px; line-height: 1.2; }
    .meta-desc{ margin-top: 3px; color: rgba(23,26,34,.68); font-size: 13px; }

    .hero-right{
      position: relative;
      padding-top: 6px;
    }

    .hero-panel{
      background:
        radial-gradient(600px 240px at 15% 0%, rgba(74,70,255,.20), transparent 52%),
        radial-gradient(520px 240px at 90% 22%, rgba(14,165,233,.18), transparent 52%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.62));
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      box-shadow: var(--shadow);
      padding: 16px;
      transform-style: preserve-3d;
      transition: transform .18s ease, box-shadow .18s ease;
      min-height: 420px;
      overflow: hidden;
    }
    .hero-panel:hover{
      box-shadow: 0 22px 70px rgba(17,24,39,.18);
    }

    .panel-head{
      display: flex;
      flex-direction: column;
      gap: 4px;
      padding: 2px 6px 10px;
    }
    .panel-title{ font-weight: 920; font-size: 15px; letter-spacing: .2px; color: rgba(15,19,32,.95); }
    .panel-sub{ color: rgba(23,26,34,.70); font-size: 13px; }

    .panel-grid{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
      padding: 10px 6px 2px;
    }
    .kpi-card{
      border-radius: 16px;
      padding: 12px 12px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.66);
      transition: transform .18s ease, background .18s ease, border-color .18s ease;
      min-height: 110px;
      display: flex;
      flex-direction: column;
      gap: 8px;
      justify-content: center;
    }
    .kpi-card:hover{
      transform: translateY(-2px);
      background: rgba(255,255,255,.82);
      border-color: rgba(74,70,255,.18);
    }
    .kpi-icon{
      color: rgba(74,70,255,1);
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }
    .kpi-value{
      font-weight: 920;
      font-size: 16px;
      color: rgba(15,19,32,.95);
      letter-spacing: .1px;
    }
    .kpi-label{
      color: rgba(23,26,34,.68);
      font-size: 13px;
      line-height: 1.35;
    }

    .panel-foot{
      display: flex;
      justify-content: space-between;
      gap: 10px;
      padding: 12px 6px 4px;
      align-items: flex-end;
      border-top: 1px dashed rgba(18, 24, 40, .14);
      margin-top: 14px;
    }
    .pill{
      display: inline-flex;
      padding: 6px 10px;
      border-radius: 999px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.65);
      color: rgba(23,26,34,.82);
      font-weight: 700;
      font-size: 12px;
      margin-right: 8px;
      margin-bottom: 8px;
      white-space: nowrap;
    }
    .foot-row{ display: flex; flex-wrap: wrap; }
    .foot-note{ color: rgba(23,26,34,.68); font-size: 13px; line-height: 1.4; margin-top: 4px; }
    .mini-link{
      display: inline-flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
      color: rgba(74,70,255,1);
      font-weight: 850;
      padding: 10px 12px;
      border-radius: 14px;
      border: 1px solid rgba(74,70,255,.18);
      background: rgba(255,255,255,.65);
      transition: transform .18s ease, box-shadow .18s ease;
      white-space: nowrap;
    }
    .mini-link:hover{ transform: translateY(-1px); box-shadow: 0 18px 28px rgba(17,24,39,.12); }
    .mini-link-arrow{ color: rgba(15,19,32,.75); }

    .hero-float{
      position: absolute;
      right: -8px;
      top: 26px;
      display: flex;
      flex-direction: column;
      gap: 10px;
      pointer-events: none;
    }
    .float-chip{
      pointer-events: none;
      align-self: flex-end;
      background: rgba(255,255,255,.65);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 999px;
      padding: 10px 12px;
      box-shadow: 0 18px 40px rgba(17,24,39,.08);
      display: inline-flex;
      gap: 10px;
      align-items: center;
      color: rgba(15,19,32,.90);
      font-weight: 760;
      font-size: 13px;
      transform: translateY(0);
      animation: floaty 5s ease-in-out infinite;
    }
    .float-chip.subtle{
      animation-duration: 6.2s;
      opacity: .92;
      background: rgba(255,255,255,.55);
    }
    .chip-dot{
      width: 10px; height: 10px; border-radius: 50%;
      background: linear-gradient(135deg, rgba(249,115,22,1), rgba(74,70,255,1));
      box-shadow: 0 0 0 6px rgba(249,115,22,.10);
    }
    @keyframes floaty{
      0%,100%{ transform: translateY(0); }
      50%{ transform: translateY(-6px); }
    }

    .section{
      padding: 56px 0;
    }
    .section-soft{
      padding: 64px 0;
    }
    .section-head{
      margin-bottom: 24px;
    }
    .section-head-tight{ margin-bottom: 18px; }
    .section-kicker{
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-weight: 900;
      color: rgba(74,70,255,1);
      letter-spacing: .2px;
      font-size: 13px;
      text-transform: none;
      margin-bottom: 10px;
    }
    .section-title{
      margin: 0;
      font-size: clamp(22px, 2.2vw, 32px);
      letter-spacing: -0.35px;
      color: rgba(15,19,32,.97);
      font-weight: 920;
      line-height: 1.22;
    }
    .section-desc{
      margin: 10px 0 0;
      color: rgba(23,26,34,.72);
      line-height: 1.8;
      font-size: 14px;
      max-width: 78ch;
    }

    .about-grid{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      align-items: start;
    }
    .about-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 20px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.06);
      transition: transform .18s ease, box-shadow .18s ease;
    }
    .about-card:hover{ transform: translateY(-2px); box-shadow: 0 26px 70px rgba(17,24,39,.10); }
    .about-card-wide{ grid-column: 1 / -1; }
    .about-card-top{ display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
    .about-icon{
      width: 44px; height: 44px;
      border-radius: 16px;
      background: radial-gradient(circle at 30% 10%, rgba(255,255,255,.95), rgba(255,255,255,0) 50%),
        linear-gradient(135deg, rgba(74,70,255,.18), rgba(14,165,233,.12));
      border: 1px solid rgba(74,70,255,.18);
      display: flex; align-items: center; justify-content: center;
      color: rgba(74,70,255,1);
      flex: 0 0 auto;
    }

    .card-title{ margin: 0; font-weight: 930; font-size: 16px; color: rgba(15,19,32,.95); }
    .card-body{ margin: 0; color: rgba(23,26,34,.72); line-height: 1.75; font-size: 14px; }
    .card-body.small{ font-size: 13px; margin-top: 4px; }

    .check-list{
      margin: 14px 0 0;
      padding: 0;
      list-style: none;
      display: grid;
      gap: 10px;
    }
    .check-list li{
      display: flex;
      gap: 10px;
      align-items: flex-start;
      color: rgba(23,26,34,.74);
      font-size: 14px;
      line-height: 1.55;
    }
    .check{
      width: 20px; height: 20px;
      border-radius: 8px;
      display: inline-flex;
      align-items: center; justify-content: center;
      background: rgba(22,163,74,.12);
      border: 1px solid rgba(22,163,74,.18);
      color: rgba(22,163,74,1);
      font-weight: 950;
      flex: 0 0 auto;
      margin-top: 2px;
    }

    .badge-row{
      margin-top: 12px;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    .soft-badge{
      display: inline-flex;
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.62);
      color: rgba(23,26,34,.80);
      font-weight: 780;
      font-size: 13px;
      white-space: nowrap;
    }

    .about-cta-row{
      margin-top: 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }
    .link-muted{
      text-decoration: none;
      color: rgba(74,70,255,1);
      font-weight: 850;
      padding: 10px 0;
      display: inline-flex;
      align-items: center;
      gap: 10px;
    }
    .link-muted:hover{ text-decoration: underline; }

    .about-card-wide-top{
      display: flex;
      flex-direction: column;
      gap: 6px;
      margin-bottom: 12px;
    }
    .scene-grid{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }
    .scene-item{
      border-radius: 18px;
      background: rgba(255,255,255,.60);
      border: 1px solid rgba(18, 24, 40, .10);
      padding: 12px;
      transition: transform .18s ease, background .18s ease;
    }
    .scene-item:hover{ transform: translateY(-2px); background: rgba(255,255,255,.80); }
    .scene-title{ font-weight: 900; color: rgba(15,19,32,.95); }
    .scene-desc{ margin-top: 6px; color: rgba(23,26,34,.70); font-size: 13px; line-height: 1.45; }
    .about-card-wide-foot{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-top: 14px;
      padding-top: 14px;
      border-top: 1px dashed rgba(18, 24, 40, .14);
    }
    .micro-note{ color: rgba(23,26,34,.70); font-size: 13px; }

    .service-tabs{ display: grid; gap: 14px; }
    .tab-grid{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }
    .service-card{
      background: rgba(255,255,255,.72);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 20px;
      padding: 16px;
      box-shadow: 0 18px 50px rgba(17,24,39,.06);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      cursor: pointer;
      outline: none;
    }
    .service-card:focus{ box-shadow: var(--focus), 0 22px 70px rgba(17,24,39,.10); }
    .service-card:hover{ transform: translateY(-2px); box-shadow: 0 26px 70px rgba(17,24,39,.10); border-color: rgba(74,70,255,.16); }
    .service-card-head{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      margin-bottom: 10px;
    }
    .service-mark{
      width: 34px; height: 34px;
      border-radius: 14px;
      display: inline-flex;
      align-items: center; justify-content: center;
      font-weight: 920;
      color: rgba(74,70,255,1);
      background: linear-gradient(135deg, rgba(74,70,255,.14), rgba(14,165,233,.10));
      border: 1px solid rgba(74,70,255,.18);
      flex: 0 0 auto;
    }
    .service-title{
      margin: 0;
      font-size: 16px;
      font-weight: 940;
      color: rgba(15,19,32,.96);
      line-height: 1.2;
    }
    .service-list{
      margin: 0;
      padding-left: 18px;
      color: rgba(23,26,34,.72);
      line-height: 1.7;
      font-size: 14px;
      display: grid;
      gap: 8px;
    }
    .service-foot{
      margin-top: 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      border-top: 1px dashed rgba(18, 24, 40, .14);
      padding-top: 12px;
    }
    .service-tag{
      color: rgba(23,26,34,.68);
      font-weight: 780;
      font-size: 12px;
      background: rgba(255,255,255,.65);
      border: 1px solid rgba(18, 24, 40, .10);
      padding: 8px 10px;
      border-radius: 999px;
      white-space: nowrap;
    }
    .service-note{
      display: flex;
      gap: 12px;
      align-items: flex-start;
      background: rgba(255,255,255,.64);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 20px;
      padding: 14px 14px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .note-dot{
      width: 12px; height: 12px;
      border-radius: 50%;
      margin-top: 6px;
      background: linear-gradient(135deg, rgba(74,70,255,1), rgba(14,165,233,1));
      box-shadow: 0 0 0 6px rgba(74,70,255,.12);
      flex: 0 0 auto;
    }
    .note-text{ color: rgba(23,26,34,.72); line-height: 1.75; font-size: 14px; }

    .two-col{
      display: grid;
      grid-template-columns: 1.08fr .92fr;
      gap: 16px;
      align-items: start;
    }
    .process-steps{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.06);
    }
    .steps-head{ margin-bottom: 14px; }
    .sub-title{ margin: 0; font-weight: 930; color: rgba(15,19,32,.96); font-size: 16px; }
    .muted{ color: rgba(23,26,34,.68); line-height: 1.7; font-size: 14px; margin: 6px 0 0; }

    .step-list{ display: grid; gap: 12px; }
    .step-item{
      display: flex;
      gap: 12px;
      padding: 14px 12px;
      border-radius: 18px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      transition: transform .18s ease, background .18s ease;
    }
    .step-item:hover{ transform: translateY(-2px); background: rgba(255,255,255,.82); }
    .step-num{
      width: 34px; height: 34px;
      border-radius: 14px;
      display: flex;
      align-items: center; justify-content: center;
      font-weight: 950;
      color: rgba(74,70,255,1);
      background: linear-gradient(135deg, rgba(74,70,255,.16), rgba(14,165,233,.10));
      border: 1px solid rgba(74,70,255,.18);
      flex: 0 0 auto;
      margin-top: 3px;
    }
    .step-title{ font-weight: 910; color: rgba(15,19,32,.96); }
    .step-desc{ margin-top: 6px; color: rgba(23,26,34,.70); font-size: 14px; line-height: 1.6; }

    .capability-panel{
      background: rgba(255,255,255,.66);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      overflow: hidden;
    }
    .capability-top{ margin-bottom: 14px; }
    .capability-metric{
      border-radius: 18px;
      background: rgba(255,255,255,.58);
      border: 1px solid rgba(18, 24, 40, .10);
      padding: 14px;
      display: grid;
      gap: 10px;
      margin-top: 12px;
    }
    .metric-row{
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 12px;
    }
    .metric-label{ color: rgba(23,26,34,.66); font-weight: 800; font-size: 13px; }
    .metric-value{ font-weight: 920; color: rgba(15,19,32,.95); font-size: 13px; text-align: right; }

    .capability-cards{
      display: grid;
      gap: 12px;
      margin-top: 12px;
    }
    .cap-mini{
      border-radius: 18px;
      padding: 14px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      transition: transform .18s ease, background .18s ease;
    }
    .cap-mini:hover{ transform: translateY(-2px); background: rgba(255,255,255,.84); }
    .cap-mini-top{ display: flex; align-items: center; gap: 10px; }
    .cap-ico{ width: 30px; height: 30px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center;
      border: 1px solid rgba(74,70,255,.18); background: rgba(74,70,255,.10); flex: 0 0 auto;
    }
    .cap-mini-title{ font-weight: 930; color: rgba(15,19,32,.96); }
    .cap-mini-desc{ margin: 8px 0 0; color: rgba(23,26,34,.70); line-height: 1.6; font-size: 14px; }

    .capability-cta{
      margin-top: 14px;
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }

    .industry-grid{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
      margin-top: 8px;
    }
    .industry-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 20px;
      padding: 16px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      cursor: pointer;
      outline: none;
    }
    .industry-card:focus{ box-shadow: var(--focus), 0 22px 70px rgba(17,24,39,.10); }
    .industry-card:hover{ transform: translateY(-2px); box-shadow: 0 26px 70px rgba(17,24,39,.10); border-color: rgba(74,70,255,.16); }
    .industry-top{ display: flex; align-items: center; gap: 12px; }
    .industry-ico{
      width: 44px; height: 44px;
      border-radius: 16px;
      background: linear-gradient(135deg, rgba(74,70,255,.16), rgba(14,165,233,.10));
      border: 1px solid rgba(74,70,255,.18);
      display: flex; align-items: center; justify-content: center;
      font-size: 18px;
      flex: 0 0 auto;
    }
    .industry-title{ font-weight: 940; color: rgba(15,19,32,.96); }
    .industry-list{
      margin: 12px 0 0;
      padding-left: 18px;
      color: rgba(23,26,34,.72);
      line-height: 1.7;
      font-size: 14px;
      display: grid;
      gap: 8px;
    }
    .industry-foot{
      margin-top: 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      border-top: 1px dashed rgba(18, 24, 40, .14);
      padding-top: 12px;
    }
    .industry-pill{
      font-weight: 850;
      font-size: 12px;
      color: rgba(23,26,34,.72);
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      padding: 8px 10px;
      border-radius: 999px;
      white-space: nowrap;
    }

    .timeline{
      margin-top: 20px;
      border-radius: 22px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.60);
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      padding: 18px;
    }
    .timeline-head{ margin-bottom: 14px; }
    .timeline-rail{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 10px;
      align-items: start;
    }
    .timeline-item{ position: relative; }
    .timeline-dot{
      width: 12px; height: 12px; border-radius: 50%;
      background: linear-gradient(135deg, rgba(74,70,255,1), rgba(14,165,233,1));
      box-shadow: 0 0 0 6px rgba(74,70,255,.12);
      margin: 6px auto 10px;
    }
    .timeline-card{
      border-radius: 18px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.65);
      padding: 12px;
      transition: transform .18s ease, background .18s ease;
    }
    .timeline-card:hover{ transform: translateY(-2px); background: rgba(255,255,255,.84); }
    .timeline-title{ font-weight: 920; color: rgba(15,19,32,.95); }
    .timeline-desc{ margin-top: 6px; color: rgba(23,26,34,.70); font-size: 13px; line-height: 1.5; }

    .network-grid{
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 14px;
      align-items: stretch;
    }
    .network-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .network-card-accent{
      background:
        radial-gradient(520px 240px at 12% 0%, rgba(74,70,255,.18), transparent 50%),
        radial-gradient(520px 240px at 90% 18%, rgba(14,165,233,.16), transparent 52%),
        rgba(255,255,255,.70);
    }
    .simple-list{
      margin: 12px 0 0;
      padding-left: 18px;
      color: rgba(23,26,34,.72);
      line-height: 1.75;
      font-size: 14px;
      display: grid;
      gap: 10px;
    }
    .network-bottom{
      margin-top: 16px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .brand-strip{
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      align-items: center;
    }
    .strip-pill{
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      color: rgba(23,26,34,.75);
      font-weight: 820;
      font-size: 13px;
    }

    .process-two{
      display: grid;
      grid-template-columns: 1fr .92fr;
      gap: 16px;
      align-items: start;
    }
    .process-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }

    .accordion{ display: grid; gap: 10px; margin-top: 12px; }
    .acc-item{
      border-radius: 18px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.62);
      overflow: hidden;
      transition: border-color .18s ease, background .18s ease;
    }
    .acc-trigger{
      width: 100%;
      text-align: left;
      border: 0;
      background: transparent;
      padding: 14px 14px;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      font-weight: 920;
      color: rgba(15,19,32,.95);
      transition: background .18s ease;
    }
    .acc-trigger:focus{ outline: none; box-shadow: var(--focus); }
    .acc-item:hover{ background: rgba(255,255,255,.80); }
    .acc-icon{
      width: 28px; height: 28px;
      border-radius: 12px;
      display: inline-flex;
      align-items: center; justify-content: center;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.60);
      color: rgba(74,70,255,1);
      font-weight: 980;
      flex: 0 0 auto;
    }

    .acc-panel{
      max-height: 0;
      overflow: hidden;
      transition: max-height .25s ease;
    }
    .acc-panel.open{
      max-height: 300px;
    }
    .acc-body{
      padding: 0 14px 14px;
      color: rgba(23,26,34,.72);
      line-height: 1.75;
      font-size: 14px;
    }

    .process-side{ display: grid; gap: 14px; }
    .side-callout{
      background:
        radial-gradient(640px 260px at 20% 0%, rgba(249,115,22,.18), transparent 55%),
        radial-gradient(520px 240px at 92% 22%, rgba(74,70,255,.16), transparent 55%),
        rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .callout-badge{
      display: inline-flex;
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      color: rgba(23,26,34,.75);
      font-weight: 880;
      font-size: 13px;
      margin-bottom: 10px;
    }
    .callout-grid{
      margin-top: 14px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    .callout-item{
      border-radius: 18px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      padding: 12px;
    }
    .callout-ico{
      width: 34px; height: 34px;
      border-radius: 14px;
      display: inline-flex;
      align-items: center; justify-content: center;
      background: rgba(74,70,255,.10);
      border: 1px solid rgba(74,70,255,.18);
      color: rgba(74,70,255,1);
      font-size: 16px;
    }
    .callout-title{ margin-top: 10px; font-weight: 930; color: rgba(15,19,32,.95); font-size: 14px; }
    .callout-cta{
      margin-top: 14px;
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }

    .mini-network{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .tag-cloud{
      margin-top: 12px;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    .tag-btn{
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.62);
      border-radius: 999px;
      padding: 10px 12px;
      font-weight: 850;
      color: rgba(23,26,34,.80);
      cursor: pointer;
      transition: transform .18s ease, background .18s ease, border-color .18s ease;
      white-space: nowrap;
    }
    .tag-btn:hover{ transform: translateY(-1px); background: rgba(255,255,255,.84); border-color: rgba(74,70,255,.16); }
    .tag-btn:focus{ outline: none; box-shadow: var(--focus); }

    .mini-network-foot{ margin-top: 12px; }

    .section-divider{
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(18, 24, 40, .12), transparent);
      margin: 22px 0;
    }

    .case-grid{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
    }
    .case-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 16px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      transition: transform .18s ease, box-shadow .18s ease;
      outline: none;
      cursor: pointer;
      display: flex;
      flex-direction: column;
      min-height: 220px;
    }
    .case-card:focus{ box-shadow: var(--focus), 0 22px 70px rgba(17,24,39,.10); }
    .case-card:hover{ transform: translateY(-2px); box-shadow: 0 26px 70px rgba(17,24,39,.10); }
    .case-badge{
      display: inline-flex;
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      font-weight: 880;
      color: rgba(23,26,34,.76);
      font-size: 13px;
    }
    .case-title{
      margin: 10px 0 0;
      font-weight: 950;
      color: rgba(15,19,32,.96);
      line-height: 1.2;
      font-size: 16px;
    }
    .case-desc{
      margin: 10px 0 0;
      color: rgba(23,26,34,.70);
      line-height: 1.75;
      font-size: 14px;
    }
    .case-tags{
      margin-top: 12px;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .case-pill{
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      color: rgba(23,26,34,.74);
      font-weight: 840;
      font-size: 12px;
      white-space: nowrap;
    }
    .case-actions{
      margin-top: auto;
      padding-top: 12px;
      border-top: 1px dashed rgba(18, 24, 40, .14);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
    }
    .case-footnote{ color: rgba(23,26,34,.62); font-size: 13px; }

    .cases-bottom{
      margin-top: 16px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
      border-radius: 22px;
      padding: 16px;
      background: rgba(255,255,255,.66);
      border: 1px solid rgba(18, 24, 40, .10);
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .cases-quick-title{ font-weight: 950; color: rgba(15,19,32,.96); }
    .cases-quick-desc{ margin-top: 6px; color: rgba(23,26,34,.70); line-height: 1.7; font-size: 14px; }

    .article-row{
      display: grid;
      grid-template-columns: 1fr;
      gap: 12px;
    }
    .article-head{ display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; align-items: baseline; }
    .article-list{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }
    .article-item{
      text-decoration: none;
      background: rgba(255,255,255,.66);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 20px;
      padding: 14px;
      transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      outline: none;
    }
    .article-item:hover{ transform: translateY(-2px); background: rgba(255,255,255,.86); box-shadow: 0 26px 70px rgba(17,24,39,.10); }
    .article-item:focus{ box-shadow: var(--focus), 0 26px 70px rgba(17,24,39,.10); }
    .article-title{
      font-weight: 950; color: rgba(15,19,32,.96); line-height: 1.3;
    }
    .article-meta{
      margin-top: 8px;
      color: rgba(23,26,34,.65);
      font-size: 13px;
      line-height: 1.45;
    }

    .compare-grid{
      display: grid;
      grid-template-columns: .95fr 1.05fr;
      gap: 16px;
      align-items: start;
    }
    .compare-score{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .score-ring{
      position: relative;
      display: grid;
      place-items: center;
      border-radius: 50%;
      width: 260px; height: 260px;
      margin: 6px auto 0;
      background: radial-gradient(circle at 30% 10%, rgba(255,255,255,.85), rgba(255,255,255,.50));
      border: 1px solid rgba(18, 24, 40, .10);
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.35);
      overflow: hidden;
    }
    .ring-track{
      position: absolute;
      inset: 14px;
      border-radius: 50%;
      border: 10px solid rgba(74,70,255,.10);
    }
    .ring-progress{
      position: absolute;
      inset: 14px;
      border-radius: 50%;
      border: 10px solid transparent;
      border-top-color: rgba(74,70,255,.75);
      border-right-color: rgba(14,165,233,.65);
      transform: rotate(-40deg);
      animation: spinGlow 2.8s ease-in-out infinite;
    }
    @keyframes spinGlow{
      0%,100%{ transform: rotate(-40deg) scale(1); filter: saturate(1); }
      50%{ transform: rotate(25deg) scale(1.02); filter: saturate(1.2); }
    }
    .ring-center{
      position: relative;
      text-align: center;
      padding: 18px;
      z-index: 2;
    }
    .score-stars{
      color: rgba(249,115,22,1);
      font-size: 16px;
      letter-spacing: 2px;
      margin-bottom: 8px;
    }
    .score-value{
      font-weight: 980;
      font-size: 40px;
      color: rgba(15,19,32,.96);
      letter-spacing: -1px;
      display: flex;
      justify-content: center;
      align-items: baseline;
      gap: 6px;
    }
    .score-max{ font-size: 16px; color: rgba(23,26,34,.70); font-weight: 900; }
    .score-label{ margin-top: 8px; color: rgba(23,26,34,.70); font-size: 14px; line-height: 1.5; }
    .score-foot{ margin-top: 12px; text-align: center; }

    .compare-table-wrap{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .table-title-row{
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
      margin-bottom: 12px;
    }
    .table-note{ color: rgba(23,26,34,.64); font-size: 13px; font-weight: 780; }
    .table-scroll{ overflow: auto; border-radius: 18px; border: 1px solid rgba(18,24,40,.10); background: rgba(255,255,255,.60); }
    .compare-table{
      width: 100%;
      border-collapse: collapse;
      min-width: 700px;
    }
    .compare-table th, .compare-table td{
      padding: 12px 12px;
      border-bottom: 1px solid rgba(18, 24, 40, .08);
      vertical-align: top;
      text-align: left;
      font-size: 14px;
    }
    .compare-table thead th{
      background: rgba(255,255,255,.72);
      color: rgba(15,19,32,.95);
      font-weight: 950;
      position: sticky;
      top: 0;
      z-index: 1;
    }
    .compare-table tbody tr:hover td{ background: rgba(74,70,255,.06); }
    .good{
      display: inline-flex; padding: 6px 10px; border-radius: 999px;
      background: rgba(22,163,74,.12);
      border: 1px solid rgba(22,163,74,.18);
      color: rgba(22,163,74,1);
      font-weight: 950; margin-right: 8px;
      white-space: nowrap;
    }
    .mid{
      display: inline-flex; padding: 6px 10px; border-radius: 999px;
      background: rgba(245,158,11,.12);
      border: 1px solid rgba(245,158,11,.18);
      color: rgba(217,119,6,1);
      font-weight: 950; margin-right: 8px;
      white-space: nowrap;
    }

    .table-cta{
      margin-top: 12px;
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: flex-start;
    }

    .match-grid{
      display: grid;
      grid-template-columns: .95fr 1.05fr;
      gap: 16px;
      align-items: start;
    }
    .match-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .match-options{
      margin-top: 12px;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    .choice{
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.62);
      border-radius: 999px;
      padding: 10px 12px;
      font-weight: 880;
      color: rgba(23,26,34,.80);
      cursor: pointer;
      transition: transform .18s ease, background .18s ease, border-color .18s ease;
      white-space: nowrap;
    }
    .choice:hover{ transform: translateY(-1px); background: rgba(255,255,255,.84); border-color: rgba(74,70,255,.16); }
    .choice:focus{ outline: none; box-shadow: var(--focus); }

    .match-hint{
      margin-top: 14px;
      display: flex;
      gap: 10px;
      align-items: center;
      border-radius: 18px;
      padding: 12px;
      border: 1px dashed rgba(74,70,255,.28);
      background: rgba(74,70,255,.06);
      color: rgba(23,26,34,.72);
      line-height: 1.6;
      font-weight: 750;
      font-size: 13px;
    }
    .hint-ico{
      width: 26px; height: 26px;
      border-radius: 12px;
      display: inline-flex; align-items: center; justify-content: center;
      border: 1px solid rgba(74,70,255,.22);
      background: rgba(74,70,255,.14);
      color: rgba(74,70,255,1);
      font-weight: 950;
      flex: 0 0 auto;
    }
    .match-contact-row{
      margin-top: 14px;
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }

    .form-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .form-head{ margin-bottom: 12px; }
    .need-form{ margin-top: 6px; }
    .form-grid{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    .field{ display: grid; gap: 8px; }
    label{
      font-weight: 900;
      color: rgba(15,19,32,.94);
      font-size: 13px;
    }
    input, select, textarea{
      width: 100%;
      padding: 12px 12px;
      border-radius: 14px;
      border: 1px solid rgba(18, 24, 40, .12);
      background: rgba(255,255,255,.78);
      color: rgba(15,19,32,.96);
      font-size: 14px;
      outline: none;
      transition: box-shadow .18s ease, border-color .18s ease, background .18s ease;
    }
    textarea{ resize: vertical; min-height: 120px; }
    input:focus, select:focus, textarea:focus{
      box-shadow: var(--focus);
      border-color: rgba(74,70,255,.28);
      background: rgba(255,255,255,.92);
    }
    .form-foot{
      margin-top: 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }
    .form-privacy{
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 10px 12px;
      border-radius: 16px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.60);
      color: rgba(23,26,34,.65);
      font-size: 13px;
      font-weight: 750;
    }
    .lock-ico{ filter: grayscale(.2); }
    .form-messages{ width: 100%; margin-top: 10px; }
    .msg{
      padding: 12px 12px;
      border-radius: 16px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.75);
      color: rgba(23,26,34,.85);
      font-weight: 820;
      line-height: 1.6;
    }

    .pricing-grid{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      align-items: start;
    }
    .price-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .price-head{ margin-bottom: 14px; }
    .price-table{
      border-radius: 20px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.60);
      overflow: hidden;
    }
    .price-row{
      padding: 14px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      border-bottom: 1px solid rgba(18, 24, 40, .08);
    }
    .price-row:last-child{ border-bottom: 0; }
    .price-type{ font-weight: 950; color: rgba(15,19,32,.96); }
    .price-sub{ margin-top: 6px; color: rgba(23,26,34,.68); font-size: 13px; line-height: 1.5; }
    .price-badge{
      font-weight: 980;
      border-radius: 999px;
      padding: 8px 10px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.70);
      color: rgba(15,19,32,.92);
      white-space: nowrap;
    }
    .price-note{ margin-top: 6px; color: rgba(23,26,34,.66); font-size: 13px; text-align: right; line-height: 1.4; }
    .price-actions{
      margin-top: 14px;
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }

    .price-side{ display: grid; gap: 14px; }
    .supply-card{
      background:
        radial-gradient(600px 240px at 12% 0%, rgba(74,70,255,.16), transparent 55%),
        radial-gradient(520px 240px at 90% 22%, rgba(249,115,22,.12), transparent 55%),
        rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .supply-head{ margin-bottom: 12px; }
    .supply-list{
      display: grid;
      gap: 10px;
      margin-top: 12px;
    }
    .supply-item{
      display: flex;
      gap: 12px;
      align-items: center;
      padding: 12px 12px;
      border-radius: 18px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      transition: transform .18s ease, background .18s ease;
    }
    .supply-item:hover{ transform: translateY(-2px); background: rgba(255,255,255,.84); }
    .supply-ico{
      width: 28px; height: 28px;
      border-radius: 12px;
      display: inline-flex;
      align-items: center; justify-content: center;
      font-weight: 980;
      color: rgba(74,70,255,1);
      background: rgba(74,70,255,.10);
      border: 1px solid rgba(74,70,255,.18);
      flex: 0 0 auto;
    }
    .supply-text{ color: rgba(23,26,34,.72); font-weight: 820; font-size: 14px; line-height: 1.5; }
    .supply-foot{ margin-top: 14px; display: flex; justify-content: flex-start; }

    .simple-note-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .quick-links{ display: flex; gap: 14px; flex-wrap: wrap; margin-top: 12px; }
    .quick-links a{ text-decoration: none; color: rgba(74,70,255,1); font-weight: 880; }
    .quick-links a:hover{ text-decoration: underline; }

    .training-grid{
      display: grid;
      grid-template-columns: 1.04fr .96fr;
      gap: 16px;
      align-items: start;
    }
    .training-card, .review-panel{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .training-top{ margin-bottom: 12px; }
    .training-list{ margin-top: 12px; display: grid; gap: 12px; }
    .training-item{
      display: flex;
      gap: 12px;
      align-items: flex-start;
      padding: 12px;
      border-radius: 18px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      transition: transform .18s ease, background .18s ease;
    }
    .training-item:hover{ transform: translateY(-2px); background: rgba(255,255,255,.84); }
    .training-dot{
      width: 12px; height: 12px;
      border-radius: 50%;
      margin-top: 5px;
      background: linear-gradient(135deg, rgba(74,70,255,1), rgba(14,165,233,1));
      box-shadow: 0 0 0 6px rgba(74,70,255,.12);
      flex: 0 0 auto;
    }
    .training-name{ font-weight: 950; color: rgba(15,19,32,.96); }
    .training-desc{ margin-top: 6px; color: rgba(23,26,34,.70); font-size: 13px; line-height: 1.5; }
    .training-foot{ margin-top: 14px; display: flex; gap: 10px; flex-wrap: wrap; }

    .review-grid{
      margin-top: 14px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    .review-card{
      border-radius: 20px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.62);
      padding: 14px;
      transition: transform .18s ease, background .18s ease;
      cursor: pointer;
      outline: none;
    }
    .review-card:focus{ box-shadow: var(--focus); }
    .review-card:hover{ transform: translateY(-2px); background: rgba(255,255,255,.84); }
    .review-top{ display: flex; gap: 12px; align-items: center; }
    .review-avatar{
      width: 40px; height: 40px;
      border-radius: 16px;
      display: inline-flex;
      align-items: center; justify-content: center;
      background: rgba(74,70,255,.10);
      border: 1px solid rgba(74,70,255,.18);
      color: rgba(74,70,255,1);
      font-weight: 980;
      flex: 0 0 auto;
    }
    .review-name{ font-weight: 950; color: rgba(15,19,32,.95); font-size: 14px; }
    .review-meta{ margin-top: 3px; color: rgba(23,26,34,.66); font-size: 12.5px; font-weight: 800; }
    .review-text{ margin: 12px 0 0; color: rgba(23,26,34,.72); line-height: 1.75; font-size: 14px; }

    .review-footer{ margin-top: 14px; display: flex; justify-content: flex-start; }

    .support-row{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
    .support-pill{
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      color: rgba(23,26,34,.72);
      font-weight: 860;
      font-size: 13px;
    }

    .help-grid{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      align-items: start;
    }
    .help-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .help-card-accent{
      background:
        radial-gradient(620px 260px at 14% 0%, rgba(14,165,233,.18), transparent 55%),
        radial-gradient(520px 240px at 92% 22%, rgba(74,70,255,.16), transparent 55%),
        rgba(255,255,255,.70);
    }
    .pill-wrap{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
    .help-actions{ margin-top: 14px; display: flex; gap: 10px; flex-wrap: wrap; }

    .faq-wrap{
      display: grid;
      grid-template-columns: 1fr .42fr;
      gap: 16px;
      align-items: start;
    }
    .faq-side-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      position: sticky;
      top: 92px;
    }
    .faq-side-actions{ margin-top: 12px; display: flex; gap: 10px; flex-wrap: wrap; }
    .divider-soft{ height: 1px; background: rgba(18, 24, 40, .10); margin: 14px 0; border-radius: 999px; }
    .quick-contact{ display: grid; gap: 10px; }
    .contact-row{ display: flex; gap: 10px; align-items: center; }
    .contact-ico{
      width: 28px; height: 28px;
      border-radius: 12px;
      display: inline-flex; align-items: center; justify-content: center;
      background: rgba(74,70,255,.10);
      border: 1px solid rgba(74,70,255,.18);
      color: rgba(74,70,255,1);
      flex: 0 0 auto;
    }

    .wiki-grid{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
    }
    .wiki-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 16px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      transition: transform .18s ease, background .18s ease;
      cursor: pointer;
      outline: none;
    }
    .wiki-card:hover{ transform: translateY(-2px); background: rgba(255,255,255,.86); }
    .wiki-title{ margin: 0; font-weight: 950; color: rgba(15,19,32,.96); font-size: 16px; }
    .wiki-desc{ margin-top: 10px; color: rgba(23,26,34,.70); line-height: 1.75; font-size: 14px; }
    .wiki-card a{ margin-top: 10px; display: inline-flex; }

    .news-grid{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }
    .news-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 16px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
    }
    .news-card:hover{ transform: translateY(-2px); background: rgba(255,255,255,.86); box-shadow: 0 26px 70px rgba(17,24,39,.10); }
    .news-title{ margin: 0; font-weight: 960; color: rgba(15,19,32,.96); font-size: 16px; }
    .news-desc{ margin-top: 10px; color: rgba(23,26,34,.70); line-height: 1.75; font-size: 14px; }
    .news-actions{ margin-top: 14px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px dashed rgba(18, 24, 40, .14); padding-top: 12px; }
    .news-pill{
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      color: rgba(23,26,34,.70);
      font-weight: 860;
      font-size: 12.5px;
      white-space: nowrap;
    }

    .news-bottom{
      margin-top: 16px;
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: center;
    }

    .contact-grid{
      display: grid;
      grid-template-columns: .98fr 1.02fr;
      gap: 16px;
      align-items: start;
    }
    .contact-card{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .contact-card-head{ margin-bottom: 12px; }

    .contact-lines{ display: grid; gap: 12px; margin-top: 12px; }
    .contact-line{
      display: flex;
      gap: 12px;
      align-items: flex-start;
      padding: 12px;
      border-radius: 18px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      transition: transform .18s ease, background .18s ease;
    }
    .contact-line:hover{ transform: translateY(-2px); background: rgba(255,255,255,.86); }
    .contact-icon{
      width: 34px; height: 34px;
      border-radius: 16px;
      display: inline-flex; align-items: center; justify-content: center;
      background: rgba(74,70,255,.10);
      border: 1px solid rgba(74,70,255,.18);
      color: rgba(74,70,255,1);
      flex: 0 0 auto;
    }
    .contact-label{
      color: rgba(23,26,34,.66);
      font-weight: 850;
      font-size: 13px;
      margin-bottom: 6px;
    }
    .contact-value{
      color: rgba(15,19,32,.96);
      font-weight: 920;
      text-decoration: none;
    }
    .contact-value:hover{ text-decoration: underline; }

    .divider-soft{ height: 1px; background: rgba(18, 24, 40, .10); border-radius: 999px; }

    .contact-social{
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      margin-top: 14px;
    }

    .qr-panel{
      margin-top: 14px;
      border-radius: 20px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.62);
      padding: 14px;
    }
    .qr-head{ margin-bottom: 10px; }
    .qr-title{ font-weight: 950; color: rgba(15,19,32,.96); }
    .qr-desc{ margin-top: 6px; color: rgba(23,26,34,.68); line-height: 1.6; font-size: 13px; }

    .qr-img-wrap{
      border-radius: 18px;
      overflow: hidden;
      border: 1px solid rgba(18,24,40,.10);
      background: rgba(255,255,255,.78);
      padding: 10px;
    }
    .qr-img{
      width: 100%;
      max-width: 220px;
      height: auto;
      display: block;
      margin: 0 auto;
    }

    .contact-form-wrap{ display: grid; gap: 14px; }
    .compact .form-grid{ grid-template-columns: 1fr 1fr; }

    .contact-links{
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 16px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
    }
    .contact-links-title{ font-weight: 950; color: rgba(15,19,32,.96); margin-bottom: 10px; }
    .quick-link-row{ display: flex; flex-wrap: wrap; gap: 14px; }

    .join-card{
      background:
        radial-gradient(680px 260px at 10% 0%, rgba(74,70,255,.16), transparent 55%),
        radial-gradient(520px 240px at 90% 30%, rgba(249,115,22,.12), transparent 55%),
        rgba(255,255,255,.70);
      border: 1px solid rgba(18, 24, 40, .10);
      border-radius: 22px;
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      overflow: hidden;
    }
    .join-head .sub-title{ margin-top: 8px; }
    .join-badge{
      display: inline-flex;
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(18, 24, 40, .10);
      color: rgba(23,26,34,.76);
      font-weight: 900;
      font-size: 13px;
    }
    .join-grid{
      margin-top: 14px;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }
    .join-item{
      border-radius: 20px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.62);
      padding: 14px;
      transition: transform .18s ease, background .18s ease;
      min-height: 136px;
    }
    .join-item:hover{ transform: translateY(-2px); background: rgba(255,255,255,.86); }
    .join-ico{
      width: 36px; height: 36px;
      border-radius: 16px;
      display: inline-flex;
      align-items: center; justify-content: center;
      background: rgba(74,70,255,.10);
      border: 1px solid rgba(74,70,255,.18);
      color: rgba(74,70,255,1);
      font-size: 16px;
    }
    .join-title{ margin-top: 12px; font-weight: 950; color: rgba(15,19,32,.96); }
    .join-desc{ margin-top: 8px; color: rgba(23,26,34,.70); line-height: 1.6; font-size: 13.5px; }
    .join-cta{ margin-top: 14px; display: flex; gap: 10px; flex-wrap: wrap; }

    .quick-section{
      border-radius: 22px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.66);
      padding: 18px;
      box-shadow: 0 18px 50px rgba(17,24,39,.05);
      display: grid;
      gap: 14px;
    }
    .quick-links-head{ display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; align-items: baseline; }
    .friend-links{ display: flex; flex-wrap: wrap; gap: 12px; }
    .friend-links a{
      text-decoration: none;
      color: rgba(74,70,255,1);
      font-weight: 900;
      padding: 10px 12px;
      border-radius: 999px;
      border: 1px solid rgba(74,70,255,.18);
      background: rgba(255,255,255,.62);
      transition: transform .18s ease, background .18s ease;
    }
    .friend-links a:hover{ transform: translateY(-1px); background: rgba(255,255,255,.86); }
    .latest-entry{ display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-start; }

    .site-footer{
      background: rgba(255,255,255,.72);
      border-top: 1px solid rgba(18, 24, 40, .10);
      padding: 28px 0 26px;
      color: rgba(15,19,32,.92);
    }
    .footer-inner{ display: grid; gap: 18px; }
    .footer-top{
      display: grid;
      grid-template-columns: 1.15fr .85fr .85fr .85fr;
      gap: 16px;
      align-items: start;
    }
    .footer-brand{ display: flex; gap: 14px; align-items: flex-start; }
    .footer-logo-wrap{ width: 62px; height: 62px; border-radius: 22px; border: 1px solid rgba(18,24,40,.10); background: rgba(255,255,255,.80); display: grid; place-items: center; padding: 8px; }
    .footer-logo{ width: 48px; height: auto; display: block; }
    .footer-name{ font-weight: 980; font-size: 16px; color: rgba(15,19,32,.96); }
    .footer-desc{ margin-top: 8px; color: rgba(23,26,34,.68); line-height: 1.7; font-size: 13.5px; }
    .footer-title{ font-weight: 950; margin-bottom: 10px; }
    .footer-links{ display: grid; gap: 10px; }
    .footer-links a, .footer-link-text{
      text-decoration: none;
      color: rgba(23,26,34,.78);
      font-weight: 820;
      font-size: 14px;
    }
    .footer-links a:hover{ text-decoration: underline; color: rgba(74,70,255,1); }

    .footer-cta{ display: grid; gap: 10px; }
    .footer-mini{ margin-top: 10px; }
    .footer-mini .ai-page-home-link{
      text-decoration: none;
      color: rgba(74,70,255,1);
      font-weight: 900;
      border: 1px solid rgba(74,70,255,.18);
      background: rgba(255,255,255,.65);
      padding: 10px 12px;
      border-radius: 14px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: fit-content;
    }
    .footer-mini .ai-page-home-link:hover{ text-decoration: underline; }

    .footer-bottom{
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
      padding-top: 14px;
      border-top: 1px dashed rgba(18, 24, 40, .14);
    }
    .footer-bottom-links{ display: flex; gap: 14px; flex-wrap: wrap; }
    .footer-bottom-links a{
      text-decoration: none;
      color: rgba(23,26,34,.74);
      font-weight: 860;
      font-size: 14px;
    }
    .footer-bottom-links a:hover{ color: rgba(74,70,255,1); text-decoration: underline; }

    .to-top{
      position: fixed;
      right: 16px;
      bottom: 16px;
      z-index: 70;
      width: 46px;
      height: 46px;
      border-radius: 16px;
      border: 1px solid rgba(18, 24, 40, .10);
      background: rgba(255,255,255,.78);
      color: rgba(15,19,32,.92);
      box-shadow: 0 22px 60px rgba(0,0,0,.12);
      cursor: pointer;
      display: none;
      align-items: center;
      justify-content: center;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
    }
    .to-top:hover{ transform: translateY(-2px); background: rgba(255,255,255,.92); }
    .to-top:focus{ outline: none; box-shadow: var(--focus), 0 22px 60px rgba(0,0,0,.12); }
    .to-top-text{ display: none; }

    .float-customer{
      position: fixed;
      left: 16px;
      bottom: 16px;
      z-index: 70;
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 12px 14px;
      border-radius: 999px;
      border: 1px solid rgba(74,70,255,.18);
      background: rgba(255,255,255,.80);
      box-shadow: 0 22px 60px rgba(0,0,0,.12);
      color: rgba(15,19,32,.95);
      font-weight: 950;
      transition: transform .18s ease, background .18s ease;
    }
    .float-customer:hover{ transform: translateY(-2px); background: rgba(255,255,255,.94); }
    .float-dot{
      width: 12px; height: 12px; border-radius: 50%;
      background: linear-gradient(135deg, rgba(74,70,255,1), rgba(14,165,233,1));
      box-shadow: 0 0 0 6px rgba(74,70,255,.12);
    }

    [data-tilt="true"]{ will-change: transform; }

    .reveal{
      opacity: 0;
      transform: translateY(14px);
      transition: opacity .55s ease, transform .55s ease;
    }
    .reveal.show{
      opacity: 1;
      transform: translateY(0);
    }

    @media (max-width: 980px){
      .nav-desktop{ display: none; }
      .nav-toggle{ display: inline-flex; }
      .hero-container{ grid-template-columns: 1fr; }
      .hero-float{ right: 10px; top: 20px; }
      .ai-page-logo{ width: 150px; max-width: 150px; }
      .about-grid{ grid-template-columns: 1fr; }
      .about-card-wide{ grid-column: auto; }
      .scene-grid{ grid-template-columns: 1fr 1fr; }
      .tab-grid{ grid-template-columns: 1fr; }
      .two-col{ grid-template-columns: 1fr; }
      .industry-grid{ grid-template-columns: 1fr; }
      .timeline-rail{ grid-template-columns: 1fr 1fr; }
      .network-grid{ grid-template-columns: 1fr; }
      .process-two{ grid-template-columns: 1fr; }
      .faq-wrap{ grid-template-columns: 1fr; }
      .faq-side-card{ position: static; }
      .case-grid{ grid-template-columns: 1fr; }
      .article-list{ grid-template-columns: 1fr; }
      .compare-grid{ grid-template-columns: 1fr; }
      .match-grid{ grid-template-columns: 1fr; }
      .pricing-grid{ grid-template-columns: 1fr; }
      .training-grid{ grid-template-columns: 1fr; }
      .review-grid{ grid-template-columns: 1fr; }
      .help-grid{ grid-template-columns: 1fr; }
      .wiki-grid{ grid-template-columns: 1fr; }
      .news-grid{ grid-template-columns: 1fr; }
      .contact-grid{ grid-template-columns: 1fr; }
      .footer-top{ grid-template-columns: 1fr; }
      .join-grid{ grid-template-columns: 1fr; }
      .form-grid{ grid-template-columns: 1fr; }
      .compact .form-grid{ grid-template-columns: 1fr; }
      .to-top{ width: 46px; height: 46px; }
      .to-top-text{ display: none; }
      .hero-panel{ min-height: auto; }
      .panel-grid{ grid-template-columns: 1fr 1fr; }
    }

    @media (prefers-reduced-motion: reduce){
      html{ scroll-behavior: auto; }
      .float-chip, .ring-progress{ animation: none !important; }
      .reveal{ transition: none; }
      .service-card, .case-card, .industry-card, .review-card, .kpi-card, .meta-item, .step-item, .timeline-card, .choice, .tag-btn, .join-item, .news-card, .article-item, .wiki-card{
        transition: none !important;
      }
      .to-top{ transition: none !important; }
    }