:root{
      --bg: #fff7f7;
      --bg2:#ffffff;
      --card:#ffffff;
      --text:#1f2328;
      --muted:#5b6470;
      --subtle:#7a8594;
      --border: rgba(25, 30, 36, .10);
      --shadow: 0 18px 50px rgba(180, 18, 52, .12);
      --shadow2: 0 10px 30px rgba(16,24,40,.10);
      --red:#c80e3a;
      --red2:#ff3b63;
      --deep:#161a22;
      --blue:#2a6df6;
      --good:#0f7a4a;
      --radius:16px;
      --radius2:22px;
      --max: 1140px;
      --container-pad: 18px;
      --focus: 0 0 0 4px rgba(200,14,58,.18);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC","Hiragino Sans GB","Microsoft YaHei", "Noto Sans SC", Arial, sans-serif;
      color:var(--text);
      background:
        radial-gradient(900px 420px at 10% 0%, rgba(200,14,58,.14), rgba(255,255,255,0) 55%),
        radial-gradient(700px 360px at 90% 12%, rgba(255,59,99,.12), rgba(255,255,255,0) 60%),
        linear-gradient(#fff, var(--bg));
    }
    a{color:inherit; text-decoration:none}
    img{max-width:100%; height:auto; display:block}
    .container{max-width:var(--max); margin:0 auto; padding:0 var(--container-pad)}
    .skip-link{
      position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden;
      background:#000; color:#fff; padding:10px; border-radius:10px; z-index:9999;
    }
    .skip-link:focus{left:16px; top:16px; width:auto; height:auto}
    .topbar{
      position:sticky; top:0; z-index:50;
      background: rgba(255,255,255,.72);
      backdrop-filter: blur(10px);
      border-bottom: 1px solid rgba(25, 30, 36, .08);
    }
    .topbar-inner{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0}
    .brand{display:flex; align-items:center; gap:10px; min-width:140px}
    .ai-page-logo{
      width: 140px;
      max-width: 160px;
      filter: drop-shadow(0 10px 18px rgba(200,14,58,.18));
      transition: transform .25s ease;
    }
    .brand:hover .ai-page-logo{transform: translateY(-1px)}
    .desktop-nav{display:flex; align-items:center; gap:16px; flex-wrap:wrap; justify-content:center}
    .nav-link{
      font-size:14px;
      color: #272d36;
      padding:8px 10px;
      border-radius:12px;
      transition: background .2s ease, color .2s ease, transform .2s ease;
      white-space:nowrap;
    }
    .nav-link:hover{background: rgba(200,14,58,.10); color: #b10a33}
    .nav-actions{display:flex; align-items:center; gap:10px}
    .icon-btn{
      width:42px; height:42px;
      border-radius:14px;
      border:1px solid rgba(25,30,36,.10);
      background: rgba(255,255,255,.8);
      display:flex; align-items:center; justify-content:center;
      cursor:pointer;
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }
    .icon-btn.small{width:36px; height:36px; border-radius:12px}
    .icon-btn:focus{outline:none; box-shadow: var(--focus)}
    .icon-btn:hover{transform: translateY(-1px); box-shadow: 0 12px 28px rgba(16,24,40,.10); border-color: rgba(200,14,58,.25)}
    .icon-line{
      width:18px; height:2px;
      background: #2a2f38;
      position:absolute;
    }
    .icon-btn .icon-line:nth-child(1){transform: translateY(-6px)}
    .icon-btn .icon-line:nth-child(3){transform: translateY(6px)}
    .icon-btn .icon-line:nth-child(2){transform: translateY(0)}
    .icon-btn.small .icon-line:nth-child(1){transform: translateY(0) rotate(45deg)}
    .icon-btn.small .icon-line:nth-child(2){transform: translateY(0) rotate(-45deg)}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:10px;
      padding: 12px 16px;
      border-radius: 14px;
      border:1px solid rgba(25, 30, 36, .10);
      font-weight: 650;
      cursor:pointer;
      transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
      user-select:none;
      white-space:nowrap;
    }
    .btn:focus{outline:none; box-shadow: var(--focus)}
    .btn:hover{transform: translateY(-1px)}
    .btn-lg{padding:14px 18px; border-radius:16px}
    .btn-primary{
      background: linear-gradient(135deg, var(--red), #ff3b63 92%);
      color:#fff;
      border-color: rgba(200,14,58,.35);
      box-shadow: 0 18px 40px rgba(200,14,58,.18);
    }
    .btn-primary:hover{box-shadow: 0 22px 60px rgba(200,14,58,.25)}
    .btn-soft{
      background: rgba(200,14,58,.08);
      border-color: rgba(200,14,58,.20);
      color:#9f0a2d;
    }
    .btn-soft:hover{background: rgba(200,14,58,.12); border-color: rgba(200,14,58,.28)}
    .btn-ghost{
      background: rgba(255,255,255,.7);
      color:#2b323e;
    }
    .btn-ghost:hover{background: rgba(255,255,255,.95); border-color: rgba(200,14,58,.25)}
    .section{padding: 64px 0}
    .section-soft{
      background:
        radial-gradient(800px 360px at 15% 0%, rgba(200,14,58,.10), rgba(255,255,255,0) 60%),
        linear-gradient(#ffffff, #fff7f7);
      border-top:1px solid rgba(25,30,36,.06);
      border-bottom:1px solid rgba(25,30,36,.06);
    }
    .section-head{margin-bottom:24px}
    .section-kicker{
      display:inline-flex; align-items:center; gap:10px;
      font-size:13px; font-weight:800; letter-spacing:.08em;
      color:#9f0a2d;
      text-transform:uppercase;
    }
    .section-kicker::before{
      content:"";
      width:12px; height:12px;
      border-radius:4px;
      background: linear-gradient(135deg, var(--red), var(--red2));
      box-shadow: 0 14px 30px rgba(200,14,58,.25);
    }
    .section-title{
      margin:10px 0 0;
      font-size:34px;
      line-height:1.1;
      letter-spacing:-.02em;
    }
    .section-desc{margin:12px 0 0; color:var(--muted); max-width: 66ch; font-size:16px; line-height:1.8}
    .hero{
      position:relative;
      padding: 56px 0 30px;
      overflow:hidden;
    }
    .hero-bg{
      position:absolute; inset:-1px 0 auto 0; height: 720px;
      pointer-events:none;
    }
    .hero-aurora{
      position:absolute; inset:-240px -180px auto -180px;
      height: 520px;
      background:
        radial-gradient(closest-side at 18% 35%, rgba(255,59,99,.50), rgba(255,255,255,0) 60%),
        radial-gradient(closest-side at 72% 25%, rgba(200,14,58,.35), rgba(255,255,255,0) 62%),
        radial-gradient(closest-side at 50% 70%, rgba(255,59,99,.22), rgba(255,255,255,0) 60%);
      filter: blur(10px) saturate(1.1);
      opacity:.95;
    }
    .hero-grid{
      position:absolute; inset: 70px -10% auto -10%;
      height: 520px;
      background-image:
        linear-gradient(to right, rgba(31,35,40,.06) 1px, rgba(255,255,255,0) 1px),
        linear-gradient(to bottom, rgba(31,35,40,.06) 1px, rgba(255,255,255,0) 1px);
      background-size: 72px 72px;
      transform: skewY(-8deg);
      opacity:.45;
      mask-image: radial-gradient(380px 260px at 35% 30%, rgba(0,0,0,1), rgba(0,0,0,0) 70%);
    }
    .hero-capsule{
      position:absolute;
      border: 1px solid rgba(200,14,58,.25);
      background: rgba(255,255,255,.5);
      box-shadow: 0 18px 60px rgba(200,14,58,.10);
      border-radius:999px;
      backdrop-filter: blur(8px);
      animation: floaty 7.5s ease-in-out infinite;
      opacity:.9;
    }
    .hero-capsule-1{width:220px; height:44px; left: 6%; top: 120px; transform: rotate(-10deg)}
    .hero-capsule-2{width:280px; height:56px; left: 68%; top: 150px; transform: rotate(14deg)}
    .hero-capsule-3{width:180px; height:40px; left: 46%; top: 320px; transform: rotate(-6deg)}
    @keyframes floaty{
      0%,100%{transform: translateY(0) rotate(var(--r, -10deg))}
      50%{transform: translateY(-10px) rotate(var(--r, -10deg))}
    }
    .hero-inner{
      position:relative;
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      gap: 26px;
      align-items:start;
      padding: 18px 0 0;
    }
    .pill{
      display:inline-flex; align-items:center; gap:10px;
      padding: 9px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.68);
      border: 1px solid rgba(200,14,58,.18);
      box-shadow: 0 18px 50px rgba(200,14,58,.10);
    }
    .pill-dot{
      width:10px; height:10px; border-radius:50%;
      background: linear-gradient(135deg, var(--red), var(--red2));
      box-shadow: 0 12px 26px rgba(200,14,58,.35);
    }
    .pill-text{font-size:13px; font-weight:750; color:#7a071d}
    .hero-title{
      margin:16px 0 0;
      font-size:46px;
      line-height:1.05;
      letter-spacing:-.03em;
      color:#141821;
    }
    .hero-subtitle{
      margin:14px 0 0;
      color:#4e5663;
      font-size:16px;
      line-height:1.85;
      max-width: 64ch;
    }
    .hero-cta{
      margin-top: 18px;
      display:flex; gap:12px; flex-wrap:wrap;
    }
    .hero-micro{
      margin-top: 18px;
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }
    .micro-item{
      background: rgba(255,255,255,.62);
      border: 1px solid rgba(25,30,36,.08);
      border-radius: 16px;
      padding: 12px 12px;
      box-shadow: 0 10px 30px rgba(16,24,40,.05);
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }
    .micro-item:hover{
      transform: translateY(-2px);
      box-shadow: 0 22px 55px rgba(200,14,58,.14);
      border-color: rgba(200,14,58,.25);
    }
    .micro-kpi{display:flex; align-items:center; gap:10px}
    .kpi-icon{
      width:26px; height:26px; border-radius:10px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(200,14,58,.10);
      color:#a10a31;
      border:1px solid rgba(200,14,58,.18);
      font-size:14px;
    }
    .kpi-value{font-weight:820; font-size:14px; color:#171c24}
    .micro-text{margin-top:6px; color:var(--muted); font-size:13px; line-height:1.5}
    .hero-right{display:flex; flex-direction:column; gap:14px}
    .data-card{
      background:
        radial-gradient(600px 240px at 20% 0%, rgba(200,14,58,.14), rgba(255,255,255,0) 60%),
        rgba(255,255,255,.78);
      border: 1px solid rgba(200,14,58,.18);
      border-radius: 22px;
      padding: 16px 16px;
      box-shadow: 0 24px 70px rgba(200,14,58,.12);
      position:relative;
      overflow:hidden;
    }
    .data-card::after{
      content:"";
      position:absolute; inset:-2px -2px auto -2px; height: 90px;
      background: linear-gradient(90deg, rgba(255,59,99,.25), rgba(255,255,255,0));
      transform: skewX(-18deg);
      opacity:.55;
      pointer-events:none;
    }
    .data-head{display:flex; align-items:center; justify-content:space-between; gap:12px}
    .data-title{font-weight:860; letter-spacing:-.01em}
    .data-badge{
      font-size:12px;
      padding:7px 10px;
      border-radius:999px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.20);
      color:#9f0a2d;
      font-weight:780;
      white-space:nowrap;
    }
    .data-grid{
      margin-top: 14px;
      display:grid;
      grid-template-columns: repeat(2, minmax(0,1fr));
      gap: 12px;
    }
    .stat{
      border-radius: 16px;
      padding: 12px 12px;
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.65);
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }
    .stat:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.25); box-shadow: 0 18px 40px rgba(16,24,40,.10)}
    .stat-value{font-weight:920; font-size:18px}
    .stat-label{margin-top:6px; color:var(--muted); font-size:13px; line-height:1.5}
    .data-actions{
      margin-top: 14px;
      display:flex; gap:10px; flex-wrap:wrap;
    }
    .mini-cards{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }
    .mini-card{
      background: rgba(255,255,255,.7);
      border:1px solid rgba(25,30,36,.08);
      border-radius: 18px;
      padding: 12px;
      display:flex; align-items:flex-start; gap:10px;
      transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
      box-shadow: 0 12px 28px rgba(16,24,40,.05);
    }
    .mini-card:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.25); box-shadow: 0 20px 50px rgba(200,14,58,.12)}
    .mini-icon{
      width:34px; height:34px;
      border-radius: 14px;
      display:flex; align-items:center; justify-content:center;
      border:1px solid rgba(200,14,58,.18);
      background: rgba(200,14,58,.10);
      color:#a10a31;
      flex:0 0 auto;
      font-size:16px;
    }
    .mini-title{font-weight:860; font-size:14px}
    .mini-desc{margin-top:5px; color:var(--muted); font-size:12.8px; line-height:1.5}

    .grid-2{display:grid; grid-template-columns: 1fr 1fr; gap:18px}
    .grid-3{display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:16px}

    .card{
      background: rgba(255,255,255,.78);
      border:1px solid rgba(25,30,36,.08);
      border-radius: var(--radius2);
      padding: 18px;
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
    }
    .card-lift{transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease}
    .card-lift:hover{transform: translateY(-2px); box-shadow: 0 24px 60px rgba(16,24,40,.10); border-color: rgba(200,14,58,.22)}
    .card-sheen{
      position:relative; overflow:hidden;
      background:
        radial-gradient(800px 280px at 0% 0%, rgba(200,14,58,.16), rgba(255,255,255,0) 58%),
        rgba(255,255,255,.82);
    }
    .card-sheen::after{
      content:"";
      position:absolute; inset:-1px auto auto -1px;
      width: 160px; height: 160px;
      border-radius: 50%;
      background: radial-gradient(circle at 30% 30%, rgba(255,59,99,.35), rgba(255,255,255,0) 65%);
      opacity:.7;
      pointer-events:none;
    }
    .card-mark{
      width:42px; height:42px;
      border-radius: 16px;
      display:flex; align-items:center; justify-content:center;
      border:1px solid rgba(200,14,58,.20);
      background: rgba(200,14,58,.10);
      color:#a10a31;
      font-size:18px;
      font-weight:900;
    }
    .card-mark-hot{
      background: linear-gradient(135deg, rgba(200,14,58,.14), rgba(255,59,99,.10));
      border-color: rgba(200,14,58,.25);
    }
    .card-title{margin:12px 0 0; font-size:18px; letter-spacing:-.01em}
    .card-text{margin:10px 0 0; color:var(--muted); line-height:1.8}
    .list{margin: 12px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:10px}
    .list.compact{gap:8px}
    .check{color:#0f7a4a; font-weight:900; margin-right:10px}
    .tag-row{margin-top: 14px; display:flex; flex-wrap:wrap; gap:10px}
    .tag{
      font-size:13px;
      padding:9px 12px;
      border-radius:999px;
      background: rgba(200,14,58,.08);
      border:1px solid rgba(200,14,58,.18);
      color:#9f0a2d;
      font-weight:750;
    }
    .tag-strong{
      background: rgba(255,59,99,.10);
      border-color: rgba(200,14,58,.25);
    }
    .divider{height:1px; background: rgba(25,30,36,.08); margin:16px 0}

    .service-grid{
      display:grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap: 16px;
    }
    .service-card{
      padding: 18px;
      border-radius: var(--radius2);
      background: rgba(255,255,255,.78);
      border: 1px solid rgba(25,30,36,.08);
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
      position:relative;
      overflow:hidden;
      min-height: 220px;
      display:flex; flex-direction:column; gap:12px;
    }
    .service-card::after{
      content:"";
      position:absolute; inset:-40px -40px auto auto;
      width: 140px; height: 140px;
      border-radius: 50%;
      background: radial-gradient(circle at 30% 30%, rgba(255,59,99,.28), rgba(255,255,255,0) 65%);
      opacity:.9;
      pointer-events:none;
    }
    .service-card:hover{
      transform: translateY(-3px);
      border-color: rgba(200,14,58,.25);
      box-shadow: 0 26px 70px rgba(200,14,58,.14);
    }
    .service-wide{grid-column: 1 / -1}
    .service-top{display:flex; align-items:center; justify-content:space-between; gap:12px; position:relative; z-index:1}
    .service-ico{
      width:44px; height:44px;
      border-radius: 18px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#a10a31;
      font-size:20px;
      flex:0 0 auto;
    }
    .service-title{margin:0; font-size:18px; letter-spacing:-.01em}
    .service-desc{margin:0; color:var(--muted); line-height:1.8; position:relative; z-index:1}
    .service-acts{margin-top:auto; display:flex; gap:12px; flex-wrap:wrap; position:relative; z-index:1}
    .link-more{
      color:#9f0a2d; font-weight:800; font-size:14px;
      padding:10px 12px;
      border-radius: 14px;
      border:1px solid rgba(200,14,58,.18);
      background: rgba(200,14,58,.06);
      transition: transform .2s ease, background .2s ease, border-color .2s ease;
    }
    .link-more:hover{transform: translateY(-2px); background: rgba(200,14,58,.10); border-color: rgba(200,14,58,.25)}
    .service-pills{display:flex; flex-wrap:wrap; gap:10px; margin-top:auto; position:relative; z-index:1}
    .grid-3 .step-card{min-height: 210px}
    .step-card{
      background: rgba(255,255,255,.78);
      transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
    }
    .step-card:hover{
      transform: translateY(-3px);
      border-color: rgba(200,14,58,.22);
      box-shadow: 0 26px 70px rgba(16,24,40,.10);
    }
    .step-no{
      font-size:13px; font-weight:900; letter-spacing:.12em;
      color:#9f0a2d;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      width: 78px; text-align:center;
      border-radius: 999px;
      padding: 8px 10px;
    }

    .platform-row{
      margin-top: 22px;
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      gap: 16px;
      align-items:stretch;
    }
    .platform-left{
      padding: 20px;
      border-radius: var(--radius2);
      border:1px solid rgba(25,30,36,.08);
      background:
        radial-gradient(760px 260px at 0% 0%, rgba(200,14,58,.14), rgba(255,255,255,0) 60%),
        rgba(255,255,255,.78);
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
    }
    .platform-title{margin:0; font-size:20px; letter-spacing:-.01em}
    .platform-desc{margin:10px 0 0; color:var(--muted); line-height:1.85}
    .platform-links{margin-top:14px; display:flex; gap:12px; flex-wrap:wrap}

    .platform-right{
      padding: 18px;
      border-radius: var(--radius2);
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.78);
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      display:flex; flex-direction:column;
    }
    .model-cloud{
      display:flex; flex-wrap:wrap; gap:10px;
      margin-top: 6px;
    }
    .model-chip{
      padding: 9px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.7);
      border: 1px solid rgba(25,30,36,.08);
      color:#2b323e;
      font-weight:750;
      font-size:13px;
      transition: transform .2s ease, border-color .2s ease, background .2s ease;
    }
    .model-chip:hover{
      transform: translateY(-2px);
      border-color: rgba(200,14,58,.25);
      background: rgba(200,14,58,.08);
    }
    .platform-note{margin-top: 10px; color:var(--subtle); font-size:13px; line-height:1.6}

    .compare-shelf{
      display:grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap:16px;
    }
    .shelf-item{
      background: rgba(255,255,255,.80);
      border:1px solid rgba(25,30,36,.08);
      border-radius: var(--radius2);
      padding:18px;
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
      min-height: 240px;
      display:flex; flex-direction:column; gap:10px;
    }
    .shelf-item:hover{transform: translateY(-3px); border-color: rgba(200,14,58,.22); box-shadow: 0 26px 70px rgba(200,14,58,.12)}
    .shelf-title{font-size:18px; font-weight:900; letter-spacing:-.01em}
    .shelf-item .list{margin-top: 8px}
    .timeline{
      display:flex; flex-direction:column; gap:14px;
      position:relative;
    }
    .timeline-item{display:flex; gap:12px; align-items:flex-start}
    .timeline-dot{
      width:14px; height:14px; border-radius:50%;
      background: linear-gradient(135deg, var(--red), var(--red2));
      box-shadow: 0 14px 30px rgba(200,14,58,.22);
      margin-top: 10px;
      flex:0 0 auto;
    }
    .timeline-card{
      flex:1;
      padding:16px;
      border-radius: var(--radius2);
      background: rgba(255,255,255,.78);
      border:1px solid rgba(25,30,36,.08);
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
    }
    .timeline-card:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.22); box-shadow: 0 24px 60px rgba(16,24,40,.10)}
    .timeline-step{
      font-size:13px; font-weight:900; color:#9f0a2d; letter-spacing:.08em;
      text-transform:uppercase;
    }
    .timeline-title{margin:8px 0 0; font-size:18px; letter-spacing:-.01em}
    .timeline-text{margin:10px 0 0; color:var(--muted); line-height:1.8}

    .case-grid{
      display:grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap:16px;
    }
    .case-card{
      background: rgba(255,255,255,.82);
      border:1px solid rgba(25,30,36,.08);
      border-radius: var(--radius2);
      overflow:hidden;
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
      display:flex; flex-direction:column;
      min-height: 350px;
    }
    .case-card:hover{transform: translateY(-3px); border-color: rgba(200,14,58,.22); box-shadow: 0 30px 80px rgba(200,14,58,.12)}
    .case-media{height:140px; position:relative}
    .case-gradient{position:absolute; inset:0; background:
      radial-gradient(300px 160px at 20% 20%, rgba(255,59,99,.45), rgba(255,255,255,0) 60%),
      radial-gradient(260px 140px at 70% 60%, rgba(200,14,58,.28), rgba(255,255,255,0) 60%),
      linear-gradient(135deg, rgba(200,14,58,.20), rgba(255,255,255,.0));
      filter:saturate(1.1);
    }
    .case-gradient-1{background:
      radial-gradient(300px 160px at 20% 20%, rgba(255,59,99,.50), rgba(255,255,255,0) 60%),
      radial-gradient(260px 140px at 70% 60%, rgba(200,14,58,.30), rgba(255,255,255,0) 60%),
      linear-gradient(135deg, rgba(200,14,58,.22), rgba(255,255,255,.0));}
    .case-gradient-2{background:
      radial-gradient(300px 160px at 70% 20%, rgba(255,59,99,.46), rgba(255,255,255,0) 60%),
      radial-gradient(240px 130px at 30% 70%, rgba(200,14,58,.26), rgba(255,255,255,0) 60%),
      linear-gradient(135deg, rgba(200,14,58,.18), rgba(255,255,255,.0));}
    .case-gradient-3{background:
      radial-gradient(300px 160px at 30% 30%, rgba(255,59,99,.42), rgba(255,255,255,0) 60%),
      radial-gradient(240px 130px at 70% 75%, rgba(200,14,58,.30), rgba(255,255,255,0) 60%),
      linear-gradient(135deg, rgba(200,14,58,.16), rgba(255,255,255,.0));}
    .case-body{padding:16px; display:flex; flex-direction:column; gap:10px; flex:1}
    .case-title{margin:0; font-size:18px; letter-spacing:-.01em}
    .case-text{margin:0; color:var(--muted); line-height:1.85}
    .case-meta{display:flex; gap:10px; flex-wrap:wrap; margin-top:auto}
    .meta-chip{
      font-size:12.8px;
      padding:8px 10px;
      border-radius:999px;
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.65);
      color:#2b323e;
      font-weight:760;
    }

    .gallery-strip{
      margin-top: 16px;
      display:grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap: 12px;
    }
    .strip-item{
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.78);
      border-radius: var(--radius2);
      overflow:hidden;
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }
    .strip-item:hover{transform: translateY(-3px); border-color: rgba(200,14,58,.22); box-shadow: 0 26px 70px rgba(16,24,40,.10)}
    .strip-img{width:100%; aspect-ratio: 16/10; object-fit: cover}
    .strip-caption{padding:10px 12px; color:var(--muted); font-size:13px; line-height:1.5}

    .grid-2 .rating-card{background:
      radial-gradient(800px 300px at 0% 0%, rgba(200,14,58,.16), rgba(255,255,255,0) 60%),
      rgba(255,255,255,.82);
      border:1px solid rgba(200,14,58,.18);
      box-shadow: 0 26px 80px rgba(200,14,58,.12);
      position:relative; overflow:hidden;
    }
    .rating-top{display:flex; align-items:flex-start; justify-content:space-between; gap:12px}
    .rating-stars{display:flex; gap:4px; color:#ff3b63; font-size:22px; font-weight:900}
    .rating-score{display:flex; align-items:baseline; gap:8px}
    .score-num{font-size:44px; font-weight:980; letter-spacing:-.04em; color:#141821}
    .score-unit{color:var(--muted); font-weight:800}
    .rating-note{margin-top:10px; color:var(--muted); line-height:1.8}
    .rating-actions{margin-top:14px; display:flex; gap:12px; flex-wrap:wrap}
    .rating-bullets{margin-top:16px; display:flex; flex-direction:column; gap:12px}
    .rb{display:flex; gap:12px; align-items:flex-start}
    .rb-ico{
      width:34px; height:34px;
      border-radius: 14px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#a10a31;
      display:flex; align-items:center; justify-content:center;
      font-size:16px;
      flex:0 0 auto;
    }
    .rb-text{color:#2b323e; font-weight:800; line-height:1.5; font-size:14px}

    .compare-card{background: rgba(255,255,255,.80)}
    .compare-head{display:flex; justify-content:space-between; gap:12px; align-items:flex-end; margin-bottom:12px}
    .compare-sub{color:var(--muted); font-size:13px}
    .table-wrap{overflow:auto; border-radius: 16px; border:1px solid rgba(25,30,36,.08)}
    .compare-table{
      width:100%;
      border-collapse:collapse;
      min-width: 720px;
      background: rgba(255,255,255,.78);
    }
    .compare-table th, .compare-table td{
      padding: 12px 12px;
      border-bottom:1px solid rgba(25,30,36,.08);
      vertical-align:top;
      font-size:14px;
      line-height:1.55;
    }
    .compare-table th{
      background: rgba(200,14,58,.06);
      font-weight:900;
      color:#2b323e;
      text-align:left;
      white-space:nowrap;
    }
    .compare-table td{color:#2b323e}
    .ok{color:#0f7a4a; font-weight:950}
    .na{color:#b14a1b; font-weight:950}
    .compare-bottom{
      display:flex; gap:14px; align-items:flex-end; justify-content:space-between;
      margin-top:14px;
      flex-wrap:wrap;
    }
    .compare-kicker{
      color:#9f0a2d; font-weight:900; letter-spacing:.06em; text-transform:uppercase; font-size:12px
    }
    .compare-text{margin-top:8px; color:var(--muted); line-height:1.8; max-width: 55ch; font-size:14px}

    .form-card{background:
      radial-gradient(780px 280px at 0% 0%, rgba(200,14,58,.16), rgba(255,255,255,0) 60%),
      rgba(255,255,255,.84);
      border:1px solid rgba(200,14,58,.16);
    }
    .form-head .card-title{margin-top:0}
    .form{margin-top:12px}
    .form-grid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }
    .field{display:flex; flex-direction:column; gap:8px; margin-bottom:12px}
    .field-label{font-size:13px; font-weight:850; color:#2b323e}
    .input, .textarea{
      width:100%;
      border-radius: 14px;
      border:1px solid rgba(25,30,36,.10);
      background: rgba(255,255,255,.88);
      padding: 12px 12px;
      font-size:14px;
      color:#1f2328;
      transition: border-color .2s ease, box-shadow .2s ease;
    }
    .input:focus, .textarea:focus{outline:none; box-shadow: var(--focus); border-color: rgba(200,14,58,.35)}
    .textarea{resize: vertical; min-height: 110px}
    .form-actions{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap}
    .form-hint{color:var(--subtle); font-size:13px}

    .right-stack{display:flex; flex-direction:column; gap:16px}
    .highlight-card{background: rgba(255,255,255,.84)}
    .hl-top{display:flex; gap:14px; align-items:flex-start}
    .hl-ico{
      width:48px; height:48px;
      border-radius: 18px;
      display:flex; align-items:center; justify-content:center;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#a10a31;
      font-size:20px; flex:0 0 auto;
    }
    .hl-list{margin-top:14px; display:grid; grid-template-columns: 1fr 1fr; gap:10px}
    .hl-item{display:flex; gap:10px; align-items:center; color:#2b323e; font-weight:800; font-size:14px}
    .cost-card{background: rgba(255,255,255,.84)}
    .cost-head{display:flex; align-items:flex-start; justify-content:space-between; gap:12px}
    .cost-ico{
      width:48px; height:48px;
      border-radius: 18px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#a10a31;
      display:flex; align-items:center; justify-content:center;
      font-size:20px; flex:0 0 auto;
    }
    .cost-sub{color:var(--muted); margin-top:6px; font-size:13.5px; line-height:1.6}
    .cost-table-wrap{margin-top:14px}
    .mini-table{
      border:1px solid rgba(25,30,36,.08);
      border-radius: 16px;
      overflow:hidden;
      background: rgba(255,255,255,.78);
    }
    .mini-row{display:grid; grid-template-columns: 1fr 1.1fr 1.1fr; gap:0; border-bottom:1px solid rgba(25,30,36,.08)}
    .mini-row:last-child{border-bottom:none}
    .mini-cell{padding:12px 12px; font-size:14px; line-height:1.55; color:#2b323e}
    .mini-head .mini-cell{background: rgba(200,14,58,.06); font-weight:950}
    .cost-actions{margin-top:14px; display:flex; gap:12px; flex-wrap:wrap}

    .gallery-card{background: rgba(255,255,255,.84)}
    .gallery-top .card-title{margin-top:0}
    .gallery-grid{
      margin-top:14px;
      display:grid; grid-template-columns: 1fr 1fr; gap:12px;
    }
    .img-holder{
      border:1px solid rgba(25,30,36,.08);
      border-radius: 18px;
      overflow:hidden;
      background: rgba(255,255,255,.78);
    }
    .img-hero{width:100%; aspect-ratio: 4/3; object-fit: cover}
    .gallery-note{margin-top:10px; color:var(--subtle); font-size:13.5px; line-height:1.6}

    .info-card{
      padding:18px;
      border-radius: var(--radius2);
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.80);
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
    }
    .info-card:hover{transform: translateY(-3px); border-color: rgba(200,14,58,.22); box-shadow: 0 26px 70px rgba(16,24,40,.10)}
    .info-ico{
      width:44px; height:44px;
      border-radius: 18px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#a10a31;
      display:flex; align-items:center; justify-content:center;
      font-size:20px;
    }
    .info-title{margin:12px 0 0; font-size:18px}
    .info-text{margin:10px 0 0; color:var(--muted); line-height:1.85}

    .dual-cta{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      background: rgba(255,255,255,.80);
      border:1px solid rgba(25,30,36,.08);
      border-radius: var(--radius2);
      padding: 18px;
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      flex-wrap:wrap;
    }
    .dual-text .card-title{margin:0}
    .dual-actions{display:flex; gap:12px; flex-wrap:wrap}

    .faq-grid{display:grid; grid-template-columns: 1fr 1fr; gap:14px}
    .faq-col{display:flex; flex-direction:column; gap:12px}
    .faq-item{
      width:100%;
      text-align:left;
      border-radius: var(--radius2);
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.82);
      padding: 14px 14px;
      cursor:pointer;
      transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
      position:relative;
      overflow:hidden;
      display:grid;
      grid-template-columns: 1fr auto;
      gap: 10px;
      align-items:start;
    }
    .faq-item:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.22); box-shadow: 0 26px 70px rgba(16,24,40,.10)}
    .faq-q{grid-column:1 / 2; font-weight:920; color:#141821}
    .faq-icon{
      grid-column:2 / 3;
      margin-top: 2px;
      width: 34px; height: 34px;
      border-radius: 14px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      display:flex; align-items:center; justify-content:center;
      color:#a10a31; font-size:18px; font-weight:900;
    }
    .faq-a{
      grid-column:1 / -1;
      margin-top:-2px;
      color:var(--muted);
      line-height:1.8;
      max-height:0;
      overflow:hidden;
      opacity:.0;
      transition: max-height .26s ease, opacity .26s ease;
    }
    .faq-item[aria-expanded="true"] .faq-a{
      max-height: 220px;
      opacity:1;
      padding-top: 6px;
    }
    .faq-item[aria-expanded="true"]{border-color: rgba(200,14,58,.26)}
    .faq-item[aria-expanded="true"] .faq-icon{background: rgba(200,14,58,.14)}
    .bio-card{
      border-radius: var(--radius2);
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.80);
      padding: 18px;
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
      transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
      position:relative;
      overflow:hidden;
    }
    .bio-card::after{
      content:"";
      position:absolute; inset:-60px -60px auto auto;
      width:160px; height:160px;
      background: radial-gradient(circle at 30% 30%, rgba(255,59,99,.24), rgba(255,255,255,0) 65%);
      opacity:.9; pointer-events:none;
      transform: rotate(12deg);
    }
    .bio-card:hover{transform: translateY(-3px); border-color: rgba(200,14,58,.22); box-shadow: 0 26px 70px rgba(16,24,40,.10)}
    .bio-top{display:flex; align-items:center; gap:10px; position:relative; z-index:1}
    .bio-dot{width:12px; height:12px; border-radius:4px; background: linear-gradient(135deg, var(--red), var(--red2)); box-shadow: 0 14px 30px rgba(200,14,58,.22)}
    .bio-title{margin:0; font-size:18px}
    .bio-text{margin:12px 0 0; color:var(--muted); line-height:1.85; position:relative; z-index:1}

    .article-wrap{background: rgba(255,255,255,.70); border:1px solid rgba(25,30,36,.08); border-radius: var(--radius2); padding: 16px; box-shadow: 0 16px 45px rgba(16,24,40,.05)}
    .article-grid{
      display:grid; grid-template-columns: repeat(3, minmax(0,1fr));
      gap: 12px;
    }
    .article-card{
      border-radius: 18px;
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.82);
      padding: 14px;
      transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
      display:flex; flex-direction:column; gap:10px;
      min-height: 208px;
    }
    .article-card:hover{transform: translateY(-3px); border-color: rgba(200,14,58,.22); box-shadow: 0 26px 70px rgba(16,24,40,.10)}
    .article-top{display:flex; align-items:center; justify-content:space-between; gap:10px}
    .article-chip{
      font-size:12.5px;
      padding:7px 10px;
      border-radius:999px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#9f0a2d;
      font-weight:900;
      white-space:nowrap;
    }
    .article-date{color:var(--subtle); font-size:12.5px; font-weight:800}
    .article-title{margin:0; font-size:16px; letter-spacing:-.01em; line-height:1.4}
    .article-text{margin:0; color:var(--muted); line-height:1.7; font-size:14px}
    .article-foot{margin-top:auto; color:#9f0a2d; font-weight:900; font-size:14px; display:flex; align-items:center; gap:8px}
    .article-actions{margin-top:14px; display:flex; gap:12px; flex-wrap:wrap}

    .tag-cloud{display:flex; flex-direction:column; gap:12px; padding: 18px; border-radius: var(--radius2); border:1px solid rgba(25,30,36,.08); background: rgba(255,255,255,.78); box-shadow: 0 16px 45px rgba(16,24,40,.05)}
    .tag-cloud-head{font-weight:950; color:#141821}
    .tag-cloud-items{display:flex; flex-wrap:wrap; gap:10px}
    .chip{
      padding:10px 12px;
      border-radius: 999px;
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.78);
      color:#2b323e;
      font-weight:780;
      font-size:13px;
      transition: transform .2s ease, border-color .2s ease, background .2s ease;
    }
    .chip:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.25); background: rgba(200,14,58,.08)}

    .contact-card{
      background:
        radial-gradient(780px 280px at 0% 0%, rgba(200,14,58,.16), rgba(255,255,255,0) 60%),
        rgba(255,255,255,.84);
      border:1px solid rgba(200,14,58,.16);
    }
    .contact-top{display:flex; gap:14px; align-items:flex-start}
    .contact-ico{
      width:48px; height:48px;
      border-radius: 18px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#a10a31;
      display:flex; align-items:center; justify-content:center;
      font-size:20px; flex:0 0 auto;
    }
    .contact-list{margin-top:14px; display:flex; flex-direction:column; gap:12px}
    .contact-item{display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding: 10px 12px; border-radius: 16px; border:1px solid rgba(25,30,36,.08); background: rgba(255,255,255,.75)}
    .ci-key{color:var(--subtle); font-weight:880; font-size:13.5px; white-space:nowrap}
    .ci-val{font-weight:850; color:#2b323e; text-align:right}
    .inline-link{color:#9f0a2d; font-weight:950}
    .contact-actions{display:flex; gap:12px; flex-wrap:wrap}

    .qr-card{background: rgba(255,255,255,.84)}
    .qr-top .card-title{margin-top:0}
    .qr-wrap{
      margin-top: 14px;
      border-radius: 20px;
      border:1px dashed rgba(200,14,58,.30);
      background: rgba(200,14,58,.06);
      padding: 14px;
      display:flex; align-items:center; justify-content:center;
    }
    .qr-img{width: 190px; height:auto}
    .qr-foot{margin-top:14px; display:flex; gap:12px; flex-wrap:wrap; align-items:center}

    .toast{
      position:fixed; left:50%; top:18px; transform: translateX(-50%);
      background: rgba(20,24,34,.92);
      color:#fff;
      padding: 10px 14px;
      border-radius: 14px;
      box-shadow: 0 20px 60px rgba(0,0,0,.25);
      opacity:0; pointer-events:none;
      transition: opacity .18s ease, transform .18s ease;
      z-index:200;
      font-weight:900;
      font-size:13px;
    }
    .toast.show{opacity:1; transform: translateX(-50%) translateY(6px)}

    .network-card .network-grid{
      margin-top:14px; display:grid; grid-template-columns: 1fr 1fr; gap:12px;
    }
    .net-item{
      padding: 14px;
      border-radius: 18px;
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.78);
      transition: transform .22s ease, border-color .22s ease;
    }
    .net-item:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.22)}
    .net-ico{
      width:38px; height:38px;
      border-radius: 16px;
      background: rgba(200,14,58,.10);
      border:1px solid rgba(200,14,58,.18);
      color:#a10a31;
      display:flex; align-items:center; justify-content:center;
      font-size:18px;
      margin-bottom: 10px;
    }
    .net-title{font-weight:950; letter-spacing:-.01em}
    .net-text{margin-top:7px; color:var(--muted); line-height:1.7; font-size:13.5px}

    .join-card{background:
      radial-gradient(820px 300px at 0% 0%, rgba(200,14,58,.16), rgba(255,255,255,0) 60%),
      rgba(255,255,255,.84);
      border:1px solid rgba(200,14,58,.16);
    }
    .join-cta{margin-top:16px; display:flex; gap:12px; flex-wrap:wrap}
    .join-form-card{background: rgba(255,255,255,.84)}
    .friend-links{
      display:flex; flex-wrap:wrap; gap:10px;
      padding: 16px;
      border-radius: var(--radius2);
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.78);
      box-shadow: 0 16px 45px rgba(16,24,40,.05);
    }
    .friend-links a{
      padding: 10px 12px;
      border-radius: 999px;
      border:1px solid rgba(25,30,36,.08);
      background: rgba(255,255,255,.78);
      color:#2b323e;
      font-weight:850;
      font-size:13px;
      transition: transform .2s ease, border-color .2s ease, background .2s ease;
    }
    .friend-links a:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.25); background: rgba(200,14,58,.08)}

    .footer{
      background: #0f1220;
      color: #e9edf3;
      border-top:1px solid rgba(255,255,255,.10);
      padding: 26px 0 22px;
    }
    .footer-inner{display:flex; flex-direction:column; gap:16px}
    .footer-top{
      display:flex; gap:18px; justify-content:space-between; align-items:flex-start; flex-wrap:wrap;
    }
    .footer-brand{min-width: 260px; max-width: 420px}
    .footer-logo-row{display:flex; gap:12px; align-items:center}
    .footer-logo{width: 48px; height:auto; filter: drop-shadow(0 18px 40px rgba(255,59,99,.18))}
    .footer-name{font-weight:980; font-size:18px; letter-spacing:-.01em}
    .footer-sub{margin-top:4px; color: rgba(233,237,243,.75); font-weight:800}
    .footer-desc{margin-top:12px; color: rgba(233,237,243,.78); line-height:1.8}
    .footer-home-link{margin-top:12px}
    .ai-page-home-link{
      display:inline-flex; align-items:center; justify-content:center;
      padding: 10px 12px;
      border-radius: 999px;
      background: rgba(255,59,99,.14);
      border:1px solid rgba(255,59,99,.26);
      color:#fff;
      font-weight:920;
    }
    .footer-cols{display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:18px; min-width: 520px}
    .footer-col-title{font-weight:950; color:#fff; margin-bottom:10px}
    .footer-link{
      display:block;
      padding: 8px 0;
      color: rgba(233,237,243,.82);
      font-weight:820;
      transition: color .2s ease, transform .2s ease;
    }
    .footer-link:hover{color:#fff; transform: translateX(2px)}
    .footer-muted{color: rgba(233,237,243,.72); font-weight:780; margin: 6px 0; line-height:1.6}
    .footer-bottom{
      display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
      padding-top: 10px;
      border-top: 1px solid rgba(255,255,255,.10);
    }
    .footer-bottom-left{color: rgba(233,237,243,.72); font-weight:800; font-size:13.5px}
    .footer-bottom-right{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
    .footer-mini-link{
      color: rgba(233,237,243,.82);
      font-weight:900;
      padding: 8px 10px;
      border-radius: 12px;
      border: 1px solid rgba(255,255,255,.12);
      background: rgba(255,255,255,.06);
      transition: transform .2s ease, background .2s ease, border-color .2s ease;
    }
    .footer-mini-link:hover{transform: translateY(-2px); border-color: rgba(255,59,99,.35); background: rgba(255,59,99,.10)}
    .footer-sep{color: rgba(233,237,243,.45)}
    .footer-mini-btn{
      background: rgba(255,255,255,.06);
      color: rgba(233,237,243,.90);
      border: 1px solid rgba(255,255,255,.12);
      padding: 8px 10px;
      border-radius: 12px;
      font-weight:950;
      cursor:pointer;
      transition: transform .2s ease, background .2s ease, border-color .2s ease;
    }
    .footer-mini-btn:hover{transform: translateY(-2px); border-color: rgba(255,59,99,.35); background: rgba(255,59,99,.10)}

    .float-customer{
      position: fixed;
      right: 16px;
      bottom: 16px;
      z-index: 120;
      display:flex;
      align-items:flex-end;
      gap:12px;
    }
    .float-btn{
      display:flex; align-items:center; gap:10px;
      padding: 12px 14px;
      border-radius: 18px;
      border:1px solid rgba(200,14,58,.22);
      background: linear-gradient(135deg, rgba(200,14,58,.15), rgba(255,59,99,.12));
      box-shadow: 0 24px 70px rgba(200,14,58,.20);
      cursor:pointer;
      font-weight:980;
      color:#9f0a2d;
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
      position:relative;
    }
    .float-btn:focus{outline:none; box-shadow: var(--focus)}
    .float-btn:hover{transform: translateY(-2px); border-color: rgba(200,14,58,.32); box-shadow: 0 30px 90px rgba(200,14,58,.24)}
    .float-dot{
      width:10px; height:10px; border-radius:50%;
      background: linear-gradient(135deg, var(--red), var(--red2));
      box-shadow: 0 14px 30px rgba(200,14,58,.25);
    }
    .float-text{font-size:14px}
    .kefu-panel{
      width: 300px;
      transform-origin: 100% 100%;
      transform: translateY(6px) scale(.98);
      opacity:0;
      pointer-events:none;
      transition: opacity .18s ease, transform .18s ease;
      border-radius: 22px;
      border:1px solid rgba(25,30,36,.10);
      background: rgba(255,255,255,.90);
      box-shadow: 0 40px 110px rgba(0,0,0,.22);
      overflow:hidden;
    }
    .kefu-panel.open{
      opacity:1; transform: translateY(0) scale(1);
      pointer-events:auto;
    }
    .kefu-head{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      padding: 14px 14px 10px;
      border-bottom:1px solid rgba(25,30,36,.08);
      background:
        radial-gradient(520px 180px at 0% 0%, rgba(200,14,58,.18), rgba(255,255,255,0) 60%),
        rgba(255,255,255,.95);
    }
    .kefu-title{font-weight:980; color:#141821}
    .kefu-img{width: 160px; margin: 14px auto 0}
    .kefu-actions{padding: 14px; display:flex; flex-direction:column; gap:10px}
    .kefu-actions .btn{width:100%}

    .inview-target{
      opacity: 1;
      transform: none;
    }
    @media (prefers-reduced-motion: no-preference) {
      .inview-target{
        will-change: transform, opacity;
        transition: transform .7s cubic-bezier(.2,.8,.2,1), opacity .7s cubic-bezier(.2,.8,.2,1);
      }
      .inview-target:not(.inview){
        opacity: .0;
        transform: translateY(12px);
      }
      .inview-target.inview{
        opacity: 1;
        transform: translateY(0);
      }
    }

    @media (max-width: 980px){
      .hero-inner{grid-template-columns: 1fr; gap: 14px}
      .mini-cards{grid-template-columns: 1fr; }
      .hero-micro{grid-template-columns: 1fr; }
      .service-grid{grid-template-columns: 1fr}
      .service-wide{grid-column:auto}
      .grid-2, .platform-row{grid-template-columns: 1fr}
      .compare-shelf{grid-template-columns: 1fr}
      .case-grid{grid-template-columns: 1fr}
      .gallery-strip{grid-template-columns: 1fr}
      .faq-grid{grid-template-columns: 1fr}
      .article-grid{grid-template-columns: 1fr}
      .footer-cols{min-width: auto; grid-template-columns: 1fr 1fr}
      .timeline-item{gap:10px}
      .hero-title{font-size: 40px}
    }
    @media (max-width: 820px){
      .desktop-nav{display:none}
      #openMobileMenu{display:flex}
      .section-title{font-size: 28px}
      .form-grid{grid-template-columns: 1fr}
      .hl-list{grid-template-columns: 1fr}
      .mini-table .mini-row{grid-template-columns: 1fr}
      .compare-table{min-width: 640px}
      .gallery-grid{grid-template-columns: 1fr}
      .qr-img{width: 168px}
      .float-customer{right: 12px; bottom: 12px}
      .kefu-panel{width: 280px}
      .mini-cards{grid-template-columns: 1fr}
    }
    @media (min-width: 821px){
      #openMobileMenu{display:none}
    }