/* ═══ RECRUIT PAGE (인재채용) ─ Figma 1Zd6qSv9DebJX4pq8troe8 / 105:972 ═══ */

.page-recruit{position:relative;width:100%;background:#f8f9fb;color:#1a1a1a;overflow:hidden;--side-pad:440px}

/* ── HERO 800px (배경 이미지 + 화이트 블러 오버레이) ── */
.rc-hero{position:relative;height:400px;overflow:hidden;margin-top:97px}
.rc-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat}
.rc-hero-overlay{position:absolute;inset:0;background:rgba(255,255,255,.20);backdrop-filter:blur(3.5px);-webkit-backdrop-filter:blur(3.5px)}
.rc-hero-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:0 20px;z-index:2}
.rc-hero-title{font-size:44px;font-weight:800;line-height:54px;letter-spacing:1px;text-transform:uppercase;color:#1a1a1a}
.rc-hero-sub{font-size:22px;font-weight:400;line-height:1.3;color:#1a1a1a}

/* ── INTRO : 사진 + 그리팅 (배경 #f8f9fb) ── */
.rc-intro{position:relative;background:#f8f9fb;max-width:1920px;margin:0 auto;padding:60px var(--side-pad);display:flex;align-items:center;justify-content:center;gap:80px;box-sizing:border-box}
.rc-intro-photo{flex:0 0 460px;width:460px;height:480px;border-radius:22px;background-size:cover;background-position:center}
.rc-intro-text{flex:0 0 auto;font-size:14px;font-weight:600;line-height:24px;color:#1a1a1a;white-space:nowrap}
.rc-intro-text p{margin:0}
.rc-intro-text p+p{margin-top:24px}

/* ── JOB DESCRIPTIONS — 풀-와이드 화이트 배경, 콘텐츠는 좁게 ── */
.rc-jobs{background:#FFFFFF;width:100%;height:930px;margin:0 auto;padding:50px 0 130px;overflow:hidden;box-sizing:border-box}
.rc-jobs-inner{width:820px;margin:0 auto;display:flex;flex-direction:column;gap:90px}
/* 각 직무 블록 — 축소 비율 약 86% */
.rc-job{position:relative;width:820px}
.rc-jobs-inner > .rc-job:nth-child(1){height:200px}
.rc-jobs-inner > .rc-job:nth-child(2){height:225px}
.rc-jobs-inner > .rc-job:nth-child(3){height:215px}

.rc-job-head{margin:0}
.rc-job-icon{position:absolute;left:0;top:0;width:38px;height:38px;border-radius:5px;display:flex;align-items:center;justify-content:center}
.rc-job-icon img{width:24px;height:24px;object-fit:contain;filter:brightness(0) invert(1)}
.rc-job-title{position:absolute;left:58px;top:6px;font-size:26px;font-weight:800;line-height:28px;margin:0;white-space:nowrap}

.rc-job-desc{position:absolute;left:0;top:58px;width:100%;font-size:15px;font-weight:500;line-height:22px;color:#1A1A1A;margin:0}
.rc-job-divider{position:absolute;left:0;top:96px;width:820px;height:1px;background:rgba(26,26,26,.1);margin:0}

.rc-job-body{position:absolute;left:0;top:114px;width:100%;display:block}
.rc-job-col{position:absolute;top:0}
.rc-job-col-cond{left:0;display:flex;flex-direction:column;gap:10px}
.rc-jobs-inner > .rc-job:nth-child(1) .rc-job-col-cond{width:170px}
.rc-jobs-inner > .rc-job:nth-child(2) .rc-job-col-cond{width:280px}
.rc-jobs-inner > .rc-job:nth-child(3) .rc-job-col-cond{width:215px}
.rc-job-col-pay{left:380px;width:440px;height:80px}

.rc-job-col h4{font-size:14px;font-weight:700;line-height:24px;color:#1A1A1A;margin:0}
.rc-job-col-cond ul{list-style:disc;padding-left:20px;margin:0}
.rc-job-col-cond li{font-size:13px;font-weight:400;line-height:20px;color:#1A1A1A}
.rc-job-col-pay h4{position:absolute;left:0;right:0;top:0;height:16px}
.rc-job-col-pay p{position:absolute;left:0;top:30px;width:440px;font-size:13px;font-weight:400;line-height:20px;color:#1A1A1A;margin:0}

/* ── 채용공고 목록 (패턴 배경) ── */
.rc-list-section{position:relative;height:auto;min-height:900px;padding:60px 0 80px;background:#f8f9fb;box-sizing:border-box}
.rc-list-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.10;transform:rotate(180deg);z-index:0;pointer-events:none}
.rc-list-inner{position:relative;z-index:1;max-width:1920px;margin:0 auto;padding:0 var(--side-pad);text-align:center}
.rc-list-title{font-size:32px;font-weight:700;color:#1a1a1a;line-height:44px;margin:0 0 14px 0}
.rc-list-sub{font-size:17px;font-weight:400;color:#7d7d7d;margin:0 0 40px 0;line-height:1.2}

/* Table card */
.rc-table-card{background:#fff;border-radius:18px;box-shadow:0 4px 22px rgba(0,0,0,.12);padding:26px 36px;text-align:left;max-width:1040px;margin:0 auto}
.rc-table-row{display:grid;grid-template-columns:90px 1fr 100px 100px 80px 80px;align-items:center;padding:0 18px;min-height:38px}
.rc-table-head{min-height:auto;margin-bottom:14px}
.rc-cell{font-size:15px;font-weight:400;color:#1a1a1a;text-align:center}
.rc-table-head .rc-cell{font-size:16px;font-weight:300;color:#1a1a1a;text-align:center}
.rc-table-head .rc-cell-title{text-align:center}
.rc-cell-title{text-align:center}
.rc-td-title{font-size:17px !important;font-weight:600 !important;color:#1a1a1a;text-align:left !important;font-family:'Inter','Pretendard JP',sans-serif;padding-left:18px}
.rc-table-line{height:2.5px;background:#000b83;margin:0 0 18px 0}
.rc-status{display:inline-flex;align-items:center;justify-content:center;width:72px;height:28px;border-radius:5px;font-size:14px;font-weight:600;line-height:1}
.rc-row-divider{height:1px;background:rgba(26,26,26,.10);margin:12px 0}

/* ── RESPONSIVE ── */

/* 게시판 드롭다운 스무스 애니메이션 */
.rc-row-wrap{cursor:pointer}
.rc-table-row[data-rc-toggle]{transition:background .15s}
.rc-row-wrap:hover .rc-table-row[data-rc-toggle]{background:rgba(0,11,131,.025)}
.rc-row-detail{max-height:0;overflow:hidden;transition:max-height .45s ease}
.rc-row-wrap.open .rc-row-detail{max-height:300px}
.rc-row-detail-inner{padding:18px 22px 4px;border-top:1px dashed rgba(26,26,26,.12);margin-top:8px}
.rc-row-detail-inner p{margin:0 0 8px;font-size:13px;line-height:22px;color:#1a1a1a}
.rc-row-detail-inner .rc-detail-meta{color:rgba(26,26,26,.7);font-size:12px}
.rc-row-detail-inner .rc-detail-meta strong{color:#1a1a1a;font-weight:600;margin-right:4px}
.rc-row-detail-inner .rc-detail-cta{font-size:13px;color:#1a1a1a}
.rc-row-detail-inner .rc-detail-cta a{color:#0047ab;text-decoration:underline}

.rc-jobs-inner > .rc-job:nth-child(3){margin-bottom:50px}

/* table-row as anchor — keep visual identical, just remove default anchor styles */
a.rc-table-row{text-decoration:none;color:inherit;cursor:pointer;transition:background .15s}
a.rc-table-row:hover{background:rgba(0,11,131,.02)}
a.rc-table-row:hover .rc-td-title{color:#0047AB}
.pn-single-info{display:flex;flex-wrap:wrap;gap:24px;padding:18px 26px;margin-bottom:30px;background:#F4F8FB;border-radius:8px;font-size:14px;color:#1A1A1A}
.pn-single-info span strong{margin-right:6px;color:#0047AB}


/* ═══ RECRUIT CARDS (リクナビ스타일) ═══ */
.rc-filters{display:flex;gap:10px;margin:0 auto 36px;justify-content:center;flex-wrap:wrap;max-width:1080px}
.rc-filter{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:30px;border:1.5px solid #d6d6d6;background:#fff;color:#1a1a1a;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit;line-height:1}
.rc-filter:hover{border-color:#00064B;color:#00064B}
.rc-filter.active{background:#00064B;color:#fff;border-color:#00064B}
.rc-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:rgba(0,0,0,.06);color:#1a1a1a;font-size:12px;font-weight:700}
.rc-filter.active .rc-filter-count{background:rgba(255,255,255,.22);color:#fff}
.rc-filter-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.rc-filter-urgent .rc-filter-dot{background:#E32929}
.rc-filter-regular .rc-filter-dot{background:#00064B}
.rc-filter-rolling .rc-filter-dot{background:#0047AB}
.rc-filter-closed .rc-filter-dot{background:#9CA3AF}

.rc-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1080px;margin:0 auto}
.rc-cards-empty{padding:80px 0;text-align:center;color:#7D7D7D;font-size:15px;background:#fff;border-radius:14px;grid-column:1/-1}

.rc-card{display:flex;flex-direction:column;gap:14px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:26px 28px;text-decoration:none;color:inherit;transition:all .25s ease;cursor:pointer;position:relative;overflow:hidden}
.rc-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:transparent;transition:background .25s}
.rc-card:hover{border-color:#00064B;box-shadow:0 12px 28px rgba(0,6,75,.10);transform:translateY(-3px)}
.rc-card-urgent::before{background:#E32929}
.rc-card-regular::before{background:#00064B}
.rc-card-rolling::before{background:#0047AB}
.rc-card-closed{opacity:.62}
.rc-card-closed::before{background:#9CA3AF}

.rc-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.rc-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:1px;line-height:1;flex-shrink:0}
.rc-badge-urgent{background:#FFE9E9;color:#E32929;border:1px solid #FFD0D0}
.rc-badge-regular{background:#EAEEFF;color:#00064B;border:1px solid #CFD7FF}
.rc-badge-rolling{background:#E4F0FF;color:#0047AB;border:1px solid #BFD9FF}
.rc-badge-closed{background:#F3F4F6;color:#6E6E6E;border:1px solid #D6D6D6}

.rc-card-deadline{font-size:12px;color:#6E6E6E;font-weight:500}
.rc-card-deadline-urgent{color:#E32929;font-weight:700}
.rc-card-deadline-closed{color:#9CA3AF;font-weight:600}

.rc-card-title{margin:2px 0 0;font-size:17px;font-weight:700;line-height:1.5;color:#1a1a1a;letter-spacing:-.3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:51px}

.rc-card-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:#6E6E6E;line-height:1.4}
.rc-card-meta-item{display:inline-flex;align-items:center;gap:3px;letter-spacing:-.2px}

.rc-card-desc{margin:0;font-size:13px;color:#4b4b4b;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.3px}

.rc-card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:14px;border-top:1px dashed rgba(0,0,0,.08)}
.rc-card-no{font-size:11px;color:#9CA3AF;letter-spacing:.5px;font-weight:500}
.rc-card-cta{display:inline-flex;align-items:center;color:#00064B;font-size:13px;font-weight:700;letter-spacing:-.3px;transition:transform .2s}
.rc-card-cta::after{content:"→";margin-left:6px;transition:transform .2s}
.rc-card:hover .rc-card-cta::after{transform:translateX(4px)}
.rc-card-closed .rc-card-cta{color:#9CA3AF}

@media (max-width:900px){
  .rc-cards{grid-template-columns:1fr}
  .rc-filters{justify-content:flex-start;overflow-x:auto;padding-bottom:6px}
  .rc-filter{white-space:nowrap;flex-shrink:0}
}
