/* ============ careers page ============ */
body.careers{background:var(--paper)}
/* nav: solid from top (light hero) */
body.careers .nav{background:rgba(255,255,255,.92);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line);padding:.85rem 0}
body.careers .nav .brand .lg-light{opacity:0}
body.careers .nav .brand .lg-dark{opacity:1}
body.careers .nav .menu>li>a{color:var(--ink)}
body.careers .nav .nav-phone{color:var(--ink)}
body.careers .nav .nav-cta{border-color:var(--green);color:var(--green)}
body.careers .nav .burger span{background:var(--ink)}

/* buttons extra */
.btn-line{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-line:hover{background:var(--ink);color:#fff}
.btn-line:hover .arw{color:var(--red)}

/* ---- hero ---- */
.khero{position:relative;background:var(--stone);padding:clamp(8.5rem,17vh,12.5rem) 0 clamp(3.5rem,8vh,6.5rem);overflow:hidden}
.khero::after{content:"";position:absolute;right:-8%;top:-10%;width:46%;height:120%;
  background:radial-gradient(circle at 60% 40%,rgba(0,152,54,.07),transparent 62%);pointer-events:none}
.khero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(2rem,5vw,4rem);align-items:center;position:relative;z-index:2}
.khero-eyebrow{margin-bottom:1.5rem}
.khero h1{font-size:clamp(2.9rem,7.2vw,5.6rem);font-weight:300;letter-spacing:-.03em;line-height:1.0;color:var(--ink)}
.khero h1 .dot{color:inherit}
.khero-sub{margin-top:1.3rem;font-size:clamp(1.15rem,1.7vw,1.45rem);font-weight:500;color:var(--green);letter-spacing:-.01em}
.khero-lead{margin-top:1.3rem;max-width:48ch;color:var(--ink-soft);font-weight:300;font-size:1.06rem;line-height:1.7}
.khero-cta{margin-top:2.2rem;display:flex;gap:1rem;flex-wrap:wrap}
.khero-illus{position:relative}
.khero-illus svg{width:100%;height:auto;max-width:340px;margin:0 auto;display:block}
@media(max-width:860px){.khero-grid{grid-template-columns:1fr}.khero-illus{max-width:240px;margin-top:1rem}}

/* ---- benefits ---- */
.benefits{background:var(--paper)}
.ben-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem)}
.ben-card{position:relative;background:var(--paper);border:1px solid var(--line);padding:clamp(1.7rem,2.6vw,2.3rem);overflow:hidden;
  transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .5s var(--ease)}
.ben-card::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--red);transition:width .55s var(--ease)}
.ben-card:hover{transform:translateY(-6px);box-shadow:0 26px 54px -30px rgba(21,32,26,.42);border-color:var(--stone-deep)}
.ben-card:hover::before{width:100%}
.ben-ico{display:inline-flex;align-items:center;color:var(--green);margin-bottom:1rem;transition:color .4s var(--ease)}
.ben-card:hover .ben-ico{color:var(--green-deep)}
.ben-ico svg{width:24px;height:24px}
.ben-title{font-size:1.22rem;font-weight:500;letter-spacing:-.01em;display:flex;align-items:center;gap:.6rem;margin-bottom:.65rem;line-height:1.25}
.ben-title .rdot{width:7px;height:7px;border-radius:50%;background:var(--red);flex-shrink:0}
.ben-desc{font-size:.95rem;color:var(--ink-soft);font-weight:300;line-height:1.62}
.ben-link{display:inline-flex;align-items:center;gap:.45rem;margin-top:1rem;font-size:.7rem;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;color:var(--ink)}
.ben-link .arw{color:var(--red);transition:transform .4s var(--ease)}
.ben-card:hover .ben-link .arw{transform:translateX(5px)}
@media(max-width:920px){.ben-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ben-grid{grid-template-columns:1fr}}

/* benefits: nummerierte Karten + lebendigere Interaktion */
.ben-grid{counter-reset:ben}
.ben-card{counter-increment:ben}
.ben-card::after{content:counter(ben,decimal-leading-zero);position:absolute;top:1.1rem;right:1.4rem;z-index:0;
  font-size:2.7rem;font-weight:700;line-height:1;color:var(--stone-deep);
  transition:color .45s var(--ease),opacity .45s var(--ease),transform .45s var(--ease)}
.ben-card:hover::after{color:var(--green);opacity:.5;transform:translateY(-3px)}
.ben-ico,.ben-title,.ben-desc,.ben-link{position:relative;z-index:1}

/* ---- teamspirit (dark band) ---- */
.teamspirit{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.teamspirit::before{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:var(--red);
  left:8%;top:22%;opacity:.9}
.teamspirit::after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.25);
  right:12%;bottom:26%}
.ts-inner{position:relative;z-index:2;max-width:880px}
.ts-inner .eyebrow{color:#fff}
.ts-inner .eyebrow .mark{background:var(--red)}
.ts-stmt{font-size:clamp(1.9rem,4.2vw,3.1rem);font-weight:300;letter-spacing:-.025em;line-height:1.1;color:#fff;margin:1.3rem 0 1.4rem;max-width:20ch}
.ts-stmt .dot{color:inherit}
.ts-text{color:rgba(255,255,255,.78);font-weight:300;font-size:1.06rem;line-height:1.75;max-width:60ch}
.ts-cta{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap}
.ts-note{margin-top:1.6rem;font-size:.78rem;letter-spacing:.04em;color:rgba(255,255,255,.5)}
.btn-ghost-l{display:inline-flex;align-items:center;gap:.7rem;font-weight:500;font-size:.95rem;padding:.95rem 1.6rem;border-radius:2px;
  border:1.5px solid rgba(255,255,255,.6);color:#fff;background:transparent;transition:background .4s var(--ease),color .4s var(--ease)}
.btn-ghost-l .arw{transition:transform .4s var(--ease)}
.btn-ghost-l:hover{background:#fff;color:var(--ink)}.btn-ghost-l:hover .arw{transform:translateX(5px);color:var(--red)}

/* ---- open positions ---- */
.stellen{background:var(--stone)}
.jobs{display:flex;flex-direction:column;gap:1rem;max-width:1020px}
.job{border:1px solid var(--line);background:var(--paper);transition:border-color .4s var(--ease),box-shadow .4s var(--ease)}
.job.open{border-color:var(--stone-deep);box-shadow:0 22px 48px -30px rgba(21,32,26,.32)}
.job-head{display:flex;align-items:center;gap:1.1rem;padding:clamp(1.35rem,2.5vw,1.9rem);cursor:pointer}
.job-rdot{width:9px;height:9px;border-radius:50%;background:var(--red);flex-shrink:0}
.job-h{flex:1}
.job-title{font-size:clamp(1.2rem,2vw,1.55rem);font-weight:500;letter-spacing:-.01em}
.job-meta{margin-top:.35rem;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.job-toggle{width:44px;height:44px;border:1.5px solid var(--ink);border-radius:50%;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;color:var(--ink);transition:background .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease)}
.job-toggle svg{width:18px;height:18px;transition:transform .45s var(--ease)}
.job.open .job-toggle{background:var(--green);border-color:var(--green);color:#fff}
.job.open .job-toggle svg{transform:rotate(45deg)}
.job-detail{max-height:0;overflow:hidden;transition:max-height .6s var(--ease)}
.job.open .job-detail{max-height:2200px}
.job-detail-inner{padding:0 clamp(1.35rem,2.5vw,1.9rem) clamp(1.7rem,3vw,2.4rem)}
.job-teaser{color:var(--ink-soft);font-weight:300;line-height:1.72;max-width:72ch;margin-bottom:2.1rem}
.job-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.6rem,4vw,3rem)}
.job-col h4{font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--green);margin-bottom:1.1rem}
.job-list{list-style:none;display:flex;flex-direction:column;gap:.65rem}
.job-list li{display:flex;gap:.7rem;font-size:.95rem;color:var(--ink);line-height:1.45}
.job-list li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--red);flex-shrink:0;margin-top:.45rem}
.job-apply{margin-top:2.2rem;padding-top:1.7rem;border-top:1px solid var(--line)}
.job-apply p{color:var(--ink);font-weight:400;margin-bottom:1.1rem}
.job-apply-btns{display:flex;gap:.9rem;flex-wrap:wrap}
@media(max-width:700px){.job-cols{grid-template-columns:1fr}}
/* spontaneous application */
.spontan{display:flex;align-items:center;justify-content:space-between;gap:1.6rem;flex-wrap:wrap;max-width:1020px;
  margin-top:1.4rem;padding:clamp(1.6rem,3vw,2.2rem);border:1.5px dashed var(--stone-deep);background:transparent}
.spontan h3{font-size:clamp(1.15rem,1.8vw,1.4rem);font-weight:500;letter-spacing:-.01em;margin-bottom:.4rem}
.spontan p{color:var(--ink-soft);font-weight:300;font-size:.98rem;max-width:52ch}
.spontan .btn{flex-shrink:0}
