/* =========================================================
   Fahrrad Schmidt – Jobs: Fotostrecken + Bewerbungs-Funnel
   Nur auf jobs.html und den drei Stellenseiten eingebunden.
   ========================================================= */

/* ---------- Fotostrecke (ein großes, zwei kleine Bilder) ---------- */
.jb-mosaik{display:grid;grid-template-columns:1.55fr 1fr;grid-template-rows:1fr 1fr;gap:14px;
  height:clamp(360px,44vw,580px);}
.jb-mosaik figure{margin:0;position:relative;overflow:hidden;border-radius:12px;background:#e9e6dd;}
.jb-mosaik figure:first-child{grid-row:1/3;}
.jb-mosaik img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease;}
.jb-mosaik figure:hover img{transform:scale(1.035);}
.jb-mosaik figcaption{position:absolute;left:14px;bottom:14px;background:rgba(40,51,44,.78);color:#fff;
  font-family:var(--font-bol);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;
  padding:7px 12px;border-radius:30px;}
@media(max-width:700px){
  .jb-mosaik{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;height:auto;gap:10px;}
  .jb-mosaik figure:first-child{grid-column:1/3;grid-row:auto;aspect-ratio:4/3;}
  .jb-mosaik figure{aspect-ratio:1/1;}
  .jb-mosaik figcaption{left:10px;bottom:10px;font-size:.62rem;padding:5px 10px;}
}

/* ---------- Ansprechpartner-Karte ---------- */
.jb-person{display:flex;align-items:center;gap:16px;margin-top:26px;padding:16px 18px;
  background:var(--cream);border-radius:12px;}
.jb-person img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:0 0 auto;}
.jb-person strong{display:block;font-family:var(--font-bol);font-size:1rem;}
.jb-person span{font-size:.9rem;color:#6b7369;}

/* Karten auf jobs.html: zweiter Knopf */
.job-knoepfe{margin-top:auto;padding-top:18px;display:flex;gap:10px;flex-wrap:wrap;}
.job-knoepfe .btn{flex:1 1 auto;text-align:center;}

/* =========================================================
   Bewerbungs-Funnel
   ========================================================= */
.bw-sec{scroll-margin-top:110px;}
.bw{position:relative;max-width:820px;margin:0 auto;background:var(--white);border:1px solid #e3e0d7;
  border-radius:18px;box-shadow:0 22px 60px rgba(56,66,57,.12);overflow:hidden;}
.bw::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--green);}

.bw__kopf{padding:26px clamp(22px,4vw,44px) 0;}
.bw__meta{display:flex;justify-content:space-between;align-items:center;gap:12px;
  font-family:var(--font-bol);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#8d958b;}
.bw__stelle{color:var(--green);background:var(--cream);border-radius:30px;padding:6px 12px;letter-spacing:.08em;
  max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.bw__balken{height:6px;background:#eeebe2;border-radius:6px;margin-top:14px;overflow:hidden;}
.bw__balken i{display:block;height:100%;width:0;background:var(--green);border-radius:6px;transition:width .45s ease;}

.bw__koerper{padding:26px clamp(22px,4vw,44px) 10px;min-height:260px;}
.bw__frage{font-family:var(--font-bol);font-size:clamp(1.3rem,2.6vw,1.75rem);line-height:1.2;color:var(--green);
  margin:0 0 8px;outline:none;}
.bw__hilfe{color:#6b7369;font-size:.95rem;line-height:1.55;margin:0 0 22px;}

.bw__optionen{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.bw__optionen--eins{grid-template-columns:1fr;}
.bw-opt{position:relative;display:flex;align-items:center;gap:14px;width:100%;text-align:left;cursor:pointer;
  font:inherit;font-size:1rem;color:var(--green);background:var(--white);border:1.5px solid #ddd9cd;border-radius:12px;
  padding:16px 18px;min-height:60px;transition:border-color .2s ease,background .2s ease,transform .15s ease,box-shadow .2s ease;}
.bw-opt:hover{border-color:var(--green);box-shadow:0 6px 18px rgba(56,66,57,.08);}
.bw-opt:active{transform:scale(.99);}
.bw-opt:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(56,66,57,.22);border-color:var(--green);}
.bw-opt__mark{flex:0 0 auto;width:22px;height:22px;border:1.5px solid #c9c5b8;border-radius:50%;
  display:flex;align-items:center;justify-content:center;transition:all .2s ease;}
.bw-opt--multi .bw-opt__mark{border-radius:6px;}
.bw-opt[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff;}
.bw-opt[aria-pressed="true"] .bw-opt__mark{background:#fff;border-color:#fff;}
.bw-opt[aria-pressed="true"] .bw-opt__mark::after{content:'';width:6px;height:11px;border:solid var(--green);
  border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px);}
.bw-opt__t{display:flex;flex-direction:column;gap:2px;line-height:1.3;}
.bw-opt__t small{font-size:.8rem;opacity:.72;}

/* Stellen-Kacheln mit Foto */
.bw__stellen{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.bw-kachel{display:flex;flex-direction:column;text-align:left;cursor:pointer;font:inherit;color:var(--green);
  background:var(--white);border:1.5px solid #ddd9cd;border-radius:14px;overflow:hidden;padding:0;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;}
.bw-kachel:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 12px 28px rgba(56,66,57,.12);}
.bw-kachel:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(56,66,57,.25);}
.bw-kachel img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.bw-kachel span{padding:12px 14px 14px;font-family:var(--font-bol);font-size:.92rem;line-height:1.25;}
.bw-kachel small{display:block;font-family:var(--font-reg);font-size:.8rem;color:#6b7369;margin-top:3px;}
.bw-kachel[aria-pressed="true"]{border-color:var(--green);box-shadow:0 0 0 2px var(--green);}
.bw__initiativ{margin-top:14px;text-align:center;}
.bw-link{background:none;border:0;font:inherit;font-size:.92rem;color:var(--green);cursor:pointer;
  text-decoration:underline;text-underline-offset:3px;padding:4px;}

/* Hinweisbox (z. B. Umzug) */
.bw__tipp{margin-top:16px;padding:13px 16px;border-radius:10px;background:#eef3ec;color:#3d5a3f;font-size:.92rem;line-height:1.5;}

/* Kontaktfelder */
.bw__felder{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;}
.bw-f{display:flex;flex-direction:column;gap:6px;}
.bw-f--voll{grid-column:1/3;}
.bw-f label{font-family:var(--font-bol);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#6b7369;}
.bw-f label i{color:#b2452f;font-style:normal;}
.bw-f input,.bw-f textarea{font:inherit;font-size:1rem;color:var(--green);background:var(--cream);
  border:1.5px solid #ddd9cd;border-radius:10px;padding:13px 15px;width:100%;
  transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;}
.bw-f textarea{min-height:96px;resize:vertical;}
.bw-f input:focus,.bw-f textarea:focus{outline:none;border-color:var(--green);background:var(--white);
  box-shadow:0 0 0 3px rgba(56,66,57,.13);}
.bw-f.is-fehler input{border-color:#b2452f;background:#fdf5f3;}
.bw-err{color:#b2452f;font-size:.84rem;margin:0;}
.bw-chips{display:flex;flex-wrap:wrap;gap:8px;}
.bw-chip{font:inherit;font-size:.9rem;cursor:pointer;color:var(--green);background:var(--white);
  border:1.5px solid #ddd9cd;border-radius:30px;padding:8px 14px;transition:all .2s ease;}
.bw-chip[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff;}
.bw-ds{grid-column:1/3;display:flex;gap:12px;align-items:flex-start;font-size:.88rem;line-height:1.5;color:#5b655b;
  padding:14px 16px;border-radius:10px;border:1.5px solid transparent;position:relative;cursor:pointer;}
.bw-ds input{position:absolute;opacity:0;width:22px;height:22px;margin:0;left:16px;top:15px;cursor:pointer;}
.bw-ds__box{flex:0 0 auto;width:22px;height:22px;border:1.5px solid #c9c5b8;border-radius:6px;background:#fff;
  display:flex;align-items:center;justify-content:center;margin-top:1px;}
.bw-ds input:checked + .bw-ds__box{background:var(--green);border-color:var(--green);}
.bw-ds input:checked + .bw-ds__box::after{content:'';width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;
  transform:rotate(45deg) translate(-1px,-1px);}
.bw-ds input:focus-visible + .bw-ds__box{box-shadow:0 0 0 3px rgba(56,66,57,.22);}
.bw-ds.is-fehler{border-color:#b2452f;background:#fdf5f3;}
.bw-ds a{color:var(--green);text-decoration:underline;text-underline-offset:2px;}
.bw-sum{grid-column:1/3;margin:0 0 4px;padding:12px 15px;border-radius:10px;background:#fdf0ed;color:#8e3422;font-size:.92rem;}

/* Zusammenfassung */
.bw__liste{margin:0;padding:0;list-style:none;border:1px solid #eeebe2;border-radius:12px;overflow:hidden;}
.bw__liste li{display:grid;grid-template-columns:minmax(140px,36%) 1fr auto;gap:12px;align-items:start;
  padding:12px 16px;border-top:1px solid #eeebe2;font-size:.95rem;}
.bw__liste li:first-child{border-top:0;}
.bw__liste b{font-family:var(--font-bol);font-weight:normal;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#8d958b;padding-top:3px;}
.bw__liste .bw-link{font-size:.82rem;}
.bw__cv{margin-top:16px;font-size:.9rem;color:#6b7369;line-height:1.55;}

/* Fertig-Ansicht */
.bw__fertig{text-align:center;padding:10px 0 6px;}
.bw__haken{width:64px;height:64px;border-radius:50%;background:var(--green);margin:0 auto 18px;position:relative;}
.bw__haken::after{content:'';position:absolute;left:24px;top:15px;width:13px;height:25px;border:solid #fff;
  border-width:0 4px 4px 0;transform:rotate(45deg);}
.bw__text{width:100%;min-height:180px;margin-top:16px;font:inherit;font-size:.85rem;line-height:1.5;color:var(--green);
  background:var(--cream);border:1.5px solid #ddd9cd;border-radius:10px;padding:14px;resize:vertical;}

/* Fuß mit Knöpfen */
.bw__fuss{display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:16px clamp(22px,4vw,44px) 26px;}
.bw__zurueck{background:none;border:0;font:inherit;font-size:.95rem;color:#6b7369;cursor:pointer;padding:10px 4px;}
.bw__zurueck:hover{color:var(--green);}
.bw__zurueck[hidden]{display:block;visibility:hidden;}
.bw__weiter{font-family:var(--font-bol);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;
  color:#fff;background:var(--green);border:0;border-radius:40px;padding:15px 28px;transition:background .2s ease,opacity .2s ease;}
.bw__weiter:hover{background:var(--green-dark);}
.bw__weiter:disabled{opacity:.35;cursor:not-allowed;}
.bw__weiter[hidden]{display:none;}
.bw__unten{max-width:820px;margin:18px auto 0;text-align:center;font-size:.9rem;color:#6b7369;line-height:1.6;}
.bw__unten a{color:var(--green);text-decoration:underline;text-underline-offset:3px;}

/* Schritt-Wechsel */
.bw__koerper.is-rein{animation:bwRein .35s ease;}
@keyframes bwRein{from{opacity:0;transform:translateX(14px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.bw__koerper.is-rein{animation:none;}.bw__balken i{transition:none;}}

@media(max-width:700px){
  .bw{border-radius:14px;}
  .bw__optionen{grid-template-columns:1fr;gap:10px;}
  .bw__stellen{grid-template-columns:1fr;}
  .bw-kachel{flex-direction:row;align-items:center;}
  .bw-kachel img{width:96px;aspect-ratio:1/1;flex:0 0 auto;}
  .bw__felder{grid-template-columns:1fr;}
  .bw-f--voll,.bw-ds,.bw-sum{grid-column:auto;}
  .bw__liste li{grid-template-columns:1fr auto;}
  .bw__liste li b{grid-column:1/3;}
  .bw__weiter{padding:14px 22px;}
}
