/* roulang page: index */
:root{
      --bg: #FFF8EE;
      --bg-soft: #FAF3E7;
      --panel: rgba(255,255,255,.88);
      --panel-strong: #FFFFFF;
      --text: #1F2933;
      --muted: #6B7280;
      --line: #F1E3D1;
      --line-strong: #E8D8C3;
      --brand: #F59E0B;
      --brand-2: #F97316;
      --accent: #FB7185;
      --shadow: 0 18px 50px rgba(120, 72, 24, .08);
      --shadow-strong: 0 24px 60px rgba(120, 72, 24, .14);
      --radius-xl: 28px;
      --radius-lg: 22px;
      --radius-md: 16px;
      --container: 1180px;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      font-family: "PingFang SC","Microsoft YaHei","Noto Sans SC",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color: var(--text);
      background:
        radial-gradient(circle at 15% 10%, rgba(245, 158, 11, .09), transparent 26%),
        radial-gradient(circle at 85% 12%, rgba(249, 115, 22, .08), transparent 24%),
        radial-gradient(circle at 50% 90%, rgba(251, 113, 133, .05), transparent 22%),
        linear-gradient(180deg, #fffaf3 0%, #fff8ee 40%, #fffdf9 100%);
      min-height: 100vh;
      overflow-x: hidden;
    }

    ::selection {
      background: rgba(245, 158, 11, .2);
      color: #111827;
    }

    a {
      color: inherit;
      text-decoration: none;
      transition: transform .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease, opacity .22s ease;
    }

    img { max-width: 100%; display: block; }

    button, input, select, textarea {
      font: inherit;
    }

    button, .btn, input, select, textarea {
      transition: transform .22s ease, border-color .22s ease, background-color .22s ease, box-shadow .22s ease, color .22s ease, opacity .22s ease;
    }

    button:hover, .btn:hover { transform: translateY(-1px); }
    button:active, .btn:active { transform: translateY(0); }

    :focus-visible {
      outline: 0;
      box-shadow: 0 0 0 4px rgba(245, 158, 11, .15);
      border-color: rgba(245, 158, 11, .55) !important;
    }

    .container-wide{
      width: min(var(--container), calc(100% - 2rem));
      margin-inline: auto;
    }

    .dock-shell{
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(232, 216, 195, .9);
      box-shadow: 0 12px 32px rgba(120, 72, 24, .10);
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
      border-radius: 999px;
    }

    .dock-link{
      position: relative;
      padding: .7rem .95rem;
      border-radius: 999px;
      color: #374151;
      font-size: .95rem;
      line-height: 1;
      white-space: nowrap;
    }

    .dock-link:hover{
      background: rgba(245, 158, 11, .10);
      color: #9a4d00;
    }

    .dock-link.active{
      background: rgba(245, 158, 11, .16);
      color: #b45309;
      box-shadow: inset 0 0 0 1px rgba(245, 158, 11, .16);
    }

    .brand-badge{
      background: linear-gradient(135deg, rgba(245, 158, 11, .18), rgba(249, 115, 22, .12));
      color: #a24b00;
      box-shadow: inset 0 0 0 1px rgba(245, 158, 11, .18);
    }

    .section-pad{
      padding: 4.5rem 0;
    }

    .soft-card{
      background: var(--panel);
      border: 1px solid rgba(241, 227, 209, .95);
      border-radius: var(--radius-xl);
      box-shadow: var(--shadow);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
    }

    .soft-card:hover{
      box-shadow: var(--shadow-strong);
      border-color: rgba(245, 158, 11, .28);
    }

    .kicker{
      display: inline-flex;
      align-items: center;
      gap: .45rem;
      padding: .42rem .78rem;
      border-radius: 999px;
      background: rgba(245, 158, 11, .10);
      color: #b45309;
      font-size: .82rem;
      font-weight: 700;
      letter-spacing: .04em;
    }

    .section-title{
      font-size: clamp(1.8rem, 2.6vw, 2.7rem);
      line-height: 1.16;
      letter-spacing: -.02em;
      color: #111827;
    }

    .section-lead{
      color: #5b6472;
      line-height: 1.85;
      font-size: 1.02rem;
    }

    .heading-hero{
      font-size: clamp(2rem, 4vw, 3.65rem);
      line-height: 1.1;
      letter-spacing: -.03em;
    }

    .hero-note{
      border: 1px dashed rgba(245, 158, 11, .35);
      background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,249,240,.92));
    }

    .chip{
      display: inline-flex;
      align-items: center;
      gap: .35rem;
      padding: .48rem .82rem;
      border-radius: 999px;
      background: #fff;
      border: 1px solid rgba(232, 216, 195, .95);
      color: #374151;
      font-size: .86rem;
      line-height: 1;
    }

    .pill{
      display: inline-flex;
      align-items: center;
      gap: .45rem;
      padding: .5rem .85rem;
      border-radius: 999px;
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(232,216,195,.95);
      color: #4b5563;
      font-size: .85rem;
    }

    .metric{
      min-height: 150px;
    }

    .metric .num{
      font-size: clamp(2rem, 3vw, 2.8rem);
      line-height: 1;
      color: #ea580c;
      letter-spacing: -.04em;
      font-weight: 800;
    }

    .metric p{
      line-height: 1.7;
    }

    .list-card{
      background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,252,246,.92));
    }

    .news-item{
      border-top: 1px solid rgba(241, 227, 209, .95);
    }

    .news-item:first-child{
      border-top: 0;
    }

    .news-item:hover .news-title{
      color: #c2410c;
    }

    .news-meta{
      color: #7c8592;
      font-size: .86rem;
    }

    .faq-item{
      border: 1px solid rgba(241,227,209,.95);
      border-radius: 22px;
      background: rgba(255,255,255,.88);
      box-shadow: 0 12px 36px rgba(120, 72, 24, .05);
      overflow: hidden;
    }

    .faq-item summary{
      list-style: none;
      cursor: pointer;
    }

    .faq-item summary::-webkit-details-marker{
      display: none;
    }

    .faq-item[open]{
      border-color: rgba(245, 158, 11, .28);
      box-shadow: 0 18px 45px rgba(120, 72, 24, .10);
    }

    .faq-item[open] .chev{
      transform: rotate(180deg);
    }

    .chev{
      transition: transform .22s ease;
    }

    .field{
      width: 100%;
      border-radius: 18px;
      border: 1px solid rgba(232,216,195,.95);
      background: rgba(255,255,255,.94);
      color: #111827;
      padding: .92rem 1rem;
      box-shadow: inset 0 1px 0 rgba(255,255,255,.62);
    }

    .field::placeholder{
      color: #9ca3af;
    }

    .field:focus{
      box-shadow: 0 0 0 4px rgba(245, 158, 11, .13);
      border-color: rgba(245, 158, 11, .62);
    }

    .cta-primary{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: .5rem;
      border-radius: 999px;
      padding: .92rem 1.3rem;
      background: linear-gradient(135deg, var(--brand), var(--brand-2));
      color: #fff;
      font-weight: 700;
      box-shadow: 0 16px 30px rgba(245, 158, 11, .22);
    }

    .cta-primary:hover{
      color: #fff;
      box-shadow: 0 22px 40px rgba(245, 158, 11, .28);
    }

    .cta-secondary{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: .5rem;
      border-radius: 999px;
      padding: .92rem 1.3rem;
      background: rgba(255,255,255,.9);
      color: #374151;
      border: 1px solid rgba(232,216,195,.95);
      box-shadow: 0 10px 20px rgba(120, 72, 24, .05);
    }

    .cta-secondary:hover{
      background: rgba(255, 244, 230, .98);
      color: #9a4d00;
    }

    .fine-grid{
      background-image:
        linear-gradient(rgba(245, 158, 11, .05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(245, 158, 11, .05) 1px, transparent 1px);
      background-size: 28px 28px;
      background-position: center;
      mask-image: linear-gradient(180deg, rgba(0,0,0,.85), transparent 90%);
      pointer-events: none;
    }

    .preview-row{
      border: 1px solid rgba(241,227,209,.95);
      background: rgba(255,255,255,.92);
      border-radius: 18px;
    }

    .small-shadow{
      box-shadow: 0 8px 22px rgba(120, 72, 24, .06);
    }

    .sticky-soft{
      position: sticky;
      top: 7.6rem;
    }

    @media (max-width: 1023px){
      .sticky-soft{
        position: static;
      }
    }

    @media (max-width: 768px){
      .section-pad{
        padding: 3.5rem 0;
      }
      .dock-shell{
        border-radius: 26px;
      }
    }

/* roulang page: category2 */
:root{
      --bg: #FFF8EE;
      --bg-2: #FAF3E7;
      --card: #FFFFFF;
      --card-soft: #FFFDF8;
      --line: #E8D8C3;
      --line-2: #F1E3D1;
      --text: #1F2933;
      --muted: #6B7280;
      --muted-2: #8A8F98;
      --brand: #F59E0B;
      --brand-2: #F97316;
      --brand-soft: rgba(245, 158, 11, .12);
      --accent: #FB7185;
      --shadow: 0 16px 40px rgba(120,72,24,.08);
      --shadow-strong: 0 18px 50px rgba(120,72,24,.14);
      --radius: 24px;
      --radius-sm: 18px;
    }

    *{ box-sizing:border-box; }
    html{ scroll-behavior:smooth; }
    body{
      margin:0;
      color:var(--text);
      font-family: PingFang SC, Microsoft YaHei, Noto Sans SC, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
      background:
        radial-gradient(circle at top left, rgba(245,158,11,.12), transparent 28%),
        radial-gradient(circle at top right, rgba(251,113,133,.08), transparent 22%),
        linear-gradient(180deg, #FFF9F0 0%, #FFF7EB 35%, #FAF3E7 100%);
      line-height:1.85;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    a{ color:inherit; text-decoration:none; }
    img{ max-width:100%; display:block; }
    button, input, textarea, select{
      font:inherit;
    }
    ::selection{ background: rgba(245,158,11,.22); }

    .container-wide{
      width:min(100%, 1240px);
      margin-inline:auto;
      padding-inline:16px;
    }

    @media (min-width: 768px){
      .container-wide{ padding-inline:24px; }
    }

    .dock-shell{
      position:fixed;
      top:16px;
      left:50%;
      transform:translateX(-50%);
      width:min(calc(100% - 20px), 1180px);
      z-index:60;
      transition: all .28s ease;
    }
    .dock-shell.is-scrolled{
      top:10px;
      width:min(calc(100% - 14px), 1120px);
    }

    .dock-bar{
      background: rgba(255, 252, 246, .88);
      backdrop-filter: blur(16px);
      border:1px solid rgba(232,216,195,.92);
      box-shadow: var(--shadow);
      border-radius: 999px;
    }

    .dock-link{
      position:relative;
      display:inline-flex;
      align-items:center;
      gap:.4rem;
      padding:.72rem 1rem;
      border-radius:999px;
      color:#4B5563;
      font-size:.95rem;
      font-weight:600;
      letter-spacing:.01em;
      transition: all .22s ease;
      white-space:nowrap;
    }
    .dock-link:hover{
      background: rgba(245,158,11,.10);
      color:#9A5B00;
      transform: translateY(-1px);
    }
    .dock-link.active{
      background: rgba(245,158,11,.16);
      color:#9A5B00;
      box-shadow: inset 0 0 0 1px rgba(245,158,11,.12);
    }

    .nav-pill{
      display:inline-flex;
      align-items:center;
      gap:.45rem;
      border-radius:999px;
      border:1px solid rgba(232,216,195,.9);
      background:#fff;
      padding:.76rem 1rem;
      box-shadow: 0 8px 18px rgba(120,72,24,.04);
      transition: all .2s ease;
    }
    .nav-pill:hover{
      background:#FFF8EF;
      border-color:#E9CFA9;
      transform: translateY(-1px);
    }

    .hero-card,
    .soft-card,
    .panel-card{
      background: rgba(255,255,255,.95);
      border:1px solid rgba(232,216,195,.92);
      box-shadow: var(--shadow);
      border-radius: var(--radius);
    }

    .hero-glow{
      position:absolute;
      inset:auto -80px -120px auto;
      width:320px;
      height:320px;
      background: radial-gradient(circle, rgba(245,158,11,.18), rgba(245,158,11,0) 68%);
      pointer-events:none;
      filter: blur(6px);
    }

    .section-shell{
      padding-block: 68px;
    }
    @media (min-width: 1024px){
      .section-shell{
        padding-block: 96px;
      }
    }

    .section-title{
      font-size: clamp(1.7rem, 3vw, 2.55rem);
      line-height:1.18;
      letter-spacing:-.02em;
      font-weight:800;
      color:#111827;
    }
    .section-kicker{
      display:inline-flex;
      align-items:center;
      gap:.5rem;
      padding:.44rem .8rem;
      border-radius:999px;
      background: rgba(245,158,11,.10);
      color:#9A5B00;
      font-size:.82rem;
      font-weight:700;
      letter-spacing:.12em;
      text-transform:uppercase;
    }

    .btn-primary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.5rem;
      padding:.92rem 1.2rem;
      border-radius:999px;
      background: linear-gradient(135deg, var(--brand) 0%, var(--brand-2) 100%);
      color:#fff;
      font-weight:700;
      box-shadow: 0 14px 28px rgba(249,115,22,.24);
      transition: all .22s ease;
      border:1px solid rgba(249,115,22,.20);
    }
    .btn-primary:hover{
      transform: translateY(-2px);
      box-shadow: var(--shadow-strong);
      color:#fff;
    }
    .btn-secondary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.5rem;
      padding:.92rem 1.2rem;
      border-radius:999px;
      background:#fff;
      color:#374151;
      font-weight:700;
      border:1px solid var(--line);
      box-shadow: 0 10px 22px rgba(120,72,24,.05);
      transition: all .22s ease;
    }
    .btn-secondary:hover{
      transform: translateY(-2px);
      background:#FFF7ED;
      color:#9A5B00;
      border-color:#E7C79A;
    }

    .chip{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      padding:.46rem .78rem;
      border-radius:999px;
      background:#FFF8EF;
      color:#8A5B14;
      border:1px solid rgba(245,158,11,.12);
      font-size:.82rem;
      font-weight:700;
    }
    .chip-strong{
      background: rgba(245,158,11,.14);
      color:#9A5B00;
      border-color: rgba(245,158,11,.16);
    }

    .badge{
      display:inline-flex;
      align-items:center;
      gap:.32rem;
      padding:.34rem .68rem;
      border-radius:999px;
      background: #FFF7ED;
      color:#9A5B00;
      font-size:.78rem;
      font-weight:700;
      border:1px solid rgba(245,158,11,.14);
    }
    .badge.red{
      background: rgba(251,113,133,.10);
      color:#BE185D;
      border-color: rgba(251,113,133,.14);
    }

    .mini-card{
      background: linear-gradient(180deg, #FFFFFF, #FFFDF8);
      border:1px solid rgba(232,216,195,.92);
      border-radius: 22px;
      padding: 1rem;
      box-shadow: 0 10px 24px rgba(120,72,24,.05);
      transition: all .22s ease;
    }
    .mini-card:hover{
      transform: translateY(-2px);
      border-color:#E9C79A;
      box-shadow: 0 16px 30px rgba(120,72,24,.10);
    }

    .stat-card{
      background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,251,244,.98));
      border:1px solid rgba(232,216,195,.92);
      border-radius: 24px;
      padding: 1.15rem 1.2rem;
      box-shadow: 0 12px 28px rgba(120,72,24,.05);
      min-height: 100%;
    }

    .stat-num{
      font-size: clamp(1.8rem, 3vw, 2.55rem);
      line-height:1;
      font-weight:900;
      color:#D97706;
      letter-spacing:-.03em;
    }

    .list-link{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:1rem;
      padding:1rem 1rem;
      border-radius: 20px;
      border:1px solid rgba(232,216,195,.86);
      background: #fff;
      transition: all .2s ease;
    }
    .list-link:hover{
      transform: translateY(-2px);
      border-color:#E7C79A;
      box-shadow: 0 14px 28px rgba(120,72,24,.08);
    }

    .topic-tile{
      border:1px solid rgba(232,216,195,.92);
      background: rgba(255,255,255,.95);
      border-radius: 24px;
      padding: 1rem;
      box-shadow: 0 10px 22px rgba(120,72,24,.05);
      transition: all .22s ease;
    }
    .topic-tile:hover{
      transform: translateY(-2px);
      border-color:#E7C79A;
      box-shadow: 0 16px 34px rgba(120,72,24,.10);
    }

    .progress-wrap{
      height: 12px;
      background: #F5E7D2;
      border-radius: 999px;
      overflow: hidden;
      border: 1px solid rgba(232,216,195,.95);
    }
    .progress-bar{
      height:100%;
      width: 86%;
      border-radius: inherit;
      background: linear-gradient(90deg, #F59E0B, #FB7185);
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.18);
    }

    .step-line{
      position:relative;
      padding-left:1.15rem;
    }
    .step-line:before{
      content:"";
      position:absolute;
      left:.22rem;
      top:.6rem;
      bottom:.1rem;
      width:1px;
      background: linear-gradient(180deg, rgba(245,158,11,.42), rgba(245,158,11,0));
    }
    .step-dot{
      position:absolute;
      left:0;
      top:.32rem;
      width:.7rem;
      height:.7rem;
      border-radius:999px;
      background: #fff;
      border:2px solid #F59E0B;
      box-shadow: 0 0 0 4px rgba(245,158,11,.10);
    }

    details.faq{
      background: rgba(255,255,255,.96);
      border:1px solid rgba(232,216,195,.9);
      border-radius: 20px;
      box-shadow: 0 10px 24px rgba(120,72,24,.05);
      overflow:hidden;
      transition: all .2s ease;
    }
    details.faq[open]{
      border-color:#E9C79A;
      box-shadow: 0 16px 32px rgba(120,72,24,.10);
    }
    details.faq summary{
      list-style:none;
      cursor:pointer;
      padding: 1rem 1rem;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1rem;
      font-weight:700;
      color:#111827;
      min-height: 54px;
    }
    details.faq summary::-webkit-details-marker{ display:none; }
    details.faq summary:hover{
      background: rgba(245,158,11,.06);
    }
    .faq-content{
      padding: 0 1rem 1rem 1rem;
      color:#4B5563;
      line-height:1.85;
    }

    .field{
      width:100%;
      border-radius: 16px;
      border:1px solid rgba(232,216,195,.98);
      background:#fff;
      padding:.95rem 1rem;
      color:var(--text);
      outline:none;
      transition: all .2s ease;
      box-shadow: 0 8px 20px rgba(120,72,24,.04);
    }
    .field::placeholder{ color:#94A3B8; }
    .field:focus{
      border-color: rgba(245,158,11,.72);
      box-shadow: 0 0 0 4px rgba(245,158,11,.12);
    }

    .footer-chip{
      display:inline-flex;
      align-items:center;
      padding:.42rem .72rem;
      border-radius:999px;
      background:#FFF7EC;
      border:1px solid rgba(232,216,195,.9);
      color:#8A5B14;
      font-size:.82rem;
      font-weight:700;
    }

    .anchor-offset{ scroll-margin-top: 110px; }

    .mobile-menu{
      display:none;
      position:absolute;
      top:calc(100% + 12px);
      left:0;
      right:0;
      background: rgba(255,252,246,.98);
      border:1px solid rgba(232,216,195,.95);
      border-radius: 24px;
      box-shadow: var(--shadow-strong);
      overflow:hidden;
    }
    .mobile-menu.open{ display:block; }

    .menu-link{
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding: .95rem 1rem;
      border-bottom: 1px solid rgba(241,227,209,.9);
      color:#374151;
      font-weight:600;
    }
    .menu-link:last-child{ border-bottom:none; }
    .menu-link.active{
      background: rgba(245,158,11,.12);
      color:#9A5B00;
    }

    .sticky-dir{
      position:sticky;
      top:126px;
    }

    .icon-badge{
      width:44px;
      height:44px;
      border-radius: 16px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      background: linear-gradient(180deg, rgba(245,158,11,.14), rgba(251,113,133,.08));
      color:#9A5B00;
      border:1px solid rgba(245,158,11,.12);
      flex:none;
    }

    .subtle-grid{
      background-image:
        linear-gradient(rgba(232,216,195,.35) 1px, transparent 1px),
        linear-gradient(90deg, rgba(232,216,195,.35) 1px, transparent 1px);
      background-size: 28px 28px;
      mask-image: linear-gradient(180deg, rgba(0,0,0,.16), rgba(0,0,0,.03));
      pointer-events:none;
    }

    .content-card{
      background: rgba(255,255,255,.98);
      border:1px solid rgba(232,216,195,.92);
      border-radius: 24px;
      box-shadow: 0 12px 28px rgba(120,72,24,.06);
      transition: all .22s ease;
    }
    .content-card:hover{
      transform: translateY(-2px);
      border-color: #E7C79A;
      box-shadow: 0 18px 34px rgba(120,72,24,.10);
    }

    .content-card .card-title{
      font-size:1.08rem;
      line-height:1.45;
      font-weight:800;
      color:#111827;
    }

    .muted{
      color:var(--muted);
    }

/* roulang page: category1 */
:root{
      --bg: #FFF8EE;
      --bg2: #FAF3E7;
      --card: rgba(255,255,255,.9);
      --line: #E8D8C3;
      --line-soft: #F1E3D1;
      --text: #1F2933;
      --muted: #6B7280;
      --brand: #F59E0B;
      --brand2: #F97316;
      --accent: #FB7185;
      --shadow: 0 18px 50px rgba(120,72,24,.08);
      --shadow2: 0 10px 24px rgba(120,72,24,.05);
      --radius-xl: 28px;
      --radius-lg: 22px;
      --radius-md: 16px;
    }
    html { scroll-behavior: smooth; }
    body{
      margin:0;
      font-family: PingFang SC, Microsoft YaHei, Noto Sans SC, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
      color: var(--text);
      background:
        radial-gradient(circle at 10% 10%, rgba(245,158,11,.08), transparent 24%),
        radial-gradient(circle at 90% 20%, rgba(249,115,22,.07), transparent 22%),
        linear-gradient(180deg, #FFFDF9 0%, #FFF8EE 38%, #FAF3E7 100%);
    }
    *{box-sizing:border-box}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    ::selection{background:rgba(245,158,11,.18);color:#7C2D12}
    .container-wide{
      width:min(1180px, calc(100% - 32px));
      margin:0 auto;
    }
    .soft-card{
      background: var(--card);
      border: 1px solid rgba(232,216,195,.95);
      box-shadow: var(--shadow2);
      border-radius: var(--radius-xl);
    }
    .card-hover{
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
    }
    .card-hover:hover{
      transform: translateY(-2px);
      border-color: rgba(245,158,11,.35);
      box-shadow: var(--shadow);
    }
    .dock-shell{
      background: rgba(255,252,246,.9);
      border: 1px solid rgba(232,216,195,.92);
      backdrop-filter: blur(14px);
      box-shadow: 0 20px 40px rgba(120,72,24,.08);
      border-radius: 999px;
      transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease;
    }
    .dock-shell.scrolled{
      transform: translateY(-1px) scale(.988);
      box-shadow: 0 18px 36px rgba(120,72,24,.12);
    }
    .dock-link{
      display:inline-flex;
      align-items:center;
      gap:.38rem;
      height:42px;
      padding:0 15px;
      border-radius:999px;
      color:#475569;
      font-size:14px;
      font-weight:600;
      transition: background-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
      white-space:nowrap;
    }
    .dock-link:hover{
      background: rgba(245,158,11,.08);
      color:#9A3412;
      transform: translateY(-1px);
    }
    .dock-link.active{
      background: linear-gradient(135deg, rgba(245,158,11,.16), rgba(249,115,22,.14));
      color:#9A3412;
      box-shadow: inset 0 0 0 1px rgba(245,158,11,.22);
    }
    .chip{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      padding:.44rem .78rem;
      border-radius:999px;
      background:#FFF;
      border:1px solid rgba(232,216,195,.95);
      color:#475569;
      font-size:.82rem;
      line-height:1;
      box-shadow: 0 4px 12px rgba(120,72,24,.04);
      transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
    }
    .chip:hover{
      transform: translateY(-1px);
      border-color: rgba(245,158,11,.3);
      background: rgba(255,248,238,.95);
    }
    .chip.active{
      color:#9A3412;
      background: linear-gradient(135deg, rgba(245,158,11,.16), rgba(249,115,22,.12));
      border-color: rgba(245,158,11,.28);
    }
    .section-eyebrow{
      display:inline-flex;
      align-items:center;
      gap:.55rem;
      color:#B45309;
      font-weight:700;
      letter-spacing:.22em;
      font-size:11px;
      text-transform: uppercase;
    }
    .section-title{
      font-size: clamp(28px, 3vw, 42px);
      line-height: 1.16;
      letter-spacing: -0.02em;
      font-weight: 800;
      color: #1F2933;
    }
    .section-lead{
      color:#64748b;
      line-height:1.84;
      font-size:16px;
    }
    .btn-primary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.5rem;
      border-radius:999px;
      padding:.95rem 1.35rem;
      background: linear-gradient(135deg, #F59E0B, #F97316);
      color:#fff;
      font-weight:700;
      box-shadow: 0 14px 24px rgba(249,115,22,.18);
      border:1px solid rgba(249,115,22,.18);
      transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
    }
    .btn-primary:hover{transform: translateY(-1px);filter:saturate(1.03);box-shadow: 0 16px 28px rgba(249,115,22,.24);}
    .btn-secondary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.5rem;
      border-radius:999px;
      padding:.95rem 1.35rem;
      background: #FFF;
      color:#334155;
      font-weight:700;
      border:1px solid rgba(232,216,195,.95);
      box-shadow: 0 8px 18px rgba(120,72,24,.04);
      transition: transform .2s ease, background-color .2s ease, border-color .2s ease;
    }
    .btn-secondary:hover{transform: translateY(-1px);background:#FFF8EE;border-color:rgba(245,158,11,.28);}
    .mini-muted{color:#6B7280;font-size:14px;line-height:1.75}
    .tag{
      display:inline-flex;
      align-items:center;
      gap:.4rem;
      padding:.32rem .72rem;
      border-radius:999px;
      font-size:12px;
      font-weight:700;
      background: rgba(245,158,11,.10);
      color:#9A3412;
      border:1px solid rgba(245,158,11,.16);
    }
    .tag.gray{
      background: rgba(248,250,252,.9);
      color:#475569;
      border-color: rgba(226,232,240,.95);
    }
    .tag.pink{
      background: rgba(251,113,133,.10);
      color:#be123c;
      border-color: rgba(251,113,133,.16);
    }
    .stat-card{
      background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,248,238,.96));
      border: 1px solid rgba(232,216,195,.95);
      border-radius: 24px;
      box-shadow: var(--shadow2);
    }
    .stat-num{
      font-size: clamp(24px, 3vw, 38px);
      font-weight: 800;
      line-height: 1;
      color:#9A3412;
      letter-spacing:-0.03em;
    }
    .entry-card{
      background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,246,.92));
      border: 1px solid rgba(232,216,195,.96);
      border-radius: 24px;
      box-shadow: 0 10px 26px rgba(120,72,24,.05);
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }
    .entry-card:hover{
      transform: translateY(-2px);
      border-color: rgba(245,158,11,.35);
      box-shadow: 0 16px 36px rgba(120,72,24,.09);
    }
    .entry-card .title{
      font-size: 18px;
      font-weight: 800;
      color:#1F2933;
      line-height:1.35;
    }
    .entry-card .summary{
      color:#64748b;
      line-height:1.78;
      font-size:15px;
    }
    .entry-card .meta{
      color:#94a3b8;
      font-size:13px;
      line-height:1.6;
    }
    .input-field{
      width:100%;
      height:48px;
      border-radius:16px;
      border:1px solid rgba(232,216,195,.96);
      background:#fff;
      padding:0 14px;
      color:#1F2933;
      outline:none;
      transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
    }
    .input-field::placeholder{color:#94a3b8}
    .input-field:focus{
      border-color: rgba(245,158,11,.55);
      box-shadow: 0 0 0 4px rgba(245,158,11,.12);
      background:#fff;
    }
    .textarea-field{
      width:100%;
      min-height: 132px;
      border-radius:18px;
      border:1px solid rgba(232,216,195,.96);
      background:#fff;
      padding:14px;
      color:#1F2933;
      outline:none;
      transition: border-color .2s ease, box-shadow .2s ease;
      resize: vertical;
    }
    .textarea-field:focus{
      border-color: rgba(245,158,11,.55);
      box-shadow: 0 0 0 4px rgba(245,158,11,.12);
    }
    details.faq-item{
      background:#fff;
      border:1px solid rgba(232,216,195,.95);
      border-radius:20px;
      box-shadow: 0 8px 20px rgba(120,72,24,.04);
      overflow:hidden;
      transition: border-color .2s ease, transform .2s ease, background-color .2s ease;
    }
    details.faq-item:hover{
      border-color: rgba(245,158,11,.32);
      transform: translateY(-1px);
    }
    details.faq-item[open]{
      background: linear-gradient(180deg, #fff, #FFF8EE);
      border-color: rgba(245,158,11,.26);
    }
    details.faq-item summary{
      list-style:none;
      cursor:pointer;
      padding:18px 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      font-weight:700;
      color:#1F2933;
    }
    details.faq-item summary::-webkit-details-marker{display:none}
    .faq-icon{
      width:28px;height:28px;border-radius:999px;
      display:inline-flex;align-items:center;justify-content:center;
      flex:none;
      background: rgba(245,158,11,.10);
      color:#9A3412;
      transition: transform .2s ease, background-color .2s ease;
    }
    details[open] .faq-icon{transform: rotate(45deg); background: rgba(245,158,11,.14);}
    .faq-body{
      padding: 0 18px 18px 18px;
      color:#64748b;
      line-height:1.84;
      font-size:15px;
    }
    .subtle-grid{
      background-image:
        linear-gradient(rgba(232,216,195,.28) 1px, transparent 1px),
        linear-gradient(90deg, rgba(232,216,195,.28) 1px, transparent 1px);
      background-size: 26px 26px;
      mask-image: linear-gradient(to bottom, rgba(0,0,0,.6), transparent 95%);
      opacity:.42;
    }
    .sticky-soft{
      position: sticky;
      top: 118px;
    }
    .timeline{
      position:relative;
    }
    .timeline::before{
      content:"";
      position:absolute;
      left: 15px;
      top: 12px;
      bottom: 12px;
      width: 2px;
      background: linear-gradient(180deg, rgba(245,158,11,.2), rgba(249,115,22,.08));
    }
    .timeline-step{
      position:relative;
      padding-left: 46px;
    }
    .timeline-dot{
      position:absolute;
      left: 4px;
      top: 8px;
      width: 24px;
      height: 24px;
      border-radius: 999px;
      background: linear-gradient(135deg, #F59E0B, #F97316);
      box-shadow: 0 8px 16px rgba(249,115,22,.18);
      border: 4px solid #FFF8EE;
    }
    .mobile-menu{
      max-height: 0;
      overflow: hidden;
      transition: max-height .28s ease;
    }
    .mobile-menu.open{
      max-height: 420px;
    }
    @media (max-width: 1024px){
      .sticky-soft{position: static;}
      .dock-shell{border-radius: 24px;}
    }
    @media (max-width: 768px){
      .section-title{font-size: clamp(28px, 8vw, 36px);}
      .section-lead{font-size:15px;}
      details.faq-item summary{padding:16px 16px;}
      .faq-body{padding: 0 16px 16px 16px;}
    }
