:root{
      --bg: #f6f8ff;
      --panel: #ffffff;
      --text: #0f172a;
      --muted:#475569;
      --muted2:#64748b;
      --primary:#0b4fd7;
      --primary2:#1b7cff;
      --accent:#17b2a6;
      --accent2:#0ea5e9;
      --line: rgba(15, 23, 42, .10);
      --shadow: 0 14px 40px rgba(11,79,215,.10);
      --shadow2: 0 10px 26px rgba(2, 44, 112, .12);
      --ring: rgba(27,124,255,.26);
      --radius: 16px;
      --radius2: 22px;
      --max: 1140px;
      --pad: 18px;
      --btnH: 46px;
      --ease: cubic-bezier(.2,.8,.2,1);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "PingFang SC","Microsoft YaHei","Noto Sans SC", "Helvetica Neue", Arial, sans-serif;
      color: var(--text);
      background:
        radial-gradient(1200px 700px at 15% -10%, rgba(27,124,255,.18), transparent 55%),
        radial-gradient(900px 520px at 85% 0%, rgba(23,178,166,.14), transparent 58%),
        linear-gradient(180deg, #f7f9ff 0%, var(--bg) 40%, #f8fafc 100%);
      line-height:1.55;
    }
    a{color:inherit}
    .container{
      max-width: var(--max);
      margin: 0 auto;
      padding: 0 var(--pad);
    }

    header{
      position: sticky;
      top: 0;
      z-index: 50;
      backdrop-filter: blur(10px);
      background: rgba(246,248,255,.78);
      border-bottom: 1px solid rgba(15,23,42,.06);
    }
    .nav-wrap{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 16px;
      padding: 12px 0;
    }
    .brand{
      display:flex;
      align-items:center;
      gap: 12px;
      min-width: 220px;
    }
    .logo{
      width: 44px;
      height: 44px;
      border-radius: 14px;
      overflow:hidden;
      background: radial-gradient(circle at 30% 20%, rgba(27,124,255,.18), rgba(27,124,255,.02));
      border: 1px solid rgba(11,79,215,.14);
      display:flex;align-items:center;justify-content:center;
      box-shadow: 0 10px 26px rgba(11,79,215,.10);
    }
    .logo img{display:block; max-width: 78%; height:auto}
    .brand-meta{display:flex; flex-direction:column; gap:2px}
    .brand-name{
      font-weight: 800;
      letter-spacing: .2px;
      font-size: 14px;
    }
    .brand-sub{
      color: var(--muted2);
      font-size: 12px;
    }

    .nav-links{
      display:flex;
      align-items:center;
      gap: 14px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }
    .nav-links a{
      text-decoration:none;
      font-size: 13px;
      color: rgba(15,23,42,.86);
      padding: 10px 10px;
      border-radius: 12px;
      transition: background .2s var(--ease), transform .2s var(--ease), color .2s var(--ease);
      white-space:nowrap;
    }
    .nav-links a:hover{
      background: rgba(11,79,215,.08);
      color: rgba(11,79,215,1);
      transform: translateY(-1px);
    }

    .nav-cta{
      display:flex;
      align-items:center;
      gap: 10px;
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap: 10px;
      height: var(--btnH);
      padding: 0 16px;
      border-radius: 14px;
      border: 1px solid transparent;
      text-decoration:none;
      font-weight: 700;
      font-size: 14px;
      cursor:pointer;
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease);
      user-select:none;
      -webkit-tap-highlight-color: transparent;
      white-space: nowrap;
    }
    .btn-primary{
      background: linear-gradient(135deg, var(--primary) 0%, var(--primary2) 100%);
      color: #fff;
      box-shadow: 0 14px 34px rgba(11,79,215,.28);
    }
    .btn-primary:hover{transform: translateY(-1px); box-shadow: 0 18px 46px rgba(11,79,215,.34)}
    .btn-ghost{
      background: rgba(255,255,255,.72);
      border-color: rgba(11,79,215,.16);
      color: rgba(11,79,215,1);
    }
    .btn-ghost:hover{transform: translateY(-1px); background: rgba(255,255,255,.92); border-color: rgba(11,79,215,.24)}
    .btn-small{height: 40px; padding: 0 13px; border-radius: 12px; font-size: 13px; font-weight: 700}

    .menu-btn{
      display:none;
      height: 44px;
      width: 44px;
      border-radius: 14px;
      border: 1px solid rgba(11,79,215,.18);
      background: rgba(255,255,255,.7);
      cursor:pointer;
      transition: transform .2s var(--ease), background .2s var(--ease);
    }
    .menu-btn:hover{transform: translateY(-1px); background: rgba(255,255,255,.92)}
    .menu-icon{
      width: 18px; height: 14px; margin: 0 auto; position: relative;
    }
    .menu-icon span{
      position:absolute; left:0; right:0;
      height:2px; border-radius: 2px;
      background: rgba(11,79,215,1);
      transition: transform .2s var(--ease), top .2s var(--ease), opacity .2s var(--ease);
    }
    .menu-icon span:nth-child(1){top:0}
    .menu-icon span:nth-child(2){top:6px}
    .menu-icon span:nth-child(3){top:12px}
    .menu-btn[data-open="true"] .menu-icon span:nth-child(1){top:6px; transform: rotate(45deg)}
    .menu-btn[data-open="true"] .menu-icon span:nth-child(2){opacity:0}
    .menu-btn[data-open="true"] .menu-icon span:nth-child(3){top:6px; transform: rotate(-45deg)}

    .mobile-panel{
      display:none;
      border-top: 1px solid rgba(15,23,42,.06);
      padding: 10px 0 16px;
    }
    .mobile-panel .mobile-links{
      display:flex; flex-direction:column; gap: 6px;
    }
    .mobile-panel a{
      text-decoration:none;
      padding: 12px 12px;
      border-radius: 14px;
      background: rgba(255,255,255,.72);
      border: 1px solid rgba(15,23,42,.08);
      font-weight: 650;
      color: rgba(15,23,42,.9);
    }

    main{padding: 18px 0 44px}
    .section{
      padding: 52px 0;
    }
    .section-tight{padding: 38px 0}
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap: 18px;
      margin-bottom: 22px;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap: 10px;
      font-weight: 800;
      color: rgba(11,79,215,1);
      letter-spacing: .2px;
      font-size: 13px;
    }
    .dot{
      width: 10px; height: 10px;
      border-radius: 999px;
      background: linear-gradient(135deg, var(--primary2) 0%, var(--accent) 100%);
      box-shadow: 0 10px 24px rgba(11,79,215,.22);
    }
    h1,h2,h3{margin:0}
    h1{
      font-size: clamp(26px, 4.2vw, 44px);
      letter-spacing: -0.02em;
      line-height: 1.15;
    }
    h2{
      font-size: clamp(20px, 3vw, 28px);
      letter-spacing: -0.01em;
    }
    .lead{
      color: var(--muted);
      font-size: 15px;
      margin-top: 10px;
      max-width: 62ch;
    }
    .hero{
      padding: 30px 0 10px;
    }
    .hero-grid{
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap: 18px;
      align-items: stretch;
    }

    .hero-left{
      background:
        radial-gradient(900px 460px at 20% 0%, rgba(27,124,255,.22), transparent 60%),
        radial-gradient(760px 420px at 92% 10%, rgba(23,178,166,.18), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.64));
      border: 1px solid rgba(11,79,215,.14);
      border-radius: var(--radius2);
      box-shadow: var(--shadow);
      padding: 26px 22px 22px;
      position:relative;
      overflow:hidden;
    }
    .hero-left:before{
      content:"";
      position:absolute; inset: -2px;
      background:
        linear-gradient(135deg, rgba(11,79,215,.15), rgba(23,178,166,.08), rgba(255,255,255,0) 55%);
      pointer-events:none;
      opacity:.8;
    }
    .hero-inner{position:relative; z-index:1}
    .hero-actions{
      display:flex;
      gap: 12px;
      flex-wrap: wrap;
      margin-top: 18px;
      align-items:center;
    }
    .hero-badges{
      display:flex;
      gap: 10px;
      flex-wrap: wrap;
      margin-top: 18px;
    }
    .badge{
      display:inline-flex;
      align-items:center;
      gap: 9px;
      padding: 10px 12px;
      border-radius: 14px;
      border: 1px solid rgba(11,79,215,.16);
      background: rgba(255,255,255,.68);
      color: rgba(15,23,42,.9);
      font-weight: 700;
      font-size: 13px;
      box-shadow: 0 12px 26px rgba(11,79,215,.08);
    }
    .badge svg{opacity:.95}

    .hero-right{
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.72);
      padding: 18px;
      box-shadow: 0 18px 46px rgba(2,44,112,.08);
      display:flex;
      flex-direction:column;
      gap: 14px;
      overflow:hidden;
      position:relative;
    }
    .hero-right:after{
      content:"";
      position:absolute;
      right:-140px; top:-140px;
      width: 320px; height: 320px;
      background: radial-gradient(circle at 30% 30%, rgba(27,124,255,.35), rgba(27,124,255,0) 62%);
      pointer-events:none;
    }
    .hero-right > *{position:relative; z-index:1}
    .mini-title{
      font-weight: 900;
      letter-spacing: .2px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 10px;
    }
    .mini-sub{
      color: var(--muted2);
      font-size: 13px;
      margin-top: 2px;
      line-height:1.4;
    }
    .signal{
      width: 54px; height: 54px;
      border-radius: 18px;
      background: linear-gradient(135deg, rgba(11,79,215,.18), rgba(23,178,166,.10));
      border: 1px solid rgba(11,79,215,.20);
      display:flex;
      align-items:center;
      justify-content:center;
      box-shadow: 0 16px 40px rgba(11,79,215,.12);
    }
    .signal svg{display:block}
    .kpi-grid{
      display:grid;
      grid-template-columns: repeat(2, minmax(0,1fr));
      gap: 12px;
    }
    .kpi{
      padding: 14px 14px;
      border-radius: 16px;
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.78);
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
    }
    .kpi:hover{
      transform: translateY(-2px);
      box-shadow: 0 18px 40px rgba(2,44,112,.10);
      border-color: rgba(11,79,215,.22);
    }
    .kpi .num{
      font-weight: 980;
      letter-spacing: -0.03em;
      font-size: 20px;
    }
    .kpi .lbl{
      color: var(--muted2);
      margin-top: 6px;
      font-size: 12.5px;
      line-height:1.35;
      font-weight: 650;
    }

    .cards3{
      display:grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap: 14px;
      margin-top: 14px;
    }
    .card{
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(15,23,42,.10);
      border-radius: var(--radius);
      padding: 16px;
      box-shadow: 0 12px 26px rgba(2,44,112,.06);
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
    }
    .card:hover{transform: translateY(-2px); box-shadow: 0 18px 40px rgba(2,44,112,.10); border-color: rgba(11,79,215,.22)}
    .card .t{
      display:flex; align-items:center; gap: 12px;
      font-weight: 950;
      margin-bottom: 8px;
      letter-spacing:.1px;
    }
    .icon{
      width: 40px; height: 40px;
      border-radius: 14px;
      background: linear-gradient(135deg, rgba(11,79,215,.18), rgba(23,178,166,.10));
      border: 1px solid rgba(11,79,215,.18);
      display:flex; align-items:center; justify-content:center;
      box-shadow: 0 18px 40px rgba(11,79,215,.10);
      flex: 0 0 auto;
    }
    .card p{
      margin:0;
      color: var(--muted);
      font-size: 14px;
    }
    .pillrow{display:flex; flex-wrap: wrap; gap: 8px; margin-top: 12px}
    .pill{
      font-size: 12.5px;
      color: rgba(15,23,42,.86);
      background: rgba(11,79,215,.06);
      border: 1px solid rgba(11,79,215,.12);
      padding: 8px 10px;
      border-radius: 999px;
      font-weight: 750;
      white-space: nowrap;
    }

    .fade-in{
      opacity: 0;
      transform: translateY(14px);
      transition: opacity .65s var(--ease), transform .65s var(--ease);
    }
    .fade-in.is-visible{
      opacity: 1;
      transform: translateY(0);
    }

    .grid2{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      align-items: start;
    }

    .panel{
      background: rgba(255,255,255,.78);
      border: 1px solid rgba(15,23,42,.10);
      border-radius: var(--radius2);
      padding: 18px;
      box-shadow: 0 16px 44px rgba(2,44,112,.06);
    }

    .checklist{
      display:grid;
      grid-template-columns: 1fr;
      gap: 10px;
      margin-top: 12px;
    }
    .item{
      display:flex;
      gap: 12px;
      align-items:flex-start;
      padding: 12px 12px;
      border-radius: 16px;
      border: 1px solid rgba(15,23,42,.08);
      background: rgba(255,255,255,.70);
    }
    .mark{
      width: 26px; height: 26px;
      border-radius: 10px;
      background: linear-gradient(135deg, rgba(11,79,215,.18), rgba(14,165,233,.10));
      border: 1px solid rgba(11,79,215,.18);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top: 2px;
    }
    .item b{display:block; font-size: 14px; margin-bottom: 2px}
    .item span{color: var(--muted); font-size: 13.5px}

    .stepper{
      display:grid;
      grid-template-columns: repeat(4, minmax(0,1fr));
      gap: 12px;
      margin-top: 12px;
    }
    .step{
      position:relative;
      padding: 16px 14px;
      border-radius: var(--radius);
      border: 1px solid rgba(15,23,42,.10);
      background:
        linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.72));
      box-shadow: 0 14px 36px rgba(2,44,112,.06);
      overflow:hidden;
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
    }
    .step:hover{
      transform: translateY(-2px);
      box-shadow: 0 18px 46px rgba(2,44,112,.10);
      border-color: rgba(11,79,215,.22);
    }
    .step:after{
      content:"";
      position:absolute; inset:auto -60px -80px auto;
      width: 140px; height: 140px;
      background: radial-gradient(circle at 30% 30%, rgba(27,124,255,.22), rgba(27,124,255,0) 64%);
      pointer-events:none;
    }
    .step > *{position:relative; z-index:1}
    .step .n{
      display:flex; align-items:center; justify-content:space-between; gap: 10px;
      margin-bottom: 10px;
    }
    .chip{
      font-size: 12px;
      font-weight: 900;
      color: rgba(11,79,215,1);
      background: rgba(11,79,215,.08);
      border: 1px solid rgba(11,79,215,.16);
      padding: 6px 10px;
      border-radius: 999px;
      white-space:nowrap;
    }
    .step h3{
      font-size: 14.5px;
      letter-spacing: .1px;
      margin-bottom: 6px;
      font-weight: 980;
    }
    .step p{
      margin:0;
      color: var(--muted);
      font-size: 13.5px;
    }

    .table-wrap{
      overflow:auto;
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.78);
      box-shadow: 0 16px 44px rgba(2,44,112,.06);
    }
    table{
      width:100%;
      border-collapse: collapse;
      min-width: 820px;
    }
    th,td{
      padding: 14px 14px;
      border-bottom: 1px solid rgba(15,23,42,.08);
      text-align:left;
      vertical-align: top;
      font-size: 13.5px;
    }
    th{
      font-size: 13px;
      color: rgba(15,23,42,.86);
      background: linear-gradient(180deg, rgba(11,79,215,.08), rgba(11,79,215,.03));
      font-weight: 950;
      position: sticky;
      top: 0;
      z-index: 1;
    }
    tr:last-child td{border-bottom:none}
    .tag{
      display:inline-flex;
      align-items:center;
      gap: 8px;
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(15,23,42,.12);
      background: rgba(255,255,255,.78);
      font-weight: 800;
      color: rgba(15,23,42,.88);
      font-size: 12.5px;
      white-space:nowrap;
      margin: 2px 6px 0 0;
    }
    .tag.good{
      border-color: rgba(11,79,215,.22);
      background: rgba(11,79,215,.08);
      color: rgba(11,79,215,1);
    }
    .tag.dim{opacity:.85}
    .muted{color: var(--muted)}

    .eval-grid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      align-items: start;
      margin-top: 14px;
    }
    .rating-card{
      padding: 18px;
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background:
        radial-gradient(900px 420px at 20% 0%, rgba(27,124,255,.20), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.70));
      box-shadow: 0 18px 46px rgba(11,79,215,.10);
      position:relative;
      overflow:hidden;
    }
    .rating-card:after{
      content:"";
      position:absolute;
      left:-140px; bottom:-160px;
      width: 320px; height: 320px;
      background: radial-gradient(circle at 30% 30%, rgba(23,178,166,.18), rgba(23,178,166,0) 65%);
      pointer-events:none;
    }
    .rating-card > *{position:relative; z-index:1}
    .stars{
      display:flex; align-items:center; gap: 8px; margin-top: 10px;
      flex-wrap:wrap;
    }
    .star{
      width: 18px; height: 18px; display:inline-block;
    }
    .score{
      display:flex; align-items:baseline; gap: 10px;
      margin-top: 12px;
    }
    .score .num{
      font-size: 46px;
      font-weight: 1000;
      letter-spacing: -0.05em;
      line-height: 1;
      color: rgba(11,79,215,1);
    }
    .score .txt{
      color: var(--muted);
      font-weight: 750;
    }
    .list{
      margin: 12px 0 0;
      padding: 0;
      list-style: none;
      display:grid;
      gap: 10px;
    }
    .list li{
      display:flex; gap: 12px; align-items:flex-start;
      padding: 12px;
      border-radius: 16px;
      border: 1px solid rgba(15,23,42,.08);
      background: rgba(255,255,255,.72);
    }
    .list .li-ico{
      width: 26px; height: 26px; border-radius: 10px;
      border: 1px solid rgba(11,79,215,.18);
      background: rgba(11,79,215,.08);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top: 2px;
    }
    .list b{display:block; font-size: 14px}
    .list span{display:block; color: var(--muted); font-size: 13.5px; margin-top: 2px}

    .scenario{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      margin-top: 10px;
    }
    .scenario .box{
      padding: 16px;
      border-radius: var(--radius);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.78);
      box-shadow: 0 14px 34px rgba(2,44,112,.06);
    }
    .box h3{font-size: 15px; font-weight: 980; margin-bottom: 10px}
    .bullets{
      margin:0; padding:0; list-style:none;
      display:flex; flex-wrap:wrap; gap: 8px;
    }
    .bullets li{
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(11,79,215,.06);
      border: 1px solid rgba(11,79,215,.12);
      font-weight: 800;
      font-size: 12.5px;
      color: rgba(15,23,42,.88);
    }

    .comms-grid{
      display:grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 12px;
      margin-top: 14px;
    }
    .quote{
      position:relative;
      padding: 16px;
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.80);
      box-shadow: 0 16px 44px rgba(2,44,112,.06);
      overflow:hidden;
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
    }
    .quote:hover{transform: translateY(-2px); box-shadow: 0 20px 52px rgba(2,44,112,.10); border-color: rgba(11,79,215,.22)}
    .quote:before{
      content:"“";
      position:absolute;
      left: 12px; top: 8px;
      font-size: 46px;
      color: rgba(11,79,215,.12);
      font-weight: 1000;
      pointer-events:none;
    }
    .quote .top{
      display:flex; align-items:center; justify-content:space-between;
      gap: 12px;
      margin-bottom: 10px;
      position:relative;
      z-index:1;
    }
    .avatar{
      width: 38px; height: 38px; border-radius: 14px;
      border: 1px solid rgba(11,79,215,.18);
      background: linear-gradient(135deg, rgba(11,79,215,.16), rgba(23,178,166,.10));
      display:flex; align-items:center; justify-content:center;
      font-weight: 950;
      color: rgba(11,79,215,1);
      flex:0 0 auto;
    }
    .quote .who{
      display:flex; flex-direction:column; gap: 2px;
    }
    .quote .role{font-weight: 980; font-size: 13.5px}
    .quote .name{color: var(--muted2); font-size: 12.5px}
    .stars2{display:flex; gap: 3px}
    .stars2 svg{width: 14px; height: 14px}
    .quote .text{
      position:relative;
      z-index:1;
      margin-top: 4px;
      color: var(--muted);
      font-size: 13.6px;
    }
    .quote .meta{
      position:relative;
      z-index:1;
      margin-top: 12px;
      display:flex; flex-wrap:wrap; gap: 8px;
    }

    .two-col{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      align-items: start;
    }

    .tabs{
      display:flex; gap: 10px; flex-wrap: wrap;
      margin-top: 12px;
    }
    .tab{
      border-radius: 999px;
      border: 1px solid rgba(15,23,42,.12);
      background: rgba(255,255,255,.78);
      padding: 10px 12px;
      cursor:pointer;
      font-weight: 900;
      font-size: 13px;
      transition: transform .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
      user-select:none;
    }
    .tab:hover{transform: translateY(-1px)}
    .tab[aria-selected="true"]{
      background: rgba(11,79,215,.10);
      border-color: rgba(11,79,215,.26);
      color: rgba(11,79,215,1);
    }
    .tab-panel{
      margin-top: 14px;
      padding: 14px;
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.78);
      box-shadow: 0 16px 44px rgba(2,44,112,.06);
    }
    .tab-panel .small-grid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
      align-items:start;
    }
    .kv{
      padding: 12px 12px;
      border-radius: 16px;
      border: 1px solid rgba(15,23,42,.08);
      background: rgba(255,255,255,.72);
    }
    .kv b{display:block; font-size: 13.5px; margin-bottom: 4px; font-weight: 980}
    .kv span{display:block; color: var(--muted); font-size: 13.2px}

    .form-grid{
      display:grid;
      grid-template-columns: 1fr .9fr;
      gap: 14px;
      align-items: start;
    }
    form{
      display:grid;
      gap: 12px;
    }
    label{
      font-weight: 850;
      font-size: 13px;
      color: rgba(15,23,42,.9);
      display:block;
      margin-bottom: 6px;
    }
    .field{
      display:grid;
      gap: 6px;
    }
    input, select, textarea{
      width: 100%;
      padding: 12px 12px;
      border-radius: 14px;
      border: 1px solid rgba(15,23,42,.12);
      background: rgba(255,255,255,.84);
      outline: none;
      color: var(--text);
      font-size: 14px;
      transition: box-shadow .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);
    }
    input:focus, select:focus, textarea:focus{
      border-color: rgba(27,124,255,.42);
      box-shadow: 0 0 0 4px var(--ring);
    }
    textarea{min-height: 110px; resize: vertical}
    .form-note{
      color: var(--muted2);
      font-size: 12.8px;
      margin-top: -4px;
    }
    .form-side{
      padding: 14px;
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background:
        radial-gradient(900px 420px at 20% 0%, rgba(27,124,255,.20), transparent 60%),
        linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.70));
      box-shadow: 0 18px 46px rgba(11,79,215,.10);
    }
    .side-block{
      padding: 12px;
      border-radius: 18px;
      border: 1px solid rgba(15,23,42,.08);
      background: rgba(255,255,255,.74);
      margin-top: 10px;
    }
    .side-block:first-child{margin-top:0}
    .side-block h3{font-size: 14.5px; margin-bottom: 8px; font-weight: 980}
    .side-block ul{margin:0; padding-left: 18px; color: var(--muted); font-size: 13.5px}
    .side-block li{margin: 6px 0}

    .faq{
      display:grid;
      grid-template-columns: 1fr;
      gap: 10px;
      margin-top: 10px;
    }
    details{
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.80);
      border-radius: var(--radius2);
      padding: 12px 14px;
      box-shadow: 0 14px 34px rgba(2,44,112,.05);
      transition: border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);
    }
    details[open]{
      border-color: rgba(11,79,215,.24);
      box-shadow: 0 18px 46px rgba(2,44,112,.10);
    }
    summary{
      cursor:pointer;
      list-style:none;
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap: 12px;
      font-weight: 950;
      font-size: 14px;
      padding: 2px 0;
    }
    summary::-webkit-details-marker{display:none}
    .chev{
      flex:0 0 auto;
      width: 34px; height: 34px;
      border-radius: 14px;
      border: 1px solid rgba(15,23,42,.12);
      background: rgba(255,255,255,.80);
      display:flex; align-items:center; justify-content:center;
      transition: transform .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);
      margin-top: -2px;
    }
    details[open] .chev{
      transform: rotate(180deg);
      border-color: rgba(11,79,215,.26);
      background: rgba(11,79,215,.06);
    }
    .faq p{
      margin: 10px 0 0;
      color: var(--muted);
      font-size: 13.8px;
    }

    .article-grid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      margin-top: 14px;
    }
    .article{
      padding: 16px;
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.80);
      box-shadow: 0 14px 34px rgba(2,44,112,.06);
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
      display:flex;
      flex-direction:column;
      gap: 10px;
      overflow:hidden;
      position:relative;
    }
    .article:hover{transform: translateY(-2px); box-shadow: 0 20px 52px rgba(2,44,112,.10); border-color: rgba(11,79,215,.22)}
    .article .top{
      display:flex; align-items:flex-start; justify-content:space-between; gap: 10px;
    }
    .article .k{
      font-weight: 980;
      letter-spacing: .1px;
      line-height:1.2;
    }
    .article .url{
      color: rgba(11,79,215,1);
      font-weight: 900;
      font-size: 12.5px;
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(11,79,215,.18);
      background: rgba(11,79,215,.06);
      white-space: nowrap;
    }
    .article .desc{
      color: var(--muted);
      font-size: 13.6px;
      margin:0;
    }
    .article .acts{
      display:flex; gap: 10px; flex-wrap:wrap;
      margin-top:auto;
    }

    .tagcloud{
      display:flex; flex-wrap:wrap; gap: 10px; margin-top: 12px;
    }
    .cloud-tag{
      padding: 10px 12px;
      border-radius: 999px;
      border: 1px solid rgba(15,23,42,.12);
      background: rgba(255,255,255,.78);
      font-weight: 900;
      font-size: 13px;
      color: rgba(15,23,42,.88);
      transition: transform .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease);
      cursor:pointer;
      user-select:none;
    }
    .cloud-tag:hover{
      transform: translateY(-2px);
      border-color: rgba(11,79,215,.26);
      background: rgba(11,79,215,.07);
    }

    .timeline{
      margin-top: 12px;
      display:grid;
      gap: 10px;
    }
    .tline{
      display:flex; gap: 12px; align-items:flex-start;
      padding: 14px;
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.80);
      box-shadow: 0 14px 34px rgba(2,44,112,.05);
    }
    .tline .tico{
      width: 40px; height: 40px;
      border-radius: 16px;
      border: 1px solid rgba(11,79,215,.18);
      background: linear-gradient(135deg, rgba(11,79,215,.16), rgba(23,178,166,.10));
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
    }
    .tline b{display:block; font-weight: 980; margin-bottom: 4px}
    .tline span{display:block; color: var(--muted); font-size: 13.5px}

    .media-grid{
      display:grid;
      grid-template-columns: 1.2fr .8fr;
      gap: 14px;
      align-items: start;
      margin-top: 14px;
    }
    .image-stack{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    .img-card{
      border-radius: var(--radius2);
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.78);
      box-shadow: 0 16px 44px rgba(2,44,112,.06);
      overflow:hidden;
      padding: 10px;
      transition: transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
    }
    .img-card:hover{transform: translateY(-2px); box-shadow: 0 20px 52px rgba(2,44,112,.10); border-color: rgba(11,79,215,.22)}
    .img-holder{
      width: 100%;
      aspect-ratio: 16 / 10;
      border-radius: 16px;
      overflow:hidden;
      background: linear-gradient(135deg, rgba(11,79,215,.10), rgba(23,178,166,.06));
      border: 1px solid rgba(15,23,42,.08);
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .img-holder img{
      width:100%; height:100%;
      object-fit: cover;
      display:block;
    }
    .img-caption{
      padding: 8px 4px 0;
      color: var(--muted2);
      font-size: 12.8px;
      font-weight: 750;
    }

    .contact-grid{
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 16px;
      align-items: start;
    }

    footer{
      background: linear-gradient(180deg, rgba(11,79,215,.04), rgba(11,79,215,.02));
      border-top: 1px solid rgba(15,23,42,.08);
      padding: 28px 0 24px;
    }
    .foot-grid{
      display:grid;
      grid-template-columns: 1.2fr .8fr;
      gap: 14px;
      align-items: start;
    }
    .foot-title{
      font-weight: 1000;
      letter-spacing: .2px;
      margin-bottom: 8px;
    }
    .foot-text{
      color: var(--muted);
      font-size: 13.6px;
      margin:0;
      max-width: 64ch;
    }
    .foot-links{
      display:flex;
      flex-wrap:wrap;
      gap: 10px;
      justify-content:flex-end;
      align-items:center;
    }
    .foot-links a{
      text-decoration:none;
      padding: 10px 12px;
      border-radius: 999px;
      border: 1px solid rgba(15,23,42,.12);
      background: rgba(255,255,255,.70);
      font-weight: 900;
      font-size: 13px;
      color: rgba(15,23,42,.88);
      transition: transform .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease);
    }
    .foot-links a:hover{
      transform: translateY(-2px);
      border-color: rgba(11,79,215,.26);
      background: rgba(11,79,215,.07);
      color: rgba(11,79,215,1);
    }
    .copyright{
      margin-top: 16px;
      padding-top: 14px;
      border-top: 1px solid rgba(15,23,42,.08);
      display:flex;
      gap: 10px;
      justify-content:space-between;
      flex-wrap:wrap;
      color: var(--muted2);
      font-size: 12.8px;
    }

    .float-customer{
      position: fixed;
      right: 16px;
      bottom: 18px;
      z-index: 60;
      display:flex;
      flex-direction:column;
      gap: 10px;
      align-items:flex-end;
    }
    .float-card{
      width: min(320px, calc(100vw - 32px));
      border-radius: 18px;
      border: 1px solid rgba(15,23,42,.10);
      background: rgba(255,255,255,.88);
      box-shadow: 0 20px 60px rgba(2,44,112,.18);
      overflow:hidden;
      transform-origin: 100% 100%;
      transform: scale(.98);
      opacity:0;
      pointer-events:none;
      transition: opacity .18s var(--ease), transform .18s var(--ease);
    }
    .float-card.open{
      opacity:1;
      pointer-events:auto;
      transform: scale(1);
    }
    .float-head{
      display:flex; align-items:center; justify-content:space-between;
      padding: 12px 12px;
      background: linear-gradient(135deg, rgba(11,79,215,.10), rgba(23,178,166,.08));
      border-bottom: 1px solid rgba(15,23,42,.08);
    }
    .float-head b{font-weight: 1000; font-size: 13.5px}
    .close-btn{
      width: 34px; height: 34px;
      border-radius: 14px;
      border: 1px solid rgba(15,23,42,.12);
      background: rgba(255,255,255,.75);
      cursor:pointer;
      transition: transform .2s var(--ease);
      display:flex; align-items:center; justify-content:center;
    }
    .close-btn:hover{transform: translateY(-1px)}
    .float-body{
      padding: 12px;
      display:grid;
      grid-template-columns: 84px 1fr;
      gap: 12px;
      align-items: start;
    }
    .qr{
      width: 84px; height: 84px;
      border-radius: 16px;
      border: 1px solid rgba(11,79,215,.18);
      background: rgba(255,255,255,.85);
      overflow:hidden;
      display:flex; align-items:center; justify-content:center;
    }
    .qr img{width: 100%; height: 100%; object-fit: contain; display:block}
    .float-body p{
      margin:0;
      color: var(--muted);
      font-size: 13.2px;
    }
    .float-actions{
      display:flex; gap: 10px; flex-wrap:wrap;
      margin-top: 10px;
    }

    .toTop{
      width: 46px; height: 46px;
      border-radius: 18px;
      border: 1px solid rgba(11,79,215,.18);
      background: rgba(255,255,255,.78);
      box-shadow: 0 18px 46px rgba(2,44,112,.12);
      display:flex; align-items:center; justify-content:center;
      cursor:pointer;
      transition: transform .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease), opacity .2s var(--ease);
      opacity:0;
      pointer-events:none;
    }
    .toTop.show{
      opacity:1;
      pointer-events:auto;
    }
    .toTop:hover{transform: translateY(-2px); background: rgba(11,79,215,.08); border-color: rgba(11,79,215,.26)}
    .toTop svg{display:block}

    @media (max-width: 980px){
      .hero-grid{grid-template-columns: 1fr; }
      .cards3{grid-template-columns: 1fr; }
      .grid2{grid-template-columns: 1fr;}
      .stepper{grid-template-columns: 1fr 1fr;}
      .eval-grid{grid-template-columns: 1fr;}
      .scenario{grid-template-columns: 1fr;}
      .comms-grid{grid-template-columns: 1fr;}
      .two-col{grid-template-columns: 1fr;}
      .form-grid{grid-template-columns: 1fr;}
      .contact-grid{grid-template-columns: 1fr;}
      .article-grid{grid-template-columns: 1fr;}
      .media-grid{grid-template-columns: 1fr;}
      .foot-grid{grid-template-columns: 1fr;}
      .foot-links{justify-content:flex-start}
      .nav-links{display:none}
      .menu-btn{display:block}
      .mobile-panel{display:block}
      header .mobile-panel{display:none}
      header[data-mobile="open"] .mobile-panel{display:block}
    }