.site-header{gap:20px}.language-control{display:flex;align-items:center;gap:5px;flex-shrink:0;margin-left:auto;color:#263e3d;font-size:16px}.language-control select{font:600 12px/1.3 inherit;font-family:inherit;font-size:12px;color:inherit;border:0;border-bottom:1px solid #263e3d55;border-radius:0;background:transparent;padding:8px 18px 8px 3px;cursor:pointer;max-width:105px}.language-control select:focus-visible{outline:2px solid #263e3d;outline-offset:3px}.language-control option{background:#fff;color:#263e3d}
html.lang-zh body{font-family:"Microsoft YaHei","PingFang SC","Noto Sans SC",sans-serif}html.lang-zh :is(h1,h2,h3,.directory-title){letter-spacing:0!important;line-height:1.25}html.lang-zh p{line-height:1.8}html.lang-zh .hero h1{font-size:clamp(44px,5.5vw,82px)}html.lang-zh .site-header nav{letter-spacing:0;white-space:nowrap}html.lang-zh .directory-title{font-size:22px}html.lang-zh .pw-footer-identity p{line-height:1.6}
@media(min-width:1101px){.site-header nav,.home-page .site-header nav{gap:15px;font-size:13px}}
@media(max-width:1100px){.site-header{flex-wrap:wrap;gap:12px}.site-header .logo{margin-right:auto}.site-header .menu-toggle{display:block!important;order:3}.site-header .language-control{order:2;margin-left:0}.site-header #site-nav,.home-page .site-header #site-nav{display:none!important;order:4;width:100%;position:static;flex-basis:100%;padding:14px 0;flex-wrap:wrap;gap:16px 24px;background:transparent}.site-header #site-nav.open,.home-page .site-header #site-nav.open{display:flex!important}.site-header #site-nav a{font-size:14px;white-space:normal}}
@media(max-width:600px){.site-header{gap:10px}.language-control{gap:2px}.language-control select{font-size:11px;max-width:88px;padding-right:2px}.language-control>span{display:none}.site-header .logo{max-width:125px}.site-header .logo img{max-width:100%;height:auto}.site-header .menu-toggle{font-size:12px;padding:8px 0}html.lang-zh .home-page .hero h1{font-size:clamp(29px,7.8vw,45px)}html.lang-zh .directory-title{font-size:17px}html.lang-zh .hero-copy>p{font-size:12px;line-height:1.75}html.lang-zh h1{overflow-wrap:anywhere}html.lang-zh .news-heading h2{font-size:42px}html.lang-zh .pw-footer summary{font-size:16px}}

@media(max-width:1100px){.site-header .menu-toggle{min-width:54px;min-height:38px;border-radius:24px;padding:8px!important;white-space:nowrap}}body>header:not(.site-header){display:flex;align-items:center;gap:20px;flex-wrap:wrap}body>header:not(.site-header) .language-control{margin-left:0} @media(max-width:600px){body>header:not(.site-header){gap:12px}body>header:not(.site-header)>a:not(.logo){font-size:11px}}
@media(max-width:600px){body>header:not(.site-header) .language-control{margin-left:auto}}

/* All locales share the existing layout; only type and control sizing adapt. */
.language-control select{font-weight:600;line-height:1.4;min-height:44px;max-width:116px;width:116px;padding:8px 4px;background:transparent}
.site-header .menu-toggle{min-height:44px}
.field-error{display:block;margin-top:7px;color:#8b281d;font-size:13px;line-height:1.5;font-weight:600}
.field-error[hidden]{display:none}
[aria-invalid="true"]{outline:2px solid #8b281d;outline-offset:2px}
.lang-eu :is(h1,h2,h3,.directory-title){hyphens:auto;overflow-wrap:break-word}
.lang-eu .home-page .hero h1{font-size:clamp(42px,5.4vw,78px);line-height:1.08;letter-spacing:-.04em}
.lang-eu .directory-title{font-size:clamp(18px,1.55vw,23px);line-height:1.2}
.lang-eu .directory-description{line-height:1.5}
.lang-eu .directory-grid>a{min-width:0;height:auto;min-height:100px}
.lang-eu .pw-footer-main>*{min-width:0}
.lang-eu .pw-footer :is(summary,a){overflow-wrap:break-word;hyphens:auto}
.lang-eu .journey-intro h1{font-size:clamp(40px,5.2vw,76px);line-height:1.1}
.lang-eu .contact-layout h1{font-size:clamp(38px,4.2vw,64px);line-height:1.12}
.lang-eu .range-opening h1,.lang-eu .ab-hero h1{font-size:clamp(42px,5.2vw,76px);line-height:1.1}
.lang-eu .material-entry h2,.lang-eu .construction-entry h2{line-height:1.13}
.lang-east :is(h1,h2,h3,.directory-title){letter-spacing:0!important;font-style:normal;line-height:1.3}
html[lang="ja-JP"] body{font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;line-break:strict;word-break:normal}
html[lang="ko-KR"] body{font-family:"Malgun Gothic","Apple SD Gothic Neo","Noto Sans KR",sans-serif;word-break:keep-all;overflow-wrap:break-word}
.lang-east p{line-height:1.85}
.lang-east .home-page .hero h1{font-size:clamp(38px,4.8vw,70px)}
.lang-east .directory-title{font-size:clamp(18px,1.55vw,23px)}
.lang-east .journey-intro h1,.lang-east .ab-hero h1,.lang-east .range-opening h1{font-size:clamp(36px,4.8vw,68px)}
.lang-east .contact-layout h1{font-size:clamp(32px,4vw,56px)}
.lang-east :is(.hand-note,.material-entry,.construction-entry) :is(p,span){font-style:normal}
.lang-east .site-header nav{white-space:nowrap;letter-spacing:0}
@media(min-width:1101px) and (max-width:1350px){
 .lang-eu .site-header{flex-wrap:wrap;gap:12px}
 .lang-eu .site-header .logo{margin-right:auto}
 .lang-eu .site-header .menu-toggle{display:block!important;order:3;min-width:64px;border-radius:24px}
 .lang-eu .site-header .language-control{order:2;margin-left:0}
 .lang-eu .site-header #site-nav{display:none!important;order:4;position:static;flex-basis:100%;width:100%;padding:14px 0;gap:16px 24px;flex-wrap:wrap;background:transparent}
 .lang-eu .site-header #site-nav.open{display:flex!important}
}
@media(max-width:600px){
 .language-control select{width:96px;max-width:96px;font-size:12px}
 .site-header .logo{max-width:118px}
 .site-header{gap:8px}
 .lang-eu .home-page .hero h1{font-size:clamp(34px,9vw,48px)}
 .lang-eu .journey-intro h1,.lang-eu .range-opening h1,.lang-eu .ab-hero h1{font-size:clamp(32px,8.8vw,44px)}
 .lang-eu .contact-layout h1{font-size:clamp(30px,8vw,40px)}
 .lang-eu .directory-title{font-size:18px;min-height:44px;align-items:flex-start}
 .lang-eu .directory-grid>a{min-height:115px}
 .lang-eu .directory-description{font-size:12px}
 .lang-eu .pw-footer-identity p{font-size:18px}
 .lang-east .home-page .hero h1{font-size:clamp(30px,8vw,42px)}
 .lang-east .hero-copy>p{font-size:15px;line-height:1.8}
 .lang-east .directory-title{font-size:17px}
 .lang-east .directory-description{font-size:12px;line-height:1.65}
 .lang-east .directory-grid>a{min-height:104px}
 .lang-east .contact-layout h1{font-size:30px}
 .lang-east .news-heading h2{font-size:40px}
 .lang-east .journey-intro h1,.lang-east .ab-hero h1,.lang-east .range-opening h1{font-size:32px}
 .lang-east .pw-footer summary{font-size:16px}
 .lang-eu .page-cta :is(p,h2),.lang-east .page-cta :is(p,h2){overflow-wrap:break-word}
}

html.lang-eu h1 {hyphens:none;}

/* Branded language popup, shared by every page. */
.language-control{position:relative;z-index:1000}
.language-trigger{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:44px;padding:8px 12px;border:1px solid #263e3d55;border-radius:22px;background:transparent;color:#263e3d;font:600 13px/1.4 inherit;font-family:inherit;cursor:pointer;white-space:nowrap}
.language-trigger:hover,.language-trigger[aria-expanded="true"]{background:#263e3d;color:#ffe052;border-color:#263e3d}
.language-name{min-width:68px;text-align:left;font-size:12px;font-weight:600}
.language-chevron{font-size:17px;line-height:1;transition:transform .16s}
.language-trigger[aria-expanded="true"] .language-chevron{transform:rotate(180deg)}
.language-menu{position:absolute;right:0;top:calc(100% + 10px);width:190px;max-width:calc(100vw - 32px);padding:7px;background:#263e3d;border:1px solid #ffe05255;border-radius:14px;box-shadow:0 10px 24px #162b2a26;max-height:calc(100dvh - 100px);overflow:auto}
.language-menu[hidden]{display:none}
.language-menu button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:10px 13px;border:0;border-radius:8px;background:transparent;color:#ffe052;font-family:inherit;font-size:14px;line-height:1.4;cursor:pointer;text-align:left;white-space:nowrap}
.language-check{opacity:0;margin-left:14px}
.language-menu button[aria-checked="true"]{background:#ffe052;color:#263e3d;font-weight:700}
.language-menu button[aria-checked="true"] .language-check{opacity:1}
.language-menu button:hover,.language-menu button:focus-visible{background:#ffe052;color:#263e3d;outline:2px solid #ffe052;outline-offset:-2px}
.language-trigger:focus-visible{outline:2px solid #263e3d;outline-offset:3px}
@media(max-width:600px){.language-trigger{padding:8px;gap:5px}.language-globe{display:none}.language-name{min-width:60px}.language-menu{width:176px}}
@media(prefers-reduced-motion:reduce){.language-chevron{transition:none}}
