:root{
      --bg0:#fff7fb;
      --bg1:#ffffff;
      --text:#1f2430;
      --muted:#596275;
      --muted2:#7a859a;
      --border:rgba(23,33,56,.12);
      --shadow: 0 10px 30px rgba(18, 32, 64, .10);
      --shadow2: 0 6px 18px rgba(18, 32, 64, .10);
      --brandA:#ff4fd8;
      --brandB:#6c5cff;
      --brandC:#2dd4ff;
      --brandD:#22c55e;
      --brandE:#f59e0b;
      --card:#ffffff;
      --btnText:#0b1020;
      --chipBg: rgba(108, 92, 255, .10);
      --chipBd: rgba(108, 92, 255, .20);
      --ring: 0 0 0 4px rgba(108, 92, 255, .18);
      --container: 1120px;
      --radius-xl: 28px;
      --radius-lg: 18px;
      --radius-md: 14px;
      --radius-sm: 12px;
      --ease: cubic-bezier(.2,.8,.2,1);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: ui-sans-serif, system-ui, -apple-system, "PingFang SC","Hiragino Sans GB","Microsoft YaHei", "Noto Sans SC", Arial, sans-serif;
      color:var(--text);
      background:
        radial-gradient(1200px 500px at 18% -10%, rgba(255,79,216,.18), transparent 55%),
        radial-gradient(900px 420px at 78% 0%, rgba(108,92,255,.20), transparent 58%),
        radial-gradient(900px 420px at 20% 40%, rgba(45,212,255,.12), transparent 55%),
        linear-gradient(180deg, var(--bg0), var(--bg1) 35%, #fff 100%);
    }
    a{color:inherit; text-decoration:none}
    img{max-width:100%; height:auto; display:block}
    .container{
      width: min(var(--container), calc(100% - 32px));
      margin: 0 auto;
    }

    .skip{
      position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;
    }
    .skip:focus{
      left:16px; top:16px; width:auto; height:auto; padding:10px 14px;
      background:#fff; border:1px solid var(--border); border-radius:12px; z-index:1000;
      box-shadow: var(--shadow2);
    }

    header{
      position:sticky; top:0; z-index:50;
      backdrop-filter: blur(10px);
      background: rgba(255,255,255,.72);
      border-bottom: 1px solid rgba(23,33,56,.08);
    }
    .navWrap{
      display:flex; align-items:center; justify-content:space-between;
      gap:16px; padding: 14px 0;
    }
    .brand{
      display:flex; align-items:center; gap:12px; min-width: 220px;
    }
    .brandLogo{
      width:38px; height:38px; border-radius:14px;
      background: linear-gradient(135deg, rgba(255,79,216,.18), rgba(108,92,255,.18));
      display:flex; align-items:center; justify-content:center;
      border:1px solid rgba(108,92,255,.18);
      box-shadow: 0 10px 22px rgba(108, 92, 255, .12);
      overflow:hidden;
      flex:0 0 auto;
    }
    .brandLogo img{width:100%; height:100%; object-fit:contain; background:transparent}
    .brandText{
      display:flex; flex-direction:column; line-height:1.1;
    }
    .brandText strong{font-size:14px; letter-spacing:.2px}
    .brandText span{font-size:12px; color:var(--muted)}
    nav .menu{
      display:flex; align-items:center; gap:14px; flex-wrap:wrap;
      justify-content:flex-end;
    }
    .navLink{
      font-size:13px; color:rgba(31,36,48,.86);
      padding:8px 10px; border-radius:12px;
      border:1px solid transparent;
      transition: transform .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease);
      white-space:nowrap;
    }
    .navLink:hover{
      background: rgba(108,92,255,.08);
      border-color: rgba(108,92,255,.18);
      transform: translateY(-1px);
    }
    .navRight{
      display:flex; align-items:center; gap:10px; justify-content:flex-end; min-width: 220px;
    }
    .ghostBtn{
      border:1px solid rgba(23,33,56,.14);
      background: rgba(255,255,255,.72);
      color: rgba(31,36,48,.92);
      padding:10px 12px;
      border-radius: 14px;
      font-size:13px;
      transition: transform .18s var(--ease), box-shadow .18s var(--ease), background .18s var(--ease);
      box-shadow: 0 6px 16px rgba(18, 32, 64, .06);
      display:flex; align-items:center; gap:8px;
    }
    .ghostBtn:focus{outline:none; box-shadow: var(--ring), 0 6px 16px rgba(18, 32, 64, .06)}
    .ghostBtn:hover{transform: translateY(-1px); background:#fff}
    .primaryBtn{
      border:0;
      background: linear-gradient(135deg, var(--brandA), var(--brandB));
      color:#fff;
      padding:10px 14px;
      border-radius: 16px;
      font-size:13px;
      font-weight:700;
      box-shadow: 0 14px 28px rgba(108,92,255,.20);
      transition: transform .18s var(--ease), box-shadow .18s var(--ease), filter .18s var(--ease);
      display:flex; align-items:center; gap:10px;
      white-space:nowrap;
    }
    .primaryBtn:hover{transform: translateY(-1px); filter:saturate(1.08); box-shadow: 0 16px 34px rgba(108,92,255,.25)}
    .primaryBtn:focus{outline:none; box-shadow: var(--ring), 0 16px 34px rgba(108,92,255,.25)}
    .hamburger{
      display:none;
      width:44px; height:44px; border-radius:14px;
      border:1px solid rgba(23,33,56,.14);
      background: rgba(255,255,255,.72);
      box-shadow: 0 6px 16px rgba(18, 32, 64, .06);
      align-items:center; justify-content:center; cursor:pointer;
      transition: transform .18s var(--ease), background .18s var(--ease);
    }
    .hamburger:hover{transform: translateY(-1px); background:#fff}
    .hamburger:focus{outline:none; box-shadow: var(--ring)}
    .hamburger svg{opacity:.9}

    .mobilePanel{
      display:none;
      padding: 12px 0 18px;
    }
    .mobileGrid{
      display:grid; gap:10px;
    }
    .mobileGrid .navLink{
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.75);
      padding: 12px 12px;
    }
    .mobileActions{
      display:flex; gap:10px; flex-wrap:wrap; margin-top: 12px;
    }

    .hero{
      padding: 30px 0 6px;
    }
    .heroCard{
      position:relative;
      border-radius: var(--radius-xl);
      border: 1px solid rgba(23,33,56,.10);
      background:
        radial-gradient(900px 420px at 18% 15%, rgba(255,79,216,.24), transparent 55%),
        radial-gradient(900px 420px at 78% 10%, rgba(108,92,255,.22), transparent 58%),
        radial-gradient(520px 260px at 40% 80%, rgba(45,212,255,.14), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.80), rgba(255,255,255,.98));
      overflow:hidden;
      box-shadow: var(--shadow);
    }
    .heroInner{
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap: 22px;
      padding: 28px;
      align-items:start;
    }
    .heroKicker{
      display:flex; gap:10px; align-items:center; flex-wrap:wrap;
      margin-bottom: 12px;
    }
    .pill{
      border: 1px solid rgba(108,92,255,.22);
      background: rgba(108,92,255,.10);
      color: rgba(38, 29, 112, .95);
      padding: 8px 12px;
      border-radius: 999px;
      font-size: 12px;
      font-weight: 700;
      letter-spacing:.2px;
    }
    .pill2{
      border: 1px solid rgba(255,79,216,.22);
      background: rgba(255,79,216,.10);
      color: rgba(122, 20, 97, .98);
    }
    .hero h1{
      margin: 0 0 10px;
      font-size: clamp(22px, 3.1vw, 38px);
      letter-spacing: -0.6px;
      line-height: 1.12;
    }
    .heroLead{
      margin: 0 0 16px;
      color: var(--muted);
      font-size: 14.5px;
      line-height: 1.7;
      max-width: 58ch;
    }
    .heroActions{
      display:flex; gap:12px; flex-wrap:wrap; align-items:center;
      margin-top: 14px;
    }
    .btnCardRow{
      display:flex; gap:10px; align-items:center; margin-top: 14px; flex-wrap:wrap;
      color: rgba(31,36,48,.85);
      font-size: 13px;
    }
    .check{
      display:flex; gap:10px; align-items:center;
    }
    .check svg{flex:0 0 auto}
    .heroRight{
      display:flex; flex-direction:column; gap:12px;
      align-items:stretch;
    }
    .statGrid{
      display:grid; gap:12px;
      grid-template-columns: 1fr 1fr;
    }
    .stat{
      background: rgba(255,255,255,.78);
      border: 1px solid rgba(23,33,56,.10);
      border-radius: 18px;
      padding: 14px;
      position:relative;
      overflow:hidden;
      transform: translateZ(0);
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
      min-height: 96px;
    }
    .stat:hover{
      transform: translateY(-2px);
      box-shadow: 0 14px 28px rgba(108,92,255,.14);
      border-color: rgba(108,92,255,.20);
    }
    .stat .num{
      font-size: 22px; font-weight: 900; letter-spacing: -0.6px;
      margin-bottom: 6px;
      background: linear-gradient(135deg, var(--brandA), var(--brandB));
      -webkit-background-clip:text; background-clip:text; color: transparent;
    }
    .stat .lbl{font-size: 12.5px; color: var(--muted); line-height: 1.5}
    .heroNote{
      border-radius: 18px;
      padding: 14px;
      border: 1px solid rgba(23,33,56,.10);
      background:
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.98));
      display:flex; gap:12px; align-items:flex-start;
    }
    .noteIcon{
      width:40px; height:40px; border-radius: 16px;
      background: linear-gradient(135deg, rgba(45,212,255,.18), rgba(108,92,255,.18));
      border: 1px solid rgba(108,92,255,.20);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
    }
    .heroNote strong{display:block; font-size: 13.5px; margin-bottom: 4px}
    .heroNote p{margin:0; color: var(--muted); font-size: 13px; line-height: 1.6}

    .section{
      padding: 26px 0;
    }
    .sectionHeader{
      display:flex; align-items:flex-end; justify-content:space-between;
      gap: 16px;
      margin-bottom: 14px;
    }
    .sectionHeader h2{
      margin:0;
      font-size: 20px;
      letter-spacing: -0.3px;
    }
    .sectionHeader p{
      margin:0;
      color: var(--muted);
      font-size: 13.5px;
      line-height: 1.6;
      max-width: 64ch;
    }
    .grid2{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      align-items:stretch;
    }
    .grid3{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 14px;
      align-items:stretch;
    }
    .card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(23,33,56,.10);
      border-radius: 20px;
      padding: 16px;
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      transition: transform .2s var(--ease), border-color .2s var(--ease), box-shadow .2s var(--ease);
      overflow:hidden;
      position:relative;
    }
    .card:hover{
      transform: translateY(-2px);
      border-color: rgba(108,92,255,.20);
      box-shadow: 0 16px 34px rgba(108,92,255,.12);
    }
    .cardTitle{
      display:flex; align-items:center; gap:10px; margin-bottom: 10px;
    }
    .cardTitle strong{font-size: 14.5px; letter-spacing: -0.2px}
    .badge{
      display:inline-flex; align-items:center; gap:8px;
      padding: 6px 10px;
      border-radius: 999px;
      border:1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.72);
      color: rgba(31,36,48,.86);
      font-size: 12px;
      white-space:nowrap;
    }
    .muted{color: var(--muted)}
    .list{
      margin:0; padding-left: 18px;
      color: rgba(31,36,48,.88);
      font-size: 13.5px;
      line-height: 1.75;
    }
    .list li{margin: 6px 0}
    .chips{
      display:flex; flex-wrap:wrap; gap:8px;
    }
    .chip{
      padding: 7px 10px;
      border-radius: 999px;
      border: 1px solid rgba(108,92,255,.18);
      background: rgba(108,92,255,.10);
      font-size: 12px;
      color: rgba(38, 29, 112, .95);
      transition: transform .18s var(--ease), background .18s var(--ease);
      white-space:nowrap;
    }
    .chip.alt{
      border-color: rgba(255,79,216,.18);
      background: rgba(255,79,216,.10);
      color: rgba(122, 20, 97, .98);
    }
    .chip:hover{transform: translateY(-1px)}
    .steps{
      display:grid; grid-template-columns: repeat(4, 1fr); gap: 12px;
      align-items:stretch;
    }
    .step{
      padding: 16px;
      border-radius: 20px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      position:relative;
      overflow:hidden;
      transition: transform .2s var(--ease), border-color .2s var(--ease);
      min-height: 160px;
    }
    .step:hover{transform: translateY(-2px); border-color: rgba(108,92,255,.20)}
    .stepTop{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      margin-bottom: 10px;
    }
    .stepNum{
      font-weight: 900; letter-spacing:-.6px;
      font-size: 20px;
      color: rgba(31,36,48,.95);
    }
    .stepIcon{
      width:40px; height:40px; border-radius: 16px;
      border: 1px solid rgba(108,92,255,.18);
      background: linear-gradient(135deg, rgba(108,92,255,.14), rgba(255,79,216,.10));
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
    }
    .step h3{margin:0 0 6px; font-size: 14.5px}
    .step p{margin:0; color: var(--muted); font-size: 13.5px; line-height: 1.7}
    .tableWrap{
      border-radius: 22px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.85);
      overflow:auto;
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
    }
    table{
      width:100%;
      border-collapse: collapse;
      min-width: 760px;
    }
    th, td{
      padding: 12px 14px;
      border-bottom: 1px solid rgba(23,33,56,.08);
      text-align:left;
      vertical-align:top;
      font-size: 13.5px;
    }
    th{
      background: linear-gradient(135deg, rgba(255,79,216,.10), rgba(108,92,255,.10));
      color: rgba(31,36,48,.95);
      font-weight: 800;
      letter-spacing:.1px;
    }
    td .strong{font-weight: 900}
    .good{
      display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      background: rgba(34,197,94,.10);
      border: 1px solid rgba(34,197,94,.22);
      border-radius: 999px;
      font-size: 12px;
      color: rgba(16, 120, 50, .98);
      white-space:nowrap;
    }
    .ratingWrap{
      display:flex; gap:14px; align-items:flex-start; flex-wrap:wrap;
    }
    .ratingBig{
      flex: 0 0 auto;
      padding: 14px 16px;
      border-radius: 20px;
      border: 1px solid rgba(23,33,56,.10);
      background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.98));
    }
    .stars{
      display:flex; gap:4px; align-items:center; margin-bottom: 6px;
    }
    .star{
      width:18px; height:18px; display:block;
      filter: drop-shadow(0 6px 12px rgba(245,158,11,.22));
    }
    .score{
      font-size: 30px;
      font-weight: 1000;
      letter-spacing:-1px;
      margin:0;
      background: linear-gradient(135deg, #ff9f3e, #ff4fd8);
      -webkit-background-clip:text; background-clip:text; color: transparent;
    }
    .rec{
      color: var(--muted);
      font-size: 13.5px;
      line-height: 1.7;
      margin: 8px 0 0;
      max-width: 52ch;
    }
    .sideChips{
      display:flex; flex-wrap:wrap; gap:8px;
    }
    .timeline{
      display:grid; grid-template-columns: 1.1fr .9fr; gap: 14px;
      align-items:stretch;
    }
    .timelineLeft{
      padding: 18px;
    }
    .timelineList{
      margin: 0;
      padding:0;
      list-style:none;
      display:grid; gap:12px;
    }
    .tItem{
      display:flex; gap:12px;
      padding: 12px 12px;
      border-radius: 18px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.78);
      transition: transform .2s var(--ease), border-color .2s var(--ease);
    }
    .tItem:hover{transform: translateY(-2px); border-color: rgba(108,92,255,.20)}
    .tDot{
      width:38px; height:38px; border-radius: 16px;
      border: 1px solid rgba(108,92,255,.18);
      background: linear-gradient(135deg, rgba(45,212,255,.12), rgba(108,92,255,.14));
      display:flex; align-items:center; justify-content:center; flex:0 0 auto;
    }
    .tItem strong{display:block; font-size: 13.5px; margin-bottom: 4px}
    .tItem span{color: var(--muted); font-size: 13px; line-height: 1.6}
    .timelineRight{
      display:flex; flex-direction:column; gap:12px; padding: 18px;
    }
    .callout{
      border-radius: 20px;
      border: 1px solid rgba(23,33,56,.10);
      background:
        radial-gradient(420px 200px at 20% 20%, rgba(255,79,216,.14), transparent 55%),
        radial-gradient(420px 200px at 70% 10%, rgba(108,92,255,.14), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.98));
      padding: 16px;
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
    }
    .callout h3{margin:0 0 8px; font-size: 14.5px}
    .callout p{margin:0; color: var(--muted); font-size: 13.5px; line-height: 1.7}
    .callout .ctaRow{
      display:flex; gap:10px; flex-wrap:wrap; margin-top: 12px; align-items:center;
    }
    .smallBtn{
      padding: 10px 12px;
      border-radius: 16px;
      border: 1px solid rgba(23,33,56,.14);
      background: rgba(255,255,255,.74);
      font-size: 13px;
      font-weight: 700;
      transition: transform .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);
      box-shadow: 0 6px 16px rgba(18, 32, 64, .06);
      cursor:pointer;
      display:inline-flex; align-items:center; gap:8px;
    }
    .smallBtn:hover{transform: translateY(-1px); background:#fff}
    .smallBtn:focus{outline:none; box-shadow: var(--ring), 0 6px 16px rgba(18, 32, 64, .06)}
    .smallBtn.primary{
      border:0;
      background: linear-gradient(135deg, rgba(45,212,255,.95), rgba(108,92,255,.95));
      color:#fff;
      box-shadow: 0 14px 28px rgba(108,92,255,.18);
    }
    .smallBtn.primary:hover{box-shadow: 0 16px 34px rgba(108,92,255,.22); filter:saturate(1.08)}
    .smallBtn.primary:focus{box-shadow: var(--ring), 0 16px 34px rgba(108,92,255,.22)}
    .clientsGrid{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }
    .quote{
      position:relative;
      padding: 16px;
      border-radius: 20px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      transition: transform .2s var(--ease), border-color .2s var(--ease);
      overflow:hidden;
      display:flex; flex-direction:column; gap:10px;
    }
    .quote:hover{transform: translateY(-2px); border-color: rgba(108,92,255,.20)}
    .quoteTop{
      display:flex; align-items:center; justify-content:space-between; gap:12px;
    }
    .avatar{
      width:40px; height:40px; border-radius: 16px;
      border:1px solid rgba(23,33,56,.12);
      background: linear-gradient(135deg, rgba(255,79,216,.16), rgba(108,92,255,.16));
      display:flex; align-items:center; justify-content:center;
      font-weight: 900;
      color: rgba(31,36,48,.92);
      flex:0 0 auto;
    }
    .quoteRole{
      color: var(--muted);
      font-size: 12.5px;
      line-height: 1.4;
      text-align:right;
      max-width: 22ch;
    }
    .quoteText{
      margin:0;
      color: rgba(31,36,48,.92);
      font-size: 13.5px;
      line-height: 1.75;
    }
    .quoteFoot{
      display:flex; gap:8px; flex-wrap:wrap; align-items:center;
    }
    .tag{
      padding: 7px 10px;
      border-radius: 999px;
      border:1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.72);
      color: rgba(31,36,48,.82);
      font-size: 12px;
    }

    .accordion{
      display:grid; gap:10px;
    }
    details{
      border-radius: 18px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.84);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      overflow:hidden;
      transition: border-color .2s var(--ease);
    }
    details[open]{border-color: rgba(108,92,255,.22)}
    summary{
      list-style:none;
      cursor:pointer;
      padding: 14px 16px;
      display:flex; align-items:flex-start; justify-content:space-between; gap:14px;
      font-weight: 800;
      font-size: 13.8px;
      line-height: 1.45;
    }
    summary::-webkit-details-marker{display:none}
    .sumIcon{
      width:34px; height:34px; border-radius: 14px;
      border: 1px solid rgba(108,92,255,.18);
      background: rgba(108,92,255,.10);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top: -4px;
      transition: transform .25s var(--ease);
    }
    details[open] .sumIcon{transform: rotate(45deg)}
    .accBody{
      padding: 0 16px 14px;
      color: var(--muted);
      font-size: 13.5px;
      line-height: 1.75;
    }

    .cardsList{
      display:grid; gap:12px;
      grid-template-columns: repeat(3, 1fr);
      align-items:stretch;
    }
    .articleCard{
      display:flex; flex-direction:column; gap:10px;
      padding: 16px;
      border-radius: 20px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      transition: transform .2s var(--ease), border-color .2s var(--ease);
      min-height: 168px;
    }
    .articleCard:hover{transform: translateY(-2px); border-color: rgba(108,92,255,.22)}
    .articleTop{
      display:flex; align-items:flex-start; justify-content:space-between; gap:10px;
    }
    .articleCard strong{font-size: 14.5px; letter-spacing:-.2px}
    .articleCard p{
      margin:0;
      color: var(--muted);
      font-size: 13.5px;
      line-height: 1.65;
      flex: 1 1 auto;
    }
    .articleMeta{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      color: var(--muted2);
      font-size: 12.5px;
    }
    .articleLink{
      display:inline-flex; align-items:center; gap:8px;
      padding: 9px 10px;
      border-radius: 14px;
      border:1px solid rgba(23,33,56,.12);
      background: rgba(255,255,255,.72);
      font-weight: 800;
      font-size: 12.8px;
      transition: transform .18s var(--ease), background .18s var(--ease);
      flex:0 0 auto;
    }
    .articleLink:hover{transform: translateY(-1px); background:#fff}

    .formGrid{
      display:grid; gap:12px; grid-template-columns: 1fr 1fr;
    }
    label{font-size: 12.8px; color: rgba(31,36,48,.86); font-weight: 800}
    .field{
      display:flex; flex-direction:column; gap:8px;
    }
    input, select, textarea{
      width:100%;
      border-radius: 14px;
      border: 1px solid rgba(23,33,56,.14);
      background: rgba(255,255,255,.9);
      padding: 12px 12px;
      font-size: 14px;
      color: var(--text);
      outline:none;
      transition: box-shadow .18s var(--ease), border-color .18s var(--ease), transform .18s var(--ease);
    }
    textarea{min-height: 98px; resize: vertical}
    input:focus, select:focus, textarea:focus{
      border-color: rgba(108,92,255,.35);
      box-shadow: var(--ring);
    }
    .formFoot{
      display:flex; gap:10px; flex-wrap:wrap; align-items:center; justify-content:space-between;
      margin-top: 6px;
    }
    .hint{
      color: var(--muted2);
      font-size: 12.6px;
      line-height: 1.6;
      max-width: 52ch;
    }

    .footer{
      margin-top: 10px;
      background:
        radial-gradient(900px 420px at 14% 0%, rgba(255,79,216,.18), transparent 55%),
        radial-gradient(900px 420px at 80% 10%, rgba(108,92,255,.18), transparent 58%),
        linear-gradient(180deg, rgba(14,18,38,.96), rgba(10,13,26,1));
      color: rgba(255,255,255,.92);
      border-top: 1px solid rgba(255,255,255,.10);
    }
    .footerInner{
      padding: 26px 0 18px;
    }
    .footerTop{
      display:grid; grid-template-columns: 1.2fr .8fr; gap: 14px;
      align-items:start;
    }
    .footerBrand{
      display:flex; gap:12px; align-items:flex-start;
    }
    .footerLogo{
      width:44px; height:44px; border-radius: 18px;
      border:1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.08);
      display:flex; align-items:center; justify-content:center;
      overflow:hidden;
      flex:0 0 auto;
    }
    .footerLogo img{width:100%; height:100%; object-fit:contain; filter: brightness(1.08)}
    .footerBrand strong{display:block; font-size: 14.5px; margin-bottom: 6px}
    .footerBrand p{margin:0; color: rgba(255,255,255,.78); font-size: 13px; line-height: 1.7}
    .footerLinks{
      display:grid; gap:10px;
      padding: 16px;
      border-radius: 20px;
      border: 1px solid rgba(255,255,255,.14);
      background: rgba(255,255,255,.06);
    }
    .footerLinks strong{font-size: 13.5px}
    .linkGroup{
      display:flex; gap:10px; flex-wrap:wrap;
    }
    .fLink{
      padding: 8px 10px;
      border-radius: 999px;
      border:1px solid rgba(255,255,255,.16);
      background: rgba(255,255,255,.06);
      color: rgba(255,255,255,.86);
      font-size: 12.5px;
      transition: transform .18s var(--ease), background .18s var(--ease);
      white-space:nowrap;
    }
    .fLink:hover{transform: translateY(-1px); background: rgba(255,255,255,.10)}
    .footerBottom{
      display:flex; align-items:center; justify-content:space-between; gap:12px;
      padding: 14px 0 4px;
      color: rgba(255,255,255,.70);
      font-size: 12.6px;
      flex-wrap:wrap;
    }
    .friend{
      margin-top: 10px;
    }
    .friend strong{display:block; margin-bottom: 8px; font-size: 13.5px}
    .friendGrid{
      display:flex; flex-wrap:wrap; gap:10px;
    }

    .floatBox{
      position:fixed;
      right: 16px;
      bottom: 16px;
      z-index: 80;
      display:flex; flex-direction:column; gap:10px; align-items:flex-end;
      pointer-events:none;
    }
    .floatItem{
      pointer-events:auto;
      border-radius: 18px;
      border: 1px solid rgba(23,33,56,.14);
      background: rgba(255,255,255,.78);
      box-shadow: 0 14px 28px rgba(18, 32, 64, .12);
      overflow:hidden;
      transform: translateY(8px);
      opacity:0;
      animation: floatIn .55s var(--ease) forwards;
    }
    .floatItem:nth-child(1){animation-delay:.0s}
    .floatItem:nth-child(2){animation-delay:.08s}
    @keyframes floatIn{
      to{transform: translateY(0); opacity:1}
    }
    .kefuBtn{
      width: 56px; height: 56px;
      border-radius: 20px;
      display:flex; align-items:center; justify-content:center;
      cursor:pointer;
      transition: transform .18s var(--ease), filter .18s var(--ease), background .18s var(--ease);
      background:
        radial-gradient(240px 120px at 20% 10%, rgba(255,79,216,.18), transparent 55%),
        radial-gradient(240px 120px at 80% 0%, rgba(108,92,255,.18), transparent 58%),
        rgba(255,255,255,.86);
    }
    .kefuBtn:hover{transform: translateY(-2px); filter:saturate(1.08)}
    .kefuPanel{
      width: 240px;
      padding: 12px;
      display:flex; flex-direction:column; gap:10px;
      background:
        radial-gradient(380px 170px at 20% 0%, rgba(255,79,216,.12), transparent 55%),
        radial-gradient(320px 160px at 80% 20%, rgba(108,92,255,.14), transparent 55%),
        rgba(255,255,255,.90);
    }
    .kefuHeader{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
    }
    .kefuHeader strong{font-size: 13.5px}
    .closeKefu{
      width:34px; height:34px; border-radius: 14px;
      border:1px solid rgba(23,33,56,.14);
      background: rgba(255,255,255,.78);
      cursor:pointer;
      display:flex; align-items:center; justify-content:center;
      transition: transform .18s var(--ease), background .18s var(--ease);
    }
    .closeKefu:hover{transform: translateY(-1px); background:#fff}
    .kefuQR{
      display:flex; gap:10px; align-items:flex-start;
    }
    .kefuQR img{
      width:78px; height:78px; border-radius: 16px;
      border: 1px solid rgba(23,33,56,.12);
      background:#fff;
      object-fit:cover;
    }
    .kefuQR p{
      margin:0; color: var(--muted);
      font-size: 12.8px; line-height: 1.6;
    }
    .toTop{
      width: 56px; height: 56px;
      border-radius: 20px;
      border: 1px solid rgba(23,33,56,.14);
      background: rgba(255,255,255,.80);
      display:flex; align-items:center; justify-content:center;
      cursor:pointer;
      transition: transform .18s var(--ease), background .18s var(--ease);
      box-shadow: 0 14px 28px rgba(18, 32, 64, .12);
    }
    .toTop:hover{transform: translateY(-2px); background:#fff}

    .srOnly{
      position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
    }

    .reveal{
      opacity:0;
      transform: translateY(10px);
      transition: opacity .6s var(--ease), transform .6s var(--ease);
    }
    .reveal.show{
      opacity:1;
      transform: translateY(0);
    }

    .aiBadgeRow{
      display:flex; gap:10px; flex-wrap:wrap;
      margin-top: 12px;
    }
    .smallKpi{
      padding: 10px 12px;
      border-radius: 18px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.78);
      flex: 1 1 180px;
      min-width: 180px;
    }
    .smallKpi strong{
      display:block;
      font-size: 14px;
      margin-bottom: 4px;
    }
    .smallKpi span{
      color: var(--muted);
      font-size: 12.8px;
      line-height: 1.6;
      display:block;
    }

    .twoCol{
      display:grid; grid-template-columns: 1fr 1fr; gap: 14px;
      align-items:start;
    }
    .kpiGrid{
      display:grid; gap:12px;
      grid-template-columns: 1fr 1fr;
    }
    .networkGrid{
      display:grid; gap:12px;
      grid-template-columns: repeat(4, 1fr);
    }
    .networkItem{
      padding: 14px;
      border-radius: 20px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      transition: transform .2s var(--ease), border-color .2s var(--ease);
    }
    .networkItem:hover{transform: translateY(-2px); border-color: rgba(108,92,255,.22)}
    .networkItem strong{font-size: 13.8px; display:block; margin-bottom: 6px}
    .networkItem span{color: var(--muted); font-size: 13px; line-height: 1.65; display:block}

    .tagCloud{
      display:flex; flex-wrap:wrap; gap:10px;
      padding: 14px;
      border-radius: 22px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
    }
    .tagCloud .chip{background: rgba(45,212,255,.10); border-color: rgba(45,212,255,.20); color: rgba(7,85,109,.98)}
    .tagCloud .chip.alt2{background: rgba(245,158,11,.10); border-color: rgba(245,158,11,.22); color: rgba(120,70,7,.98)}
    .tagCloud .chip.alt3{background: rgba(34,197,94,.10); border-color: rgba(34,197,94,.22); color: rgba(16,120,50,.98)}

    .caseGrid{
      display:grid; gap:12px;
      grid-template-columns: 1fr 1fr;
    }
    .caseItem{
      padding: 16px;
      border-radius: 22px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      display:flex; gap:12px; align-items:flex-start;
      transition: transform .2s var(--ease), border-color .2s var(--ease);
    }
    .caseItem:hover{transform: translateY(-2px); border-color: rgba(108,92,255,.22)}
    .caseGlyph{
      width:46px; height:46px; border-radius: 20px;
      border: 1px solid rgba(108,92,255,.18);
      background: linear-gradient(135deg, rgba(255,79,216,.14), rgba(108,92,255,.14));
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
    }
    .caseItem strong{font-size: 14.5px; display:block; margin-bottom: 6px}
    .caseItem p{margin:0; color: var(--muted); font-size: 13.5px; line-height: 1.7}
    .formCard{
      padding: 16px;
      border-radius: 22px;
      border: 1px solid rgba(23,33,56,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 10px 22px rgba(18, 32, 64, .06);
      overflow:hidden;
      position:relative;
    }
    .formCard:before{
      content:"";
      position:absolute; inset:-2px;
      background: radial-gradient(520px 220px at 12% 0%, rgba(255,79,216,.14), transparent 55%),
                  radial-gradient(480px 240px at 90% 10%, rgba(108,92,255,.14), transparent 58%);
      pointer-events:none;
      opacity:.9;
    }
    .formCard > *{position:relative}
    .formCard h3{margin:0 0 6px; font-size: 16px}
    .formCard p{margin:0 0 14px; color: var(--muted); font-size: 13.5px; line-height: 1.7}
    .submitRow{
      display:flex; gap:10px; align-items:center; flex-wrap:wrap; justify-content:flex-end;
      margin-top: 6px;
    }

    @media (max-width: 980px){
      .heroInner{grid-template-columns: 1fr; padding: 22px}
      .heroRight{order:2}
      .steps{grid-template-columns: repeat(2, 1fr)}
      .grid3{grid-template-columns: 1fr}
      .grid2{grid-template-columns: 1fr}
      .timeline{grid-template-columns: 1fr}
      .timelineRight{padding: 0}
      .timelineLeft{padding: 0}
      .clientsGrid{grid-template-columns: 1fr}
      .cardsList{grid-template-columns: 1fr}
      .caseGrid{grid-template-columns: 1fr}
      .networkGrid{grid-template-columns: repeat(2, 1fr)}
      .twoCol{grid-template-columns: 1fr}
      .footerTop{grid-template-columns: 1fr}
      .formGrid{grid-template-columns: 1fr}
      table{min-width: 620px}
      nav .menu{display:none}
      .navRight{min-width:auto}
      .hamburger{display:flex}
      .mobilePanel{display:block}
      .mobilePanel.show{display:block}
      .floatBox{right: 10px; bottom: 10px}
    }
    @media (prefers-reduced-motion: reduce){
      html{scroll-behavior:auto}
      *{transition:none !important; animation:none !important}
      .reveal{opacity:1; transform:none}
    }