/**
 * pysiecabout - strona "O nas". Namespace .pysiec-about*.
 * 1:1 z surowego pliku źródłowego makiety (Pysiec Sklep.dc.html, linie 778-904),
 * tokeny z assets/css/custom.css. Padding boczny sekcji: clamp(16px,4vw,32px) -
 * dosłowna wartość z makiety dla tej strony (ta sama poprawka co przy Bestsellery/
 * "Zacznij od kategorii" w sesji 2026-09-16, NIE szerszy wariant 32-120px).
 */

.pysiec-about {
  background: var(--pysiec-bg, #faf8f3);
}

.pysiec-about__heading {
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
  font-weight: 800;
  font-size: clamp(24px, 3.4vw, 34px);
  letter-spacing: -.02em;
  color: var(--pysiec-text, #1a1a18);
  margin: 0;
}

/* Placeholder zdjęć - ten sam wzorzec co .pysiec-hero/.pysiec-tiles/.pysiec-deal,
   dopóki nie ma realnych fotek. */
.pysiec-about__photo {
  /* Ten sam bug co .pysiec-aboutteaser__photo (pysiecaboutteaser/views/css/aboutteaser.css) -
     grid item bez min-width:0 nie kurczy się poniżej własnego min-content, więc
     "1fr 1fr" w .pysiec-about__hero-photos nie dawało równych kolumn, gdy etykiety
     zdjęć mają różną długość tekstu. Znalezione audytem, sesja 2026-09-19. */
  min-width: 0;
  display: flex;
  align-items: flex-end;
  padding: 14px;
  border-radius: var(--pysiec-radius-xl, 22px);
  background: repeating-linear-gradient(
    135deg,
    var(--pysiec-cream, #e8dcc5) 0 10px,
    #f0e7d5 10px 20px
  );
  box-sizing: border-box;
}

.pysiec-about__photo--3x4 { aspect-ratio: 3 / 4; }
.pysiec-about__photo--4x3 { aspect-ratio: 4 / 3; }
.pysiec-about__photo--1x1 { aspect-ratio: 1 / 1; }
.pysiec-about__photo--offset { margin-top: 32px; }

.pysiec-about__photo-label {
  font-family: ui-monospace, Menlo, monospace;
  font-size: 10px;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: rgba(62, 47, 35, .7);
}

/* Przyciski - dwa warianty obrysu w zależności od tła sekcji (jasne/ciemne),
   jeden wypełniony wariant marki. */
.pysiec-about__btn {
  display: inline-flex;
  align-items: center;
  padding: 0 26px;
  border-radius: var(--pysiec-radius-pill, 999px);
  font-weight: 700;
  font-size: 16px;
  text-decoration: none;
  box-sizing: border-box;
}

.pysiec-about__btn--primary {
  background: var(--pysiec-brand, #b08858);
  color: #fff;
  border: 0;
}

.pysiec-about__btn--primary:hover,
.pysiec-about__btn--primary:focus-visible {
  background: var(--pysiec-brand-hover, #9b7346);
  color: #fff;
}

.pysiec-about__btn--outline {
  background: transparent;
  border: 1px solid var(--pysiec-espresso, #3e2f23);
  color: var(--pysiec-espresso, #3e2f23);
}

.pysiec-about__btn--outline:hover,
.pysiec-about__btn--outline:focus-visible {
  background: var(--pysiec-espresso, #3e2f23);
  color: var(--pysiec-bg, #faf8f3);
}

.pysiec-about__btn--ghost {
  background: transparent;
  border: 1px solid rgba(250, 248, 243, .4);
  color: var(--pysiec-bg, #faf8f3);
}

.pysiec-about__btn--ghost:hover,
.pysiec-about__btn--ghost:focus-visible {
  background: rgba(250, 248, 243, .12);
  color: var(--pysiec-bg, #faf8f3);
}

/* === Hero === */
.pysiec-about__hero {
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(24px, 5vw, 64px) clamp(16px, 4vw, 32px) clamp(28px, 4vw, 56px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(24px, 4vw, 56px);
  align-items: center;
  box-sizing: border-box;
}

.pysiec-about__hero-text {
  flex: 1 1 340px;
  min-width: 0;
}

.pysiec-about__badge {
  display: inline-block;
  background: rgba(217, 167, 160, .28);
  color: var(--pysiec-espresso, #3e2f23);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 7px 13px;
  border-radius: var(--pysiec-radius-pill, 999px);
}

.pysiec-about__title {
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
  font-weight: 800;
  font-size: clamp(32px, 5.6vw, 54px);
  line-height: 1.05;
  letter-spacing: -.025em;
  margin: 18px 0 0;
  color: var(--pysiec-text, #1a1a18);
}

.pysiec-about__lead {
  font-size: clamp(16px, 1.7vw, 19px);
  line-height: 1.6;
  color: var(--pysiec-espresso, #3e2f23);
  margin: 18px 0 0;
  max-width: 48ch;
}

.pysiec-about__hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.pysiec-about__hero-ctas .pysiec-about__btn {
  height: 52px;
}

.pysiec-about__hero-photos {
  flex: 1 1 300px;
  min-width: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* === Statystyki (ciemny pasek) === */
.pysiec-about__stats-section {
  background: var(--pysiec-espresso, #3e2f23);
  color: var(--pysiec-bg, #faf8f3);
}

.pysiec-about__stats {
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(26px, 3.5vw, 40px) clamp(16px, 4vw, 32px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 22px;
  box-sizing: border-box;
}

.pysiec-about__stat-value {
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
  font-weight: 800;
  font-size: clamp(26px, 3.2vw, 34px);
}

.pysiec-about__stat-label {
  font-size: 13px;
  opacity: .8;
  margin-top: 4px;
}

/* === Jak to się zaczęło === */
.pysiec-about__steps-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(36px, 5vw, 72px) clamp(16px, 4vw, 32px) clamp(20px, 3vw, 32px);
  box-sizing: border-box;
}

.pysiec-about__steps-section .pysiec-about__heading {
  margin: 0 0 24px;
}

.pysiec-about__steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: clamp(12px, 2vw, 20px);
}

.pysiec-about__step {
  background: #fff;
  border: 1px solid var(--pysiec-line-20, rgba(62, 47, 35, .2));
  border-radius: var(--pysiec-radius-xl, 22px);
  padding: 22px;
  box-sizing: border-box;
}

.pysiec-about__step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: var(--pysiec-radius-pill, 999px);
  background: var(--pysiec-cream, #e8dcc5);
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
  font-weight: 800;
  font-size: 14px;
}

.pysiec-about__step-title {
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
  font-weight: 800;
  font-size: 18px;
  margin-top: 14px;
}

.pysiec-about__step-text {
  font-size: 14px;
  line-height: 1.55;
  color: var(--pysiec-espresso, #3e2f23);
  margin: 8px 0 0;
}

/* === Zanim coś trafi do sklepu (checklist) === */
.pysiec-about__checklist-section {
  background: var(--pysiec-cream, #e8dcc5);
}

.pysiec-about__checklist-row {
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(36px, 5vw, 72px) clamp(16px, 4vw, 32px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
  box-sizing: border-box;
}

.pysiec-about__checklist-text {
  flex: 1 1 320px;
  min-width: 0;
}

.pysiec-about__checklist-lead {
  font-size: 16px;
  line-height: 1.6;
  color: var(--pysiec-espresso, #3e2f23);
  margin: 14px 0 0;
  max-width: 50ch;
}

.pysiec-about__checklist {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 26px;
}

.pysiec-about__checklist-item {
  display: flex;
  gap: 14px;
}

.pysiec-about__checklist-item span:last-child {
  font-size: 15px;
  line-height: 1.5;
  color: var(--pysiec-text, #1a1a18);
}

.pysiec-about__checklist-item strong {
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
}

.pysiec-about__dot {
  width: 12px;
  height: 12px;
  border-radius: var(--pysiec-radius-pill, 999px);
  margin-top: 6px;
  flex: 0 0 auto;
}

.pysiec-about__dot--green { background: var(--pysiec-accent-green, #8fa35c); }
.pysiec-about__dot--brand { background: var(--pysiec-brand, #b08858); }
.pysiec-about__dot--pink { background: var(--pysiec-accent-pink, #d9a7a0); }

.pysiec-about__checklist-photo {
  flex: 1 1 280px;
  min-width: 0;
}

/* === Cała ekipa === */
.pysiec-about__team-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(36px, 5vw, 72px) clamp(16px, 4vw, 32px);
  box-sizing: border-box;
}

.pysiec-about__team-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 22px;
}

.pysiec-about__team-note {
  font-size: 14px;
  color: var(--pysiec-espresso, #3e2f23);
}

.pysiec-about__team-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: clamp(12px, 2vw, 20px);
}

.pysiec-about__team-card {
  background: #fff;
  border: 1px solid var(--pysiec-line-20, rgba(62, 47, 35, .2));
  border-radius: var(--pysiec-radius-xl, 22px);
  overflow: hidden;
}

.pysiec-about__team-body {
  padding: 16px 18px 20px;
}

.pysiec-about__team-name {
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
  font-weight: 800;
  font-size: 18px;
  color: var(--pysiec-text, #1a1a18);
}

.pysiec-about__team-role {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  margin-top: 5px;
}

.pysiec-about__team-role--green { color: var(--pysiec-accent-green, #8fa35c); }
.pysiec-about__team-role--brand { color: var(--pysiec-brand, #b08858); }

.pysiec-about__team-text {
  font-size: 14px;
  line-height: 1.5;
  color: var(--pysiec-espresso, #3e2f23);
  margin: 10px 0 0;
}

/* === Baner CTA na dole === */
.pysiec-about__cta-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 clamp(16px, 4vw, 32px) clamp(40px, 6vw, 76px);
  box-sizing: border-box;
}

.pysiec-about__cta-box {
  background: var(--pysiec-espresso, #3e2f23);
  color: var(--pysiec-bg, #faf8f3);
  border-radius: var(--pysiec-radius-lg, 26px);
  padding: clamp(26px, 4vw, 44px);
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
}

.pysiec-about__cta-text {
  flex: 1 1 320px;
  min-width: 0;
}

.pysiec-about__cta-title {
  font-family: var(--pysiec-font-heading, 'Nunito', sans-serif);
  font-weight: 800;
  font-size: clamp(23px, 3vw, 32px);
  line-height: 1.15;
  letter-spacing: -.02em;
  margin: 0;
}

.pysiec-about__cta-lead {
  font-size: 15px;
  line-height: 1.6;
  margin: 12px 0 0;
  max-width: 52ch;
  opacity: .85;
}

.pysiec-about__cta-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  flex: 0 0 auto;
}

.pysiec-about__cta-buttons .pysiec-about__btn {
  height: 50px;
  padding: 0 24px;
}

@media (max-width: 767.98px) {
  .pysiec-about__hero-photos {
    order: -1;
  }
}

/* Pelnoszerokie paski (statystyki, checklista) zwezone do tej samej szerokosci 1200px co reszta strony - wczesniej wychodzily poza srodek. Sesja 2026-10-09. */
.pysiec-about__stats-section,
.pysiec-about__checklist-section {
  max-width: 1200px;
  margin-inline: auto;
  box-sizing: border-box;
}

@media (min-width: 1260px) {
  .pysiec-about__stats-section,
  .pysiec-about__checklist-section {
    border-radius: var(--pysiec-radius-xl, 22px);
  }
}

/* Mniejszy odstep okruszki -> badge/H1. */
.pysiec-about__hero {
  padding-top: 14px;
}

/* Zdjęcie z konfiguracji modułu zamiast kreskowanego placeholdera (sesja 2026-10-14). */
.pysiec-about__photo--has-img {
  position: relative;
  overflow: hidden;
  padding: 0;
  background: var(--pysiec-cream, #e8dcc5);
}
.pysiec-about__photo--has-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
