/* Name punctuation and header alignment correction. */
.headerInrCont{box-sizing:border-box;margin-inline:auto!important}
.language-label{position:relative;display:block!important;gap:0!important}
.language-label select{display:block;appearance:none!important;-webkit-appearance:none!important;text-align:center!important;text-align-last:center!important;box-sizing:border-box!important;padding:0 22px!important;min-height:36px;line-height:normal!important;width:112px!important;max-width:none!important;margin:0!important}
.language-label:after{content:"";position:absolute;right:10px;top:50%;width:6px;height:6px;border-right:1px solid #d0b374;border-bottom:1px solid #d0b374;transform:translateY(-70%) rotate(45deg);pointer-events:none}
.headerInrCont .dropbtn{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;margin:0!important}
.headerInrCont .sub-menu-dropdown{display:block!important;margin:0!important}
.ct-page .ct-header{box-sizing:border-box;position:relative!important;height:auto!important;min-height:180px!important;padding:95px 24px 35px!important;display:block!important;text-align:center!important}
.ct-page .ct-header .ct-hero-title{position:relative!important;inset:auto!important;transform:none!important;max-width:100%;width:auto!important;margin:0!important;line-height:1.45!important;text-align:center!important}
@media(max-width:991px){
.headerCont{height:76px!important;padding:0 16px!important;box-sizing:border-box!important}
.headerInrCont{height:76px!important;width:100%!important;max-width:none!important;gap:10px!important;padding:0!important;align-items:center!important;justify-content:flex-end!important}
.headerInrCont .mainLogo{order:0!important;margin:0 auto 0 0!important;flex:0 0 auto!important}
.headerInrCont .mainLogo img{display:block!important;height:46px!important;width:auto!important;max-width:44px!important}
.headerInrCont .login-dropdown{order:3!important;margin:0!important;flex:0 0 auto!important;position:relative!important;inset:auto!important}
.headerInrCont .dropbtn{height:36px!important;min-width:78px!important;padding:0 12px!important;font-size:13px!important;line-height:1!important}
.headerInrCont .language-picker{order:4!important;margin:0!important;flex:0 0 auto!important}
.headerInrCont .menu-toggle{order:5!important;display:flex!important;align-items:center!important;justify-content:center!important;position:static!important;width:24px!important;height:36px!important;flex:0 0 24px!important;margin:0!important;padding:0!important}
.headerInrCont .menu-toggle img{display:block!important;width:22px!important;height:auto!important}
.headerInrCont .fs-nav{top:76px!important;left:-16px!important;width:calc(100% + 32px)!important}
.ct-page .ct-header{min-height:160px!important;padding:85px 20px 25px!important}
.ct-page .ct-header .ct-hero-title{font-size:clamp(30px,8vw,42px)!important}
}
@media(max-width:360px){.headerCont{padding-inline:12px!important}.headerInrCont{gap:8px!important}.language-label select{width:102px!important}.headerInrCont .dropbtn{min-width:72px!important;padding-inline:10px!important}.headerInrCont .fs-nav{left:-12px!important;width:calc(100% + 24px)!important}}
/* Keep country labels horizontal and allow the grid to wrap on narrow screens. */
.footer .contact-font{inline-size:auto!important;width:auto!important;max-width:100%!important;writing-mode:horizontal-tb!important;word-break:keep-all!important;overflow-wrap:normal!important;line-height:1.5!important;text-align:center!important;margin:10px 0 0!important}
.footer .mfg-fa,.footer .mar-ass{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px 12px!important;align-items:start!important;justify-items:stretch!important;width:100%!important}
.footer .location-item{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;width:auto!important;max-width:100%!important;margin:0!important;padding:0 4px!important;position:relative!important}
.footer .location-item>svg{width:64px!important;height:64px!important;flex:none!important;display:block!important}
@media(max-width:991px){
#careers{height:auto!important;min-height:0!important;padding:100px 20px 60px!important;box-sizing:border-box!important;overflow:visible!important}
#careers>.hScene{position:relative!important;display:flex!important;flex-direction:column!important;gap:28px!important;inset:auto!important;width:100%!important;max-width:760px!important;min-width:0!important;height:auto!important;min-height:0!important;padding:0!important;margin:0 auto!important;transform:none!important;box-sizing:border-box!important}
#careers .careers_data,#careers .careers_right{position:relative!important;inset:auto!important;float:none!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;padding:0!important;margin:0!important;transform:none!important;box-sizing:border-box!important}
#careers .careers_data p{font-size:16px!important;line-height:1.85!important;text-align:left!important;width:auto!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;margin:16px 0!important}
#careers .careers_data>br{display:none!important}
#careers .careers_right>h4{font-size:24px!important;line-height:1.5!important;margin:0 0 22px!important}
#careers form{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
#careers form>.d-flex{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;width:100%!important;margin:0 0 14px!important;padding:0!important}
#careers .field{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
#careers .input,#careers .custom-select,#careers .select-trigger,#careers .upload-wrapper,#careers .upload-box{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin:0!important}
#careers .input,#careers .select-trigger{min-height:52px!important;height:auto!important;padding:14px 16px!important;font-size:16px!important;line-height:1.5!important}
#careers .upload-box{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:12px!important;padding:12px!important;height:auto!important}
#careers .upload-btn{flex:0 0 auto!important;width:auto!important;margin:0!important;padding:10px 14px!important;font-size:14px!important}
#careers .upload-text{flex:1 1 120px!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;font-size:14px!important;line-height:1.6!important}
#careers .select-options{max-width:100%!important;box-sizing:border-box!important}
#careers .submit_btn_container{display:flex!important;justify-content:center!important;width:100%!important;padding:8px 0 0!important;margin:16px 0 0!important}
#careers .submit_btn{width:auto!important;min-width:130px!important;min-height:48px!important;margin:0!important;padding:10px 28px!important;font-size:18px!important}
.footer .address_container{width:100%!important;max-width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important;gap:24px!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
.footer .flags,.footer .address_list{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;box-sizing:border-box!important}
.footer .address_box{width:100%!important;max-width:100%!important;min-width:0!important;padding:35px 20px!important;margin:0!important;box-sizing:border-box!important}
.footer .mfg-fa,.footer .mar-ass{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 16px!important}
.footer .contact-font{font-size:16px!important;white-space:normal!important}
.footer .location-item>svg{width:62px!important;height:62px!important}
}
@media(max-width:600px){#careers form>.d-flex{grid-template-columns:minmax(0,1fr)!important}}
html[lang=ja] #careers .careers-hd5,html[lang=ja] #careers .careers_right>h4,html[lang=ja] #careers input,html[lang=ja] #careers .select-trigger,html[lang=ja] #careers .upload-box,html[lang=ja] #careers .submit_btn,html[lang=ja] .footer h4,html[lang=ja] .footer .contact-font{font-family:ClassicJP,"Yu Mincho","Hiragino Mincho ProN",serif!important}

/* Clear hierarchy for romanized and Japanese names. */
#coreTeam .ct-card-name,.ct-page .ct-member-name{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important;line-height:1.35!important;margin-bottom:0!important}
#coreTeam .ct-name-en,.ct-page .ct-name-en{display:block!important;font-family:latoregular,Arial,sans-serif!important;font-size:clamp(24px,2vw,32px)!important;line-height:1.25!important;letter-spacing:.01em!important;color:#fff!important;font-weight:400!important}
#coreTeam .ct-name-ja,.ct-page .ct-name-ja{display:block!important;font-family:ClassicJP,"Yu Mincho",serif!important;font-size:14px!important;line-height:1.6!important;letter-spacing:.08em!important;font-weight:400!important;color:#e0d9cc!important}
#coreTeam .ct-card-role,#coreTeam .ct-card:hover .ct-card-role,.ct-page .ct-member-role{color:#ded8ca!important;opacity:1!important;font-size:12px!important;line-height:1.6!important;letter-spacing:.06em!important;margin-top:3px!important;margin-bottom:0!important;transform:none!important}
#coreTeam .ct-card-name,#coreTeam .ct-card-desc,#coreTeam .ct-card .more-button,#coreTeam .ct-card:hover .ct-card-name,#coreTeam .ct-card:hover .ct-card-desc{opacity:1!important;visibility:visible!important;transform:none!important}
#coreTeam .ct-card .ct-name-en,#coreTeam .ct-card .ct-name-ja,.ct-page .ct-member .ct-name-en,.ct-page .ct-member .ct-name-ja{opacity:1!important;visibility:visible!important}
@media(max-width:767px){#coreTeam .ct-name-en,.ct-page .ct-name-en{font-size:25px!important}#coreTeam .ct-name-ja,.ct-page .ct-name-ja{font-size:13px!important}#coreTeam .ct-card-role,.ct-page .ct-member-role{font-size:11px!important}}
/* The select wrapper must contain the whole trigger to leave a real row gap. */
@media(max-width:991px){
#careers .custom-select{height:auto!important;min-height:52px!important;display:block!important;padding:0!important;position:relative!important}
#careers .select-trigger{height:52px!important;min-height:52px!important;margin:0!important}
#careers .select-dept-wrap{row-gap:18px!important;align-items:start!important}
#careers .select-dept-wrap>.field{height:auto!important;min-height:52px!important;align-self:start!important}
#careers .upload-wrapper{height:auto!important;min-height:0!important;position:relative!important;inset:auto!important;transform:none!important}
#careers .upload-box{min-height:68px!important;padding:12px!important;gap:12px!important}
#careers .upload-text{font-size:13px!important;letter-spacing:0!important;text-align:left!important;word-break:normal!important;overflow-wrap:break-word!important;line-break:strict!important;font-weight:400!important}
}
@media(max-width:991px){#careers form>.d-flex.select-dept-wrap{row-gap:18px!important}}
@media(max-width:991px){#careers .upload-wrapper{display:block!important;background:transparent!important}#careers .upload-box{background:#292828!important;border-radius:8px!important;max-height:none!important;min-height:72px!important}#careers .upload-btn{display:flex!important;align-items:center!important;justify-content:center!important;height:auto!important;line-height:1.5!important}}

/* Direct contact buttons, with room beside the name. */
#coreTeam .ct-card,.ct-page .ct-member-text{position:relative}
.ct-whatsapp{position:absolute!important;top:22px;right:20px;width:44px;height:44px;display:block!important;z-index:5;border-radius:10px;transition:transform .15s}
.ct-whatsapp[hidden]{display:none!important}
.ct-whatsapp img{display:block!important;width:44px!important;height:44px!important;object-fit:contain}
.ct-whatsapp:hover{transform:scale(1.06)}
.ct-whatsapp:focus-visible{outline:2px solid #d0b67a;outline-offset:4px}
#coreTeam .ct-card.has-whatsapp .ct-card-name,.ct-page .has-whatsapp .ct-member-name{padding-right:58px!important}
.ct-page .ct-member-text>.ct-whatsapp{top:0;right:0}
@media(max-width:600px){.ct-whatsapp{top:20px;right:18px}.ct-page .ct-member-text>.ct-whatsapp{top:0;right:0}}
