
:root{--bg:#f6f8fb;--card:#fff;--text:#142033;--muted:#64748b;--brand:#155eef;--brand2:#0b4ec5;--line:#e5eaf0;--ok:#0f9d58;--warn:#b76e00;--radius:18px;--shadow:0 14px 40px rgba(15,23,42,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{text-decoration:none;color:inherit}.container{width:min(1160px,92%);margin:auto}.topbar{background:#0e1b31;color:#d9e2f2;font-size:13px;padding:9px 0}.topbar .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}nav{display:flex;align-items:center;justify-content:space-between;padding:15px 0;gap:24px}.brand{font-weight:850;font-size:24px;letter-spacing:-.5px;color:#0e1b31}.brand span{color:var(--brand)}.navlinks{display:flex;gap:23px;align-items:center;font-size:14px;color:#42526a}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:11px 17px;font-weight:750;border:1px solid transparent;cursor:pointer;transition:.2s;background:var(--brand);color:#fff}.btn:hover{transform:translateY(-1px);background:var(--brand2)}.btn.secondary{background:#fff;color:var(--brand);border-color:#bed0ff}.btn.ghost{background:transparent;color:var(--text);border-color:var(--line)}.hero{padding:74px 0 46px;background:linear-gradient(180deg,#edf4ff 0%,#f8fbff 68%,var(--bg) 100%)}.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;align-items:center;gap:48px}.eyebrow{display:inline-block;background:#dce9ff;color:#124eb9;border-radius:99px;padding:7px 11px;font-weight:800;font-size:13px}.hero h1{font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-2.2px;margin:16px 0 18px}.hero p{font-size:18px;color:#53657d;max-width:720px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.benefits-strip{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.chip{background:#fff;border:1px solid #dfe8f6;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;color:#334155}.hero-card{background:#0e1b31;color:#fff;border-radius:24px;padding:26px;box-shadow:var(--shadow)}.hero-card h3{margin-top:0;font-size:21px}.hero-card .row{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12);padding:13px 0;gap:18px}.hero-card .row:last-child{border:0}.hero-card small{color:#b8c6db}.section{padding:72px 0}.section-head{text-align:center;max-width:760px;margin:0 auto 34px}.section-head h2{font-size:36px;letter-spacing:-1px;margin:0 0 10px}.section-head p{color:var(--muted)}.jobs{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.job{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 7px 18px rgba(15,23,42,.035);display:flex;flex-direction:column}.job .tag{font-size:12px;font-weight:800;color:var(--brand);text-transform:uppercase;letter-spacing:.08em}.job h3{margin:8px 0 13px;font-size:21px}.facts{display:grid;gap:9px;color:#526276;font-size:14px;flex:1}.facts strong{color:#1f2e43}.fee{margin:18px 0 14px;background:#f2f7ff;border-radius:12px;padding:12px;color:#24416d}.fee strong{font-size:22px;color:var(--brand)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.panel h3{margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:800;color:#44536a}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #ccd6e2;border-radius:11px;font:inherit;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #e4edff;border-color:#87a9ff}.result{margin-top:15px;padding:14px;border-radius:12px;background:#f8fafc;border:1px solid var(--line);display:none}.result.ok{display:block;background:#effbf5;border-color:#b7ebcf;color:#11643d}.result.no{display:block;background:#fff5f3;border-color:#ffd1c8;color:#9a2f1e}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.step{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;text-align:center}.step-num{width:34px;height:34px;border-radius:50%;background:#e8f0ff;color:var(--brand);font-weight:900;display:grid;place-items:center;margin:0 auto 10px}.step h4{margin:6px 0}.step p{margin:0;color:var(--muted);font-size:13px}.dark{background:#0e1b31;color:#fff}.dark .section-head p{color:#b7c4d6}.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.benefit{background:#172741;border:1px solid #263956;border-radius:16px;padding:18px}.benefit h4{margin:4px 0 6px}.benefit p{color:#bdc9d8;font-size:13px;margin:0}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:13px;border-bottom:1px solid var(--line);text-align:left}.table th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.notice{background:#fff9e9;border:1px solid #f2d489;border-radius:14px;padding:15px;color:#755315}.faq details{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 18px;margin-bottom:10px}.faq summary{font-weight:800;cursor:pointer}.faq p{color:var(--muted)}.cta{background:linear-gradient(135deg,#155eef,#0b47b8);color:#fff;border-radius:24px;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta h2{margin:0;font-size:32px}.cta p{margin:6px 0 0;color:#d9e5ff}.footer{background:#0a1425;color:#bac6d7;padding:42px 0 25px;margin-top:70px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:28px}.footer h4{color:#fff}.footer small{display:block;margin-top:28px;border-top:1px solid #23334d;padding-top:18px}.modal{position:fixed;inset:0;background:rgba(7,17,33,.62);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}.modal.open{display:flex}.modal-card{background:#fff;width:min(850px,100%);max-height:92vh;overflow:auto;border-radius:20px;padding:26px;position:relative}.close{position:absolute;right:18px;top:14px;border:0;background:#eef2f7;width:34px;height:34px;border-radius:50%;font-size:20px;cursor:pointer}.wizard-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.progress{height:7px;background:#edf1f6;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;width:16.66%;background:var(--brand);transition:.2s}.wizard-step{display:none}.wizard-step.active{display:block}.wizard-actions{display:flex;justify-content:space-between;gap:10px;margin-top:22px}.mini{font-size:12px;color:#64748b}.track-demo{margin-top:14px;display:none}.timeline{display:grid;gap:10px}.timeline .item{display:flex;justify-content:space-between;gap:15px;background:#f7f9fc;border-radius:10px;padding:10px 12px}.good{color:var(--ok);font-weight:800}.pending{color:var(--warn);font-weight:800}@media(max-width:980px){.hero-grid,.grid-2{grid-template-columns:1fr}.jobs{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.benefit-grid{grid-template-columns:1fr 1fr}.navlinks{display:none}}@media(max-width:640px){.jobs,.form-grid,.benefit-grid,.steps,.footer-grid{grid-template-columns:1fr}.hero{padding-top:48px}.hero h1{font-size:43px}.section{padding:52px 0}.section-head h2{font-size:30px}.cta{align-items:flex-start;flex-direction:column}}


/* v1.3 full-width/theme integration fixes */
body.mfnl-recruitment-page .mfnl-standalone-wrap {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    background: #fff;
}
body.mfnl-recruitment-page .mfnl-standalone-wrap #mfnl-recruitment-root {
    width: 100%;
    max-width: none;
    margin: 0;
    overflow-x: hidden;
}
body.mfnl-recruitment-page .mfnl-standalone-wrap #mfnl-recruitment-root > .topbar,
body.mfnl-recruitment-page .mfnl-standalone-wrap #mfnl-recruitment-root > header,
body.mfnl-recruitment-page .mfnl-standalone-wrap #mfnl-recruitment-root > main,
body.mfnl-recruitment-page .mfnl-standalone-wrap #mfnl-recruitment-root > footer {
    width: 100%;
    max-width: none;
}
#mfnl-recruitment-root .container {
    width: min(1180px, calc(100% - 40px));
    max-width: 1180px;
}
#mfnl-recruitment-root .footer-links {
    display: grid;
    gap: 9px;
}
#mfnl-recruitment-root .footer a,
#mfnl-recruitment-root .footer-link {
    color: #dce8ff;
    text-decoration: none;
    transition: opacity .2s ease, transform .2s ease;
}
#mfnl-recruitment-root .footer a:hover,
#mfnl-recruitment-root .footer-link:hover {
    opacity: .82;
    text-decoration: underline;
}
#mfnl-recruitment-root .footer-primary {
    display: inline-block;
    margin-top: 8px;
    font-weight: 800;
    color: #fff;
}
#mfnl-recruitment-root .footer-note {
    font-size: 13px;
    line-height: 1.55;
    margin-top: 14px;
    color: #9fb0c7;
}
html {
    scroll-behavior: smooth;
}
@media (max-width: 782px) {
    #mfnl-recruitment-root .container {
        width: min(100% - 24px, 1180px);
    }
}

/* v1.4 application storage/payment flow */
#mfnl-recruitment-root .cta-actions{display:flex;gap:10px;flex-wrap:wrap}
#mfnl-recruitment-root .small-modal{max-width:520px}
#mfnl-recruitment-root .wizard-step input[type=file]{padding:10px;background:#fff}
#mfnl-recruitment-root #savedApplicationBox{margin-bottom:16px}
#mfnl-recruitment-root #saveResult strong,#mfnl-recruitment-root #submitResult strong{font-weight:900}


/* v1.4.1 — protect application text/forms from theme CSS clipping */
#mfnl-recruitment-root,
#mfnl-recruitment-root * {
    box-sizing: border-box;
}

#mfnl-recruitment-root .modal {
    overflow-y: auto !important;
    padding: 24px 12px !important;
}

#mfnl-recruitment-root .modal-card {
    width: min(760px, calc(100vw - 24px)) !important;
    max-width: 760px !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    padding: 28px !important;
    line-height: 1.45 !important;
}

#mfnl-recruitment-root .modal-card h3,
#mfnl-recruitment-root .modal-card h4,
#mfnl-recruitment-root .modal-card p,
#mfnl-recruitment-root .modal-card label,
#mfnl-recruitment-root .modal-card .mini,
#mfnl-recruitment-root .modal-card .notice,
#mfnl-recruitment-root .modal-card .result {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    line-height: 1.45 !important;
}

#mfnl-recruitment-root .modal-card label {
    display: block !important;
    margin-bottom: 7px !important;
}

#mfnl-recruitment-root .modal-card input,
#mfnl-recruitment-root .modal-card select,
#mfnl-recruitment-root .modal-card textarea {
    width: 100% !important;
    min-height: 44px !important;
    height: auto !important;
    padding: 10px 12px !important;
    line-height: 1.35 !important;
    overflow: visible !important;
    font-size: 15px !important;
}

#mfnl-recruitment-root .modal-card textarea {
    min-height: 86px !important;
    resize: vertical !important;
}

#mfnl-recruitment-root .wizard-step {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}

#mfnl-recruitment-root .wizard-actions {
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    overflow: visible !important;
}

#mfnl-recruitment-root .btn,
#mfnl-recruitment-root button.btn,
#mfnl-recruitment-root .wizard-actions button {
    height: auto !important;
    min-height: 44px !important;
    min-width: 110px !important;
    padding: 10px 18px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#mfnl-recruitment-root .form-grid {
    align-items: start !important;
}

#mfnl-recruitment-root .field {
    min-width: 0 !important;
    overflow: visible !important;
}

@media (max-width: 640px) {
    #mfnl-recruitment-root .modal {
        padding: 10px 6px !important;
        align-items: flex-start !important;
    }

    #mfnl-recruitment-root .modal-card {
        width: calc(100vw - 12px) !important;
        padding: 18px 14px !important;
        border-radius: 14px !important;
    }

    #mfnl-recruitment-root .form-grid {
        grid-template-columns: 1fr !important;
    }

    #mfnl-recruitment-root .wizard-actions {
        justify-content: stretch !important;
    }

    #mfnl-recruitment-root .wizard-actions button {
        flex: 1 1 140px !important;
        width: auto !important;
    }
}


/* v1.4.2 — FIX clipped SELECT text caused by theme styles */
#mfnl-recruitment-root select,
#mfnl-recruitment-root .card select,
#mfnl-recruitment-root .modal-card select,
#mfnl-recruitment-root #qual,
#mfnl-recruitment-root #wizQual,
#mfnl-recruitment-root #wizRole {
    display: block !important;
    width: 100% !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    padding: 0 42px 0 14px !important;
    margin: 0 !important;
    line-height: normal !important;
    font-size: 15px !important;
    font-family: inherit !important;
    font-weight: 400 !important;
    color: #1f2f46 !important;
    background-color: #fff !important;
    border: 1px solid #cbd7e6 !important;
    border-radius: 10px !important;
    vertical-align: middle !important;
    overflow: visible !important;
    text-indent: 0 !important;
    box-sizing: border-box !important;
}

#mfnl-recruitment-root select option {
    font-size: 15px !important;
    line-height: normal !important;
    padding: 8px !important;
    color: #1f2f46 !important;
    background: #fff !important;
}

/* Eligibility checker fields */
#mfnl-recruitment-root #eligibility select,
#mfnl-recruitment-root #eligibility input[type="date"] {
    height: 46px !important;
    min-height: 46px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: normal !important;
}

/* Prevent theme from forcing tiny inner select line boxes */
#mfnl-recruitment-root select::-ms-value {
    line-height: 46px !important;
}


/* v1.4.3 route-level full-width renderer */
body.mfnl-recruitment-page #mfnl-force-route,
#mfnl-force-route {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow-x: hidden !important;
}
#mfnl-force-route #mfnl-recruitment-root {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
