/*
 * Meiko Simple Job Board Fix v1.3.0
 * UI/UX Pro layer. Scoped to Meiko recruitment pages.
 */
.meiko-sjb-fix-active {
    --meiko-blue: #0767b2;
    --meiko-blue-dark: #064f88;
    --meiko-red: #e31b23;
    --meiko-red-dark: #c9141b;
    --meiko-gold: #f5b335;
    --meiko-ink: #172033;
    --meiko-text: #465066;
    --meiko-muted: #778197;
    --meiko-line: #e3e9f0;
    --meiko-soft: #f5f8fb;
    --meiko-soft-blue: #edf6fd;
    --meiko-white: #fff;
    --meiko-shadow: 0 18px 55px rgba(24, 52, 88, .09);
    --meiko-radius: 18px;
}

.meiko-sjb-fix-active * { box-sizing: border-box; }
.meiko-sjb-fix-active .meiko-legacy-hide { display: none !important; }
.meiko-sjb-fix-active .meiko-single-original-title-hide { display: none !important; }
.meiko-sjb-fix-active .meiko-application-heading-old { display: none !important; }
.meiko-sjb-fix-active .meiko-careers-pro a,
.meiko-sjb-fix-active .meiko-single-root-pro a { text-decoration: none; }
.meiko-sjb-fix-active .meiko-careers-pro svg,
.meiko-sjb-fix-active .meiko-single-root-pro svg { width: 1.05em; height: 1.05em; fill: currentColor; flex: 0 0 auto; }

.meiko-careers-container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.meiko-careers-pro { color: var(--meiko-text); font-size: 16px; line-height: 1.65; }
.meiko-careers-pro h1,
.meiko-careers-pro h2,
.meiko-careers-pro h3 { color: var(--meiko-ink); letter-spacing: -.025em; margin-top: 0; }
.meiko-careers-pro p { color: var(--meiko-text); }

.meiko-eyebrow-pro { display: inline-flex; align-items: center; gap: 10px; color: var(--meiko-blue); font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.meiko-eyebrow-pro > span { width: 26px; height: 2px; background: var(--meiko-red); display: inline-block; }

.meiko-btn-pro { min-height: 48px; padding: 0 22px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; border: 1px solid transparent; font-weight: 750; font-size: 14px; line-height: 1; transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease; cursor: pointer; }
.meiko-btn-pro:hover { transform: translateY(-1px); }
.meiko-btn-pro--primary { color: #fff !important; background: var(--meiko-red); box-shadow: 0 9px 24px rgba(227, 27, 35, .19); }
.meiko-btn-pro--primary:hover { background: var(--meiko-red-dark); box-shadow: 0 12px 28px rgba(227, 27, 35, .25); }
.meiko-btn-pro--secondary { color: var(--meiko-blue) !important; background: #fff; border-color: #cfdce8; }
.meiko-btn-pro--secondary:hover { border-color: var(--meiko-blue); background: var(--meiko-soft-blue); }
.meiko-btn-pro--light { color: var(--meiko-blue-dark) !important; background: #fff; min-width: 145px; }

/* ---------- Careers hero ---------- */
.meiko-careers-hero-pro { position: relative; overflow: hidden; background: linear-gradient(120deg, #f8fbfe 0%, #edf6fd 58%, #f7fbff 100%); border-bottom: 1px solid #e2ecf5; }
.meiko-careers-hero-pro::before { content: ""; position: absolute; width: 520px; height: 520px; border-radius: 50%; right: -210px; top: -260px; border: 1px solid rgba(7, 103, 178, .12); box-shadow: 0 0 0 70px rgba(7, 103, 178, .025), 0 0 0 140px rgba(7, 103, 178, .018); }
.meiko-careers-hero-pro__grid { min-height: 545px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); align-items: center; gap: 72px; padding-top: 72px; padding-bottom: 72px; position: relative; z-index: 1; }
.meiko-careers-hero-pro__copy h1 { font-size: clamp(44px, 5vw, 68px); line-height: 1.03; margin: 18px 0 22px; font-weight: 760; }
.meiko-careers-hero-pro__copy h1 em { color: var(--meiko-blue); font-style: normal; }
.meiko-careers-hero-pro__copy > p { max-width: 650px; font-size: 18px; line-height: 1.75; margin: 0 0 30px; }
.meiko-hero-actions-pro { display: flex; flex-wrap: wrap; gap: 12px; }
.meiko-trust-line { margin-top: 24px; color: #59647a; font-size: 14px; display: flex; align-items: center; gap: 8px; }
.meiko-trust-line span { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #e4f4ea; color: #23824d; font-weight: 900; }
.meiko-careers-hero-pro__visual { height: 385px; position: relative; }
.meiko-visual-card { position: absolute; border-radius: 22px; }
.meiko-visual-card--primary { inset: 24px 54px 40px 40px; padding: 38px; color: #fff; background: linear-gradient(145deg, #075f9f 0%, #0876c8 100%); box-shadow: 0 30px 70px rgba(6, 79, 136, .25); overflow: hidden; }
.meiko-visual-card--primary::after { content:""; position:absolute; width:220px; height:220px; right:-70px; bottom:-88px; border:1px solid rgba(255,255,255,.18); border-radius:50%; box-shadow: 0 0 0 38px rgba(255,255,255,.045), 0 0 0 76px rgba(255,255,255,.028); }
.meiko-visual-card--primary small { display:block; font-size:11px; letter-spacing:.18em; font-weight:800; opacity:.78; }
.meiko-visual-card--primary strong { display:block; font-size:45px; line-height:1.02; margin:36px 0 28px; letter-spacing:-.04em; }
.meiko-visual-card--primary > span { display:block; font-size:13px; opacity:.85; letter-spacing:.03em; }
.meiko-visual-card--stat { right: 5px; bottom: 8px; width: 180px; min-height: 112px; background:#fff; padding:22px 20px; box-shadow: var(--meiko-shadow); border:1px solid #e7edf3; display:flex; gap:12px; align-items:center; }
.meiko-visual-card--stat b { color:var(--meiko-red); font-size:38px; line-height:1; }
.meiko-visual-card--stat span { color:var(--meiko-text); font-size:12px; line-height:1.45; }
.meiko-visual-lines { position:absolute; left:5px; top:8px; width:70px; height:70px; display:grid; grid-template-columns:repeat(4,1fr); gap:6px; transform:rotate(45deg); opacity:.85; }
.meiko-visual-lines i { background:var(--meiko-gold); border-radius:8px; }

/* ---------- Jobs ---------- */
.meiko-open-jobs-pro { padding: 92px 0 96px; background:#fff; scroll-margin-top: 85px; }
.meiko-section-head-pro { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:34px; }
.meiko-section-head-pro h2 { font-size: clamp(32px, 3.2vw, 44px); line-height:1.15; margin:10px 0 0; font-weight:760; }
.meiko-section-head-pro > p { margin:0 0 4px; font-size:14px; color:var(--meiko-muted); }
.meiko-section-head-pro > p strong { color:var(--meiko-blue); font-size:18px; }
.meiko-section-head-pro--center { text-align:center; justify-content:center; }

.meiko-job-search-pro { display:grid; grid-template-columns:minmax(260px,1.5fr) minmax(160px,.75fr) minmax(160px,.75fr) minmax(160px,.75fr) auto; gap:10px; padding:12px; background:#fff; border:1px solid var(--meiko-line); border-radius:16px; box-shadow:0 12px 35px rgba(28, 59, 94, .07); margin-bottom:24px; }
.meiko-filter-control { position:relative; margin:0; min-width:0; }
.meiko-filter-control__icon { position:absolute; left:15px; top:50%; transform:translateY(-50%); color:#8a96a8; z-index:2; pointer-events:none; display:flex; }
.meiko-filter-control__icon svg { width:19px !important; height:19px !important; }
.meiko-job-search-pro input[type="search"],
.meiko-job-search-pro select { width:100% !important; height:52px !important; min-height:52px !important; margin:0 !important; padding:0 36px 0 44px !important; border:1px solid #dce4ec !important; border-radius:10px !important; background:#fff !important; color:var(--meiko-ink) !important; font:inherit !important; font-size:14px !important; box-shadow:none !important; outline:none; appearance:auto; }
.meiko-job-search-pro input[type="search"]:focus,
.meiko-job-search-pro select:focus { border-color:var(--meiko-blue) !important; box-shadow:0 0 0 3px rgba(7, 103, 178, .09) !important; }
.meiko-job-search-pro input::placeholder { color:#98a2b3; }
.meiko-search-btn-pro { border:0; border-radius:10px; min-width:128px; height:52px; background:var(--meiko-red); color:#fff; display:flex; align-items:center; justify-content:center; gap:9px; font-weight:800; font-size:14px; cursor:pointer; padding:0 20px; }
.meiko-search-btn-pro:hover { background:var(--meiko-red-dark); }
.meiko-search-btn-pro svg { width:19px !important; height:19px !important; }
.meiko-active-filter-row { display:flex; justify-content:flex-end; gap:14px; align-items:center; margin:-8px 0 18px; font-size:13px; color:var(--meiko-muted); }
.meiko-active-filter-row a { color:var(--meiko-red) !important; font-weight:700; }

.meiko-job-list-pro { display:grid; gap:14px; }
.meiko-job-card-pro { border:1px solid var(--meiko-line); border-radius:16px; padding:26px 28px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:28px; align-items:center; background:#fff; transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.meiko-job-card-pro:hover { border-color:#b9d4e9; transform:translateY(-2px); box-shadow:0 14px 38px rgba(24, 52, 88, .08); }
.meiko-job-card-pro__head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; }
.meiko-job-card-pro__head h3 { margin:6px 0 12px !important; font-size:21px !important; line-height:1.35 !important; font-weight:750 !important; text-transform:none !important; }
.meiko-job-card-pro__head h3 a { color:var(--meiko-ink) !important; }
.meiko-job-card-pro:hover h3 a { color:var(--meiko-blue) !important; }
.meiko-urgent-badge { display:inline-flex; align-items:center; padding:5px 9px; border-radius:999px; background:#fff0f1; color:var(--meiko-red); font-size:11px; line-height:1; font-weight:850; text-transform:uppercase; letter-spacing:.06em; }
.meiko-job-arrow { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:var(--meiko-soft); color:var(--meiko-blue); font-size:18px; flex:0 0 auto; }
.meiko-job-card-pro__meta { display:flex; flex-wrap:wrap; gap:8px 16px; margin-bottom:11px; }
.meiko-job-chip { display:inline-flex; gap:6px; align-items:center; color:#697489; font-size:13px; }
.meiko-job-chip svg { color:#8a98aa; width:15px !important; height:15px !important; }
.meiko-job-card-pro__excerpt { margin:0 !important; max-width:820px; color:#616c80 !important; font-size:14px !important; line-height:1.65 !important; }
.meiko-job-card-pro__actions { min-width:158px; display:flex; flex-direction:column; align-items:stretch; gap:10px; }
.meiko-text-link { color:var(--meiko-blue) !important; font-size:13px; font-weight:760; text-align:center; }
.meiko-job-card-pro__actions .meiko-btn-pro { min-height:44px; padding:0 18px; }

.meiko-pagination-pro { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:7px; margin-top:34px; }
.meiko-pagination-pro .page-numbers { min-width:40px; height:40px; padding:0 10px; display:grid; place-items:center; border-radius:9px; border:1px solid var(--meiko-line); color:var(--meiko-text) !important; background:#fff; font-size:13px; font-weight:700; }
.meiko-pagination-pro .page-numbers.current { color:#fff !important; border-color:var(--meiko-blue); background:var(--meiko-blue); }
.meiko-pagination-pro .page-numbers:hover { border-color:var(--meiko-blue); color:var(--meiko-blue) !important; }
.meiko-pagination-pro .page-numbers.current:hover { color:#fff !important; }
.meiko-jobs-empty { padding:58px 30px; border:1px dashed #ccd7e2; border-radius:16px; text-align:center; background:var(--meiko-soft); }
.meiko-jobs-empty > span { color:var(--meiko-blue); font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.meiko-jobs-empty h3 { font-size:25px; margin:10px 0 8px; }
.meiko-jobs-empty p { margin:0 auto 22px; max-width:540px; }

/* ---------- Benefits ---------- */
.meiko-benefits-pro { padding:88px 0 94px; background:var(--meiko-soft); border-top:1px solid #edf1f5; border-bottom:1px solid #edf1f5; }
.meiko-benefit-grid-pro { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:38px; }
.meiko-benefit-grid-pro article { background:#fff; border:1px solid #e4eaf0; border-radius:16px; padding:28px 26px; min-height:190px; }
.meiko-benefit-grid-pro article > span { color:var(--meiko-red); font-size:12px; font-weight:900; letter-spacing:.12em; }
.meiko-benefit-grid-pro h3 { font-size:18px; margin:28px 0 8px; }
.meiko-benefit-grid-pro p { font-size:14px; margin:0; line-height:1.65; }

.meiko-careers-cta-pro { background:var(--meiko-blue-dark); color:#fff; }
.meiko-careers-cta-pro__inner { min-height:260px; display:flex; align-items:center; justify-content:space-between; gap:40px; padding-top:48px; padding-bottom:48px; }
.meiko-careers-cta-pro span { color:#b9daf3; font-size:11px; font-weight:800; letter-spacing:.14em; }
.meiko-careers-cta-pro h2 { color:#fff; font-size:36px; margin:8px 0 8px; }
.meiko-careers-cta-pro p { color:#d8e9f7; margin:0; max-width:660px; }
.meiko-careers-cta-pro .meiko-btn-pro span { color:inherit; font-size:16px; letter-spacing:0; }

/* Legacy content that remains under the new board */
.meiko-careers-pro-page .meiko-legacy-section-title { max-width:1180px; margin:72px auto 28px !important; color:var(--meiko-ink) !important; font-size:30px !important; font-weight:760 !important; text-transform:none !important; letter-spacing:-.02em !important; }

/* ---------- Single job ---------- */
.meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro { width:min(1180px, calc(100% - 48px)) !important; max-width:1180px !important; margin:0 auto !important; padding:0 0 90px !important; background:transparent !important; color:var(--meiko-text); overflow:visible !important; }
.meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro > .row,
.meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro > .container { width:auto !important; max-width:none !important; margin:0 !important; padding:0 !important; }
.meiko-single-hero-pro { margin:34px 0 34px; padding:42px 44px; background:linear-gradient(125deg,#f6faff,#edf6fd); border:1px solid #dfeaf4; border-radius:20px; position:relative; overflow:hidden; }
.meiko-single-hero-pro::after { content:""; position:absolute; width:260px; height:260px; right:-95px; top:-135px; border:1px solid rgba(7,103,178,.12); border-radius:50%; box-shadow:0 0 0 42px rgba(7,103,178,.028),0 0 0 84px rgba(7,103,178,.018); }
.meiko-single-hero-pro__inner { position:relative; z-index:1; }
.meiko-single-back { display:inline-flex; align-items:center; gap:7px; color:var(--meiko-blue) !important; font-size:13px; font-weight:750; margin-bottom:26px; }
.meiko-single-back svg { width:17px !important; height:17px !important; }
.meiko-single-hero-pro h1 { max-width:930px; color:var(--meiko-ink) !important; font-size:clamp(34px,4vw,50px) !important; line-height:1.13 !important; letter-spacing:-.035em !important; font-weight:760 !important; text-transform:none !important; margin:12px 0 20px !important; }
.meiko-single-meta { display:flex; flex-wrap:wrap; gap:8px 12px; }
.meiko-single-meta-chip { display:inline-flex; align-items:center; gap:7px; padding:8px 11px; background:rgba(255,255,255,.86); border:1px solid #dbe6ef; border-radius:999px; color:#5c697d; font-size:13px; }
.meiko-single-meta-chip svg { width:15px !important; height:15px !important; color:var(--meiko-blue); }
.meiko-single-hero-actions { display:flex; gap:10px; margin-top:28px; }
.meiko-share-job { font-family:inherit; }

.meiko-single-layout-pro { display:grid; grid-template-columns:minmax(0,1fr) 370px; gap:34px; align-items:start; }
.meiko-job-content-pro { min-width:0; background:#fff; border:1px solid var(--meiko-line); border-radius:18px; padding:38px 42px; box-shadow:0 10px 34px rgba(25,53,85,.045); }
.meiko-job-content-pro > :first-child { margin-top:0 !important; }
.meiko-job-content-pro h1,
.meiko-job-content-pro h2:not(.meiko-job-section-title),
.meiko-job-content-pro .job-title { text-transform:none !important; }
.meiko-job-content-pro p,
.meiko-job-content-pro li { color:#4f5a6e !important; font-size:15px !important; line-height:1.8 !important; }
.meiko-job-content-pro ul,
.meiko-job-content-pro ol { padding-left:22px !important; margin:12px 0 22px !important; }
.meiko-job-content-pro li { margin-bottom:7px !important; }
.meiko-job-content-pro hr { border:0 !important; height:1px !important; background:#edf1f5 !important; margin:28px 0 !important; }
.meiko-job-section-title { position:relative; color:var(--meiko-ink) !important; font-size:21px !important; line-height:1.35 !important; text-transform:none !important; font-weight:780 !important; letter-spacing:-.015em !important; margin:38px 0 18px !important; padding-left:18px !important; }
.meiko-job-section-title::before { content:""; position:absolute; left:0; top:.17em; width:4px; height:1.15em; border-radius:4px; background:var(--meiko-red); }
.meiko-job-content-pro .job-features,
.meiko-job-content-pro .sjb-job-features,
.meiko-job-content-pro [class*="job-features"] { background:var(--meiko-soft); border:1px solid #e5ebf1; border-radius:12px; padding:18px 20px; margin-top:26px; }
.meiko-job-features-title { font-size:17px !important; text-transform:none !important; }

.meiko-apply-card-pro { position:sticky; top:92px; background:#fff; border:1px solid #dfe6ed; border-radius:18px; padding:26px; box-shadow:0 18px 55px rgba(24,52,88,.09); overflow:hidden; scroll-margin-top:95px; }
.meiko-apply-card-pro::before { content:""; display:block; height:4px; background:linear-gradient(90deg,var(--meiko-blue),var(--meiko-red)); margin:-26px -26px 24px; }
.meiko-apply-card-pro__head > span { color:var(--meiko-blue); font-size:10px; font-weight:850; letter-spacing:.13em; }
.meiko-apply-card-pro__head h2 { color:var(--meiko-ink) !important; font-size:24px !important; line-height:1.25 !important; text-transform:none !important; margin:7px 0 8px !important; }
.meiko-apply-card-pro__head p { font-size:13px !important; line-height:1.55 !important; margin:0 0 22px !important; color:#697489 !important; }
.meiko-apply-card-pro form { margin:0 !important; }
.meiko-apply-card-pro form .row { margin-left:-6px !important; margin-right:-6px !important; }
.meiko-apply-card-pro form [class*="col-"] { width:100% !important; float:none !important; padding-left:6px !important; padding-right:6px !important; }
.meiko-apply-card-pro form label { display:block !important; color:#354055 !important; font-size:13px !important; font-weight:700 !important; text-transform:none !important; margin-bottom:7px !important; }
.meiko-apply-card-pro input[type="text"],
.meiko-apply-card-pro input[type="email"],
.meiko-apply-card-pro input[type="tel"],
.meiko-apply-card-pro input[type="number"],
.meiko-apply-card-pro select,
.meiko-apply-card-pro textarea { width:100% !important; min-height:46px !important; margin:0 0 14px !important; padding:10px 12px !important; border:1px solid #d8e1e9 !important; border-radius:9px !important; background:#fff !important; color:var(--meiko-ink) !important; box-shadow:none !important; font:inherit !important; font-size:14px !important; }
.meiko-apply-card-pro textarea { min-height:90px !important; resize:vertical; }
.meiko-apply-card-pro input:focus,
.meiko-apply-card-pro select:focus,
.meiko-apply-card-pro textarea:focus { outline:none !important; border-color:var(--meiko-blue) !important; box-shadow:0 0 0 3px rgba(7,103,178,.08) !important; }
.meiko-apply-card-pro input[type="file"] { width:100% !important; margin:4px 0 15px !important; padding:10px !important; border:1px dashed #cbd7e2 !important; border-radius:9px !important; background:var(--meiko-soft) !important; font-size:12px !important; }
.meiko-apply-card-pro input[type="checkbox"] { width:auto !important; min-height:0 !important; margin:3px 7px 0 0 !important; accent-color:var(--meiko-blue); }
.meiko-apply-card-pro .sjb-checkbox,
.meiko-apply-card-pro [class*="checkbox"] { font-size:11px !important; line-height:1.5 !important; }
.meiko-apply-card-pro button[type="submit"],
.meiko-apply-card-pro input[type="submit"],
.meiko-apply-card-pro .btn-primary { width:100% !important; min-height:48px !important; border:0 !important; border-radius:9px !important; background:var(--meiko-red) !important; color:#fff !important; font-weight:800 !important; font-size:14px !important; box-shadow:none !important; }
.meiko-apply-card-pro button[type="submit"]:hover,
.meiko-apply-card-pro input[type="submit"]:hover,
.meiko-apply-card-pro .btn-primary:hover { background:var(--meiko-red-dark) !important; }
.meiko-apply-card-pro button.close,
.meiko-apply-card-pro .close { display:none !important; }
.meiko-apply-trust { margin-top:18px; padding:14px 15px; border-radius:10px; background:#f1f8f4; border:1px solid #dceee2; }
.meiko-apply-trust strong { display:block; color:#257346; font-size:12px; margin-bottom:4px; }
.meiko-apply-trust span { display:block; color:#637267; font-size:10.5px; line-height:1.5; }

.meiko-mobile-apply-pro { display:none; }

@media (max-width: 1100px) {
    .meiko-careers-hero-pro__grid { grid-template-columns:1fr .8fr; gap:38px; }
    .meiko-job-search-pro { grid-template-columns:1fr 1fr 1fr; }
    .meiko-filter-control--keyword { grid-column:span 2; }
    .meiko-search-btn-pro { min-width:0; }
    .meiko-single-layout-pro { grid-template-columns:minmax(0,1fr) 335px; gap:22px; }
    .meiko-job-content-pro { padding:32px; }
}

@media (max-width: 820px) {
    .meiko-careers-container { width:min(100% - 32px, 1180px); }
    .meiko-careers-hero-pro__grid { grid-template-columns:1fr; min-height:0; padding-top:58px; padding-bottom:58px; }
    .meiko-careers-hero-pro__visual { display:none; }
    .meiko-careers-hero-pro__copy h1 { font-size:44px; }
    .meiko-open-jobs-pro { padding:68px 0; }
    .meiko-section-head-pro { align-items:flex-start; flex-direction:column; gap:12px; }
    .meiko-job-search-pro { grid-template-columns:1fr 1fr; }
    .meiko-filter-control--keyword { grid-column:1 / -1; }
    .meiko-search-btn-pro { width:100%; }
    .meiko-job-card-pro { grid-template-columns:1fr; gap:20px; }
    .meiko-job-card-pro__actions { min-width:0; flex-direction:row; align-items:center; justify-content:flex-end; }
    .meiko-job-card-pro__actions .meiko-btn-pro { min-width:120px; }
    .meiko-benefit-grid-pro { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .meiko-careers-cta-pro__inner { flex-direction:column; align-items:flex-start; }

    .meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro { width:min(100% - 32px,1180px) !important; padding-bottom:110px !important; }
    .meiko-single-layout-pro { grid-template-columns:1fr; }
    .meiko-apply-card-pro { position:relative; top:auto; }
    .meiko-mobile-apply-pro { position:fixed; z-index:99999; left:0; right:0; bottom:0; min-height:74px; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.96); border-top:1px solid #dde5ec; box-shadow:0 -10px 30px rgba(20,45,74,.10); display:flex; align-items:center; justify-content:space-between; gap:16px; backdrop-filter:blur(10px); }
    .meiko-mobile-apply-pro__text { min-width:0; }
    .meiko-mobile-apply-pro__text strong { color:var(--meiko-ink); display:block; font-size:13px; }
    .meiko-mobile-apply-pro__text span { color:var(--meiko-muted); display:block; font-size:11px; }
    .meiko-mobile-apply-pro .meiko-btn-pro { min-height:44px; padding:0 18px; }
}

@media (max-width: 560px) {
    .meiko-careers-container { width:calc(100% - 24px); }
    .meiko-careers-hero-pro__grid { padding-top:44px; padding-bottom:46px; }
    .meiko-careers-hero-pro__copy h1 { font-size:36px; margin-top:14px; }
    .meiko-careers-hero-pro__copy > p { font-size:16px; }
    .meiko-hero-actions-pro { flex-direction:column; }
    .meiko-hero-actions-pro .meiko-btn-pro { width:100%; }
    .meiko-section-head-pro h2 { font-size:31px; }
    .meiko-job-search-pro { grid-template-columns:1fr; padding:10px; }
    .meiko-filter-control--keyword { grid-column:auto; }
    .meiko-job-search-pro input[type="search"], .meiko-job-search-pro select { height:50px !important; min-height:50px !important; }
    .meiko-search-btn-pro { height:50px; }
    .meiko-job-card-pro { padding:22px 20px; }
    .meiko-job-card-pro__head h3 { font-size:19px !important; }
    .meiko-job-card-pro__actions { justify-content:space-between; }
    .meiko-benefit-grid-pro { grid-template-columns:1fr; }
    .meiko-benefits-pro { padding:66px 0; }
    .meiko-careers-cta-pro h2 { font-size:30px; }

    .meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro { width:calc(100% - 24px) !important; }
    .meiko-single-hero-pro { padding:28px 22px; margin:20px 0 22px; border-radius:16px; }
    .meiko-single-hero-pro h1 { font-size:31px !important; }
    .meiko-single-hero-actions { flex-direction:column; }
    .meiko-single-hero-actions .meiko-btn-pro { width:100%; }
    .meiko-job-content-pro { padding:26px 20px; border-radius:14px; }
    .meiko-job-section-title { font-size:19px !important; }
    .meiko-apply-card-pro { padding:22px 18px; border-radius:14px; }
    .meiko-apply-card-pro::before { margin:-22px -18px 20px; }
}

/* ==========================================================
   v1.4.0 — UI/UX refinement from live-site review
   ========================================================== */

/* Careers page takeover: keep header/footer, remove legacy BeTheme recruitment blocks. */
.meiko-careers-pro-page .meiko-careers-legacy-section-hide,
.meiko-careers-pro-page .meiko-careers-legacy-sibling-hide,
.meiko-careers-pro-page .meiko-legacy-hide { display:none !important; }

.meiko-careers-pro-page .meiko-careers-own-section {
    margin:0 !important;
    padding:0 !important;
    background:#fff !important;
}
.meiko-careers-pro-page .meiko-careers-own-section > .section_wrapper,
.meiko-careers-pro-page .meiko-careers-shell-ancestor {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
}
.meiko-careers-pro-page.meiko-careers-takeover-ready .meiko-careers-pro {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
}

/* More compact, corporate hero. */
.meiko-careers-pro-page .meiko-careers-hero-pro__grid {
    min-height:440px;
    grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);
    gap:54px;
    padding-top:54px;
    padding-bottom:54px;
}
.meiko-careers-pro-page .meiko-careers-hero-pro__copy h1 {
    font-size:clamp(42px,4.5vw,58px);
    line-height:1.02;
    margin:15px 0 18px;
}
.meiko-careers-pro-page .meiko-careers-hero-pro__copy > p {
    max-width:620px;
    font-size:17px;
    line-height:1.68;
    margin-bottom:25px;
}
.meiko-careers-pro-page .meiko-careers-hero-pro__visual { height:310px; }
.meiko-careers-pro-page .meiko-visual-card--primary {
    inset:20px 46px 32px 34px;
    padding:32px 34px;
    border-radius:18px;
    box-shadow:0 22px 55px rgba(6,79,136,.20);
}
.meiko-careers-pro-page .meiko-visual-card--primary strong {
    font-size:38px;
    margin:29px 0 22px;
}
.meiko-careers-pro-page .meiko-visual-card--stat {
    right:0;
    bottom:2px;
    width:154px;
    min-height:96px;
    padding:17px 16px;
    border-radius:16px;
}
.meiko-careers-pro-page .meiko-visual-card--stat b { font-size:32px; }
.meiko-careers-pro-page .meiko-visual-lines {
    left:2px;
    top:6px;
    width:56px;
    height:56px;
    gap:5px;
}
.meiko-careers-pro-page .meiko-trust-line { margin-top:20px; font-size:13px; }

/* Jobs area tighter and easier to scan. */
.meiko-careers-pro-page .meiko-open-jobs-pro { padding:72px 0 76px; }
.meiko-careers-pro-page .meiko-section-head-pro { margin-bottom:27px; }
.meiko-careers-pro-page .meiko-section-head-pro h2 { font-size:clamp(30px,3vw,39px); }
.meiko-careers-pro-page .meiko-job-search-pro {
    border-radius:14px;
    padding:10px;
    box-shadow:0 10px 28px rgba(28,59,94,.055);
}
.meiko-careers-pro-page .meiko-job-search-pro input[type="search"],
.meiko-careers-pro-page .meiko-job-search-pro select,
.meiko-careers-pro-page .meiko-search-btn-pro {
    height:48px !important;
    min-height:48px !important;
}
.meiko-careers-pro-page .meiko-job-card-pro {
    padding:23px 25px;
    border-radius:14px;
    gap:24px;
}
.meiko-careers-pro-page .meiko-job-card-pro__head h3 { font-size:20px !important; }
.meiko-careers-pro-page .meiko-benefits-pro { padding:70px 0 74px; }
.meiko-careers-pro-page .meiko-benefit-grid-pro { margin-top:30px; }
.meiko-careers-pro-page .meiko-benefit-grid-pro article {
    min-height:165px;
    padding:23px 23px;
    border-radius:14px;
}
.meiko-careers-pro-page .meiko-benefit-grid-pro h3 { margin-top:22px; }

/* Practical recruitment information replaces the old 2025 legacy block. */
.meiko-application-info-pro {
    padding:70px 0 74px;
    background:#fff;
    border-top:1px solid #edf1f5;
}
.meiko-section-head-pro--compact { margin-bottom:26px; }
.meiko-section-head-pro--compact h2 { font-size:clamp(28px,2.8vw,36px); }
.meiko-application-info-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}
.meiko-application-info-grid article {
    min-height:170px;
    padding:25px 25px;
    border:1px solid var(--meiko-line);
    border-radius:14px;
    background:#fff;
}
.meiko-info-kicker {
    display:block;
    margin-bottom:12px;
    color:var(--meiko-blue);
    font-size:10px;
    font-weight:850;
    letter-spacing:.12em;
}
.meiko-application-info-grid strong {
    display:block;
    color:var(--meiko-ink);
    font-size:17px;
    line-height:1.45;
    font-weight:760;
}
.meiko-application-info-grid strong a { color:var(--meiko-ink) !important; }
.meiko-application-info-grid p {
    margin:10px 0 0;
    color:#687489;
    font-size:13px;
    line-height:1.6;
}
.meiko-careers-pro-page .meiko-careers-cta-pro__inner { min-height:215px; padding-top:40px; padding-bottom:40px; }
.meiko-careers-pro-page .meiko-careers-cta-pro h2 { font-size:32px; }

/* ---------------- Single job v1.4 ---------------- */
.meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro {
    width:min(1180px,calc(100% - 48px)) !important;
    padding-bottom:78px !important;
}
.meiko-job-detail-pro-page .meiko-single-hero-pro {
    margin:28px 0 28px;
    padding:32px 36px;
    border-radius:16px;
}
.meiko-job-detail-pro-page .meiko-single-back { margin-bottom:18px; }
.meiko-job-detail-pro-page .meiko-single-hero-pro h1 {
    max-width:900px;
    font-size:clamp(32px,3.4vw,42px) !important;
    line-height:1.14 !important;
    letter-spacing:-.028em !important;
    margin:10px 0 17px !important;
}
.meiko-job-detail-pro-page .meiko-single-hero-actions { margin-top:22px; }
.meiko-job-detail-pro-page .meiko-single-layout-pro {
    grid-template-columns:minmax(0,1fr) 420px;
    gap:28px;
}
.meiko-job-detail-pro-page .meiko-job-content-pro {
    padding:34px 38px;
    border-radius:16px;
    box-shadow:0 8px 28px rgba(25,53,85,.04);
}
.meiko-job-detail-pro-page .meiko-job-content-pro p,
.meiko-job-detail-pro-page .meiko-job-content-pro li {
    font-size:15px !important;
    line-height:1.76 !important;
}
.meiko-job-detail-pro-page .meiko-job-section-title {
    margin:31px 0 16px !important;
    font-size:20px !important;
}
.meiko-job-detail-pro-page .meiko-single-junk-hide,
.meiko-job-detail-pro-page .meiko-application-heading-old { display:none !important; }

.meiko-job-detail-pro-page .meiko-apply-card-pro {
    top:82px;
    padding:24px;
    border-radius:16px;
    box-shadow:0 14px 42px rgba(24,52,88,.075);
}
.meiko-job-detail-pro-page .meiko-apply-card-pro::before { margin:-24px -24px 21px; height:3px; }
.meiko-job-detail-pro-page .meiko-apply-card-pro__head h2 {
    font-size:23px !important;
    margin-top:6px !important;
}
.meiko-job-detail-pro-page .meiko-apply-card-pro__head p { margin-bottom:18px !important; }
.meiko-job-detail-pro-page .meiko-apply-card-pro form .form-group,
.meiko-job-detail-pro-page .meiko-apply-card-pro form .sjb-form-group { margin-bottom:14px !important; }
.meiko-job-detail-pro-page .meiko-apply-card-pro form label {
    font-size:12.5px !important;
    margin-bottom:6px !important;
}
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="text"],
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="email"],
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="tel"],
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="number"],
.meiko-job-detail-pro-page .meiko-apply-card-pro select,
.meiko-job-detail-pro-page .meiko-apply-card-pro textarea {
    min-height:48px !important;
    border-radius:9px !important;
    font-size:13.5px !important;
}
.meiko-job-detail-pro-page .meiko-apply-card-pro textarea { min-height:96px !important; }

/* International phone input must occupy the complete sidebar width. */
.meiko-job-detail-pro-page .meiko-phone-wrap-pro,
.meiko-job-detail-pro-page .meiko-apply-card-pro .iti,
.meiko-job-detail-pro-page .meiko-apply-card-pro .intl-tel-input {
    display:block !important;
    width:100% !important;
    max-width:none !important;
}
.meiko-job-detail-pro-page .meiko-phone-wrap-pro input,
.meiko-job-detail-pro-page .meiko-apply-card-pro .iti input,
.meiko-job-detail-pro-page .meiko-apply-card-pro .intl-tel-input input {
    width:100% !important;
    max-width:none !important;
}

/* Clean validation messages instead of inline overflow beside fields. */
.meiko-job-detail-pro-page .meiko-apply-card-pro .help-block,
.meiko-job-detail-pro-page .meiko-apply-card-pro .error,
.meiko-job-detail-pro-page .meiko-apply-card-pro label.error,
.meiko-job-detail-pro-page .meiko-apply-card-pro [class*="invalid"],
.meiko-job-detail-pro-page .meiko-apply-card-pro [class*="validation"] {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin:-6px 0 12px !important;
    color:#c62828 !important;
    font-size:11.5px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
    white-space:normal !important;
}

/* Custom CV chooser. Native file input remains functional but invisible. */
.meiko-file-upload-pro {
    position:relative;
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:12px;
    row-gap:2px;
    align-items:center;
    width:100%;
    min-height:66px;
    margin:4px 0 15px !important;
    padding:12px 13px !important;
    border:1px dashed #c8d5e1 !important;
    border-radius:10px;
    background:#f8fafc;
    cursor:pointer;
    overflow:hidden;
}
.meiko-file-upload-pro:hover { border-color:var(--meiko-blue) !important; background:#f2f8fd; }
.meiko-native-file-input {
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
    opacity:0 !important;
    cursor:pointer !important;
    z-index:2;
}
.meiko-file-upload-pro__action {
    grid-row:1 / span 2;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:88px;
    min-height:38px;
    padding:0 12px;
    border-radius:8px;
    background:#eaf4fc;
    color:var(--meiko-blue);
    font-size:12px;
    font-weight:800;
}
.meiko-file-upload-pro__name {
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#445168;
    font-size:12.5px;
    font-weight:650;
}
.meiko-file-upload-pro__hint { color:#8893a5; font-size:10.5px; font-weight:500; }

.meiko-job-detail-pro-page .meiko-consent-row-pro {
    display:grid !important;
    grid-template-columns:18px minmax(0,1fr);
    column-gap:8px;
    align-items:start;
    margin:17px 0 16px !important;
    color:#586478 !important;
    font-size:11.5px !important;
    line-height:1.58 !important;
    font-weight:500 !important;
}
.meiko-job-detail-pro-page .meiko-consent-row-pro input[type="checkbox"] {
    grid-column:1;
    margin:3px 0 0 !important;
}
.meiko-job-detail-pro-page .meiko-consent-row-pro *:not(input) {
    font-size:inherit !important;
    line-height:inherit !important;
    font-weight:inherit !important;
}

/* Force the actual SJB submit action to Meiko red. */
.meiko-job-detail-pro-page .meiko-apply-card-pro #sjb-form-submit-button,
.meiko-job-detail-pro-page .meiko-apply-card-pro button[type="submit"],
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="submit"],
.meiko-job-detail-pro-page .meiko-apply-card-pro .btn-primary,
.meiko-job-detail-pro-page .meiko-apply-card-pro .sjb-submit-button {
    width:100% !important;
    min-height:46px !important;
    background:var(--meiko-red) !important;
    border-color:var(--meiko-red) !important;
    color:#fff !important;
    border-radius:9px !important;
    box-shadow:none !important;
}
.meiko-job-detail-pro-page .meiko-apply-card-pro #sjb-form-submit-button:hover,
.meiko-job-detail-pro-page .meiko-apply-card-pro button[type="submit"]:hover,
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="submit"]:hover,
.meiko-job-detail-pro-page .meiko-apply-card-pro .btn-primary:hover {
    background:var(--meiko-red-dark) !important;
    border-color:var(--meiko-red-dark) !important;
}

/* Keep SJB AJAX loader compact; v1.3 inherited an oversized ring. */
.meiko-job-detail-pro-page .meiko-apply-card-pro [class*="loader"],
.meiko-job-detail-pro-page .meiko-apply-card-pro [class*="spinner"],
.meiko-job-detail-pro-page .meiko-apply-card-pro .sjb-loader,
.meiko-job-detail-pro-page .meiko-apply-card-pro .loader {
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    max-width:28px !important;
    max-height:28px !important;
    margin:14px auto !important;
    border-width:3px !important;
    transform:none;
}

@media (max-width:1100px) {
    .meiko-job-detail-pro-page .meiko-single-layout-pro { grid-template-columns:minmax(0,1fr) 380px; gap:22px; }
    .meiko-careers-pro-page .meiko-careers-hero-pro__grid { grid-template-columns:1fr .72fr; gap:36px; }
}

@media (max-width:820px) {
    .meiko-careers-pro-page .meiko-careers-hero-pro__grid { min-height:0; padding-top:48px; padding-bottom:50px; }
    .meiko-careers-pro-page .meiko-application-info-grid { grid-template-columns:1fr; }
    .meiko-careers-pro-page .meiko-application-info-grid article { min-height:0; }
    .meiko-job-detail-pro-page .meiko-single-layout-pro { grid-template-columns:1fr; }
    .meiko-job-detail-pro-page .meiko-apply-card-pro { position:relative; top:auto; }
}

@media (max-width:560px) {
    .meiko-careers-pro-page .meiko-careers-hero-pro__copy h1 { font-size:34px; }
    .meiko-careers-pro-page .meiko-open-jobs-pro,
    .meiko-careers-pro-page .meiko-benefits-pro,
    .meiko-application-info-pro { padding:54px 0 58px; }
    .meiko-job-detail-pro-page .meiko-single-hero-pro { padding:25px 20px; }
    .meiko-job-detail-pro-page .meiko-single-hero-pro h1 { font-size:29px !important; }
    .meiko-job-detail-pro-page .meiko-job-content-pro { padding:25px 20px; }
    .meiko-job-detail-pro-page .meiko-apply-card-pro { padding:21px 18px; }
    .meiko-job-detail-pro-page .meiko-apply-card-pro::before { margin:-21px -18px 18px; }
}


/* ==========================================================
   v1.5.0 — layout tightening & cleaner professional balance
   ========================================================== */
.meiko-careers-container { width:min(1120px, calc(100% - 40px)); }

.meiko-careers-pro-page .meiko-careers-hero-pro { border-bottom:0; }
.meiko-careers-pro-page .meiko-careers-hero-pro__grid {
    min-height:390px;
    grid-template-columns:minmax(0,1.18fr) minmax(290px,.82fr);
    gap:42px;
    padding-top:42px;
    padding-bottom:42px;
}
.meiko-careers-pro-page .meiko-careers-hero-pro__copy h1 {
    font-size:clamp(38px,4.2vw,52px);
    line-height:1.04;
    margin:12px 0 14px;
    max-width:640px;
}
.meiko-careers-pro-page .meiko-careers-hero-pro__copy > p {
    max-width:560px;
    font-size:16px;
    line-height:1.72;
    margin-bottom:20px;
}
.meiko-careers-pro-page .meiko-hero-actions-pro { gap:12px; }
.meiko-careers-pro-page .meiko-hero-actions-pro .meiko-btn-pro { min-height:46px; }
.meiko-careers-pro-page .meiko-trust-line { margin-top:16px; }
.meiko-careers-pro-page .meiko-careers-hero-pro__visual { height:270px; }
.meiko-careers-pro-page .meiko-visual-card--primary {
    inset:18px 30px 28px 26px;
    padding:28px 30px;
    border-radius:16px;
}
.meiko-careers-pro-page .meiko-visual-card--primary strong { font-size:34px; margin:22px 0 16px; }
.meiko-careers-pro-page .meiko-visual-card--primary span { font-size:13px; }
.meiko-careers-pro-page .meiko-visual-card--stat {
    width:138px;
    min-height:88px;
    right:4px;
    bottom:6px;
    padding:14px 15px;
}
.meiko-careers-pro-page .meiko-visual-card--stat b { font-size:29px; }

.meiko-careers-pro-page .meiko-open-jobs-pro { padding:56px 0 58px; }
.meiko-careers-pro-page .meiko-section-head-pro { margin-bottom:20px; }
.meiko-careers-pro-page .meiko-section-head-pro h2 { font-size:clamp(28px,2.8vw,36px); }
.meiko-careers-pro-page .meiko-section-head-pro p { font-size:14px; }
.meiko-careers-pro-page .meiko-job-search-pro {
    padding:8px;
    border-radius:12px;
    margin-bottom:18px;
}
.meiko-careers-pro-page .meiko-job-search-pro input[type="search"],
.meiko-careers-pro-page .meiko-job-search-pro select,
.meiko-careers-pro-page .meiko-search-btn-pro { height:44px !important; min-height:44px !important; }
.meiko-careers-pro-page .meiko-job-list-pro { gap:12px; }
.meiko-careers-pro-page .meiko-job-card-pro {
    padding:18px 20px;
    border-radius:12px;
    gap:18px;
    grid-template-columns:minmax(0,1fr) 150px;
}
.meiko-careers-pro-page .meiko-job-card-pro__head { gap:12px; }
.meiko-careers-pro-page .meiko-job-card-pro__head h3 { font-size:18px !important; margin:4px 0 8px !important; }
.meiko-careers-pro-page .meiko-job-card-pro__meta { gap:7px 12px; margin-bottom:8px; }
.meiko-careers-pro-page .meiko-job-card-pro__excerpt { font-size:13.5px !important; line-height:1.6 !important; }
.meiko-careers-pro-page .meiko-job-card-pro__actions { min-width:150px; gap:8px; }
.meiko-careers-pro-page .meiko-job-card-pro__actions .meiko-btn-pro { min-height:40px; }
.meiko-careers-pro-page .meiko-pagination-pro { margin-top:22px; }

.meiko-careers-pro-page .meiko-benefits-pro,
.meiko-careers-pro-page .meiko-application-info-pro { padding:54px 0 56px; }
.meiko-careers-pro-page .meiko-benefit-grid-pro { margin-top:24px; gap:14px; }
.meiko-careers-pro-page .meiko-benefit-grid-pro article {
    min-height:148px;
    padding:20px 20px;
    border-radius:12px;
}
.meiko-careers-pro-page .meiko-benefit-grid-pro h3 { margin-top:18px; font-size:18px; }
.meiko-careers-pro-page .meiko-application-info-grid { gap:12px; }
.meiko-careers-pro-page .meiko-application-info-grid article {
    min-height:148px;
    padding:20px 20px;
    border-radius:12px;
}
.meiko-careers-pro-page .meiko-careers-cta-pro__inner {
    min-height:150px;
    padding-top:30px;
    padding-bottom:30px;
    align-items:center;
}
.meiko-careers-pro-page .meiko-careers-cta-pro h2 { font-size:28px; margin-bottom:8px; }
.meiko-careers-pro-page .meiko-careers-cta-pro p { max-width:620px; }

/* Hide leftover legacy blocks more decisively once takeover is ready. */
.meiko-careers-pro-page.meiko-careers-takeover-ready .sections_group > .section:not(.meiko-careers-own-section):not(.section-page-title),
.meiko-careers-pro-page.meiko-careers-takeover-ready .section_wrapper > .column:not(.column_column):not(.mcb-column-inner):not(.meiko-careers-shell-ancestor) > *:not(.meiko-careers-pro),
.meiko-careers-pro-page.meiko-careers-takeover-ready .meiko-careers-legacy-block {
    display:none !important;
}

/* Single job page tighter, more even composition. */
.meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro { width:min(1200px, calc(100% - 40px)) !important; padding-bottom:54px !important; }
.meiko-job-detail-pro-page .meiko-single-hero-pro {
    margin:18px 0 22px;
    padding:24px 28px;
    border-radius:14px;
}
.meiko-job-detail-pro-page .meiko-single-back { margin-bottom:14px; }
.meiko-job-detail-pro-page .meiko-single-hero-pro h1 {
    font-size:clamp(29px,3vw,38px) !important;
    line-height:1.16 !important;
    margin:8px 0 14px !important;
}
.meiko-job-detail-pro-page .meiko-single-meta { gap:8px 10px; }
.meiko-job-detail-pro-page .meiko-single-hero-actions { margin-top:18px; gap:10px; }
.meiko-job-detail-pro-page .meiko-single-layout-pro {
    grid-template-columns:minmax(0,1fr) 390px;
    gap:24px;
    align-items:start;
}
.meiko-job-detail-pro-page .meiko-job-content-pro {
    padding:26px 28px;
    border-radius:14px;
    box-shadow:0 6px 22px rgba(25,53,85,.04);
}
.meiko-job-detail-pro-page .meiko-job-content-pro > hr:first-child,
.meiko-job-detail-pro-page .meiko-job-content-pro > p:empty,
.meiko-job-detail-pro-page .meiko-job-content-pro .meiko-job-features-title,
.meiko-job-detail-pro-page .meiko-job-content-pro .sjb-job-features,
.meiko-job-detail-pro-page .meiko-job-content-pro .job-features,
.meiko-job-detail-pro-page .meiko-job-content-pro .job_features,
.meiko-job-detail-pro-page .meiko-job-content-pro .jobpost-features,
.meiko-job-detail-pro-page .meiko-job-content-pro [class*="job-feature"] {
    display:none !important;
}
.meiko-job-detail-pro-page .meiko-job-content-pro p,
.meiko-job-detail-pro-page .meiko-job-content-pro li { font-size:14px !important; line-height:1.72 !important; }
.meiko-job-detail-pro-page .meiko-job-section-title { margin:26px 0 12px !important; font-size:18px !important; }
.meiko-job-detail-pro-page .meiko-job-content-pro ul,
.meiko-job-detail-pro-page .meiko-job-content-pro ol { margin:0 0 14px 18px !important; }
.meiko-job-detail-pro-page .meiko-apply-card-pro {
    top:24px;
    padding:20px;
    border-radius:14px;
    box-shadow:0 10px 30px rgba(24,52,88,.065);
}
.meiko-job-detail-pro-page .meiko-apply-card-pro::before { margin:-20px -20px 18px; }
.meiko-job-detail-pro-page .meiko-apply-card-pro__head h2 { font-size:21px !important; margin:4px 0 6px !important; }
.meiko-job-detail-pro-page .meiko-apply-card-pro__head p { font-size:13px !important; line-height:1.6 !important; margin-bottom:14px !important; }
.meiko-job-detail-pro-page .meiko-apply-card-pro form .form-group,
.meiko-job-detail-pro-page .meiko-apply-card-pro form .sjb-form-group { margin-bottom:12px !important; }
.meiko-job-detail-pro-page .meiko-apply-card-pro form label { font-size:12px !important; margin-bottom:5px !important; }
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="text"],
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="email"],
.meiko-job-detail-pro-page .meiko-apply-card-pro input[type="tel"],
.meiko-job-detail-pro-page .meiko-apply-card-pro select,
.meiko-job-detail-pro-page .meiko-apply-card-pro textarea {
    min-height:44px !important;
    font-size:13px !important;
}
.meiko-job-detail-pro-page .meiko-apply-card-pro textarea { min-height:90px !important; }
.meiko-job-detail-pro-page .meiko-file-upload-pro { min-height:60px; padding:11px 12px !important; }
.meiko-job-detail-pro-page .meiko-file-upload-pro__action { min-width:80px; min-height:34px; }
.meiko-job-detail-pro-page .meiko-consent-row-pro { margin:14px 0 14px !important; }
.meiko-job-detail-pro-page .meiko-apply-trust { margin-top:12px; padding:12px 12px; border-radius:10px; }
.meiko-job-detail-pro-page .meiko-apply-card-pro [class*="loader"],
.meiko-job-detail-pro-page .meiko-apply-card-pro [class*="spinner"],
.meiko-job-detail-pro-page .meiko-apply-card-pro .sjb-loader,
.meiko-job-detail-pro-page .meiko-apply-card-pro .loader { margin:10px auto 0 !important; }

@media (max-width: 1100px) {
    .meiko-careers-container { width:min(1100px, calc(100% - 32px)); }
    .meiko-careers-pro-page .meiko-careers-hero-pro__grid { grid-template-columns:1fr .78fr; gap:28px; }
    .meiko-job-detail-pro-page .meiko-single-layout-pro { grid-template-columns:minmax(0,1fr) 360px; }
}
@media (max-width: 820px) {
    .meiko-careers-pro-page .meiko-job-card-pro { grid-template-columns:1fr; }
    .meiko-careers-pro-page .meiko-job-card-pro__actions { min-width:0; flex-direction:row; justify-content:flex-start; }
    .meiko-careers-pro-page .meiko-careers-cta-pro__inner { min-height:0; }
    .meiko-job-detail-pro-page .meiko-single-layout-pro { grid-template-columns:1fr; }
}
@media (max-width: 560px) {
    .meiko-careers-container { width:calc(100% - 24px); }
    .meiko-careers-pro-page .meiko-careers-hero-pro__grid { padding-top:34px; padding-bottom:34px; }
    .meiko-careers-pro-page .meiko-open-jobs-pro,
    .meiko-careers-pro-page .meiko-benefits-pro,
    .meiko-careers-pro-page .meiko-application-info-pro { padding:42px 0 44px; }
    .meiko-job-detail-pro-page .sjb-page.meiko-single-root-pro { width:calc(100% - 24px) !important; }
    .meiko-job-detail-pro-page .meiko-single-hero-pro,
    .meiko-job-detail-pro-page .meiko-job-content-pro,
    .meiko-job-detail-pro-page .meiko-apply-card-pro { padding-left:18px; padding-right:18px; }
}


/* ==========================================================
   v1.5.2 — final duplicate-title cleanup on single job pages
   ========================================================== */
/* SJB still prints the original job header/title inside the content column.
   Hide it completely and keep only the redesigned hero title. */
.meiko-job-detail-pro-page .meiko-job-content-pro > header,
.meiko-job-detail-pro-page .meiko-job-content-pro .sjb-job-info-margin-top,
.meiko-job-detail-pro-page .meiko-job-content-pro .sjb-with-logo,
.meiko-job-detail-pro-page .meiko-job-content-pro .job-detail > h1,
.meiko-job-detail-pro-page .meiko-job-content-pro .job-detail > h2,
.meiko-job-detail-pro-page .meiko-job-content-pro h1 .job-title,
.meiko-job-detail-pro-page .meiko-job-content-pro h2 .job-title,
.meiko-job-detail-pro-page .meiko-job-content-pro .job-title {
    display:none !important;
    font-size:0 !important;
    line-height:0 !important;
    margin:0 !important;
    padding:0 !important;
}

/* Remove the excess top whitespace created by the hidden duplicate title block. */
.meiko-job-detail-pro-page .meiko-job-content-pro {
    padding-top:22px !important;
}
.meiko-job-detail-pro-page .meiko-job-content-pro > :first-child {
    margin-top:0 !important;
}
.meiko-job-detail-pro-page .meiko-job-content-pro .meiko-job-section-title:first-of-type {
    margin-top:4px !important;
}
.meiko-job-detail-pro-page .meiko-job-content-pro hr:first-of-type {
    display:none !important;
}

/* Slightly tighter and more even title spacing in the hero area. */
.meiko-job-detail-pro-page .meiko-single-hero-pro h1 {
    max-width:760px;
    letter-spacing:-0.02em !important;
}
.meiko-job-detail-pro-page .meiko-single-hero-actions {
    margin-top:16px;
}
