:root{
      --bg:#f7f5ef;
      --panel:#ffffff;
      --panel-2:#fff9ef;
      --text:#1f2937;
      --muted:#667085;
      --line:#e7dfd0;
      --brand:#0f6bff;
      --brand-2:#12b8a6;
      --accent:#ff8a00;
      --shadow:0 18px 40px rgba(31,41,55,.08);
      --shadow-soft:0 10px 24px rgba(15,107,255,.10);
      --radius:22px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at top left, rgba(15,107,255,.08), transparent 28%),
        radial-gradient(circle at right 12%, rgba(18,184,166,.10), transparent 24%),
        linear-gradient(180deg, #fffdfa 0%, var(--bg) 100%);
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(100% - 32px, var(--container)); margin:0 auto}
    .site-header{
      position:sticky; top:0; z-index:50;
      backdrop-filter:saturate(180%) blur(14px);
      background:rgba(255,255,255,.82);
      border-bottom:1px solid rgba(231,223,208,.75);
    }
    .nav{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      padding:14px 0;
    }
    .brand{display:flex; align-items:center; gap:12px; min-width:0}
    .brand img{width:44px; height:44px; object-fit:contain; border-radius:12px; background:#fff; box-shadow:0 8px 18px rgba(0,0,0,.06)}
    .brand-text{display:flex; flex-direction:column; line-height:1.15; min-width:0}
    .brand-text strong{font-size:16px}
    .brand-text span{font-size:12px; color:var(--muted)}
    .nav-toggle{display:none; border:1px solid var(--line); background:#fff; color:var(--text); border-radius:12px; padding:10px 12px}
    .nav-links{display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:flex-end}
    .nav-links a{font-size:14px; color:#334155}
    .nav-links a:hover,.nav-links a:focus{color:var(--brand)}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:8px;
      border:1px solid transparent; border-radius:999px; padding:12px 18px;
      font-weight:700; transition:.25s ease; cursor:pointer;
    }
    .btn-primary{background:linear-gradient(135deg,var(--brand),#4c8dff); color:#fff; box-shadow:var(--shadow-soft)}
    .btn-primary:hover{transform:translateY(-1px); box-shadow:0 16px 30px rgba(15,107,255,.18)}
    .btn-ghost{background:#fff; color:var(--text); border-color:var(--line)}
    .btn-ghost:hover{transform:translateY(-1px); box-shadow:var(--shadow)}
    .hero{
      padding:42px 0 28px;
      position:relative;
      overflow:hidden;
    }
    .hero::before,.hero::after{
      content:""; position:absolute; inset:auto;
      width:260px; height:260px; border-radius:50%;
      background:radial-gradient(circle, rgba(15,107,255,.14), transparent 68%);
      pointer-events:none;
    }
    .hero::before{top:-90px; right:-100px}
    .hero::after{bottom:10px; left:-120px}
    .hero-grid{
      display:grid; grid-template-columns:1.15fr .85fr; gap:24px; align-items:stretch;
    }
    .hero-copy,.hero-side,.card,.panel,.faq-item,.quote,.timeline li,.article,.info-box,.form-wrap,.table-wrap,.tag-cloud,.service-map,.price-box{
      background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.98));
      border:1px solid rgba(231,223,208,.9);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
    }
    .hero-copy{padding:32px}
    .eyebrow{
      display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700;
      color:#0f5fe0; background:#edf4ff; border:1px solid #d8e6ff; padding:8px 12px; border-radius:999px;
    }
    h1{margin:18px 0 14px; font-size:clamp(30px, 4vw, 54px); line-height:1.08; letter-spacing:-.04em}
    .lead{margin:0; color:#475467; font-size:16px; line-height:1.85; max-width:62ch}
    .hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:22px}
    .hero-meta{display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:26px}
    .meta-box{
      padding:16px; border-radius:18px; background:linear-gradient(180deg,#fff, #f8fbff);
      border:1px solid #e5ecff;
    }
    .meta-box strong{display:block; font-size:18px; margin-bottom:6px}
    .meta-box span{font-size:13px; color:var(--muted); line-height:1.55}
    .hero-side{padding:22px; display:flex; flex-direction:column; gap:16px}
    .quick-card{
      padding:18px; border-radius:18px; background:linear-gradient(135deg,#f7fbff, #f9f4ff);
      border:1px solid #e8e0fb;
    }
    .quick-card h2,.section-title h2{margin:0 0 8px; font-size:24px}
    .quick-card p,.section-desc{margin:0; color:#516072; line-height:1.75}
    .mini-list{display:grid; gap:10px; margin-top:14px}
    .mini-item{display:flex; justify-content:space-between; gap:12px; padding:11px 12px; border-radius:14px; background:#fff; border:1px solid #edf0f4}
    .mini-item b{font-size:14px}
    .mini-item span{font-size:13px; color:var(--muted)}
    .section{padding:18px 0}
    .section-title{display:flex; justify-content:space-between; gap:16px; align-items:end; margin-bottom:16px}
    .section-title p{margin:0; color:var(--muted); line-height:1.7; max-width:70ch}
    .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
    .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .card{padding:20px}
    .card h3{margin:0 0 10px; font-size:18px}
    .card p{margin:0; color:#556070; line-height:1.8}
    .badge{display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:700; color:#0d6b63; background:#e8fffb; border:1px solid #c8f2ec; padding:6px 10px; border-radius:999px; margin-bottom:12px}
    .feature-list{display:grid; gap:12px; margin-top:14px}
    .feature-item{display:flex; gap:12px; align-items:flex-start; padding:14px; border-radius:16px; background:#fff; border:1px solid #edf0f4}
    .dot{width:10px; height:10px; border-radius:50%; margin-top:7px; background:linear-gradient(135deg,var(--brand),var(--brand-2)); flex:none}
    .feature-item strong{display:block; margin-bottom:4px}
    .feature-item span{color:var(--muted); line-height:1.65; font-size:14px}
    .platform{display:grid; grid-template-columns:1fr 1fr; gap:18px}
    .tag-cloud{padding:18px}
    .tags{display:flex; flex-wrap:wrap; gap:10px}
    .tag{padding:9px 12px; border-radius:999px; border:1px solid #e5ebf4; background:#fff; font-size:13px; color:#334155}
    .timeline{list-style:none; padding:0; margin:0; display:grid; gap:12px}
    .timeline li{padding:16px 18px; display:flex; gap:14px; align-items:flex-start}
    .step-num{width:34px; height:34px; border-radius:12px; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,var(--brand),#4c8dff); font-weight:800; flex:none}
    .timeline h3{margin:0 0 6px; font-size:17px}
    .timeline p{margin:0; color:var(--muted); line-height:1.7}
    .table-wrap{padding:0; overflow:auto}
    table{width:100%; border-collapse:collapse; min-width:860px}
    th,td{padding:16px 18px; border-bottom:1px solid #eef1f5; text-align:left; vertical-align:top}
    th{background:#fbfcff; font-size:14px}
    td{color:#475467; line-height:1.7}
    .score{font-weight:800; color:#0f6bff}
    .comparison-top{display:grid; grid-template-columns:1.1fr .9fr; gap:16px; margin-bottom:16px}
    .rating-card{padding:22px; background:linear-gradient(135deg,#eef6ff,#fdf7ee); border:1px solid #d9e8ff}
    .rating-card strong{display:block; font-size:44px; line-height:1; margin:10px 0 8px}
    .rating-card p{margin:0; color:#475467; line-height:1.8}
    .faq-list{display:grid; gap:12px}
    .faq-item{overflow:hidden}
    .faq-q{
      width:100%; border:0; background:transparent; padding:18px 18px;
      display:flex; justify-content:space-between; gap:16px; align-items:center; text-align:left;
      font-size:16px; font-weight:700; color:var(--text); cursor:pointer;
    }
    .faq-q span{flex:1}
    .faq-a{max-height:0; overflow:hidden; transition:max-height .28s ease; padding:0 18px}
    .faq-a p{margin:0; padding:0 0 18px; color:var(--muted); line-height:1.8}
    .faq-item.active .faq-a{max-height:220px}
    .faq-item.active .chev{transform:rotate(180deg)}
    .chev{transition:transform .25s ease; color:var(--muted)}
    .quotes{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .quote{padding:20px}
    .quote .role{font-size:13px; color:#0f6bff; font-weight:700; margin-bottom:10px}
    .quote p{margin:0; color:#475467; line-height:1.8}
    .quote .name{margin-top:14px; font-weight:800}
    .quote .sub{font-size:13px; color:var(--muted); margin-top:3px}
    .article-list{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
    .article{padding:20px}
    .article time{display:inline-block; font-size:12px; color:#0f6b63; background:#e9fffb; border:1px solid #c8f2ec; padding:5px 10px; border-radius:999px; margin-bottom:10px}
    .article h3{margin:0 0 10px; font-size:18px}
    .article p{margin:0; color:#475467; line-height:1.75}
    .article a{display:inline-flex; margin-top:14px; color:#0f6bff; font-weight:700}
    .service-map{padding:22px}
    .map-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:14px}
    .map-item{padding:14px; border:1px solid #edf0f4; border-radius:16px; background:#fff}
    .map-item strong{display:block; margin-bottom:6px}
    .map-item span{color:var(--muted); font-size:14px; line-height:1.65}
    .price-box{padding:22px}
    .price-list{display:grid; gap:12px; margin-top:14px}
    .price-row{display:flex; justify-content:space-between; gap:12px; padding:14px 16px; border-radius:14px; background:#fff; border:1px solid #edf0f4}
    .price-row b{font-size:14px}
    .price-row span{color:var(--muted)}
    .form-wrap{padding:22px}
    form{display:grid; gap:14px}
    .form-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
    label{display:grid; gap:8px; font-size:14px; font-weight:700; color:#344054}
    input,select,textarea{
      width:100%; border:1px solid #d9e1ec; background:#fff; border-radius:14px; padding:13px 14px;
      font:inherit; color:var(--text); outline:none; transition:border-color .2s ease, box-shadow .2s ease;
    }
    textarea{min-height:130px; resize:vertical}
    input:focus,select:focus,textarea:focus{border-color:#7cb0ff; box-shadow:0 0 0 4px rgba(15,107,255,.10)}
    .submit-row{display:flex; flex-wrap:wrap; gap:12px; align-items:center}
    .note{font-size:13px; color:var(--muted); line-height:1.7}
    .footer{
      margin-top:16px;
      background:#0f172a;
      color:#e5edf9;
      padding:26px 0 20px;
    }
    .footer a{color:#d6e7ff}
    .footer-grid{display:grid; grid-template-columns:1.2fr .8fr .9fr; gap:20px}
    .footer h2,.footer h3{margin:0 0 12px}
    .footer p,.footer li{color:#b7c4d8; line-height:1.8}
    .footer ul{list-style:none; padding:0; margin:0; display:grid; gap:8px}
    .footer-bottom{margin-top:18px; padding-top:16px; border-top:1px solid rgba(255,255,255,.12); display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; color:#9fb2cc; font-size:13px}
    .floating{
      position:fixed; right:16px; bottom:16px; z-index:60;
      display:grid; gap:10px;
    }
    .float-btn{
      width:52px; height:52px; border-radius:16px; display:grid; place-items:center;
      background:linear-gradient(135deg,var(--brand),#4c8dff);
      color:#fff; box-shadow:0 16px 34px rgba(15,107,255,.24);
      border:0; cursor:pointer;
    }
    .backtop{display:none}
    .backtop.show{display:grid}
    .floating-card{
      position:absolute; right:62px; bottom:0; width:280px; padding:16px;
      background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow);
      display:none;
    }
    .floating-card.show{display:block}
    .float-qr{display:flex; gap:12px; align-items:center}
    .float-qr img{width:82px; height:82px; object-fit:cover; border-radius:12px; border:1px solid #eef1f5}
    .anchor{scroll-margin-top:90px}
    .image-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px}
    .media-card{padding:14px}
    .media-card img{width:100%; border-radius:18px; object-fit:cover; aspect-ratio:16/9; background:#f1f5f9}
    .media-card p{margin:12px 4px 0; color:#475467; line-height:1.7}
    .hero-home{margin-top:18px}
    .hero-home a{color:#0f6bff; font-weight:800}
    .topline{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
    .topline .chip{padding:7px 10px; border-radius:999px; background:#fff; border:1px solid #e7e6f4; font-size:12px; color:#475467}
    .scroll-hint{display:inline-flex; align-items:center; gap:8px; color:#0f6bff; font-weight:700; margin-top:14px}
    @media (max-width: 1024px){
      .hero-grid,.platform,.comparison-top,.footer-grid,.grid-4,.grid-3,.quotes,.article-list,.image-grid,.map-grid{grid-template-columns:1fr 1fr}
      .hero-meta{grid-template-columns:1fr}
    }
    @media (max-width: 760px){
      .nav-toggle{display:inline-flex}
      .nav-links{display:none; width:100%; padding:12px 0 6px; border-top:1px solid var(--line); margin-top:12px}
      .nav-links.open{display:flex; flex-direction:column; align-items:flex-start}
      .nav{flex-wrap:wrap}
      .hero-grid,.platform,.comparison-top,.footer-grid,.grid-4,.grid-3,.quotes,.article-list,.image-grid,.map-grid,.form-grid{grid-template-columns:1fr}
      .hero-copy,.hero-side,.card,.panel,.faq-item,.quote,.timeline li,.article,.info-box,.form-wrap,.table-wrap,.tag-cloud,.service-map,.price-box{border-radius:18px}
      .hero{padding-top:26px}
      .hero-copy{padding:22px}
      .section-title{flex-direction:column; align-items:flex-start}
      .hero-actions,.submit-row{width:100%}
      .btn{width:100%}
      .floating-card{width:calc(100vw - 104px)}
    }
    .reveal{opacity:0; transform:translateY(14px); transition:opacity .55s ease, transform .55s ease}
    .reveal.in{opacity:1; transform:none}