:root{
  --blue-900:#0c2f52; --blue-700:#12508a; --blue-500:#1d78c4; --blue-100:#e8f2fb;
  --green-600:#1c8a4a; --green-100:#e5f6ec;
  --red-600:#c0392b; --gray-900:#1c2430; --gray-700:#4a5568; --gray-400:#94a3b8; --gray-100:#f4f6f9;
  --border:#dde3ea; --radius:10px; --shadow:0 1px 3px rgba(16,24,40,.08);
  --maxw:1080px;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--gray-900);background:#fff;line-height:1.6}
.container{max-width:var(--maxw);margin:0 auto;}
a{color:var(--blue-700);text-decoration:none}
h1{font-size:26px;margin:0 0 8px}
h2{font-size:18px}

/* Header - trustworthy, official feel */
.site-header{border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0;z-index:10}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:60px;padding: 0 15px;}
.logo{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--blue-900);font-size:18px}
.logo-badge{width:10px;height:10px;border-radius:50%;background:var(--green-600);display:inline-block}
.main-nav a{margin-left:20px;color:var(--gray-700);font-weight:500;font-size:14px}
.main-nav a:hover{color:var(--blue-700)}

.trust-strip{background:var(--blue-900);color:#fff;font-size:12px;padding: 0 20px;}
.trust-strip .container{display:flex;gap:24px;padding:6px 20px;flex-wrap:wrap}
.trust-strip span{opacity:.9}

.page-main{padding:28px 0px 60px}

/* Hero / homepage */
.hero{text-align:center;padding:36px 15px 24px}
.hero p{color:var(--gray-700);margin-bottom:20px}
#job-search{width:100%;max-width:480px;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius);font-size:15px}

.filter-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:16px 0 28px;padding: 0 20px;}
.filter-btn{border:1px solid var(--border);background:#fff;padding:6px 14px;border-radius:20px;cursor:pointer;font-size:13px;color:var(--gray-700)}
.filter-btn.active,.filter-btn:hover{background:var(--blue-500);color:#fff;border-color:var(--blue-500)}

.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;padding: 0 20px;}
.job-tile{border:1px solid var(--border);border-radius:var(--radius);padding:18px;background:#fff;box-shadow:var(--shadow);transition:transform .12s,box-shadow .12s}
.job-tile:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(16,24,40,.12)}
.job-tile h2{margin:0 0 4px;font-size:16px;color:var(--gray-900)}
.job-tile .dept{color:var(--gray-700);font-size:13px;margin:0 0 10px}
.tile-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--blue-700);font-weight:600}

/* Job post pages */
.breadcrumb{font-size:13px;color:var(--gray-400);margin-bottom:10px;padding: 0 15px;}
.breadcrumb a{color:var(--gray-700)}
.job-card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-width:760px}
.job-card .dept{color:var(--gray-700);margin-top:0}

.p-15{padding: 0 15px;}

.stat-row{display:flex;gap:12px;margin:16px 0;flex-wrap:wrap}
.stat{background:var(--blue-100);border-radius:var(--radius);padding:10px 16px;text-align:center;flex:1;min-width:110px}
.stat .num{display:block;font-weight:700;color:var(--blue-900);font-size:16px}
.stat .lbl{font-size:11px;color:var(--gray-700)}

/* 7-step progress nav */
.steps-nav{margin:20px 0}
.steps-nav ol{display:flex;list-style:none;padding:0;margin:0;overflow-x:auto;gap:4px}
.steps-nav li{flex:1;min-width:80px}
.steps-nav a{display:block;text-align:center;font-size:11px;padding:8px 4px;border-bottom:3px solid var(--border);color:var(--gray-400)}
.steps-nav li.active a{color:var(--blue-700);border-color:var(--blue-500);font-weight:700}
.step-num{display:block;font-weight:700}

.quick-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:14px 0 20px}
.quick-link{display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:var(--gray-100)}
.quick-link:hover{border-color:var(--blue-500);background:var(--blue-100)}
.ql-title{font-weight:700;font-size:13px;color:var(--gray-900)}
.ql-desc{font-size:12px;color:var(--gray-700)}
.faq-heading{margin-top:28px}

.blog-content{max-width:760px;margin-top:28px}
.blog-content h2{margin-bottom:10px}
.blog-content p{color:var(--gray-900);margin:0 0 18px}

.decision-box{background:var(--gray-100);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin:20px 0;text-align:center}
.decision-q{font-weight:700;margin:0 0 12px;font-size:15px}
.decision-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.decision-btn{padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px}
.decision-btn.yes{background:var(--green-600);color:#fff}
.decision-btn.yes:hover{background:#156b39}
.decision-btn.no{background:#fff;color:var(--gray-700);border:1px solid var(--border)}
.decision-btn.no:hover{border-color:var(--blue-500);color:var(--blue-700)}

.cta-btn{display:inline-block;background:var(--blue-700);color:#fff;padding:12px 22px;border-radius:var(--radius);font-weight:600;margin-top:16px;border:none;cursor:pointer;font-size:15px}
.cta-btn:hover{background:var(--blue-900)}
.secondary-link{display:inline-block;margin-top:16px;font-weight:600}

.data-table{width:100%;border-collapse:collapse;margin:16px 0}
.data-table th,.data-table td{border:1px solid var(--border);padding:10px;text-align:left;font-size:14px}
.data-table th{background:var(--gray-100)}
.note{font-size:13px;color:var(--gray-700);background:var(--gray-100);padding:10px 14px;border-radius:8px}

/* Forms - eligibility checker + quiz */
.tool-form .field{margin-bottom:14px}
.tool-form label{display:block;font-size:13px;font-weight:600;margin-bottom:4px}
.tool-form input,.tool-form select{width:100%;max-width:320px;padding:10px;border:1px solid var(--border);border-radius:8px;font-size:14px}
.form-error{color:var(--red-600);font-size:13px;margin:8px 0}
.result-box{margin-top:18px;padding:16px;border-radius:var(--radius);font-weight:600}
.result-box.eligible{background:var(--green-100);color:var(--green-600)}
.result-box.not-eligible{background:#fdeceb;color:var(--red-600)}

.quiz-question{border:none;border-top:1px solid var(--border);padding:14px 0;margin:0}
.quiz-question legend{font-weight:600;padding:0;margin-bottom:8px}
.quiz-option{display:block;padding:6px 0;font-size:14px;cursor:pointer}

.accordion-item{border:1px solid var(--border);border-radius:8px;margin-bottom:8px;overflow:hidden}
.accordion-trigger{width:100%;text-align:left;background:var(--gray-100);border:none;padding:12px 16px;font-weight:600;cursor:pointer;font-size:14px}
.accordion-panel{padding:12px 16px}

.step-list{padding-left:20px}
.step-list li{margin-bottom:10px}

/* Related jobs sidebar */
.related-jobs{max-width:760px;margin-top:30px;border-top:1px solid var(--border);padding-top:20px}
.related-jobs ul{list-style:none;padding:0;display:grid;gap:8px}
.related-jobs a{display:flex;justify-content:space-between;border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-size:14px}
.related-jobs a:hover{border-color:var(--blue-500)}
.rel-vac{color:var(--gray-700);font-size:12px}

.site-footer{border-top:1px solid var(--border);padding:20px 0;font-size:12px;color:var(--gray-700);text-align:center}

/* Ad slots - fixed min-height reserves space up front so ads never cause layout shift */
.ad-slot{margin:5px auto;max-width:760px;text-align:center}
.ad-label{display:block;font-size:10px;color:var(--gray-400);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.ad-slot-inner{min-height:250px;min-width:300px;max-width:100%;margin:0 auto;background:var(--gray-100);display:flex;align-items:center;justify-content:center;border-radius:8px}

.reward-box{border:1px dashed var(--border-strong,var(--border));border-radius:var(--radius);padding:18px;margin:20px 0;text-align:center;max-width:760px}
.reward-btn{background:var(--amber-600,#854f0b);background:#b8720b;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer}
.reward-btn:disabled{opacity:.6;cursor:default}
.reward-unlock{background:var(--green-100);color:var(--green-600);border-radius:8px;padding:16px;margin:16px 0;max-width:760px}

@media(min-width:640px){
  .steps-nav a{font-size:12px}
}
