/* ESPES Kariera 2.2.1: spójna typografia Poppins z serwisem ESPES. */
.espes-career, .espes-career *, .espes-career-single, .espes-career-single * {font-family: 'Poppins', sans-serif !important;}
.espes-career, .espes-career-single { color:inherit; font-family:inherit; font-size:inherit; line-height:inherit; width:100%; max-width:none; }
.espes-career *, .espes-career-single * { box-sizing:border-box; }
.espes-career-heading {display:flex;align-items:end;justify-content:space-between;gap:16px;margin:38px 0 28px;padding-bottom:18px;border-bottom:1px solid #d9d9d9;}
.espes-career-heading h2 {font-family:inherit; font-weight:inherit; line-height:1.2; font-size:clamp(24px,2.5vw,38px); margin:0; color:inherit; letter-spacing:normal; text-transform:none;}
.espes-career-heading>span {font-family:inherit; font-size:14px; opacity:.65; white-space:nowrap;}
.espes-job {padding:30px clamp(22px,3vw,48px) 32px;margin:0 0 20px;background:#f7f7f7;border:1px solid #e8e8e8;border-left:3px solid #e30613;transition:border-color .2s ease,background-color .2s ease;}
.espes-job:hover {border-color:#cacaca;border-left-color:#e30613;background:#fafafa;}
.espes-job-top {display:block;}
.espes-job h3 {font-family:inherit;font-size:clamp(21px,2vw,29px);font-weight:inherit;line-height:1.28;letter-spacing:normal;text-transform:none;margin:0 0 18px;color:inherit;}
.espes-job-title-link {font-family:inherit;color:inherit!important;text-decoration:none!important;}
.espes-job-title-link:hover {text-decoration:underline!important;text-underline-offset:4px;}
.espes-job-tags {display:flex;gap:9px;flex-wrap:wrap;margin:0 0 20px;font-family:inherit;}
.espes-job-tags span {font-family:inherit;font-size:clamp(12px, .95vw, 14px);font-weight:inherit;line-height:1.4;color:#404040;background:#fff;border:1px solid #dcdcdc;padding:7px 12px;}
.espes-job-summary {font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;color:inherit;max-width:920px;margin:0 0 24px;white-space:normal;}
.espes-job-actions {display:flex;gap:12px;align-items:center;}
.espes-job-button, .espes-apply-form .espes-apply-button {display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:46px;padding:12px 24px; font-family:inherit;font-size:inherit;font-weight:inherit;line-height:1.35;text-decoration:none!important;border-radius:0;cursor:pointer;transition:opacity .2s ease;}
/* Motyw zachowuje pierwszeństwo w zakresie kolorów przycisków WP. Gdy brak reguł, kolor firmowy ESPES. */
.espes-career a.espes-job-button:not([style]) {background:var(--wp--preset--color--primary,#e30613);color:#fff;border:1px solid transparent;}
.espes-career a.espes-job-button:hover {opacity:.85;}
.espes-job-button span {font-size:1.15em;line-height:1;}
.espes-career-single .espes-job-tags {margin:18px 0 25px;}
.espes-job-description {margin:20px 0 45px;}
.espes-apply {border-top:1px solid #d9d9d9;margin-top:38px;padding-top:28px;}
.espes-apply h2 {font-family:inherit;font-size:clamp(23px,2.2vw,32px);font-weight:inherit;line-height:1.3;margin:0 0 24px;}
.espes-apply-form {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin-top:15px;}
.espes-apply-form label {display:flex;flex-direction:column;gap:7px;font-family:inherit;font-size:inherit;}
.espes-apply-form label:has(textarea), .espes-apply-form label:has(input[type=file]), .espes-apply-form .espes-consent {grid-column:1/-1;}
.espes-apply-form input:not([type=checkbox]), .espes-apply-form textarea {box-sizing:border-box;width:100%;max-width:100%;font-family:inherit;font-size:inherit;padding:12px;border:1px solid #c8c8c8;border-radius:0;background:#fff;color:inherit;}
.espes-apply-form .espes-consent {display:block;line-height:1.5;}
.espes-apply-form .espes-consent input {margin-right:10px;}
.espes-apply-form .espes-apply-button {justify-self:start; background:var(--wp--preset--color--primary,#e30613); color:#fff; border:0;}
.espes-form-notice {padding:16px;border:1px solid #ccc;}
.espes-hp {position:absolute!important;left:-99999px!important;height:1px!important;overflow:hidden!important;}
.espes-back {display:inline-block;margin-top:24px;}
@media(max-width:650px){.espes-career-heading{margin-top:24px}.espes-job{padding:22px 18px}.espes-apply-form{grid-template-columns:1fr}.espes-apply-form label{grid-column:1/-1}.espes-job-button{width:100%}}

/* Opcjonalne zdjęcie nagłówkowe zarządzane z ustawień wtyczki. */
.espes-career-hero{position:relative; width:100%; margin:0 0 42px;overflow:hidden;background:#eee;}
.espes-career-hero-image{display:block;width:100%;height:auto;max-height:460px;object-fit:cover;}
.espes-career-hero-overlay{position:absolute;inset:0;display:flex;align-items:end;padding:clamp(24px,4vw,64px);background:linear-gradient(0deg,rgba(0,0,0,.6),transparent 65%);}
.espes-career-hero-overlay h2{font-family:'Poppins',sans-serif!important;color:#fff!important;font-size:clamp(30px,3.2vw,52px);line-height:1.15;font-weight:600;margin:0;}
@media(max-width:650px){.espes-career-hero{margin-bottom:24px}.espes-career-hero-image{min-height:190px;object-fit:cover}.espes-career-hero-overlay{padding:20px}}

/* 2.4.0: full-bleed header, independent from theme content max-width. */
.espes-career-hero {
    width:100vw; max-width:none; position:relative;
    left:50%; margin-left:-50vw; margin-right:0;
    height:clamp(300px,40vw,660px); margin-bottom:clamp(28px,4vw,64px);
}
.espes-career-hero-image {
    display:block; width:100%;height:100%;max-height:none;
    object-fit:cover; object-position:center;
}
.espes-career-hero-overlay {padding:clamp(24px,6vw,100px);}
/* An optional job image is only output when selected in the offer editor. */
.espes-job-with-image {display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,32%);gap:clamp(20px,3vw,48px);align-items:stretch;}
.espes-job-body {min-width:0;}
.espes-job-photo {display:block;overflow:hidden;align-self:stretch;min-height:205px;}
.espes-job-photo img {display:block;width:100%;height:100%;min-height:205px;object-fit:cover;transition:transform .3s ease;}
.espes-job-photo:hover img {transform:scale(1.025);}
.espes-job-single-photo {margin:12px 0 35px;}
.espes-job-single-photo img {width:100%;height:auto;display:block;max-height:600px;object-fit:cover;}
@media(max-width:700px){
  .espes-career-hero {height:clamp(240px,65vw,400px);}
  .espes-job-with-image {grid-template-columns:minmax(0,1fr);}
  .espes-job-photo {min-height:0;}
  .espes-job-photo img {max-height:300px;min-height:0;aspect-ratio:16/9;}
}

/* 2.5.2: wygląd jak na stronach produktowych ESPES. */
.espes-career-hero { margin-top:0; margin-bottom:16px !important; }
.espes-career-heading { border-top:0; border-bottom:0; padding:0; margin:0 0 28px; align-items:center; }
.espes-career-heading h3 { margin:0; padding:0; font-family:'Poppins',sans-serif !important; font-weight:700; line-height:1.2; color:#30343a; text-transform:none; letter-spacing:normal; }
.espes-career-heading > span { font-size:15px; font-weight:400; }
@media (max-width:700px){.espes-career-hero{margin-bottom:12px!important}.espes-career-heading{padding-top:16px;align-items:flex-start}}

/* 2.5.4: typografia nagłówka wzorowana na dużych tytułach podstron ESPES. */
.espes-career .espes-career-heading h3 {
  font-family:'Poppins',sans-serif !important;
  font-size:clamp(32px, 3.1vw, 52px) !important;
  font-weight:700 !important;
  line-height:1.16 !important;
  letter-spacing:-.025em;
  color:#30343a;
}
.espes-career .espes-career-heading {align-items:flex-end;flex-wrap:wrap;gap:12px 22px;}
.espes-form-notice {
  display:flex;flex-direction:column;gap:6px;
  padding:20px 24px;margin:0 0 26px;
  font-family:'Poppins',sans-serif !important;
  font-size:17px;line-height:1.5;
}
.espes-form-notice strong {font-size:20px;font-weight:700;}
.espes-form-success {background:#e8f6ec;border:2px solid #24864a;color:#145b31;}
.espes-form-error {background:#fff0f0;border:2px solid #bc2936;color:#8d1d28;}
@media(max-width:700px){.espes-career .espes-career-heading h3 {font-size:clamp(28px,7vw,38px)!important;}}

/* 2.5.5: silny, jednoznaczny selektor; ten sam format co tytul produktu ESPES. */
body .espes-career .espes-career-heading > h3.espes-career-main-title {
 font-family:'Poppins',sans-serif !important; font-size:clamp(30px, 3vw, 52px) !important; font-weight:700 !important;
 line-height:1.2 !important; letter-spacing:normal !important; text-transform:none !important;
 transform:none !important; opacity:1 !important; margin:0 !important; padding:0 !important;
 max-width:none !important; width:auto !important; display:block !important;
}
@media(max-width:767px) {
 body .espes-career .espes-career-heading > h3.espes-career-main-title {font-size:clamp(30px,6vw,42px) !important;}
}

/* 2.5.9: Jeden zestaw reguł dla etykiet; brak sprzecznych nadpisań. */
body .espes-career .espes-job-tags,
body .espes-career-single .espes-job-tags {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px 0 !important;
  padding: 0 !important;
  margin: 0 0 22px !important;
}
body .espes-career .espes-job-tags > .espes-job-tag,
body .espes-career-single .espes-job-tags > .espes-job-tag {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  box-sizing: border-box !important;
  margin: 0 12px 0 0 !important;
  padding: 8px 15px !important;
  border: 1px solid #dcdcdc !important;
  background: #fff;
  line-height: 1.5 !important;
}
body .espes-career .espes-job-summary {margin-top:0!important;}
body .espes-career-single .espes-job-description {margin-top:0!important;}
body .espes-career-single .espes-job-description > :first-child {margin-top:0!important;}
@media(max-width:650px) {
 body .espes-career .espes-job-tags > .espes-job-tag,
 body .espes-career-single .espes-job-tags > .espes-job-tag {margin-right:8px!important;padding:7px 11px!important;}
}

/* 2.6.0: Naglowek listy ma te sama hierarchie co tytul produktu ESPES.
   Nie stosujemy selektorow na wszystkie H3, by nie zmieniac nazw ofert. */
html body .espes-career .espes-career-heading > h3.espes-career-main-title {
  font-family:'Poppins',sans-serif !important;
  font-size:52px !important; font-weight:700 !important;
  line-height:1.18 !important; letter-spacing:0 !important;
  text-transform:none !important; margin:0 !important; padding:0 !important;
}
@media(max-width:767px){html body .espes-career .espes-career-heading > h3.espes-career-main-title{font-size:clamp(30px,6vw,42px) !important;}}

/* 2.6.2: rozmiar 35px jak w oryginalnej typografii ESPES. */
html body .espes-career .espes-career-heading > h3.espes-career-main-title { font-size:35px !important; }
@media(max-width:767px) { html body .espes-career .espes-career-heading > h3.espes-career-main-title { font-size:clamp(25px, 6vw, 35px) !important; } }

/* 2.6.3: znaczniki po tytule tylko na podstronach ofert. */
.espes-career-single .espes-job-description > .espes-job-tags { margin-top: 12px !important; margin-bottom: 22px !important; }
.espes-career-single .espes-job-single-title {font-family:'Poppins',sans-serif !important; font-weight:700; margin-bottom:16px;}

/* 2.6.5: titles of job cards only; page heading and single job pages unchanged. */
.espes-career:not(.espes-career-single) .espes-job-top > h5 {
 font-family:'Poppins',sans-serif !important;
 font-size:22px;
 font-weight:500;
 line-height:1.3;
 margin:0 0 18px;
 color:inherit;
 letter-spacing:normal;
 text-transform:none;
}

/* 2.6.6: Bez czerwonej linii nad nagłówkiem listy ofert. */
.espes-career .espes-career-heading { border-top: none !important; padding-top: 0 !important; }

/* 2.6.7: większy odstęp między nagłówkiem listy a pierwszą ofertą (28px → 64px). */
.espes-career:not(.espes-career-single) > .espes-career-heading { margin-bottom:64px !important; }

/* 2.6.8: wiekszy odstep tytulu od etykiet na podstronie stanowiska, bez zmian na liscie. */
.espes-career-single .espes-job-description > .espes-job-tags { margin-top:32px !important; }
