/* ===== RECRUITMENT MODULE CSS ===== */
/* Hero – Index */
.rec-hero{background:#1f4030;padding:72px 0 64px}.rec-hero .container{display:flex;justify-content:center}.rec-hero__content{width:100%;max-width:780px;text-align:center}.rec-hero__content h1{color:#fff;font-size:2.6rem;font-weight:700;margin:0 0 36px;line-height:1.25}.rec-hero__accent{color:#c4622d}.rec-hero__form{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:24px 24px 20px}.rec-hero__fields{display:flex;gap:16px;margin-bottom:16px}.rec-hero__field{flex:1;min-width:0;text-align:left}.rec-hero__field label{display:block;font-size:11px;font-weight:700;color:#a8c9b5;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}.rec-hero__field input{width:100%;padding:11px 14px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff;border-radius:4px;font-size:15px;outline:none;box-sizing:border-box}.rec-hero__field input::placeholder{color:rgba(255,255,255,.45)}.rec-hero__field input:focus{border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.18)}.rec-hero__btn{width:100%;padding:13px;background:#c4622d;border:none;color:#fff;font-size:15px;font-weight:700;border-radius:4px;cursor:pointer;letter-spacing:.02em}.rec-hero__btn:hover{background:#a84e22}
/* Purpose section */
.rec-purpose{background:#f5f0e8;text-align:center;padding:64px 20px}.rec-purpose__label{font-size:11px;font-weight:700;letter-spacing:.12em;color:#6b5f4e;text-transform:uppercase;margin:0 0 16px}.rec-purpose h2{font-size:2rem;font-weight:700;max-width:640px;margin:0 auto 16px;color:#1a1a1a}.rec-purpose__desc{color:#555;max-width:520px;margin:0 auto 20px;line-height:1.7}.rec-purpose__link{color:#2d5a3d;font-weight:600;text-decoration:underline}.rec-purpose__link:hover{color:#c4622d}
/* Career areas */
.rec-areas{background:#fff;padding:64px 0}.rec-areas .container{text-align:center}.rec-areas h2{font-size:1.9rem;font-weight:700;margin:0 0 6px}.rec-areas__sub{color:#777;margin:0 0 36px}.rec-areas__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:left}.rec-area-card{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:4/3;display:flex;align-items:flex-end;background:#2d5a3d;cursor:pointer;text-decoration:none}.rec-area-card__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.rec-area-card:hover .rec-area-card__bg{transform:scale(1.05)}.rec-area-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.1) 60%)}.rec-area-card__info{position:relative;z-index:1;padding:16px;color:#fff}.rec-area-card__arrow{position:absolute;top:12px;right:12px;z-index:1;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px}.rec-area-card__name{font-size:1rem;font-weight:700;margin:0 0 2px}.rec-area-card__count{font-size:.8rem;opacity:.85}
/* Why join */
.rec-why{background:#f5f0e8;padding:64px 0}.rec-why .container{text-align:center}.rec-why h2{font-size:1.9rem;font-weight:700;margin:0 0 36px}.rec-why__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.rec-why-item__icon{width:52px;height:52px;background:#2d5a3d;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.rec-why-item__icon svg{fill:#fff;width:24px;height:24px}.rec-why-item h3{font-size:1.05rem;font-weight:700;margin:0 0 8px}.rec-why-item p{color:#555;font-size:.9rem;line-height:1.6;margin:0}
/* CTA */
.rec-cta{background:#1f4030;padding:48px 0}.rec-cta .container{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.rec-cta h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 6px}.rec-cta p{color:#a8c9b5;margin:0}.rec-cta__btn{padding:12px 28px;background:#c4622d;color:#fff;font-weight:600;font-size:.95rem;border-radius:4px;white-space:nowrap;text-decoration:none}.rec-cta__btn:hover{background:#a84e22;color:#fff}
/* ===== LISTING PAGE ===== */
.rec-listing-hero{background:#2d5a3d;min-height:200px;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}.rec-listing-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3}.rec-listing-hero h1{position:relative;z-index:1;color:#fff;font-size:2rem;font-weight:700;margin:0;padding:0 20px}
/* Search bar */
.rec-listing-searchbar{background:#f5f5f5;border-bottom:1px solid #e0e0e0;padding:20px 0}.rec-listing-searchbar .container{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.rec-listing-searchbar input{flex:1;min-width:180px;padding:10px 14px;border:1px solid #ccc;border-radius:4px;font-size:14px;outline:none}.rec-listing-searchbar input:focus{border-color:#2d5a3d}.rec-listing-searchbar__btn{padding:10px 24px;background:#2d5a3d;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.rec-listing-searchbar__btn:hover{background:#1f4030}
/* Listing layout */
.rec-listing-wrap{padding:32px 0 60px}.rec-listing-inner{display:flex;gap:28px;align-items:flex-start}.rec-listing-sidebar{width:220px;flex-shrink:0}.rec-listing-results{flex:1;min-width:0}
/* Sidebar filters */
.rec-filter-section{margin-bottom:24px;border-bottom:1px solid #e8e8e8;padding-bottom:20px}.rec-filter-section:last-child{border-bottom:none}.rec-filter-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#555;margin:0 0 12px}.rec-filter-list{list-style:none;padding:0;margin:0}.rec-filter-list li{margin-bottom:7px}.rec-filter-list a{color:#333;font-size:.9rem;display:flex;justify-content:space-between;text-decoration:none}.rec-filter-list a:hover{color:#2d5a3d}.rec-filter-list a.active{color:#2d5a3d;font-weight:600}.rec-filter-list .count{color:#888;font-size:.8rem}
/* Results header */
.rec-results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e8e8e8}.rec-results-count{font-size:.9rem;color:#555}.rec-results-count strong{color:#1a1a1a}
/* Job cards */
.rec-job-card{border:1px solid #e0e0e0;border-radius:6px;padding:20px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;background:#fff;transition:box-shadow .2s}.rec-job-card:hover{box-shadow:0 3px 12px rgba(0,0,0,.1)}.rec-job-card__main{flex:1;min-width:0}.rec-job-card__title{font-size:1.05rem;font-weight:700;color:#1a1a1a;text-decoration:none;display:block;margin-bottom:6px}.rec-job-card__title:hover{color:#2d5a3d}.rec-job-card__location{font-size:.85rem;color:#555;display:flex;align-items:center;gap:5px;margin-bottom:8px}.rec-job-card__location svg{width:14px;height:14px;fill:#888;flex-shrink:0}.rec-job-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.rec-job-card__tag{font-size:.75rem;padding:3px 10px;border-radius:20px;background:#e8f2ec;color:#2d5a3d;font-weight:500}.rec-job-card__tag--type{background:#eef0f5;color:#555}.rec-job-card__meta{font-size:.8rem;color:#888}.rec-job-card__actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.rec-job-card__apply{display:inline-block;padding:9px 18px;background:#2d5a3d;color:#fff;border-radius:4px;font-size:.85rem;font-weight:600;text-decoration:none;text-align:center;white-space:nowrap}.rec-job-card__apply:hover{background:#1f4030;color:#fff}.rec-job-card__refer{display:inline-block;padding:8px 18px;border:1px solid #2d5a3d;color:#2d5a3d;border-radius:4px;font-size:.85rem;font-weight:600;text-decoration:none;text-align:center;white-space:nowrap}.rec-job-card__refer:hover{background:#f0f7f2}
/* Pagination */
.rec-paging{margin-top:24px}.rec-paging a,.rec-paging span{display:inline-block;padding:6px 12px;border:1px solid #d0d0d0;border-radius:4px;margin:0 3px;color:#333;text-decoration:none;font-size:.875rem}.rec-paging a:hover{background:#2d5a3d;border-color:#2d5a3d;color:#fff}.rec-paging .current{background:#2d5a3d;border-color:#2d5a3d;color:#fff}
/* ===== DETAIL PAGE ===== */
.rec-detail{padding:32px 0 60px}.rec-detail__back{display:inline-flex;align-items:center;gap:6px;color:#2d5a3d;font-size:.875rem;text-decoration:none;margin-bottom:24px}.rec-detail__back:hover{color:#1f4030;text-decoration:underline}.rec-detail__layout{display:flex;gap:36px;align-items:flex-start}.rec-detail__main{flex:1;min-width:0}.rec-detail__main h1{font-size:1.9rem;font-weight:700;color:#1a1a1a;margin:0 0 12px;padding:0}.rec-detail__meta{margin-bottom:20px;font-size:.9rem;color:#555}.rec-detail__meta span{display:inline-block;margin-right:20px;margin-bottom:6px}.rec-detail__meta span strong{color:#1a1a1a}.rec-detail__content{line-height:1.8;color:#333;font-size:.95rem}.rec-detail__content h2,.rec-detail__content h3{font-size:1.1rem;font-weight:700;margin:24px 0 12px;color:#1a1a1a}.rec-detail__content ul{padding-left:20px}.rec-detail__content ul li{margin-bottom:6px}.rec-detail__content img{max-width:100%;height:auto}
/* Detail sidebar */
.rec-detail__sidebar{width:300px;flex-shrink:0;position:sticky;top:16px}.rec-detail__apply{display:block;width:100%;padding:14px;background:#2d5a3d;color:#fff;text-align:center;font-size:1rem;font-weight:700;border-radius:4px;text-decoration:none;margin-bottom:10px;box-sizing:border-box}.rec-detail__apply:hover{background:#1f4030;color:#fff}.rec-detail__contact{display:block;width:100%;padding:13px;border:2px solid #2d5a3d;color:#2d5a3d;text-align:center;font-size:.9rem;font-weight:600;border-radius:4px;text-decoration:none;margin-bottom:18px;box-sizing:border-box}.rec-detail__contact:hover{background:#f0f7f2}.rec-detail__share{margin-bottom:18px;font-size:.8rem;color:#666}.rec-detail__share span{display:block;margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.rec-detail__share-links{display:flex;gap:8px}.rec-detail__share-link{width:32px;height:32px;border-radius:50%;background:#e0e0e0;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:.75rem;font-weight:700;color:#555}.rec-detail__share-link:hover{background:#2d5a3d;color:#fff}.rec-detail__info-box{border:1px solid #e0e0e0;border-radius:6px;padding:16px;margin-bottom:14px}.rec-detail__info-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:.875rem}.rec-detail__info-row:last-child{border-bottom:none}.rec-detail__info-row .label{color:#777}.rec-detail__info-row .value{color:#1a1a1a;font-weight:500;text-align:right;max-width:60%}.rec-detail__salary{background:#1f4030;border-radius:6px;padding:20px;text-align:center;color:#fff}.rec-detail__salary .salary-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#a8c9b5;margin-bottom:8px}.rec-detail__salary .salary-value{font-size:1.4rem;font-weight:700}.rec-detail__salary .salary-sub{font-size:.75rem;color:#a8c9b5;margin-top:6px}
/* Responsive */
@media(max-width:900px){.rec-areas__grid{grid-template-columns:repeat(2,1fr)}.rec-why__grid{grid-template-columns:1fr}.rec-listing-inner{flex-direction:column}.rec-listing-sidebar{width:100%}.rec-detail__layout{flex-direction:column}.rec-detail__sidebar{width:100%;position:static}.rec-cta .container{flex-direction:column;text-align:center}}
@media(max-width:600px){.rec-hero{padding:48px 0 40px}.rec-hero__content h1{font-size:1.7rem}.rec-hero__fields{flex-direction:column}.rec-areas__grid{grid-template-columns:1fr 1fr}.rec-job-card{flex-direction:column}.rec-job-card__actions{flex-direction:row}}
