:root{color-scheme:light;--ink:#211d1a;--navy:#26314c;--muted:#5c554d;--gold:#a08b5e;--paper:#faf8f4;--sand:#f2ece0;--line:rgba(33,29,26,.12)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Zen Kaku Gothic New",system-ui,sans-serif}
a{color:var(--navy)}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:20px 44px;background:rgba(250,248,244,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(33,29,26,.08)}
.site-logo{display:block;width:120px;height:44px;object-fit:contain}
.site-nav{display:flex;align-items:center;gap:18px;font-size:13px}
.site-nav a{text-decoration:none;color:#4a443e}
.site-nav .contact-link{background:var(--navy);color:#fff;padding:11px 20px;font-weight:700}
.job-hero{padding:68px 44px 56px;background:var(--sand)}
.job-wrap{max-width:980px;margin:0 auto}
.eyebrow{font-size:12px;letter-spacing:.26em;color:var(--gold);font-weight:700;margin-bottom:16px}
h1,h2{font-family:"Shippori Mincho",serif}
h1{font-size:42px;line-height:1.45;margin:0 0 18px}
.lead{font-size:16px;line-height:2;color:var(--muted);max-width:760px;margin:0}
.breadcrumbs{font-size:12px;color:#8a8178;margin-top:24px}
.breadcrumbs a{color:#8a8178;text-decoration:none}
.job-main{padding:64px 44px 96px}
.job-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
.job-section{padding:0 0 42px;margin-bottom:42px;border-bottom:1px solid var(--line)}
.job-section h2{font-size:25px;margin:0 0 20px}
.job-section p,.job-section li{font-size:14px;line-height:2;color:var(--muted)}
.job-section ul{padding-left:1.3em;margin:0}
.job-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.8;background:#fff;border:1px solid var(--line)}
.job-table th,.job-table td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.job-table th{width:150px;color:var(--navy);background:#f7f3eb}
.job-table tr:last-child th,.job-table tr:last-child td{border-bottom:0}
.job-aside{position:sticky;top:110px;background:#fff;border:1px solid var(--line);padding:26px}
.job-aside strong{display:block;font-family:"Shippori Mincho",serif;font-size:20px;margin-bottom:12px}
.job-aside p{font-size:13px;line-height:1.8;color:var(--muted)}
.apply-button{display:block;text-align:center;text-decoration:none;background:var(--navy);color:#fff;padding:16px 18px;font-weight:700;margin:22px 0 12px}
.back-link{display:block;text-align:center;font-size:12px}
.site-footer{background:var(--ink);color:#a9a298;padding:42px 44px}
.footer-inner{max-width:980px;margin:0 auto;display:flex;justify-content:space-between;gap:24px;align-items:center}
.footer-inner img{width:120px;filter:grayscale(1) invert(1);opacity:.9}
.footer-inner nav{display:flex;gap:22px;font-size:12px}
.footer-inner a{color:#a9a298;text-decoration:none}
@media(max-width:760px){
  .site-header{padding:15px 22px}
  .site-logo{width:100px;height:38px}
  .site-nav a:not(.contact-link){display:none}
  .site-nav .contact-link{padding:9px 13px}
  .job-hero,.job-main{padding-left:24px;padding-right:24px}
  .job-hero{padding-top:48px;padding-bottom:42px}
  h1{font-size:32px}
  .job-grid{grid-template-columns:1fr;gap:20px}
  .job-aside{position:static}
  .job-table th,.job-table td{display:block;width:100%}
  .job-table th{padding-bottom:6px;border-bottom:0}
  .job-table td{padding-top:6px}
  .footer-inner{align-items:flex-start;flex-direction:column}
  .footer-inner nav{flex-wrap:wrap}
}
