:root{
      --bg0:#fff7ee;
      --bg1:#fff;
      --ink:#1f2428;
      --muted:#5b636b;
      --card:#ffffffcc;
      --card2:#fff;
      --border:rgba(31,36,40,.12);
      --shadow:0 10px 30px rgba(33,24,15,.08);
      --shadow2:0 8px 18px rgba(33,24,15,.10);
      --accent:#c55a2b;
      --accent2:#f59a3a;
      --accent3:#2f6fb3;
      --focus:rgba(197,90,43,.25);
      --radius:18px;
      --radius2:14px;
      --container:1100px;
    }
    *{box-sizing:border-box}
    html,body{height:100%}
    body{
      margin:0;
      color:var(--ink);
      background:
        radial-gradient(1200px 700px at 20% -10%, rgba(245,154,58,.35), transparent 60%),
        radial-gradient(900px 520px at 90% 0%, rgba(197,90,43,.28), transparent 55%),
        linear-gradient(180deg, var(--bg0), var(--bg1) 35%, #fff 100%);
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC","Hiragino Sans GB","Microsoft YaHei", Arial, "Noto Sans", sans-serif;
      line-height:1.65;
      overflow-x:hidden;
    }
    a{color:inherit}
    .container{
      width:100%;
      max-width:var(--container);
      margin:0 auto;
      padding:0 18px;
    }

    .skip{
      position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden;
    }
    .skip:focus{
      left:16px; top:16px; width:auto; height:auto; padding:10px 12px;
      background:#111; color:#fff; border-radius:10px; z-index:9999;
    }

    header{
      position:sticky; top:0; z-index:30;
      background:rgba(255,247,238,.68);
      backdrop-filter:saturate(160%) blur(10px);
      border-bottom:1px solid rgba(31,36,40,.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:92px;
    }
    .logoMark{
      width:38px; height:38px; border-radius:12px;
      background:linear-gradient(135deg, rgba(197,90,43,.95), rgba(245,154,58,.9));
      box-shadow:0 10px 22px rgba(197,90,43,.25);
      display:grid; place-items:center;
      color:#fff; font-weight:900; letter-spacing:.5px;
    }
    .brandName{
      font-weight:900; letter-spacing:.2px;
      color:#1f2428; font-size:16px;
    }
    .brandSub{
      display:none;
      color:var(--muted); font-size:12px; margin-top:2px;
    }
    .navRight{
      display:flex; align-items:center; justify-content:flex-end; gap:10px;
    }
    .menuBtn{
      display:inline-flex; align-items:center; justify-content:center;
      width:42px; height:42px; border-radius:14px;
      border:1px solid rgba(31,36,40,.14);
      background:rgba(255,255,255,.7);
      cursor:pointer;
      transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
    }
    .menuBtn:active{transform:scale(.98)}
    .menuBtn:focus{outline:none; box-shadow:0 0 0 4px var(--focus)}
    .hamburger{
      width:18px; height:12px; position:relative;
    }
    .hamburger span{
      position:absolute; left:0; right:0; height:2px; border-radius:2px;
      background:#2a2f35;
      transition:transform .2s ease, top .2s ease, opacity .2s ease;
    }
    .hamburger span:nth-child(1){top:0}
    .hamburger span:nth-child(2){top:5px}
    .hamburger span:nth-child(3){top:10px}
    .menuOpen .hamburger span:nth-child(1){top:5px; transform:rotate(45deg)}
    .menuOpen .hamburger span:nth-child(2){opacity:0}
    .menuOpen .hamburger span:nth-child(3){top:5px; transform:rotate(-45deg)}

    .navLinks{
      display:none;
      align-items:center; gap:16px;
      padding:10px 0;
    }
    .navLinks a{
      text-decoration:none;
      color:#2a2f35;
      font-weight:650;
      font-size:14px;
      position:relative;
      padding:8px 0;
      white-space:nowrap;
    }
    .navLinks a::after{
      content:""; position:absolute; left:0; right:0; bottom:2px;
      height:2px; background:linear-gradient(90deg, var(--accent), var(--accent2));
      transform:scaleX(0); transform-origin:left; transition:transform .18s ease;
      border-radius:2px;
    }
    .navLinks a:hover::after{transform:scaleX(1)}

    .ctaTop{
      display:none;
      text-decoration:none;
      border-radius:14px;
      padding:10px 14px;
      font-weight:800;
      font-size:14px;
      background:linear-gradient(135deg, rgba(197,90,43,.95), rgba(245,154,58,.92));
      color:#fff;
      border:1px solid rgba(0,0,0,.06);
      box-shadow:0 14px 26px rgba(197,90,43,.18);
      transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
    }
    .ctaTop:hover{filter:saturate(1.05)}
    .ctaTop:active{transform:scale(.99)}
    .ctaTop:focus{outline:none; box-shadow:0 0 0 4px var(--focus), 0 14px 26px rgba(197,90,43,.18)}
    .mobileDrawer{
      display:block;
      overflow:hidden;
      max-height:0;
      transition:max-height .25s ease;
    }
    .mobileDrawerInner{
      padding:0 0 12px 0;
    }
    .mobileDrawer.open{max-height:300px}
    .drawerLinks{
      display:flex; flex-direction:column; gap:10px;
      padding:12px 0;
      border-top:1px solid rgba(31,36,40,.08);
    }
    .drawerLinks a{
      text-decoration:none;
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      padding:12px 12px;
      border-radius:14px;
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.72);
      font-weight:750;
    }
    .drawerLinks a small{color:var(--muted); font-weight:650}
    .chev{
      width:8px; height:8px; border-right:2px solid rgba(31,36,40,.6); border-top:2px solid rgba(31,36,40,.6);
      transform:rotate(45deg);
      margin-right:4px;
      opacity:.8;
    }

    main{padding:18px 0 10px}
    .hero{
      position:relative;
      border-radius:calc(var(--radius) + 6px);
      border:1px solid rgba(31,36,40,.08);
      background:
        radial-gradient(700px 320px at 18% 20%, rgba(245,154,58,.28), transparent 60%),
        radial-gradient(620px 280px at 78% 30%, rgba(197,90,43,.22), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.52));
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .hero::before{
      content:"";
      position:absolute; inset:-1px;
      background:
        radial-gradient(600px 240px at 10% 10%, rgba(245,154,58,.28), transparent 60%),
        radial-gradient(520px 240px at 95% 0%, rgba(197,90,43,.24), transparent 55%),
        linear-gradient(135deg, rgba(245,154,58,.10), rgba(197,90,43,.06));
      pointer-events:none;
      opacity:.9;
    }
    .heroGrid{
      position:relative;
      display:grid;
      grid-template-columns:1fr;
      gap:14px;
      padding:18px;
      align-items:start;
    }
    .kicker{
      display:flex; align-items:center; gap:10px;
      flex-wrap:wrap;
    }
    .pill{
      display:inline-flex; align-items:center; gap:8px;
      padding:8px 12px;
      border-radius:999px;
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.62);
      font-weight:800;
      font-size:13px;
      color:#2a2f35;
    }
    .dot{
      width:9px; height:9px; border-radius:50%;
      background:linear-gradient(135deg, var(--accent), var(--accent2));
      box-shadow:0 8px 16px rgba(197,90,43,.25);
    }
    .hero h1{
      margin:10px 0 8px;
      font-size:26px;
      letter-spacing:.2px;
      line-height:1.28;
    }
    .heroIntro{
      margin:0;
      color:var(--muted);
      font-size:15px;
      max-width:62ch;
    }
    .heroActions{
      display:flex; flex-wrap:wrap; gap:10px; align-items:center;
      margin-top:14px;
    }
    .btn{
      appearance:none;
      border:none;
      cursor:pointer;
      text-decoration:none;
      display:inline-flex; align-items:center; justify-content:center;
      gap:10px;
      padding:12px 14px;
      border-radius:14px;
      font-weight:900;
      font-size:14px;
      transition:transform .15s ease, box-shadow .15s ease, filter .15s ease, border-color .15s ease;
      user-select:none;
      white-space:nowrap;
    }
    .btn:focus{outline:none; box-shadow:0 0 0 4px var(--focus)}
    .btn:active{transform:scale(.99)}
    .btnPrimary{
      color:#fff;
      background:linear-gradient(135deg, rgba(47,111,179,.95), rgba(197,90,43,.95));
      box-shadow:0 18px 30px rgba(47,111,179,.16);
      border:1px solid rgba(0,0,0,.05);
    }
    .btnPrimary:hover{filter:saturate(1.04)}
    .btnGhost{
      color:#1f2428;
      background:rgba(255,255,255,.65);
      border:1px solid rgba(31,36,40,.14);
    }
    .btnGhost:hover{border-color:rgba(31,36,40,.22)}
    .iconArrow{
      width:14px; height:14px; border-right:2px solid currentColor; border-top:2px solid currentColor;
      transform:rotate(45deg);
      opacity:.9;
    }
    .heroAside{
      display:flex; flex-direction:column; gap:12px;
    }
    .asideCard{
      border-radius:var(--radius);
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.62);
      padding:14px;
      box-shadow:0 10px 22px rgba(33,24,15,.06);
    }
    .asideTitle{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      margin-bottom:8px;
    }
    .asideTitle strong{font-size:14px}
    .badge{
      font-size:12px; font-weight:900;
      padding:6px 10px;
      border-radius:999px;
      background:rgba(197,90,43,.12);
      border:1px solid rgba(197,90,43,.18);
      color:#8a3f22;
      white-space:nowrap;
    }
    .asideList{
      margin:0; padding:0;
      list-style:none;
      display:flex; flex-direction:column; gap:10px;
    }
    .asideItem{
      display:flex; gap:10px; align-items:flex-start;
      color:#2a2f35;
    }
    .check{
      width:18px; height:18px; border-radius:6px;
      background:rgba(245,154,58,.18);
      border:1px solid rgba(245,154,58,.35);
      display:grid; place-items:center;
      flex:0 0 auto;
      margin-top:2px;
    }
    .check svg{display:block}
    .asideItem span{
      color:var(--muted);
      font-size:13.5px;
      font-weight:650;
    }

    .section{
      margin-top:14px;
    }
    .grid2{
      display:grid; grid-template-columns:1fr;
      gap:14px;
    }
    .card{
      border-radius:var(--radius);
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.68);
      box-shadow:0 10px 22px rgba(33,24,15,.05);
      overflow:hidden;
    }
    .cardInner{padding:16px}
    .cardTitle{
      display:flex; align-items:center; gap:10px;
      margin:0 0 10px;
      font-size:15px;
      letter-spacing:.2px;
    }
    .cardTitle .tag{
      width:34px; height:34px; border-radius:12px;
      background:linear-gradient(135deg, rgba(245,154,58,.22), rgba(197,90,43,.14));
      border:1px solid rgba(31,36,40,.10);
      display:grid; place-items:center;
      font-weight:950;
      color:#8a3f22;
      box-shadow:0 12px 24px rgba(197,90,43,.08);
    }
    .muted{color:var(--muted)}
    .toc{
      display:flex; flex-direction:column; gap:10px;
    }
    .toc a{
      text-decoration:none;
      display:flex; align-items:flex-start; justify-content:space-between; gap:10px;
      padding:12px 12px;
      border-radius:14px;
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.72);
      transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
    }
    .toc a:hover{
      transform:translateY(-1px);
      box-shadow:var(--shadow2);
      border-color:rgba(31,36,40,.18);
    }
    .tocLeft{
      display:flex; flex-direction:column; gap:4px;
    }
    .tocLeft strong{font-size:14px}
    .tocLeft small{color:var(--muted); font-weight:650; font-size:12.5px}
    .tocRight{
      display:flex; align-items:center; gap:8px;
      color:#8a3f22; font-weight:950;
      flex:0 0 auto;
    }
    .tocRight .num{
      width:30px; height:30px; border-radius:12px;
      display:grid; place-items:center;
      border:1px solid rgba(197,90,43,.20);
      background:rgba(197,90,43,.10);
      font-size:12px;
    }

    .contentBlocks{
      display:flex; flex-direction:column; gap:14px;
    }

    .steps{
      display:grid; grid-template-columns:1fr; gap:12px;
    }
    .step{
      border-radius:var(--radius);
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.68);
      padding:14px;
      position:relative;
      overflow:hidden;
    }
    .step::after{
      content:"";
      position:absolute; inset:auto -40px -55px auto;
      width:160px; height:160px; border-radius:50%;
      background:radial-gradient(circle at 30% 30%, rgba(245,154,58,.28), transparent 60%);
      opacity:.55;
      pointer-events:none;
    }
    .stepHead{
      display:flex; align-items:flex-start; justify-content:space-between; gap:10px;
      margin-bottom:8px;
      position:relative;
    }
    .stepHead strong{font-size:15px}
    .stepNum{
      width:42px; height:42px; border-radius:16px;
      background:linear-gradient(135deg, rgba(197,90,43,.16), rgba(245,154,58,.20));
      border:1px solid rgba(197,90,43,.22);
      display:grid; place-items:center;
      font-weight:1000; color:#8a3f22;
      flex:0 0 auto;
    }
    .step p{
      margin:0;
      color:var(--muted);
      font-weight:600;
      font-size:14px;
      position:relative;
    }
    .step ul{
      margin:10px 0 0; padding:0 0 0 18px;
      color:var(--muted);
      font-weight:650;
      font-size:13.5px;
      position:relative;
    }
    .step li{margin:6px 0}

    .faqGrid{
      display:grid; grid-template-columns:1fr;
      gap:10px;
    }
    details{
      border-radius:16px;
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.66);
      padding:0;
      overflow:hidden;
    }
    summary{
      cursor:pointer;
      list-style:none;
      padding:14px 14px;
      display:flex; align-items:flex-start; justify-content:space-between; gap:12px;
      font-weight:950;
      font-size:14px;
      position:relative;
    }
    summary::-webkit-details-marker{display:none}
    .sumIcon{
      width:28px; height:28px; border-radius:12px;
      border:1px solid rgba(31,36,40,.12);
      background:rgba(245,154,58,.10);
      display:grid; place-items:center;
      color:#8a3f22;
      flex:0 0 auto;
      margin-top:2px;
    }
    details[open] summary .sumIcon{
      background:rgba(197,90,43,.14);
      border-color:rgba(197,90,43,.22);
    }
    .faqBody{
      padding:0 14px 14px;
      color:var(--muted);
      font-weight:650;
      font-size:14px;
    }
    .faqBody p{margin:10px 0 0}
    .callout{
      display:flex; gap:12px; align-items:flex-start;
      border-radius:var(--radius);
      border:1px solid rgba(31,36,40,.10);
      background:linear-gradient(180deg, rgba(255,255,255,.70), rgba(255,255,255,.52));
      padding:14px;
      overflow:hidden;
      position:relative;
    }
    .callout::before{
      content:"";
      position:absolute; inset:-2px -2px auto auto;
      width:220px; height:140px;
      background:radial-gradient(circle at 20% 30%, rgba(47,111,179,.22), transparent 60%);
      opacity:.75;
      pointer-events:none;
    }
    .calloutIcon{
      width:44px; height:44px; border-radius:18px;
      background:rgba(47,111,179,.10);
      border:1px solid rgba(47,111,179,.18);
      display:grid; place-items:center;
      color:#245c96;
      flex:0 0 auto;
      position:relative;
    }
    .callout h2{
      margin:0;
      font-size:15px;
      letter-spacing:.2px;
      position:relative;
    }
    .callout p{
      margin:6px 0 0;
      color:var(--muted);
      font-weight:650;
      font-size:14px;
      position:relative;
    }

    .inlineLinks{
      display:flex; flex-wrap:wrap; gap:10px;
      margin-top:10px;
    }
    .linkChip{
      text-decoration:none;
      padding:10px 12px;
      border-radius:14px;
      border:1px solid rgba(31,36,40,.12);
      background:rgba(255,255,255,.68);
      font-weight:900;
      font-size:13.5px;
      transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
      display:inline-flex; align-items:center; gap:10px;
      color:#1f2428;
      max-width:100%;
    }
    .linkChip:hover{
      transform:translateY(-1px);
      box-shadow:var(--shadow2);
      border-color:rgba(31,36,40,.2);
    }
    .linkChip .mini{
      width:28px; height:28px; border-radius:12px;
      background:rgba(197,90,43,.10);
      border:1px solid rgba(197,90,43,.20);
      color:#8a3f22;
      display:grid; place-items:center;
      font-weight:1000;
      flex:0 0 auto;
    }

    .imageStrip{
      padding:14px 16px 16px;
      display:flex;
      flex-direction:column;
      gap:12px;
    }
    .imgRow{
      display:grid; grid-template-columns:1fr; gap:12px;
    }
    .imgCard{
      border-radius:16px;
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.7);
      padding:10px;
      overflow:hidden;
      position:relative;
    }
    .imgCard img{
      width:100%;
      display:block;
      height:auto;
      border-radius:12px;
      object-fit:contain;
      transform:translateZ(0);
    }
    .imgCaption{
      margin:10px 4px 0;
      color:var(--muted);
      font-weight:650;
      font-size:13.5px;
      display:flex; align-items:flex-start; gap:8px;
    }
    .captionDot{
      width:10px; height:10px; border-radius:50%;
      background:linear-gradient(135deg, var(--accent), var(--accent2));
      margin-top:5px;
      flex:0 0 auto;
    }

    footer{
      margin-top:14px;
      background:linear-gradient(180deg, rgba(31,36,40,.04), rgba(31,36,40,.02));
      border-top:1px solid rgba(31,36,40,.08);
    }
    .footerInner{
      padding:18px 0 10px;
    }
    .footerGrid{
      display:grid; grid-template-columns:1fr; gap:14px;
      align-items:start;
    }
    .footCard{
      border-radius:var(--radius);
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.68);
      box-shadow:0 10px 22px rgba(33,24,15,.05);
      overflow:hidden;
    }
    .footCard .cardInner{padding:16px}
    .footTitle{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      margin-bottom:10px;
    }
    .footTitle strong{font-size:15px}
    .hours{
      font-weight:950;
      font-size:12.5px;
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(31,36,40,.12);
      background:rgba(245,154,58,.10);
      color:#7a3a1f;
      white-space:nowrap;
    }
    .infoList{
      margin:0; padding:0; list-style:none;
      display:flex; flex-direction:column; gap:10px;
    }
    .infoList li{
      display:flex; gap:10px; align-items:flex-start;
      color:var(--muted);
      font-weight:650;
      font-size:14px;
    }
    .infoIcon{
      width:28px; height:28px; border-radius:12px;
      border:1px solid rgba(31,36,40,.12);
      background:rgba(255,255,255,.72);
      display:grid; place-items:center;
      color:#8a3f22;
      flex:0 0 auto;
      margin-top:2px;
    }
    .qrRow{
      display:grid; grid-template-columns:1fr 1fr; gap:12px;
      align-items:start;
      margin-top:10px;
    }
    .qrBox{
      border-radius:16px;
      border:1px solid rgba(31,36,40,.10);
      background:rgba(255,255,255,.72);
      padding:12px;
    }
    .qrBox .qrLabel{
      font-weight:950;
      font-size:13.5px;
      margin-bottom:8px;
      color:#2a2f35;
    }
    .qrBox img{
      width:100%;
      height:auto;
      display:block;
      border-radius:12px;
      object-fit:contain;
    }

    .footLinksRow{
      display:flex; flex-wrap:wrap; gap:10px;
    }
    .smallLink{
      text-decoration:none;
      border-radius:14px;
      padding:10px 12px;
      border:1px solid rgba(31,36,40,.12);
      background:rgba(255,255,255,.68);
      font-weight:900;
      font-size:13.5px;
      color:#1f2428;
      transition:transform .15s ease, box-shadow .15s ease;
    }
    .smallLink:hover{transform:translateY(-1px); box-shadow:var(--shadow2)}
    .copyright{
      padding:12px 0 16px;
      color:rgba(31,36,40,.72);
      font-weight:650;
      font-size:12.5px;
      text-align:center;
    }

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

    @media (min-width: 860px){
      .brandSub{display:block}
      .heroGrid{
        grid-template-columns: 1.35fr .85fr;
        padding:22px;
        gap:18px;
      }
      .hero h1{font-size:32px}
      main{padding:22px 0 10px}
      .grid2{grid-template-columns: .95fr 1.05fr}
      .steps{grid-template-columns:1fr 1fr; }
      .faqGrid{grid-template-columns:1fr 1fr}
      .imgRow{grid-template-columns:1fr 1fr 1fr}
      .footerGrid{grid-template-columns:1.1fr .9fr}
      .ctaTop{display:inline-flex}
      .navLinks{display:flex}
      .mobileDrawer{display:none}
      .navRight .menuBtn{display:none}
    }

    @media (prefers-reduced-motion: reduce){
      *{scroll-behavior:auto !important}
      .reveal{transition:none}
    }