/* Japanese pages only. Approved fonts and palette; no new dependencies. */
.jp-site{background:#FAF8F3;color:#171714;font-family:'Zen Kaku Gothic New',sans-serif;font-size:18px;line-height:1.95}.jp-site p{margin:0 0 1.15em}.jp-site strong{font-weight:700}.jp-site a:focus-visible,.jp-site button:focus-visible,.jp-site input:focus-visible,.jp-site textarea:focus-visible{outline:3px solid #765629;outline-offset:5px}.jp-site .site-header{position:relative}.jp-site .site-header__inner{max-width:1440px;margin:auto}.jp-site .site-nav__link{font-size:15px}.jp-site .is-current{border-bottom:1px solid #8F6C35}.jp-site h1,.jp-site h2,.jp-site h3{font-weight:500;letter-spacing:.02em;line-height:1.55;overflow-wrap:anywhere}.jp-site h1{font-size:clamp(32px,3.8vw,54px);margin:0 0 32px;max-width:23ch}.jp-site h2{font-size:clamp(25px,2.35vw,34px);margin:0}.jp-site h3{font-size:23px;margin:40px 0 18px;padding-top:24px;border-top:1px solid #D9D1C4}.jp-site h3:first-child{margin-top:0}.jp-site ul{padding-left:1.25em;margin:0 0 30px}.jp-site li{padding:5px 0}.jp-intro,.jp-home-intro{max-width:1280px;margin:auto;padding:76px 64px 64px}.jp-intro-copy{max-width:840px}.jp-intro-copy>p{max-width:42em;color:#171714}.jp-intro:has(.jp-portrait){display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;align-items:center}.jp-portrait{width:100%;height:auto;display:block}.jp-home-intro .jp-intro-copy{max-width:none;display:grid;grid-template-columns:1fr 1fr;column-gap:70px}.jp-home-intro h1{grid-column:1;grid-row:1/4}.jp-home-intro h1 span{display:block}.jp-home-intro p{grid-column:2;margin-bottom:18px}.jp-home-intro .jp-button{grid-column:2;justify-self:start}.jp-button{display:inline-flex;justify-content:center;align-items:center;min-height:56px;max-width:100%;padding:15px 26px;margin:10px 12px 8px 0;background:#8F6C35;color:#FFFDF9!important;font-size:16px;font-weight:500;line-height:1.6;text-decoration:none;border:1px solid #8F6C35;cursor:pointer;text-align:center;transition:background .2s ease}.jp-button:hover{background:#765629}.jp-button--outline{background:transparent;color:#171714!important;border-color:#D9D1C4}.jp-button--outline:hover{background:#FFFDF9}.jp-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:80px;max-width:1280px;margin:0 auto;padding:88px 64px;border-top:1px solid #D9D1C4}.jp-section-heading{max-width:370px}.jp-section-number{display:block;color:#8F6C35;font-family:'Cormorant Garamond',serif;font-size:24px;line-height:1;margin:0 0 28px}.jp-prose{min-width:0;max-width:740px}.jp-prose p:last-child{margin-bottom:0}.jp-section--dark{background:#171714;color:#FAF8F3;max-width:none;padding-inline:max(64px,calc((100vw - 1152px)/2));grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.jp-section--dark h3{border-color:#6A645B}.jp-section--dark .jp-button{color:#FFFDF9}.jp-work-image{width:100%;height:auto;display:block;margin:0 0 36px;border:1px solid #D9D1C4}.jp-related{max-width:1152px;margin:30px auto 80px;padding:32px 0;border-block:1px solid #D9D1C4;display:flex;gap:18px 30px;flex-wrap:wrap}.jp-related a{font-size:16px;color:#765629;text-decoration:underline;text-underline-offset:5px}.jp-form{display:grid;gap:12px}.jp-form label{font-size:17px;font-weight:500;margin-top:12px;display:flex;justify-content:space-between;gap:12px}.jp-form label span{font-size:13px;color:#6A645B}.jp-form input,.jp-form textarea{font:inherit;font-size:17px;width:100%;padding:14px 16px;border:1px solid #D9D1C4;border-radius:0;background:#FFFDF9;color:#171714}.jp-form textarea{resize:vertical}.jp-form p{font-size:16px}.jp-form button{margin:0}.jp-site .site-footer{font-size:16px}.jp-site .site-footer a{font-size:16px}.jp-site #lumina-jp-v3{background:#FAF8F3}.jp-site #lumina-jp-v3 .lm-stage{height:300px;border-top:0;border-bottom:1px solid #D9D1C4}.jp-site #lumina-jp-v3 .lm-word{font-size:clamp(46px,11vw,160px)}.jp-site #lumina-jp-v3 .lm-meanings{bottom:48px}.jp-site #lumina-jp-v3 .lm-pause{bottom:8px}.jp-site #lumina-jp-v3:not(.is-animated) .lm-stage{height:auto}.jp-site #lumina-jp-v3 h1{font-family:'Zen Kaku Gothic New',sans-serif;font-size:clamp(32px,3.8vw,54px);line-height:1.55;letter-spacing:.02em;font-weight:700}.jp-site #lumina-jp-v3 p{font-size:18px;line-height:1.95}
@media(max-width:1024px){.jp-section{padding:64px 36px;gap:38px;grid-template-columns:1fr 1.5fr}.jp-intro,.jp-home-intro{padding:54px 36px}.jp-home-intro .jp-intro-copy{column-gap:32px}.jp-related{margin:20px 36px 60px}.jp-intro:has(.jp-portrait){grid-template-columns:1fr 220px;gap:30px}.jp-site .site-nav{background:#FFFDF9}.jp-site h3{font-size:22px}}
@media(max-width:700px){.jp-site{font-size:16px;line-height:1.9}.jp-intro,.jp-home-intro{padding:38px 24px 36px}.jp-site h1,.jp-site #lumina-jp-v3 h1{font-size:32px;line-height:1.55;margin-bottom:24px}.jp-site h2{font-size:25px}.jp-site h3{font-size:21px}.jp-home-intro .jp-intro-copy{display:block}.jp-site #lumina-jp-v3 p{font-size:16px;line-height:1.85}.jp-home-intro .jp-button{display:flex;margin-right:0;width:100%}.jp-section{display:block;padding:48px 24px}.jp-section-heading{max-width:none;margin-bottom:28px}.jp-section-number{margin-bottom:16px}.jp-related{margin:16px 24px 48px;gap:18px 24px}.jp-intro:has(.jp-portrait){display:flex;flex-direction:column;align-items:start}.jp-portrait{max-width:260px}.jp-button{padding:15px 20px}.jp-site #lumina-jp-v3 .lm-stage{height:235px}.jp-site #lumina-jp-v3 .lm-word{font-size:clamp(29px,10.5vw,74px)}.jp-site #lumina-jp-v3 .lm-meanings{bottom:46px}.jp-site .site-footer__grid{gap:32px}.jp-form input,.jp-form textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){.jp-site *{scroll-behavior:auto!important}.jp-button{transition:none}}

.jp-site h1,.jp-site h2{text-wrap:balance}.jp-intro-cta{margin:0 0 30px}

.jp-site h1{max-width:none}.jp-title-piece{display:inline-block;max-width:100%}.jp-site h1{font-size:clamp(30px,3.5vw,50px)}@media(max-width:700px){.jp-site h1{font-size:30px}.jp-title-piece{letter-spacing:0}}

@media(min-width:1025px){.jp-intro-copy:has(.jp-intro-heading){max-width:none;display:grid;grid-template-columns:1fr 1.25fr;gap:72px}.jp-intro-heading h1{font-size:40px}.jp-intro-lead p{max-width:38em}}


/* 2026-09-20 approved consistency overrides */
.jp-section-number{display:none!important}
