:root{
      --bg:#f7f3ee;
      --bg2:#fffaf6;
      --card:#ffffff;
      --ink:#1f2937;
      --muted:#5b6472;
      --line:#eadfce;
      --brand:#ff4d5e;
      --brand2:#ff8b3d;
      --accent:#1d4ed8;
      --good:#0f766e;
      --shadow:0 18px 40px rgba(43, 33, 18, .08);
      --radius:20px;
      --radius-sm:14px;
      --max:1180px;
    }
    *{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",sans-serif;
      color:var(--ink);
      background:
        radial-gradient(circle at top left, rgba(255,77,94,.08), transparent 26%),
        radial-gradient(circle at top right, rgba(255,139,61,.09), transparent 22%),
        linear-gradient(180deg,var(--bg) 0%, #fff 36%, var(--bg2) 100%);
      line-height:1.65;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    .container{width:min(var(--max), calc(100% - 32px)); margin:0 auto}
    .topbar{
      position:sticky;top:0;z-index:40;
      backdrop-filter:blur(14px);
      background:rgba(255,250,245,.84);
      border-bottom:1px solid rgba(234,223,206,.8);
    }
    .nav{
      display:flex;align-items:center;justify-content:space-between;gap:16px;
      padding:12px 0;
    }
    .brand{display:flex;align-items:center;gap:12px;min-width:0}
    .brand img{width:42px;height:42px;object-fit:contain;border-radius:12px;background:#fff;border:1px solid var(--line);padding:4px;box-shadow:0 10px 20px rgba(0,0,0,.04)}
    .brand .txt{min-width:0}
    .brand strong{display:block;font-size:16px;letter-spacing:.4px}
    .brand span{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .navlinks{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
    .navlinks a,.nav-cta,.ghost-btn,.primary-btn,.submit-btn,.tag{
      border:1px solid rgba(234,223,206,.95);
      background:rgba(255,255,255,.9);
      color:var(--ink);
      border-radius:999px;
      padding:10px 14px;
      font-size:14px;
      transition:.25s ease;
      box-shadow:0 8px 22px rgba(32,24,15,.04);
    }
    .navlinks a:hover,.ghost-btn:hover,.tag:hover{transform:translateY(-2px);border-color:#ffb7bf;box-shadow:0 12px 30px rgba(255,77,94,.12)}
    .nav-cta,.primary-btn,.submit-btn{background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#fff; border-color:transparent}
    .nav-cta:hover,.primary-btn:hover,.submit-btn:hover{transform:translateY(-2px);filter:saturate(1.08);box-shadow:0 16px 36px rgba(255,77,94,.22)}
    .menu-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px}
    .menu-btn span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0;border-radius:999px}
    header.hero{padding:34px 0 20px; position:relative}
    .hero-grid{
      display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch;
    }
    .hero-main{
      position:relative; overflow:hidden;
      background:
        linear-gradient(135deg, rgba(255,77,94,.12), rgba(255,139,61,.09) 38%, rgba(29,78,216,.06)),
        #fff;
      border:1px solid rgba(234,223,206,.95);
      border-radius:28px;
      padding:34px;
      box-shadow:var(--shadow);
    }
    .hero-main::before,.hero-main::after{
      content:"";position:absolute;border-radius:50%;
      background:radial-gradient(circle, rgba(255,77,94,.16), transparent 65%);
      pointer-events:none
    }
    .hero-main::before{width:240px;height:240px;right:-90px;top:-90px}
    .hero-main::after{width:180px;height:180px;left:-70px;bottom:-70px}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#8d4b1f;background:#fff6ee;border:1px solid #f4d4bb;border-radius:999px;padding:8px 12px}
    h1{font-size:clamp(30px,4vw,54px);line-height:1.08;margin:16px 0 14px;letter-spacing:-.02em}
    .lead{font-size:16px;color:var(--muted);max-width:62ch;margin:0 0 22px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
    .hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px}
    .mini-stat{
      background:rgba(255,255,255,.92);
      border:1px solid rgba(234,223,206,.95);
      border-radius:18px;padding:16px;
    }
    .mini-stat strong{display:block;font-size:22px}
    .mini-stat span{display:block;color:var(--muted);font-size:13px;margin-top:4px}
    .hero-side{
      display:grid;gap:16px;
    }
    .panel{
      background:rgba(255,255,255,.92);
      border:1px solid rgba(234,223,206,.95);
      border-radius:24px;
      box-shadow:var(--shadow);
      padding:22px;
    }
    .panel h2,.section-title h2{font-size:26px;margin:0 0 10px}
    .panel p,.section-desc{margin:0;color:var(--muted)}
    .badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
    .badge{display:inline-flex;align-items:center;gap:6px;background:#fff7f5;border:1px solid #ffd4d9;border-radius:999px;padding:8px 12px;font-size:13px;color:#9a2d3c}
    .section{padding:22px 0}
    .section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:18px}
    .section-title p{color:var(--muted);margin:0;max-width:68ch}
    .grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
    .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
    .card{
      background:rgba(255,255,255,.94);
      border:1px solid rgba(234,223,206,.96);
      border-radius:22px;
      box-shadow:var(--shadow);
      padding:20px;
      transition:.24s ease;
    }
    .card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(32,24,15,.1)}
    .card h3{margin:0 0 8px;font-size:18px}
    .card p{margin:0;color:var(--muted)}
    .icon{
      width:44px;height:44px;border-radius:14px;display:grid;place-items:center;
      background:linear-gradient(135deg, rgba(255,77,94,.12), rgba(255,139,61,.14));
      color:#c61f3b;font-weight:700;margin-bottom:12px
    }
    .tags{display:flex;flex-wrap:wrap;gap:10px}
    .feature-list,.bullets{list-style:none;padding:0;margin:0;display:grid;gap:12px}
    .feature-list li,.bullets li{padding-left:22px;position:relative;color:var(--ink)}
    .feature-list li::before,.bullets li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand2))}
    .workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
    .step{
      position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;
    }
    .step strong{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;margin-bottom:10px}
    .step h3{margin:0 0 8px;font-size:17px}
    .table-wrap{overflow:auto;border-radius:22px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow)}
    table{width:100%;border-collapse:collapse;min-width:860px}
    th,td{padding:15px 16px;border-bottom:1px solid #f0e6d8;text-align:left;vertical-align:top}
    th{background:#fff7f1;font-size:14px;color:#7a3d16}
    tr:last-child td{border-bottom:none}
    .rating{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#fff1f3;border:1px solid #ffc4cd;color:#9d1730;font-weight:700}
    .compare{
      display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch
    }
    .quote{
      display:grid;gap:12px;background:linear-gradient(180deg,#fff 0%, #fff8f4 100%);border:1px solid var(--line);border-radius:22px;padding:20px
    }
    .quote strong{font-size:16px}
    .price-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
    .price{padding:20px;border-radius:20px;border:1px solid var(--line);background:#fff}
    .price .num{font-size:30px;font-weight:800;color:#ba1631}
    .timeline{display:grid;gap:14px}
    .time-item{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff}
    .time-item time{color:#a1541d;font-weight:700}
    .case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
    .case-card{overflow:hidden}
    .case-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px;border:1px solid var(--line);margin-bottom:14px}
    .review{display:grid;gap:12px}
    .review .meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}
    .faq{display:grid;gap:12px}
    details{
      background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:0 10px 26px rgba(0,0,0,.04)
    }
    summary{cursor:pointer;font-weight:700;list-style:none}
    summary::-webkit-details-marker{display:none}
    details p{margin:10px 0 0;color:var(--muted)}
    .article-list{display:grid;gap:12px}
    .article-item{
      display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border:1px solid var(--line);border-radius:16px;background:#fff
    }
    .article-item span{color:var(--muted);font-size:13px}
    .form-wrap{display:grid;grid-template-columns:1fr .9fr;gap:16px;align-items:start}
    form{
      background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow)
    }
    .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
    .field{display:grid;gap:8px}
    .field.full{grid-column:1/-1}
    label{font-size:14px;font-weight:700}
    input,select,textarea{
      width:100%;border:1px solid #e8dccb;background:#fff;border-radius:14px;padding:12px 14px;font:inherit;color:var(--ink);outline:none;
      transition:.2s ease
    }
    input:focus,select:focus,textarea:focus{border-color:#ff9aa6;box-shadow:0 0 0 4px rgba(255,77,94,.08)}
    textarea{min-height:120px;resize:vertical}
    .side-box{
      background:linear-gradient(180deg,#fff 0%, #fff7f2 100%);border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow)
    }
    .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
    .contact-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px}
    .contact-card .row{display:flex;align-items:center;justify-content:space-between;gap:12px}
    .contact-card .val{font-weight:800}
    .footer{
      margin-top:22px;padding:22px 0 34px;background:#191919;color:#f3f4f6
    }
    .footer a{color:#ffd7dc}
    .footer .container{display:grid;gap:18px}
    .footer-grid{display:grid;grid-template-columns:1.25fr .9fr .85fr;gap:16px}
    .footer small,.footer p{color:#cfd3d8}
    .footer .brand strong{color:#fff}
    .footer .brand span{color:#c8ccd2}
    .footer .foot-links{display:flex;flex-wrap:wrap;gap:10px}
    .footer .foot-links a{background:rgba(255,255,255,.08);padding:8px 10px;border-radius:999px}
    .float-tools{
      position:fixed;right:16px;bottom:16px;z-index:50;display:grid;gap:10px
    }
    .float-tools a,.float-tools button{
      width:48px;height:48px;border-radius:16px;border:none;display:grid;place-items:center;box-shadow:0 12px 26px rgba(0,0,0,.16);cursor:pointer
    }
    .float-tools .kefu{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff}
    .float-tools .top{background:#fff;color:var(--ink);border:1px solid var(--line)}
    .scroll-anim{opacity:0;transform:translateY(18px);transition:.7s ease}
    .scroll-anim.show{opacity:1;transform:translateY(0)}
    .mobile-only{display:none}
    .service-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
    .service-map .card{padding:18px}
    .divider{height:1px;background:linear-gradient(90deg, transparent, rgba(234,223,206,.95), transparent);margin:10px 0 0}
    .pillline{display:flex;flex-wrap:wrap;gap:10px}
    .pillline .tag{padding:8px 12px}
    @media (max-width: 1024px){
      .hero-grid,.form-wrap,.footer-grid,.compare,.contact-grid{grid-template-columns:1fr}
      .grid-4,.grid-3,.workflow,.price-row,.case-grid,.service-map{grid-template-columns:repeat(2,minmax(0,1fr))}
      .hero-meta{grid-template-columns:1fr}
    }
    @media (max-width: 768px){
      .menu-btn{display:block}
      .navlinks{
        display:none;position:absolute;left:16px;right:16px;top:68px;
        padding:12px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)
      }
      .navlinks.open{display:flex}
      .nav{position:relative}
      .grid-4,.grid-3,.workflow,.price-row,.case-grid,.service-map,.fields{grid-template-columns:1fr}
      .section-title{flex-direction:column;align-items:flex-start}
      .time-item{grid-template-columns:1fr}
      .mobile-only{display:inline-flex}
      .hero-main{padding:24px}
      .panel{padding:18px}
      .float-tools{right:12px;bottom:12px}
    }