/* Bewerbungsseiten (/job-telefon, /job-video): helles Q96-Design, Handy zuerst.
   Baut auf q96-web.css auf (Schriften, Farben, .btn, .tag, .lead) und nimmt nur die Abstände der Verkaufsseiten zurück. */
body.jobseite{background:#fff}
body.jobseite section{padding:0}
body.jobseite h1{font-size:clamp(36px,5.2vw,62px);letter-spacing:-.035em;font-weight:500;line-height:1.02;margin:18px 0 16px}
body.jobseite h1 em{color:var(--orange)}
body.jobseite h2{font-size:22px;line-height:1.2;letter-spacing:-.01em;font-weight:700}

.job-kopf{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1180px;margin:0 auto;padding:18px 20px}
.job-kopf img{height:40px;width:auto}
.job-kopf span{font-size:14px;color:var(--muted)}

.job-rahmen{max-width:1180px;margin:0 auto;padding:0 20px}
.job-oben{background:radial-gradient(120% 90% at 50% 0%,#fff4ec 0%,#fff 62%);border-bottom:1px solid var(--line)}
.job-oben .job-rahmen{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:48px;align-items:start;padding-top:28px;padding-bottom:56px}
.job-text .lead{max-width:34em}
.job-fakten{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:10px}
.job-fakten li{position:relative;padding-left:30px;color:var(--muted);line-height:1.45}
.job-fakten li::before{content:"";position:absolute;left:0;top:.42em;width:16px;height:9px;border-left:2.5px solid var(--orange);border-bottom:2.5px solid var(--orange);transform:rotate(-45deg);transform-origin:left bottom;margin-top:-2px;margin-left:5px}
.job-fakten b{color:var(--ink);font-weight:700}

/* ---------- Formular */
.job-form{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 22px 20px;box-shadow:0 18px 50px rgba(20,20,20,.08);display:flex;flex-direction:column;gap:14px}
.job-fortschritt{height:6px;border-radius:999px;background:var(--sand);overflow:hidden}
.job-fortschritt i{display:block;height:100%;width:16.6%;border-radius:999px;background:var(--orange);transition:width .25s ease}
.job-zaehler{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.schritt{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:12px}
.schritt[hidden]{display:none}
.schritt legend{padding:0;font-size:22px;line-height:1.22;letter-spacing:-.015em;font-weight:700;color:var(--ink);margin-bottom:10px}
.job-hilfe{font-size:15px;color:var(--muted);line-height:1.45}
.job-frage{font-size:16px;font-weight:700;color:var(--ink);margin-top:8px}
.job-frage small,.job-feld small{font-weight:400;color:var(--muted)}

.wahl{display:grid;gap:8px}
.wahl-reihe{grid-template-columns:repeat(2,minmax(0,1fr))}
.wahl label{position:relative;display:block;cursor:pointer}
.wahl input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.wahl span{display:block;border:1.5px solid var(--line);border-radius:14px;padding:13px 14px;font-size:16px;line-height:1.3;color:var(--ink);background:#fff;transition:border-color .15s,background .15s}
.wahl label:hover span{border-color:#d9c9bb}
.wahl input:checked + span{border-color:var(--orange);background:#fff4ec;font-weight:700}
.wahl input:focus-visible + span{outline:2px solid var(--orange);outline-offset:2px}

.job-feld{display:flex;flex-direction:column;gap:6px;min-width:0}
.job-feld > span{font-size:14px;font-weight:700;color:var(--ink)}
.job-feld input,.job-feld textarea{width:100%;font:400 17px/1.4 Satoshi,system-ui,sans-serif;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:13px 14px;appearance:none;-webkit-appearance:none}
.job-feld textarea{resize:vertical;min-height:150px}
.job-feld input:focus,.job-feld textarea:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:var(--orange)}
.job-feld.fehler input,.job-feld.fehler textarea{border-color:#c0392b}
.job-zwei{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.job-falle{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.job-haken{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;font-size:15px;line-height:1.4;color:var(--muted);cursor:pointer}
.job-haken input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--orange)}
.job-haken a{color:var(--ink)}

.stimme{display:flex;flex-direction:column;gap:12px;align-items:flex-start;background:var(--sand);border-radius:16px;padding:16px}
.stimme-laeuft{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.stimme-laeuft[hidden],.stimme-fertig[hidden]{display:none}
.stimme-punkt{width:14px;height:14px;border-radius:50%;background:#d93025;animation:job-puls 1s ease-in-out infinite}
.stimme-zeit{font:700 22px/1 Satoshi,sans-serif;font-variant-numeric:tabular-nums;min-width:3.2em}
.stimme-fertig{display:flex;flex-direction:column;gap:8px;width:100%}
.stimme-fertig audio{width:100%}
@keyframes job-puls{50%{opacity:.25}}

.job-fehler{font-size:15px;color:#a5281b;line-height:1.4}
.job-knoepfe{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
.job-knoepfe .btn{margin-left:auto}
.job-knoepfe .btn[disabled]{opacity:.6;cursor:progress;transform:none}
.job-link{background:none;border:0;padding:6px 0;font:500 15px/1.2 Satoshi,sans-serif;color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.job-link:hover{color:var(--ink)}
.job-link:focus-visible,.btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.job-klein{font-size:13.5px;color:var(--muted);text-align:center}
.job-danke{display:flex;flex-direction:column;gap:10px;padding:18px 4px 8px}
.job-danke[hidden]{display:none}
.job-danke h2{font-size:28px;font-weight:500;letter-spacing:-.02em}
.job-danke p{color:var(--muted)}
.job-form.fertig > :not(.job-danke){display:none}
/* .btn setzt display und würde das hidden-Attribut sonst überstimmen */
.job-form [hidden]{display:none !important}

/* ---------- Unterer Teil */
.job-mehr{padding:56px 0 64px !important}
.job-drei{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.job-drei ul,.job-drei ol{margin:12px 0 0;padding-left:1.15em;display:grid;gap:8px;color:var(--muted);font-size:16px;line-height:1.45}
.job-wer{margin-top:40px;max-width:46em;color:var(--muted)}
.job-datenschutz{margin-top:28px;border-top:1px solid var(--line);padding-top:18px;font-size:15px;color:var(--muted);max-width:52em}
.job-datenschutz summary{cursor:pointer;font-weight:700;color:var(--ink)}
.job-datenschutz p{margin-top:10px;line-height:1.5}
.job-datenschutz b{color:var(--ink)}
.job-fuss{border-top:1px solid var(--line);background:var(--sand);padding:24px 20px 32px;text-align:center;font-size:14px;color:var(--muted);display:grid;gap:6px}
.job-fuss a{color:var(--ink)}

@media (max-width:900px){
  .job-oben .job-rahmen{grid-template-columns:minmax(0,1fr);gap:26px;padding-top:12px;padding-bottom:36px}
  .job-drei{grid-template-columns:minmax(0,1fr);gap:28px}
  .job-kopf span{display:none}
}
@media (max-width:420px){
  .job-form{padding:18px 16px 16px;border-radius:20px}
  .job-zwei{grid-template-columns:minmax(0,1fr)}
  .schritt legend{font-size:20px}
}
@media (prefers-reduced-motion:reduce){.stimme-punkt{animation:none}.job-fortschritt i{transition:none}}
