/* Kontakt: zdjecie, wstep z biurami, zaklady produkcyjne, wspolpraca, mapa. Wartosci z PROD (1369 i 844). */

.contact-photo {
  min-height: 34.717vw;
  background: url("/assets/img/COntact_zdjecie_nowe_krowy.webp") top center / cover no-repeat;
}

/* --- Wstep i biura --- */
.contact-intro {
  padding: 95px 20px 75px;
  background: var(--color-primary) url("/assets/img/Group-9.svg") no-repeat 31% 15%;
  color: var(--color-white);
}
.contact-intro__inner { align-items: center; }
.contact-intro__text {
  position: relative;
  width: 45.544vw;
  max-width: 45.544vw;
  margin-bottom: 136px;
  font-family: var(--font);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
}
.page--en .contact-intro__text { margin-bottom: 90px; }
/* Na PROD margines akapitu zapada sie z marginesem kontenera (136/90 px) - tu blok jest elementem flex. */
.contact-intro__text p:last-child { margin-bottom: 0; }

.contact-offices { --band-width: 68.287vw; width: 100%; }
.contact-offices__inner { flex-direction: row; gap: 100px; }
.contact-office { position: relative; display: flex; flex-direction: column; width: 100%; min-width: 0; }
.contact-office--first { padding-left: 120px; }
.contact-office__title {
  position: relative;
  margin: 0 0 40px;
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 1;
  color: var(--color-white);
}
.contact-office__text,
.contact-plants__text {
  position: relative;
  max-width: 787px;
  font-family: var(--font);
  font-size: 1.3rem;
  line-height: var(--lh-body);
}
.contact-office__text a,
.contact-plants__text a { color: inherit; }

/* EN: naglowki 2.2rem o grubosci 400 z <b> w srodku (jak na PROD - pogrubienie przez <b>, inny krój w linii) */
.page--en .contact-office__title { font-size: 2.2rem; font-weight: 400; }
.contact-office--registration { flex: 0 0 auto; width: 38.875%; }
/* Nazwa firmy wklejona na PROD jako naglowek (bez marginesow, interlinia dziedziczona z tekstu) z tekstem
   1.3rem na tle w kolorze sekcji. */
.contact-office__pasted {
  margin: 0;
  font-size: var(--fs-h2);
  font-weight: 500;
  line-height: inherit;
  text-transform: uppercase;
}
.contact-office__pasted span { font-size: 1.3rem; background: var(--color-primary); }

/* --- Zaklady produkcyjne: zdjecie po prawej (51%) --- */
.contact-plants {
  --band-width: 59.606vw;
  padding: 0 20px;
  background: url("/assets/img/Zdjecie_male_do_kontaktu.webp") no-repeat 100% 0 / 51% 100%;
}
.contact-plants--circle::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/assets/img/Ellipse-29.svg") no-repeat 18.531% 31%;
}
.contact-plants__inner { flex-direction: row; }
.contact-plants__col {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 47%;
  padding: 172px 0 140px;
  color: var(--color-primary);
}
.page--en .contact-plants__col { flex: 0 0 auto; width: 44%; }
.contact-plants__title {
  position: relative;
  margin: 0 0 53px;
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 1.1em;
}
.page--en .contact-plants__title { margin-bottom: 35px; font-size: 2.1rem; font-weight: 600; line-height: 1; }
.contact-plants__text { padding-left: 7px; } /* na PROD margines wewnatrz widzetu */

/* --- Wspolpraca --- */
.contact-coop {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 44px 20px 150px;
  background: var(--color-primary) url("/assets/img/Ellipse-26.svg") no-repeat 10% 25%;
  color: var(--color-white);
}
.page--en .contact-coop { background-position: center center; }
.contact-coop__title {
  position: relative;
  margin: 0 0 78px;
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.page--en .contact-coop__title {
  font-size: 2.2rem;
  line-height: var(--lh-body);
  text-shadow: 3px 8px 15px rgba(0, 0, 0, .3);
}
.contact-coop__inner { flex-direction: row; justify-content: space-between; }
.contact-coop__col { position: relative; display: flex; flex-direction: column; width: 280px; min-width: 0; }
.contact-coop__col-title {
  position: relative;
  margin: 10px 0 20px;
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 1;
}
.contact-coop__text {
  position: relative;
  font-family: var(--font);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
}
.contact-coop__text a { color: var(--color-white); }


/* EN: dwie kolumny (bez "Kariera"), odstep 100 px, pierwsza z wcieciem */
.page--en .contact-coop__cols { --band-width: 68.287vw; }
.page--en .contact-coop__inner { justify-content: flex-start; gap: 100px; }
.page--en .contact-coop__col { width: 100%; }
.page--en .contact-coop__col--first { padding-left: 120px; }
.page--en .contact-coop__col:not(.contact-coop__col--first) { flex: 0 0 auto; width: 38.875%; }
.page--en .contact-coop__col-title { margin: 0 0 40px; font-size: 2.2rem; font-weight: 400; }
.page--en .contact-coop__text { max-width: 787px; }

/* --- Mapa --- */
.contact-map { position: relative; display: flex; flex-direction: column; }

@media (max-width: 1024px) {
  /* Dlugie adresy e-mail zawijaja sie (na PROD wystawaly poza ekran przy 768 px). */
  .contact-coop__text a,
  .contact-office__text a { overflow-wrap: break-word; }
  .contact-intro { padding: 50px 20px; background-position: 0 0; background-size: 0 auto; }
  .contact-intro__text,
  .page--en .contact-intro__text { width: 100%; max-width: 100%; margin-bottom: 40px; }
  .contact-offices__inner,
  .page--en .contact-coop__inner { gap: 40px; }
  .contact-office--first,
  .page--en .contact-coop__col--first { padding-left: 0; }
  .contact-plants { background-position: -200% 0; }
  .contact-plants--circle::before { background-position: 0 0; }
  .contact-plants__col { padding: 50px 0; }
  .contact-coop { padding: 50px 20px; background-position: 0 0; }
  .contact-coop__inner { gap: 40px; }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .contact-offices,
  .contact-plants,
  .contact-coop__cols,
  .page--en .contact-coop__cols { --band-width: 100%; }
  .contact-plants__col,
  .page--en .contact-plants__col { width: 100%; }
}

@media (max-width: 767px) {
  .contact-offices,
  .contact-plants,
  .page--en .contact-coop__cols { --band-width: var(--content-width); }
  .contact-photo { min-height: 350px; }
  .contact-offices__inner,
  .contact-plants__inner,
  .contact-coop__inner { flex-wrap: wrap; }
  .contact-office--registration,
  .contact-plants__col,
  .page--en .contact-plants__col,
  .contact-coop__col,
  .page--en .contact-coop__col:not(.contact-coop__col--first) { width: 100%; }
  .contact-coop__title { margin-bottom: 30px; }
  .page--en .contact-coop__title { font-size: 38px; }
}
