/* =============================================================================
 * Careers — ported from the IT Lobby website (itlweb/css/custom.css "CAREERS")
 * so the careers list, role details and the application wizard look the same.
 * Font Awesome <i> icons are the store's SVG icons (.icon) here.
 * ========================================================================== */
.crr-page {
    --primary-color: #132A55;
    --primary-gradient: linear-gradient(135deg, #07111F 0%, #0B1D33 52%, #12345C 100%);
    --secondary-color: #FFFFFF;
    --text-color: #60708A;
    --accent-color: #EAF1FF;
    --default-font: var(--font);
    --accent-font: var(--font-heading);
}
.crr-page .icon { width: 1em; height: 1em; }
.crr-rating-stars .icon.is-on, .crr-rating-stars .icon.crr-star-hover { fill: currentColor; }
.crr-rating-stars button { background: none; border: 0; padding: 0; line-height: 0; cursor: pointer; color: inherit; }
.crr-form-step { display: none; }
.crr-form-step.crr-form-step--active { display: block; }
.crr-field.has-error input, .crr-field.has-error select, .crr-field.has-error textarea { border-color: #d64545 !important; }
.crr-field__error { color: #d64545; font-size: 13px; margin-top: 6px; }
.crr-repeater[hidden] { display: none !important; }
/* itlweb laid these out with Bootstrap's grid; the store has no Bootstrap. */
.crr-grid { display: grid; gap: 24px; }
.crr-grid--3 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); }
.crr-detail-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 24px; align-items: start; }
@media (max-width: 991px) { .crr-detail-layout { grid-template-columns: 1fr; } }
.crr-page h1, .crr-page h2, .crr-page h3, .crr-page h4 { font-family: var(--font-heading); }

CAREERS - Modern Professional Design System
   ============================================= */

/* ─── Shared Buttons ─────────────────────────── */
.crr-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 24px;
	border-radius: 12px;
	font-size: 15px;
	font-weight: 600;
	font-family: var(--accent-font);
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	border: 2px solid transparent;
	text-decoration: none;
	line-height: 1.4;
	white-space: nowrap;
}

.crr-btn--primary {
	background: var(--primary-gradient);
	color: #fff;
	border-color: var(--primary-color);
}

.crr-btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 25px rgba(19, 42, 85, 0.35);
	color: #fff;
}

.crr-btn--outline {
	background: transparent;
	color: var(--primary-color);
	border-color: #c8d6ec;
}

.crr-btn--outline:hover {
	background: #f0f4ff;
	border-color: var(--primary-color);
	color: var(--primary-color);
}

.crr-btn--full {
	width: 100%;
	justify-content: center;
}

.crr-btn--lg {
	padding: 16px 32px;
	font-size: 16px;
}

.crr-btn--sm {
	padding: 8px 16px;
	font-size: 13px;
}

.crr-btn--add {
	width: 100%;
	justify-content: center;
	border-style: dashed;
	margin-top: 16px;
}

.crr-btn--submit {
	padding: 16px 40px;
	font-size: 16px;
}

.crr-btn--submit:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 30px rgba(19, 42, 85, 0.4);
}

/* ─── Hero Section ───────────────────────────── */
.crr-hero {
	position: relative;
	padding: 140px 0 100px;
	background: linear-gradient(135deg, #0a1628 0%, #132a55 40%, #1a3f7a 70%, #0f2345 100%);
	overflow: hidden;
}

.crr-hero-bg-shapes {
	position: absolute;
	inset: 0;
	pointer-events: none;
	overflow: hidden;
}

.crr-hero-shape {
	position: absolute;
	border-radius: 50%;
	filter: blur(80px);
	opacity: 0.15;
}

.crr-hero-shape--1 {
	width: 500px;
	height: 500px;
	background: #4a90d9;
	top: -100px;
	right: -100px;
	animation: floatShape 8s ease-in-out infinite;
}

.crr-hero-shape--2 {
	width: 350px;
	height: 350px;
	background: #7bb3ff;
	bottom: -80px;
	left: -50px;
	animation: floatShape 10s ease-in-out infinite reverse;
}

.crr-hero-shape--3 {
	width: 200px;
	height: 200px;
	background: #a8d0ff;
	top: 40%;
	left: 40%;
	animation: floatShape 12s ease-in-out infinite;
}

@keyframes floatShape {
	0%, 100% { transform: translate(0, 0) scale(1); }
	33% { transform: translate(30px, -20px) scale(1.05); }
	66% { transform: translate(-20px, 15px) scale(0.95); }
}

.crr-hero-content {
	position: relative;
	z-index: 2;
}

.crr-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.15);
	padding: 8px 20px;
	border-radius: 999px;
	color: #a8cbff;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 24px;
}.crr-hero-badge i,
.crr-hero-badge .icon{
	font-size: 14px;
}

.crr-hero-content h1 {
	color: #fff;
	font-size: 44px;
	line-height: 1.2;
	margin: 0 0 20px;
}

.crr-hero-desc {
	color: rgba(255, 255, 255, 0.75);
	font-size: 17px;
	line-height: 1.7;
	max-width: 540px;
}

.crr-hero-cta {
	margin-top: 32px;
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
}

.crr-hero .crr-btn--primary {
	background: #fff;
	color: var(--primary-color);
	border-color: #fff;
}

.crr-hero .crr-btn--primary:hover {
	background: #edf4ff;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3);
}

/* Hero Stats */
.crr-hero-stats {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
	position: relative;
	z-index: 2;
}

.crr-stat-card {
	background: rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(16px);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	padding: 24px 20px;
	text-align: center;
	transition: all 0.35s ease;
}

.crr-stat-card:hover {
	transform: translateY(-4px);
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(255, 255, 255, 0.25);
}

.crr-stat-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: rgba(168, 208, 255, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 12px;
	color: #7bb3ff;
	font-size: 18px;
}

.crr-stat-card h3 {
	font-size: 32px;
	color: #fff;
	margin: 0 0 4px;
	font-family: var(--accent-font);
}

.crr-stat-card p {
	color: rgba(255, 255, 255, 0.6);
	font-size: 14px;
	margin: 0;
}

/* ─── Culture / Values Section ───────────────── */
.crr-culture {
	padding: 100px 0;
	background: #fff;
}

.crr-section-header {
	text-align: center;
	max-width: 640px;
	margin: 0 auto 50px;
}

.crr-section-badge {
	display: inline-block;
	margin-bottom: 16px;
}

.crr-section-badge span {
	display: inline-block;
	background: #edf2ff;
	color: #1a3f7a;
	padding: 8px 20px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	font-family: var(--accent-font);
}

.crr-section-header h2 {
	font-size: 36px;
	line-height: 1.25;
	margin: 0;
}

.crr-section-desc {
	color: var(--text-color);
	margin-top: 14px;
	font-size: 16px;
	line-height: 1.6;
}

.crr-value-card {
	background: #f8faff;
	border: 1px solid #e6ecf5;
	border-radius: 20px;
	padding: 32px 28px;
	height: 100%;
	transition: all 0.35s ease;
	position: relative;
	overflow: hidden;
}

.crr-value-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--primary-gradient);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.4s ease;
}

.crr-value-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 50px rgba(19, 42, 85, 0.1);
	border-color: transparent;
}

.crr-value-card:hover::before {
	transform: scaleX(1);
}

.crr-value-icon {
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background: var(--primary-gradient);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 22px;
	margin-bottom: 20px;
}

.crr-value-card h4 {
	font-size: 20px;
	margin: 0 0 10px;
	font-family: var(--accent-font);
}

.crr-value-card p {
	color: var(--text-color);
	line-height: 1.6;
	margin: 0;
}

/* ─── Open Roles Section ─────────────────────── */
.crr-roles {
	padding: 100px 0;
	background: #f4f7fc;
}

.crr-job-card {
	background: #fff;
	border: 1px solid #e6ecf5;
	border-radius: 20px;
	padding: 28px;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: all 0.35s ease;
	position: relative;
	overflow: hidden;
}

.crr-job-card::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--primary-gradient);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.4s ease;
}

.crr-job-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 24px 60px rgba(19, 42, 85, 0.12);
	border-color: transparent;
}

.crr-job-card:hover::after {
	transform: scaleX(1);
}

.crr-job-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 18px;
}

.crr-job-icon {
	width: 50px;
	height: 50px;
	border-radius: 14px;
	background: #edf2ff;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-color);
	font-size: 20px;
	transition: all 0.3s ease;
}

.crr-job-card:hover .crr-job-icon {
	background: var(--primary-gradient);
	color: #fff;
}

.crr-job-type {
	background: #e8f5e9;
	color: #2e7d32;
	padding: 5px 14px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 600;
}

.crr-job-title {
	font-size: 22px;
	margin: 0 0 10px;
	font-family: var(--accent-font);
	line-height: 1.3;
}

.crr-job-summary {
	color: var(--text-color);
	line-height: 1.6;
	margin: 0 0 16px;
	flex: 1;
}

.crr-job-meta {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px 0;
	border-top: 1px solid #eef2f9;
	margin-bottom: 18px;
}

.crr-job-meta-item {
	color: #5f6d88;
	font-size: 14px;
	display: flex;
	align-items: center;
	gap: 8px;
}.crr-job-meta-item i,
.crr-job-meta-item .icon{
	color: var(--primary-color);
	width: 16px;
	text-align: center;
}

.crr-job-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.crr-job-actions .crr-btn {
	flex: 1;
	justify-content: center;
	padding: 10px 16px;
	font-size: 14px;
}

/* ─── Career Detail Page ─────────────────────── */
.crr-detail {
	padding: 140px 0 100px;
	background: #f4f7fc;
	min-height: 70vh;
}

.crr-breadcrumb {
	margin-bottom: 30px;
}

.crr-breadcrumb a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--primary-color);
	font-weight: 600;
	font-size: 15px;
	text-decoration: none;
	transition: all 0.25s ease;
}

.crr-breadcrumb a:hover {
	gap: 12px;
	color: #1a3f7a;
}

.crr-detail-header {
	background: #fff;
	border: 1px solid #e6ecf5;
	border-radius: 24px;
	padding: 36px 40px;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 24px;
	box-shadow: 0 8px 30px rgba(19, 42, 85, 0.06);
}

.crr-detail-header h1 {
	font-size: 34px;
	margin: 0 0 16px;
	line-height: 1.2;
}

.crr-detail-tags {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.crr-detail-tag {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #f0f4ff;
	color: #1a3f7a;
	padding: 8px 16px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 500;
}

.crr-detail-tag--type {
	background: #e8f5e9;
	color: #2e7d32;
}.crr-detail-tag i,
.crr-detail-tag .icon{
	font-size: 13px;
}

/* Detail Sections */
.crr-detail-section {
	background: #fff;
	border: 1px solid #e6ecf5;
	border-radius: 20px;
	padding: 32px;
	margin-bottom: 20px;
	box-shadow: 0 4px 16px rgba(19, 42, 85, 0.04);
	transition: all 0.3s ease;
}

.crr-detail-section:hover {
	box-shadow: 0 8px 30px rgba(19, 42, 85, 0.08);
}

.crr-detail-section-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 20px;
}

.crr-detail-section-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #edf2ff;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-color);
	font-size: 18px;
	flex-shrink: 0;
}

.crr-detail-section-header h3 {
	font-size: 22px;
	margin: 0;
	font-family: var(--accent-font);
}

.crr-detail-overview {
	color: var(--text-color);
	line-height: 1.8;
	font-size: 16px;
	margin: 0;
}

.crr-detail-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 14px;
}

.crr-detail-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 18px;
	background: #f8faff;
	border-radius: 12px;
	transition: all 0.25s ease;
}

.crr-detail-list li:hover {
	background: #edf2ff;
	transform: translateX(4px);
}.crr-detail-list li i,
.crr-detail-list li .icon{
	color: #2e7d32;
	margin-top: 3px;
	flex-shrink: 0;
}.crr-detail-list--requirements li i,
.crr-detail-list--requirements li .icon{
	color: var(--primary-color);
}

.crr-detail-list li span {
	color: #3d4f6f;
	line-height: 1.5;
}

/* Sidebar */
.crr-detail-sidebar {
	display: grid;
	gap: 20px;
	position: sticky;
	top: 120px;
}

.crr-sidebar-card {
	background: #fff;
	border: 1px solid #e6ecf5;
	border-radius: 20px;
	padding: 28px;
	box-shadow: 0 4px 16px rgba(19, 42, 85, 0.04);
}

.crr-sidebar-card--apply {
	background: linear-gradient(135deg, #0f2345 0%, #1a3f7a 100%);
	border-color: transparent;
	text-align: center;
}

.crr-sidebar-card--apply .crr-sidebar-card-icon {
	width: 60px;
	height: 60px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.12);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 16px;
	color: #a8d0ff;
	font-size: 24px;
}

.crr-sidebar-card--apply h4 {
	color: #fff;
	font-size: 22px;
	margin: 0 0 10px;
}

.crr-sidebar-card--apply p {
	color: rgba(255, 255, 255, 0.7);
	line-height: 1.6;
	margin: 0 0 20px;
}

.crr-sidebar-card--apply .crr-btn--primary {
	background: #fff;
	color: var(--primary-color);
	border-color: #fff;
}

.crr-sidebar-card--apply .crr-btn--primary:hover {
	background: #edf4ff;
}

.crr-sidebar-card h4 {
	font-size: 18px;
	margin: 0 0 14px;
	font-family: var(--accent-font);
	display: flex;
	align-items: center;
	gap: 8px;
}.crr-sidebar-card h4 i,
.crr-sidebar-card h4 .icon{
	color: var(--primary-color);
}

.crr-benefits-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 12px;
}

.crr-benefits-list li {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 14px;
	color: #3d4f6f;
}.crr-benefits-list li i,
.crr-benefits-list li .icon{
	color: #2e7d32;
	font-size: 16px;
	flex-shrink: 0;
}

.crr-share-text {
	font-size: 14px;
	color: var(--text-color);
	margin: 0 0 14px;
	line-height: 1.5;
}

.crr-share-actions {
	display: flex;
	gap: 8px;
}

/* ─── Apply Page ─────────────────────────────── */
.crr-apply {
	padding: 140px 0 100px;
	background: #f4f7fc;
	min-height: 80vh;
}

.crr-apply-header {
	text-align: center;
	max-width: 600px;
	margin: 0 auto 40px;
}

.crr-apply-header-icon {
	width: 72px;
	height: 72px;
	border-radius: 20px;
	background: var(--primary-gradient);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
	color: #fff;
	font-size: 28px;
}

.crr-apply-header h1 {
	font-size: 34px;
	margin: 0 0 12px;
	line-height: 1.2;
}

.crr-apply-header p {
	color: var(--text-color);
	line-height: 1.6;
}

/* Step Indicator */
.crr-steps {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	max-width: 720px;
	margin: 0 auto 40px;
	padding: 24px 32px;
	background: #fff;
	border-radius: 18px;
	border: 1px solid #e6ecf5;
	box-shadow: 0 4px 16px rgba(19, 42, 85, 0.05);
}

.crr-step {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	padding: 4px;
}

.crr-step-num {
	width: 32px;
	height: 32px;
	border-radius: 10px;
	background: #e8edf7;
	color: #8895ad;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 700;
	font-family: var(--accent-font);
	transition: all 0.3s ease;
	flex-shrink: 0;
}

.crr-step-label {
	font-size: 13px;
	font-weight: 600;
	color: #8895ad;
	transition: color 0.3s ease;
	white-space: nowrap;
}

.crr-step--active .crr-step-num {
	background: var(--primary-gradient);
	color: #fff;
}

.crr-step--active .crr-step-label {
	color: var(--primary-color);
}

.crr-step--done .crr-step-num {
	background: #e8f5e9;
	color: #2e7d32;
}

.crr-step--done .crr-step-label {
	color: #2e7d32;
}

.crr-step-line {
	flex: 1;
	height: 2px;
	background: #e8edf7;
	margin: 0 6px;
	min-width: 20px;
	border-radius: 2px;
	transition: background 0.3s ease;
}

.crr-step-line--done {
	background: #2e7d32;
}

/* Form Steps */
.crr-form-step {
	display: none;
}

.crr-form-step--active {
	display: block;
	animation: fadeSlideIn 0.4s ease;
}

@keyframes fadeSlideIn {
	from { opacity: 0; transform: translateY(16px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Form Cards */
.crr-form-card {
	background: #fff;
	border: 1px solid #e6ecf5;
	border-radius: 20px;
	padding: 32px;
	margin-bottom: 20px;
	box-shadow: 0 4px 16px rgba(19, 42, 85, 0.04);
}

.crr-form-card-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid #eef2f9;
}

.crr-form-card-icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	background: #edf2ff;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-color);
	font-size: 20px;
	flex-shrink: 0;
}

.crr-form-card-header h3 {
	font-size: 20px;
	margin: 0;
	font-family: var(--accent-font);
	line-height: 1.2;
}

.crr-form-card-header p {
	font-size: 14px;
	color: var(--text-color);
	margin: 4px 0 0;
}

/* Field Grid */
.crr-field-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 18px;
}

.crr-field-grid--single {
	grid-template-columns: 1fr;
	max-width: 400px;
}

.crr-field {
	display: flex;
	flex-direction: column;
}

.crr-field--full {
	grid-column: 1 / -1;
}

.crr-field label {
	font-size: 14px;
	font-weight: 600;
	color: #2d3e5a;
	margin-bottom: 8px;
	font-family: var(--accent-font);
}

.crr-req {
	color: #e53935;
}

.crr-field input,
.crr-field select,
.crr-field textarea {
	width: 100%;
	border: 1.5px solid #d9e3f2;
	border-radius: 12px;
	padding: 12px 16px;
	font-size: 15px;
	font-family: var(--default-font);
	background: #fafbff;
	color: #2d3e5a;
	transition: all 0.25s ease;
	outline: none;
}

.crr-field input:focus,
.crr-field select:focus,
.crr-field textarea:focus {
	border-color: var(--primary-color);
	box-shadow: 0 0 0 3px rgba(19, 42, 85, 0.08);
	background: #fff;
}

.crr-field input::placeholder,
.crr-field textarea::placeholder {
	color: #a0aec0;
}

.crr-field textarea {
	resize: vertical;
	min-height: 80px;
}

/* File Upload */
.crr-field--file {
	grid-column: span 1;
}

.crr-file-upload {
	position: relative;
	border: 2px dashed #c8d6ec;
	border-radius: 16px;
	padding: 28px 20px;
	text-align: center;
	cursor: pointer;
	transition: all 0.3s ease;
	background: #fafbff;
}

.crr-file-upload:hover {
	border-color: var(--primary-color);
	background: #f0f4ff;
}

.crr-file-upload--has-file {
	border-color: #2e7d32;
	background: #f1f8e9;
}

.crr-file-upload input[type="file"] {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
	width: 100%;
	height: 100%;
}

.crr-file-placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	pointer-events: none;
}.crr-file-placeholder i,
.crr-file-placeholder .icon{
	font-size: 28px;
	color: var(--primary-color);
}

.crr-file-placeholder span {
	font-size: 14px;
	color: #5f6d88;
	font-weight: 500;
}

.crr-file-placeholder small {
	font-size: 12px;
	color: #8895ad;
}

/* Consent Checks */
.crr-consent-checks {
	margin-top: 20px;
	display: grid;
	gap: 14px;
}

.crr-check {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 18px;
	background: #f8faff;
	border-radius: 12px;
	cursor: pointer;
	font-size: 14px;
	color: #3d4f6f;
	line-height: 1.5;
	transition: background 0.25s ease;
}

.crr-check:hover {
	background: #edf2ff;
}

.crr-check input[type="checkbox"] {
	width: 20px;
	height: 20px;
	margin-top: 1px;
	accent-color: var(--primary-color);
	flex-shrink: 0;
}

.crr-checkmark {
	display: none;
}

/* Form Navigation */
.crr-form-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 28px;
	padding-top: 28px;
	border-top: 1px solid #eef2f9;
}

/* ─── Repeater Rows ──────────────────────────── */
.crr-repeater {
	display: block;
}

.crr-repeater-rows {
	display: grid;
	gap: 16px;
}

.crr-repeater-row {
	border: 1px solid #e6ecf5;
	border-radius: 16px;
	padding: 24px;
	background: #fafbff;
	transition: all 0.3s ease;
}

.crr-repeater-row:hover {
	border-color: #c8d6ec;
	box-shadow: 0 4px 14px rgba(19, 42, 85, 0.05);
}

.crr-repeater-row--animate {
	opacity: 0;
	transform: translateY(12px);
	transition: opacity 0.35s ease, transform 0.35s ease;
}

.crr-repeater-row--visible {
	opacity: 1;
	transform: translateY(0);
}

.crr-repeater-row--removing {
	opacity: 0;
	transform: translateY(-8px) scale(0.98);
	transition: all 0.3s ease;
}

.crr-repeater-row--compact .crr-field-grid {
	grid-template-columns: 1fr 1fr;
}

.crr-repeater-row-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: 1px solid #eef2f9;
}

.crr-repeater-row-num {
	width: 30px;
	height: 30px;
	border-radius: 10px;
	background: var(--primary-gradient);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 700;
	font-family: var(--accent-font);
	flex-shrink: 0;
}

.crr-repeater-row-header h4 {
	font-size: 16px;
	margin: 0;
	font-family: var(--accent-font);
	flex: 1;
}

.crr-btn-remove {
	width: 34px;
	height: 34px;
	border-radius: 10px;
	border: 1px solid #f5c6cb;
	background: #fff5f5;
	color: #e53935;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.25s ease;
	font-size: 14px;
}

.crr-btn-remove:hover {
	background: #e53935;
	color: #fff;
	border-color: #e53935;
}

/* Repeater Empty */
.crr-repeater-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 40px 20px;
	text-align: center;
}

.crr-empty-icon {
	width: 60px;
	height: 60px;
	border-radius: 16px;
	background: #edf2ff;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #8895ad;
	font-size: 24px;
	margin-bottom: 14px;
}

.crr-repeater-empty p {
	font-size: 16px;
	font-weight: 600;
	color: #5f6d88;
	margin: 0 0 4px;
}

.crr-repeater-empty span {
	font-size: 14px;
	color: #8895ad;
}

/* ─── Star Rating ────────────────────────────── */
.crr-rating-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 18px;
}

.crr-rating-item {
	background: #f8faff;
	border: 1px solid #eef2f9;
	border-radius: 14px;
	padding: 18px 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.crr-rating-item label {
	font-size: 15px;
	font-weight: 600;
	color: #2d3e5a;
	margin: 0;
}

.crr-rating-stars {
	display: flex;
	gap: 4px;
}.crr-rating-stars i,
.crr-rating-stars .icon{
	font-size: 22px;
	color: #c8d6ec;
	cursor: pointer;
	transition: all 0.2s ease;
}.crr-rating-stars i.fa-solid,
.crr-rating-stars .icon.is-on{
	color: #f5a623;
}.crr-rating-stars i.crr-star-hover,
.crr-rating-stars .icon.crr-star-hover{
	color: #f5a623;
	transform: scale(1.15);
}

/* ─── Success Box ────────────────────────────── */
.crr-success {
	max-width: 540px;
	margin: 0 auto;
	text-align: center;
	background: #fff;
	border: 1px solid #e6ecf5;
	border-radius: 24px;
	padding: 50px 40px;
	box-shadow: 0 8px 30px rgba(19, 42, 85, 0.06);
}

.crr-success-icon {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #e8f5e9;
	color: #2e7d32;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 24px;
	font-size: 36px;
}

.crr-success h3 {
	font-size: 26px;
	margin: 0 0 14px;
	font-family: var(--accent-font);
}

.crr-success p {
	color: var(--text-color);
	line-height: 1.6;
	margin: 0 0 8px;
}

.crr-success strong {
	color: var(--primary-color);
	font-family: var(--accent-font);
}

.crr-success .crr-btn {
	margin-top: 24px;
}

/* ─── Responsive: Careers ────────────────────── */
@media only screen and (max-width: 1199px) {
	.crr-hero-content h1 {
		font-size: 36px;
	}

	.crr-detail-header h1 {
		font-size: 28px;
	}

	.crr-section-header h2 {
		font-size: 30px;
	}
}

@media only screen and (max-width: 991px) {
	.crr-hero {
		padding: 120px 0 70px;
	}

	.crr-hero-content h1 {
		font-size: 32px;
	}

	.crr-hero-stats {
		margin-top: 40px;
	}

	.crr-culture,
	.crr-roles {
		padding: 70px 0;
	}

	.crr-detail,
	.crr-apply {
		padding: 120px 0 70px;
	}

	.crr-detail-header {
		padding: 28px;
	}

	.crr-detail-section {
		padding: 24px;
	}

	.crr-detail-sidebar {
		position: static;
	}

	.crr-field-grid {
		grid-template-columns: 1fr;
	}

	.crr-rating-grid {
		grid-template-columns: 1fr;
	}

	.crr-steps {
		padding: 16px 20px;
		flex-wrap: wrap;
		gap: 8px;
	}

	.crr-step-label {
		display: none;
	}

	.crr-step-line {
		min-width: 14px;
	}

	.crr-form-card {
		padding: 24px;
	}

	.crr-repeater-row {
		padding: 18px;
	}

	.crr-repeater-row--compact .crr-field-grid {
		grid-template-columns: 1fr;
	}
}

@media only screen and (max-width: 767px) {
	.crr-hero {
		padding: 110px 0 60px;
	}

	.crr-hero-content h1 {
		font-size: 26px;
	}

	.crr-hero-desc {
		font-size: 15px;
	}

	.crr-hero-stats {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.crr-stat-card {
		padding: 18px 14px;
	}

	.crr-stat-card h3 {
		font-size: 24px;
	}

	.crr-section-header h2 {
		font-size: 24px;
	}

	.crr-detail-header {
		padding: 22px;
	}

	.crr-detail-header h1 {
		font-size: 24px;
	}

	.crr-detail-header-action {
		width: 100%;
	}

	.crr-detail-header-action .crr-btn {
		width: 100%;
		justify-content: center;
	}

	.crr-apply-header h1 {
		font-size: 26px;
	}

	.crr-job-card {
		padding: 22px;
	}

	.crr-job-actions {
		flex-direction: column;
	}

	.crr-form-card {
		padding: 20px;
	}

	.crr-form-nav {
		flex-direction: column-reverse;
		gap: 12px;
	}

	.crr-form-nav .crr-btn {
		width: 100%;
		justify-content: center;
	}

	.crr-file-upload {
		padding: 20px 16px;
	}

	.crr-success {
		padding: 36px 24px;
	}

	.crr-success h3 {
		font-size: 22px;
	}
}
