/* ═══════════════════════════════════════════════════════════
   Careers page — vibrant multi-color redesign
   =══════════════════════════════════════════════════════════ */

.crs-page {
    /* Brand + a vibrant accent set for varied section coloring */
    --crs-brand:      #27ae60;
    --crs-brand-dark: #1a8f4a;
    --crs-emerald:    #10b981;
    --crs-amber:      #f59e0b;
    --crs-violet:     #8b5cf6;
    --crs-sky:        #0ea5e9;
    --crs-rose:       #f43f5e;
    --crs-teal:       #14b8a6;
    --crs-navy:       #0f172a;
    --crs-ink:        #1e293b;
    --crs-ink-muted:  #64748b;
    --crs-line:       #e2e8f0;
    --crs-bg:         #f7f9fc;
    --crs-card:       #ffffff;
    --crs-shadow-sm:  0 4px 12px rgba(15, 23, 42, 0.06);
    --crs-shadow:     0 12px 28px rgba(15, 23, 42, 0.09);
    --crs-shadow-lg:  0 26px 56px rgba(15, 23, 42, 0.15);

    background: var(--crs-bg);
    color: var(--crs-ink);
    padding-bottom: 40px;
    position: relative;
    overflow-x: hidden;
    font-family: 'Tajawal', 'Cairo', system-ui, -apple-system, sans-serif;
    direction: rtl;
}

/* ═════ HERO ═════ */
.crs-hero {
    position: relative;
    padding: clamp(90px, 12vw, 150px) 0 clamp(120px, 10vw, 160px);
    color: #fff;
    isolation: isolate;
    overflow: hidden;
}
.crs-hero__bg {
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse 60% 80% at 100% 0%, rgba(139, 92, 246, 0.55), transparent 55%),
        radial-gradient(ellipse 60% 80% at 0% 100%, rgba(14, 165, 233, 0.50), transparent 55%),
        radial-gradient(ellipse 70% 60% at 50% 50%, rgba(16, 185, 129, 0.35), transparent 65%),
        linear-gradient(135deg, #064e3b 0%, #0e4d3a 30%, #0f172a 65%, #1e1b4b 100%);
    z-index: -3;
}
.crs-hero__blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    z-index: -2;
    animation: crs-drift 22s ease-in-out infinite;
}
.crs-hero__blob--1 { top: -100px; inset-inline-end: -100px; width: 480px; height: 480px; background: rgba(245, 158, 11, 0.35); }
.crs-hero__blob--2 { bottom: -120px; inset-inline-start: -120px; width: 520px; height: 520px; background: rgba(16, 185, 129, 0.35); animation-delay: -7s; }
.crs-hero__blob--3 { top: 40%; left: 45%; width: 320px; height: 320px; background: rgba(244, 63, 94, 0.18); animation-delay: -14s; }
@keyframes crs-drift {
    0%, 100% { transform: translate(0, 0) scale(1); }
    50%      { transform: translate(30px, -25px) scale(1.08); }
}
.crs-hero__grid {
    position: absolute; inset: 0; z-index: -1;
    background-image:
        linear-gradient(to right,  rgba(255,255,255,0.05) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255,255,255,0.05) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: radial-gradient(ellipse 70% 55% at 50% 50%, #000, transparent 85%);
}

/* Floating decorative icons */
.crs-hero__floaters { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.crs-hero__floater {
    position: absolute;
    color: rgba(255,255,255,0.14);
    font-size: 32px;
    animation: crs-float-icon 8s ease-in-out infinite;
    filter: drop-shadow(0 4px 12px rgba(0,0,0,0.35));
}
.crs-hero__floater--1 { top:  8%; inset-inline-start: 10%; color: rgba(245,158,11,0.4);  font-size: 40px; }
.crs-hero__floater--2 { top: 22%; inset-inline-end:   18%; color: rgba(139,92,246,0.4);   font-size: 28px; animation-delay: -2s; }
.crs-hero__floater--3 { top: 55%; inset-inline-end:    6%; color: rgba(16,185,129,0.4);   font-size: 38px; animation-delay: -4s; }
.crs-hero__floater--4 { top: 70%; inset-inline-start:  8%; color: rgba(14,165,233,0.4);   font-size: 32px; animation-delay: -6s; }
.crs-hero__floater--5 { top: 15%; inset-inline-end:   38%; color: rgba(244,63,94,0.35);   font-size: 22px; animation-delay: -3s; }
.crs-hero__floater--6 { top: 80%; inset-inline-end:   32%; color: rgba(245,158,11,0.35);  font-size: 26px; animation-delay: -5s; }
@keyframes crs-float-icon {
    0%, 100% { transform: translateY(0) rotate(-8deg); }
    50%      { transform: translateY(-18px) rotate(8deg); }
}

/* Hero inner grid */
.crs-hero__inner {
    position: relative; z-index: 2;
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 60px;
    align-items: center;
}

.crs-hero__badge {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 10px 22px;
    background: rgba(255,255,255,0.14);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.28);
    backdrop-filter: blur(12px);
    border-radius: 99px;
    font-size: 14px; font-weight: 800;
    margin-bottom: 24px;
    box-shadow: 0 10px 24px rgba(0,0,0,0.30);
}
.crs-hero__badge i { color: var(--crs-amber); font-size: 15px; }
.crs-hero__badge-dot {
    width: 9px; height: 9px; border-radius: 50%;
    background: var(--crs-amber);
    box-shadow: 0 0 0 0 rgba(245,158,11,0.7);
    animation: crs-pulse 1.8s ease-out infinite;
}
@keyframes crs-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(245,158,11,0.7); }
    100% { box-shadow: 0 0 0 12px rgba(245,158,11,0); }
}

.crs-hero__title {
    font-size: clamp(32px, 5vw, 56px);
    font-weight: 900;
    line-height: 1.15;
    margin: 0 0 16px;
    color: #fff;
    text-shadow: 0 4px 20px rgba(0,0,0,0.35);
    background: linear-gradient(120deg, #fff 20%, #fde68a 60%, var(--crs-amber) 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}
.crs-hero__subtitle {
    font-size: clamp(17px, 2vw, 22px);
    font-weight: 700;
    color: rgba(255,255,255,0.9);
    margin: 0 0 22px;
}
.crs-hero__intro {
    font-size: 16px;
    line-height: 1.9;
    color: rgba(255,255,255,0.82);
    max-width: 640px;
}
.crs-hero__intro p { margin: 0 0 12px; }
.crs-hero__intro p:first-child { margin-top: 0; }
.crs-hero__intro p:last-child  { margin-bottom: 0; }

.crs-hero__ctas {
    display: flex; gap: 14px; flex-wrap: wrap;
    margin-top: 32px;
}
.crs-hero__stats {
    display: flex; gap: 24px; flex-wrap: wrap;
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid rgba(255,255,255,0.14);
}
.crs-hero__stat {
    display: flex; flex-direction: column;
    gap: 2px;
}
.crs-hero__stat-num {
    font-size: 30px; font-weight: 900;
    background: linear-gradient(120deg, #fde68a, var(--crs-amber));
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1;
}
.crs-hero__stat-lbl { font-size: 13px; color: rgba(255,255,255,0.7); font-weight: 700; }

/* Hero visual — floating cards */
.crs-hero__visual { position: relative; min-height: 420px; }
.crs-hero__cards { position: relative; height: 100%; }
.crs-hero__glow {
    position: absolute; inset: 20%;
    background: radial-gradient(circle, rgba(255,255,255,0.14), transparent 70%);
    filter: blur(60px);
    z-index: 0;
    pointer-events: none;
}
.crs-hero__card {
    position: absolute;
    background: #fff;
    color: var(--crs-ink);
    border-radius: 18px;
    padding: 16px 20px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.30);
    display: flex; align-items: center; gap: 14px;
    min-width: 230px;
    z-index: 1;
    animation: crs-card-float 6s ease-in-out infinite;
}
.crs-hero__card--emerald { top: 20px;  inset-inline-end: 40px; --r: -3deg; animation-delay: 0s; border-inline-start: 4px solid var(--crs-emerald); }
.crs-hero__card--violet  { top: 170px; inset-inline-start: 20px; --r: 3deg;  animation-delay: -2s; border-inline-start: 4px solid var(--crs-violet); }
.crs-hero__card--sky     { top: 320px; inset-inline-end: 80px;  --r: -2deg; animation-delay: -4s; border-inline-start: 4px solid var(--crs-sky); }
.crs-hero__card { transform: rotate(var(--r)); }
@keyframes crs-card-float {
    0%, 100% { transform: rotate(var(--r)) translateY(0); }
    50%      { transform: rotate(var(--r)) translateY(-12px); }
}
.crs-hero__card-icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 50px; height: 50px; border-radius: 14px;
    font-size: 22px;
    color: #fff;
    flex-shrink: 0;
}
.crs-hero__card--emerald .crs-hero__card-icon { background: linear-gradient(135deg, var(--crs-emerald), var(--crs-brand-dark)); box-shadow: 0 6px 16px rgba(16,185,129,0.45); }
.crs-hero__card--violet  .crs-hero__card-icon { background: linear-gradient(135deg, var(--crs-violet), #6d28d9); box-shadow: 0 6px 16px rgba(139,92,246,0.45); }
.crs-hero__card--sky     .crs-hero__card-icon { background: linear-gradient(135deg, var(--crs-sky), #0369a1); box-shadow: 0 6px 16px rgba(14,165,233,0.45); }
.crs-hero__card-title { font-size: 15px; font-weight: 800; color: var(--crs-navy); line-height: 1.3; }
.crs-hero__card-sub   { font-size: 12.5px; color: var(--crs-ink-muted); }

/* Wave separator */
.crs-hero__wave {
    position: absolute; left: 0; right: 0; bottom: -1px;
    width: 100%; height: 80px;
    color: var(--crs-bg);
    z-index: 3;
    pointer-events: none;
}

/* ═════ Buttons ═════ */
.crs-btn {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 14px 28px;
    border-radius: 14px;
    font-size: 15.5px; font-weight: 800;
    border: 0; cursor: pointer;
    text-decoration: none;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, color 0.25s ease;
    line-height: 1;
    font-family: inherit;
}
.crs-btn i { font-size: 15px; }
.crs-btn__arrow { transition: transform 0.25s ease; }
.crs-btn:hover .crs-btn__arrow { transform: translateY(3px); }
.crs-btn__arrow-rtl { transition: transform 0.25s ease; }
.crs-btn:hover .crs-btn__arrow-rtl { transform: translateX(6px); }

.crs-btn--primary {
    background: linear-gradient(135deg, var(--crs-amber), #d97706);
    color: #1a1206;
    box-shadow: 0 12px 26px rgba(245,158,11,0.45);
}
.crs-btn--primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 40px rgba(245,158,11,0.55);
    color: #1a1206;
}
.crs-btn--ghost {
    background: rgba(255,255,255,0.10);
    color: #fff;
    border: 2px solid rgba(255,255,255,0.35);
    backdrop-filter: blur(10px);
}
.crs-btn--ghost:hover {
    background: rgba(255,255,255,0.22);
    color: #fff;
    transform: translateY(-3px);
    border-color: #fff;
}
.crs-btn--job {
    background: linear-gradient(135deg, var(--crs-emerald), var(--crs-brand-dark));
    color: #fff;
    box-shadow: 0 10px 22px rgba(16,185,129,0.35);
}
.crs-btn--job:hover {
    transform: translateY(-3px);
    box-shadow: 0 16px 32px rgba(16,185,129,0.5);
    color: #fff;
}
.crs-job--violet .crs-btn--job { background: linear-gradient(135deg, var(--crs-violet), #6d28d9); box-shadow: 0 10px 22px rgba(139,92,246,0.35); }
.crs-job--violet .crs-btn--job:hover { box-shadow: 0 16px 32px rgba(139,92,246,0.5); }
.crs-job--sky    .crs-btn--job { background: linear-gradient(135deg, var(--crs-sky), #0369a1); box-shadow: 0 10px 22px rgba(14,165,233,0.35); }
.crs-job--sky    .crs-btn--job:hover { box-shadow: 0 16px 32px rgba(14,165,233,0.5); }

.crs-btn--submit { padding: 16px 44px; font-size: 16.5px; }
.crs-btn:disabled,
.crs-btn.is-loading { opacity: 0.6; cursor: wait; transform: none; }

/* ═════ Sections ═════ */
.crs-section {
    padding: clamp(60px, 7vw, 100px) 0;
    position: relative;
}
.crs-section__head {
    text-align: center;
    margin-bottom: 44px;
}
.crs-section__badge {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 8px 22px;
    background: rgba(16, 185, 129, 0.12);
    color: var(--crs-brand-dark);
    border: 1px solid rgba(16, 185, 129, 0.28);
    border-radius: 99px;
    font-size: 13.5px; font-weight: 800;
    margin-bottom: 14px;
}
.crs-section__badge i { font-size: 12px; }
.crs-section__badge--amber   { background: rgba(245, 158, 11, 0.14); color: #b45309; border-color: rgba(245, 158, 11, 0.35); }
.crs-section__badge--emerald { background: rgba(16, 185, 129, 0.14); color: var(--crs-brand-dark); border-color: rgba(16, 185, 129, 0.35); }

.crs-section__title {
    font-size: clamp(26px, 3.6vw, 40px);
    font-weight: 900;
    color: var(--crs-navy);
    margin: 0 0 12px;
    position: relative;
    display: inline-block;
    padding-bottom: 14px;
    background: linear-gradient(120deg, var(--crs-navy) 30%, var(--crs-emerald) 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}
.crs-section__title::after {
    content: '';
    position: absolute; left: 50%; bottom: 0;
    transform: translateX(-50%);
    width: 72px; height: 4px; border-radius: 2px;
    background: linear-gradient(90deg, var(--crs-emerald), var(--crs-amber), var(--crs-violet));
}
.crs-section__lead {
    font-size: 15.5px;
    color: var(--crs-ink-muted);
    margin: 8px auto 0;
    max-width: 680px;
    line-height: 1.75;
}

/* ═════ Jobs — colorful cards ═════ */
.crs-section--jobs { background: #fff; }
.crs-jobs {
    display: grid;
    gap: 28px;
    grid-template-columns: 1fr;
}
.crs-job {
    background: var(--crs-card);
    border-radius: 24px;
    padding: 30px;
    box-shadow: var(--crs-shadow);
    border: 1px solid var(--crs-line);
    position: relative;
    overflow: hidden;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.crs-job::before {
    content: '';
    position: absolute;
    top: 0; inset-inline-start: 0;
    width: 6px; height: 100%;
    background: linear-gradient(180deg, var(--_c1, var(--crs-emerald)), var(--_c2, var(--crs-brand-dark)));
}
.crs-job::after {
    content: '';
    position: absolute;
    top: -80px; inset-inline-end: -80px;
    width: 220px; height: 220px; border-radius: 50%;
    background: var(--_c1, var(--crs-emerald));
    opacity: 0.07;
    pointer-events: none;
    transition: transform 0.5s ease;
}
.crs-job:hover { transform: translateY(-5px); box-shadow: var(--crs-shadow-lg); }
.crs-job:hover::after { transform: scale(1.3); }
.crs-job--emerald { --_c1: var(--crs-emerald); --_c2: var(--crs-brand-dark); }
.crs-job--violet  { --_c1: var(--crs-violet);  --_c2: #6d28d9; }
.crs-job--sky     { --_c1: var(--crs-sky);     --_c2: #0369a1; }

.crs-job__ribbon {
    position: absolute;
    top: 16px; inset-inline-end: 16px;
    width: 40px; height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--_c1, var(--crs-emerald)), var(--_c2, var(--crs-brand-dark)));
    color: #fff;
    font-size: 15px; font-weight: 900;
    display: inline-flex; align-items: center; justify-content: center;
    box-shadow: 0 8px 18px rgba(0,0,0,0.15);
    z-index: 2;
}

.crs-job__head {
    display: flex; align-items: center;
    gap: 18px;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px dashed var(--crs-line);
    position: relative;
    z-index: 1;
}
.crs-job__icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 68px; height: 68px;
    border-radius: 20px;
    background: linear-gradient(135deg, var(--_c1, var(--crs-emerald)), var(--_c2, var(--crs-brand-dark)));
    color: #fff;
    font-size: 30px;
    flex-shrink: 0;
    box-shadow: 0 12px 24px rgba(0,0,0,0.15);
}
.crs-job__title-wrap { flex: 1; min-width: 0; }
.crs-job__title {
    margin: 0 0 8px;
    font-size: clamp(20px, 2vw, 26px);
    font-weight: 900;
    color: var(--crs-navy);
    line-height: 1.3;
}
.crs-job__type {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 14px;
    background: rgba(15, 23, 42, 0.05);
    color: var(--crs-ink-muted);
    border-radius: 99px;
    font-size: 13px; font-weight: 700;
}
.crs-job__type i { color: var(--_c1, var(--crs-emerald)); }

.crs-job__block { margin-bottom: 22px; position: relative; z-index: 1; }
.crs-job__block:last-child { margin-bottom: 0; }
.crs-job__label {
    display: inline-flex; align-items: center; gap: 10px;
    margin: 0 0 14px;
    font-size: 15px; font-weight: 900;
    color: var(--crs-navy);
}
.crs-job__label-icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; border-radius: 8px;
    background: rgba(16, 185, 129, 0.14);
    color: var(--crs-brand-dark);
    font-size: 13px;
}
.crs-job__label-icon--tasks { background: rgba(139, 92, 246, 0.14); color: #6d28d9; }
.crs-job__label-icon--req   { background: rgba(245, 158, 11, 0.16); color: #b45309; }
.crs-job__desc { margin: 0; color: var(--crs-ink); line-height: 1.9; font-size: 15px; }

.crs-job__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}
.crs-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex; flex-direction: column;
    gap: 10px;
}
.crs-list li {
    display: flex; align-items: flex-start; gap: 10px;
    color: var(--crs-ink);
    font-size: 14.5px;
    line-height: 1.6;
}
.crs-list li i {
    color: var(--crs-emerald);
    font-size: 15px;
    margin-top: 3px;
    flex-shrink: 0;
}
.crs-list--req li i { color: var(--crs-amber); }

.crs-job__foot {
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px dashed var(--crs-line);
    position: relative; z-index: 1;
}

/* ═════ Why Us — colorful chips ═════ */
.crs-section--why {
    background: linear-gradient(180deg, var(--crs-bg), #eef2ff 100%);
    position: relative;
}
.crs-section__deco { position: absolute; inset: 0; pointer-events: none; }
.crs-orb {
    position: absolute; border-radius: 50%;
    filter: blur(80px);
}
.crs-orb--1 { top: -80px; inset-inline-end: -80px; width: 320px; height: 320px; background: rgba(139, 92, 246, 0.20); }
.crs-orb--2 { bottom: -100px; inset-inline-start: -100px; width: 360px; height: 360px; background: rgba(16, 185, 129, 0.18); }

.crs-why {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 18px;
    max-width: 1080px;
    margin: 0 auto;
    position: relative;
}
.crs-why__item {
    display: flex; align-items: center; gap: 16px;
    padding: 20px 22px;
    background: var(--crs-card);
    border: 1px solid var(--crs-line);
    border-radius: 18px;
    box-shadow: var(--crs-shadow-sm);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    position: relative;
    overflow: hidden;
}
.crs-why__item::before {
    content: '';
    position: absolute;
    top: 0; inset-inline-start: 0;
    width: 100%; height: 3px;
    background: var(--_wc, var(--crs-emerald));
    opacity: 0.8;
}
.crs-why__item:hover {
    transform: translateY(-4px);
    box-shadow: var(--crs-shadow);
    border-color: transparent;
}

.crs-why__icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 56px; height: 56px;
    border-radius: 16px;
    background: var(--_wc, var(--crs-emerald));
    color: #fff;
    font-size: 22px;
    flex-shrink: 0;
    box-shadow: 0 8px 18px rgba(0,0,0,0.10);
}
.crs-why__text {
    font-size: 15px; font-weight: 800;
    color: var(--crs-ink);
    line-height: 1.5;
}

/* Per-item accent colors */
.crs-why__item--emerald { --_wc: var(--crs-emerald); }
.crs-why__item--violet  { --_wc: var(--crs-violet); }
.crs-why__item--amber   { --_wc: var(--crs-amber); }
.crs-why__item--sky     { --_wc: var(--crs-sky); }
.crs-why__item--rose    { --_wc: var(--crs-rose); }
.crs-why__item--teal    { --_wc: var(--crs-teal); }
.crs-why__item--emerald .crs-why__icon { background: linear-gradient(135deg, var(--crs-emerald), var(--crs-brand-dark)); box-shadow: 0 8px 18px rgba(16,185,129,0.35); }
.crs-why__item--violet  .crs-why__icon { background: linear-gradient(135deg, var(--crs-violet), #6d28d9); box-shadow: 0 8px 18px rgba(139,92,246,0.35); }
.crs-why__item--amber   .crs-why__icon { background: linear-gradient(135deg, var(--crs-amber), #d97706); box-shadow: 0 8px 18px rgba(245,158,11,0.35); }
.crs-why__item--sky     .crs-why__icon { background: linear-gradient(135deg, var(--crs-sky), #0369a1); box-shadow: 0 8px 18px rgba(14,165,233,0.35); }
.crs-why__item--rose    .crs-why__icon { background: linear-gradient(135deg, var(--crs-rose), #be123c); box-shadow: 0 8px 18px rgba(244,63,94,0.35); }
.crs-why__item--teal    .crs-why__icon { background: linear-gradient(135deg, var(--crs-teal), #0d9488); box-shadow: 0 8px 18px rgba(20,184,166,0.35); }

/* ═════ Form ═════ */
.crs-section--form {
    padding-bottom: 40px;
    background: #fff;
}
.crs-form-wrap {
    max-width: 820px;
    margin: 0 auto;
    background: linear-gradient(160deg, #ffffff 0%, #f8fafc 100%);
    border-radius: 26px;
    padding: clamp(30px, 4vw, 48px);
    box-shadow: var(--crs-shadow-lg);
    border: 1px solid var(--crs-line);
    position: relative;
    overflow: hidden;
}
.crs-form__deco { position: absolute; border-radius: 50%; filter: blur(70px); pointer-events: none; }
.crs-form__deco--1 { top: -80px; inset-inline-end: -60px; width: 240px; height: 240px; background: rgba(139, 92, 246, 0.15); }
.crs-form__deco--2 { bottom: -100px; inset-inline-start: -70px; width: 260px; height: 260px; background: rgba(16, 185, 129, 0.15); }

.crs-form__head {
    text-align: center;
    margin-bottom: 32px;
    position: relative;
    z-index: 1;
}
.crs-form__head .crs-section__title { margin-bottom: 8px; }

.crs-form { display: block; position: relative; z-index: 1; }
.crs-form__row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 18px;
}
.crs-form__row--2 { grid-template-columns: 1fr 1fr; }

.crs-field { display: flex; flex-direction: column; gap: 8px; }
.crs-field--full { grid-column: 1 / -1; }
.crs-field__label {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 14px; font-weight: 800;
    color: var(--crs-ink);
}
.crs-field__label i {
    color: var(--crs-emerald);
    font-size: 13px;
    width: 18px; text-align: center;
}
.crs-req { color: var(--crs-rose); font-weight: 900; }
.crs-hint {
    color: var(--crs-ink-muted);
    font-weight: 600; font-size: 12px;
}

.crs-field input[type="text"],
.crs-field input[type="email"],
.crs-field input[type="tel"],
.crs-field input[type="url"],
.crs-field select,
.crs-field textarea {
    width: 100%;
    padding: 13px 16px;
    background: #fff;
    border: 1.5px solid var(--crs-line);
    border-radius: 12px;
    font-size: 15px;
    font-family: inherit;
    color: var(--crs-ink);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}
.crs-field input:focus,
.crs-field select:focus,
.crs-field textarea:focus {
    outline: 0;
    border-color: var(--crs-emerald);
    box-shadow: 0 0 0 4px rgba(16,185,129,0.15);
    background: #fff;
}
.crs-field textarea { resize: vertical; min-height: 100px; line-height: 1.7; }

/* File input drop zone */
.crs-file { position: relative; }
.crs-file input[type="file"] {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
}
.crs-file__ui {
    display: flex; align-items: center; gap: 14px;
    padding: 22px 20px;
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border: 2px dashed rgba(16,185,129,0.35);
    border-radius: 14px;
    color: var(--crs-brand-dark);
    transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
    pointer-events: none;
    position: relative;
    z-index: 1;
}
.crs-file:hover .crs-file__ui {
    border-color: var(--crs-emerald);
    background: linear-gradient(135deg, #dcfce7, #d1fae5);
    transform: translateY(-2px);
}
.crs-file.has-file .crs-file__ui {
    border-style: solid;
    border-color: var(--crs-emerald);
    background: linear-gradient(135deg, #dcfce7, #bbf7d0);
}
.crs-file__icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 46px; height: 46px; border-radius: 12px;
    background: linear-gradient(135deg, var(--crs-emerald), var(--crs-brand-dark));
    color: #fff;
    font-size: 20px;
    flex-shrink: 0;
    box-shadow: 0 8px 18px rgba(16,185,129,0.30);
}
.crs-file__label { font-size: 14.5px; font-weight: 800; }

.crs-form__foot {
    margin-top: 26px;
    display: flex; align-items: center;
    gap: 20px; flex-wrap: wrap;
    justify-content: space-between;
}
.crs-form__privacy {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 12.5px;
    color: var(--crs-ink-muted);
    margin: 0;
}
.crs-form__privacy i { color: var(--crs-emerald); }

.crs-form__msg {
    margin-top: 22px;
    padding: 16px 20px;
    border-radius: 14px;
    font-size: 14.5px; font-weight: 700;
    display: none;
}
.crs-form__msg.is-success {
    display: block;
    background: linear-gradient(135deg, #dcfce7, #bbf7d0);
    border: 1px solid rgba(16,185,129,0.40);
    color: #14532d;
}
.crs-form__msg.is-error {
    display: block;
    background: linear-gradient(135deg, #fee2e2, #fecaca);
    border: 1px solid rgba(239,68,68,0.40);
    color: #7f1d1d;
}

/* ═════ Closing ═════ */
.crs-closing {
    padding: 40px 0 30px;
    text-align: center;
}
.crs-closing__card {
    max-width: 800px; margin: 0 auto;
    padding: 34px 38px;
    background: linear-gradient(135deg, #ecfdf5 0%, #fef3c7 50%, #ede9fe 100%);
    border-radius: 22px;
    border: 1px solid rgba(16,185,129,0.20);
    box-shadow: var(--crs-shadow);
    position: relative;
    overflow: hidden;
}
.crs-closing__quote,
.crs-closing__seal {
    position: absolute;
    color: rgba(16,185,129,0.20);
    font-size: 60px;
    pointer-events: none;
}
.crs-closing__quote { top: 10px; inset-inline-start: 20px; }
.crs-closing__seal  { bottom: 10px; inset-inline-end: 20px; color: rgba(245,158,11,0.25); }
.crs-closing__text {
    font-size: clamp(16px, 1.7vw, 20px);
    font-weight: 900;
    color: var(--crs-navy);
    line-height: 1.8;
    margin: 0;
    position: relative;
    z-index: 1;
}

/* ═════ Responsive ═════ */
@media (max-width: 900px) {
    .crs-hero__inner { grid-template-columns: 1fr; gap: 50px; }
    .crs-hero__visual { min-height: 340px; }
    .crs-hero__card { min-width: 210px; }
    .crs-job__grid { grid-template-columns: 1fr; gap: 22px; }
    .crs-form__row--2 { grid-template-columns: 1fr; }
    .crs-hero__stats { gap: 16px; }
    .crs-hero__stat-num { font-size: 24px; }
}
@media (max-width: 640px) {
    .crs-hero { padding-top: 70px; padding-bottom: 100px; }
    .crs-hero__ctas .crs-btn { flex: 1; justify-content: center; }
    .crs-hero__stat { flex: 1; min-width: 100px; }
    .crs-hero__floater { display: none; }
    .crs-hero__card--sky { display: none; }
    .crs-job { padding: 22px; }
    .crs-job__head { gap: 14px; }
    .crs-job__icon { width: 56px; height: 56px; font-size: 24px; }
    .crs-form__foot { justify-content: center; }
    .crs-form__foot .crs-btn { width: 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
    .crs-hero__blob, .crs-hero__floater, .crs-hero__card, .crs-hero__badge-dot { animation: none !important; }
}
