:root{
  --brand:#0b1f3a; /* dark navy */
  --brand-600:#12315f;
  --brand-700:#0d274c;
  --text:#0f172a;
  --muted:#64748b;
  --bg:#ffffff;
  --card:#f8fafc;
  --ring:#93c5fd;
  --maxw:1100px;
  --radius:14px;
  --shadow:0 2px 10px rgba(0,0,0,0.06);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;color:var(--text);background:var(--bg);line-height:1.5}
a{color:var(--brand-600);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.header, .footer{background:#fff;border-bottom:1px solid #e5e7eb}
.footer{border-top:1px solid #e5e7eb;border-bottom:none;margin-top:48px}
.container{max-width:var(--maxw);margin:0 auto;padding:0 18px}
.brandbar{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:22px;color:var(--brand)}
.brand .logo{width:36px;height:36px;border-radius:8px;background:var(--brand);display:inline-block}
.nav{display:flex;gap:18px}
.nav a{font-weight:600;color:var(--text)}
.main{padding:26px 0}
h1{font-size: clamp(24px, 2.5vw, 34px);margin:0 0 18px}
h2{font-size: clamp(20px, 2vw, 26px);margin:26px 0 12px}
p.lead{color:var(--muted)}
/* Search Row */
.search-wrap{background:var(--card);padding:14px;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #e5e7eb}
.search-grid{display:grid;gap:12px}
.search-grid .row{display:grid;gap:12px}
.input{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dbe3ef;border-radius:12px;padding:10px 12px}
.input label{white-space:nowrap;font-weight:600;color:var(--text)}
.input input, .input select{border:none;outline:none;flex:1;min-width:0;font-size:16px;padding:6px 4px}
.actions{display:flex;gap:12px;justify-content:center;margin-top:8px}
.btn{appearance:none;border:0;border-radius:12px;padding:12px 18px;font-weight:700;cursor:pointer}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-700)}
.btn-secondary{background:#e5e7eb}
/* Force single-row on ≥1000px screens */
@media (min-width:1000px){
  .search-grid{grid-template-columns:1fr}
  .search-grid .row{grid-template-columns:1fr 1fr 1fr}
  .actions{justify-content:center}
}
/* Job Cards */
.jobs{display:grid;gap:14px;margin-top:14px}
.job{background:#fff;border:1px solid #dbe3ef;border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:16px}
.job-info{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.job-title{font-weight:800}
.job-meta{color:var(--muted)}
.job .apply{margin-left:auto}
.apply .btn{min-width:120px}
/* Forms */
.form-card{background:#fff;border:1px solid #dbe3ef;border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}
.form-grid{display:grid;gap:10px}
.control{display:grid;grid-template-columns: 220px 1fr;align-items:center;gap:10px}
.control label{font-weight:700;color:var(--text)}
.control input, .control select, .control textarea{width:100%;border:1px solid #d1d9e6;border-radius:12px;padding:10px 12px;font-size:16px}
.form-actions{display:flex;justify-content:flex-end;margin-top:16px;gap:10px}
@media (max-width:700px){ .control{grid-template-columns:1fr} }
@media (min-width:900px){ .form-grid{grid-template-columns:1fr 1fr} }
/* Footer */
.footer .social{display:flex;gap:10px;flex-wrap:wrap}
.footer small{color:var(--muted)}
.footer .container{max-width:1100px;margin:0 auto;padding:24px 18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}
.footer small{margin-left:auto;color:var(--muted)}
.footer .container{max-width:1100px;margin:0 auto;padding:24px 18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}
.footer small{margin-left:auto;color:var(--muted)}
.footer .container{max-width:1100px;margin:0 auto;padding:24px 18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}
.footer small{margin-left:auto;color:var(--muted)}
.main{padding:26px 0}
.center-wrap{max-width:800px;margin:0 auto}
.card{background:#fff;border:1px solid #dbe3ef;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);padding:22px}
.card.narrow{max-width:520px}
.card.wide{max-width:860px}
.form-grid{display:grid;gap:12px}
.control{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:10px}
.control input,.control select,.control textarea{width:100%;border:1px solid #d1d9e6;border-radius:12px;padding:10px 12px;font-size:16px}
@media (max-width:760px){ .control{grid-template-columns:1fr} }
.footer .container{max-width:1100px;margin:0 auto;padding:24px 18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}
.footer small{margin-left:auto;color:var(--muted)}
/* injected helpers */ .main{padding:26px 0}.center-wrap{max-width:800px;margin:0 auto}.card{background:#fff;border:1px solid #dbe3ef;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);padding:22px}.card.narrow{max-width:520px}.card.wide{max-width:860px}.form-grid{display:grid;gap:12px}.control{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:10px}.control input,.control select,.control textarea{width:100%;border:1px solid #d1d9e6;border-radius:12px;padding:10px 12px;font-size:16px}@media (max-width:760px){ .control{grid-template-columns:1fr} }.footer .container{max-width:1100px;margin:0 auto;padding:24px 18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}.footer small{margin-left:auto;color:var(--muted)} /* end injected */
 /* === injected helpers (safe to append twice) === */
 .container{max-width:1100px;margin:0 auto;padding:0 18px}
 .main{padding:26px 0}
 .center-wrap{max-width:800px;margin:0 auto}
 .card{background:#fff;border:1px solid #dbe3ef;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);padding:22px}
 .card.narrow{max-width:520px}
 .card.wide{max-width:860px}
 .form-grid{display:grid;gap:12px}
 .control{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:10px}
 .control input,.control select,.control textarea{width:100%;border:1px solid #d1d9e6;border-radius:12px;padding:10px 12px;font-size:16px}
 @media (max-width:760px){ .control{grid-template-columns:1fr} }
 .footer .container{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}
 .footer small{margin-left:auto;color:var(--muted)}
 /* === end injected === */
 /* === injected helpers (cards & centering) === */
 :root{--brand:#2563eb;--text:#0f172a;--muted:#6b7280}
 .container{max-width:1100px;margin:0 auto;padding:0 18px}
 .main{padding:26px 0}
 .center-wrap{max-width:800px;margin:0 auto}
 .card{background:#fff;border:1px solid #dbe3ef;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);padding:22px}
 .card.narrow{max-width:520px}
 .card.wide{max-width:860px}
 .title{font-size:clamp(22px,2.4vw,28px);font-weight:800;margin:0 0 12px}
 .lead{color:#475569;margin:0 0 14px}
 .form-grid{display:grid;gap:12px}
 .control{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:10px}
 .control label{font-weight:700;color:var(--text)}
 .control input,.control select,.control textarea{width:100%;border:1px solid #d1d9e6;border-radius:12px;padding:10px 12px;font-size:16px}
 @media (max-width:760px){ .control{grid-template-columns:1fr} }
 .btn{appearance:none;border:0;border-radius:12px;padding:12px 18px;font-weight:700;cursor:pointer}
 .btn-primary{background:var(--brand);color:#fff}
 .btn-primary:hover{filter:brightness(0.95)}
 .btn-ghost{background:#eef2f7;color:var(--text)}
 .footer .container{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}
 .footer small{margin-left:auto;color:var(--muted)}
 /* === end injected === */
:root{--brand:#0b1f44;--brand-700:#0b1a36;--text:#0f172a;--muted:#64748b}
.container{max-width:1100px;margin:0 auto;padding:0 18px}

/* Layout & cards */
.main{padding:34px 0}
.center-wrap{max-width:900px;margin:0 auto}
.card{background:#fff;border:1px solid #e5eaf2;border-radius:16px;box-shadow:0 6px 24px rgba(11,31,68,.06);padding:26px}
.card.narrow{max-width:560px}
.card.wide{max-width:900px}
.title{font-size:clamp(24px,2.4vw,30px);font-weight:800;margin:0 0 8px;color:var(--text)}
.lead{color:#475569;margin:0 0 18px}

/* Decongest ALL forms without touching the HTML */
.card form{display:grid;grid-template-columns:1fr;gap:18px}
.card form .row{display:contents} /* if present, keep grid flow */

/* Put space around every control even if labels are plain text nodes */
.card form input,
.card form select,
.card form textarea{
  display:block;width:100%;
  border:1px solid #d3dae6;border-radius:12px;
  padding:12px 14px;font-size:16px;line-height:1.35;
  background:#fff; transition:border-color .12s, box-shadow .12s;
  margin-top:6px;           /* pushes inputs away from the label text above */
}

/* Make it breathe more on desktop: two columns when there's room */
@media (min-width: 980px){
  .card.wide form{grid-template-columns:1fr 1fr}
  .card.wide form > *{min-width:0}
  /* Inputs should usually span one column; long fields can opt-in with .full if present */
  .card.wide form .full{grid-column:1 / -1}
}

/* Bigger text area */
.card form textarea{min-height:120px;resize:vertical}

/* Focus & hover — navy */
.card form :is(input,select,textarea):focus{
  outline:2px solid transparent;
  border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(11,31,68,.15);
}

/* Checkbox/radio alignment if present */
.card form input[type=checkbox], .card form input[type=radio]{width:auto;display:inline-block;margin:0 8px 0 0}

/* Buttons */
.btn{appearance:none;border:0;border-radius:12px;padding:12px 18px;font-weight:700;cursor:pointer}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-700)}
.btn-ghost{background:#edf2f7;color:var(--text)}
.btn-block{display:inline-flex;align-items:center;justify-content:center;gap:8px}

/* Footer alignment (keep as on home) */
.footer .container{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between}
.footer small{margin-left:auto;color:var(--muted)}
/* injected: navy CTA strip on register */
:root{--brand:#0b1f44;--brand-700:#0b1a36}
.cta-band{background:var(--brand); color:#fff; border-radius:12px; padding:10px 12px; margin:14px 0 10px}
.cta-tabs{display:flex; gap:8px; flex-wrap:wrap; align-items:center}
.cta-tabs .tab{display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border-radius:10px; background:rgba(255,255,255,.08); color:#fff; text-decoration:none; font-weight:700}
.cta-tabs .tab:hover{background:rgba(255,255,255,.16)}
.cta-tabs .tab.is-active{background:#fff; color:var(--brand)}
/* injected: navy button for Create account + small pill feel */
:root{--brand:#0b1f44;--brand-700:#0b1a36}
input[type=submit][value*='Create account'],
button[type=submit].create-account {
  background:var(--brand); color:#fff; border:0; border-radius:12px;
  padding:12px 18px; font-weight:700; cursor:pointer;
}
input[type=submit][value*='Create account']:hover,
button[type=submit].create-account:hover{ background:var(--brand-700) }

/* (safety) legacy social row killer if some inline styles slip through */
.footer-social-row{ display:none !important }
/* injected: navy CTA + helper class */
:root{--brand:#0b1f44;--brand-700:#0b1a36}
input[type=submit][value*='Create account'],
input[type=button][value*='Create account'],
button[type=submit].create-account,
button.create-account{
  background:var(--brand)!important; color:#fff!important;
  border:0!important; border-radius:12px!important;
  padding:12px 18px!important; font-weight:700!important; cursor:pointer!important;
}
input[type=submit][value*='Create account']:hover,
input[type=button][value*='Create account']:hover,
button.create-account:hover{ background:var(--brand-700)!important }
/* === injected: CTA, mobile menu, utilities === */
:root{--brand:#0b1f44;--brand-700:#0b1a36}

/* 1) Create-account CTA (very high specificity and !important) */
main .card form button.create-account,
main .card form button[type=submit],
main .card form input[type=submit]{
  background:var(--brand)!important;color:#fff!important;
  border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important;
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:var(--brand-700)!important }

/* 2) Mobile nav (hamburger) without editing header HTML */
.header .nav-toggle{display:none;appearance:none;border:0;border-radius:10px;padding:8px 10px;background:var(--brand);color:#fff;font-weight:700;cursor:pointer}
@media (max-width: 768px){
  .header .nav-toggle{display:inline-flex;align-items:center;gap:8px}
  .header nav ul{display:none;flex-direction:column;background:#fff;position:absolute;left:18px;right:18px;top:56px;border:1px solid #e5eaf2;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:10px}
  .header nav ul.is-open{display:flex}
  .header{position:relative}
}

/* Safety: if any leftover “Follow us” row was given a class elsewhere */
.footer-social-row{display:none!important}
/* === injected: mobile menu + unkillable CTA === */
:root{--brand:#0b1f44;--brand-700:#0b1a36}

/* CTA: hit buttons AND inputs inside the register forms */
main .card form button[type=submit],
main .card form input[type=submit],
main .card form .create-account{
  background:var(--brand)!important;color:#fff!important;
  border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important;
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:var(--brand-700)!important }

/* Mobile menu (no header HTML edits) */
.header{position:relative}
.header .nw-nav-toggle{display:none;appearance:none;border:0;border-radius:10px;padding:10px 12px;background:var(--brand);color:#fff;font-weight:700;cursor:pointer}
@media (max-width:768px){
  .header .nw-nav-toggle{display:inline-flex;align-items:center;gap:8px}
  /* try the common list containers */
  .header nav ul, .header nav .menu, .header nav .links{display:none}
  .header nav ul.is-open, .header nav .menu.is-open, .header nav .links.is-open{
    display:flex;flex-direction:column;gap:6px;
    position:absolute;left:18px;right:18px;top:56px;
    background:#fff;border:1px solid #e5eaf2;border-radius:12px;
    box-shadow:0 12px 30px rgba(0,0,0,.08);padding:10px
  }
}

/* just in case a leftover social row has a class */
.footer-social-row{display:none!important}
/* === injected: kebab mobile menu + unkillable navy CTA === */
:root{--brand:#0b1f44;--brand-700:#0b1a36}
.header{position:relative}

@media (max-width:768px){
  .header .nw-nav-toggle{display:inline-flex!important;align-items:center;gap:8px;appearance:none;border:0;border-radius:10px;padding:10px 12px;background:var(--brand);color:#fff;font-weight:700;cursor:pointer}
  .header nav ul,.header nav .menu,.header nav .links{display:none}
  .header nav ul.is-open,.header nav .menu.is-open,.header nav .links.is-open{
    display:flex;flex-direction:column;gap:8px;position:absolute;left:18px;right:18px;top:56px;background:#fff;
    border:1px solid #e5eaf2;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:10px;z-index:50
  }
}
/* CTA hit list: any submit inside the mid card */
main .card form button[type=submit],
main .card form input[type=submit],
main .card form .create-account{
  background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:var(--brand-700)!important }
/* safety: hide any legacy social row class if it exists */
.footer-social-row{display:none!important}
/* === injected: CTA, mobile menu, utilities === */
:root{--brand:#0b1f44;--brand-700:#0b1a36}

/* 1) Create-account CTA (very high specificity and !important) */
main .card form button.create-account,
main .card form button[type=submit],
main .card form input[type=submit]{
  background:var(--brand)!important;color:#fff!important;
  border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important;
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:var(--brand-700)!important }

/* 2) Mobile nav (hamburger) without editing header HTML */
.header .nav-toggle{display:none;appearance:none;border:0;border-radius:10px;padding:8px 10px;background:var(--brand);color:#fff;font-weight:700;cursor:pointer}
@media (max-width: 768px){
  .header .nav-toggle{display:inline-flex;align-items:center;gap:8px}
  .header nav ul{display:none;flex-direction:column;background:#fff;position:absolute;left:18px;right:18px;top:56px;border:1px solid #e5eaf2;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:10px}
  .header nav ul.is-open{display:flex}
  .header{position:relative}
}

/* Safety: if any leftover “Follow us” row was given a class elsewhere */
.footer-social-row{display:none!important}
:root{--brand:#0b1f44;--brand-700:#0b1a36}
.header{position:relative}

/* Kebab on small screens */
@media (max-width:768px){
  .header .nw-nav-toggle{
    display:inline-flex!important;align-items:center;gap:8px;
    appearance:none;border:0;border-radius:10px;padding:10px 12px;
    background:var(--brand);color:#fff;font-weight:700;cursor:pointer;z-index:60
  }
  .header nav ul, .header nav .menu, .header nav .links{display:none}
  .header nav ul.is-open, .header nav .menu.is-open, .header nav .links.is-open{
    display:flex;flex-direction:column;gap:8px;position:absolute;left:18px;right:18px;top:56px;background:#fff;
    border:1px solid #e5eaf2;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:10px;z-index:55
  }
}

/* Navy CTA for any submit inside the mid card */
main .card form button[type=submit],
main .card form input[type=submit],
main .card form .create-account{
  background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:var(--brand-700)!important }

/* safety if a stray social row carries a class */
.footer-social-row{display:none!important}
:root{--brand:#0b1f44;--brand-700:#0b1a36}
.header{position:relative}

/* Kebab: always visible on <=768, even if header has flex gaps etc. */
@media (max-width:768px){
  .nw-nav-toggle{
    display:inline-flex!important;align-items:center;gap:8px;
    appearance:none;border:0;border-radius:10px;padding:10px 12px;
    background:var(--brand);color:#fff;font-weight:700;cursor:pointer;z-index:1000
  }
  /* Default-hide any header list we find; we will flip .is-open in JS */
  .header nav ul, .header nav .menu, .header nav .links{display:none}
  .header nav ul.is-open, .header nav .menu.is-open, .header nav .links.is-open{
    display:flex;flex-direction:column;gap:8px;
    position:absolute;left:18px;right:18px;top:56px;
    background:#fff;border:1px solid #e5eaf2;border-radius:12px;
    box-shadow:0 12px 30px rgba(0,0,0,.12);padding:12px;z-index:999
  }
}

/* Navy submit pills (no HTML edits) */
main .card form button[type=submit],
main .card form input[type=submit],
main .card form .create-account{
  background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:var(--brand-700)!important }
:root{--brand:#0b1f44;--brand-700:#0b1a36}
.header{position:relative}

/* Kebab mobile menu on ≤768px — overlay any nav list */
@media (max-width:768px){
  .nw-nav-toggle{
    display:inline-flex!important;align-items:center;gap:8px;
    appearance:none;border:0;border-radius:10px;padding:10px 12px;
    background:var(--brand);color:#fff;font-weight:700;cursor:pointer;z-index:1000
  }
  .header nav ul, .header nav .menu, .header nav .links{display:none}
  .header nav ul.is-open, .header nav .menu.is-open, .header nav .links.is-open{
    display:flex;flex-direction:column;gap:8px;
    position:absolute;left:18px;right:18px;top:56px;
    background:#fff;border:1px solid #e5eaf2;border-radius:12px;
    box-shadow:0 12px 30px rgba(0,0,0,.12);padding:12px;z-index:999
  }
}

/* Navy submit pill for Create account (no HTML edits required) */
main .card form button[type=submit],
main .card form input[type=submit],
main .card form .create-account{
  background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:var(--brand-700)!important }
@media (max-width:768px){
  .nw-nav-toggle{
    display:inline-flex!important;align-items:center;gap:8px;
    appearance:none;border:0;border-radius:10px;padding:10px 12px;
    background:#0b1f44;color:#fff;font-weight:700;cursor:pointer;z-index:1000
  }
  .header nav ul, .header nav .menu, .header nav .links{display:none}
  .header nav ul.is-open, .header nav .menu.is-open, .header nav .links.is-open{
    display:flex;flex-direction:column;gap:8px;position:absolute;left:18px;right:18px;top:56px;
    background:#fff;border:1px solid #e5eaf2;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.12);padding:12px;z-index:999
  }
}
main .card form button[type=submit],
main .card form input[type=submit],
main .card form .create-account{
  background:#0b1f44!important;color:#fff!important;border:0!important;border-radius:12px!important;
  padding:12px 18px!important;font-weight:700!important;cursor:pointer!important
}
main .card form button[type=submit]:hover,
main .card form input[type=submit]:hover{ background:#0b1a36!important }
