.locale-picker{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;white-space:nowrap}.locale-picker select{font:inherit;color:inherit;background:transparent;border:1px solid currentColor;border-radius:6px;padding:.35rem;max-width:6.5rem}.locale-picker select:focus-visible{outline:2px solid #426547;outline-offset:3px}.locale-legal-notice{margin:1.5rem auto;padding:1rem;max-width:75ch;border:1px solid #a78539;background:#fff8da;color:#423915}.locale-legal-notice a{text-decoration:underline}html[lang=ja] body{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,'Pretendard',system-ui,sans-serif}html[lang=en] .maru-hero-caption{font-size:clamp(1.15rem,2vw,1.8rem)}@media(max-width:640px){.locale-picker{font-size:.68rem}.locale-picker select{max-width:5rem;padding:.25rem}.header-actions{gap:.35rem!important}}
.locale-wordmark{font-family:Georgia,serif;font-size:1.45rem!important;letter-spacing:.06em;width:auto!important;height:auto!important;font-weight:800}.locale-hero-wordmark{display:block;font-family:Georgia,serif;font-size:clamp(4.5rem,12vw,9rem);line-height:1.15;letter-spacing:.04em;color:#fff7de;text-shadow:0 3px 0 #4d5f3e}.welcome-wordmark:not(:has(img)){font:bold clamp(3rem,10vw,6rem)/1.2 Georgia,serif;color:#3e6044}
.locale-picker{position:relative}.locale-picker-status:not(:empty){position:absolute;top:calc(100% + .5rem);right:0;z-index:20;width:max-content;max-width:min(20rem,80vw);white-space:normal;background:#fffdf6;color:#344c32;border:1px solid #b9c4ad;border-radius:8px;padding:.65rem .8rem;font-size:.8rem;line-height:1.5;box-shadow:0 4px 14px #34452b18}

/* Japanese phrases may wrap between characters in the existing payment layouts. */
html[lang=ja] :is(.charge-page,.policy-page,.order-card) :is(h1,h2,h3,p,li,label,legend,a){word-break:normal;overflow-wrap:anywhere}
html[lang=ja] :is(.charge-card,.charge-notice,.policy-card,.policy-contents,.policy-contents nav a,.catalog-heading>div,.charge-page fieldset){min-width:0}

/* Japanese has native character wrapping; Korean keep-all makes translated phrases overflow. */
html[lang=ja] :is(h1,h2,h3,p){word-break:normal;overflow-wrap:anywhere}
html[lang=ja] :is(.board-intro,.news-grid,.news-card,.guide-steps li>div){min-width:0}
