/* A quiet, one-click language control, shared by both houses. */
.site-header .header-side:first-child{gap:18px}
.language-switch{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font:10px/1.2 var(--sans);letter-spacing:.12em;color:#d7d3cf;position:relative}
.language-switch:after{content:'';position:absolute;bottom:10px;left:10px;right:10px;height:1px;background:currentColor;opacity:.35;transition:opacity .2s}
.language-switch:hover:after{opacity:1}
.footer-language{display:flex;justify-content:flex-end;margin-top:30px}
.footer-language .language-switch{font-size:11px;padding-inline:12px}
.footer-language+.footer-base{margin-top:25px}

/* Keep the established serif voice, with spacing suited to English prose. */
html:lang(en) .story-copy,html:lang(en) .story-craft-points p,html:lang(en) .p-prose p,
html:lang(en) .p-lead,html:lang(en) .ew-prose p,html:lang(en) .ew-text p,
html:lang(en) .ew-film-copy>p,html:lang(en) .ew-order-intro>p{letter-spacing:.012em;line-height:1.95;overflow-wrap:normal}
html:lang(en) .story-copy{font-size:17px}
html:lang(en) .ew-prose p,html:lang(en) .ew-text p,html:lang(en) .ew-film-copy>p,
html:lang(en) .ew-order-intro>p{font-size:15px}
html:lang(en) .story-section-heading h2,html:lang(en) .eternal-world h2,
html:lang(en) .poison-page main h2{letter-spacing:-.02em;line-height:1.25;text-wrap:balance}
html:lang(en) .eternal-world h3,html:lang(en) .story-copy h3,html:lang(en) .p-prose h3{letter-spacing:0;line-height:1.45;text-wrap:balance}
html:lang(en) .ew-intro-line,html:lang(en) .story-opening-jp{letter-spacing:.025em;line-height:1.7}
html:lang(en) .story-opening-jp span{display:block}
html:lang(en) .ew-creation .ew-section-heading h2{line-height:1.08}
html:lang(en) .ew-specs>div{grid-template-columns:90px minmax(0,1fr)}
html:lang(en) .ew-specs,html:lang(en) .detail-body,html:lang(en) .material-caution,
html:lang(en) .wb-notices{letter-spacing:0}
html:lang(en) .wb-notices p{padding-left:0;text-indent:0}
html:lang(en) .button-outline{letter-spacing:.045em;white-space:normal;line-height:1.5}
html:lang(en) .story-current-card>div>span{margin-top:16px}
html:lang(en) .story-index a{font-size:12px;letter-spacing:0}
html:lang(en) .ew-nav{gap:clamp(16px,3vw,55px);letter-spacing:.05em}
html:lang(en) .ew-price span,html:lang(en) .price small{display:inline-block;line-height:1.6}
html:lang(en) .contact-dialog h2{font-size:clamp(24px,5vw,34px);letter-spacing:0;line-height:1.4}
html:lang(en) .contact-dialog p{letter-spacing:.01em}
@media(max-width:650px){
 .site-header .header-side:first-child{gap:8px}
 .site-header .language-switch{min-width:36px;font-size:9px}
 .site-header .language-switch:after{left:8px;right:8px}
 .footer-language{justify-content:center}
 html:lang(en) .story-copy{font-size:15px;line-height:1.9}
 html:lang(en) .ew-prose p,html:lang(en) .ew-text p,html:lang(en) .ew-film-copy>p,
 html:lang(en) .ew-order-intro>p{font-size:14px;line-height:1.95}
 html:lang(en) .ew-nav{gap:10px 18px;flex-wrap:wrap;justify-content:center;white-space:normal}
 html:lang(en) .ew-nav a{padding:8px 2px;font-size:10px}
 html:lang(en) .story-opening-jp{font-size:15px}
 html:lang(en) .ew-size-note{line-height:1.8}
 html:lang(en) .ew-specs>div{grid-template-columns:78px minmax(0,1fr);gap:12px}
 html:lang(en) .p-prose p{font-size:14px;line-height:1.95}
 html:lang(en) .p-lead{font-size:14px;line-height:1.95}
 html:lang(en) .story-symbols p{font-size:12px;letter-spacing:0;line-height:1.8}
 html:lang(en) .ew-related .text-link{white-space:normal}
}
