:root{
      --bg: #f6fbf8;
      --bg2:#eef8f3;
      --surface: #ffffff;
      --text:#1c2a24;
      --muted:#5d6a63;
      --muted2:#7b8b83;
      --line: rgba(20, 60, 45, .12);
      --shadow: 0 14px 34px rgba(13, 45, 33, .10);
      --shadow2: 0 10px 22px rgba(13, 45, 33, .10);
      --brand:#2db67d;
      --brand2:#1f9c6a;
      --brand3:#0e6c4a;
      --mint:#bff4dc;
      --mint2:#d9fbe9;
      --accent:#2aa9ff;
      --warn:#ffb020;
      --radius: 18px;
      --radius2: 14px;
      --radius3: 12px;
      --focus: 0 0 0 4px rgba(45, 182, 125, .18);
      --container: 1120px;
      --pad: 20px;
      --heroGrad1:#eafff3;
      --heroGrad2:#d9f7ea;
      --heroGrad3:#f7fbff;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "PingFang SC","Hiragino Sans GB","Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans", sans-serif;
      color:var(--text);
      background:
        radial-gradient(1200px 500px at 12% -10%, rgba(45,182,125,.16), transparent 60%),
        radial-gradient(900px 420px at 78% 0%, rgba(42,169,255,.12), transparent 55%),
        linear-gradient(180deg, var(--bg) 0%, #ffffff 40%, var(--bg2) 100%);
      overflow-x:hidden;
    }
    a{color:inherit; text-decoration:none}
    a:hover{opacity:.95}
    .container{
      max-width: var(--container);
      margin: 0 auto;
      padding: 0 var(--pad);
    }
    .skip-link{
      position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden;
    }
    .skip-link:focus{
      left: var(--pad); top: 12px;
      width:auto; height:auto; padding:10px 12px;
      background:var(--surface);
      border:1px solid var(--line);
      border-radius:12px;
      z-index:9999;
      box-shadow: var(--shadow2);
    }

    header{
      position: sticky;
      top:0;
      z-index:60;
      background: rgba(246, 251, 248, .72);
      backdrop-filter: blur(10px);
      border-bottom: 1px solid rgba(20, 60, 45, .08);
    }
    .nav-wrap{
      display:flex; align-items:center; justify-content:space-between;
      padding: 12px 0;
      gap: 14px;
    }
    .brand{
      display:flex; align-items:center; gap:12px; min-width: 220px;
    }
    .logo{
      width: 42px; height: 42px;
      border-radius: 14px;
      background: radial-gradient(circle at 30% 25%, #d6fff0, #bff4dc);
      display:flex; align-items:center; justify-content:center;
      border:1px solid rgba(45,182,125,.22);
      box-shadow: 0 10px 22px rgba(45,182,125,.12);
      overflow:hidden;
    }
    .logo img{display:block; width:100%; height:100%; object-fit:cover;}
    .brand-text{display:flex; flex-direction:column; line-height:1.05}
    .brand-text strong{font-size:14px; letter-spacing:.2px}
    .brand-text span{font-size:12px; color:var(--muted); margin-top:6px}
    nav{display:flex; align-items:center; gap:10px}
    .menu{
      display:flex; align-items:center; gap: 14px; flex-wrap:wrap;
    }
    .menu a{
      font-size:13px; color:var(--muted);
      padding: 8px 10px; border-radius: 12px;
      transition: background .18s ease, color .18s ease, transform .18s ease;
      outline: none;
    }
    .menu a:hover{
      background: rgba(45,182,125,.10);
      color: #134a33;
      transform: translateY(-1px);
    }
    .menu a:focus{box-shadow: var(--focus)}
    .nav-cta{
      display:flex; align-items:center; gap:10px;
      justify-content:flex-end;
      min-width: 250px;
    }
    .btn{
      display:inline-flex; align-items:center; justify-content:center;
      gap:10px;
      border-radius: 14px;
      padding: 10px 14px;
      border: 1px solid rgba(20, 60, 45, .12);
      background: rgba(255,255,255,.75);
      color: #163b2a;
      font-weight: 700;
      font-size: 13px;
      transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
      cursor:pointer;
      white-space:nowrap;
    }
    .btn:hover{
      transform: translateY(-1px);
      box-shadow: 0 16px 36px rgba(13,45,33,.10);
      border-color: rgba(45,182,125,.25);
      background: rgba(255,255,255,.95);
    }
    .btn:focus{outline:none; box-shadow: var(--focus)}
    .btn-primary{
      border-color: rgba(45,182,125,.35);
      background: linear-gradient(180deg, rgba(45,182,125, .18), rgba(45,182,125, .08));
    }
    .btn-solid{
      border-color: rgba(45,182,125,.55);
      background: linear-gradient(180deg, #22c281, #16a36c);
      color: #ffffff;
      box-shadow: 0 18px 38px rgba(22,163,108,.22);
    }
    .btn-solid:hover{box-shadow: 0 22px 44px rgba(22,163,108,.28)}
    .icon-dot{
      width:10px; height:10px; border-radius:999px;
      background: radial-gradient(circle at 35% 35%, #d7ffeb, #2db67d);
      box-shadow: 0 10px 20px rgba(45,182,125,.26);
    }

    .hamburger{
      display:none;
      width:42px; height:42px;
      border-radius: 14px;
      border:1px solid rgba(20, 60, 45, .12);
      background: rgba(255,255,255,.78);
      align-items:center; justify-content:center;
      cursor:pointer;
      transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
    }
    .hamburger:hover{
      transform: translateY(-1px);
      box-shadow: 0 14px 30px rgba(13,45,33,.10);
      background: rgba(255,255,255,.95);
    }
    .hamburger:focus{outline:none; box-shadow: var(--focus)}
    .hamburger .lines{
      width:18px; height:12px; position:relative;
    }
    .hamburger .lines span{
      position:absolute; left:0; right:0;
      height:2px; border-radius:2px;
      background: #164334;
      transition: transform .18s ease, opacity .18s ease, top .18s ease;
    }
    .hamburger .lines span:nth-child(1){top:0}
    .hamburger .lines span:nth-child(2){top:5px}
    .hamburger .lines span:nth-child(3){top:10px}
    .hamburger[aria-expanded="true"] .lines span:nth-child(1){top:5px; transform: rotate(45deg)}
    .hamburger[aria-expanded="true"] .lines span:nth-child(2){opacity:0}
    .hamburger[aria-expanded="true"] .lines span:nth-child(3){top:5px; transform: rotate(-45deg)}

    .mobile-panel{
      display:none;
      padding: 0 0 14px;
    }
    .mobile-panel .panel-inner{
      border:1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.85);
      border-radius: 16px;
      padding: 12px;
      box-shadow: 0 18px 46px rgba(13,45,33,.10);
    }
    .mobile-links{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      margin-bottom: 12px;
    }
    .mobile-links a{
      padding:10px 10px;
      border-radius: 12px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.9);
      font-size: 13px;
      color: #214a38;
      text-align:center;
      transition: transform .16s ease, border-color .16s ease, background .16s ease;
    }
    .mobile-links a:hover{
      transform: translateY(-1px);
      border-color: rgba(45,182,125,.28);
      background: rgba(223,255,236,.55);
    }
    .mobile-cta{
      display:flex; gap:10px; flex-wrap:wrap;
    }
    .mobile-cta .btn{flex:1}
    .mobile-cta .btn-solid{flex: 1 1 100%}

    main{padding-bottom: 10px}

    .hero{
      position:relative;
      padding: 26px 0 10px;
    }
    .hero-grid{
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap: 20px;
      align-items: stretch;
      padding: 22px 0 6px;
    }
    .hero-card{
      background:
        radial-gradient(900px 420px at 10% 0%, rgba(45,182,125,.18), transparent 62%),
        radial-gradient(720px 360px at 80% 20%, rgba(42,169,255,.10), transparent 55%),
        linear-gradient(180deg, rgba(234,255,243,.9), rgba(255,255,255,.72));
      border:1px solid rgba(45,182,125,.16);
      border-radius: 22px;
      box-shadow: 0 24px 70px rgba(13,45,33,.09);
      padding: 22px;
      overflow:hidden;
      position:relative;
    }
    .hero-card:before{
      content:"";
      position:absolute;
      inset:-1px;
      background:
        linear-gradient(90deg, rgba(45,182,125,.18), transparent 40%),
        linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,0));
      pointer-events:none;
      opacity:.7;
    }
    .hero-head{
      position:relative;
      display:flex; flex-direction:column; gap:14px;
    }
    .badge-row{display:flex; gap:10px; flex-wrap:wrap}
    .badge{
      display:inline-flex; align-items:center; gap:8px;
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(20,60,45,.12);
      background: rgba(255,255,255,.7);
      color:#194b35;
      font-weight: 700;
      font-size: 12px;
    }
    .badge svg{flex:0 0 auto}
    .hero-title{
      margin:0;
      font-size: 34px;
      line-height:1.15;
      letter-spacing: -0.6px;
    }
    .hero-sub{
      color: var(--muted);
      margin: 0;
      font-size: 15px;
      line-height:1.7;
      max-width: 58ch;
    }
    .hero-actions{
      display:flex; gap:12px; flex-wrap:wrap; align-items:center;
      margin-top: 6px;
      position:relative;
    }
    .hero-actions .btn{padding: 12px 16px}
    .hero-actions .link-mini{
      display:inline-flex; align-items:center; gap:10px;
      color:#174a36;
      font-weight:700;
      font-size: 13px;
      padding: 10px 12px;
      border-radius: 14px;
      border:1px dashed rgba(45,182,125,.35);
      background: rgba(255,255,255,.55);
      transition: transform .16s ease, background .16s ease;
    }
    .hero-actions .link-mini:hover{transform: translateY(-1px); background: rgba(223,255,236,.55)}
    .hero-actions .link-mini:focus{outline:none; box-shadow: var(--focus)}
    .hero-meta{
      margin-top: 10px;
      display:flex; gap:10px; flex-wrap:wrap;
      position:relative;
    }
    .pill{
      padding: 9px 12px;
      border-radius: 14px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.68);
      display:flex; align-items:center; gap:10px;
      min-width: 172px;
    }
    .pill .k{
      width: 30px; height: 30px;
      border-radius: 12px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(45,182,125,.12);
      border:1px solid rgba(45,182,125,.22);
      color:#0e6c4a;
      flex:0 0 auto;
      font-weight: 900;
      font-size: 13px;
    }
    .pill .v{
      display:flex; flex-direction:column; line-height:1.2
    }
    .pill .v strong{font-size: 13px}
    .pill .v span{font-size: 12px; color: var(--muted)}

    .hero-side{
      display:flex;
      flex-direction:column;
      gap: 12px;
    }
    .side-card{
      background: rgba(255,255,255,.85);
      border: 1px solid rgba(20,60,45,.10);
      border-radius: 20px;
      padding: 16px;
      box-shadow: 0 16px 38px rgba(13,45,33,.08);
      position:relative;
      overflow:hidden;
    }
    .side-card:after{
      content:"";
      position:absolute;
      width: 220px; height: 220px;
      right:-120px; top:-130px;
      background: radial-gradient(circle at 30% 30%, rgba(45,182,125,.22), transparent 62%);
      pointer-events:none;
    }
    .side-title{
      margin: 0 0 10px;
      font-size: 14px;
      color: #1a4d38;
      letter-spacing:.2px;
      font-weight: 900;
      position:relative;
    }
    .model-grid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
      position:relative;
    }
    .model-item{
      border:1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.65);
      border-radius: 14px;
      padding: 10px 10px;
      transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
      display:flex; align-items:center; gap:10px;
      min-height: 44px;
    }
    .model-item:hover{
      transform: translateY(-2px);
      border-color: rgba(45,182,125,.24);
      box-shadow: 0 14px 30px rgba(13,45,33,.10);
    }
    .model-ico{
      width: 30px; height: 30px;
      border-radius: 12px;
      background: rgba(42,169,255,.12);
      border: 1px solid rgba(42,169,255,.20);
      display:flex; align-items:center; justify-content:center;
      color:#0b4b7a;
      flex:0 0 auto;
      font-weight: 900;
      font-size: 12px;
    }
    .model-item:nth-child(2n) .model-ico{
      background: rgba(45,182,125,.12);
      border-color: rgba(45,182,125,.22);
      color:#0e6c4a;
    }
    .model-item .t{
      display:flex; flex-direction:column; line-height:1.1;
      gap:5px;
    }
    .model-item .t strong{font-size: 12px}
    .model-item .t span{font-size: 11px; color: var(--muted)}
    .side-cta-row{
      display:flex; gap:10px; flex-wrap:wrap;
      position:relative;
      margin-top: 12px;
    }
    .mini-note{
      margin: 8px 0 0;
      font-size: 12px;
      color: var(--muted2);
      line-height:1.6;
      position:relative;
    }

    .section{
      padding: 30px 0;
    }
    .section-head{
      display:flex; align-items:flex-end; justify-content:space-between;
      gap: 14px; flex-wrap:wrap;
      margin-bottom: 14px;
    }
    .kicker{
      display:inline-flex; align-items:center; gap:10px;
      color:#155038;
      font-weight: 900;
      font-size: 12px;
      letter-spacing:.26px;
      text-transform: uppercase;
      background: rgba(255,255,255,.7);
      border:1px solid rgba(20,60,45,.12);
      padding: 8px 10px;
      border-radius: 999px;
    }
    .kicker .spark{
      width: 10px; height: 10px; border-radius: 999px;
      background: radial-gradient(circle at 35% 35%, #d7ffeb, #2db67d);
      box-shadow: 0 10px 22px rgba(45,182,125,.25);
    }
    .h2{
      margin: 10px 0 0;
      font-size: 24px;
      letter-spacing: -0.4px;
    }
    .lead{
      margin: 0;
      color: var(--muted);
      font-size: 14px;
      line-height:1.8;
      max-width: 64ch;
    }

    .grid-3{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 14px;
      align-items:stretch;
    }
    .card{
      background: rgba(255,255,255,.86);
      border:1px solid rgba(20,60,45,.10);
      border-radius: var(--radius);
      box-shadow: 0 18px 44px rgba(13,45,33,.07);
      padding: 16px;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      position:relative;
      overflow:hidden;
    }
    .card:hover{
      transform: translateY(-3px);
      box-shadow: 0 26px 68px rgba(13,45,33,.12);
      border-color: rgba(45,182,125,.22);
    }
    .card .cap{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      margin-bottom: 10px;
      position:relative;
    }
    .card .cap .badge2{
      display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius: 999px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.55);
      color: #163b2a;
      font-size: 12px;
      font-weight: 900;
      white-space:nowrap;
    }
    .card .cap .badge2 i{
      width: 10px; height: 10px; border-radius: 999px; background: rgba(45,182,125,.25);
      display:inline-block;
      box-shadow: 0 10px 18px rgba(45,182,125,.22);
    }
    .card h3{
      margin: 6px 0 8px;
      font-size: 16px;
      letter-spacing: -0.2px;
    }
    .card p{
      margin: 0;
      color: var(--muted);
      font-size: 13px;
      line-height:1.75;
    }
    .card ul{
      margin: 12px 0 0;
      padding: 0;
      list-style:none;
      display:flex; flex-direction:column; gap:8px;
    }
    .card li{
      display:flex; gap:10px; align-items:flex-start;
      color: #234c3a;
      font-size: 13px;
      line-height:1.6;
    }
    .check{
      width: 18px; height: 18px;
      border-radius: 8px;
      background: rgba(45,182,125,.14);
      border: 1px solid rgba(45,182,125,.25);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top:2px;
      color:#0e6c4a;
      font-weight: 900;
      font-size: 12px;
    }

    .split{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      align-items:stretch;
    }
    .panel{
      background: rgba(255,255,255,.88);
      border: 1px solid rgba(20,60,45,.10);
      border-radius: 20px;
      padding: 16px;
      box-shadow: 0 18px 44px rgba(13,45,33,.07);
    }
    .panel h3{margin: 4px 0 10px; font-size: 16px}
    .panel .muted{color: var(--muted); font-size: 13px; line-height:1.8; margin:0 0 12px}
    .step-list{
      display:grid; gap: 12px;
      margin-top: 6px;
    }
    .step{
      display:flex; gap: 12px; align-items:flex-start;
      padding: 12px 12px;
      border: 1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.55);
      border-radius: 16px;
      transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
    }
    .step:hover{
      transform: translateY(-2px);
      border-color: rgba(45,182,125,.22);
      box-shadow: 0 20px 50px rgba(13,45,33,.10);
    }
    .step .num{
      width: 36px; height: 36px; border-radius: 14px;
      background: rgba(45,182,125,.14);
      border:1px solid rgba(45,182,125,.26);
      display:flex; align-items:center; justify-content:center;
      font-weight: 1000; color:#0e6c4a;
      flex:0 0 auto;
    }
    .step .st{
      display:flex; flex-direction:column; gap:6px;
    }
    .step .st strong{font-size: 14px}
    .step .st span{font-size: 13px; color: var(--muted); line-height:1.6}

    .table-wrap{
      overflow:auto;
      border-radius: 18px;
      border: 1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 18px 44px rgba(13,45,33,.07);
    }
    table{
      width:100%;
      border-collapse: collapse;
      min-width: 820px;
    }
    th, td{
      padding: 12px 12px;
      border-bottom: 1px solid rgba(20,60,45,.08);
      vertical-align: top;
      text-align:left;
      font-size: 13px;
      line-height:1.6;
    }
    th{
      background: linear-gradient(180deg, rgba(45,182,125,.14), rgba(45,182,125,.06));
      color:#164a35;
      font-weight: 950;
      letter-spacing:.2px;
      position: sticky;
      top: 0;
      z-index: 1;
    }
    .tag{
      display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius: 999px;
      border: 1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.58);
      font-weight: 850;
      font-size: 12px;
      color:#1b4d38;
      margin-right: 8px;
      margin-bottom: 8px;
      white-space:nowrap;
    }
    .tag .dot{
      width: 9px; height: 9px; border-radius: 999px; background: rgba(45,182,125,.35);
      box-shadow: 0 10px 18px rgba(45,182,125,.22);
      display:inline-block;
    }
    .stars{
      display:flex; align-items:center; gap:8px;
      margin-top: 6px;
      flex-wrap:wrap;
    }
    .star-row{
      display:flex; gap:4px; align-items:center;
    }
    .star{
      width: 18px; height: 18px; display:inline-block;
      background: conic-gradient(from 180deg, #ffd56a, #ffb020, #ffd56a);
      clip-path: polygon(50% 0%, 61% 36%, 98% 36%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 36%, 39% 36%);
      border: 1px solid rgba(255,176,32,.45);
      box-shadow: 0 12px 22px rgba(255,176,32,.20);
    }
    .score{
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,176,32,.12);
      border: 1px solid rgba(255,176,32,.22);
      font-weight: 1000;
      color:#7a4a00;
      font-size: 13px;
    }

    .pricing-note{
      color: var(--muted);
      font-size: 13px;
      line-height:1.8;
      margin: 10px 0 0;
    }

    .timeline{
      display:grid;
      grid-template-columns: 1fr 1fr 1fr 1fr;
      gap: 12px;
    }
    .time-card{
      border: 1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.86);
      border-radius: 18px;
      padding: 14px;
      box-shadow: 0 18px 44px rgba(13,45,33,.06);
      position:relative;
      overflow:hidden;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .time-card:hover{
      transform: translateY(-3px);
      border-color: rgba(45,182,125,.22);
      box-shadow: 0 26px 64px rgba(13,45,33,.11);
    }
    .time-card .top{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      margin-bottom: 10px;
    }
    .time-card .top .m{
      width: 36px; height: 36px;
      border-radius: 14px;
      background: rgba(42,169,255,.12);
      border: 1px solid rgba(42,169,255,.22);
      display:flex; align-items:center; justify-content:center;
      color:#0b4b7a;
      font-weight: 950;
      flex:0 0 auto;
    }
    .time-card:nth-child(2n) .top .m{
      background: rgba(45,182,125,.14);
      border-color: rgba(45,182,125,.24);
      color:#0e6c4a;
    }
    .time-card h4{margin:0 0 6px; font-size: 14px}
    .time-card p{margin:0; color: var(--muted); font-size: 13px; line-height:1.7}

    .faq{
      display:grid;
      gap: 10px;
    }
    details.faq-item{
      border:1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.86);
      border-radius: 18px;
      padding: 0;
      box-shadow: 0 18px 44px rgba(13,45,33,.06);
      transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    }
    details.faq-item[open]{
      border-color: rgba(45,182,125,.22);
      box-shadow: 0 26px 64px rgba(13,45,33,.11);
      transform: translateY(-2px);
    }
    details.faq-item summary{
      list-style:none;
      cursor:pointer;
      padding: 14px 16px;
      display:flex; align-items:flex-start; justify-content:space-between;
      gap: 14px;
      outline:none;
    }
    details.faq-item summary::-webkit-details-marker{display:none}
    .q{
      font-weight: 950;
      color:#173f30;
      font-size: 14px;
      line-height:1.5;
      padding-top:2px;
    }
    .chev{
      width: 34px; height: 34px;
      border-radius: 14px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.55);
      display:flex; align-items:center; justify-content:center;
      flex:0 0 auto;
      margin-top: -2px;
      transition: transform .18s ease, background .18s ease, border-color .18s ease;
    }
    details[open] .chev{transform: rotate(180deg); border-color: rgba(45,182,125,.24); background: rgba(223,255,236,.55)}
    .ans{
      padding: 0 16px 16px;
      color: var(--muted);
      font-size: 13px;
      line-height:1.85;
      max-width: 90ch;
    }

    .reviews{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 14px;
    }
    .review{
      padding: 16px;
      background: rgba(255,255,255,.86);
      border:1px solid rgba(20,60,45,.10);
      border-radius: 20px;
      box-shadow: 0 18px 44px rgba(13,45,33,.06);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      position:relative;
      overflow:hidden;
    }
    .review:before{
      content:"";
      position:absolute;
      inset:auto -40px -60px auto;
      width: 160px; height: 160px;
      background: radial-gradient(circle at 30% 30%, rgba(45,182,125,.18), transparent 62%);
      pointer-events:none;
    }
    .review:hover{
      transform: translateY(-3px);
      border-color: rgba(45,182,125,.22);
      box-shadow: 0 26px 64px rgba(13,45,33,.11);
    }
    .review .who{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      margin-bottom: 10px;
      position:relative;
    }
    .avatar{
      display:flex; align-items:center; gap:10px;
    }
    .av{
      width: 42px; height: 42px;
      border-radius: 16px;
      background: linear-gradient(180deg, rgba(45,182,125,.22), rgba(42,169,255,.10));
      border:1px solid rgba(20,60,45,.12);
      display:flex; align-items:center; justify-content:center;
      font-weight: 1000;
      color:#0e6c4a;
      box-shadow: 0 16px 36px rgba(13,45,33,.10);
      flex:0 0 auto;
    }
    .avatar strong{font-size: 13px}
    .avatar span{font-size: 12px; color: var(--muted); margin-top:4px; display:block}
    .review .stars-mini{display:flex; gap:3px; align-items:center}
    .review .stars-mini i{
      width: 12px; height: 12px; display:inline-block;
      background: #ffb020;
      clip-path: polygon(50% 0%, 61% 36%, 98% 36%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 36%, 39% 36%);
      border:1px solid rgba(255,176,32,.45);
    }
    .review p{
      margin:0;
      color: var(--muted);
      font-size: 13px;
      line-height:1.85;
      position:relative;
    }

    .case-grid{
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 14px;
      align-items:stretch;
    }
    .media-panel{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    .image-card{
      border-radius: 20px;
      border: 1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 18px 44px rgba(13,45,33,.06);
      overflow:hidden;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .image-card:hover{
      transform: translateY(-3px);
      border-color: rgba(45,182,125,.22);
      box-shadow: 0 26px 64px rgba(13,45,33,.11);
    }
    .image-box{
      aspect-ratio: 16/10;
      width:100%;
      background: linear-gradient(180deg, rgba(45,182,125,.10), rgba(42,169,255,.06));
      display:flex; align-items:center; justify-content:center;
      position:relative;
      overflow:hidden;
    }
    .image-box img{
      width:100%; height:100%;
      object-fit: cover;
      display:block;
      transform: scale(1.01);
      transition: transform .35s ease;
    }
    .image-card:hover .image-box img{transform: scale(1.06)}
    .image-card .cap{
      padding: 12px 12px 14px;
    }
    .image-card h4{margin:0 0 6px; font-size: 14px}
    .image-card p{margin:0; color: var(--muted); font-size: 13px; line-height:1.7}
    .case-side{
      display:flex; flex-direction:column; gap: 12px;
    }
    .list{
      margin:0; padding:0; list-style:none;
      display:grid; gap: 10px;
    }
    .list li{
      border:1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.86);
      border-radius: 18px;
      padding: 12px 12px;
      box-shadow: 0 18px 44px rgba(13,45,33,.06);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      cursor: default;
    }
    .list li:hover{
      transform: translateY(-2px);
      border-color: rgba(45,182,125,.22);
      box-shadow: 0 26px 64px rgba(13,45,33,.10);
    }
    .list .top{
      display:flex; align-items:flex-start; justify-content:space-between; gap: 12px;
    }
    .list strong{
      font-size: 13px; display:block;
      letter-spacing:.1px;
    }
    .list .meta{
      margin-top:6px;
      color: var(--muted);
      font-size: 12px;
      line-height:1.6;
    }
    .list .chip{
      display:inline-flex; align-items:center; gap:8px;
      padding: 7px 10px;
      border-radius: 999px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.55);
      color:#1b4d38;
      font-size: 12px;
      font-weight: 950;
      white-space:nowrap;
    }

    .article-grid{
      display:grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 14px;
    }
    .article{
      border-radius: 20px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.86);
      box-shadow: 0 18px 44px rgba(13,45,33,.06);
      overflow:hidden;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      display:flex;
      flex-direction:column;
      min-height: 214px;
    }
    .article:hover{
      transform: translateY(-3px);
      border-color: rgba(45,182,125,.22);
      box-shadow: 0 26px 64px rgba(13,45,33,.11);
    }
    .article .art-head{
      padding: 14px 14px 0;
      display:flex; align-items:flex-start; justify-content:space-between; gap: 12px;
    }
    .article .art-head .date{
      color: var(--muted2);
      font-size: 12px;
      white-space:nowrap;
    }
    .article h3{
      margin: 10px 14px 8px;
      font-size: 15px;
      letter-spacing: -0.2px;
    }
    .article p{
      margin: 0 14px 14px;
      color: var(--muted);
      font-size: 13px;
      line-height:1.85;
      flex:1 1 auto;
    }
    .article .art-foot{
      padding: 0 14px 14px;
    }
    .article .read{
      display:inline-flex; align-items:center; gap:10px;
      padding: 10px 12px;
      border-radius: 14px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.55);
      font-weight: 950;
      font-size: 13px;
      color:#1b4d38;
      transition: transform .16s ease, background .16s ease, border-color .16s ease;
      width:100%;
      justify-content:space-between;
    }
    .article .read:hover{
      transform: translateY(-1px);
      border-color: rgba(45,182,125,.24);
      background: rgba(223,255,236,.55);
    }
    .article .read:focus{outline:none; box-shadow: var(--focus)}

    .tag-cloud{
      display:flex; flex-wrap:wrap; gap:10px;
      margin-top: 8px;
    }
    .cloud-item{
      padding: 9px 12px;
      border-radius: 999px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(255,255,255,.78);
      color: #204c39;
      font-weight: 900;
      font-size: 13px;
      transition: transform .16s ease, border-color .16s ease, background .16s ease;
      cursor:pointer;
      user-select:none;
    }
    .cloud-item:hover{
      transform: translateY(-2px);
      border-color: rgba(45,182,125,.22);
      background: rgba(223,255,236,.55);
    }
    .cloud-item:focus{outline:none; box-shadow: var(--focus)}

    .form{
      display:grid;
      gap: 12px;
      margin-top: 8px;
    }
    .form-row{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    label{
      display:flex; flex-direction:column; gap:8px;
      font-size: 13px;
      color:#184635;
      font-weight: 900;
    }
    input, select, textarea{
      width:100%;
      padding: 12px 12px;
      border-radius: 14px;
      border:1px solid rgba(20,60,45,.12);
      background: rgba(255,255,255,.92);
      color: var(--text);
      font-size: 14px;
      outline:none;
      transition: box-shadow .16s ease, border-color .16s ease;
    }
    textarea{min-height: 110px; resize: vertical}
    input:focus, select:focus, textarea:focus{
      border-color: rgba(45,182,125,.40);
      box-shadow: var(--focus);
    }
    .form-actions{
      display:flex; gap:12px; flex-wrap:wrap; align-items:center;
      margin-top: 2px;
    }
    .small-help{
      color: var(--muted2);
      font-size: 12px;
      line-height:1.7;
      flex: 1 1 220px;
    }

    .footer{
      margin-top: 8px;
      background:
        radial-gradient(900px 320px at 20% 0%, rgba(45,182,125,.20), transparent 55%),
        radial-gradient(820px 360px at 80% 20%, rgba(42,169,255,.14), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.75), rgba(236, 251, 243, .95));
      border-top: 1px solid rgba(20,60,45,.10);
      padding: 18px 0 12px;
    }
    .footer-grid{
      display:grid;
      grid-template-columns: 1.2fr .8fr .7fr;
      gap: 14px;
      align-items:start;
    }
    .foot-card{
      background: rgba(255,255,255,.85);
      border:1px solid rgba(20,60,45,.10);
      border-radius: 20px;
      padding: 14px;
      box-shadow: 0 18px 44px rgba(13,45,33,.06);
    }
    .foot-card h3{
      margin: 0 0 10px;
      font-size: 14px;
      letter-spacing:.1px;
    }
    .foot-card p{
      margin:0;
      color: var(--muted);
      font-size: 13px;
      line-height:1.8;
    }
    .foot-links{
      display:flex; flex-wrap:wrap; gap: 10px;
      margin-top: 10px;
    }
    .foot-links a{
      padding: 9px 12px;
      border-radius: 999px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.55);
      color:#1b4d38;
      font-weight: 950;
      font-size: 12px;
      transition: transform .16s ease, border-color .16s ease, background .16s ease;
      width: fit-content;
      max-width: 100%;
    }
    .foot-links a:hover{
      transform: translateY(-2px);
      border-color: rgba(45,182,125,.22);
      background: rgba(223,255,236,.55);
    }
    .contact-row{
      display:flex; gap: 12px; align-items:flex-start;
    }
    .qrcode{
      width: 96px; border-radius: 18px;
      background: rgba(246,251,248,.55);
      border:1px solid rgba(20,60,45,.10);
      padding: 10px;
      flex:0 0 auto;
    }
    .qrcode img{width:100%; height:auto; display:block}
    .contact-list{
      display:flex; flex-direction:column; gap: 8px;
      margin-top: 4px;
    }
    .contact-item{
      display:flex; align-items:flex-start; gap: 10px;
      color: #204c39;
      font-weight: 950;
      font-size: 13px;
    }
    .contact-item span{
      color: var(--muted);
      font-weight: 800;
      font-size: 13px;
      margin-top: 1px;
      word-break: break-word;
    }
    .copyright{
      margin-top: 12px;
      display:flex; align-items:center; justify-content:space-between;
      gap: 12px; flex-wrap:wrap;
      color: var(--muted2);
      font-size: 12px;
      padding: 0 2px;
    }
    .to-top{
      position:fixed;
      right: 16px;
      bottom: 92px;
      z-index:80;
      width: 44px; height: 44px;
      border-radius: 16px;
      border:1px solid rgba(20,60,45,.12);
      background: rgba(255,255,255,.86);
      box-shadow: 0 18px 44px rgba(13,45,33,.10);
      display:flex; align-items:center; justify-content:center;
      cursor:pointer;
      transition: transform .18s ease, opacity .18s ease, background .18s ease;
      opacity:0;
      pointer-events:none;
    }
    .to-top.show{
      opacity:1;
      pointer-events:auto;
    }
    .to-top:hover{transform: translateY(-2px); background: rgba(223,255,236,.55)}
    .to-top:focus{outline:none; box-shadow: var(--focus)}

    .float-cs{
      position:fixed;
      right: 16px;
      bottom: 22px;
      z-index:85;
      display:flex; flex-direction:column; align-items:flex-end; gap: 10px;
    }
    .cs-panel{
      display:none;
      width: 220px;
      background: rgba(255,255,255,.92);
      border:1px solid rgba(20,60,45,.12);
      border-radius: 20px;
      padding: 12px;
      box-shadow: 0 26px 64px rgba(13,45,33,.16);
      overflow:hidden;
      transform-origin: right bottom;
      animation: popIn .18s ease both;
    }
    @keyframes popIn{
      from{opacity:0; transform: translateY(6px) scale(.98)}
      to{opacity:1; transform: translateY(0) scale(1)}
    }
    .cs-panel .cs-title{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      margin-bottom: 10px;
    }
    .cs-panel .cs-title strong{font-size: 13px; letter-spacing:.1px}
    .cs-close{
      width: 30px; height: 30px;
      border-radius: 12px;
      border:1px solid rgba(20,60,45,.10);
      background: rgba(246,251,248,.55);
      cursor:pointer;
      display:flex; align-items:center; justify-content:center;
      transition: transform .16s ease, background .16s ease, border-color .16s ease;
      color:#1b4d38;
      font-weight: 1000;
    }
    .cs-close:hover{transform: translateY(-1px); border-color: rgba(45,182,125,.24); background: rgba(223,255,236,.55)}
    .cs-close:focus{outline:none; box-shadow: var(--focus)}
    .cs-panel .cs-qr{
      width: 100%;
      border-radius: 18px;
      background: rgba(246,251,248,.55);
      border:1px solid rgba(20,60,45,.10);
      padding: 10px;
    }
    .cs-panel .cs-qr img{width:100%; height:auto; display:block}
    .cs-panel .cs-hint{
      margin: 10px 4px 0;
      color: var(--muted);
      font-size: 12px;
      line-height:1.7;
    }
    .cs-btn{
      width: 52px; height: 52px;
      border-radius: 20px;
      background: linear-gradient(180deg, #22c281, #16a36c);
      border:1px solid rgba(45,182,125,.60);
      box-shadow: 0 22px 46px rgba(22,163,108,.26);
      cursor:pointer;
      display:flex; align-items:center; justify-content:center;
      color:#fff;
      font-weight: 1000;
      transition: transform .18s ease, box-shadow .18s ease;
      position:relative;
    }
    .cs-btn:hover{
      transform: translateY(-2px);
      box-shadow: 0 28px 58px rgba(22,163,108,.32);
    }
    .cs-btn:focus{outline:none; box-shadow: var(--focus)}
    .cs-btn .pulse{
      position:absolute;
      width: 14px; height: 14px;
      right: 8px; top: 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.95);
      box-shadow: 0 0 0 0 rgba(255,255,255,.6);
      animation: pulse 1.7s ease infinite;
      opacity:.9;
    }
    @keyframes pulse{
      0%{box-shadow: 0 0 0 0 rgba(255,255,255,.55)}
      70%{box-shadow: 0 0 0 14px rgba(255,255,255,0)}
      100%{box-shadow: 0 0 0 0 rgba(255,255,255,0)}
    }

    .reveal{
      opacity:0;
      transform: translateY(10px);
      transition: opacity .55s ease, transform .55s ease;
    }
    .reveal.in{
      opacity:1;
      transform: translateY(0);
    }
    @media (prefers-reduced-motion: reduce){
      .reveal{transition:none}
      details.faq-item[open]{transform:none}
      .card:hover,.step:hover,.time-card:hover,.review:hover,.image-card:hover,.list li:hover,.article:hover{transform:none}
      .cs-btn .pulse{animation:none}
    }

    @media (max-width: 980px){
      .hero-grid{grid-template-columns: 1fr; }
      .nav-cta{min-width:auto}
      .menu{display:none}
      .hamburger{display:flex}
      .mobile-panel{display:block}
      .mobile-panel[data-open="false"]{display:none}
      .mobile-panel[data-open="true"]{display:block}
      .grid-3{grid-template-columns: 1fr; }
      .split{grid-template-columns: 1fr}
      .timeline{grid-template-columns: 1fr 1fr}
      .reviews{grid-template-columns: 1fr}
      .case-grid{grid-template-columns: 1fr}
      .article-grid{grid-template-columns: 1fr}
      .footer-grid{grid-template-columns: 1fr}
      table{min-width: 720px}
      .form-row{grid-template-columns: 1fr}
      .model-grid{grid-template-columns: 1fr 1fr}
      .pill{min-width: 0}
    }