/* RECRUITMENT page only. Shared header/nav/footer/breadcrumb components stay in style.css. */
.recruit-page{background:#f8f5ed;color:var(--ink)}
.recruit-page .heading-line{display:block;white-space:nowrap}
.recruit-hero{position:relative;display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);min-height:610px;background:#eef1e7;overflow:hidden}
.recruit-hero-copy{position:relative;z-index:2;padding:clamp(64px,7vw,104px) clamp(34px,5vw,78px);display:flex;flex-direction:column;justify-content:center;min-width:0;background:linear-gradient(90deg,#eef1e7 0%,#eef1e7 86%,rgba(238,241,231,.86) 94%,rgba(238,241,231,0) 100%)}
.recruit-hero h1,.recruit-intro h2,.recruit-section-head h2,.recruit-apply h2{font-family:var(--jpserif);font-weight:500;letter-spacing:.025em}
.recruit-hero h1{margin:0;font-size:clamp(42px,4.15vw,60px);line-height:1.43;color:var(--green)}
.recruit-hero-lead{max-width:42em;margin:25px 0 0;font-size:14px;line-height:2;color:#50564f}
.recruit-hero-summary{margin-top:30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid rgba(31,57,45,.28);border-radius:4px;overflow:hidden;background:rgba(255,255,255,.42)}
.recruit-summary-item{min-height:76px;padding:13px 16px;display:flex;align-items:center;gap:13px;border-right:1px solid rgba(31,57,45,.22);border-bottom:1px solid rgba(31,57,45,.22);min-width:0}
.recruit-summary-item:nth-child(2n){border-right:0}.recruit-summary-item:nth-last-child(-n+2){border-bottom:0}
.recruit-summary-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;color:var(--green2)}
.recruit-summary-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.recruit-summary-text{display:block;min-width:0}.recruit-summary-text small{display:block;font-family:var(--serif);font-size:9px;font-weight:600;letter-spacing:.14em;color:#7a806f}.recruit-summary-text strong{display:block;margin-top:3px;font-size:12px;line-height:1.55;font-weight:600;color:#26382f}
.recruit-hero-visual{margin:0;position:relative;overflow:hidden;background:#dedfd6}
.recruit-hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center center}
.recruit-hero-visual:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(238,241,231,.32) 0%,rgba(238,241,231,0) 14%);pointer-events:none}
.recruit-hero-visual:after{content:"RECRUIT";position:absolute;right:26px;bottom:18px;z-index:2;font-family:var(--serif);font-size:clamp(58px,7vw,96px);line-height:1;letter-spacing:.08em;color:rgba(255,255,255,.70)}

.recruit-intro{padding:clamp(78px,7vw,104px) clamp(34px,7vw,108px);display:grid;grid-template-columns:minmax(0,.64fr) minmax(0,1.36fr);gap:clamp(48px,7vw,104px);background:#fbfaf6}
.recruit-intro h2{margin:0;font-size:clamp(38px,3.4vw,50px);line-height:1.5;color:var(--green)}
.recruit-intro-copy{min-width:0}.recruit-intro-copy p{margin:0 0 14px;font-size:14px;line-height:2;color:#565b54}
.recruit-work-list{margin-top:30px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fffdf8}
.recruit-work-item{min-height:142px;padding:20px 22px;display:flex;align-items:center;gap:18px;border-right:1px solid var(--line);min-width:0}
.recruit-work-item:last-child{border-right:0}
.recruit-work-icon{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;color:#725f38}
.recruit-work-icon svg{width:54px;height:54px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.recruit-work-copy{display:flex;flex-direction:column;min-width:0}.recruit-work-no{font-family:var(--serif);font-size:15px;line-height:1;font-weight:600;letter-spacing:.14em;color:var(--green2)}
.recruit-work-item strong{margin-top:9px;font-family:var(--jpserif);font-size:23px;line-height:1.3;font-weight:500;color:var(--green)}
.recruit-work-item small{margin-top:6px;font-size:10px;line-height:1.6;color:#777b73}

.recruit-section{padding:clamp(76px,7vw,106px) clamp(34px,7vw,108px)}
.recruit-section.alt{background:#eeeadf}
.recruit-section-head{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);gap:clamp(34px,6vw,92px);align-items:end;margin-bottom:34px}
.recruit-section-head h2{margin:0;font-size:clamp(36px,3.05vw,46px);line-height:1.48;color:var(--green)}
.recruit-section-head>p{margin:0;font-size:12px;line-height:1.9;color:var(--muted)}
.recruit-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 52px;border-top:1px solid var(--line)}
.recruit-row{display:grid;grid-template-columns:minmax(100px,.33fr) minmax(0,1fr);gap:18px;padding:16px 0;border-bottom:1px solid var(--line);min-width:0}
.recruit-row dt{font-size:11px;font-weight:700;color:var(--green)}
.recruit-row dd{margin:0;font-size:12px;line-height:1.75;color:#4f544e}

.recruit-pay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.recruit-pay-card{padding:28px 30px;border:1px solid var(--line);border-radius:4px;background:#fbfaf6}
.recruit-pay-card h3{margin:0 0 18px;padding-bottom:15px;border-bottom:1px solid var(--line);font-family:var(--jpserif);font-size:26px;font-weight:500;color:var(--green)}
.recruit-pay-card dl{margin:0}.recruit-pay-card dl>div{padding:12px 0;border-bottom:1px solid rgba(217,209,194,.72)}.recruit-pay-card dl>div:last-child{border-bottom:0}
.recruit-pay-card dt{font-size:10px;font-weight:700;color:var(--green2)}.recruit-pay-card dd{margin:4px 0 0;font-size:12px;line-height:1.8;color:#4b514b}
.recruit-hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4vw,56px)}
.recruit-hours-card{padding:26px 0 0;border-top:1px solid var(--line)}
.recruit-hours-card h3{margin:0 0 18px;font-family:var(--jpserif);font-size:26px;font-weight:500;color:var(--green)}
.recruit-hours-card p{margin:0 0 11px;font-size:12px;line-height:1.9;color:#50554f}

.recruit-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:4px;overflow:hidden;background:rgba(255,255,255,.46)}
.recruit-benefit-item{min-height:105px;padding:20px 28px;display:flex;align-items:center;gap:18px;border-right:1px solid var(--line)}.recruit-benefit-item:last-child{border-right:0}
.recruit-benefit-icon{width:44px;height:44px;flex:0 0 44px;color:var(--green2)}.recruit-benefit-icon svg{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.recruit-benefit-item>span:last-child{display:flex;flex-direction:column}.recruit-benefit-item strong{font-family:var(--jpserif);font-size:18px;font-weight:500;color:var(--green)}.recruit-benefit-item small{margin-top:4px;font-size:11px;color:#72776f}

.recruit-apply{padding:clamp(78px,7vw,104px) 24px;text-align:center;background:var(--green);color:#fff}
.recruit-apply .eyebrow{color:#c7d39f}.recruit-apply h2{margin:0 auto;font-size:clamp(36px,3.35vw,50px);line-height:1.5}.recruit-apply>p:not(.eyebrow){max-width:720px;margin:18px auto 0;font-size:13px;line-height:2;color:#dce4df}
.recruit-apply-actions{margin:28px auto 0;display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap}
.recruit-entry,.recruit-phone{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:50px;padding:12px 20px;font-size:12px;font-weight:600;letter-spacing:.04em}
.recruit-entry{min-width:248px;background:#f8f5ed;color:var(--green)}.recruit-entry b{font-family:var(--serif);font-size:18px;font-weight:500}
.recruit-phone{min-width:248px;border:1px solid rgba(255,255,255,.52);color:#fff}.recruit-phone b{font-size:15px;font-weight:400}
.recruit-contact-note{margin-top:13px!important;font-size:10px!important;color:#bfcac3!important}

@media(max-width:1040px){
  .recruit-hero{grid-template-columns:1fr;min-height:auto}.recruit-hero-copy{background:#eef1e7}.recruit-hero-visual{height:500px}.recruit-intro,.recruit-section-head{grid-template-columns:1fr;gap:28px}.recruit-table{grid-template-columns:1fr}.recruit-pay-grid,.recruit-hours-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .recruit-page .heading-line{white-space:nowrap}
  .recruit-hero-copy{padding:50px 22px 40px}.recruit-hero h1{font-size:30px;line-height:1.5}.recruit-hero-lead{margin-top:20px;font-size:12px}.recruit-hero-summary{grid-template-columns:1fr}.recruit-summary-item{border-right:0}.recruit-summary-item:nth-last-child(-n+2){border-bottom:1px solid rgba(31,57,45,.22)}.recruit-summary-item:last-child{border-bottom:0}.recruit-hero-visual{height:390px}.recruit-hero-visual:after{right:14px;bottom:10px;font-size:52px}
  .recruit-intro,.recruit-section{padding:66px 22px}.recruit-intro h2,.recruit-section-head h2,.recruit-apply h2{font-size:29px;line-height:1.55}.recruit-intro-copy p{font-size:12px}
  .recruit-work-list{grid-template-columns:1fr}.recruit-work-item{min-height:106px;padding:17px 20px;border-right:0;border-bottom:1px solid var(--line)}.recruit-work-item:last-child{border-bottom:0}.recruit-work-icon{width:48px;height:48px;flex-basis:48px}.recruit-work-icon svg{width:46px;height:46px}.recruit-work-item strong{font-size:21px}
  .recruit-row{grid-template-columns:104px minmax(0,1fr);gap:14px}.recruit-pay-card{padding:23px 20px}.recruit-benefits{grid-template-columns:1fr}.recruit-benefit-item{border-right:0;border-bottom:1px solid var(--line)}.recruit-benefit-item:last-child{border-bottom:0}
  .recruit-apply{padding:72px 20px}.recruit-apply-actions{flex-direction:column}.recruit-entry,.recruit-phone{width:min(100%,330px)}
}
@media(max-width:390px){
  .recruit-hero h1{font-size:28px}.recruit-summary-item{padding:12px 13px}.recruit-summary-icon{width:30px;height:30px;flex-basis:30px}.recruit-summary-icon svg{width:28px;height:28px}.recruit-row{grid-template-columns:1fr;gap:5px}.recruit-page .heading-line{white-space:normal}.recruit-hero h1 .heading-line,.recruit-intro h2 .heading-line,.recruit-apply h2 .heading-line{white-space:nowrap}
}
