/* =========================================================
   Trang Tuyển dụng
   ========================================================= */
.kmv-rc-hero, .kmv-rc-sec{
	--kmv-blue:#007dbe; --kmv-blue-d:#005a9c; --kmv-blue-l:#0a86cf;
	--kmv-ink:#10233f; --kmv-muted:#5d6f86; --kmv-line:#e3ebf3; --kmv-soft:#f3f8fc;
}
.kmv-anchor{ display:block; position:relative; top:-110px; visibility:hidden; }

/* ---------- Banner ---------- */
.kmv-rc-hero{ position:relative; overflow:hidden; }
.kmv-rc-hero .section-bg::after{
	content:""; position:absolute; inset:0; pointer-events:none;
	background:
		radial-gradient(700px 400px at 90% 10%, rgba(10,134,207,.35), transparent 70%),
		linear-gradient(100deg, rgba(4,26,51,.94) 0%, rgba(6,42,77,.86) 45%, rgba(0,70,125,.55) 100%);
}
.kmv-rc-hero-row{ padding-top:64px; padding-bottom:64px; }
.kmv-rc-hero-text{ color:#fff; }
.kmv-rc-crumbs{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:22px; font-size:13.5px; color:rgba(255,255,255,.7); }
.kmv-rc-crumbs a{ color:#fff; font-weight:600; }
.kmv-rc-crumbs a i{ font-size:12px; margin-right:3px; }
.kmv-rc-eyebrow{
	display:inline-flex; align-items:center; gap:8px; margin-bottom:10px;
	font-size:13px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--kmv-blue);
}
.kmv-rc-eyebrow::before{ content:""; width:22px; height:3px; border-radius:3px; background:currentColor; }
.kmv-rc-hero .kmv-rc-eyebrow{ color:#6cc4f2; }
.kmv-rc-hero h1{ margin:0 0 14px; color:#fff; font-size:clamp(32px,4.4vw,52px); line-height:1.12; font-weight:800; letter-spacing:-.5px; }
.kmv-rc-hero-text p{ max-width:560px; margin:0 0 26px; font-size:16.5px; line-height:1.75; color:rgba(255,255,255,.85); }
.kmv-rc-hero-btns{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:34px; }
.kmv-rc-btn{
	display:inline-flex; align-items:center; gap:10px; height:52px; padding:0 26px; border-radius:99px;
	font-size:15px; font-weight:700; white-space:nowrap; text-decoration:none;
	transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.kmv-rc-btn.is-primary{ color:#fff !important; background:linear-gradient(120deg,#0a86cf,#005a9c); box-shadow:0 12px 26px rgba(0,125,190,.45); }
.kmv-rc-btn.is-ghost{ color:#fff !important; border:1.5px solid rgba(255,255,255,.5); background:rgba(255,255,255,.06); }
.kmv-rc-btn:hover{ transform:translateY(-2px); }
.kmv-rc-btn.is-ghost:hover{ background:rgba(255,255,255,.14); }
.kmv-rc-stats{ display:flex; flex-wrap:wrap; gap:12px; margin:0; padding:0; list-style:none; }
.kmv-rc-stats li{
	margin:0; padding:12px 18px; list-style:none; border-radius:14px;
	background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16);
	-webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
}
.kmv-rc-stats strong{ display:block; color:#fff; font-size:20px; font-weight:800; line-height:1.2; }
.kmv-rc-stats span{ display:block; color:rgba(255,255,255,.7); font-size:12.5px; }
.kmv-rc-poster{
	position:relative; border-radius:22px; overflow:hidden; transform:rotate(1.5deg);
	box-shadow:0 30px 60px rgba(0,0,0,.4), 0 0 0 6px rgba(255,255,255,.12);
	animation:kmv-rc-float 6s ease-in-out infinite;
}
.kmv-rc-poster img{ display:block; width:100%; height:auto; }
@keyframes kmv-rc-float{ 0%,100%{ transform:rotate(1.5deg) translateY(0); } 50%{ transform:rotate(1.5deg) translateY(-8px); } }

/* ---------- Khối chung ---------- */
.kmv-rc-sec{ background:#fff; }
.kmv-rc-alt{ background:#f4f8fb; }
.kmv-rc-head{ max-width:720px; margin:0 auto 34px; text-align:center; }
.kmv-rc-head h2{ margin:0; color:var(--kmv-ink); font-size:clamp(24px,2.8vw,34px); line-height:1.25; }
.kmv-rc-ic{
	display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; border-radius:16px;
	background:#e8f3fa; color:var(--kmv-blue); font-size:23px;
}

/* Vì sao chọn KMV */
.kmv-rc-why{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.kmv-rc-card{
	padding:28px 24px; background:#fff; border:1px solid var(--kmv-line); border-radius:20px;
	box-shadow:0 10px 28px rgba(11,42,74,.06); transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.kmv-rc-card:hover{ transform:translateY(-5px); border-color:#bfdcee; box-shadow:0 20px 40px rgba(0,90,156,.13); }
.kmv-rc-card h3{ margin:16px 0 8px; font-size:17px; color:var(--kmv-ink); }
.kmv-rc-card p{ margin:0; font-size:14.5px; line-height:1.65; color:#4a5c74; }

/* Vị trí */
.kmv-jobs{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:20px; }
.kmv-job{
	position:relative; display:flex; flex-direction:column; padding:26px 24px; background:#fff; border-radius:20px;
	border:1px solid var(--kmv-line); box-shadow:0 10px 26px rgba(11,42,74,.06);
	transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.kmv-job:hover{ transform:translateY(-4px); border-color:#bfdcee; box-shadow:0 20px 40px rgba(0,90,156,.13); }
.kmv-job-ic{
	display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:15px; color:#fff; font-size:21px;
	background:linear-gradient(135deg,var(--kmv-blue-l),var(--kmv-blue-d)); box-shadow:0 10px 20px rgba(0,125,190,.28);
}
.kmv-job h3{ margin:16px 0 6px; font-size:18px; color:var(--kmv-ink); }
.kmv-job p{ margin:0 0 20px; font-size:14px; color:var(--kmv-muted); line-height:1.6; }
.kmv-job-btn{
	margin-top:auto; align-self:flex-start; display:inline-flex; align-items:center; gap:8px; padding:9px 18px; border-radius:99px;
	background:var(--kmv-soft); border:1px solid #d3e6f3; color:var(--kmv-blue) !important; font-weight:600; font-size:14px;
	transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.kmv-job:hover .kmv-job-btn{ background:linear-gradient(120deg,var(--kmv-blue-d),var(--kmv-blue-l)); border-color:transparent; color:#fff !important; }

/* Môi trường làm việc */
.kmv-rc-gallery{ display:grid; grid-template-columns:2fr 1fr 1fr; grid-template-rows:220px 220px; gap:16px; }
.kmv-rc-photo{ position:relative; display:block; overflow:hidden; border-radius:18px; box-shadow:0 12px 30px rgba(11,42,74,.1); }
.kmv-rc-photo:first-child{ grid-row:span 2; }
.kmv-rc-photo:nth-child(4){ grid-column:span 2; }
.kmv-rc-photo img{ width:100%; height:100%; object-fit:cover; transition:transform .5s cubic-bezier(.2,.8,.2,1); }
.kmv-rc-photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(4,26,51,.35)); opacity:0; transition:opacity .3s ease; }
.kmv-rc-photo:hover img{ transform:scale(1.06); }
.kmv-rc-photo:hover::after{ opacity:1; }

/* Quy trình */
.kmv-rc-steps{ position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin:0; padding:0; list-style:none; counter-reset:none; }
.kmv-rc-steps::before{
	content:""; position:absolute; left:12%; right:12%; top:58px; height:2px;
	background:repeating-linear-gradient(90deg,#9ccbe8 0 8px,transparent 8px 16px);
}
.kmv-rc-steps li{
	position:relative; margin:0; padding:28px 22px 24px; list-style:none; text-align:center;
	background:#fff; border:1px solid var(--kmv-line); border-radius:20px; box-shadow:0 10px 26px rgba(11,42,74,.06);
}
.kmv-rc-steps .n{
	position:absolute; top:14px; right:16px; font-size:13px; font-weight:800; letter-spacing:1px; color:#b7cde0;
}
.kmv-rc-steps .kmv-rc-ic{ position:relative; z-index:1; width:60px; height:60px; border-radius:50%; color:#fff; background:linear-gradient(135deg,var(--kmv-blue-l),var(--kmv-blue-d)); box-shadow:0 0 0 6px #fff, 0 10px 20px rgba(0,125,190,.3); }
.kmv-rc-steps h3{ margin:16px 0 6px; font-size:17px; color:var(--kmv-ink); }
.kmv-rc-steps p{ margin:0; font-size:14px; line-height:1.6; color:#4a5c74; }

/* Ứng tuyển */
.kmv-rc-apply{ background:linear-gradient(180deg,#fff 0%,#f1f7fc 100%); }
.kmv-rc-apply-row > .col > .col-inner{ height:100%; }
.kmv-rc-info{
	height:100%; padding:34px 30px; border-radius:22px; color:#fff;
	background:
		radial-gradient(420px 220px at 100% 0%, rgba(255,255,255,.16), transparent 70%),
		linear-gradient(150deg,#005a9c 0%,#0077bd 55%,#0a86cf 100%);
	box-shadow:0 20px 44px rgba(0,70,125,.26);
}
.kmv-rc-info .kmv-rc-eyebrow{ color:#bfe6fb; }
.kmv-rc-info h2{ margin:0 0 10px; color:#fff; font-size:clamp(22px,2.4vw,28px); }
.kmv-rc-info > p{ margin:0 0 22px; color:rgba(255,255,255,.86); line-height:1.7; }
.kmv-rc-info ul{ margin:0; padding:0; list-style:none; }
.kmv-rc-info li{
	display:flex; gap:14px; margin:0 0 12px; padding:12px 14px; list-style:none; border-radius:14px;
	background:rgba(255,255,255,.1); line-height:1.5; font-size:14.5px;
}
.kmv-rc-info li i{ flex:0 0 36px; width:36px; height:36px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:#fff; color:var(--kmv-blue); font-size:14px; }
.kmv-rc-info li span{ min-width:0; overflow-wrap:anywhere; color:rgba(255,255,255,.9); }
.kmv-rc-info li strong{ display:block; font-size:12px; font-weight:600; letter-spacing:.3px; color:rgba(255,255,255,.7); }
.kmv-rc-info li a{ color:#fff !important; font-weight:700; }
.kmv-rc-formcard{
	height:100%; padding:34px 34px 28px; background:#fff; border:1px solid var(--kmv-line); border-radius:22px;
	box-shadow:0 20px 44px rgba(11,42,74,.08);
}

/* ---------- Responsive ---------- */
@media (max-width:849px){
	.kmv-rc-hero-row{ padding-top:44px; padding-bottom:36px; }
	.kmv-rc-poster-col{ display:none; }
	.kmv-rc-why{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
	.kmv-rc-steps{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
	.kmv-rc-steps::before{ display:none; }
	.kmv-rc-gallery{ grid-template-columns:1fr 1fr; grid-template-rows:180px 180px 180px; }
	.kmv-rc-photo:first-child{ grid-column:span 2; grid-row:auto; }
	.kmv-rc-photo:nth-child(4){ grid-column:span 2; }
	.kmv-rc-info{ margin-bottom:16px; }
	.kmv-rc-formcard{ padding:26px 20px; }
}
@media (max-width:549px){
	.kmv-rc-hero h1{ font-size:30px; }
	.kmv-rc-btn{ flex:1 1 100%; justify-content:center; }
	.kmv-rc-why, .kmv-rc-steps{ grid-template-columns:1fr; }
	.kmv-rc-card, .kmv-job, .kmv-rc-steps li{ padding:22px 20px; }
	.kmv-rc-info{ padding:26px 20px; }
	.kmv-rc-gallery{ grid-template-rows:150px 150px 150px; gap:10px; }
}
@media (prefers-reduced-motion:reduce){ .kmv-rc-poster{ animation:none; } }
