#gh-pp, #gh-pp * { box-sizing: border-box !important; }
  #gh-pp {
    --g: #2D5A27; --g-d: #1e3d1a; --g-l: #f0f7ef; --g-ll: #f9fcf8;
    --navy: #141c40; --navy-2: #1f2b63; --ink: #1f2937; --muted: #5b6474; --line: #e3e7ec;
    --amber: #b7791f; --amber-l: #fdf6e7;
    position: relative !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 28px 16px 48px !important;
    background: transparent !important; color: var(--ink) !important; line-height: 1.6 !important; font-size: 15px !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  }
  #gh-pp svg { display: block !important; }
  #gh-pp .ib { position: relative !important; flex-shrink: 0 !important; display: block !important; }
  #gh-pp .ib svg { position: absolute !important; top: 50% !important; left: 50% !important; transform: translate(-50%, -50%) !important; margin: 0 !important; max-width: none !important; }
  #gh-pp .wrap { max-width: 1180px !important; margin: 0 auto !important; }
  #gh-pp a { color: var(--g-d) !important; text-decoration: underline !important; text-underline-offset: 3px !important; font-weight: 600 !important; }
  #gh-pp a:hover { color: var(--navy) !important; }

  /* progress */
  #gh-pp .prog { position: fixed !important; top: 0 !important; left: 0 !important; height: 3px !important; width: 0 !important; z-index: 99999 !important; background: linear-gradient(90deg, var(--g), #8fa8ff) !important; box-shadow: 0 0 12px rgba(76,110,245,.6) !important; transition: width .1s linear !important; }

  /* hero */
  #gh-pp .hero { position: relative !important; overflow: hidden !important; border-radius: 26px !important; padding: 52px 48px !important; color: #fff !important;
    background: radial-gradient(900px 400px at 85% -10%, rgba(76,110,245,.55), transparent 60%), linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 60%, #1e3d1a 100%) !important;
    box-shadow: 0 34px 70px -38px rgba(14,26,61,.75) !important; }
  #gh-pp .hero::before { content: "" !important; position: absolute !important; inset: 0 !important; pointer-events: none !important;
    background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px) !important; background-size: 34px 34px !important;
    -webkit-mask-image: linear-gradient(180deg, #000, transparent 85%) !important; mask-image: linear-gradient(180deg, #000, transparent 85%) !important; }
  #gh-pp .hero::after { content: "" !important; position: absolute !important; top: 0 !important; left: -60% !important; width: 40% !important; height: 100% !important; pointer-events: none !important;
    background: linear-gradient(100deg, transparent, rgba(255,255,255,.09), transparent) !important; transform: skewX(-18deg) !important; animation: GhppShine 7s ease-in-out infinite !important; }
  @keyframes GhppShine { 0%, 55% { left: -60%; } 100% { left: 130%; } }
  #gh-pp .hero-in { position: relative !important; z-index: 1 !important; display: flex !important; flex-wrap: wrap !important; gap: 34px !important; align-items: center !important; }
  #gh-pp .hero-t { flex: 1.4 1 420px !important; min-width: 0 !important; }
  #gh-pp .badge { display: inline-flex !important; align-items: center !important; gap: 8px !important; padding: 7px 14px !important; border-radius: 999px !important; background: rgba(255,255,255,.1) !important; border: 1px solid rgba(255,255,255,.18) !important; color: #c9d6ff !important; font-size: 11.5px !important; font-weight: 800 !important; letter-spacing: .14em !important; text-transform: uppercase !important; margin: 0 0 16px !important; }
  #gh-pp .badge i { width: 8px !important; height: 8px !important; border-radius: 50% !important; background: #8fa8ff !important; box-shadow: 0 0 0 0 rgba(143,168,255,.7) !important; animation: GhppPulse 2s infinite !important; }
  @keyframes GhppPulse { 0% { box-shadow: 0 0 0 0 rgba(143,168,255,.7); } 70% { box-shadow: 0 0 0 10px rgba(143,168,255,0); } 100% { box-shadow: 0 0 0 0 rgba(143,168,255,0); } }
  #gh-pp h1 { font-size: clamp(32px, 5vw, 54px) !important; font-weight: 800 !important; line-height: 1.04 !important; letter-spacing: -.025em !important; margin: 0 0 14px !important; color: #fff !important; }
  #gh-pp h1 span { color: #8fa8ff !important; }
  #gh-pp .hero-t p { color: #d5dcea !important; font-size: 16px !important; line-height: 1.7 !important; margin: 0 0 20px !important; max-width: 640px !important; }
  #gh-pp .meta { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; }
  #gh-pp .meta span { display: inline-flex !important; align-items: center !important; gap: 8px !important; padding: 8px 13px !important; border-radius: 10px !important; background: rgba(255,255,255,.08) !important; border: 1px solid rgba(255,255,255,.14) !important; font-size: 13px !important; font-weight: 600 !important; color: #e8edf6 !important; }
  #gh-pp .meta svg { width: 15px !important; height: 15px !important; }
  #gh-pp .facts { flex: 1 1 300px !important; display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
  #gh-pp .fact { padding: 16px !important; border-radius: 16px !important; background: rgba(255,255,255,.07) !important; border: 1px solid rgba(255,255,255,.14) !important; backdrop-filter: blur(6px) !important; transition: transform .3s ease, background .3s ease !important; }
  #gh-pp .fact:hover { transform: translateY(-4px) !important; background: rgba(255,255,255,.12) !important; }
  #gh-pp .fact b { display: block !important; font-family: 'JetBrains Mono', monospace !important; font-size: 19px !important; color: #fff !important; margin: 0 0 3px !important; }
  #gh-pp .fact small { display: block !important; font-size: 12px !important; color: #b9c4d8 !important; line-height: 1.4 !important; }

  /* notice */
  #gh-pp .notice { display: flex !important; gap: 14px !important; align-items: flex-start !important; margin: 22px 0 0 !important; padding: 18px 20px !important; border-radius: 16px !important; background: var(--amber-l) !important; border: 1px solid #f1dfb4 !important; }
  #gh-pp .notice .ib { width: 40px !important; height: 40px !important; border-radius: 12px !important; background: #fff !important; color: var(--amber) !important; border: 1px solid #f1dfb4 !important; }
  #gh-pp .notice .ib svg { width: 20px !important; height: 20px !important; }
  #gh-pp .notice p { margin: 0 !important; font-size: 14px !important; color: #6b4e16 !important; line-height: 1.6 !important; }
  #gh-pp .notice strong { color: #4f390d !important; }

  /* layout */
  #gh-pp .body { display: flex !important; flex-wrap: wrap !important; gap: 28px !important; align-items: flex-start !important; margin-top: 28px !important; }
  #gh-pp .toc { flex: 0 1 270px !important; min-width: 240px !important; position: sticky !important; top: 24px !important; padding: 18px !important; border-radius: 20px !important; background: #fff !important; border: 1px solid var(--line) !important; box-shadow: 0 20px 40px -30px rgba(14,26,61,.35) !important; }
  #gh-pp .toc h3 { font-size: 11.5px !important; font-weight: 800 !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: var(--muted) !important; margin: 2px 6px 10px !important; }
  #gh-pp .toc ol { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column !important; gap: 2px !important; }
  #gh-pp .toc li { margin: 0 !important; padding: 0 !important; }
  #gh-pp .toc a { display: flex !important; align-items: center !important; gap: 10px !important; padding: 8px 10px !important; border-radius: 10px !important; font-size: 13.5px !important; font-weight: 600 !important; color: var(--muted) !important; text-decoration: none !important; transition: background .2s ease, color .2s ease, transform .2s ease !important; }
  #gh-pp .toc a em { font-style: normal !important; font-family: 'JetBrains Mono', monospace !important; font-size: 11px !important; min-width: 24px !important; height: 22px !important; border-radius: 7px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; background: var(--g-ll) !important; color: var(--g-d) !important; transition: background .2s ease, color .2s ease !important; }
  #gh-pp .toc a:hover { background: var(--g-ll) !important; color: var(--navy) !important; transform: translateX(3px) !important; }
  #gh-pp .toc a.on { background: var(--g-l) !important; color: var(--navy) !important; }
  #gh-pp .toc a.on em { background: var(--g) !important; color: #fff !important; }
  #gh-pp .main { flex: 1 1 560px !important; min-width: 0 !important; display: flex !important; flex-direction: column !important; gap: 16px !important; }

  /* section cards */
  #gh-pp .sec { scroll-margin-top: 24px !important; position: relative !important; padding: 28px 30px !important; border-radius: 20px !important; background: #fff !important; border: 1px solid var(--line) !important; transition: border-color .3s ease, box-shadow .3s ease !important; }
  #gh-pp .sec:hover { border-color: #c2dec0 !important; box-shadow: 0 22px 44px -32px rgba(14,26,61,.4) !important; }
  #gh-pp .sec::before { content: "" !important; position: absolute !important; left: 0 !important; top: 26px !important; bottom: 26px !important; width: 3px !important; border-radius: 0 3px 3px 0 !important; background: var(--g) !important; transform: scaleY(0) !important; transform-origin: top !important; transition: transform .5s ease !important; }
  #gh-pp .sec.in::before { transform: scaleY(1) !important; }
  #gh-pp .sec-h { display: flex !important; align-items: center !important; gap: 14px !important; margin: 0 0 14px !important; }
  #gh-pp .sec-h .ib { width: 44px !important; height: 44px !important; border-radius: 13px !important; background: var(--g-l) !important; color: var(--g-d) !important; transition: transform .35s ease, background .35s ease, color .35s ease !important; }
  #gh-pp .sec:hover .sec-h .ib { transform: rotate(-6deg) scale(1.06) !important; background: var(--g) !important; color: #fff !important; }
  #gh-pp .sec-h .ib svg { width: 21px !important; height: 21px !important; }
  #gh-pp .sec-h small { display: block !important; font-family: 'JetBrains Mono', monospace !important; font-size: 11px !important; font-weight: 700 !important; color: var(--g) !important; letter-spacing: .1em !important; margin: 0 0 2px !important; }
  #gh-pp h2 { font-size: 20px !important; font-weight: 800 !important; letter-spacing: -.01em !important; color: var(--navy) !important; margin: 0 !important; line-height: 1.25 !important; }
  #gh-pp .sec p { margin: 0 0 12px !important; color: #3d4656 !important; font-size: 15px !important; line-height: 1.75 !important; }
  #gh-pp .sec p:last-child { margin-bottom: 0 !important; }
  #gh-pp .sec ul { list-style: none !important; margin: 4px 0 12px !important; padding: 0 !important; display: flex !important; flex-direction: column !important; gap: 10px !important; }
  #gh-pp .sec ul li { position: relative !important; margin: 0 !important; padding: 12px 14px 12px 42px !important; border-radius: 12px !important; background: var(--g-ll) !important; color: #3d4656 !important; font-size: 14.5px !important; line-height: 1.65 !important; }
  #gh-pp .sec ul li::before { content: "" !important; position: absolute !important; left: 14px !important; top: 15px !important; width: 18px !important; height: 18px !important; border-radius: 50% !important; background: var(--g) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center / 11px no-repeat !important; }
  #gh-pp .caps { text-transform: none !important; font-size: 14px !important; padding: 14px 16px !important; border-radius: 12px !important; background: #f7f8fa !important; border: 1px dashed #cfd5de !important; }

  /* contact */
  #gh-pp .contact { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; margin-top: 6px !important; }
  #gh-pp .cc { flex: 1 1 210px !important; display: flex !important; gap: 12px !important; align-items: center !important; padding: 14px !important; border-radius: 14px !important; border: 1px solid var(--line) !important; background: var(--g-ll) !important; text-decoration: none !important; transition: transform .25s ease, border-color .25s ease, background .25s ease !important; }
  #gh-pp a.cc:hover { transform: translateY(-3px) !important; border-color: var(--g) !important; background: #fff !important; }
  #gh-pp .cc .ib { width: 40px !important; height: 40px !important; border-radius: 12px !important; background: var(--navy) !important; color: #fff !important; }
  #gh-pp .cc .ib svg { width: 18px !important; height: 18px !important; }
  #gh-pp .cc small { display: block !important; font-size: 11px !important; font-weight: 800 !important; letter-spacing: .1em !important; text-transform: uppercase !important; color: var(--muted) !important; }
  #gh-pp .cc span { display: block !important; font-size: 14px !important; font-weight: 700 !important; color: var(--navy) !important; line-height: 1.4 !important; word-break: break-word !important; }

  /* faq */
  #gh-pp .faq-wrap { margin-top: 30px !important; padding: 36px 32px !important; border-radius: 24px !important; background: linear-gradient(180deg, var(--g-ll), #fff) !important; border: 1px solid var(--line) !important; }
  #gh-pp .faq-head { text-align: center !important; margin: 0 0 22px !important; }
  #gh-pp .faq-head .badge { background: var(--g-l) !important; border: 0 !important; color: var(--g-d) !important; }
  #gh-pp .faq-head h2 { font-size: clamp(24px, 3.2vw, 34px) !important; }
  #gh-pp .faq-head h2 span { color: var(--g) !important; }
  #gh-pp .faq { max-width: 860px !important; margin: 0 auto !important; display: flex !important; flex-direction: column !important; gap: 10px !important; }
  #gh-pp .fq { border-radius: 14px !important; background: #fff !important; border: 1px solid var(--line) !important; overflow: hidden !important; transition: border-color .25s ease, box-shadow .25s ease !important; }
  #gh-pp .fq.open { border-color: var(--g) !important; box-shadow: 0 16px 34px -26px rgba(51,70,184,.7) !important; }
  #gh-pp .fq button { all: unset !important; box-sizing: border-box !important; width: 100% !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 14px !important; padding: 17px 20px !important; cursor: pointer !important; font-family: inherit !important; font-size: 15px !important; font-weight: 700 !important; color: var(--navy) !important; line-height: 1.4 !important; }
  #gh-pp .fq button:focus-visible { outline: 2px solid var(--g) !important; outline-offset: -2px !important; }
  #gh-pp .fq .pm { position: relative !important; width: 30px !important; height: 30px !important; flex-shrink: 0 !important; border-radius: 50% !important; background: var(--g-l) !important; transition: background .25s ease, transform .35s ease !important; }
  #gh-pp .fq .pm::before, #gh-pp .fq .pm::after { content: "" !important; position: absolute !important; top: 50% !important; left: 50% !important; width: 12px !important; height: 2px !important; margin: -1px 0 0 -6px !important; border-radius: 2px !important; background: var(--g-d) !important; transition: transform .35s ease, background .25s ease !important; }
  #gh-pp .fq .pm::after { transform: rotate(90deg) !important; }
  #gh-pp .fq.open .pm { background: var(--g) !important; transform: rotate(180deg) !important; }
  #gh-pp .fq.open .pm::before, #gh-pp .fq.open .pm::after { background: #fff !important; }
  #gh-pp .fq.open .pm::after { transform: rotate(0deg) !important; }
  #gh-pp .fa { height: 0 !important; overflow: hidden !important; transition: height .35s ease !important; }
  #gh-pp .fa p { margin: 0 !important; padding: 0 20px 18px !important; color: var(--muted) !important; font-size: 14.5px !important; line-height: 1.7 !important; }

  /* reveal */
  #gh-pp .rv { opacity: 0 !important; transform: translateY(22px) !important; transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1) !important; }
  #gh-pp .rv.in { opacity: 1 !important; transform: none !important; }

  @media (max-width: 860px) {
    #gh-pp .toc { position: relative !important; top: 0 !important; flex: 1 1 100% !important; }
    #gh-pp .toc ol { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important; }
  }
  @media (max-width: 600px) {
    #gh-pp .hero { padding: 34px 22px !important; border-radius: 20px !important; }
    #gh-pp .sec { padding: 22px 18px !important; }
    #gh-pp .faq-wrap { padding: 28px 16px !important; }
    #gh-pp .facts { grid-template-columns: 1fr 1fr !important; }
  }
  @media (prefers-reduced-motion: reduce) {
    #gh-pp *, #gh-pp *::before, #gh-pp *::after { animation: none !important; transition: none !important; }
    #gh-pp .rv { opacity: 1 !important; transform: none !important; }
  }

  #gh-pp h3 { font-size: 15.5px !important; font-weight: 800 !important; color: var(--navy) !important; margin: 18px 0 10px !important; display: flex !important; align-items: center !important; gap: 10px !important; }
  #gh-pp h3 em { font-style: normal !important; font-family: 'JetBrains Mono', monospace !important; font-size: 11px !important; padding: 3px 8px !important; border-radius: 7px !important; background: var(--navy) !important; color: #fff !important; }
  #gh-pp .sec ul li strong { color: var(--navy) !important; }
  #gh-pp .tbl { width: 100% !important; overflow-x: auto !important; border-radius: 14px !important; border: 1px solid var(--line) !important; margin: 6px 0 4px !important; }
  #gh-pp table { width: 100% !important; min-width: 560px !important; border-collapse: collapse !important; margin: 0 !important; font-size: 13.5px !important; }
  #gh-pp th { background: var(--navy) !important; color: #fff !important; text-align: left !important; padding: 11px 14px !important; font-weight: 700 !important; font-size: 12px !important; letter-spacing: .06em !important; text-transform: uppercase !important; border: 0 !important; }
  #gh-pp td { padding: 11px 14px !important; border: 0 !important; border-top: 1px solid var(--line) !important; color: #3d4656 !important; vertical-align: top !important; line-height: 1.55 !important; background: #fff !important; }
  #gh-pp tr:nth-child(even) td { background: var(--g-ll) !important; }
  #gh-pp td:first-child { font-weight: 700 !important; color: var(--navy) !important; }
  #gh-pp tbody tr { transition: transform .2s ease !important; }
  #gh-pp tbody tr:hover td { background: var(--g-l) !important; }
  #gh-pp .gl { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important; gap: 10px !important; }
  #gh-pp .gl div { padding: 14px 16px !important; border-radius: 14px !important; background: var(--g-ll) !important; border: 1px solid var(--line) !important; transition: transform .25s ease, border-color .25s ease !important; }
  #gh-pp .gl div:hover { transform: translateY(-3px) !important; border-color: var(--g) !important; }
  #gh-pp .gl b { display: block !important; font-size: 14px !important; color: var(--navy) !important; margin: 0 0 4px !important; }
  #gh-pp .gl span { display: block !important; font-size: 13.5px !important; color: var(--muted) !important; line-height: 1.55 !important; }