/* Keep language selection visible outside the collapsed navigation. */
header{gap:20px}.language-picker{display:flex;align-items:center;flex-shrink:0;order:5}.language-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.language-picker select{min-height:44px;padding:9px 26px 9px 12px;border:1px solid #c4cfdd;border-radius:4px;background:#fff;color:#071a35;font-size:14px;cursor:pointer;max-width:112px}.language-picker select:focus-visible{outline:3px solid #458df2;outline-offset:3px}header nav{gap:24px}
html[lang="ja"] body{font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.75;line-break:strict;overflow-wrap:break-word}
html[lang="ja"] :is(h1,h2,h3,em,.card-person,.mini-content strong,.assembly-copy strong){font-family:inherit;letter-spacing:0;line-height:1.45}
html[lang="ja"] .hero h1{font-size:clamp(42px,6.8vw,106px);letter-spacing:.01em;line-height:1.35}
html[lang="ja"] .hero h1 em{font-style:normal}
html[lang="ja"] .project h2{font-size:clamp(32px,4.2vw,62px)}
html[lang="ja"] .service h3{font-size:clamp(34px,4vw,54px)}
html[lang="ja"] .mini-content strong{font-size:clamp(23px,3vw,40px)}
html[lang="ja"] .assembly-copy strong{font-size:clamp(16px,2.7vw,32px);line-height:1.35;margin:6px 0}
html[lang="ja"] .assembly-copy small{letter-spacing:0}
html[lang="ja"] .assembly-heading h2{font-size:clamp(24px,3vw,42px)}
html[lang="ja"] .assembly-heading p{line-height:1.6}
html[lang="ja"] .assembly-button{font-size:clamp(9px,1.1vw,13px)}
html[lang="ja"] .assembly-copy p{line-height:1.4}
html[lang="ja"] .launch-grid h3{font-size:24px}
html[lang="ja"] .pricing-intro h1{font-size:clamp(32px,4.7vw,64px)}
html[lang="ja"] .about-page h1{font-size:clamp(30px,4.5vw,60px)}
html[lang="ja"] .back strong{font-size:clamp(20px,2.5vw,30px)}
html[lang="ja"] .hero-top,html[lang="ja"] .eyebrow{letter-spacing:.04em}
@media(max-width:1200px){header{gap:16px}header .nav-cta{display:none}header nav{gap:20px}}
@media(max-width:760px){header{padding-left:4%;padding-right:4%;gap:10px}header .brand{width:150px}header .menu{margin-left:auto;padding:12px 6px;font-size:14px}header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:24px 6%;border-bottom:1px solid #dce1e8;flex-direction:column}header.open nav{display:flex}header .menu{display:block;border:0;background:none}.language-picker select{max-width:100px;padding-left:8px;padding-right:18px}html[lang="ja"] .hero h1{font-size:8.5vw;margin:65px 0 40px}html[lang="ja"] .assembly-heading h2{font-size:25px}html[lang="ja"] .hero-bottom p{line-height:1.8}html[lang="ja"] .launch-value h2{font-size:32px}html[lang="ja"] .statement h2{font-size:32px}html[lang="ja"] .approach .section-head h2{font-size:30px}}
@media(max-width:380px){header{gap:6px}header .brand{width:123px}header .menu{font-size:13px;padding:10px 3px}.language-picker select{font-size:14px;max-width:92px}html[lang="ja"] .assembly-heading p{font-size:12px}}
/* Multilingual layouts: accommodate longer labels without clipping or overflow. */
html:not([lang="en"]):not([lang="ja"]) body{overflow-wrap:break-word}
html:not([lang="en"]) :is(h1,h2,h3){hyphens:auto}
html:not([lang="en"]):not([lang="ja"]) .hero h1{font-size:clamp(38px,7vw,110px);line-height:1.16;letter-spacing:-.025em}
html:not([lang="en"]) .hero .line{white-space:normal}
html:not([lang="en"]) .service h3{font-size:clamp(30px,3.6vw,54px)}
html:not([lang="en"]) :is(.launch-grid h3,.steps h3){font-size:clamp(23px,2.3vw,32px)}
html:not([lang="en"]) .assembly-heading h2{font-size:clamp(23px,3vw,42px)}
html:not([lang="en"]) .assembly-copy strong{font-size:clamp(16px,2.6vw,34px);line-height:1.2}
html:not([lang="en"]) .assembly-copy small{letter-spacing:.02em}
html:not([lang="en"]) .assembly-button{font-size:clamp(9px,1.1vw,13px)}
html:not([lang="en"]) .back strong{font-size:clamp(20px,2.3vw,30px)}
html:not([lang="en"]) .project h2{font-size:clamp(32px,4vw,60px)}
html:not([lang="en"]) :is(.browser-bar,.flow-top){flex-wrap:wrap;gap:8px}
html:not([lang="en"]) .tags{flex-wrap:wrap}
html:not([lang="en"]) :is(.service-title,.intro-copy,.price-card,.form-grid>*,.company-facts dd){min-width:0}
html[lang="zh-CN"] body{font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75}
html[lang="ko"] body{font-family:Arial,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;line-height:1.75;word-break:keep-all}
html:is([lang="zh-CN"],[lang="ko"],[lang="ar"]) :is(h1,h2,h3,em,.card-person,.mini-content strong,.assembly-copy strong){font-family:inherit;letter-spacing:0;font-style:normal;line-height:1.4}
html[lang="ar"] body{font-family:Tahoma,Arial,sans-serif;line-height:1.85}
html[dir="rtl"] :is(p,h1,h2,h3,label,dt,dd,.service-title,.price-card,.company-facts){text-align:start}
html[dir="rtl"] :is(a[href^="mailto:"],input[type="email"],input[type="url"],.price){direction:ltr;unicode-bidi:isolate}
html[dir="rtl"] .language-picker select{direction:rtl;padding:9px 12px 9px 26px}
html[dir="rtl"] .menu{margin-left:0;margin-right:auto}
html[dir="rtl"] .business-card{text-align:right}
html[dir="rtl"] .steps article{border-left:0;border-right:1px solid #dce1e8}
html[dir="rtl"] .price-card ul{padding-right:20px;padding-left:0}
html[dir="rtl"] .hero h1{line-height:1.35}
@media(max-width:1100px){html:not([lang="en"]) header{gap:12px}html:not([lang="en"]) header nav{gap:14px;font-size:13px}}
@media(max-width:760px){html:not([lang="en"]):not([lang="ja"]) .hero h1{font-size:clamp(34px,8.7vw,64px);margin:65px 0 40px}html:not([lang="en"]) .hero-bottom p{line-height:1.8}html:not([lang="en"]) .assembly-heading h2{font-size:23px}html:not([lang="en"]) .assembly-heading p{font-size:12px}html:not([lang="en"]) .assembly-copy strong{font-size:clamp(16px,4.6vw,25px)}html:not([lang="en"]) .assembly-caption{font-size:9px}html:not([lang="en"]) .hero-foot{gap:14px}html:not([lang="en"]) .mini-base{gap:12px;flex-wrap:wrap}html:not([lang="en"]) .language-picker select{max-width:105px}html[dir="rtl"] .hero-top{gap:14px}}

/* Membership links stay visible even when the main navigation is collapsed. */
.header-members{display:flex;align-items:center;gap:14px;flex-shrink:0;font-size:13px;order:4}.header-members a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap}.header-members .header-register{border:1px solid #ccd3dd;border-radius:4px;padding:10px 14px}.header-members a:hover{color:#0b4fa8}.header-members .header-register:hover{background:#edf1f6}
@media(min-width:1101px) and (max-width:1450px){header .nav-cta{display:none}header{gap:14px}header nav{gap:16px}header .brand{width:180px}}
@media(min-width:761px) and (max-width:1100px){header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:24px 6%;border-bottom:1px solid #dce1e8;flex-direction:column}header.open nav{display:flex}header .menu{display:block;border:0;background:none;margin-left:auto}header .nav-cta{display:none}.header-members{order:3}}
@media(max-width:760px){header{height:auto;min-height:112px;flex-wrap:wrap;padding-top:12px;padding-bottom:10px;row-gap:8px}.header-members{order:6;flex-basis:100%;justify-content:flex-end;gap:20px;border-top:1px solid #e5eaf0;padding-top:5px}.header-members a{font-size:13px;min-height:38px}.header-members .header-register{padding:8px 12px}header nav{top:100%}html{scroll-padding-top:135px}}

@media(max-width:760px){header .brand{width:120px}header .menu{font-size:12px;padding:8px 2px}header .language-picker select{max-width:90px;font-size:12px}header{gap:8px;row-gap:8px}}

@media(max-width:760px){header{display:grid;grid-template-columns:minmax(0,1fr) auto auto}header .menu{margin:0}header .header-members{grid-column:1/-1}.language-picker{justify-self:end}}
