/* Werken bij Vextro (jobs.php), nieuwe stijl okt 2026: lijst B (kaarten), vacature A (tekst links, formulier rechts).
   Laadt na home.css en jobs.css; jobs.css blijft voor de werking van het formulier (stappen, opties, akkoord). */
.vxh > .in{min-width:0;width:100%}
.vxh .jb-top{padding:56px 0 24px;max-width:720px}
.vxh .jobs-count{margin:0 0 12px;font-size:14px;color:var(--d-mut);font-weight:500;text-transform:none;letter-spacing:0}

/* Logo (eigen afbeelding of letter) */
.vxh .jb-logo{width:52px;height:52px;border-radius:10px;background:var(--d-raised);border:1px solid var(--d-strong);display:inline-flex;align-items:center;justify-content:center;font:650 21px var(--f-display);color:var(--d-ink);flex:none;object-fit:cover}
.vxh .jb-logo-lg{width:68px;height:68px;font-size:28px}

/* Tags */
.vxh .jobs-tags{display:flex;flex-wrap:wrap;gap:6px}
.vxh .jobs-tag{height:auto;font-size:12px;font-weight:600;background:none;border:1px solid var(--d-strong);border-radius:999px;padding:2px 10px;color:var(--d-mut)}
.vxh .jobs-tag-blue{border-color:rgba(89,168,255,.4);color:var(--d-blue);background:none}

/* Lijst: kaarten */
.vxh .jb-grid{list-style:none;margin:0 0 72px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vxh .jb-card{height:100%;display:flex;flex-direction:column;border:1px solid var(--d-line);background:var(--d-card);border-radius:10px;overflow:hidden;color:var(--d-ink);text-decoration:none;transition:border-color .2s var(--d-ease)}
.vxh .jb-card:hover{border-color:var(--d-strong)}
.vxh .jb-card-banner{display:block;width:100%;height:96px;object-fit:cover}
.vxh .jb-card-body{padding:0 20px 20px;display:flex;flex-direction:column;gap:10px;flex:1}
.vxh .jb-card .jb-logo{margin-top:-26px;background:var(--d-card);position:relative}
.vxh .jb-card-title{font:650 20px/1.2 var(--f-display);letter-spacing:-.02em}
.vxh .jb-card-sum{color:var(--d-mut);font-size:14.5px}
.vxh .jb-card-cta{margin-top:auto;padding-top:6px;color:var(--d-blue);font-weight:600;font-size:14.5px}
.vxh .jb-empty{border:1px solid var(--d-line);background:var(--d-card);border-radius:10px;padding:28px;max-width:620px;margin:0 0 72px}
.vxh .jb-empty h2{font-size:22px;margin:0 0 6px}
.vxh .jb-empty p{color:var(--d-mut);margin:0 0 16px}

/* Vacature */
.vxh .jobs-detail{max-width:none!important;padding:0}
.vxh .jobs-back{margin:32px 0 0;font-size:14.5px;color:var(--d-mut)}
.vxh .jobs-back:hover{color:var(--d-ink)}
.vxh .jb-banner{margin-top:16px;border-radius:10px;overflow:hidden;border:1px solid var(--d-line)}
.vxh .jb-banner img{display:block;width:100%;height:200px;object-fit:cover}
.vxh .jb-dhead{display:flex;gap:18px;align-items:flex-start;padding:20px 0 28px}
.vxh .jb-dhead h1{font:650 clamp(32px,4vw,46px)/1.05 var(--f-display);letter-spacing:-.03em;margin:10px 0 8px}
.vxh .jobs-head-summary{margin:0;color:var(--d-mut);font-size:17px;max-width:60ch}
.vxh .jobs-layout{grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:40px;padding-bottom:72px}
.vxh .jobs-desc{padding:0}
.vxh .jobs-desc h2{font-size:22px;margin:0 0 10px}
.vxh .jobs-desc h3{font-size:18px;margin:24px 0 10px}
.vxh .jobs-desc p{color:var(--d-mut);font-size:16px;line-height:1.65;max-width:65ch}
.vxh .jobs-req-list-plain li{color:var(--d-mut);font-size:15.5px}
.vxh .jobs-apply{border:1px solid var(--d-line);background:var(--d-card);border-radius:10px;padding:24px}
.vxh .jobs-apply h2{font-size:22px;margin:0 0 4px}
.vxh .jobs-fine{color:var(--d-faint);font-size:13.5px}
.vxh .jobs-fine-top{margin:0 0 16px}

/* Stappen als lijnen */
.vxh .jobs-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.vxh .jobs-steps li{background:none;border:0;border-top:2px solid var(--d-strong);border-radius:0;padding:8px 0 0;color:var(--d-faint);font-size:12.5px}
.vxh .jobs-steps li span{background:none;width:auto;height:auto;font-size:12.5px}
.vxh .jobs-steps li.is-active{color:var(--d-ink);border-color:var(--d-blue);background:none}
.vxh .jobs-steps li.is-active span{background:none;color:var(--d-ink)}
.vxh .jobs-steps li.is-done{color:var(--d-mut);border-color:var(--d-ok)}
.vxh .jobs-steps li.is-done span{background:none;color:var(--d-ok)}

/* Velden in de huisstijl */
.vxh .jobs-form .input{background:var(--d-bg);border:1px solid var(--d-strong);border-radius:9px;color:var(--d-ink);width:100%}
.vxh .jobs-form .input:focus{border-color:var(--d-blue);box-shadow:none;outline:none}
.vxh .jobs-form .form-label{color:var(--d-mut);font-size:13.5px}
.vxh .jobs-form .form-hint{color:var(--d-faint);font-size:12.5px}
.vxh .jobs-req-list li,.vxh .jobs-option span{background:var(--d-bg);border-color:var(--d-line)}
.vxh .jobs-option input:checked + span{border-color:var(--d-blue);background:rgba(89,168,255,.08)}
.vxh .jobs-privacy-note{border-color:var(--d-line);border-radius:10px}
.vxh .jobs-form button.btn{font:inherit;font-size:14.5px;font-weight:600;cursor:pointer}
.vxh .jobs-btn-decline:hover{border-color:#ef4444;color:#fca5a5}
.vxh .jobs-link-btn{background:none;border:0;color:var(--d-mut)}

/* Verstuurd / gesloten */
.vxh .jobs-done{border:1px solid var(--d-line);background:var(--d-card);border-radius:10px;max-width:620px;margin:0 0 72px;padding:32px;text-align:left}
.vxh .jobs-done-icon{margin:0 0 16px;width:48px;height:48px;font-size:22px;box-shadow:none}
.vxh .jobs-done h2{font-size:24px}
.vxh .jobs-done p{color:var(--d-mut)}
.vxh .jb-gone{padding:56px 0 72px;max-width:720px}

@media (max-width:900px){
  .vxh .jb-grid{grid-template-columns:1fr}
  .vxh .jobs-layout{grid-template-columns:1fr;gap:28px}
  .vxh .jobs-apply{position:static}
  .vxh .jb-top{padding-top:40px}
}
@media (max-width:600px){
  .vxh .jb-dhead{flex-direction:column;gap:10px}
  .vxh .jobs-apply{padding:20px 18px}
  .vxh .jb-banner img{height:130px}
}
