:root{
      --bg0:#f7fbf8;
      --bg1:#eef7f1;
      --card:#ffffff;
      --text:#1f2a25;
      --muted:#5a6b62;
      --line:rgba(15, 23, 19, .10);
      --shadow:0 10px 30px rgba(16, 185, 129, .10);
      --shadow2:0 8px 22px rgba(15, 23, 19, .10);
      --mint:#18b67a;
      --mint2:#23c47f;
      --mint3:#b9f5d8;
      --ink:#0f2b20;
      --blue:#2457ff;
      --warn:#0f8a5b;
      --radius:18px;
      --radius2:14px;
      --container:1120px;
      --gap:18px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;
      color:var(--text);
      background:
        radial-gradient(1200px 560px at 15% -10%, rgba(24,182,122,.22), transparent 60%),
        radial-gradient(900px 520px at 85% 6%, rgba(35,196,127,.18), transparent 55%),
        linear-gradient(180deg, var(--bg0), #ffffff 40%, #ffffff 100%);
      overflow-x:hidden;
    }
    a{color:inherit; text-decoration:none}
    .container{
      width:100%;
      max-width:var(--container);
      margin:0 auto;
      padding:0 18px;
    }
    .topbar{
      position:sticky;
      top:0;
      z-index:50;
      backdrop-filter:saturate(160%) blur(10px);
      background:rgba(247,251,248,.75);
      border-bottom:1px solid rgba(15, 23, 19, .08);
    }
    .navRow{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:12px 0;
    }
    .brand{
      display:flex;
      align-items:center;
      gap:12px;
      min-width: 220px;
    }
    .ai-page-logo{
      width:44px;
      height:44px;
      object-fit:contain;
      border-radius:12px;
      background:linear-gradient(180deg, rgba(24,182,122,.20), rgba(24,182,122,.06));
      padding:6px;
    }
    .brandText{display:flex; flex-direction:column; line-height:1.2}
    .brandName{
      font-weight:820;
      letter-spacing:.2px;
      font-size:14px;
      color:var(--ink);
    }
    .brandSub{
      font-size:12px;
      color:var(--muted);
      margin-top:4px;
      white-space:nowrap;
    }
    .navLinks{
      display:flex;
      align-items:center;
      gap:16px;
      flex-wrap:wrap;
      justify-content:flex-end;
    }
    .navLinks a{
      font-size:13px;
      color:var(--muted);
      padding:8px 10px;
      border-radius:12px;
      border:1px solid transparent;
      transition:transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
    }
    .navLinks a:hover{
      background:rgba(24,182,122,.08);
      border-color:rgba(24,182,122,.18);
      color:var(--text);
      transform:translateY(-1px);
    }
    .navActions{
      display:flex;
      align-items:center;
      gap:10px;
      justify-content:flex-end;
      min-width: 260px;
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      padding:10px 14px;
      border-radius:14px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.75);
      color:var(--ink);
      font-weight:720;
      font-size:13px;
      transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
      cursor:pointer;
      user-select:none;
      white-space:nowrap;
    }
    .btn:hover{
      transform:translateY(-1px);
      box-shadow:0 12px 30px rgba(36,87,255,.10);
      border-color:rgba(36,87,255,.25);
    }
    .btnPrimary{
      border-color:rgba(24,182,122,.35);
      background:linear-gradient(180deg, rgba(24,182,122,.16), rgba(24,182,122,.08));
      box-shadow:0 18px 44px rgba(24,182,122,.12);
    }
    .btnPrimary .dot{
      width:10px;height:10px;border-radius:50%;
      background:radial-gradient(circle at 30% 30%, #8ff7c9, #18b67a);
      box-shadow:0 0 0 4px rgba(24,182,122,.15);
    }
    .btnSoft{
      border-color:rgba(15,23,19,.10);
      background:rgba(255,255,255,.65);
    }
    .hamburger{
      display:none;
      width:44px;height:44px;
      border-radius:14px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.75);
      cursor:pointer;
      align-items:center;
      justify-content:center;
      transition:transform .18s ease, border-color .18s ease;
    }
    .hamburger:hover{transform:translateY(-1px); border-color:rgba(24,182,122,.30)}
    .hamIcon{
      width:18px;height:12px; position:relative;
    }
    .hamIcon span{
      position:absolute; left:0; right:0; height:2px; background:rgba(15,43,32,.85); border-radius:2px;
      transition:transform .2s ease, top .2s ease, opacity .2s ease;
    }
    .hamIcon span:nth-child(1){top:0}
    .hamIcon span:nth-child(2){top:5px}
    .hamIcon span:nth-child(3){top:10px}
    .mobilePanel{
      display:none;
      padding:10px 0 16px;
    }
    .mobilePanel .mobileLinks{
      display:flex; flex-direction:column; gap:8px;
    }
    .mobilePanel .mobileLinks a{
      padding:12px 12px;
      border-radius:14px;
      border:1px solid rgba(15,23,19,.08);
      background:rgba(255,255,255,.75);
      color:var(--text);
      font-size:14px;
    }

    .hero{
      position:relative;
      padding:34px 0 18px;
    }
    .heroGrid{
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap:24px;
      align-items:start;
    }
    .heroCard{
      border:1px solid rgba(24,182,122,.16);
      background:
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.60));
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      padding:22px;
      overflow:hidden;
      position:relative;
    }
    .heroCard:before{
      content:"";
      position:absolute; inset:-2px -2px auto -2px;
      height:220px;
      background:
        radial-gradient(220px 120px at 15% 20%, rgba(24,182,122,.32), transparent 60%),
        radial-gradient(220px 120px at 80% 10%, rgba(36,87,255,.18), transparent 55%),
        radial-gradient(260px 140px at 50% 0%, rgba(35,196,127,.18), transparent 62%);
      pointer-events:none;
      filter:saturate(120%);
    }
    .heroInner{position:relative}
    .badgeRow{
      display:flex; flex-wrap:wrap; gap:10px; align-items:center;
      margin-bottom:14px;
    }
    .badge{
      display:inline-flex; align-items:center; gap:10px;
      padding:8px 12px;
      border-radius:999px;
      background:rgba(255,255,255,.75);
      border:1px solid rgba(15,23,19,.10);
      color:var(--muted);
      font-size:12.5px;
      font-weight:650;
    }
    .badge svg{width:16px;height:16px; color:var(--mint)}
    .heroTitle{
      font-size:34px;
      line-height:1.18;
      letter-spacing:-.6px;
      margin:0 0 12px 0;
      color:var(--ink);
      font-weight:900;
      max-width: 560px;
    }
    .heroLead{
      margin:0;
      color:var(--muted);
      font-size:14.5px;
      line-height:1.8;
      max-width: 600px;
    }
    .heroActions{
      margin-top:18px;
      display:flex;
      gap:12px;
      flex-wrap:wrap;
      align-items:center;
    }
    .btnIcon{
      width:16px;height:16px; display:inline-block;
      border-radius:5px;
      background:rgba(24,182,122,.16);
      position:relative;
    }
    .btnIcon:after{
      content:"";
      position:absolute; inset:4px;
      border:2px solid rgba(24,182,122,.95);
      border-left:0; border-bottom:0;
      transform:rotate(45deg);
      border-radius:1px;
    }
    .miniNotice{
      margin-top:14px;
      display:flex; gap:12px; align-items:flex-start;
      padding:12px 12px;
      border-radius:16px;
      border:1px dashed rgba(24,182,122,.26);
      background:rgba(24,182,122,.06);
      color:var(--muted);
      font-size:13px;
      line-height:1.6;
    }
    .miniNotice b{color:var(--text)}
    .heroAside{
      display:flex; flex-direction:column; gap:14px;
    }
    .statGrid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
    }
    .statCard{
      border-radius:var(--radius2);
      background:rgba(255,255,255,.78);
      border:1px solid rgba(15,23,19,.10);
      padding:14px 14px 12px;
      box-shadow:0 10px 22px rgba(15,23,19,.05);
      transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      position:relative;
      overflow:hidden;
    }
    .statCard:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px;
      height:86px;
      background:radial-gradient(90px 50px at 25% 30%, rgba(24,182,122,.28), transparent 60%);
      pointer-events:none;
    }
    .statCard:hover{
      transform:translateY(-2px);
      box-shadow:0 18px 40px rgba(24,182,122,.12);
      border-color:rgba(24,182,122,.24);
    }
    .statTop{display:flex; align-items:center; justify-content:space-between; gap:10px; position:relative}
    .statIcon{
      width:36px;height:36px;border-radius:12px;
      background:linear-gradient(180deg, rgba(24,182,122,.20), rgba(24,182,122,.07));
      border:1px solid rgba(24,182,122,.25);
      display:flex;align-items:center;justify-content:center;
      color:var(--mint);
    }
    .statValue{
      font-weight:950;
      font-size:18px;
      letter-spacing:-.4px;
      color:var(--ink);
      margin-top:8px;
      position:relative;
    }
    .statLabel{
      position:relative;
      margin-top:4px;
      font-size:12.5px;
      color:var(--muted);
      line-height:1.4;
    }
    .asideCard{
      border-radius:var(--radius);
      background:linear-gradient(180deg, rgba(255,255,255,.80), rgba(255,255,255,.60));
      border:1px solid rgba(15,23,19,.10);
      padding:16px;
      box-shadow:0 12px 28px rgba(15,23,19,.06);
    }
    .asideCard h3{
      margin:0;
      font-size:14px;
      color:var(--ink);
      font-weight:900;
      letter-spacing:-.2px;
    }
    .asideList{
      margin:12px 0 0 0;
      padding:0;
      list-style:none;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .asideItem{
      display:flex; gap:10px; align-items:flex-start;
      padding:10px 10px;
      border-radius:14px;
      border:1px solid rgba(15,23,19,.08);
      background:rgba(255,255,255,.65);
    }
    .check{
      width:18px;height:18px;border-radius:6px;
      background:rgba(24,182,122,.16);
      border:1px solid rgba(24,182,122,.25);
      display:flex;align-items:center;justify-content:center;
      flex:0 0 auto;
      margin-top:1px;
    }
    .check svg{width:12px;height:12px; color:var(--mint)}
    .asideItem b{display:block; font-size:13px; color:var(--text); font-weight:900}
    .asideItem span{display:block; font-size:12.5px; color:var(--muted); line-height:1.5; margin-top:2px}

    .section{
      padding:26px 0;
    }
    .sectionHeader{
      display:flex; align-items:flex-end; justify-content:space-between; gap:14px;
      margin-bottom:14px;
    }
    .sectionHeader h2{
      margin:0;
      font-size:20px;
      letter-spacing:-.4px;
      color:var(--ink);
      font-weight:950;
    }
    .sectionHeader p{
      margin:0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.7;
      max-width: 520px;
    }

    .grid3{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:14px;
    }
    .card{
      border-radius:var(--radius);
      background:rgba(255,255,255,.78);
      border:1px solid rgba(15,23,19,.10);
      box-shadow:0 14px 30px rgba(15,23,19,.05);
      padding:16px;
    }
    .card h3{
      margin:0;
      font-size:14.5px;
      color:var(--ink);
      font-weight:950;
      letter-spacing:-.2px;
    }
    .card p{
      margin:10px 0 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.8;
    }
    .chipRow{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
    .chip{
      padding:7px 10px;
      border-radius:999px;
      font-size:12.5px;
      color:rgba(15,43,32,.86);
      border:1px solid rgba(24,182,122,.22);
      background:rgba(24,182,122,.08);
      font-weight:740;
    }

    .timeline{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:14px;
      align-items:start;
    }
    .timelineCard{
      border-radius:var(--radius);
      background:
        linear-gradient(180deg, rgba(255,255,255,.80), rgba(255,255,255,.62));
      border:1px solid rgba(15,23,19,.10);
      padding:18px;
      position:relative;
      overflow:hidden;
    }
    .timelineCard:before{
      content:"";
      position:absolute; inset:-1px;
      background:
        radial-gradient(260px 160px at 20% 20%, rgba(24,182,122,.18), transparent 60%),
        radial-gradient(260px 160px at 90% 10%, rgba(36,87,255,.12), transparent 60%);
      pointer-events:none;
    }
    .timelineInner{position:relative}
    .stepList{
      margin:0;
      padding:0;
      list-style:none;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .step{
      display:flex; gap:12px; align-items:flex-start;
      padding:12px 12px;
      border-radius:16px;
      border:1px solid rgba(15,23,19,.08);
      background:rgba(255,255,255,.70);
      transition:transform .18s ease, border-color .18s ease, background .18s ease;
    }
    .step:hover{
      transform:translateY(-2px);
      border-color:rgba(24,182,122,.22);
      background:rgba(255,255,255,.82);
    }
    .stepNum{
      width:36px; height:36px;
      border-radius:14px;
      background:linear-gradient(180deg, rgba(24,182,122,.18), rgba(24,182,122,.06));
      border:1px solid rgba(24,182,122,.25);
      color:var(--mint);
      font-weight:950;
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top:1px;
    }
    .step b{display:block; font-size:13.5px; color:var(--text); font-weight:950}
    .step span{display:block; margin-top:4px; font-size:12.8px; color:var(--muted); line-height:1.6}

    .split{
      display:grid;
      grid-template-columns: 1.02fr .98fr;
      gap:14px;
      align-items:stretch;
    }
    .templateCard{
      padding:18px;
      border-radius:var(--radius);
      border:1px solid rgba(24,182,122,.16);
      background:
        linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.62));
      box-shadow:0 16px 34px rgba(24,182,122,.10);
      overflow:hidden;
      position:relative;
    }
    .templateCard:after{
      content:"";
      position:absolute;
      right:-120px; top:-120px;
      width:320px; height:320px;
      background:radial-gradient(circle at 30% 30%, rgba(24,182,122,.26), transparent 60%);
      pointer-events:none;
      transform:rotate(20deg);
    }
    .templateInner{position:relative}
    .templateTitle{
      margin:0;
      font-size:16px;
      font-weight:980;
      color:var(--ink);
      letter-spacing:-.3px;
    }
    .templateLead{
      margin:10px 0 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.85;
    }
    .templateGrid{
      margin-top:14px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:10px;
    }
    .tmplBlock{
      border-radius:16px;
      border:1px solid rgba(15,23,19,.08);
      background:rgba(255,255,255,.70);
      padding:12px;
      min-height:92px;
      display:flex; flex-direction:column;
      justify-content:space-between;
      transition:transform .18s ease, border-color .18s ease;
    }
    .tmplBlock:hover{transform:translateY(-2px); border-color:rgba(24,182,122,.20)}
    .tmplHead{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
    }
    .tmplHead b{
      font-size:13.2px; color:var(--text); font-weight:950;
      letter-spacing:-.2px;
    }
    .tmplTag{
      font-size:11.5px;
      font-weight:900;
      padding:6px 9px;
      border-radius:999px;
      border:1px solid rgba(36,87,255,.22);
      background:rgba(36,87,255,.08);
      color:rgba(36,87,255,.95);
      white-space:nowrap;
    }
    .tmplBody{
      color:var(--muted);
      font-size:12.8px;
      line-height:1.6;
      margin-top:10px;
    }

    .tableWrap{
      overflow:auto;
      border-radius:var(--radius);
      border:1px solid rgba(15,23,19,.10);
      background:rgba(255,255,255,.70);
      box-shadow:0 14px 28px rgba(15,23,19,.05);
    }
    table{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
      min-width: 860px;
    }
    th,td{
      padding:14px 14px;
      border-bottom:1px solid rgba(15,23,19,.08);
      text-align:left;
      vertical-align:top;
      font-size:13.5px;
      line-height:1.65;
    }
    th{
      position:sticky;
      top:0;
      background:rgba(247,251,248,.90);
      backdrop-filter:saturate(150%) blur(8px);
      color:var(--ink);
      font-weight:980;
      letter-spacing:-.2px;
      border-bottom:1px solid rgba(15,23,19,.12);
      z-index:1;
    }
    tr:last-child td{border-bottom:none}
    .good{
      display:inline-flex; align-items:center; gap:10px;
      padding:8px 10px;
      border-radius:999px;
      border:1px solid rgba(24,182,122,.22);
      background:rgba(24,182,122,.08);
      font-weight:920;
      color:rgba(15,43,32,.95);
      white-space:nowrap;
    }
    .good svg{width:16px;height:16px;color:var(--mint)}
    .neutral{
      display:inline-flex; align-items:center; gap:10px;
      padding:8px 10px;
      border-radius:999px;
      border:1px solid rgba(15,23,19,.14);
      background:rgba(255,255,255,.65);
      font-weight:900;
      color:var(--muted);
      white-space:nowrap;
    }
    .scoreBox{
      display:flex; align-items:center; justify-content:space-between; gap:14px;
      padding:16px;
      border-radius:var(--radius);
      border:1px solid rgba(24,182,122,.18);
      background:linear-gradient(180deg, rgba(24,182,122,.10), rgba(255,255,255,.62));
      box-shadow:0 16px 34px rgba(24,182,122,.10);
    }
    .scoreLeft h3{
      margin:0;
      color:var(--ink);
      font-weight:980;
      letter-spacing:-.3px;
      font-size:16px;
    }
    .scoreLeft p{
      margin:8px 0 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.7;
    }
    .stars{
      display:flex; align-items:center; gap:10px; justify-content:flex-end;
      flex-wrap:wrap;
    }
    .starRow{display:flex; gap:6px; align-items:center}
    .star{
      width:18px;height:18px;
      display:inline-block;
      background:radial-gradient(circle at 30% 20%, #fff1b8, #ffd36b);
      clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 71%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
      box-shadow:0 10px 20px rgba(255,211,107,.25);
      border:1px solid rgba(190,120,0,.25);
    }
    .scoreNum{
      font-weight:990;
      color:var(--ink);
      font-size:28px;
      letter-spacing:-.6px;
      line-height:1;
    }
    .scoreText{
      color:var(--muted);
      font-size:12.8px;
      font-weight:800;
      margin-top:2px;
      text-align:right;
    }

    .faqGrid{
      display:grid;
      grid-template-columns: 1fr;
      gap:12px;
    }
    .faqItem{
      border-radius:var(--radius);
      border:1px solid rgba(15,23,19,.10);
      background:rgba(255,255,255,.76);
      box-shadow:0 12px 26px rgba(15,23,19,.05);
      overflow:hidden;
    }
    .faqBtn{
      width:100%;
      background:transparent;
      border:0;
      padding:16px 16px;
      text-align:left;
      cursor:pointer;
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:12px;
    }
    .faqQ{
      font-weight:980;
      color:var(--ink);
      font-size:14.5px;
      line-height:1.55;
      letter-spacing:-.2px;
      margin-top:2px;
    }
    .faqIcon{
      flex:0 0 auto;
      width:34px;height:34px;border-radius:14px;
      border:1px solid rgba(24,182,122,.22);
      background:rgba(24,182,122,.08);
      display:flex; align-items:center; justify-content:center;
      transition:transform .2s ease;
      margin-top:1px;
    }
    .faqIcon svg{width:18px;height:18px; color:var(--mint)}
    .faqItem[data-open="true"] .faqIcon{transform:rotate(45deg)}
    .faqA{
      padding:0 16px 16px 16px;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.9;
      display:none;
    }
    .faqItem[data-open="true"] .faqA{display:block}

    .reviewsGrid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:14px;
    }
    .reviewCard{
      border-radius:var(--radius);
      border:1px solid rgba(15,23,19,.10);
      background:rgba(255,255,255,.78);
      box-shadow:0 14px 28px rgba(15,23,19,.05);
      padding:16px;
      display:flex; flex-direction:column; gap:10px;
      transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      min-height:190px;
    }
    .reviewCard:hover{transform:translateY(-2px); box-shadow:0 18px 40px rgba(36,87,255,.10); border-color:rgba(36,87,255,.22)}
    .reviewTop{
      display:flex; align-items:center; justify-content:space-between; gap:12px;
    }
    .avatar{
      width:38px;height:38px;border-radius:14px;
      background:linear-gradient(180deg, rgba(36,87,255,.18), rgba(36,87,255,.06));
      border:1px solid rgba(36,87,255,.22);
      display:flex; align-items:center; justify-content:center;
      color:rgba(36,87,255,.95);
      font-weight:980;
      letter-spacing:-.4px;
      flex:0 0 auto;
    }
    .reviewRole{
      font-size:12.5px;
      color:var(--muted);
      font-weight:860;
      text-align:right;
      line-height:1.4;
    }
    .reviewText{
      color:var(--muted);
      font-size:13.5px;
      line-height:1.85;
      margin:0;
    }
    .reviewFoot{
      margin-top:auto;
      display:flex; gap:10px; flex-wrap:wrap; align-items:center;
    }
    .pill{
      padding:7px 10px;
      border-radius:999px;
      font-size:12.3px;
      font-weight:900;
      border:1px solid rgba(24,182,122,.22);
      background:rgba(24,182,122,.08);
      color:rgba(15,43,32,.95);
      white-space:nowrap;
    }

    .articleGrid{
      display:grid;
      grid-template-columns: 1.2fr .8fr;
      gap:14px;
      align-items:start;
    }
    .articleList{
      display:flex; flex-direction:column; gap:10px;
    }
    .articleItem{
      border-radius:var(--radius);
      border:1px solid rgba(15,23,19,.10);
      background:rgba(255,255,255,.78);
      padding:14px 14px;
      display:flex; align-items:flex-start; justify-content:space-between; gap:12px;
      transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
    }
    .articleItem:hover{transform:translateY(-2px); border-color:rgba(24,182,122,.22); box-shadow:0 18px 40px rgba(24,182,122,.10)}
    .articleLeft b{
      display:block;
      font-size:14px;
      color:var(--ink);
      font-weight:980;
      letter-spacing:-.2px;
      line-height:1.4;
    }
    .articleLeft span{
      display:block;
      margin-top:7px;
      font-size:13px;
      color:var(--muted);
      line-height:1.7;
    }
    .articleMeta{
      display:flex; flex-direction:column; gap:8px; align-items:flex-end;
      color:var(--muted);
      font-size:12.5px;
      font-weight:800;
      white-space:nowrap;
    }
    .tag{
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.65);
    }

    .calloutCard{
      border-radius:var(--radius);
      border:1px solid rgba(24,182,122,.18);
      background:
        linear-gradient(180deg, rgba(24,182,122,.10), rgba(255,255,255,.62));
      box-shadow:0 16px 34px rgba(24,182,122,.10);
      padding:18px;
      overflow:hidden;
      position:relative;
    }
    .calloutCard:before{
      content:"";
      position:absolute; left:-120px; bottom:-140px;
      width:320px; height:320px;
      background:radial-gradient(circle at 40% 40%, rgba(24,182,122,.28), transparent 60%);
      pointer-events:none;
    }
    .calloutInner{position:relative}
    .calloutCard h3{
      margin:0;
      font-size:16px;
      color:var(--ink);
      font-weight:990;
      letter-spacing:-.3px;
    }
    .calloutCard p{
      margin:10px 0 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.9;
    }
    .modelCloud{
      margin-top:12px;
      display:flex;
      flex-wrap:wrap;
      gap:8px;
    }
    .modelTag{
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(24,182,122,.22);
      background:rgba(255,255,255,.65);
      color:rgba(15,43,32,.92);
      font-size:12.3px;
      font-weight:860;
    }

    form{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
      margin-top:14px;
    }
    label{display:block}
    .field{
      border-radius:16px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.75);
      padding:10px 12px;
      font-size:14px;
      color:var(--text);
      width:100%;
      outline:none;
      transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
    }
    .field:focus{
      border-color:rgba(24,182,122,.35);
      box-shadow:0 0 0 4px rgba(24,182,122,.14);
      background:rgba(255,255,255,.90);
    }
    textarea.field{
      min-height:116px;
      resize:vertical;
      grid-column:1 / -1;
    }
    .formSpan2{grid-column:1 / -1}
    .formActions{
      grid-column:1 / -1;
      display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
      margin-top:2px;
    }
    .consent{
      color:var(--muted);
      font-size:12.5px;
      line-height:1.6;
      max-width: 460px;
    }
    .consent b{color:var(--text)}
    .toast{
      position:fixed;
      left:50%; transform:translateX(-50%);
      bottom:18px;
      background:rgba(15,43,32,.92);
      color:#fff;
      border:1px solid rgba(255,255,255,.18);
      padding:12px 14px;
      border-radius:16px;
      box-shadow:0 24px 60px rgba(0,0,0,.25);
      z-index:90;
      display:none;
      max-width: calc(100% - 28px);
      font-size:13.5px;
      line-height:1.6;
    }
    .toast.show{display:block; animation:toastIn .22s ease}
    @keyframes toastIn{from{opacity:0; transform:translateX(-50%) translateY(8px)} to{opacity:1; transform:translateX(-50%) translateY(0)}}

    .footer{
      margin-top:10px;
      padding:22px 0 28px;
      border-top:1px solid rgba(15,23,19,.10);
      background:linear-gradient(180deg, rgba(238,247,241,.60), rgba(255,255,255,.90));
    }
    .footerGrid{
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap:14px;
      align-items:start;
    }
    .footerCard{
      border-radius:var(--radius);
      border:1px solid rgba(15,23,19,.10);
      background:rgba(255,255,255,.78);
      padding:16px;
      box-shadow:0 14px 28px rgba(15,23,19,.05);
    }
    .footerCard h3{
      margin:0;
      color:var(--ink);
      font-weight:990;
      font-size:14.5px;
      letter-spacing:-.2px;
    }
    .footerCard p{
      margin:10px 0 0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.85;
    }
    .linkList{
      margin:12px 0 0;
      padding:0;
      list-style:none;
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .linkList a{
      padding:8px 10px;
      border-radius:999px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.65);
      color:rgba(15,43,32,.92);
      font-weight:850;
      font-size:12.5px;
      transition:transform .18s ease, border-color .18s ease;
      white-space:nowrap;
    }
    .linkList a:hover{transform:translateY(-2px); border-color:rgba(24,182,122,.25)}
    .footerBottom{
      margin-top:14px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      flex-wrap:wrap;
      color:var(--muted);
      font-size:12.5px;
      font-weight:750;
    }
    .footerBottom a{
      color:rgba(15,43,32,.95);
      border-bottom:1px dashed rgba(15,43,32,.35);
    }

    .floatBtn{
      position:fixed;
      right:14px;
      bottom:14px;
      z-index:80;
      display:flex;
      flex-direction:column;
      gap:10px;
      align-items:flex-end;
    }
    .floatItem{
      display:flex; align-items:center; gap:10px;
      padding:10px 12px;
      border-radius:16px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.84);
      backdrop-filter: blur(10px) saturate(160%);
      box-shadow:0 20px 55px rgba(15,23,19,.16);
      cursor:pointer;
      transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      user-select:none;
    }
    .floatItem:hover{
      transform:translateY(-2px);
      border-color:rgba(24,182,122,.28);
      box-shadow:0 26px 70px rgba(24,182,122,.18);
    }
    .floatIcon{
      width:34px;height:34px;border-radius:14px;
      background:rgba(24,182,122,.10);
      border:1px solid rgba(24,182,122,.22);
      display:flex; align-items:center; justify-content:center;
      color:var(--mint);
      flex:0 0 auto;
    }
    .floatText{
      display:flex; flex-direction:column; line-height:1.15;
    }
    .floatText b{font-size:13px; color:var(--ink); font-weight:980}
    .floatText span{font-size:12px; color:var(--muted); font-weight:800; margin-top:4px; white-space:nowrap}
    .qrcodeWrap{
      display:none;
      position:absolute;
      right:0;
      bottom:60px;
      width:168px;
      border-radius:18px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.90);
      box-shadow:0 26px 70px rgba(0,0,0,.18);
      padding:10px;
    }
    .qrcodeWrap .qrTitle{
      font-size:12.8px; font-weight:980; color:var(--ink);
      margin:4px 0 8px;
      text-align:center;
    }
    .qrcodeWrap img{
      width:100%;
      border-radius:14px;
      display:block;
      border:1px solid rgba(15,23,19,.10);
      background:#fff;
      height:auto;
      object-fit:contain;
    }
    .floatItem:hover .qrcodeWrap{display:block}
    .toTop{
      border-radius:16px;
      border:1px solid rgba(15,23,19,.12);
      background:rgba(255,255,255,.84);
      padding:10px 12px;
    }

    .reveal{
      opacity:0;
      transform:translateY(10px);
      transition:opacity .45s ease, transform .45s ease;
      will-change:opacity,transform;
    }
    .reveal.in{
      opacity:1;
      transform:translateY(0);
    }

    .anchorOffset{scroll-margin-top:86px;}
    .mutedSmall{color:var(--muted); font-size:12.8px; line-height:1.7}

    .galleryGrid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
    }
    .imageCard{
      border-radius:var(--radius);
      border:1px solid rgba(15,23,19,.10);
      background:rgba(255,255,255,.78);
      box-shadow:0 14px 28px rgba(15,23,19,.05);
      overflow:hidden;
      padding:14px;
      display:flex;
      flex-direction:column;
      gap:10px;
      min-height: 260px;
    }
    .imgFrame{
      border-radius:16px;
      border:1px solid rgba(15,23,19,.10);
      background:linear-gradient(180deg, rgba(24,182,122,.10), rgba(255,255,255,.55));
      padding:10px;
      flex:1 1 auto;
      display:flex;
      align-items:center;
      justify-content:center;
    }
    .imgFrame img{
      width:100%;
      height:auto;
      max-height: 170px;
      object-fit:contain;
      border-radius:14px;
      background:#fff;
    }
    .imageCard b{
      color:var(--ink);
      font-weight:990;
      letter-spacing:-.2px;
      font-size:14.5px;
    }
    .imageCard p{
      margin:0;
      color:var(--muted);
      font-size:13.5px;
      line-height:1.85;
    }

    .networkGrid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:12px;
    }
    .networkItem{
      border-radius:var(--radius2);
      border:1px solid rgba(15,23,19,.10);
      background:rgba(255,255,255,.75);
      padding:14px 12px;
      display:flex;
      gap:10px;
      align-items:flex-start;
      transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
      min-height:92px;
    }
    .networkItem:hover{transform:translateY(-2px); border-color:rgba(24,182,122,.22); box-shadow:0 18px 40px rgba(24,182,122,.10)}
    .netDot{
      width:34px;height:34px;border-radius:14px;
      background:rgba(24,182,122,.10);
      border:1px solid rgba(24,182,122,.22);
      display:flex; align-items:center; justify-content:center;
      color:var(--mint);
      flex:0 0 auto;
      margin-top:2px;
    }
    .networkItem b{
      display:block;
      font-size:13.5px;
      color:var(--text);
      font-weight:980;
      letter-spacing:-.2px;
    }
    .networkItem span{
      display:block;
      margin-top:6px;
      font-size:12.8px;
      color:var(--muted);
      line-height:1.6;
    }

    @media (max-width: 980px){
      .heroGrid{grid-template-columns:1fr}
      .navActions{min-width:auto}
      .grid3{grid-template-columns:1fr}
      .timeline{grid-template-columns:1fr}
      .split{grid-template-columns:1fr}
      .reviewsGrid{grid-template-columns:1fr}
      .articleGrid{grid-template-columns:1fr}
      .networkGrid{grid-template-columns:1fr 1fr}
      .galleryGrid{grid-template-columns:1fr}
      table{min-width: 760px}
    }
    @media (max-width: 760px){
      .navLinks{display:none}
      .hamburger{display:flex}
      .mobilePanel{display:block}
      .mobilePanel[data-open="false"]{display:none}
      .navRow{padding:10px 0}
      .brand{min-width:auto}
      .brandSub{display:none}
      .heroTitle{font-size:26px}
      form{grid-template-columns:1fr}
      textarea.field{grid-column:1 / -1}
      .networkGrid{grid-template-columns:1fr}
      .footerGrid{grid-template-columns:1fr}
      .floatBtn{right:10px; bottom:10px}
      .floatText span{display:none}
    }

    @media (prefers-reduced-motion: reduce){
      html{scroll-behavior:auto}
      .reveal{transition:none}
      .statCard, .btn, .step, .reviewCard, .tmplBlock, .articleItem, .networkItem{transition:none}
      .toast.show{animation:none}
    }