:root{
      --bg:#f6f1e8;
      --surface:#fffdf9;
      --surface-2:#f3ece2;
      --text:#2f2a24;
      --muted:#6f665c;
      --line:#e4d8ca;
      --accent:#8a5d3b;
      --accent-2:#b07a4f;
      --shadow:0 18px 40px rgba(60, 42, 22, .08);
      --radius:22px;
      --container:1120px;
    }
    *{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",Arial,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at top left, rgba(176,122,79,.12), transparent 28%),
        radial-gradient(circle at top right, rgba(138,93,59,.08), transparent 24%),
        linear-gradient(180deg, #faf7f2 0%, #f5efe6 100%);
      line-height:1.7;
    }
    a{color:var(--accent); text-decoration:none}
    a:hover{color:var(--accent-2)}
    .container{
      width:min(var(--container), calc(100% - 32px));
      margin:0 auto;
    }
    header{
      position:sticky;
      top:0;
      z-index:20;
      backdrop-filter:saturate(140%) blur(10px);
      background:rgba(250,247,242,.84);
      border-bottom:1px solid rgba(228,216,202,.8);
    }
    .nav{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      padding:16px 0;
    }
    .brand{
      display:flex;
      align-items:center;
      gap:12px;
      min-width:0;
    }
    .mark{
      width:38px;
      height:38px;
      border-radius:14px;
      background:linear-gradient(135deg, var(--accent), #c08b5e);
      box-shadow:0 10px 24px rgba(138,93,59,.18);
      flex:0 0 auto;
    }
    .brand strong{
      display:block;
      font-size:1rem;
      letter-spacing:.02em;
    }
    .brand span{
      display:block;
      color:var(--muted);
      font-size:.88rem;
    }
    nav ul{
      list-style:none;
      display:flex;
      align-items:center;
      gap:18px;
      margin:0;
      padding:0;
      flex-wrap:wrap;
      justify-content:flex-end;
    }
    nav a{
      color:var(--text);
      font-size:.95rem;
      padding:8px 10px;
      border-radius:999px;
      transition:background .2s ease, transform .2s ease;
    }
    nav a:hover{background:rgba(176,122,79,.09); transform:translateY(-1px)}
    .hero{
      padding:42px 0 22px;
    }
    .hero-grid{
      display:grid;
      grid-template-columns:1.35fr .95fr;
      gap:22px;
      align-items:stretch;
    }
    .panel{
      background:rgba(255,253,249,.9);
      border:1px solid rgba(228,216,202,.92);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
    }
    .hero-main{
      padding:34px;
      position:relative;
      overflow:hidden;
    }
    .hero-main::after{
      content:"";
      position:absolute;
      right:-48px;
      top:-48px;
      width:180px;
      height:180px;
      border-radius:50%;
      background:radial-gradient(circle, rgba(176,122,79,.15), transparent 68%);
      pointer-events:none;
    }
    h1{
      margin:0 0 14px;
      font-size:clamp(2rem, 4vw, 3.4rem);
      line-height:1.15;
      letter-spacing:-.03em;
    }
    .lead{
      margin:0 0 24px;
      color:var(--muted);
      font-size:1.03rem;
      max-width:42rem;
    }
    .hero-tags{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin:0;
      padding:0;
      list-style:none;
    }
    .hero-tags li{
      padding:9px 12px;
      border-radius:999px;
      background:var(--surface-2);
      border:1px solid var(--line);
      color:#574d42;
      font-size:.92rem;
    }
    .hero-side{
      padding:24px;
      display:grid;
      gap:14px;
      align-content:start;
    }
    .info-card{
      background:#fff;
      border:1px solid var(--line);
      border-radius:18px;
      padding:18px;
    }
    .info-card h2{
      margin:0 0 10px;
      font-size:1.08rem;
    }
    .info-card p{
      margin:0;
      color:var(--muted);
      font-size:.96rem;
    }
    main{padding:10px 0 6px}
    section.block{
      padding:18px 0;
    }
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:18px;
      margin-bottom:16px;
    }
    .section-head h2{
      margin:0;
      font-size:1.4rem;
    }
    .section-head p{
      margin:0;
      color:var(--muted);
      max-width:46rem;
      font-size:.96rem;
    }
    .grid-3{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:16px;
    }
    .card{
      background:rgba(255,253,249,.96);
      border:1px solid rgba(228,216,202,.95);
      border-radius:20px;
      padding:22px;
      box-shadow:0 10px 30px rgba(60,42,22,.04);
      transition:transform .22s ease, box-shadow .22s ease;
    }
    .card:hover{
      transform:translateY(-2px);
      box-shadow:0 16px 38px rgba(60,42,22,.08);
    }
    .card h3{
      margin:0 0 10px;
      font-size:1.08rem;
    }
    .card p, .card li{
      color:var(--muted);
      font-size:.96rem;
    }
    .card ul{
      margin:0;
      padding-left:18px;
    }
    .split{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:16px;
    }
    .steps{
      display:grid;
      gap:12px;
      margin:0;
      padding:0;
      list-style:none;
    }
    .steps li{
      display:grid;
      grid-template-columns:auto 1fr;
      gap:12px;
      align-items:start;
      padding:14px 16px;
      border-radius:16px;
      background:#fff;
      border:1px solid var(--line);
    }
    .num{
      width:28px;
      height:28px;
      display:grid;
      place-items:center;
      border-radius:999px;
      background:rgba(176,122,79,.12);
      color:var(--accent);
      font-weight:700;
      flex:0 0 auto;
    }
    .faq{
      display:grid;
      gap:12px;
    }
    details{
      background:#fff;
      border:1px solid var(--line);
      border-radius:18px;
      padding:16px 18px;
    }
    summary{
      cursor:pointer;
      font-weight:600;
      color:var(--text);
      list-style:none;
    }
    summary::-webkit-details-marker{display:none}
    details p{
      margin:10px 0 0;
      color:var(--muted);
    }
    .related-pages{
      padding:22px 0 34px;
    }
    .related-box{
      background:rgba(255,253,249,.98);
      border:1px solid rgba(228,216,202,.95);
      border-radius:24px;
      padding:22px;
      box-shadow:var(--shadow);
    }
    .related-box h2{
      margin:0 0 14px;
      font-size:1.24rem;
    }
    .related-grid{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:10px 14px;
      list-style:none;
      padding:0;
      margin:0;
    }
    .related-grid a{
      display:block;
      padding:12px 14px;
      border-radius:14px;
      background:#fff;
      border:1px solid var(--line);
      color:var(--text);
      transition:background .2s ease, border-color .2s ease, transform .2s ease;
    }
    .related-grid a:hover{
      background:rgba(176,122,79,.08);
      border-color:#d8c0aa;
      transform:translateY(-1px);
    }
    footer{
      background:#f1e8dc;
      color:#4d443b;
      border-top:1px solid rgba(228,216,202,.95);
      padding:18px 0;
    }
    footer p{
      margin:0;
      font-size:.92rem;
    }
    @media (max-width: 920px){
      .hero-grid, .grid-3, .split, .related-grid{
        grid-template-columns:1fr;
      }
      nav ul{gap:6px}
      .hero-main{padding:26px}
      .section-head{flex-direction:column; align-items:flex-start}
    }
    @media (max-width: 640px){
      .container{width:min(var(--container), calc(100% - 24px))}
      .nav{padding:12px 0}
      .brand span{display:none}
      nav a{padding:7px 9px}
      .hero{padding-top:26px}
      .hero-main{padding:22px}
      .card, .related-box, .info-card{padding:18px}
    }