:root{
      --bg0:#fbf6ef;
      --bg1:#f6f0e6;
      --card:#ffffff;
      --text:#1f2937;
      --muted:#5b6676;
      --line:rgba(17,24,39,.10);
      --shadow:0 18px 40px rgba(17,24,39,.10);
      --shadow2:0 10px 24px rgba(17,24,39,.10);
      --gold:#b08d57;
      --gold2:#c9a76c;
      --ink:#1b1b1f;
      --accent:#7b5a2e;
      --accent2:#5a3f1f;
      --radius:18px;
      --radius2:14px;
      --focus:rgba(176,141,87,.35);
      --btn:#1b1b1f;
      --btnText:#fff;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", Arial, sans-serif;
      color:var(--text);
      background:
        radial-gradient(1100px 520px at 18% 6%, rgba(176,141,87,.16), transparent 55%),
        radial-gradient(900px 420px at 86% 10%, rgba(124,90,46,.14), transparent 55%),
        linear-gradient(180deg, var(--bg0), var(--bg1));
      overflow-x:hidden;
    }
    a{color:inherit}
    .container{
      width:100%;
      max-width:1120px;
      padding:0 18px;
      margin:0 auto;
    }
    .sr-only{
      position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
    }

    header{
      position:sticky;
      top:0;
      z-index:30;
      background:rgba(251,246,239,.72);
      backdrop-filter:saturate(130%) blur(10px);
      border-bottom:1px solid rgba(17,24,39,.08);
    }
    .nav{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:12px 0;
    }
    .brand{
      display:flex;
      align-items:center;
      gap:10px;
      min-width:160px;
    }
    .logo{
      width:38px; height:38px;
      border-radius:12px;
      background:
        radial-gradient(10px 10px at 30% 30%, rgba(255,255,255,.65), transparent 60%),
        linear-gradient(135deg, rgba(176,141,87,.95), rgba(90,63,31,.95));
      display:flex;
      align-items:center;
      justify-content:center;
      box-shadow:0 10px 24px rgba(176,141,87,.25);
      border:1px solid rgba(255,255,255,.35);
    }
    .logo span{
      color:#fff;
      font-weight:800;
      letter-spacing:.02em;
      font-size:18px;
      transform:translateY(-1px);
    }
    .brand strong{
      font-weight:820;
      font-size:14px;
      letter-spacing:.04em;
      color:var(--ink);
      display:block;
      line-height:1.1;
    }
    .brand em{
      font-style:normal;
      color:var(--muted);
      font-size:12px;
      display:block;
      margin-top:3px;
    }

    .navLinks{
      display:flex;
      gap:14px;
      align-items:center;
      flex-wrap:nowrap;
    }
    .navLinks a{
      text-decoration:none;
      color:rgba(31,41,55,.85);
      font-weight:650;
      font-size:13px;
      padding:8px 10px;
      border-radius:12px;
      transition:background .2s ease, color .2s ease, transform .2s ease;
      white-space:nowrap;
    }
    .navLinks a:hover{
      background:rgba(176,141,87,.12);
      color:var(--accent2);
      transform:translateY(-1px);
    }

    .navRight{
      display:flex;
      align-items:center;
      gap:10px;
      justify-content:flex-end;
      min-width:240px;
    }
    .pill{
      border:1px solid rgba(176,141,87,.35);
      background:rgba(255,255,255,.62);
      border-radius:999px;
      padding:8px 12px;
      display:flex;
      align-items:center;
      gap:8px;
      box-shadow:0 10px 24px rgba(17,24,39,.05);
      transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .pill:hover{
      transform:translateY(-1px);
      box-shadow:0 16px 38px rgba(17,24,39,.08);
      background:rgba(255,255,255,.78);
    }
    .pill svg{flex:0 0 auto}
    .pill .txt{
      display:flex;
      flex-direction:column;
      line-height:1.1;
    }
    .pill .txt b{
      font-size:12px;
      color:var(--ink);
      letter-spacing:.02em;
    }
    .pill .txt small{
      font-size:11px;
      color:var(--muted);
      margin-top:2px;
    }

    .btn{
      appearance:none;
      border:1px solid rgba(27,27,31,.12);
      background:linear-gradient(180deg, rgba(27,27,31,.96), rgba(27,27,31,.90));
      color:var(--btnText);
      border-radius:14px;
      padding:10px 14px;
      font-weight:800;
      letter-spacing:.02em;
      font-size:13px;
      text-decoration:none;
      display:inline-flex;
      align-items:center;
      gap:10px;
      box-shadow:0 18px 40px rgba(27,27,31,.18);
      transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
      white-space:nowrap;
    }
    .btn:hover{
      transform:translateY(-1px);
      box-shadow:0 22px 60px rgba(27,27,31,.22);
      filter:saturate(1.03);
    }
    .btn:focus{outline:none}
    .btn:focus-visible{
      box-shadow:0 0 0 5px var(--focus), 0 22px 60px rgba(27,27,31,.22);
    }

    .mobileToggle{
      display:none;
      appearance:none;
      border:1px solid rgba(17,24,39,.12);
      background:rgba(255,255,255,.70);
      border-radius:14px;
      padding:10px 12px;
      font-weight:800;
      color:var(--ink);
      box-shadow:0 10px 24px rgba(17,24,39,.06);
    }

    .mobilePanel{
      display:none;
      padding:0 0 14px 0;
    }
    .mobilePanel .stack{
      display:flex;
      flex-direction:column;
      gap:10px;
      padding-top:10px;
    }
    .mobilePanel a{
      text-decoration:none;
      padding:12px 12px;
      border-radius:14px;
      border:1px solid rgba(17,24,39,.10);
      background:rgba(255,255,255,.70);
      font-weight:750;
      color:rgba(31,41,55,.88);
    }

    .hero{
      padding:26px 0 18px;
    }
    .heroWrap{
      background:
        radial-gradient(900px 340px at 30% 10%, rgba(176,141,87,.18), transparent 55%),
        radial-gradient(700px 260px at 85% 20%, rgba(90,63,31,.14), transparent 58%),
        linear-gradient(180deg, rgba(255,255,255,.70), rgba(255,255,255,.42));
      border:1px solid rgba(176,141,87,.25);
      border-radius:28px;
      box-shadow:var(--shadow);
      overflow:hidden;
      position:relative;
    }
    .heroWrap::before{
      content:"";
      position:absolute;
      inset:-2px;
      background:
        radial-gradient(14px 14px at 18% 28%, rgba(176,141,87,.35), transparent 60%),
        radial-gradient(18px 18px at 72% 22%, rgba(176,141,87,.25), transparent 62%),
        radial-gradient(14px 14px at 86% 68%, rgba(90,63,31,.18), transparent 62%);
      pointer-events:none;
      opacity:.85;
    }
    .heroInner{
      position:relative;
      padding:26px 22px;
      display:grid;
      grid-template-columns: 1.18fr .82fr;
      gap:18px;
      align-items:start;
    }
    .kicker{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:7px 12px;
      border-radius:999px;
      border:1px solid rgba(176,141,87,.30);
      background:rgba(255,255,255,.65);
      box-shadow:0 12px 30px rgba(17,24,39,.05);
      width:max-content;
    }
    .kicker .dot{
      width:10px; height:10px; border-radius:50%;
      background:linear-gradient(180deg, var(--gold2), var(--accent));
      box-shadow:0 10px 24px rgba(176,141,87,.35);
    }
    .kicker span{
      font-weight:850;
      color:rgba(31,41,55,.88);
      font-size:12px;
      letter-spacing:.02em;
    }
    h1{
      margin:14px 0 10px;
      font-size:36px;
      line-height:1.12;
      letter-spacing:-.02em;
      color:var(--ink);
      max-width:18ch;
    }
    .lead{
      color:rgba(31,41,55,.80);
      font-size:15px;
      line-height:1.7;
      margin:0 0 16px;
      max-width:58ch;
    }
    .heroActions{
      display:flex;
      gap:12px;
      flex-wrap:wrap;
      align-items:center;
      margin-top:16px;
    }
    .ghost{
      appearance:none;
      border:1px solid rgba(27,27,31,.14);
      background:rgba(255,255,255,.55);
      color:var(--ink);
      border-radius:14px;
      padding:10px 14px;
      font-weight:850;
      letter-spacing:.02em;
      font-size:13px;
      text-decoration:none;
      display:inline-flex;
      align-items:center;
      gap:10px;
      transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
      white-space:nowrap;
    }
    .ghost:hover{
      transform:translateY(-1px);
      background:rgba(255,255,255,.75);
      box-shadow:0 16px 38px rgba(17,24,39,.10);
    }
    .ghost:focus-visible{outline:none; box-shadow:0 0 0 5px var(--focus), 0 16px 38px rgba(17,24,39,.10);}
    .heroAside{
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .photoCard{
      background:rgba(255,255,255,.65);
      border:1px solid rgba(17,24,39,.10);
      border-radius:20px;
      padding:12px;
      box-shadow:0 16px 38px rgba(17,24,39,.08);
      overflow:hidden;
    }
    .photoRow{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:10px;
    }
    .imgBox{
      border-radius:16px;
      border:1px solid rgba(176,141,87,.22);
      background:rgba(255,255,255,.70);
      overflow:hidden;
      position:relative;
      transition:transform .25s ease, box-shadow .25s ease;
      box-shadow:0 10px 24px rgba(17,24,39,.06);
    }
    .imgBox:hover{
      transform:translateY(-2px);
      box-shadow:0 22px 60px rgba(17,24,39,.12);
    }
    .imgBox img{
      width:100%;
      height:auto;
      display:block;
      object-fit:contain;
      transform:scale(1.02);
      transition:transform .35s ease;
    }
    .imgBox:hover img{transform:scale(1.05)}
    .imgCap{
      margin-top:10px;
      display:flex;
      gap:10px;
      align-items:flex-start;
      padding:10px 10px 2px;
    }
    .imgCap svg{flex:0 0 auto; margin-top:2px}
    .imgCap p{
      margin:0;
      color:rgba(31,41,55,.80);
      font-size:12.5px;
      line-height:1.6;
    }

    main{padding:10px 0 28px}
    .section{
      margin-top:16px;
    }
    .grid2{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
      align-items:start;
    }
    .card{
      background:rgba(255,255,255,.68);
      border:1px solid rgba(17,24,39,.10);
      border-radius:20px;
      box-shadow:0 16px 38px rgba(17,24,39,.06);
      overflow:hidden;
      position:relative;
    }
    .cardInner{padding:16px}
    .cardTitle{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin-bottom:10px;
    }
    .cardTitle h2{
      margin:0;
      font-size:16px;
      letter-spacing:-.01em;
      color:var(--ink);
    }
    .badge{
      border:1px solid rgba(176,141,87,.35);
      background:rgba(255,255,255,.62);
      border-radius:999px;
      padding:7px 10px;
      font-weight:850;
      color:var(--accent2);
      font-size:12px;
      white-space:nowrap;
    }
    .toc{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:4px;
    }
    .toc a{
      text-decoration:none;
      border-radius:999px;
      border:1px solid rgba(17,24,39,.12);
      background:rgba(255,255,255,.62);
      padding:9px 12px;
      font-weight:800;
      font-size:13px;
      color:rgba(31,41,55,.88);
      transition:transform .2s ease, background .2s ease, border-color .2s ease;
    }
    .toc a:hover{
      transform:translateY(-1px);
      background:rgba(255,255,255,.80);
      border-color:rgba(176,141,87,.45);
    }

    .steps{
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .step{
      display:flex;
      gap:12px;
      padding:12px;
      border-radius:16px;
      border:1px solid rgba(17,24,39,.10);
      background:rgba(255,255,255,.56);
      transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
    }
    .step:hover{
      transform:translateY(-1px);
      background:rgba(255,255,255,.78);
      box-shadow:0 16px 38px rgba(17,24,39,.08);
    }
    .num{
      width:34px; height:34px;
      border-radius:12px;
      background:linear-gradient(180deg, rgba(176,141,87,.95), rgba(90,63,31,.95));
      color:#fff;
      display:flex;
      align-items:center;
      justify-content:center;
      font-weight:900;
      flex:0 0 auto;
      box-shadow:0 12px 30px rgba(176,141,87,.25);
      border:1px solid rgba(255,255,255,.35);
    }
    .step h3{
      margin:0;
      font-size:14px;
      color:var(--ink);
      letter-spacing:-.01em;
    }
    .step p{
      margin:6px 0 0;
      color:rgba(31,41,55,.78);
      font-size:13px;
      line-height:1.6;
    }

    .solutionGrid{
      display:grid;
      grid-template-columns: 1fr;
      gap:12px;
    }
    .listCard{
      border-radius:20px;
      border:1px solid rgba(17,24,39,.10);
      background:rgba(255,255,255,.62);
      overflow:hidden;
    }
    .listCard header{
      position:static;
      background:transparent;
      backdrop-filter:none;
      border-bottom:1px solid rgba(17,24,39,.10);
    }
    .listHead{
      padding:14px 16px 12px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
    }
    .listHead h2{
      margin:0;
      font-size:16px;
      letter-spacing:-.01em;
      color:var(--ink);
    }
    .listBody{padding:10px 12px 14px}
    .ul{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap:10px;
    }
    .li{
      display:flex;
      gap:12px;
      align-items:flex-start;
      padding:12px;
      border-radius:16px;
      border:1px solid rgba(17,24,39,.10);
      background:rgba(255,255,255,.56);
      transition:transform .2s ease, background .2s ease;
    }
    .li:hover{
      transform:translateY(-1px);
      background:rgba(255,255,255,.78);
    }
    .tick{
      width:26px; height:26px;
      border-radius:10px;
      border:1px solid rgba(176,141,87,.35);
      background:rgba(176,141,87,.12);
      display:flex;
      align-items:center;
      justify-content:center;
      flex:0 0 auto;
      margin-top:2px;
    }
    .li b{
      display:block;
      font-size:13.5px;
      color:var(--ink);
      margin-bottom:4px;
    }
    .li span{
      display:block;
      color:rgba(31,41,55,.78);
      font-size:13px;
      line-height:1.6;
    }

    .split{
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      gap:14px;
      align-items:start;
    }
    .quoteCard{
      padding:16px;
    }
    .quote{
      margin:0;
      color:rgba(31,41,55,.86);
      font-size:14px;
      line-height:1.8;
    }
    .quote strong{
      color:var(--ink);
      font-weight:900;
    }

    .faq{
      padding:0;
    }
    details{
      border-top:1px solid rgba(17,24,39,.10);
      padding:0;
    }
    details:first-child{border-top:none}
    summary{
      list-style:none;
      cursor:pointer;
      padding:14px 16px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      font-weight:900;
      color:rgba(31,41,55,.92);
      font-size:14px;
    }
    summary::-webkit-details-marker{display:none}
    .chev{
      width:34px; height:34px;
      border-radius:14px;
      border:1px solid rgba(17,24,39,.12);
      background:rgba(255,255,255,.55);
      display:flex;
      align-items:center;
      justify-content:center;
      transition:transform .2s ease, background .2s ease;
      flex:0 0 auto;
    }
    details[open] summary .chev{
      transform:rotate(180deg);
      background:rgba(176,141,87,.14);
      border-color:rgba(176,141,87,.35);
    }
    .faqBody{
      padding:0 16px 14px;
      color:rgba(31,41,55,.80);
      line-height:1.75;
      font-size:13.5px;
    }
    .innerLink{
      color:var(--accent2);
      font-weight:900;
      text-decoration:none;
      border-bottom:1px solid rgba(176,141,87,.35);
    }
    .innerLink:hover{border-bottom-color:rgba(176,141,87,.7)}

    .contactGrid{
      display:grid;
      grid-template-columns: .95fr 1.05fr;
      gap:14px;
      align-items:start;
    }
    .contactCard .cardInner{padding:16px}
    .kv{
      display:grid;
      grid-template-columns: 1fr;
      gap:10px;
      margin-top:12px;
    }
    .kvRow{
      display:flex;
      gap:10px;
      align-items:flex-start;
      padding:12px;
      border-radius:16px;
      border:1px solid rgba(17,24,39,.10);
      background:rgba(255,255,255,.56);
    }
    .kvRow svg{flex:0 0 auto; margin-top:2px}
    .kvRow b{
      display:block;
      font-size:13px;
      color:var(--ink);
      margin-bottom:4px;
    }
    .kvRow span{
      display:block;
      color:rgba(31,41,55,.78);
      font-size:13px;
      line-height:1.6;
    }
    .qrWrap{
      display:grid;
      grid-template-columns: 120px 1fr;
      gap:14px;
      align-items:start;
      padding:14px;
      border-radius:20px;
      border:1px solid rgba(17,24,39,.10);
      background:rgba(255,255,255,.60);
      box-shadow:0 16px 38px rgba(17,24,39,.06);
    }
    .qr{
      width:120px; height:120px;
      border-radius:18px;
      background:#fff;
      border:1px solid rgba(17,24,39,.10);
      overflow:hidden;
      display:flex;
      align-items:center;
      justify-content:center;
      padding:6px;
    }
    .qr img{
      width:100%;
      height:auto;
      display:block;
      object-fit:contain;
    }
    .qrMeta b{
      display:block;
      font-size:14px;
      color:var(--ink);
      margin-bottom:8px;
    }
    .qrMeta p{
      margin:0 0 10px;
      color:rgba(31,41,55,.80);
      font-size:13.5px;
      line-height:1.7;
    }

    footer{
      background:rgba(255,255,255,.55);
      border-top:1px solid rgba(17,24,39,.10);
      margin-top:14px;
    }
    .footerInner{
      padding:18px 0 22px;
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:16px;
    }
    .footLeft{
      max-width:62ch;
    }
    .footLeft b{
      display:block;
      font-size:14px;
      color:var(--ink);
      margin-bottom:6px;
    }
    .footLeft p{
      margin:0;
      color:rgba(31,41,55,.75);
      font-size:13px;
      line-height:1.7;
    }
    .footLinks{
      display:flex;
      flex-direction:column;
      gap:10px;
      align-items:flex-end;
      min-width:240px;
    }
    .footLinks a{
      text-decoration:none;
      font-weight:900;
      color:rgba(31,41,55,.88);
      font-size:13px;
      padding:10px 12px;
      border:1px solid rgba(17,24,39,.10);
      background:rgba(255,255,255,.62);
      border-radius:14px;
      transition:transform .2s ease, background .2s ease;
      white-space:nowrap;
    }
    .footLinks a:hover{
      transform:translateY(-1px);
      background:rgba(255,255,255,.80);
    }
    .copyright{
      margin-top:12px;
      color:rgba(31,41,55,.65);
      font-size:12.5px;
      text-align:center;
      padding-bottom:10px;
    }

    .reveal{
      opacity:0;
      transform:translateY(10px);
      transition:opacity .55s ease, transform .55s ease;
    }
    .reveal.show{
      opacity:1;
      transform:translateY(0);
    }

    @media (max-width: 980px){
      .heroInner{grid-template-columns: 1fr; gap:14px}
      h1{font-size:30px; max-width:22ch}
      .navLinks{display:none}
      .mobileToggle{display:inline-flex; align-items:center; justify-content:center}
      .mobilePanel{display:block}
      .navRight{min-width:auto}
      .pill{display:none}
      .grid2{grid-template-columns:1fr}
      .split{grid-template-columns:1fr}
      .contactGrid{grid-template-columns:1fr}
      .qrWrap{grid-template-columns: 104px 1fr}
      .qr{width:104px; height:104px}
      .footerInner{flex-direction:column}
      .footLinks{align-items:stretch; min-width:auto}
      .footLinks a{width:100%; text-align:center}
    }
    @media (prefers-reduced-motion: reduce){
      .reveal{transition:none}
      .imgBox, .step, .li, .btn, .ghost, .pill{transition:none}
    }