/* Halaman publik JurnalHub Academia (/academia/info, /academia/contoh/*).
   Melengkapi journal-pages.css; warna dari jh-tokens.css (terang/gelap). */
.acp-hero{padding-bottom:44px}
.acp-hero--landing h1{max-width:820px}
.acp-hero .jp-eyebrow{margin:1.1rem 0 0}
.acp-hero .btn--ghost-night{min-height:40px}
.acp-doc{display:grid;gap:26px;padding-top:30px;padding-bottom:64px}
.acp-doc section{min-width:0}
.acp-h2{margin:.4rem 0 .4rem;font:600 clamp(21px,2.4vw,27px)/1.25 var(--jh-font-display);letter-spacing:-.02em}
.acp-sub{margin:0 0 1rem;max-width:720px;color:var(--jh-muted)}
.acp-grid,.acp-cards,.acp-price{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.acp-grid h3,.acp-cards h3,.acp-price h3{margin:0 0 .35rem;font-size:16px;font-weight:600}
.acp-cards h2{margin:0 0 .4rem;font-size:17px}
.acp-grid p,.acp-cards p,.acp-price p{margin:0;color:var(--jh-muted);font-size:14.5px}
.acp-cards a{color:var(--jh-ink);text-decoration:none}
.acp-cards a:hover{color:var(--jh-accent);text-decoration:underline}
.acp-price .jp-card{display:flex;flex-direction:column;gap:.55rem}
.acp-price .btn{margin-top:auto;align-self:flex-start}
.acp-amount{font:700 28px/1.1 var(--jh-font-display)!important;color:var(--jh-ink)!important;letter-spacing:-.02em}
.acp-best{border-color:color-mix(in srgb,var(--jh-accent) 55%,var(--jh-line));box-shadow:var(--jh-shadow)}
.acp-steps ol{margin:.6rem 0 0;padding-left:1.3rem;display:grid;gap:.5rem;color:var(--jh-muted)}
.acp-steps strong{color:var(--jh-ink)}
.acp-faq details{border:1px solid var(--jh-line);border-radius:12px;background:var(--jh-surface);padding:.75rem 1rem;margin-top:.55rem}
.acp-faq summary{cursor:pointer;font-weight:600}
.acp-faq p{margin:.55rem 0 0;color:var(--jh-muted);font-size:15px}
.acp-table{overflow-x:auto;margin:.2rem 0 .6rem;border:1px solid var(--jh-line);border-radius:12px}
.acp-table table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.acp-table caption{caption-side:bottom;text-align:left;padding:.5rem .75rem;font-size:12.5px;color:var(--jh-muted)}
.acp-table th,.acp-table td{padding:.55rem .75rem;border-bottom:1px solid var(--jh-line);text-align:left;vertical-align:top}
.acp-table thead th{background:var(--jh-soft);font-size:12.5px;font-weight:600;color:var(--jh-muted);white-space:nowrap}
.acp-table tbody th{font-weight:600}
.acp-table tr:last-child>*{border-bottom:0}
.acp-note{margin:.4rem 0 0;font-size:13.5px;color:var(--jh-muted)}
.acp-note a,.jp-card p a{color:var(--jh-accent)}
.acp-list{margin:.4rem 0 .6rem;padding-left:1.2rem;color:var(--jh-muted)}
.acp-check{list-style:none;margin:.2rem 0 0;padding:0;display:grid;gap:.5rem}
.acp-check li{position:relative;padding-left:1.7rem;color:var(--jh-muted)}
.acp-check li::before{content:"";position:absolute;left:0;top:.25em;width:1rem;height:1rem;border:2px solid var(--jh-accent);border-radius:4px}
.acp-check strong{color:var(--jh-ink)}
.acp-cta{max-width:none}
.acp-cta .btn{width:auto}
.acp-more h2{margin:0 0 .5rem;font-size:16px}
.acp-more ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.acp-more a{display:inline-block;padding:.4rem .8rem;border:1px solid var(--jh-line);border-radius:999px;background:var(--jh-surface);text-decoration:none;font-size:14px}
.acp-more a:hover{border-color:var(--jh-accent);color:var(--jh-accent)}
@media (max-width:640px){
  .acp-doc{padding-top:22px}
  .acp-hero .jp-hero-cta .btn{width:100%}
  .acp-price .btn{align-self:stretch}
}
