/* People pages share the brand, not a repeated page composition. */
/* Preserve legacy Elementor data for rollback, but not its white page backdrop. */
body.wp-theme-jr-gruppe-aufbau.elementor-page.jr-page-kontakt{background:var(--paper);color:var(--text)}
.people-page h1,.people-page h2,.people-page h3{font-family:var(--heading,"June Pro","Segoe UI",sans-serif);font-weight:600;text-wrap:balance}
.people-page p{color:var(--muted);text-wrap:pretty;line-height:1.65}
.people-page figure{margin:0}
.people-page figure img{display:block;width:100%;height:auto;border-radius:var(--radius-media)}
.people-page .people-caption{font-size:.88rem;color:var(--link);margin:0 0 18px;line-height:1.5}
.people-page a:not(.btn):focus-visible{outline:2px solid var(--link);outline-offset:5px}
.people-page .btn{text-align:center}

/* About. One clear introduction and a complete photograph. */
.essay-opening{padding-top:64px}
.essay-heading{max-width:810px;margin:0 auto 40px;text-align:center}
.essay-heading h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.08;letter-spacing:-.025em;margin:0 0 24px}
.essay-intro{font-size:clamp(1.05rem,1.3vw,1.2rem);max-width:710px;margin:0 auto}
.essay-opening-photo{width:100%}
.essay-opening-photo img{width:100%;height:auto}
.essay-opening-photo figcaption{padding-top:12px;font-size:.79rem;color:var(--muted)}
.essay-company{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,7vw,104px);padding-block:80px 72px;border-bottom:1px solid var(--line)}
.essay-company-heading h2{font-size:clamp(2rem,3.4vw,3rem);line-height:1.16;letter-spacing:-.02em;margin:0;max-width:16ch}
.essay-company-copy{max-width:66ch}
.essay-company-copy p{margin:0 0 22px;font-size:1.05rem}
.essay-company-copy p:last-child{margin-bottom:0}
.essay-claim{padding-block:96px;text-align:center}
.essay-claim h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.16;letter-spacing:-.02em;margin:0 auto 24px;max-width:850px}
.essay-claim-intro{max-width:650px;margin:0 auto;font-size:1.08rem}
.essay-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin:56px 0 40px;text-align:left}
.essay-principles article{padding-top:24px;border-top:1px solid var(--line)}
.essay-principles h3{font-size:1.4rem;line-height:1.25;margin:0 0 14px;letter-spacing:-.015em}
.essay-principles p{font-size:1rem;margin:0}
.essay-team{background:var(--mineral);padding-block:80px}
.essay-team-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.essay-team-copy h2{font-size:clamp(2rem,3.4vw,3rem);line-height:1.16;letter-spacing:-.02em;margin:0 0 24px}
.essay-team-copy p{max-width:32rem;margin:0 0 28px}
.essay-team-layout figure{width:100%;min-width:0}

/* Careers. A single photographic hero, followed by practical information. */
.career-cover{position:relative;isolation:isolate;background:var(--paper);min-height:min(700px,calc(100svh - 88px));display:grid;align-items:center}
.career-cover-photo{position:absolute;inset:0;z-index:-2;overflow:hidden}
.career-cover-photo img{width:100%;height:100%!important;object-fit:cover;object-position:70% 55%;border-radius:0!important}
.career-cover::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,21,31,.95) 0%,rgba(7,21,31,.88) 29%,rgba(7,21,31,.4) 58%,rgba(7,21,31,.06) 100%)}
.career-hero-content{padding-block:80px}
.career-hero-copy{max-width:620px}
.career-hero-copy h1{font-size:clamp(2.55rem,4.55vw,4.5rem);line-height:1.12;letter-spacing:-.025em;margin:0 0 25px}
.career-hero-copy>p:not(.people-caption){font-size:1.15rem;line-height:1.6;max-width:35ch;margin:0 0 32px;color:var(--text)}
.career-cover .people-caption{color:var(--text)}
.career-work{padding-block:96px}
.career-work>header{max-width:670px;margin:0 auto 48px;text-align:center}
.career-work h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 18px}
.career-work>header p{margin:0;font-size:1.08rem}
.career-work-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}
.career-work-layout article{padding-left:22px;border-left:2px solid var(--line)}
.career-work-layout h3{font-size:1.4rem;margin:0 0 14px;line-height:1.25}
.career-work-layout p{font-size:1rem;margin:0}
.career-opportunities{padding-block:80px;background:var(--mineral);scroll-margin-top:112px}
.career-opportunities header{text-align:center;margin:0 auto 40px}
.career-opportunities header h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 18px}
.career-opportunities header p{margin:0;font-size:1.08rem}
.career-jobs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.career-jobs .job-card{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;padding:36px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:none;opacity:1;transform:none}
.career-jobs .kicker{font-size:.88rem;color:var(--link);text-transform:none;letter-spacing:0;margin-bottom:18px;line-height:1.5}
.career-jobs h3{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.2;letter-spacing:-.02em;margin:0 0 18px;overflow-wrap:anywhere}
.career-jobs .job-card>p{font-size:1rem;line-height:1.65;margin:0 0 24px}
.career-jobs .job-meta{display:flex;flex-wrap:wrap;gap:8px 24px;color:var(--muted);font-size:.85rem;margin:0 0 28px}
.career-jobs .btn{margin-top:auto}
.career-conversation{padding-block:80px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.career-conversation>div{max-width:780px}
.career-conversation h2{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.2;letter-spacing:-.02em;margin:0 0 18px}
.career-conversation p{max-width:690px;margin:0}
.career-conversation>.btn{flex:none}

/* Contact. Preserve the native, secured form and its explicit labels. */
.desk-layout{padding-block:72px 96px;display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:start;scroll-margin-top:112px}
.desk-introduction{min-width:0}
.desk-introduction h1{font-size:clamp(2.5rem,4.4vw,4rem);line-height:1.12;letter-spacing:-.025em;margin:0 0 26px;max-width:9ch}
.desk-lead{max-width:400px;font-size:1.08rem;margin:0}
.desk-direct{display:grid;gap:25px;margin:38px 0 0}
.desk-direct dt{font-size:.84rem;color:var(--muted);margin-bottom:7px}
.desk-direct dd{margin:0;font-size:clamp(1.12rem,1.7vw,1.4rem);line-height:1.4}
.desk-direct a{text-decoration-line:underline;text-decoration-color:var(--line);text-decoration-thickness:1px;text-underline-offset:.2em;transition:text-decoration-color 150ms ease;overflow-wrap:anywhere}
.desk-direct a:hover{text-decoration-color:var(--cyan)}
.desk-direct address{max-width:25rem;font-style:normal;font-size:1rem;line-height:1.65;color:var(--muted)}
.desk-form{background:var(--surface);padding:40px;border-radius:var(--radius-panel);border:0;min-width:0;scroll-margin-top:112px}
.desk-form h2{margin:0 0 15px;font-size:clamp(1.85rem,2.8vw,2.5rem);line-height:1.16;letter-spacing:-.02em}
.desk-form>p{font-size:.97rem;line-height:1.6;margin:0 0 28px;max-width:30rem}
.desk-form .jr-contact-form { display: grid; gap: 22px; }
.desk-form .form-trap { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.desk-form .form-note { font-size: .78rem; line-height: 1.55; margin: 0; }
.desk-form .preview-note { padding: 10px 0 10px 14px; border-left: 2px solid var(--cyan); }
.desk-form .form-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.desk-form .field { min-width: 0; }
.desk-form .field label { display: block; color: var(--text); font-size: .85rem; line-height: 1.45; margin-bottom: 8px; }
.desk-form .field input:not([type="file"]), .desk-form .field select, .desk-form .field textarea { width: 100%; min-height: 49px; color: var(--text); background: #061822; font: inherit; font-size: 1rem; border: 1px solid var(--line); border-radius: var(--radius-control); padding: 12px 13px; box-shadow: none; }
.desk-form .field textarea { min-height: 155px; resize: vertical; line-height: 1.5; }
.desk-form .field input:focus-visible, .desk-form .field select:focus-visible, .desk-form .field textarea:focus-visible, .desk-form .privacy-check input:focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; }
.desk-form [aria-invalid="true"] { border-color: #f7bfb4 !important; }
.desk-form .field input[type="file"] { max-width: 100%; width: 100%; font-size: .84rem; color: var(--muted); line-height: 1.55; padding: 0; border: 0; background: transparent; margin-bottom: 10px; }
.desk-form input::file-selector-button { font: inherit; color: var(--text); background: transparent; border: 1px solid var(--line); padding: 13px 12px; margin: 0 10px 8px 0; cursor: pointer; }
.desk-form input::file-selector-button:hover { border-color: var(--cyan); }
.desk-form .privacy-check { display: flex; gap: 12px; align-items: flex-start; font-size: .82rem; line-height: 1.6; color: var(--muted); }
.desk-form .privacy-check input { flex: 0 0 18px; width: 18px; height: 18px; margin: 4px 0 0; accent-color: var(--cyan); }
.desk-form .privacy-check a { color: var(--text); text-decoration: underline; text-underline-offset: 3px; }
.desk-form .form-status:empty { display: none; }
.desk-form .form-status { padding: 15px; background: #061822; border-left: 3px solid var(--cyan); font-size: .93rem; line-height: 1.55; }
.desk-form .form-status[data-state="error"] { border-left-color: #f7bfb4; color: #f7d1c9; }
.desk-form .form-status:focus { outline: 2px solid var(--cyan); outline-offset: 3px; }
.desk-form .form-actions { margin-top: 3px; }
.desk-form .form-actions .btn { width: 100%; }
.desk-form .form-actions .btn:disabled { opacity: .65; cursor: wait; }


@media(max-width:1100px){
 .essay-team-layout{gap:40px}
 .career-hero-copy{max-width:550px}
 .career-jobs .job-card{padding:28px}
 .desk-layout{gap:5%;grid-template-columns:.85fr 1.15fr}
 .desk-form{padding:28px}
 .desk-form .form-pair{grid-template-columns:1fr}
}
@media(max-width:760px){
 .essay-opening{padding-top:44px}
 .essay-heading{margin-bottom:30px;text-align:left}
 .essay-heading h1{font-size:clamp(2.3rem,8.5vw,3.5rem);max-width:14ch}
 .essay-intro{font-size:1rem;max-width:none}
 .essay-company{grid-template-columns:1fr;gap:26px;padding-block:48px}
 .essay-company-heading h2{max-width:19ch}
 .essay-company-copy p{font-size:1rem;margin-bottom:18px}
 .essay-claim{padding-block:64px}
 .essay-claim-intro{font-size:1rem}
 .essay-principles{grid-template-columns:1fr;gap:28px;margin:36px 0}
 .essay-principles article{padding-top:22px}
 .essay-team{padding-block:56px}
 .essay-team-layout{grid-template-columns:1fr;gap:32px}
 .essay-team-copy h2{max-width:20ch}
 .career-cover{min-height:0;display:flex;flex-direction:column;align-items:stretch}
 .career-cover-photo{position:relative;inset:auto;z-index:0;order:0;aspect-ratio:16/9}
 .career-cover-photo img{object-fit:contain}
 .career-cover::after{display:none}
 .career-hero-content{position:relative;z-index:1;padding-block:0 52px;margin-top:-20px;order:1}
 .career-hero-content::before{content:"";position:absolute;z-index:-1;inset:-75px -5.5555% 0;background:linear-gradient(180deg,rgba(7,21,31,0),var(--paper) 96px)}
 .career-hero-copy{max-width:100%;padding-top:28px}
 .career-hero-copy h1{font-size:clamp(2.1rem,8.2vw,3.6rem);line-height:1.12;margin-bottom:22px}
 .career-hero-copy>p:not(.people-caption){font-size:1rem;max-width:38ch;margin-bottom:28px}
 .career-cover .people-caption{margin-bottom:14px}
 .career-work{padding-block:64px}
 .career-work>header{margin-bottom:32px;text-align:left}
 .career-work>header p{font-size:1rem}
 .career-work-layout{grid-template-columns:1fr;gap:28px}
 .career-work-layout article{padding-left:20px}
 .career-opportunities{padding-block:56px;scroll-margin-top:96px}
 .career-opportunities header{text-align:left;margin-bottom:30px}
 .career-opportunities header p{font-size:1rem}
 .career-jobs{grid-template-columns:1fr;gap:22px}
 .career-jobs .job-card{padding:28px}
 .career-jobs h3{font-size:clamp(1.55rem,5.8vw,2rem)}
 .career-conversation{padding-block:56px;display:block}
 .career-conversation p{margin-bottom:28px}
 .desk-layout{padding-block:44px 64px;grid-template-columns:1fr;gap:36px;scroll-margin-top:96px}
 .desk-introduction h1{font-size:clamp(2.45rem,9.2vw,3.6rem);max-width:none;margin-bottom:22px}
 .desk-lead{font-size:1rem;max-width:36rem}
 .desk-direct{grid-template-columns:1fr 1fr;gap:22px 28px;margin-top:30px}
 .desk-direct>div:last-child{grid-column:1/-1}
 .desk-direct dd{font-size:1.12rem}
 .desk-form{padding:30px;scroll-margin-top:96px}
 .desk-form .form-pair{grid-template-columns:1fr 1fr;gap:18px}
}
@media(max-width:480px){
 .career-jobs .job-card{padding:24px}
 .career-jobs .btn{width:100%}
 .desk-direct{grid-template-columns:1fr;gap:22px}
 .desk-form{padding:26px 20px}
 .desk-form .form-pair{grid-template-columns:1fr;gap:22px}
 .desk-form .form-note{font-size:.83rem}
}
@media(prefers-reduced-motion:reduce){
 .people-page *,.people-page *::before,.people-page *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media print{
 .career-cover-photo{position:static}
 .career-cover::after,.career-hero-content::before{display:none}
 .career-cover,.essay-principles,.essay-team-layout,.career-work-layout,.career-jobs,.desk-layout{display:block}
 .career-hero-content{margin-top:0}
}
