/* JLPT landing pages and the credits page, on top of guide.css. */
:root{--jp-ease:cubic-bezier(.32,.72,0,1)}
.jlpt-page main{padding-bottom:40px}
.jlpt-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);background:var(--forest);color:#fff8e9;box-shadow:0 22px 44px -30px #18352d80;overflow:hidden;animation:jlpt-rise .9s var(--jp-ease) both}
.jlpt-hero>div:first-child{padding:clamp(30px,5vw,72px)}
.jlpt-hero .eyebrow{color:#d5ac75}
.jlpt-hero h1{font:500 clamp(32px,3.8vw,54px)/1.28 var(--serif);margin:16px 0 18px;letter-spacing:.015em;text-wrap:balance}
.jlpt-hero p{color:#dfe8d8;max-width:620px;font-size:15px;line-height:1.9;margin:0 0 24px}
.jlpt-hero .primary-link{transition:background .4s var(--jp-ease),gap .5s var(--jp-ease)}
.jlpt-hero .primary-link:hover{gap:40px}
.jlpt-hero-figure{position:relative;display:grid;place-items:center;align-content:center;gap:10px;background:radial-gradient(circle at 50% 42%,#2f5a49 0,#1d4436 62%);border-left:1px solid #ffffff14}
.jlpt-hero-figure span{font:clamp(110px,14vw,190px)/1 var(--serif);color:#f3e5c9;opacity:.92}
.jlpt-hero-figure small{font-size:11px;letter-spacing:.16em;color:#c9d6c4;text-align:center;padding:0 16px}
.jlpt-level-hero.paid .jlpt-hero-figure span{color:#efc4a8}
.jlpt-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.jlpt-secondary{color:#f1dfc2;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #f1dfc266;padding-bottom:2px}
.jlpt-secondary:hover{border-color:#f1dfc2}
.jlpt-note{margin:16px 0 0!important;font-size:12px!important;color:#b9c9b6!important}

.jlpt-levels{margin:64px 0 0}
.jlpt-level-grid{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.jlpt-level-card a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;height:100%;padding:6px;background:linear-gradient(160deg,#eeebe0,#f7f4ec);box-shadow:0 0 0 1px #193e341c;text-decoration:none;transition:transform .55s var(--jp-ease),box-shadow .55s var(--jp-ease)}
.jlpt-level-card a:hover{transform:translateY(-3px);box-shadow:0 0 0 1px #193e3333,0 22px 40px -28px #18352d73}
.jlpt-level-glyph{grid-row:1;display:grid;place-items:center;width:58px;height:58px;margin:12px 0 12px 12px;border-radius:50%;background:#e3ebe0;color:#2a6148;font:32px var(--serif)}
.jlpt-level-card.paid .jlpt-level-glyph{background:#f0e1d8;color:#a9543c}
.jlpt-level-body{display:flex;flex-direction:column;gap:3px;padding:12px 0 14px}
.jlpt-level-body strong{font:500 21px/1.3 var(--serif)}
.jlpt-level-body small{color:#768478;font-size:11px;line-height:1.5}
.jlpt-level-meta{font-size:10px;color:#869183;margin-top:6px}
.jlpt-level-card i{font-style:normal;color:var(--copper);padding:12px 12px 0 0;transition:transform .5s var(--jp-ease)}
.jlpt-level-card a:hover i{transform:translate(2px,-2px)}
.jlpt-chip{align-self:flex-start;font:700 9px var(--sans);letter-spacing:.1em;padding:3px 8px;border-radius:999px;color:#3c7e55;background:#e2eee4}
.jlpt-chip.paid{color:#9b4a35;background:#f6ebe5}

.jlpt-how{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;margin:72px 0 0;padding:clamp(26px,4vw,52px);background:#e7e5d9;border:1px solid #d8d6c8}
.jlpt-how h2{margin-top:10px}
.jlpt-how p{color:#617064;max-width:380px}
.jlpt-how ol{list-style:none;margin:0;padding:0;background:#faf8f1;border:1px solid #dcd9c9}
.jlpt-how li{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:16px 20px;border-bottom:1px solid #e2dfd1}
.jlpt-how li:last-child{border-bottom:0}
.jlpt-how li span{color:var(--copper);font:500 18px var(--serif)}
.jlpt-how li p{margin:0;color:#4e5f52;max-width:none}

.jlpt-official{max-width:880px;margin:72px auto 30px}
.jlpt-official p{color:#58665a;line-height:1.9}
.jlpt-official a{color:#964a36;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #b47359;padding-bottom:3px}
.jlpt-disclaimer{color:#8a958a!important;font-size:11px!important;line-height:1.8;margin-top:22px}

.jlpt-level-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px}
.jlpt-level-tabs a{font-size:12px;text-decoration:none;color:#5b6b5f;padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:#fbf9f2;transition:background .35s var(--jp-ease)}
.jlpt-level-tabs a:hover{background:#efece1}
.jlpt-level-tabs a[aria-current="page"]{background:var(--forest);border-color:var(--forest);color:#fff8e9}
.jlpt-split{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);gap:clamp(26px,4vw,60px);margin:60px 0 40px}
.jlpt-counts{border-top:2px solid var(--copper);padding-top:18px;align-self:start;position:sticky;top:20px}
.jlpt-counts ul{list-style:none;margin:14px 0;padding:0}
.jlpt-counts li{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px;color:#526458}
.jlpt-counts b{font:500 18px var(--serif);color:var(--ink)}
.jlpt-counts p{font-size:12px;color:#6d786e;line-height:1.8}
.jlpt-preview h2{margin-top:8px}
.jlpt-preview-q{background:#fffdf7;border:1px solid var(--line);padding:22px 24px;margin:0 0 14px;box-shadow:0 18px 36px -32px #18352d66}
.jlpt-preview-q header{display:flex;justify-content:space-between;align-items:center;font:500 15px var(--serif);color:#9aa397}
.jlpt-preview-q h3{font:500 20px/1.65 var(--serif);margin:12px 0 14px;overflow-wrap:anywhere}
.jlpt-preview-options{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.jlpt-preview-options li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:center;border:1px solid #e4e1d5;padding:9px 12px;font-size:13px;line-height:1.6}
.jlpt-preview-options b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid #cfd4c6;font-size:10px;color:#6b7c6f}
.jlpt-preview-options li.correct{border-color:#9fc0a5;background:#eef6ef}
.jlpt-preview-options li.correct b{background:#4f8a5d;border-color:#4f8a5d;color:#fff}
.jlpt-preview-options span{overflow-wrap:anywhere}
.jlpt-preview-answer{margin:12px 0 0;font-size:12px;color:#5d6b60;line-height:1.8;border-left:3px solid #c9a77d;padding-left:12px;overflow-wrap:anywhere}

.jlpt-credits-main{max-width:960px}
.jlpt-credits{padding:46px 0 34px;border-bottom:1px solid var(--line)}
.jlpt-credits h1,.jlpt-credits h2{font:500 clamp(28px,3vw,40px)/1.35 var(--serif);margin:10px 0 12px}
.jlpt-credits>p{color:#58665a;max-width:760px}
.jlpt-credits ol{list-style:none;margin:20px 0;padding:0}
.jlpt-credits li{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr) auto;gap:16px;padding:16px 0;border-top:1px solid var(--line)}
.jlpt-credits li strong{display:block;font:500 17px var(--serif)}
.jlpt-credits li div a{font-size:11px;color:#7a877c;overflow-wrap:anywhere}
.jlpt-credits li p{margin:0;color:#526257;font-size:13px;line-height:1.8}
.jlpt-licence{align-self:start;font-size:11px;font-weight:700;color:#964a36;text-decoration:none;border:1px solid #e3cbbf;border-radius:999px;padding:4px 10px;white-space:nowrap}
.jlpt-licence-files{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:11px;color:#7a877c}
.jlpt-licence-files a{color:#4c6f5b}

@keyframes jlpt-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.jlpt-level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.jlpt-hero{grid-template-columns:1fr}.jlpt-hero-figure{min-height:150px;border-left:0;border-top:1px solid #ffffff14;grid-template-columns:auto auto;gap:18px}.jlpt-hero-figure span{font-size:84px}.jlpt-split{grid-template-columns:1fr}.jlpt-counts{position:static}.jlpt-how{grid-template-columns:1fr;gap:18px}}
@media(max-width:700px){.jlpt-level-grid{grid-template-columns:1fr}.jlpt-hero h1{font-size:31px}.jlpt-hero p{font-size:14px}.jlpt-preview-q{padding:16px}.jlpt-preview-q h3{font-size:18px}.jlpt-credits li{grid-template-columns:1fr;gap:6px}.jlpt-licence{justify-self:start}}
@media(prefers-reduced-motion:reduce){.jlpt-hero{animation:none}}
