/* studi-jobs: inline */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root { --green: #006b3e; --green-dark: #006b3e; --green-bg: #ecf7f1; --text: #1a1a2e; --muted: #374151; --bg: #fff; --bg-alt: #f5f7fa; --bg-top: #f1f3f5; --border: #e5e7eb; --radius: 10px; --shadow: 0 1px 3px rgba(0,0,0,.06); --shadow-md: 0 4px 14px rgba(0,0,0,.08); --font: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Roboto, sans-serif; --max: 1120px; }
body { font-family: var(--font); color: var(--text); background: var(--bg-alt); font-size: 16px; line-height: 1.6; }
a { color: inherit; text-decoration: none; }
.topbar { background: linear-gradient(to right, #00c06a, #005430); border-bottom: 1px solid rgba(0,0,0,.18); font-size:14px; color: rgba(255,255,255,.92); }
.topbar-inner { max-width: var(--max); margin: auto; padding: .45rem 1.5rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; }
.topbar-left { display: flex; gap: 1.2rem; align-items: center; flex-wrap: wrap; }
.topbar-right a { color: rgba(255,255,255,.92); transition: color .2s; }
.topbar-right a:hover { color: #fff; }
.mainnav { background: var(--bg); border-bottom: 2px solid var(--border); position: sticky; top: 0; z-index: 100; }
.nav-inner { max-width: var(--max); margin: auto; padding: 0 1.5rem; display: flex; align-items: center; gap: 2rem; height: 62px; }
.nav-logo { font-size: 1.25rem; font-weight: 800; color: var(--green); letter-spacing: -.5px; white-space: nowrap; }
.nav-links { display: flex; gap: .25rem; align-items: center; list-style: none; margin-left: .5rem; }
.nav-links a { padding: .45rem .85rem; border-radius: 6px; font-size: .88rem; font-weight: 500; color: var(--text); transition: background .15s, color .15s; white-space: nowrap; }
.nav-links a:hover { background: var(--bg-alt); color: var(--green); }
.nav-cta { margin-left: auto; flex-shrink: 0; display: flex; gap: .5rem; align-items: center; }
.btn { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem 1.2rem; border-radius: 7px; font-size: .88rem; font-weight: 600; cursor: pointer; border: none; transition: all .18s; text-decoration: none; }
.btn-primary { background: linear-gradient(to right, #00c06a, #005430); color: #fff; }
.btn-primary:hover { background: linear-gradient(to right, #009a58, #003d24); transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,135,78,.25); }
    .btn-sm { padding: .45rem 1rem; font-size:14px; }
    .btn-secondary { background:#fff; color:#000; border:2px solid #000; padding-top:calc(.45rem - 2px); padding-bottom:calc(.45rem - 2px); }
    .btn-secondary:hover { background:#000; color:#fff; border-color:#000; }
    .topbar-inner { height: 34px; padding: 0 1.5rem; flex-wrap: nowrap; }
    .topbar-left { flex-wrap: nowrap; gap: 1.25rem; }
    .topbar-left a { color: rgba(255,255,255,.92); }
    .topbar-left a:hover { color: #fff; }
    .topbar-right { display: flex; align-items: center; gap: .85rem; }
    .topbar-right a { font-weight: 500; white-space: nowrap; }
    .topbar-sep { color: rgba(255,255,255,.45); }
    nav.mainnav { background: rgba(255,255,255,.97); backdrop-filter: blur(10px); border-bottom: 1px solid var(--border); }
    .nav-inner { height: 60px; gap: 1.5rem; }
    .nav-logo { font-size: 0; }
    .nav-logo img { height: 32px; width: auto; display: block; }
    .nav-links { list-style: none; margin-left: 0; gap: .1rem; flex: 1; }
    .nav-links a { color: var(--muted); padding: .38rem .62rem; font-size:14px; }
    .nav-links a:hover { color: var(--green); background: var(--green-bg); }
    .nav-cta { flex-shrink: 0; }
    .nav-burger { display: none; flex-direction: column; gap: 5px; padding: 6px; margin-left: auto; cursor: pointer; border: none; background: none; }
    .nav-burger span { display: block; width: 22px; height: 2px; background: var(--text); border-radius: 2px; }
    .nav-mobile { max-height: 0; overflow: hidden; visibility: hidden; background: var(--bg); border-top: 1px solid var(--border); flex-direction: column; display: flex; }
    .nav-mobile.open { max-height: calc(100vh - 60px); min-height: calc(100vh - 60px); overflow-y: auto; visibility: visible; background: #fff; }
    .nav-mobile a { padding: .7rem 1.5rem; font-size: .95rem; color: var(--text); border-bottom: 1px solid var(--border); font-weight: 500; }
    @media (max-width: 640px) {
      .topbar { display: none; }
      .nav-links, .nav-cta { display: none; }
      .nav-burger { display: flex; }
    }
    .wrap { max-width: var(--max); margin: 0 auto; padding: 0 1.5rem; }
    .wrap h1 { font-size: clamp(1.5rem, 3vw, 2rem); line-height: 1.3; margin-bottom: .5rem; }
    .wrap h2 { font-size: 1.35rem; font-weight: 400; margin: 2.2rem 0 .8rem; color: var(--text); }
    .wrap h3 { font-size: 1.18rem; font-weight: 700; margin: 0 0 .6rem; color: var(--text); }
    .wrap p { color: var(--muted); line-height: 1.8; margin-bottom: 1rem; font-size: .95rem; }
    .wrap ol, .wrap ul { margin: .6rem 0 1.2rem 1.5rem; color: var(--muted); font-size: .95rem; line-height: 1.8; }
    .wrap ol li, .wrap ul li { margin-bottom: .35rem; }
    .sec { background: #fff; border: 1px solid var(--border); border-radius: 14px; padding: 1.6rem 1.8rem; margin: 1.4rem 0; box-shadow: var(--shadow); }
    .sec-head { display:flex; align-items:center; gap:.7rem; margin-bottom:.6rem; }
    .sec-icon { color:var(--green); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:1.85rem; }
    .sec h3 { margin:0; font-size:1.18rem; color:var(--text); }
    .partner-cta { transition: transform .15s, box-shadow .15s; }
    .partner-cta:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0,0,0,.22); }
    .board-row { display:flex; align-items:baseline; gap:.6rem; padding:.85rem 0; border-bottom:1px solid var(--border); flex-wrap:wrap; }
    .board-row:last-child { border-bottom:none; }
    .board-row a { color: var(--green); font-weight:700; text-decoration:underline; white-space:nowrap; }
    .board-row span { color: var(--muted); font-size:.92rem; }
    .board-badge { font-size:.66rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--green); background:var(--green-bg); border-radius:999px; padding:.12rem .55rem; align-self:center; }
/* studi-jobs: ps-reco-strip-css */
.partner-reco.ps-host{background:var(--bg-alt,#f5f7fa);padding:2rem 1.5rem 0}
@media(min-width:771px){.ps-host.partner-reco{margin-bottom:-.9rem}}
@media(min-width:771px){.ps-host.partner-reco+main>.content-col>.wrap:first-child{margin-top:.5rem}}
.partner-reco .ps-wrap{max-width:1120px;margin:0 auto;display:flex;justify-content:center}
.partner-reco .ps-card{position:relative;background:#fff;border:1px solid var(--border,#e5e7eb);border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.08);padding:1.05rem 1.7rem .9rem;width:-moz-fit-content;width:fit-content;max-width:100%}
.partner-reco .ps-pill{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);background:#fff;border:1px solid var(--border,#e5e7eb);border-radius:999px;padding:.16rem .8rem;font-size:.64rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#6b7280;box-shadow:0 1px 3px rgba(0,0,0,.05);white-space:nowrap}
.partner-reco-items{display:flex;align-items:stretch;justify-content:center;gap:.4rem 1.1rem}
.partner-reco-items.ps-desc,.partner-reco-items.ps-logos{flex-wrap:wrap}
.kp-card>.partner-reco-items{margin-top:.85rem;padding-top:.85rem}
.kp-card>.partner-reco-items{grid-column:1/-1;width:100%;box-sizing:border-box}
.partner-reco-items.ps-logos a{display:flex;align-items:center}
.partner-reco-items.ps-logos img{height:28px;width:auto;max-width:120px;object-fit:contain;opacity:.9;display:block}
.partner-reco-items .ps-cell{display:flex;align-items:center;gap:.8rem;min-width:0;text-decoration:none;color:inherit;padding:.15rem 0}
.partner-reco-items .ps-cell+.ps-cell{border-left:1px solid var(--border,#e5e7eb);padding-left:1.1rem}
.partner-reco-items .ps-cell img{height:30px;width:auto;max-width:92px;object-fit:contain;flex-shrink:0;opacity:.92}
.partner-reco-items .ps-cell .t{min-width:0}
.partner-reco-items .ps-cell .t b{display:block;font-size:.82rem;font-weight:700;color:var(--text,#1a1a2e);line-height:1.2}
.partner-reco-items .ps-cell .t span{font-size:.75rem;color:#64748b;line-height:1.25;display:block}
@media(max-width:620px){.partner-reco-items .ps-cell+.ps-cell{border-left:0;padding-left:0}}
/* studi-jobs: css/topicnav-edge.css */
/* Seiten mit Partnerleiste (`.topicnav-lead`) tragen dieses Stylesheet nicht
   alle absichtlich: der Kopf wird ueber die Seitenfamilien geteilt, deshalb
   liegt der Link auch auf rund 228 Ratgeber- und Wissensseiten. Echte
   Randnavi-Seiten sind allein die Landingpages aus
   `_topicnav_inject.EDGE_NAV_SLUGS`; nur bei ihnen enthaelt die Inhaltsspalte
   weder `.article` noch `.wrap`, sondern volle Seitenflaechen. Genau diese
   Unterscheidung steht unten in jedem Selektor: ab 1720 Pixeln darf die
   Navigation nur auf ihnen an den freien Seitenrand wandern. Auf allen
   anderen bleibt sie in Spalte 1 des Rasters, sonst reisst zwischen Baum und
   Inhaltskarte eine Luecke von 222 bis 363 Pixeln auf. */
@media(min-width:771px) and (max-width:1719.98px){
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-lead{grid-column:2!important;grid-row:1;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-wrap{display:block;grid-column:1;grid-row:1/span 2;align-self:stretch}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-wrap>.topicnav{margin:2rem 0}
  /* Nur die Artikelspalte gehoert in Zeile 2. Der Nachtragsblock nach der
     Partnerleiste traegt dieselbe Klasse content-col und landete dadurch in
     derselben Gitterzelle, also passgenau ueber dem Artikel: sichtbar auf 142
     Seiten zwischen 771 und 1719 Pixeln, also auf den haeufigsten
     Desktopbreiten. */
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col:not(.content-col-after-partner){grid-column:2;grid-row:2;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col.content-col-after-partner{grid-column:2;grid-row:auto;min-width:0}
}
@media(min-width:1440px) and (max-width:1719.98px){
  body main.has-topicnav.has-topicnav.has-topicnav:not(:has(>.content-col>.wrap)):has(>.topicnav-lead)>.topicnav-wrap>.topicnav{width:226px;margin:2rem 4.45rem 2rem auto}
}
/* Ab 1720 Pixeln gilt fuer alle Seiten, die keine echten Randnavi-Seiten sind,
   dieselbe Rasterlage wie darunter. Ohne diesen Block faellt der Wrapper auf
   `display:contents` zurueck, die Partnerleiste zieht sich ueber beide
   Spalten und der Baum rutscht unter sie. */
@media(min-width:1720px){
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.topicnav-lead{grid-column:2!important;grid-row:1;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.topicnav-wrap{display:block;grid-column:1;grid-row:1/span 2;align-self:stretch}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.topicnav-wrap>.topicnav{margin:2rem 0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.content-col:not(.content-col-after-partner){grid-column:2;grid-row:2;min-width:0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):is(:has(>.content-col>.wrap),:has(>.content-col>.article))>.content-col.content-col-after-partner{grid-column:2;grid-row:auto;min-width:0}
  /* Artikelseiten zentrieren ihre 800-Pixel-Spalte im Viewport. Der Baum
     steht deshalb rechtsbuendig in Spalte 1, genau wie zwischen 1440 und
     1719 Pixeln. Diese Regel muss hinter der Zeile mit `margin:2rem 0`
     stehen, beide Selektoren sind gleich spezifisch. */
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):has(>.content-col>.article)>.topicnav-wrap>.topicnav{width:226px;margin:2rem 4.45rem 2rem auto}
}
@media(min-width:1720px){
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):not(:has(>.content-col>.wrap)):not(:has(>.content-col>.article)){position:relative}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):not(:has(>.content-col>.wrap)):not(:has(>.content-col>.article))>.topicnav-wrap{display:block;position:absolute;top:0;bottom:0;left:calc(50% - 848px);width:226px;z-index:5;background:transparent!important;border:0!important}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead):not(:has(>.content-col>.wrap)):not(:has(>.content-col>.article))>.topicnav-wrap>.topicnav{width:226px;margin:2rem 0}
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col .section-header,
  body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col>.cta-banner>:is(h2,h3,p){box-sizing:border-box;width:min(calc(100% - 3rem),1168px);margin-left:auto;margin-right:auto}
  html[data-kd-theme-page="typ-ki"] body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.topicnav-wrap{display:block!important}
  html[data-kd-theme-page="typ-ki"] body main.has-topicnav.has-topicnav.has-topicnav:has(>.topicnav-lead)>.content-col{width:auto!important;grid-column:2!important}
}
/* studi-jobs: ps-topstrip-css */
.ps-host{background:var(--bg-alt,#f5f7fa);padding:1.25rem 1.5rem .25rem}
.ps-wrap{max-width:1120px;margin:0 auto;display:flex;justify-content:center}
.kp-card{box-sizing:border-box;display:grid;grid-template-columns:390px 1fr;align-items:center;gap:26px;width:100%;max-width:916px;margin:0 auto;padding:12px 24px;background:#fff;border:1px solid var(--border,#dfe8e3);border-radius:15px;box-shadow:0 12px 34px rgba(19,55,38,.09);color:var(--text,#11231b)}
.kp-intro{padding-left:12px}
.kp-eyebrow{display:flex;align-items:center;gap:7px;color:var(--green,#08783e);font-size:.68rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.kp-eyebrow:before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--green,#08783e)}
.kp-eyebrow .ps-pill{position:static;transform:none;padding:.12rem .42rem;border:1px solid #b7deca;border-radius:999px;background:#eaf7f0;box-shadow:none;color:var(--green,#08783e);font:inherit;letter-spacing:.06em}
.kp-title{margin:11px 0 10px;font-size:clamp(1.23rem,2.35vw,1.68rem);line-height:1.14;letter-spacing:-.035em}
.kp-title-line{display:block;white-space:nowrap}
.kp-lead{margin:0;color:var(--muted,#627169);font-size:.76rem;line-height:1.45;white-space:nowrap}
.kp-route{position:relative;display:grid;padding-left:35px}
.kp-route:before{content:"";position:absolute;left:14px;top:5px;bottom:5px;width:2px;background:#b9dfcc}
.kp-item{position:relative;display:grid;grid-template-columns:160px 1fr;align-items:center;gap:22px;min-height:50px;padding:6px 0 6px 14px;color:inherit;text-decoration:none;transition:transform .16s ease,opacity .16s ease}
.kp-item:hover{transform:translateX(2px);opacity:.77}
.kp-dot{position:absolute;left:-27px;top:50%;width:14px;height:14px;transform:translateY(-50%);border:3px solid #fff;border-radius:50%;background:#006b3e;box-shadow:0 0 0 2px #b9dfcc}
.kp-brand{display:flex;align-items:center;width:158px;min-width:0}
.kp-brand img{display:block;width:auto;object-fit:contain}
.kp-brand .kp-resume{width:108px;height:auto;max-height:27px}
.kp-brand .kp-jobs{width:128px;height:auto;max-height:25px}
.kp-writer{gap:7px}
.kp-writer img{width:28px;height:28px;object-fit:contain}
.kp-wordmark{white-space:nowrap;color:#202925;font-size:.72rem;font-weight:900;letter-spacing:-.03em}
.kp-wordmark em{color:var(--green,#08783e);font-style:normal}
.kp-copy{position:relative;left:12px}
.kp-copy .kp-action{display:block;font-size:.77rem;font-weight:700}
.kp-copy .kp-detail{display:block;margin-top:2px;color:var(--muted,#627169);font-size:.68rem;font-weight:600}
html[data-theme="dark"] .kp-card{background:var(--bg,#1d1d1d);border-color:var(--border,#666);box-shadow:0 12px 34px rgba(0,0,0,.28);color:var(--text,#f3f3f3)}
html[data-theme="dark"] .kp-eyebrow{color:var(--green,#4ade80)}
html[data-theme="dark"] .kp-eyebrow .ps-pill{background:var(--green-bg,#173c2b)!important;border-color:#2f6f4e!important;color:var(--green,#4ade80)!important}
html[data-theme="dark"] .kp-route:before{background:#2f6f4e}
html[data-theme="dark"] .kp-dot{border-color:var(--bg,#1d1d1d);background:var(--green,#4ade80);box-shadow:0 0 0 2px #2f6f4e}
html[data-theme="dark"] .kp-brand img{box-sizing:content-box;padding:3px 5px;background:#fff;border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.18)}
html[data-theme="dark"] .kp-wordmark{color:var(--text,#f3f3f3)}
html[data-theme="dark"] .kp-wordmark em{color:var(--green,#4ade80)}
html[data-theme="dark"] .kp-copy .kp-detail{color:var(--muted,#c6c6c6)}
@media(max-width:760px){.kp-card{grid-template-columns:1fr;align-items:start;gap:16px;max-width:560px}.kp-intro{max-width:430px;padding-left:0}.kp-copy{left:0}.kp-title-line,.kp-lead{white-space:normal}}
@media(max-width:470px){.ps-host{padding:1rem .5rem .25rem}.kp-card{width:calc(100vw - 16px);padding:19px 14px}.kp-route{padding-left:35px}.kp-item{grid-template-columns:1fr;gap:3px;min-height:74px;padding:6px 0 6px 14px}.kp-brand{width:142px}.kp-brand .kp-resume{width:116px}.kp-brand .kp-jobs{width:118px}.kp-writer{gap:5px}.kp-wordmark{font-size:.66rem}}
/* studi-jobs: ps-topstrip-fix */
@media(min-width:771px){main.has-topicnav>.topicnav-wrap{display:block;grid-column:1;align-self:stretch}main.has-topicnav>.content-col{grid-column:2}}@media(min-width:1440px){main.has-topicnav>.topicnav-wrap{display:flex;justify-content:flex-end;padding-right:2.1rem;box-sizing:border-box}main.has-topicnav>.topicnav-wrap>.topicnav{margin-right:0}}@media(min-width:1100px){.ps-logos,.ps-desc{flex-wrap:nowrap}.ps-desc{gap:.4rem .7rem}.ps-cell+.ps-cell{padding-left:.7rem}.ps-cell img{height:26px}.ps-cell .t b{font-size:.78rem}.ps-cell .t span{font-size:.71rem}.ps-cell .t b,.ps-cell .t span{white-space:nowrap}}
