/* Archived page geometry and typography remain in assets; only integration/motion lives here. */
body.career-index{--color-primary:#fff;--color-secondary:#000;background:#000;color:#fff}
body.career-detail{--color-primary:#000;--color-secondary:#dedede;background:#dedede;color:#000}
body .tb-native-header{background:#fffefa;color:#20201e;mix-blend-mode:normal}
body .tb-native-header button{font-family:Arial,'Yu Gothic',sans-serif}
body .tb-native-header .tb-native-talk{color:#fff}
body #career-page>.styles_PageContainer__LKCEk{padding-top:175px}
body .styles_CursorImageTrailWrapper__ppeVE{z-index:4}
body .styles_Container__ZHWMZ{will-change:transform}
[data-career-card]{display:block;text-decoration:none;perspective:1000px}
[data-career-card]:focus-visible{outline:2px solid currentColor;outline-offset:7px}
#job-openings{scroll-margin-top:175px}
.career-footer{display:flex;justify-content:space-between;gap:24px;padding:80px 24px 35px;font:11px 'ballinger-mono',monospace}
.career-footer a{text-decoration:none}
.career-form-note{font:11px 'ballinger-mono',monospace;margin:0 0 28px;color:#555}
.career-form-result{font:16px 'Helvetica Now',sans-serif;padding:24px 0;line-height:1.5}
.career-file-status{font-size:12px;display:block;overflow-wrap:anywhere;margin-top:10px}
.career-busy{overflow:hidden!important;cursor:progress}
.career-busy #career-page{pointer-events:none}
.career-busy .tb-native-header{pointer-events:none}
@media(max-width:1100px){body #career-page>.styles_PageContainer__LKCEk{padding-top:200px}#job-openings{scroll-margin-top:200px}}
@media(max-width:767px){body #career-page>.styles_PageContainer__LKCEk{padding-top:145px}#job-openings{scroll-margin-top:145px}.career-footer{flex-direction:column;padding:45px 20px}.styles_CursorImageTrailWrapper__ppeVE{display:none}}

/* The archived global canvas background must not cover the shared logo. */
body #tb-logo-physics-canvas{background:transparent}

/* Match the common Tobira header to each career page surface. */
body.career-index .tb-native-header{background:#000;color:#f5f4ef;border-bottom:1px solid #ffffff1f}
body.career-index .tb-native-header .tb-native-logo,body.career-index .tb-native-header .tb-native-back{color:#f5f4ef}
body.career-index .tb-native-header .tb-native-language,body.career-index .tb-native-header .tb-native-sound,body.career-index .tb-native-header .tb-native-menu-toggle{background:#242422;color:#f5f4ef;border-color:#ffffff24}
body.career-index .tb-native-header .tb-native-language button[aria-pressed=true]{background:#f5f4ef;color:#20201e}
body.career-index .tb-native-header .tb-native-talk{background:#b5462a;color:#fff}
body.career-detail .tb-native-header{background:#dedede;color:#20201e;border-bottom:1px solid #20201e1a}

/* Localized copy uses natural line lengths without changing the card layout. */
@font-face{font-family:CareerJapanese;src:url('/assets/fonts/TobiraSansJP-Regular.woff2') format('woff2');font-display:swap}
html[lang=ja] #career-page{font-family:CareerJapanese,'Yu Gothic',sans-serif}
html[lang=zh-CN] #career-page{font-family:'Microsoft YaHei','PingFang SC',sans-serif}
html[lang=ja] #career-page h1,html[lang=ja] #career-page h2,html[lang=ja] #career-page h3,html[lang=zh-CN] #career-page h1,html[lang=zh-CN] #career-page h2,html[lang=zh-CN] #career-page h3{font-family:inherit;letter-spacing:0;line-height:1.5}
#career-page .career-intro{font-size:clamp(17px,1.6vw,23px);font-weight:400;line-height:1.8;margin:32px 0 0;max-width:44em}
#career-page .career-copy-body{--career-body-leading:1.25;font-size:clamp(16px,1.2vw,18px);font-weight:400;line-height:var(--career-body-leading)}
html[lang=ja] #career-page .career-copy-body,html[lang=zh-CN] #career-page .career-copy-body{--career-body-leading:1.55}
#career-page .career-copy-body h1{font-size:clamp(34px,5vw,76px);line-height:1.15;margin:0 0 32px;overflow-wrap:anywhere}
html[lang=ja] #career-page .career-copy-body h1,html[lang=zh-CN] #career-page .career-copy-body h1{line-height:1.5}
#career-page .career-copy-body li{font-size:inherit;font-weight:400;line-height:var(--career-body-leading);margin:0 0 .5em}
#career-page .career-copy-body ul{padding-left:1.2em;margin:0}
#career-page .career-copy-body li:last-child{margin-bottom:0}
#career-page .career-copy-section{margin-bottom:36px}
.career-back{display:inline-block;margin-bottom:28px;font-size:13px;text-decoration:none}
.career-enquiry-form{max-width:760px;width:100%}.career-field{margin:0 0 30px}.career-field label{display:block;font:inherit;margin-bottom:10px}
.career-field input:not([type=file]),.career-field textarea{display:block;box-sizing:border-box;width:100%;padding:14px 16px;font:inherit;line-height:1.5;color:#20201e;background:#ffffff80;border:1px solid #20201e50;border-radius:6px}
.career-field input[type=file]{font:inherit;max-width:100%}.career-field input:focus-visible,.career-field textarea:focus-visible{outline:2px solid #b5462a;outline-offset:3px}
.career-enquiry-form button[type=submit]{display:inline-block;padding:16px 28px;border-radius:40px;background:#20201e;color:#fff;cursor:pointer;font:inherit}
.career-enquiry-form button:disabled{opacity:.5;cursor:default}
html[lang=ja] .styles_Column_Right__3faZ4 p,html[lang=zh-CN] .styles_Column_Right__3faZ4 p{line-height:1.8;font-weight:400}
@media(max-width:767px){#career-page .career-intro{font-size:16px;line-height:1.9}#career-page .career-copy-body{font-size:16px}#career-page .career-copy-body h1{font-size:32px}}

#career-page .career-copy-body p{font-size:inherit;line-height:var(--career-body-leading);margin:0 0 1.1em;font-weight:400}
#career-page .career-copy-body p:last-child{margin-bottom:0}
.career-working-item{border-top:1px solid #20201e30;padding:28px 0 18px}.career-working-item:first-child{border-top:0;padding-top:0}
#career-page .career-working-item h3{font-size:clamp(20px,2vw,28px);line-height:1.5;letter-spacing:0;margin:0 0 14px}
#career-page [tabindex="-1"]:focus:not(:focus-visible){outline:none}
@media(min-width:1024px){#career-page .styles_Label__MI0Aa{max-width:220px;width:max-content}#career-page .career-copy-body h1{font-size:clamp(40px,4vw,64px);text-wrap:balance}}

html[lang=ja] #career-page :is(p,li,label,input,textarea,button,.career-copy-body,.career-back){font-family:CareerJapanese,'Yu Gothic',sans-serif}
html[lang=zh-CN] #career-page :is(p,li,label,input,textarea,button,.career-copy-body,.career-back){font-family:'Microsoft YaHei','PingFang SC',sans-serif}
html[lang=ja] #career-page .career-copy-body h1{word-break:keep-all;overflow-wrap:anywhere}
.career-field .career-file-input{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;opacity:0}
.career-field .career-file-button{display:inline-block;padding:10px 18px;border:1px solid #20201e70;border-radius:30px;cursor:pointer;font-size:15px}
.career-file-button:focus-visible{outline:2px solid #b5462a;outline-offset:4px}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.styles_CursorImageTrailWrapper__ppeVE{display:none}}

/* Application: restore the reference's full-width ruled sections and two-column fields. */
.career-application{width:100%;margin:0}
#career-page .career-application .career-copy-section{margin-bottom:76px}
#career-page .career-application .career-copy-body{max-width:none}
#career-page .career-application h1{font-size:clamp(42px,6.6vw,100px);line-height:1.02;letter-spacing:-.045em;font-weight:800;margin-bottom:0}
html[lang=ja] #career-page .career-application h1,html[lang=zh-CN] #career-page .career-application h1{font-size:clamp(36px,5.5vw,80px);line-height:1.28;letter-spacing:-.025em;word-break:keep-all;overflow-wrap:anywhere}
@media(min-width:1440px){#career-page .career-application .styles_RowsMain__Swrfz{grid-column:4/span 7}}
.career-application .styles_Label__MI0Aa{text-transform:uppercase}
.career-application .styles_Label__MI0Aa:before{content:'';display:inline-block;width:9px;height:9px;background:currentColor;border-radius:50%;margin-right:10px}
.career-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.career-application .career-field{min-width:0;margin:0 0 24px}
.career-application .career-form-grid .career-field{margin-bottom:4px}
.career-application .career-field label{font-size:16px;line-height:1.5;margin-bottom:10px}
.career-application .career-field input:not([type=file]),.career-application .career-field textarea{background:#d3d3d3;border:1px solid transparent;border-radius:5px;color:#101010;padding:18px 20px;min-height:58px}
.career-application .career-field textarea{min-height:230px;resize:vertical}
.career-application .career-field .career-file-button{display:flex;gap:14px;align-items:center;justify-content:center;height:180px;width:100%;box-sizing:border-box;border:1px dashed #555;border-radius:0;font:13px 'ballinger-mono',monospace;text-transform:uppercase}
.career-application .career-file-button span{font-size:30px;font-family:Arial,sans-serif;font-weight:400}
.career-application .career-file-status{min-height:18px;font-size:12px;line-height:1.5}
.career-application button[type=submit]{border:0;border-radius:40px;padding:18px 32px;background:#111;color:#fff;font:inherit;cursor:pointer}
.career-application button:disabled{opacity:.5;cursor:default}
.career-strength{padding:44px 0 38px}
.career-strength>label{display:block;font-size:clamp(19px,1.7vw,25px);line-height:1.5;margin-bottom:32px}
.career-strength-ends{display:flex;justify-content:space-between;gap:36px;font-size:15px;line-height:1.5;margin-bottom:20px}
.career-strength-ends span{max-width:44%}.career-strength-ends span:last-child{text-align:right}
.career-strength input{appearance:none;-webkit-appearance:none;display:block;width:100%;height:30px;margin:0;background:transparent;cursor:pointer;touch-action:pan-y}
.career-strength input::-webkit-slider-runnable-track{height:12px;background:repeating-linear-gradient(to right,#777 0 1px,transparent 1px 10%);border-top:1px dotted #888;border-bottom:1px dotted #888}
.career-strength input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#111;margin-top:-6px}
.career-strength input::-moz-range-track{height:12px;background:repeating-linear-gradient(to right,#777 0 1px,transparent 1px 10%);border-top:1px dotted #888;border-bottom:1px dotted #888}
.career-strength input::-moz-range-thumb{width:22px;height:22px;border:0;border-radius:50%;background:#111}
.career-strength input:focus-visible{outline:2px solid #b5462a;outline-offset:6px}
@media(max-width:767px){.career-form-grid{grid-template-columns:1fr;gap:12px}#career-page .career-application .career-copy-section{margin-bottom:48px}.career-strength{padding:26px 0}.career-strength-ends{font-size:13px;gap:20px}.career-application .career-field .career-file-button{height:145px}}

/* Softer card typography, with intentional Japanese role-name breaks. */
@font-face{font-family:CareerCardSans;src:url('/assets/fonts/Aeonik-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
#career-page [data-career-card] h3{font-family:CareerCardSans,'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;font-size:clamp(21px,1.6vw,26px);font-weight:500;line-height:1.4;letter-spacing:0;color:#f3f0e9}
html[lang=ja] #career-page [data-career-card] h3{font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;font-size:clamp(20px,1.5vw,24px);font-weight:500;line-height:1.5;letter-spacing:.015em}
html[lang=zh-CN] #career-page [data-career-card] h3{font-family:'Microsoft YaHei','PingFang SC',sans-serif}
#career-page [data-career-card] .career-role-line{display:block;white-space:nowrap}
#career-page [data-career-card] p{font-family:CareerCardSans,'Yu Gothic','Hiragino Kaku Gothic ProN','Microsoft YaHei',sans-serif;font-size:12px;font-weight:500;line-height:1.4;letter-spacing:.02em;color:#c8c4bc}
html[lang=ja] #career-page [data-career-card] p{font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif}
html[lang=zh-CN] #career-page [data-career-card] p{font-family:'Microsoft YaHei','PingFang SC',sans-serif}
