/* TAPS: style ograniczone do shortcode’ów. Wtyczka ładuje ten plik automatycznie. */
.taps-tc{--tt-accent:var(--ast-global-color-0,#822b53);--tt-ink:#212221;--tt-muted:#606060;--tt-line:#dedede;box-sizing:border-box;max-width:1280px;margin:0 auto;padding:64px 28px 88px;color:var(--tt-ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}
.taps-tc *{box-sizing:border-box}
.taps-tc .tt-application{margin-top:56px;padding:36px clamp(20px,4vw,48px);background:#f8f3f6;border-top:3px solid var(--tt-accent);scroll-margin-top:130px}
.taps-tc .tt-application h2{font-size:clamp(30px,3.4vw,46px);font-weight:400;letter-spacing:-.04em;margin:0 0 16px}
.taps-tc .tt-application-intro{max-width:700px;color:var(--tt-muted)}
.taps-tc .tt-application-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;margin-top:24px}
.taps-tc .tt-form-wide{grid-column:1 / -1}
.taps-tc .tt-application-fields>div{min-width:0}
.taps-tc .tt-application-fields p{margin:0}
.taps-tc .tt-application-fields label{display:block;font-weight:600;color:var(--tt-ink);font-size:15px}
.taps-tc .tt-application-fields .wpcf7-form-control-wrap{display:block;margin-top:8px}
.taps-tc .tt-application-fields :is(input[type=text],input[type=email],input[type=tel]){box-sizing:border-box;width:100%;max-width:100%;height:auto;min-height:50px;margin:0;padding:12px 14px;border:1px solid #b9b4b7;border-radius:0;background:#fff;color:#212221;font:400 16px/1.5 Arial,Helvetica,sans-serif}
.taps-tc .tt-application-fields input[type=file]{display:block;width:100%;max-width:100%;padding:12px;background:#fff;border:1px dashed #aaa;color:#212221;font-size:15px;white-space:normal}
.taps-tc .tt-application-fields input[type=file]::file-selector-button{border:0;padding:10px 14px;margin-right:12px;background:#eee5e9;color:#682242;font-weight:600;cursor:pointer}
.taps-tc .tt-application-fields small{display:block;font-size:13px;font-weight:400;color:#606060;margin-top:8px;line-height:1.5}
.taps-tc .tt-consent .wpcf7-list-item{margin:0}
.taps-tc .tt-consent label{display:flex;align-items:flex-start;gap:12px;font-weight:400;line-height:1.65}
.taps-tc .tt-consent input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:3px 0 0;accent-color:var(--tt-accent)}
.taps-tc .tt-application-fields input[type=submit]{padding:14px 26px;min-height:48px;border:0;border-radius:0;background:var(--tt-accent);color:#fff;font-size:16px;font-weight:600;cursor:pointer;white-space:normal}
.taps-tc .tt-application-fields input[type=submit]:disabled{opacity:.55;cursor:not-allowed}
.taps-tc .tt-application-fields input:focus-visible{outline:2px solid var(--tt-accent);outline-offset:3px}
.taps-tc .tt-application .wpcf7-not-valid-tip{font-size:13px;margin-top:5px}
.taps-tc .tt-application .wpcf7-response-output{margin:24px 0 0;padding:14px 18px;line-height:1.6}
.taps-tc .tt-form-selection:empty{display:none}
.taps-tc .tt-form-selection{font-size:14px;color:var(--tt-accent);overflow-wrap:anywhere}
@media(max-width:600px){.taps-tc .tt-application-fields{grid-template-columns:1fr;gap:20px}.taps-tc .tt-application{padding:28px 18px;scroll-margin-top:100px}.taps-tc .tt-application-fields input[type=submit]{width:100%}}
.taps-tc.taps-tc--latest{width:100%;max-width:none;margin:0;padding:0}
.elementor .elementor-widget-shortcode:has(.taps-tc--latest){width:100%;max-width:100%;min-width:0;flex:1 1 100%}
.taps-tc--latest .tt-latest-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:16px;margin-bottom:28px}
.taps-tc--latest .tt-latest-heading .tt-more{margin:0}
.taps-tc--latest .tt-news h3{margin:12px 0;font-size:25px;overflow-wrap:anywhere}
.taps-tc--latest .tt-news h3 a{color:inherit;text-decoration:none}
.taps-tc--latest .tt-news h3 a:hover{text-decoration:underline}
.taps-tc--latest .tt-news-photo{display:block}
.taps-tc .tt-intro{padding:0 0 48px;border-bottom:1px solid var(--tt-line);margin-bottom:44px;max-width:none}
.taps-tc .tt-kicker{font-size:12px;letter-spacing:.15em;font-weight:700;color:var(--tt-accent);margin:0 0 22px}
.taps-tc h1{font-size:clamp(38px,5.2vw,68px);line-height:1.08;letter-spacing:-.045em;margin:0 0 24px;font-weight:500;color:var(--tt-ink)}
.taps-tc h1 span{display:block;color:var(--tt-accent);font-size:.64em;letter-spacing:-.035em;margin-top:12px}
.taps-tc .tt-intro>p:last-child{color:var(--tt-muted);max-width:650px;margin:0;font-size:18px}
.taps-tc h2{font-size:28px;line-height:1.25;margin:0;color:var(--tt-ink)}
.taps-tc h3{font-size:25px;line-height:1.3;margin:4px 0 0;color:var(--tt-ink)}
.taps-tc .tt-heading{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.taps-tc .tt-count{display:inline-grid;place-items:center;min-width:36px;height:36px;padding:0 8px;background:#f3e9ee;color:var(--tt-accent);border-radius:50%;font-weight:700}
.taps-tc .tt-jobs{display:grid;gap:16px}
.taps-tc .tt-job{padding:28px 32px;border:1px solid var(--tt-line);border-left:4px solid var(--tt-accent);background:white}
.taps-tc .tt-job-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.taps-tc .tt-meta{font-size:14px;color:var(--tt-muted);margin:0 0 8px}
.taps-tc .tt-status{display:inline-block;padding:6px 12px;background:#eaf3ed;color:#285c39;font-size:12px;font-weight:700;white-space:nowrap}
.taps-tc summary{cursor:pointer;color:var(--tt-accent);font-weight:700;padding:16px 0 4px;width:fit-content}
.taps-tc details[open]>summary{margin-bottom:20px}
.taps-tc .tt-job-body{border-top:1px solid var(--tt-line);padding-top:24px;overflow-wrap:anywhere}
.taps-tc .tt-job-body img{max-width:100%;height:auto}
.taps-tc .tt-job-body h2,.taps-tc .tt-job-body h3{font-size:21px;margin:18px 0 10px}
.taps-tc .tt-button{display:inline-flex;align-items:center;gap:26px;padding:12px 22px;margin:12px 0;background:var(--tt-accent);color:#fff;text-decoration:none;font-weight:700}
.taps-tc a:hover{text-decoration:underline}
.taps-tc :is(a,summary):focus-visible{outline:3px solid var(--tt-accent);outline-offset:5px}
.taps-tc .tt-archive{margin-top:36px;border-top:1px solid var(--tt-line);padding-top:12px}
.taps-tc .tt-archive>summary{color:var(--tt-muted)}
.taps-tc .tt-job--closed{border-left-color:#aaa;background:#f8f8f8}
.taps-tc .tt-job--closed .tt-status{background:#eaeaea;color:#555}
.taps-tc .tt-job--closed>.tt-meta{margin-top:16px}
.taps-tc .tt-empty{padding:28px;background:#f8f8f8;border-left:3px solid var(--tt-accent)}
.taps-tc .tt-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.taps-tc .tt-news{border:1px solid var(--tt-line);background:white;display:flex;flex-direction:column;min-width:0}
.taps-tc .tt-news-image{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block}
.taps-tc .tt-news-content{padding:26px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.taps-tc .tt-news h2{font-size:25px;margin:12px 0;overflow-wrap:anywhere}
.taps-tc .tt-news h2 a{color:inherit;text-decoration:none}
.taps-tc .tt-news p{color:var(--tt-muted);margin:0 0 24px}
.taps-tc .tt-more{margin-top:auto;color:var(--tt-accent);font-weight:700;text-decoration:none}
.taps-tc .tt-pagination{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.taps-tc .page-numbers{padding:8px 14px;border:1px solid var(--tt-line);color:var(--tt-accent);text-decoration:none}
.taps-tc .page-numbers.current{background:var(--tt-accent);color:#fff}
@media(max-width:900px){.taps-tc .tt-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.taps-tc .tt-job-head{align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:600px){.taps-tc{padding:40px 18px 56px}.taps-tc .tt-intro{padding-bottom:30px;margin-bottom:30px}.taps-tc .tt-news-grid{grid-template-columns:1fr}.taps-tc .tt-job{padding:22px 20px}.taps-tc h2{font-size:24px}.taps-tc h3{font-size:22px}}

/* TAPS — Rekrutacja: pełna szerokość hero i widgetu. Zastępuje poprzednią poprawkę hero. */
.elementor .e-con:has(> .elementor-widget-shortcode .taps-tc > .tt-jobs) {
  width: 100%; max-width: none; padding: 0; gap: 0;
}
.elementor .elementor-widget-shortcode:has(.taps-tc > .tt-jobs) {
  width: 100%; max-width: 100%; min-width: 0; flex: 1 1 100%;
}
.taps-tc:has(> .tt-jobs) {
  --tt-gutter: clamp(24px, 4vw, 64px);
  width: 100%; max-width: none; margin: 0; padding: 0 0 88px;
}
.taps-tc:has(> .tt-jobs) > .tt-intro {
  width: 100%; max-width: none; margin: 0 0 48px;
  padding: 52px max(var(--tt-gutter), calc((100% - 1440px) / 2));
  background: linear-gradient(110deg, #f8f8f8 45%, #f3e9ee);
  border-bottom: 1px solid #dedede;
}
.taps-tc:has(> .tt-jobs) > :not(.tt-intro) {
  width: calc(100% - 2 * var(--tt-gutter));
  max-width: 1440px; margin-left: auto; margin-right: auto;
}
@media (max-width: 600px) {
  .taps-tc:has(> .tt-jobs) { padding-bottom: 56px; }
  .taps-tc:has(> .tt-jobs) > .tt-intro {
    padding: 38px var(--tt-gutter); margin-bottom: 32px;
  }
}

/* TAPS — Aktualności: pełna szerokość i hero. Dopisz po istniejącym CSS. */
.elementor .e-con:has(> .elementor-widget-shortcode :is(.page-id-440 .taps-tc, .taps-tc--news)) {
  width: 100%; max-width: none; padding: 0; gap: 0;
}
.elementor .elementor-widget-shortcode:has(:is(.page-id-440 .taps-tc, .taps-tc--news)) {
  width: 100%; max-width: 100%; min-width: 0; flex: 1 1 100%;
}
:is(.page-id-440 .taps-tc, .taps-tc--news) {
  --tt-gutter: clamp(24px, 4vw, 64px);
  width: 100%; max-width: none; margin: 0; padding: 0 0 88px;
}
:is(.page-id-440 .taps-tc, .taps-tc--news) > .tt-intro {
  width: 100%; max-width: none; margin: 0 0 48px;
  padding: 52px max(var(--tt-gutter), calc((100% - 1440px) / 2));
  background: linear-gradient(110deg, #f8f8f8 45%, #f3e9ee);
  border-bottom: 1px solid #dedede;
}
:is(.page-id-440 .taps-tc, .taps-tc--news) > :not(.tt-intro) {
  width: calc(100% - 2 * var(--tt-gutter));
  max-width: 1440px; margin-left: auto; margin-right: auto;
}
@media (max-width: 600px) {
  :is(.page-id-440 .taps-tc, .taps-tc--news) { padding-bottom: 56px; }
  :is(.page-id-440 .taps-tc, .taps-tc--news) > .tt-intro {
    padding: 38px var(--tt-gutter); margin-bottom: 32px;
  }
}


/* TAPS — trzy wpisy: szerokość i nagłówek zgodne ze stroną główną */
body.home .elementor .e-con:has(> .elementor-widget-shortcode .taps-tc--latest) {
  width:100%; max-width:none; margin:0;
  padding:90px clamp(24px,5vw,64px);
  gap:0;
}
body.home .elementor .elementor-widget-shortcode:has(.taps-tc--latest) {
  width:100%; min-width:0; max-width:100%;
}
body.home .taps-tc.taps-tc--latest {
  width:100%; max-width:var(--taps-content-width,1440px); margin:0 auto; padding:0;
}
body.home .taps-tc--latest .tt-latest-heading {
  align-items:flex-end; gap:24px; margin-bottom:40px;
}
body.home .taps-tc--latest .tt-latest-heading h2 {
  margin:0; color:var(--taps-ink,#212221);
  font-family:var(--taps-font,Arial,Helvetica,sans-serif);
  font-size:clamp(2.25rem,4.2vw,4.35rem);
  font-weight:400; line-height:1.12; letter-spacing:-.045em;
}
body.home .taps-tc--latest .tt-latest-heading > .tt-more {
  font-size:14px; font-weight:400; line-height:1.5; padding-bottom:6px; margin:0;
}
@media(max-width:1024px) {
  body.home .elementor .e-con:has(> .elementor-widget-shortcode .taps-tc--latest) { padding-block:64px; }
}
@media(max-width:600px) {
  body.home .taps-tc--latest .tt-latest-heading {
    align-items:flex-start; flex-direction:column; gap:18px; margin-bottom:28px;
  }
}
