*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffaf9;color:#34262d;font-family:Arial,sans-serif;line-height:1.55}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a52e62;outline-offset:3px}[hidden]{display:none!important}.shell{max-width:1320px;margin:auto;padding:0 32px}.career-header{background:#fffdfb;border-bottom:1px solid #f5dce6}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px}.brand strong{font:bold 28px Georgia,serif;display:block}.brand small{color:#82747c;letter-spacing:2px;font-size:12px}.header-links{display:flex;gap:36px;align-items:center}.header-links a{font-size:15px;font-weight:600;color:#665c67}.header-links a{position:relative}.header-links a[aria-current]{color:#d54179}.header-links a[aria-current]::after{content:"";position:absolute;height:2px;background:currentColor;left:-8px;right:-8px;bottom:-11px}.head-actions{display:flex;gap:14px;align-items:center}.locale{border:1px solid #f5d4e1;border-radius:30px;padding:5px;display:flex;background:#fff0f5}.locale button{border:0;border-radius:22px;padding:9px 14px;background:none;color:#b83469;font-weight:bold}.locale button[aria-pressed=true]{background:#eb72a0;color:white}.account-heart{border:1px solid #f4d2e0;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;color:#db4b82;font-size:24px}.career-hero{padding:45px 0 32px;background:#fff2f6 url('/careers-sakura.png') right center/cover no-repeat;border-bottom:1px solid #f6dce6}.eyebrow{font-weight:bold;font-size:13px;letter-spacing:3px;color:#d34c7e;margin:0 0 16px}.career-hero h1{font:700 clamp(34px,4.4vw,58px)/1.15 Georgia,serif;margin:0 0 12px;letter-spacing:-1px}.career-hero p:last-child{font-size:20px;color:#786a78;margin:0;max-width:900px}.career-body{display:grid;grid-template-columns:290px minmax(0,1fr);gap:30px;padding-top:28px;padding-bottom:46px;min-height:550px}.filter-panel{border:1px solid #f4d4e2;border-radius:16px;background:#fffdfd;padding:24px;align-self:start}.filter-panel h2,.results-head h2{font:bold 30px/1.2 Georgia,serif;margin:0 0 18px}.field{display:block;margin-bottom:20px;font-size:14px;font-weight:600}.field input,.field select,.field textarea{display:block;width:100%;margin-top:8px;border:1px solid #ded4e0;background:white;border-radius:9px;min-height:44px;padding:11px 13px;color:#423546;font-weight:normal}.field textarea{resize:vertical;min-height:125px}.field small{display:block;color:#807180;font-weight:normal;margin-top:5px}.filter-panel fieldset{border:0;padding:0;margin:0 0 22px}.filter-panel legend{font-size:14px;font-weight:bold;margin-bottom:10px}.checkline{display:flex;gap:10px;align-items:flex-start;color:#706371;font-size:14px;margin:9px 0}.checkline input{accent-color:#de5d90;width:18px;height:18px;flex-shrink:0;margin:2px 0 0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;border-radius:32px;border:1px solid #e76b9a;background:#e96c9b;color:white;padding:13px 26px;font-weight:700;min-height:46px}.btn:hover{background:#d95688;text-decoration:none}.btn.secondary{background:white;color:#d14379}.filter-panel .btn{width:100%}.quiet{display:block;border:0;background:none;text-decoration:underline;color:#817083;margin:13px auto 0;font-size:13px}.results-head{display:flex;justify-content:space-between;align-items:center;margin:4px 0 22px;gap:18px}.results-head h2{margin:0;font-size:34px}.results-head span{color:#867887;font-size:14px}.job-card{display:flex;gap:22px;align-items:center;border:1px solid #f4d3e2;border-radius:17px;padding:27px 24px;margin-bottom:14px;background:#fff}.job-card:first-child{background:#fff1f6}.job-icon{height:58px;width:58px;border-radius:50%;background:#fce3ee;color:#ce4277;display:grid;place-items:center;flex-shrink:0}.job-icon img{height:25px;width:25px}.job-info{flex:1}.job-card h3{font:bold 25px/1.25 Georgia,serif;margin:0 0 9px}.meta{display:flex;gap:20px;flex-wrap:wrap;color:#827183;font-size:14px}.job-card .btn{white-space:nowrap;padding:11px 23px;font-size:14px}.empty{padding:44px 28px;border:1px solid #f1d7e2;border-radius:18px;background:white;color:#81727f}.empty h2{color:#42313d;font:700 27px Georgia,serif}.site-footer{position:relative;border-top:1px solid #f2d5e2;background:#fff1f6 url('/careers-sakura.png') right center/cover;padding:30px 32px 22px;text-align:center}.site-footer nav{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;font-size:13px;color:#756572}.site-footer .copyright{font-size:12px;color:#8a7785;border-top:1px solid #edcfde;padding-top:20px;max-width:590px;margin:22px auto 0}.motto{font:italic 20px Georgia,serif;color:#a47891;margin:18px 0 0}.application-shell{padding-top:28px;padding-bottom:45px;min-height:70vh}.back{font-size:14px;color:#cf437a;display:inline-block;margin-bottom:16px}.application-title{font:700 clamp(30px,3.5vw,48px)/1.15 Georgia,serif;margin:0 0 14px}.steps{display:flex;justify-content:space-between;gap:14px;list-style:none;padding:0;margin:30px 0}.steps li{display:flex;align-items:center;gap:12px;color:#8d7d8e;font-size:14px;flex:1}.steps li:after{content:'';height:1px;background:#f0d7e2;flex:1}.steps li:last-child:after{display:none}.steps span{display:grid;place-items:center;border:1px solid #d7cbd9;border-radius:50%;width:38px;height:38px;flex-shrink:0}.steps [aria-current] {color:#d9447e}.steps [aria-current] span{background:#e96999;color:white;border:0}.application-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px}.form-panel,.application-guide{border:1px solid #f1d0df;border-radius:16px;padding:28px 30px;background:white}.form-panel h2,.application-guide h2{font:bold 30px Georgia,serif;margin:0 0 6px}.subcopy{color:#827384;margin:0 0 26px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.fields .wide{grid-column:1/-1}.form-panel fieldset{border:0;margin:0;padding:0}.upload{border:1px dashed #cbb6ca;border-radius:10px;background:#fffafd;padding:18px;margin:8px 0 16px}.upload input{max-width:100%;font-size:14px}.application-guide{background:#fff7fa;align-self:start}.application-guide ol{padding-left:22px}.application-guide li{padding:9px 0 14px;color:#847484;font-size:14px}.application-guide strong{display:block;color:#493040;font:700 19px Georgia,serif;margin-bottom:4px}.application-guide p{font-size:14px;color:#847484;margin-top:25px;border-top:1px solid #f1d5e2;padding-top:22px}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:24px}.actions .quiet{margin:0}.status{color:#b33266;font-size:14px;margin:16px 0}.status:empty{display:none}.review-list{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px;font-size:14px}.review-list dt{font-weight:bold}.review-list dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.role-details{max-width:860px}.role-details h2{font:700 26px Georgia,serif;margin:28px 0 10px}.role-details p{white-space:pre-wrap;color:#786a77}.form-panel a{text-decoration:underline}.sample-note{background:#fff3d3;padding:10px 20px;text-align:center;color:#71591f}.application-list .job-card{align-items:flex-start}.notice{padding:15px 20px;background:#fff0f5;border-radius:12px;margin-bottom:20px;color:#a03766}.file-label{font-size:14px;color:#846b7d;overflow-wrap:anywhere}
@media(max-width:950px){.header-links{gap:18px}.career-body{grid-template-columns:250px 1fr;gap:20px}.job-card{flex-wrap:wrap;gap:15px}.job-card .btn{margin-left:73px}.job-card h3{font-size:22px}.application-grid{grid-template-columns:1fr 240px}.form-panel,.application-guide{padding:24px}.brand strong{font-size:23px}.brand img{width:48px;height:48px}.career-hero{background-size:auto 100%}}
@media(max-width:700px){.shell{padding-left:20px;padding-right:20px}.header-inner{min-height:84px;gap:12px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.header-links{order:3;width:100%;justify-content:center;gap:28px}.header-links a{font-size:14px}.head-actions{gap:8px}.account-heart{width:40px;height:40px}.locale button{padding:6px 10px}.career-hero{padding:32px 0;background-position:65% center}.career-hero h1{font-size:36px;max-width:440px}.career-hero p:last-child{font-size:16px;max-width:370px}.career-body{display:block;padding-top:20px}.filter-panel{margin-bottom:26px;padding:20px}.filter-panel fieldset{display:grid;grid-template-columns:1fr 1fr;gap:3px 10px}.filter-panel .checkline{font-size:12px}.job-card{padding:22px 18px}.job-info{min-width:170px}.job-icon{width:46px;height:46px}.job-card .btn{margin-left:61px}.results-head h2{font-size:29px}.application-grid{display:block}.application-guide{display:none}.steps{gap:7px}.steps li{font-size:11px;flex-direction:column;text-align:center;gap:6px}.steps li:after{display:none}.steps span{width:30px;height:30px}.fields{grid-template-columns:1fr}.form-panel{padding:23px 20px}.form-panel h2{font-size:27px}.application-title{font-size:32px}.review-list{grid-template-columns:1fr;gap:5px}.review-list dd{margin-bottom:13px}.site-footer nav{gap:16px}.brand small{font-size:10px}.brand strong{font-size:21px}}
.brand-mark{display:grid;place-items:center;width:58px;height:58px;flex-shrink:0;border-radius:50%;background:#ed739a;color:white;font:34px Georgia,serif}

/* Selected compact footer: clear center and paired corner blossoms. */
.site-footer{isolation:isolate;overflow:hidden;background:#fff8fa;padding:27px 24px 22px;min-height:126px}
.site-footer::before,.site-footer::after{content:"";position:absolute;z-index:-1;bottom:0;width:300px;height:145px;background:url('/careers-sakura.png') right center/640px auto no-repeat;pointer-events:none;opacity:.8}
.site-footer::before{left:0;transform:scaleX(-1)}.site-footer::after{right:0}
.site-footer nav{position:relative;gap:30px}.site-footer .copyright{position:relative;padding-top:17px;margin:18px auto 0;max-width:590px}
@media(max-width:700px){.site-footer::before,.site-footer::after{width:95px;opacity:.35}.site-footer nav{gap:18px}.site-footer .copyright{max-width:80%}}
.site-footer::before{transform:scale(-1,-1)}.site-footer::after{transform:scaleY(-1)}

/* Keep careers branding at the same scale as the main website. */
.career-header{background:rgba(255,250,246,.96)}
.header-inner{max-width:none;min-height:70px;padding:13px clamp(16px,3vw,48px);gap:12px}
.career-header .brand{gap:9px;flex-shrink:0}
.career-header .brand-mark{width:43px;height:43px;border-radius:50% 45% 50% 42%;font:21px/1.6 serif;box-shadow:0 7px 16px #ee789940}
.career-header .brand strong{font:700 16px/1.15 Georgia,'Yu Mincho',serif}
.career-header .brand small{display:block;margin-top:3px;font:12px/1.15 'Segoe UI',sans-serif;letter-spacing:2px}
.header-links{flex:1;justify-content:center;gap:30px}
.header-links a{display:inline-flex;align-items:center;min-height:44px;font:700 14px/1.4 'Segoe UI','Yu Gothic UI',sans-serif}
.header-links a[aria-current]::after{bottom:7px;left:0;right:0}
.head-actions{gap:12px}
.locale{padding:3px;gap:2px;background:#f9e7ee}
.locale button{min-width:35px;min-height:34px;padding:5px 8px;font:700 14px/1.4 'Segoe UI','Yu Gothic UI',sans-serif}
.account-heart{width:44px;height:44px;font-size:24px}
.career-hero{padding:30px 0 28px}
.career-hero .eyebrow{margin-bottom:12px}
.career-hero h1{font-size:clamp(32px,3.6vw,48px)}
.career-hero p:last-child{font-size:18px}
@media(min-width:1451px){.career-header .brand strong{font-size:17px}.career-header .brand-mark{width:42px;height:42px}}
@media(max-width:700px){
.header-inner{padding:10px 14px;gap:6px 12px;min-height:70px}
.career-header .brand strong{font-size:16px}
.career-header .brand small{font-size:10px}
.career-header .brand-mark{width:36px;height:36px;font-size:20px}
.header-links{flex-basis:100%;gap:28px}
.head-actions{gap:8px}
.career-hero{padding:26px 0}
.career-hero h1{font-size:34px}
.career-hero p:last-child{font-size:16px}
}

/* Keep an empty search result compact and aligned with the card inset. */
#job-results > .empty{padding:24px 28px}
#job-results > .empty > p{margin:0}
.applications-page{max-width:1000px;padding-top:42px;padding-bottom:64px;min-height:450px}
.applications-page .application-title{font-size:40px;margin-bottom:28px}
.application-card{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#fff;border:1px solid #f3dbe5;border-radius:22px;padding:26px 28px;margin-bottom:18px;box-shadow:0 8px 24px #7a3f5910}
.application-card h2{font:700 24px/1.25 Georgia,serif;margin:0 0 8px}
.application-card p{margin:0;color:#81727f;font-size:14px}
.application-card .application-date{margin-top:22px;font-size:13px}
.application-card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:24px;flex-shrink:0}
.application-card-actions .btn{padding:11px 20px;font-size:14px}
.application-badge{display:inline-flex;background:#fce8ef;color:#c84479;border-radius:99px;padding:6px 14px;font-size:13px;font-weight:700}
.application-badge.is-draft{background:#f3eef4;color:#716374}
.applications-empty{max-width:600px;margin:0 auto;text-align:center;background:white;border:1px solid #f3dbe5;border-radius:22px;padding:30px}
.application-empty-icon{display:grid;place-items:center;margin:0 auto 12px;background:#fff0f5;color:#e66596;width:58px;height:58px;border-radius:50%;font-size:32px}
.applications-empty h2{font:700 28px Georgia,serif;margin:0 0 12px}
.applications-empty p{color:#81727f;margin:0 0 22px}
.application-detail{margin-top:24px}
@media(max-width:700px){.application-card{align-items:flex-start;flex-direction:column;padding:22px}.application-card-actions{width:100%;flex-direction:row;align-items:center;flex-wrap:wrap;gap:14px}.applications-page .application-title{font-size:34px}}
