/* Shared language selector; language navigation works without JavaScript. */
.header{position:relative;z-index:30}
/* Keep the decorative header line behind the navigation and its dropdown. */
.home-page .header::after{z-index:-1}
.language-picker{position:relative;flex:none;font-size:14px;font-weight:700;letter-spacing:0;color:var(--blue);z-index:20}
.language-picker summary{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #dce3f1;border-radius:999px;list-style:none;cursor:pointer;background:#fff;white-space:nowrap}
.language-picker summary::-webkit-details-marker{display:none}
.language-picker summary:hover,.language-picker[open] summary{border-color:var(--pink)}
.language-picker summary:focus-visible{outline:3px solid var(--pink);outline-offset:3px}
.language-options{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;padding:8px;display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid #dce3f1;border-radius:15px;box-shadow:0 12px 28px #172b501a}
.language-options a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:8px;text-decoration:none;line-height:1.4}
.language-options a:hover,.language-options a[aria-current]{background:#f1f5ff;color:var(--blue)}
.home-header .nav{gap:20px}.home-header .header-actions{gap:24px}
.edition-notice{max-width:760px;padding:12px 16px;margin:0 auto 24px;background:#f5f7fc;border-left:3px solid var(--blue);border-radius:0 10px 10px 0;color:var(--muted);font-size:13px;line-height:1.6;text-align:left}
.book-detail-copy .edition-notice{margin:0 0 20px}
.edition-pending{cursor:default;opacity:.8}
html[lang=ja] body{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,system-ui,sans-serif;line-height:1.9;line-break:strict;word-break:normal}
html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3{letter-spacing:0;line-height:1.4}
html[lang=ja] .eyebrow,html[lang=ja] .book-type{letter-spacing:.04em}
html[lang=ja] .legal h1{font-size:clamp(28px,4vw,46px)}
html:not([lang=de]) .localized-hero-title{position:static;margin:0;font-size:clamp(42px,6vw,82px);line-height:1.12;font-weight:850;letter-spacing:-.04em}
.localized-hero-title span{background:linear-gradient(110deg,#ff1b93,#d21cc4,#ff8e17,#20b9df);background-clip:text;-webkit-background-clip:text;color:transparent!important}
.localized-hero-title small{display:block;margin-top:16px;font-size:.46em;letter-spacing:-.02em}
.localized-hero-caption{max-width:600px;margin:24px auto 0;color:var(--muted);font-size:18px}
html[lang=ja] .localized-hero-title{font-size:clamp(38px,5vw,70px);line-height:1.4;letter-spacing:0}
.localized-closing-art{height:auto;overflow:visible}
.localized-closing-art img{display:block;width:100%;max-width:100%;height:auto;margin:0;object-fit:contain}
.localized-closing h2{text-align:center;font-size:clamp(28px,4vw,54px);margin:18px 0 8px;color:var(--blue)}
.localized-closing p{text-align:center;color:var(--pink);font-weight:750;font-size:20px}
.localized-welcome{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:16px;margin:10px 0 40px;padding:20px;border-radius:28px;background:linear-gradient(120deg,#ecf8ff,#fff5fa)}
.localized-welcome h1{font-size:clamp(30px,4vw,52px)!important;letter-spacing:-.03em}
.localized-welcome h1 span{color:var(--pink)}
.localized-welcome p{font-size:17px;margin:0}
.localized-welcome-art{overflow:hidden;aspect-ratio:1.1}
.localized-welcome-art img{width:200%;max-width:none;height:100%;object-fit:contain;transform:translateX(-50%)}
html[lang=ru] body{font-family:Arial,system-ui,sans-serif;overflow-wrap:break-word}
html[lang=ru] .localized-hero-title{font-size:clamp(38px,5.5vw,76px)}
html[lang=ru] .book-type{letter-spacing:.04em;white-space:normal}
html[lang=ru] .legal h1{font-size:clamp(28px,4vw,46px);overflow-wrap:anywhere}
@media(max-width:1020px){.home-header{flex-wrap:wrap}.home-header .header-actions{display:contents}.home-header .brand{order:1}.home-header .header-instagram{order:2}.home-header .nav{order:3;flex-basis:100%;justify-content:center;flex-wrap:wrap}}
@media(max-width:540px){.home-header .nav{gap:10px 16px;font-size:13px}.language-picker{font-size:12px}.language-picker summary{padding:7px 9px}.language-options{right:auto;left:0}.header>.language-picker .language-options{right:0;left:auto}.edition-notice{font-size:12px}.localized-hero-caption{font-size:16px}.localized-welcome{gap:8px;padding:16px;grid-template-columns:1fr}.localized-welcome-art{max-width:300px;width:100%;margin:auto}.localized-welcome h1{font-size:32px!important}html[lang=ja] .book-preview-hint{font-size:11px}html[lang=ja] .book-type{font-size:11px}}
