:root{
      --bg: #fff5f6;
      --panel: #ffffff;
      --text: #1f2328;
      --muted: #5b6672;
      --muted2:#7a8794;
      --border: rgba(31,35,40,.10);
      --shadow: 0 14px 40px rgba(18,12,16,.10);
      --shadow2: 0 8px 24px rgba(18,12,16,.10);
      --brand: #e11d2e;
      --brand2:#ff3b4f;
      --brand3:#b10d1c;
      --accent:#ffedf0;
      --soft:#fff6f7;
      --accent2:#ffe7ea;
      --ring: rgba(225,29,46,.22);
      --good:#118a5a;
      --warn:#d94c3b;
      --link:#b60c1b;
      --radius-xl: 22px;
      --radius-lg: 16px;
      --radius-md: 12px;
      --radius-sm: 10px;
      --container: 1120px;
    }

    *{ box-sizing: border-box; }
    html,body{ height: 100%; }
    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", "Apple Color Emoji","Segoe UI Emoji";
      color: var(--text);
      background: linear-gradient(180deg, #fff7f8 0%, #ffffff 42%, #fff6f7 100%);
    }
    .skip-link{
      position:absolute; left:-999px; top:8px;
      padding:10px 12px; background:#111; color:#fff; border-radius:10px;
      z-index:9999;
    }
    .skip-link:focus{ left:12px; }

    .container{ width: min(var(--container), calc(100% - 32px)); margin: 0 auto; }

    .site-header{
      position: sticky; top: 0; z-index: 50;
      backdrop-filter: blur(10px);
      background: rgba(255,247,248,.72);
      border-bottom: 1px solid rgba(31,35,40,.06);
    }
    .nav-container{
      display:flex; align-items:center; justify-content:space-between;
      padding: 12px 0;
      gap: 14px;
    }
    .brand{ display:flex; align-items:center; gap: 12px; min-width: 240px; }
    .brand-link{ display:flex; align-items:center; gap:12px; text-decoration:none; color: inherit; }
    .ai-page-logo{ width: 42px; height: auto; }
    .brand-meta{ display:flex; flex-direction:column; gap:2px; }
    .brand-name{ font-weight: 860; letter-spacing:.2px; }
    .brand-sub{ font-size: 12px; color: var(--muted); white-space: nowrap; }

    .nav{ display:flex; align-items:center; gap: 14px; flex: 1; justify-content: flex-end; }
    .nav-toggle{
      display:none;
      width: 44px; height: 44px;
      border-radius: 12px;
      border:1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.75);
      box-shadow: 0 10px 24px rgba(0,0,0,.06);
      cursor:pointer;
    }
    .nav-toggle-line{
      display:block; width: 18px; height: 2px;
      background: rgba(31,35,40,.85);
      margin: 4px auto;
      border-radius: 999px;
    }
    .nav-links{ display:flex; align-items:center; gap: 18px; flex-wrap: nowrap; }
    .nav-link{
      text-decoration:none;
      color: rgba(31,35,40,.82);
      font-weight: 650;
      font-size: 14px;
      padding: 10px 6px;
      border-radius: 10px;
      transition: background .2s ease, color .2s ease, transform .2s ease;
    }
    .nav-link:hover{
      background: rgba(225,29,46,.08);
      color: var(--brand3);
      transform: translateY(-1px);
    }
    .nav-cta{ display:flex; align-items:center; gap: 10px; }

    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:10px;
      border-radius: 14px;
      padding: 10px 14px;
      text-decoration:none;
      font-weight: 740;
      border: 1px solid transparent;
      cursor:pointer;
      transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease, color .16s ease;
      user-select:none;
      white-space: nowrap;
    }
    .btn:active{ transform: translateY(1px); }
    .btn-lg{ padding: 12px 18px; border-radius: 16px; font-size: 15px; }
    .btn-sm{ padding: 8px 12px; border-radius: 12px; font-size: 13px; }

    .btn-primary{
      background: linear-gradient(135deg, var(--brand) 0%, var(--brand2) 100%);
      color: #fff;
      border-color: rgba(225,29,46,.25);
      box-shadow: 0 14px 30px rgba(225,29,46,.22);
    }
    .btn-primary:hover{ box-shadow: 0 18px 40px rgba(225,29,46,.26); transform: translateY(-1px); }

    .btn-ghost{
      background: rgba(255,255,255,.78);
      color: rgba(31,35,40,.86);
      border-color: rgba(31,35,40,.12);
    }
    .btn-ghost:hover{ border-color: rgba(225,29,46,.28); box-shadow: 0 12px 26px rgba(0,0,0,.06); transform: translateY(-1px); }

    .btn-outline{
      background: rgba(255,255,255,.86);
      border-color: rgba(31,35,40,.14);
      color: rgba(31,35,40,.88);
    }
    .btn-outline:hover{ border-color: rgba(225,29,46,.35); box-shadow: 0 12px 26px rgba(0,0,0,.06); transform: translateY(-1px); }

    .btn-soft{
      background: rgba(225,29,46,.10);
      border-color: rgba(225,29,46,.18);
      color: var(--brand3);
    }
    .btn-soft:hover{ box-shadow: 0 12px 26px rgba(225,29,46,.12); transform: translateY(-1px); }

    .btn-link{
      background: transparent; border-color: transparent; padding: 10px 8px;
      color: var(--link); font-weight: 760;
      text-decoration: none;
      transition: transform .16s ease, color .16s ease;
    }
    .btn-link:hover{ transform: translateY(-1px); color: var(--brand3); }

    .btn-icon{ display:inline-flex; width: 22px; height: 22px; align-items:center; justify-content:center; background: rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.20); border-radius: 10px; }

    .hero{ position: relative; overflow:hidden; padding: 46px 0 24px; }
    .hero-bg{
      position:absolute; inset:0;
      background: radial-gradient(1000px 420px at 18% 10%, rgba(225,29,46,.18) 0%, rgba(225,29,46,0) 60%),
                  radial-gradient(900px 360px at 85% 18%, rgba(255,59,79,.12) 0%, rgba(255,59,79,0) 58%);
      pointer-events:none;
    }
    .hero-grid{
      position:absolute; inset:-200px -120px auto -120px; height: 560px;
      background-image: linear-gradient(to right, rgba(31,35,40,.06) 1px, transparent 1px),
                        linear-gradient(to bottom, rgba(31,35,40,.06) 1px, transparent 1px);
      background-size: 38px 38px;
      transform: rotate(-7deg);
      opacity: .45;
      mask-image: radial-gradient(closest-side at 20% 40%, #000 40%, transparent 75%);
    }
    .hero-orbs{
      position:absolute; inset:0;
      background:
        radial-gradient(320px 220px at 15% 22%, rgba(255,255,255,.70) 0%, rgba(255,255,255,0) 70%),
        radial-gradient(420px 280px at 75% 18%, rgba(255,59,79,.16) 0%, rgba(255,59,79,0) 70%),
        radial-gradient(520px 300px at 70% 70%, rgba(225,29,46,.10) 0%, rgba(225,29,46,0) 68%);
      opacity: .9;
      filter: blur(.2px);
      pointer-events:none;
      animation: floaty 10s ease-in-out infinite;
    }
    @keyframes floaty{
      0%,100%{ transform: translate3d(0,0,0); }
      50%{ transform: translate3d(0,-10px,0); }
    }

    .hero-content{
      display:grid; grid-template-columns: 1.12fr .88fr; gap: 22px; align-items: start;
      position:relative; z-index:2;
      padding-top: 12px;
    }
    .pill-row{ display:flex; gap:10px; flex-wrap: wrap; margin-bottom: 14px; }
    .pill{
      display:inline-flex; align-items:center; justify-content:center;
      padding: 8px 12px;
      border-radius: 999px;
      font-weight: 760;
      font-size: 13px;
      border: 1px solid rgba(225,29,46,.18);
      background: rgba(225,29,46,.08);
      color: var(--brand3);
    }
    .pill-quiet{
      background: rgba(255,255,255,.78);
      border-color: rgba(31,35,40,.12);
      color: rgba(31,35,40,.86);
    }

    .hero-title{
      font-size: 38px;
      line-height: 1.12;
      margin: 6px 0 12px;
      letter-spacing: -0.5px;
    }
    .hero-lead{
      color: rgba(31,35,40,.78);
      font-weight: 560;
      line-height: 1.7;
      margin: 0 0 18px;
      max-width: 640px;
      font-size: 15.5px;
    }

    .hero-actions{ display:flex; gap: 12px; flex-wrap: wrap; margin: 8px 0 18px; }
    .hero-quick{
      display:grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px;
      margin-top: 10px;
    }
    .quick-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.78);
      border-radius: 16px;
      padding: 12px 12px;
      display:flex; gap: 10px; align-items:flex-start;
      box-shadow: 0 12px 26px rgba(0,0,0,.04);
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .quick-item:hover{
      transform: translateY(-2px);
      border-color: rgba(225,29,46,.28);
      box-shadow: 0 18px 34px rgba(0,0,0,.06);
    }
    .quick-ic{
      width: 34px; height: 34px; border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      font-size: 16px;
      flex: 0 0 auto;
    }
    .quick-title{ font-weight: 820; font-size: 13.8px; margin-top: 1px; }
    .quick-desc{ color: rgba(31,35,40,.68); font-size: 12.8px; margin-top: 4px; line-height:1.35; }

    .hero-right{ display:flex; flex-direction:column; gap: 14px; }
    .data-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      box-shadow: var(--shadow2);
      padding: 18px;
      overflow:hidden;
      position:relative;
    }
    .data-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 120px;
      background: radial-gradient(500px 120px at 30% 0%, rgba(225,29,46,.22) 0%, rgba(225,29,46,0) 62%);
      pointer-events:none;
    }
    .data-card-head{ position:relative; z-index:1; }
    .data-card-title{ font-weight: 900; font-size: 16px; }
    .data-card-sub{ color: rgba(31,35,40,.68); margin-top: 6px; font-size: 13px; line-height:1.45; }

    .metrics{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
      margin-top: 14px;
      position:relative; z-index:1;
    }
    .metric{
      border: 1px solid rgba(31,35,40,.10);
      border-radius: 16px;
      background: rgba(255,255,255,.72);
      padding: 12px 12px;
      transition: transform .18s ease, border-color .18s ease;
    }
    .metric:hover{
      transform: translateY(-2px);
      border-color: rgba(225,29,46,.28);
    }
    .metric-value{
      font-size: 20px; font-weight: 950;
      letter-spacing: -0.3px;
      display:flex; align-items:baseline; gap: 6px;
    }
    .unit{ font-size: 12px; color: rgba(31,35,40,.58); font-weight: 800; }
    .metric-label{ margin-top: 6px; color: rgba(31,35,40,.70); font-weight: 650; font-size: 13px; line-height:1.35; }

    .data-card-foot{
      display:flex; gap: 10px; flex-wrap: wrap;
      margin-top: 14px; position:relative; z-index:1;
    }

    .mini-panels{
      display:grid; grid-template-columns: 1fr 1fr; gap: 12px;
    }
    .mini-panel{
      border: 1px solid rgba(31,35,40,.10);
      border-radius: 18px;
      background: rgba(255,255,255,.80);
      padding: 14px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      transition: transform .18s ease, border-color .18s ease;
    }
    .mini-panel:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.25); }
    .mini-top{ display:flex; align-items:center; justify-content:space-between; gap: 10px; }
    .mini-tag{
      font-weight: 860; font-size: 12.5px;
      color: var(--brand3);
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.20);
      padding: 6px 10px;
      border-radius: 999px;
    }
    .mini-tag-soft{
      color: rgba(31,35,40,.86);
      background: rgba(255,255,255,.8);
      border-color: rgba(31,35,40,.12);
    }
    .mini-dot{
      width:10px; height:10px; border-radius:50%;
      background: rgba(225,29,46,.35);
      box-shadow: 0 0 0 5px rgba(225,29,46,.10);
    }
    .mini-title{ margin-top: 10px; font-weight: 920; letter-spacing: -.2px; }
    .mini-text{ margin-top: 7px; color: rgba(31,35,40,.70); font-size: 13px; line-height:1.5; }

    .hero-strip{ padding: 14px 0 2px; }
    .strip-inner{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.72);
      border-radius: 999px;
      display:flex; align-items:center; justify-content:space-between;
      gap: 14px;
      padding: 10px 14px;
      box-shadow: 0 14px 30px rgba(0,0,0,.04);
    }
    .strip-title{ font-weight: 900; color: rgba(31,35,40,.86); padding-left: 6px; }
    .strip-tags{ display:flex; gap: 10px; flex-wrap: wrap; justify-content:flex-end; }
    .tag-pill{
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(225,29,46,.08);
      border: 1px solid rgba(225,29,46,.16);
      color: var(--brand3);
      font-weight: 780;
      font-size: 13px;
      transition: transform .18s ease, background .18s ease, border-color .18s ease;
    }
    .tag-pill:hover{ transform: translateY(-1px); border-color: rgba(225,29,46,.30); background: rgba(225,29,46,.10); }
    .tag-pill-strong{ background: rgba(225,29,46,.12); border-color: rgba(225,29,46,.28); }

    .section{ padding: 56px 0; }
    .section-muted{ background: rgba(255,255,255,.62); border-top: 1px solid rgba(31,35,40,.05); border-bottom: 1px solid rgba(31,35,40,.05); }
    .section-accent{ background: linear-gradient(180deg, rgba(225,29,46,.06) 0%, rgba(255,255,255,.0) 44%); }
    .section-accent2{ background: linear-gradient(180deg, rgba(225,29,46,.08) 0%, rgba(255,255,255,.62) 70%); }

    .section-head{
      margin-bottom: 22px;
      display:flex; flex-direction:column; gap: 8px;
      max-width: 820px;
    }
    .h2{
      margin:0;
      font-size: 28px;
      letter-spacing:-0.4px;
      font-weight: 950;
    }
    .h3{
      margin:0;
      font-size: 16px;
      font-weight: 910;
      letter-spacing: -.2px;
    }
    .section-sub{
      margin:0;
      color: rgba(31,35,40,.70);
      line-height: 1.7;
      font-weight: 580;
      font-size: 14.5px;
    }

    .card{
      background: rgba(255,255,255,.80);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 26px rgba(0,0,0,.04);
    }
    .card-feature{ position:relative; overflow:hidden; }
    .card-feature:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 120px;
      background: radial-gradient(520px 120px at 25% 0%, rgba(225,29,46,.18) 0%, rgba(225,29,46,0) 60%);
      pointer-events:none;
    }
    .card-ico{
      width: 44px; height: 44px; border-radius: 18px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.20);
      font-size: 18px;
      margin-bottom: 12px;
      position:relative; z-index:1;
    }
    .card-text{
      color: rgba(31,35,40,.72);
      line-height: 1.65;
      margin: 0;
      font-weight: 560;
      font-size: 14px;
      position:relative; z-index:1;
    }
    .chip-row{ display:flex; gap: 8px; flex-wrap: wrap; margin-top: 14px; position:relative; z-index:1; }
    .chip{
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(31,35,40,.04);
      border: 1px solid rgba(31,35,40,.10);
      color: rgba(31,35,40,.82);
      font-weight: 760;
      font-size: 12.5px;
    }

    .about-grid{
      display:grid; grid-template-columns: repeat(4, 1fr);
      gap: 14px;
    }

    .service-grid{
      display:grid; grid-template-columns: 1.08fr .92fr .92fr;
      gap: 14px;
      align-items: stretch;
    }
    .service-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 26px rgba(0,0,0,.04);
      position:relative;
      overflow:hidden;
    }
    .service-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 120px;
      background: radial-gradient(520px 120px at 22% 0%, rgba(225,29,46,.18) 0%, rgba(225,29,46,0) 62%);
      pointer-events:none;
    }
    .service-title{ margin: 2px 0 8px; font-weight: 960; font-size: 18px; position:relative; z-index:1; }
    .service-text{ margin:0 0 12px; color: rgba(31,35,40,.70); line-height:1.7; font-weight: 580; position:relative; z-index:1; }
    .service-list{ margin:0; padding-left: 18px; color: rgba(31,35,40,.74); font-weight: 600; line-height: 1.7; position:relative; z-index:1; }
    .service-list li{ margin: 6px 0; }

    .service-metrics{ display:grid; gap: 10px; margin: 10px 0 14px; position:relative; z-index:1; }
    .service-metric{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; gap: 10px; align-items:flex-start;
    }
    .service-metric-ic{
      width: 34px; height: 34px; border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      flex: 0 0 auto;
    }
    .service-metric-text{ font-weight: 760; color: rgba(31,35,40,.78); line-height:1.35; font-size: 13.5px; padding-top: 2px; }

    .service-flow-mini{ display:flex; flex-direction:column; gap: 10px; position:relative; z-index:1; margin-top: 10px; }
    .flow-step{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; gap: 10px; align-items:flex-start;
    }
    .flow-badge{
      width: 34px; height: 34px; border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      font-weight: 960;
    }
    .flow-name{ font-weight: 900; }
    .flow-desc{ color: rgba(31,35,40,.68); font-weight: 600; font-size: 13.2px; line-height:1.4; margin-top: 3px; }

    .steps{
      display:grid; grid-template-columns: repeat(5, 1fr);
      gap: 12px;
      align-items: stretch;
    }
    .step-card{
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 16px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      transition: transform .18s ease, border-color .18s ease;
      position:relative;
      overflow:hidden;
    }
    .step-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 90px;
      background: radial-gradient(420px 90px at 30% 0%, rgba(225,29,46,.18) 0%, rgba(225,29,46,0) 60%);
      pointer-events:none;
    }
    .step-card:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .step-num{
      font-weight: 980; letter-spacing: .6px;
      color: rgba(225,29,46,.92);
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      padding: 8px 10px;
      border-radius: 14px;
      display:inline-block;
      position:relative; z-index:1;
    }
    .step-title{ margin: 12px 0 8px; font-weight: 950; font-size: 16px; position:relative; z-index:1; }
    .step-text{ margin:0; color: rgba(31,35,40,.70); line-height:1.65; font-weight: 580; font-size: 13.8px; position:relative; z-index:1; }

    .inline-cta{
      margin-top: 18px;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: var(--radius-xl);
      padding: 16px;
      display:flex; align-items:center; justify-content:space-between; gap: 12px;
      box-shadow: 0 12px 26px rgba(0,0,0,.04);
    }
    .inline-cta-title{ font-weight: 980; letter-spacing:-.2px; }
    .inline-cta-sub{ margin-top: 4px; color: rgba(31,35,40,.70); font-weight: 600; font-size: 14px; }
    .inline-cta-actions{ display:flex; gap: 10px; flex-wrap: wrap; justify-content:flex-end; }

    .solution-grid{
      display:grid; grid-template-columns: repeat(4, 1fr);
      gap: 14px;
    }
    .solution-card{
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      transition: transform .18s ease, border-color .18s ease;
    }
    .solution-card:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .solution-top{ display:flex; align-items:center; justify-content:space-between; gap: 10px; }
    .solution-ic{
      width: 44px; height: 44px; border-radius: 18px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      font-size: 18px;
      flex: 0 0 auto;
    }
    .solution-title{ font-weight: 980; letter-spacing:-.2px; font-size: 16px; }
    .solution-text{ margin: 12px 0 12px; color: rgba(31,35,40,.72); line-height:1.7; font-weight: 580; font-size: 14px; }
    .solution-tags{ display:flex; gap: 8px; flex-wrap: wrap; }

    .network-wrap{ display:grid; grid-template-columns: 1.05fr .95fr; gap: 14px; align-items: start; }
    .timeline{
      margin-top: 14px;
      display:flex; flex-direction:column; gap: 12px;
    }
    .timeline-item{ display:flex; gap: 12px; align-items:flex-start; }
    .timeline-dot{
      width: 14px; height: 14px; border-radius: 50%;
      background: rgba(225,29,46,.75);
      box-shadow: 0 0 0 6px rgba(225,29,46,.12);
      margin-top: 6px;
      flex: 0 0 auto;
    }
    .timeline-title{ font-weight: 950; }
    .timeline-sub{ color: rgba(31,35,40,.70); font-weight: 600; font-size: 13.5px; line-height:1.5; margin-top: 4px; }

    .map-card{
      border-radius: var(--radius-xl);
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.82);
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      padding: 18px;
      position:relative;
      overflow:hidden;
    }
    .map-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 140px;
      background: radial-gradient(520px 140px at 50% 0%, rgba(225,29,46,.20) 0%, rgba(225,29,46,0) 60%);
      pointer-events:none;
    }
    .map-head{ position:relative; z-index:1; }
    .map-title{ font-weight: 980; letter-spacing:-.2px; }
    .map-sub{ margin-top:6px; color: rgba(31,35,40,.68); font-weight: 600; font-size: 13.8px; line-height:1.5; }
    .map-grid{
      display:grid; grid-template-columns: 1fr 1fr; gap: 10px;
      margin-top: 14px;
      position:relative; z-index:1;
    }
    .map-node{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; gap: 10px; align-items:center;
      font-weight: 850;
      color: rgba(31,35,40,.80);
      transition: transform .18s ease, border-color .18s ease;
    }
    .map-node:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .node-ic{
      width: 34px; height: 34px; border-radius: 14px;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      display:flex; align-items:center; justify-content:center;
      flex: 0 0 auto;
    }
    .map-actions{ display:flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; position:relative; z-index:1; }

    .process-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items:start; }
    .process-col{ display:flex; flex-direction:column; gap: 14px; }
    .process-connector{ display:none; }

    .process-card{
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      position:relative;
      overflow:hidden;
      transition: transform .18s ease, border-color .18s ease;
    }
    .process-card:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .process-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 120px;
      background: radial-gradient(520px 120px at 18% 0%, rgba(225,29,46,.20) 0%, rgba(225,29,46,0) 60%);
      pointer-events:none;
    }
    .process-highlight{
      background: linear-gradient(180deg, rgba(225,29,46,.08) 0%, rgba(255,255,255,.86) 100%);
      border-color: rgba(225,29,46,.20);
    }
    .process-step{
      width: 52px; height: 52px;
      border-radius: 18px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      font-weight: 980;
      color: rgba(225,29,46,.92);
      letter-spacing: .4px;
      position:relative; z-index:1;
    }
    .process-title{ margin: 12px 0 8px; font-weight: 980; position:relative; z-index:1; }
    .process-text{ margin:0; color: rgba(31,35,40,.72); line-height:1.7; font-weight: 580; position:relative; z-index:1; }
    .process-mini-list{ display:flex; flex-direction:column; gap: 8px; margin-top: 12px; position:relative; z-index:1; }
    .mini-li{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 14px;
      padding: 10px 12px;
      font-weight: 840;
      color: rgba(31,35,40,.80);
    }

    .cta-row{
      margin-top: 16px;
      border-radius: var(--radius-xl);
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      padding: 16px;
      display:flex; align-items:center; justify-content:space-between; gap: 12px;
      box-shadow: 0 12px 26px rgba(0,0,0,.04);
    }
    .cta-title{ font-weight: 980; letter-spacing:-.2px; }
    .cta-sub{ margin-top: 4px; color: rgba(31,35,40,.70); font-weight: 600; font-size: 14px; }

    .case-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
    .case-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      transition: transform .18s ease, border-color .18s ease;
      overflow:hidden;
      position:relative;
    }
    .case-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 120px;
      background: radial-gradient(520px 120px at 30% 0%, rgba(225,29,46,.18) 0%, rgba(225,29,46,0) 60%);
      pointer-events:none;
    }
    .case-card:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .case-head{ display:flex; align-items:center; justify-content:space-between; gap: 10px; position:relative; z-index:1; }
    .case-badge{
      font-weight: 900; font-size: 12.8px; color: rgba(225,29,46,.95);
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      padding: 6px 10px; border-radius: 999px;
    }
    .case-badge-2{ color:#0f6a45; background: rgba(17,138,90,.10); border-color: rgba(17,138,90,.22); }
    .case-badge-3{ color:#1d4ed8; background: rgba(29,78,216,.10); border-color: rgba(29,78,216,.22); }
    .case-time{ color: rgba(31,35,40,.62); font-weight: 750; font-size: 12.8px; }
    .case-title{ margin: 12px 0 8px; font-weight: 990; font-size: 16px; position:relative; z-index:1; letter-spacing:-.2px; }
    .case-text{ margin:0; color: rgba(31,35,40,.72); line-height:1.7; font-weight: 580; font-size: 14px; position:relative; z-index:1; }
    .case-tags{ display:flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; position:relative; z-index:1; }

    .rating-row{ display:grid; grid-template-columns: 1fr 0.9fr; gap: 14px; align-items: start; margin-bottom: 14px; }
    .rating-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .rating-top{ display:flex; align-items:flex-start; justify-content:space-between; gap: 14px; }
    .rating-label{ font-weight: 900; color: rgba(31,35,40,.84); }
    .rating-stars{ font-size: 18px; letter-spacing: 2px; color: rgba(225,29,46,.95); }
    .rating-score{ display:flex; align-items:baseline; gap: 10px; margin-top: 12px; }
    .rating-value{ font-size: 44px; font-weight: 1000; letter-spacing:-.8px; color: rgba(225,29,46,.95); }
    .rating-max{ color: rgba(31,35,40,.65); font-weight: 850; }
    .rating-note{ margin-top: 10px; color: rgba(31,35,40,.72); line-height:1.65; font-weight: 580; }

    .rating-side{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .side-title{ font-weight: 990; letter-spacing:-.2px; }
    .side-list{ list-style:none; padding:0; margin: 12px 0 14px; display:flex; flex-direction:column; gap: 10px; }
    .side-list li{ font-weight: 700; color: rgba(31,35,40,.78); line-height:1.4; }
    .tick{ color: rgba(17,138,90,.95); font-weight: 1000; margin-right: 8px; }
    .compare-table-wrap{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 16px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      overflow:hidden;
    }
    .table-head{ display:flex; align-items:flex-end; justify-content:space-between; gap: 12px; padding: 6px 4px 12px; }
    .table-title{ font-weight: 990; letter-spacing:-.2px; }
    .table-sub{ color: rgba(31,35,40,.68); font-weight: 600; }
    .table-scroll{ overflow:auto; border-radius: 14px; border: 1px solid rgba(31,35,40,.10); background: rgba(255,255,255,.60); }
    .compare-table{
      width: 100%;
      border-collapse: collapse;
      min-width: 820px;
    }
    .compare-table th, .compare-table td{
      padding: 12px 14px;
      border-bottom: 1px solid rgba(31,35,40,.08);
      text-align:left;
      vertical-align: top;
      font-weight: 650;
      color: rgba(31,35,40,.82);
      font-size: 14px;
    }
    .compare-table th{
      position: sticky; top: 0;
      background: rgba(255,247,248,.92);
      z-index: 1;
      font-weight: 900;
    }
    .badge{
      display:inline-flex; align-items:center;
      padding: 6px 10px;
      border-radius: 999px;
      font-weight: 920;
      font-size: 12.5px;
      border: 1px solid rgba(0,0,0,.08);
      margin-right: 8px;
      transform: translateY(-1px);
    }
    .badge-good{ color: rgba(17,138,90,.95); background: rgba(17,138,90,.10); border-color: rgba(17,138,90,.20); }
    .badge-warn{ color: rgba(217,76,59,.95); background: rgba(217,76,59,.10); border-color: rgba(217,76,59,.20); }
    .table-foot{
      display:flex; align-items:flex-start; justify-content:space-between; gap: 14px;
      padding: 14px 6px 6px;
    }
    .table-foot-title{ font-weight: 980; }
    .table-foot-sub{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; }
    .table-foot-right{ display:flex; gap: 10px; flex-wrap: wrap; justify-content:flex-end; }

    .pricing-grid{
      display:grid; grid-template-columns: 0.92fr 1.05fr .88fr;
      gap: 14px;
      align-items: start;
    }
    .price-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      overflow:hidden;
      position:relative;
    }
    .price-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 120px;
      background: radial-gradient(520px 120px at 20% 0%, rgba(225,29,46,.18) 0%, rgba(225,29,46,0) 60%);
      pointer-events:none;
    }
    .price-card-strong{ border-color: rgba(225,29,46,.18); background: linear-gradient(180deg, rgba(225,29,46,.08) 0%, rgba(255,255,255,.88) 90%); }
    .price-title{ font-weight: 990; letter-spacing:-.2px; position:relative; z-index:1; }
    .price-text{ margin-top: 10px; color: rgba(31,35,40,.72); line-height:1.7; font-weight: 580; position:relative; z-index:1; }
    .price-list{ margin-top: 12px; display:flex; flex-direction:column; gap: 10px; position:relative; z-index:1; }
    .price-li{ display:flex; gap: 10px; align-items:flex-start; color: rgba(31,35,40,.78); font-weight: 730; }
    .price-formula{ position:relative; z-index:1; margin-top: 12px; display:grid; gap: 12px; }
    .formula-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; gap: 10px; align-items:flex-start;
    }
    .formula-ic{
      width: 34px; height: 34px; border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      font-weight: 980; color: rgba(225,29,46,.95);
      flex: 0 0 auto;
    }
    .formula-title{ font-weight: 980; }
    .formula-sub{ margin-top: 4px; color: rgba(31,35,40,.68); font-weight: 600; font-size: 13.5px; line-height:1.4; }

    .price-cta{
      position:relative; z-index:1;
      margin-top: 14px;
      border-top: 1px dashed rgba(31,35,40,.12);
      padding-top: 14px;
      display:flex; align-items:center; justify-content:space-between; gap: 12px; flex-wrap: wrap;
    }
    .price-cta-title{ font-weight: 990; }
    .price-cta-sub{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; }
    .price-badges{ position:relative; z-index:1; margin-top: 12px; display:flex; gap: 8px; flex-wrap: wrap; }

    .match-grid{ display:grid; grid-template-columns: 0.95fr 1.05fr; gap: 14px; align-items:start; }
    .match-left{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .match-head{ margin-bottom: 12px; }
    .match-title{ font-weight: 990; letter-spacing:-.2px; font-size: 18px; }
    .match-sub{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; }
    .match-points{ display:flex; flex-direction:column; gap: 12px; margin-top: 10px; }
    .match-point{
      display:flex; gap: 12px; align-items:flex-start;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
    }
    .match-ic{
      width: 40px; height: 40px; border-radius: 16px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      flex: 0 0 auto;
      font-size: 18px;
    }
    .match-point-title{ font-weight: 980; }
    .match-point-sub{ margin-top: 5px; color: rgba(31,35,40,.68); font-weight: 600; line-height:1.4; font-size: 13.6px; }
    .match-highlight{
      margin-top: 14px;
      border-top: 1px dashed rgba(31,35,40,.12);
      padding-top: 14px;
      display:grid; gap: 10px;
    }
    .highlight-row{
      display:flex; gap: 10px; align-items:flex-start;
      color: rgba(31,35,40,.80);
      font-weight: 720;
    }
    .highlight-ic{
      width: 32px; height: 32px; border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(31,35,40,.05);
      border: 1px solid rgba(31,35,40,.10);
      flex: 0 0 auto;
    }
    .highlight-title{ font-weight: 900; }
    .highlight-sub{ margin-top: 3px; color: rgba(31,35,40,.66); font-weight: 650; }

    .match-right{ display:flex; flex-direction:column; gap: 12px; }
    .form-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .form-card-compact{ padding: 16px; }
    .form-head{ margin-bottom: 12px; }
    .form-title{ font-weight: 990; letter-spacing:-.2px; font-size: 18px; }
    .form-sub{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; }

    .form{ display:flex; flex-direction:column; gap: 12px; }
    .field-row{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .field{ display:flex; flex-direction:column; gap: 7px; }
    .label{ font-weight: 860; color: rgba(31,35,40,.86); font-size: 13.5px; }
    input, select, textarea{
      width: 100%;
      border-radius: 14px;
      border: 1px solid rgba(31,35,40,.12);
      background: rgba(255,255,255,.88);
      padding: 11px 12px;
      outline: none;
      color: rgba(31,35,40,.92);
      font-weight: 650;
      transition: box-shadow .15s ease, border-color .15s ease, transform .15s ease;
    }
    textarea{ resize: vertical; min-height: 116px; }
    input:focus, select:focus, textarea:focus{
      border-color: rgba(225,29,46,.35);
      box-shadow: 0 0 0 6px var(--ring);
    }
    .field-hint{ color: rgba(31,35,40,.58); font-weight: 600; font-size: 12.6px; line-height:1.4; }

    .form-actions{ display:flex; gap: 12px; flex-wrap: wrap; }
    .form-privacy{
      display:flex; gap: 10px; align-items:center;
      color: rgba(31,35,40,.62);
      font-weight: 600;
      font-size: 12.6px;
      margin-top: -2px;
    }
    .privacy-dot{
      width: 9px; height: 9px; border-radius: 50%;
      background: rgba(225,29,46,.55);
      box-shadow: 0 0 0 6px rgba(225,29,46,.10);
    }

    .form-safety{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .safety-card{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: var(--radius-lg);
      padding: 14px;
      box-shadow: 0 10px 22px rgba(0,0,0,.03);
    }
    .safety-top{ display:flex; gap: 10px; align-items:center; }
    .safety-ic{ width: 34px; height: 34px; border-radius: 14px; display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10); border: 1px solid rgba(225,29,46,.22); }
    .safety-title{ font-weight: 980; }
    .safety-text{ margin-top: 8px; color: rgba(31,35,40,.70); font-weight: 600; line-height:1.55; font-size: 13.5px; }

    .training-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items:start; }
    .training-left, .training-right{ display:flex; flex-direction:column; gap: 14px; }
    .training-left{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .training-hero{ margin-bottom: 10px; }
    .training-title{ font-weight: 990; letter-spacing:-.2px; font-size: 18px; }
    .training-sub{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; }

    .course-list{ display:flex; flex-direction:column; gap: 12px; margin-top: 12px; }
    .course-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; gap: 12px; align-items:flex-start;
    }
    .course-num{
      width: 44px; height: 44px; border-radius: 18px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      font-weight: 990; color: rgba(225,29,46,.95);
      flex: 0 0 auto;
    }
    .course-name{ font-weight: 980; }
    .course-desc{ margin-top: 5px; color: rgba(31,35,40,.68); font-weight: 600; line-height:1.4; font-size: 13.5px; }

    .cert-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      position:relative;
      overflow:hidden;
    }
    .cert-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 120px;
      background: radial-gradient(520px 120px at 24% 0%, rgba(225,29,46,.22) 0%, rgba(225,29,46,0) 62%);
      pointer-events:none;
    }
    .cert-head{ display:flex; align-items:center; justify-content:space-between; gap: 12px; position:relative; z-index:1; }
    .cert-tag{
      font-weight: 920; font-size: 12.8px;
      padding: 7px 10px;
      border-radius: 999px;
      border: 1px solid rgba(225,29,46,.22);
      background: rgba(225,29,46,.10);
      color: rgba(225,29,46,.95);
    }
    .cert-icon{ font-size: 18px; }
    .cert-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 14px; position:relative; z-index:1; }
    .cert-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
    }
    .cert-ic{
      width: 40px; height: 40px; border-radius: 16px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      margin-bottom: 10px;
      font-size: 18px;
    }
    .cert-title{ font-weight: 980; }
    .cert-text{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; line-height:1.5; font-size: 13.5px; }
    .cert-actions{ display:flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; position:relative; z-index:1; }

    .train-snap{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .snap-card{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.72);
      border-radius: var(--radius-lg);
      padding: 14px;
      box-shadow: 0 10px 22px rgba(0,0,0,.03);
    }
    .snap-title{ font-weight: 980; letter-spacing:-.2px; }
    .snap-list{ margin: 10px 0 0; padding-left: 18px; color: rgba(31,35,40,.72); font-weight: 650; line-height: 1.7; }

    .help-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .help-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .help-actions{ display:flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }

    .cap-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 12px; }
    .cap-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      font-weight: 850;
      color: rgba(31,35,40,.80);
    }
    .cap-ic{
      width: 34px; height: 34px; border-radius: 14px;
      display:inline-flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10); border: 1px solid rgba(225,29,46,.22);
      margin-right: 10px;
      transform: translateY(2px);
    }

    .faq-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .faq-col{ display:flex; flex-direction:column; gap: 12px; }

    .faq-item{
      border-radius: var(--radius-xl);
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.84);
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      overflow:hidden;
      transition: border-color .18s ease;
    }
    .faq-q{
      width:100%;
      text-align:left;
      background: transparent;
      border: none;
      padding: 16px 16px;
      cursor:pointer;
      font-weight: 920;
      display:flex; align-items:center; justify-content:space-between; gap: 14px;
      color: rgba(31,35,40,.90);
      font-size: 15px;
    }
    .faq-plus{
      width: 32px; height: 32px;
      border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      color: rgba(225,29,46,.95);
      font-size: 18px;
      flex: 0 0 auto;
      transition: transform .18s ease;
    }
    .faq-item.open{
      border-color: rgba(225,29,46,.28);
      background: rgba(255,255,255,.92);
    }
    .faq-item.open .faq-plus{ transform: rotate(45deg); }
    .faq-a{
      max-height: 0;
      overflow:hidden;
      transition: max-height .25s ease;
      border-top: 1px solid rgba(31,35,40,.08);
    }
    .faq-a-inner{
      padding: 14px 16px 16px;
      color: rgba(31,35,40,.72);
      font-weight: 600;
      line-height: 1.7;
      font-size: 14px;
    }
    .faq-item.open .faq-a{ max-height: 260px; }

    .faq-foot{
      margin-top: 14px;
      border-radius: var(--radius-xl);
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.72);
      padding: 16px;
      display:flex; align-items:center; justify-content:space-between; gap: 12px;
      box-shadow: 0 12px 26px rgba(0,0,0,.04);
    }
    .faq-foot-title{ font-weight: 990; letter-spacing:-.2px; }
    .faq-foot-sub{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; line-height:1.5; }

    .wiki-grid{
      display:grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
    }
    .wiki-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      transition: transform .18s ease, border-color .18s ease;
      position:relative; overflow:hidden;
    }
    .wiki-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 110px;
      background: radial-gradient(520px 110px at 24% 0%, rgba(225,29,46,.18) 0%, rgba(225,29,46,0) 62%);
      pointer-events:none;
    }
    .wiki-card:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .wiki-title{ font-weight: 990; letter-spacing:-.2px; position:relative; z-index:1; }
    .wiki-text{ margin: 10px 0 0; color: rgba(31,35,40,.72); font-weight: 600; line-height:1.7; position:relative; z-index:1; }
    .wiki-link-row{ margin-top: 14px; position:relative; z-index:1; }

    .text-link{
      color: var(--link);
      text-decoration: none;
      font-weight: 820;
    }
    .text-link:hover{ text-decoration: underline; }

    .network-badges{ margin-top: 14px; }
    .badges-row{ display:flex; gap: 10px; flex-wrap: wrap; }
    .badge-soft{
      padding: 8px 12px;
      border-radius: 999px;
      background: rgba(31,35,40,.04);
      border: 1px solid rgba(31,35,40,.10);
      font-weight: 850;
      color: rgba(31,35,40,.78);
    }

    .news-grid{ display:grid; grid-template-columns: 1.15fr .85fr; gap: 14px; }
    .news-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .news-head{ display:flex; align-items:flex-end; justify-content:space-between; gap: 12px; }
    .news-title{ font-weight: 990; letter-spacing:-.2px; }
    .news-sub{ color: rgba(31,35,40,.68); font-weight: 600; font-size: 13.5px; }
    .news-list{ margin-top: 14px; display:flex; flex-direction:column; gap: 10px; }
    .news-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; align-items:flex-start; justify-content:space-between; gap: 12px;
      transition: transform .18s ease, border-color .18s ease;
    }
    .news-item:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .news-link{
      color: rgba(31,35,40,.86);
      font-weight: 900;
      text-decoration:none;
      line-height:1.35;
    }
    .news-link:hover{ text-decoration: underline; color: var(--brand3); }
    .news-meta{ color: rgba(31,35,40,.60); font-weight: 650; font-size: 13px; white-space: nowrap; padding-top: 2px; }
    .news-footer{ display:flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }

    .news-side{ display:flex; flex-direction:column; gap: 14px; }
    .side-block{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .side-block-title{ font-weight: 990; letter-spacing:-.2px; margin-bottom: 12px; }
    .side-links{ display:flex; flex-direction:column; gap: 10px; }
    .side-link{
      text-decoration:none;
      font-weight: 850;
      color: rgba(31,35,40,.84);
      padding: 10px 12px;
      border-radius: 14px;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      transition: transform .18s ease, border-color .18s ease;
    }
    .side-link:hover{ transform: translateY(-2px); border-color: rgba(225,29,46,.28); }
    .side-block-accent{
      background: linear-gradient(180deg, rgba(225,29,46,.08) 0%, rgba(255,255,255,.88) 100%);
      border-color: rgba(225,29,46,.18);
    }
    .side-comm{ display:grid; gap: 10px; }
    .comm-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      font-weight: 750;
      color: rgba(31,35,40,.80);
      display:flex; gap: 10px; align-items:center;
    }
    .comm-ic{
      width: 34px; height: 34px; border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      flex: 0 0 auto;
    }

    .contact-grid{ display:grid; grid-template-columns: .95fr 1.05fr; gap: 14px; align-items:start; }
    .contact-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .contact-title{ font-weight: 990; letter-spacing:-.2px; font-size: 18px; }
    .contact-sub{ margin-top: 6px; color: rgba(31,35,40,.68); font-weight: 600; line-height:1.5; }

    .contact-methods{ margin-top: 14px; display:grid; gap: 12px; }
    .method{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; gap: 12px; align-items:flex-start;
    }
    .method-ic{
      width: 40px; height: 40px; border-radius: 16px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      flex: 0 0 auto;
      font-size: 18px;
    }
    .method-title{ font-weight: 950; }
    .method-value{ margin-top: 4px; color: rgba(31,35,40,.68); font-weight: 650; line-height:1.5; font-size: 13.8px; }

    .contact-qr{ margin-top: 14px; border-top: 1px dashed rgba(31,35,40,.12); padding-top: 14px; }
    .qr-head{ display:flex; flex-direction:column; gap: 6px; margin-bottom: 10px; }
    .qr-title{ font-weight: 990; }
    .qr-sub{ color: rgba(31,35,40,.68); font-weight: 600; }
    .qr-img-wrap{
      width: 170px;
      border-radius: 18px;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      padding: 10px;
    }
    .qr-img-wrap img{ width: 100%; height:auto; display:block; border-radius: 12px; }

    .contact-right{ display:flex; flex-direction:column; gap: 14px; }
    .contact-banners{ background: rgba(255,255,255,.84); border: 1px solid rgba(31,35,40,.10); border-radius: var(--radius-xl); padding: 16px; box-shadow: 0 12px 24px rgba(0,0,0,.04); }
    .banner-strip{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .banner-item{
      border-radius: 18px;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      overflow:hidden;
    }
    .banner-item img{ width: 100%; height:auto; display:block; }
    .banner-caption{ padding: 10px 12px; font-weight: 850; color: rgba(31,35,40,.78); }
    .banner-note{ margin-top: 10px; color: rgba(31,35,40,.60); font-weight: 600; font-size: 12.8px; line-height:1.5; }

    .platform-intro-grid{ display:grid; grid-template-columns: 1.05fr .95fr; gap: 14px; }
    .intro-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      position:relative;
      overflow:hidden;
    }
    .intro-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 140px;
      background: radial-gradient(520px 140px at 24% 0%, rgba(225,29,46,.22) 0%, rgba(225,29,46,0) 62%);
      pointer-events:none;
    }
    .intro-card-strong{ border-color: rgba(225,29,46,.18); background: linear-gradient(180deg, rgba(225,29,46,.08) 0%, rgba(255,255,255,.90) 100%); }
    .intro-title{ font-weight: 990; letter-spacing:-.2px; position:relative; z-index:1; margin-bottom: 12px; }
    .intro-list{ display:flex; flex-direction:column; gap: 10px; position:relative; z-index:1; }
    .intro-li{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      display:flex; gap: 10px; align-items:center;
      font-weight: 850;
      color: rgba(31,35,40,.82);
    }
    .intro-ic{
      width: 38px; height: 38px; border-radius: 16px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      flex: 0 0 auto;
    }
    .intro-actions{ margin-top: 14px; position:relative; z-index:1; display:flex; gap: 10px; flex-wrap: wrap; }
    .split-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; position:relative; z-index:1; }
    .split-h{ font-weight: 980; margin-bottom: 10px; }
    .split-items{ display:flex; flex-direction:column; gap: 10px; }
    .split-item{
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
      font-weight: 850;
      color: rgba(31,35,40,.82);
    }
    .intro-divider{ height: 1px; background: rgba(31,35,40,.10); margin: 14px 0; position:relative; z-index:1; }
    .team-tags{ display:flex; gap: 10px; flex-wrap: wrap; position:relative; z-index:1; }

    .material-grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
    .material-card{
      border-radius: var(--radius-xl);
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.84);
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      padding: 16px;
      position:relative;
      overflow:hidden;
    }
    .material-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 130px;
      background: radial-gradient(520px 130px at 30% 0%, rgba(225,29,46,.20) 0%, rgba(225,29,46,0) 62%);
      pointer-events:none;
    }
    .material-head{ display:flex; flex-direction:column; gap: 8px; position:relative; z-index:1; margin-bottom: 12px; }
    .material-tag{
      width: fit-content;
      font-weight: 920; font-size: 12.8px;
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      color: rgba(225,29,46,.95);
    }
    .material-meta{ color: rgba(31,35,40,.68); font-weight: 650; font-size: 13.5px; }
    .material-media{
      border-radius: 18px;
      border: 1px solid rgba(31,35,40,.10);
      overflow:hidden;
      background: rgba(255,255,255,.70);
      position:relative; z-index:1;
    }
    .material-media img{ width: 100%; height: auto; display:block; }
    .material-card-square .material-media img{ aspect-ratio: 1/1; object-fit: contain; }

    .join-grid{ display:grid; grid-template-columns: 1.1fr .9fr; gap: 14px; align-items:start; }
    .join-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
      position:relative; overflow:hidden;
    }
    .join-card:before{
      content:"";
      position:absolute; inset:-1px -1px auto -1px; height: 150px;
      background: radial-gradient(520px 150px at 24% 0%, rgba(225,29,46,.22) 0%, rgba(225,29,46,0) 62%);
      pointer-events:none;
    }
    .join-card-strong{ background: linear-gradient(180deg, rgba(225,29,46,.08) 0%, rgba(255,255,255,.92) 100%); border-color: rgba(225,29,46,.18); }
    .join-title{ font-weight: 990; letter-spacing:-.2px; font-size: 20px; position:relative; z-index:1; margin-bottom: 12px; }
    .join-bullets{ display:flex; flex-direction:column; gap: 12px; position:relative; z-index:1; }
    .join-bullet{
      display:flex; gap: 12px; align-items:flex-start;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
    }
    .join-ic{
      width: 40px; height: 40px; border-radius: 16px;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      display:flex; align-items:center; justify-content:center;
      font-size: 18px;
      flex: 0 0 auto;
    }
    .join-bullet-title{ font-weight: 980; }
    .join-bullet-text{ margin-top: 5px; color: rgba(31,35,40,.68); font-weight: 600; line-height:1.45; font-size: 13.8px; }

    .join-cta{ margin-top: 14px; display:flex; gap: 12px; flex-wrap: wrap; position:relative; z-index:1; }

    .join-side{ display:flex; flex-direction:column; gap: 14px; }
    .join-side-card{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .join-side-title{ font-weight: 990; letter-spacing:-.2px; }
    .join-mode{ margin-top: 12px; display:flex; flex-direction:column; gap: 12px; }
    .mode-item{
      display:flex; gap: 12px; align-items:flex-start;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
      border-radius: 16px;
      padding: 12px;
    }
    .mode-ic{
      width: 44px; height: 44px; border-radius: 18px;
      background: rgba(225,29,46,.10);
      border: 1px solid rgba(225,29,46,.22);
      display:flex; align-items:center; justify-content:center;
      font-weight: 990; color: rgba(225,29,46,.95);
      flex: 0 0 auto;
    }
    .mode-title{ font-weight: 980; }
    .mode-sub{ margin-top: 5px; color: rgba(31,35,40,.68); font-weight: 600; line-height:1.4; font-size: 13.6px; }
    .join-side-foot{ margin-top: 12px; }
    .join-side-note{ color: rgba(31,35,40,.60); font-weight: 620; line-height:1.5; font-size: 12.8px; }

    .agent-form{
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 18px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .agent-form-title{ font-weight: 990; letter-spacing:-.2px; margin-bottom: 12px; font-size: 18px; }
    .compact-form .field-row{ grid-template-columns: 1fr 1fr; }
    .more-friend-links{
      margin-top: 12px;
      display:flex; gap: 10px; flex-wrap: wrap;
      padding: 14px 0 0;
      border-top: 1px dashed rgba(31,35,40,.12);
    }
    .more-friend-links a{
      text-decoration:none;
      padding: 8px 12px;
      border-radius: 999px;
      background: rgba(31,35,40,.04);
      border: 1px solid rgba(31,35,40,.10);
      color: rgba(31,35,40,.80);
      font-weight: 820;
      transition: transform .18s ease, border-color .18s ease;
    }
    .more-friend-links a:hover{ transform: translateY(-1px); border-color: rgba(225,29,46,.28); }

    .friend-links{
      margin-top: 16px;
      background: rgba(255,255,255,.84);
      border: 1px solid rgba(31,35,40,.10);
      border-radius: var(--radius-xl);
      padding: 16px;
      box-shadow: 0 12px 24px rgba(0,0,0,.04);
    }
    .friend-head{ font-weight: 990; letter-spacing:-.2px; margin-bottom: 12px; }
    .friend-list{ display:flex; gap: 10px; flex-wrap: wrap; }
    .friend-list a{
      text-decoration:none;
      padding: 9px 12px;
      border-radius: 999px;
      background: rgba(225,29,46,.08);
      border: 1px solid rgba(225,29,46,.18);
      color: var(--brand3);
      font-weight: 860;
      transition: transform .18s ease, border-color .18s ease, background .18s ease;
    }
    .friend-list a:hover{ transform: translateY(-1px); border-color: rgba(225,29,46,.30); background: rgba(225,29,46,.10); }

    .site-footer{
      background: #11131a;
      color: #e9edf2;
      border-top: 1px solid rgba(255,255,255,.08);
      padding: 30px 0 24px;
    }
    .footer-inner{ display:flex; flex-direction:column; gap: 16px; }
    .footer-top{ display:flex; align-items:flex-start; justify-content:space-between; gap: 16px; flex-wrap: wrap; }
    .footer-brand{ display:flex; align-items:center; gap: 12px; min-width: 260px; }
    .footer-logo img{ width: 44px; height: auto; }
    .footer-brand-meta{ display:flex; flex-direction:column; gap: 6px; }
    .footer-title{ font-weight: 990; letter-spacing:-.2px; }
    .footer-sub{ color: rgba(233,237,242,.74); font-weight: 600; font-size: 13.5px; line-height:1.4; }

    .footer-links{ display:flex; gap: 14px; flex-wrap: wrap; align-items:center; }
    .footer-links a{
      color: rgba(233,237,242,.88);
      text-decoration:none;
      font-weight: 820;
      padding: 10px 10px;
      border-radius: 12px;
      border: 1px solid rgba(255,255,255,.10);
      background: rgba(255,255,255,.04);
      transition: transform .18s ease, border-color .18s ease;
    }
    .footer-links a:hover{ transform: translateY(-1px); border-color: rgba(225,29,46,.35); }

    .footer-mid{
      display:grid; grid-template-columns: 1fr 1fr; gap: 14px;
      padding-top: 6px;
    }
    .footer-col{
      border: 1px solid rgba(255,255,255,.10);
      background: rgba(255,255,255,.04);
      border-radius: var(--radius-xl);
      padding: 16px;
    }
    .footer-h{ font-weight: 980; letter-spacing:-.2px; margin-bottom: 10px; }
    .footer-p{ color: rgba(233,237,242,.78); font-weight: 620; margin-top: 8px; line-height:1.5; }
    .footer-p a{ color: #fff; text-decoration:none; border-bottom: 1px dashed rgba(255,255,255,.32); }
    .footer-actions{ display:flex; gap: 12px; flex-wrap: wrap; margin-top: 8px; }
    .footer-bottom{
      display:flex; align-items:center; justify-content:space-between; gap: 12px; flex-wrap: wrap;
      padding-top: 6px;
      border-top: 1px solid rgba(255,255,255,.10);
    }
    .footer-copy{ color: rgba(233,237,242,.78); font-weight: 620; }
    .footer-right{ color: rgba(233,237,242,.78); font-weight: 700; display:flex; align-items:center; gap: 10px; }
    .footer-sep{ opacity:.55; }

    .to-top{
      position: fixed; right: 18px; bottom: 18px;
      width: 46px; height: 46px;
      border-radius: 16px;
      border: 1px solid rgba(31,35,40,.12);
      background: rgba(255,255,255,.80);
      color: rgba(31,35,40,.88);
      box-shadow: 0 16px 34px rgba(0,0,0,.10);
      cursor:pointer;
      display:flex; align-items:center; justify-content:center;
      opacity: 0; pointer-events:none;
      transform: translateY(10px);
      transition: opacity .18s ease, transform .18s ease, border-color .18s ease;
      z-index: 60;
      font-size: 20px;
      font-weight: 900;
    }
    .to-top.show{ opacity: 1; pointer-events:auto; transform: translateY(0); }
    .to-top:hover{ border-color: rgba(225,29,46,.30); }

    .float-customer{
      position: fixed; right: 18px; bottom: 76px;
      z-index: 65;
      display:flex; flex-direction:column; align-items:flex-end; gap: 10px;
      pointer-events:none;
    }
    .float-btn{
      pointer-events:auto;
      display:flex; align-items:center; gap: 10px;
      border-radius: 18px;
      padding: 12px 14px;
      border: 1px solid rgba(225,29,46,.25);
      background: linear-gradient(135deg, rgba(225,29,46,.96) 0%, rgba(255,59,79,.92) 100%);
      color:#fff;
      font-weight: 980;
      cursor:pointer;
      box-shadow: 0 18px 40px rgba(225,29,46,.25);
      transition: transform .18s ease, box-shadow .18s ease;
    }
    .float-btn:hover{ transform: translateY(-2px); box-shadow: 0 24px 55px rgba(225,29,46,.28); }
    .float-ic{
      width: 30px; height: 30px;
      border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(255,255,255,.14);
      border: 1px solid rgba(255,255,255,.22);
    }
    .float-txt{ font-weight: 980; }
    .float-panel{
      pointer-events:auto;
      width: 300px;
      border-radius: 22px;
      border: 1px solid rgba(31,35,40,.12);
      background: rgba(255,255,255,.92);
      box-shadow: 0 22px 60px rgba(0,0,0,.18);
      overflow:hidden;
      opacity: 0;
      transform: translateY(10px);
      transition: opacity .18s ease, transform .18s ease;
      display:none;
    }
    .float-panel.open{
      display:block;
      opacity: 1;
      transform: translateY(0);
    }
    .float-panel-head{
      display:flex; align-items:center; justify-content:space-between; gap: 12px;
      padding: 14px 14px 10px;
      background: linear-gradient(135deg, rgba(225,29,46,.12) 0%, rgba(255,255,255,.85) 70%);
      border-bottom: 1px solid rgba(31,35,40,.08);
    }
    .float-panel-title{ font-weight: 990; letter-spacing:-.2px; }
    .float-close{
      width: 34px; height: 34px;
      border-radius: 14px;
      border: 1px solid rgba(31,35,40,.12);
      background: rgba(255,255,255,.85);
      cursor:pointer;
      font-size: 18px;
      color: rgba(31,35,40,.84);
      font-weight: 900;
      transition: transform .18s ease;
    }
    .float-close:hover{ transform: translateY(-1px); border-color: rgba(225,29,46,.28); }
    .float-qr{ padding: 14px; display:flex; justify-content:center; }
    .float-qr img{
      width: 180px; height: auto; display:block;
      border-radius: 16px;
      border: 1px solid rgba(31,35,40,.10);
      background: rgba(255,255,255,.70);
    }
    .float-note{
      padding: 0 14px 10px;
      text-align:center;
      color: rgba(31,35,40,.65);
      font-weight: 650;
      font-size: 13.2px;
      line-height:1.5;
    }
    .float-actions{
      display:flex; gap: 10px; padding: 0 14px 14px;
      justify-content:center;
      flex-wrap: wrap;
    }

    .appear{
      opacity: 0; transform: translateY(14px);
      transition: opacity .5s ease, transform .5s ease;
    }
    .appear.in{ opacity: 1; transform: translateY(0); }
    html.reduced-motion .appear,
    html.reduced-motion .hero-orbs,
    html.reduced-motion .float-panel,
    html.reduced-motion .faq-a,
    html.reduced-motion .to-top{
      transition: none !important;
      animation: none !important;
    }

    @media (max-width: 1020px){
      .hero-content{ grid-template-columns: 1fr; }
      .hero-quick{ grid-template-columns: 1fr; }
      .about-grid{ grid-template-columns: repeat(2, 1fr); }
      .service-grid{ grid-template-columns: 1fr; }
      .steps{ grid-template-columns: repeat(2, 1fr); }
      .solution-grid{ grid-template-columns: repeat(2, 1fr); }
      .network-wrap{ grid-template-columns: 1fr; }
      .process-grid{ grid-template-columns: 1fr; }
      .case-grid{ grid-template-columns: 1fr; }
      .rating-row{ grid-template-columns: 1fr; }
      .pricing-grid{ grid-template-columns: 1fr; }
      .match-grid{ grid-template-columns: 1fr; }
      .form-safety{ grid-template-columns: 1fr; }
      .training-grid{ grid-template-columns: 1fr; }
      .help-grid{ grid-template-columns: 1fr; }
      .faq-grid{ grid-template-columns: 1fr; }
      .wiki-grid{ grid-template-columns: repeat(2, 1fr); }
      .news-grid{ grid-template-columns: 1fr; }
      .contact-grid{ grid-template-columns: 1fr; }
      .platform-intro-grid{ grid-template-columns: 1fr; }
      .material-grid{ grid-template-columns: 1fr; }
      .join-grid{ grid-template-columns: 1fr; }
    }

    @media (max-width: 860px){
      .nav-toggle{ display:inline-flex; align-items:center; justify-content:center; }
      .nav-links{
        position: absolute;
        right: 16px; top: 72px;
        width: min(360px, calc(100% - 32px));
        background: rgba(255,255,255,.96);
        border: 1px solid rgba(31,35,40,.12);
        border-radius: 20px;
        box-shadow: 0 28px 70px rgba(0,0,0,.18);
        padding: 10px;
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
        display:none;
        transform-origin: top right;
      }
      .nav-links.open{ display:flex; }
      .nav-link{ width:100%; padding: 12px 12px; }
      .nav-cta{ display:none; }
      .strip-inner{ border-radius: 26px; flex-direction:column; align-items:flex-start; }
      .strip-tags{ justify-content:flex-start; }
      .hero-title{ font-size: 30px; }
      .footer-mid{ grid-template-columns: 1fr; }
      .float-panel{ width: 280px; }
    }

    @media (max-width: 430px){
      .container{ width: calc(100% - 20px); }
      .hero-title{ font-size: 26px; }
      .field-row{ grid-template-columns: 1fr; }
      .steps{ grid-template-columns: 1fr; }
      .wiki-grid{ grid-template-columns: 1fr; }
      .banner-strip{ grid-template-columns: 1fr; }
      .metrics{ grid-template-columns: 1fr 1fr; }
    }