/* Proof EFE26 — drobne style pod natywne interakcje (po wyłączeniu IX2). */

/* Akordeon FAQ: ikona „+" -> obrót do „×" po otwarciu */
.faq_icon-wrapper { transition: transform .3s ease; }
.faq_question.is-open .faq_icon-wrapper { transform: rotate(45deg); }

/* Pozycja programu — sygnał, że klik rozwija + obrót chevronu */
.agenda_item { cursor: pointer; }
.agenda_toggle .chevron, .chevron { transition: transform .3s ease; }
.agenda_item.is-open .chevron { transform: rotate(180deg); }

/* Sekcja zespół — poziomy scroll-jack: płynny transform sterowany scrollem */
.section_people .scroll-inner { will-change: transform; }

/* ====== Podstrony prelegentów (/speakers + /speakers/[slug]) — proof FAZY 1 ====== */
.sp-card-wrap { display: block; }
.sp-card-link { text-decoration: none; color: inherit; transition: transform .15s ease; }
.sp-card-link:hover { transform: translateY(-4px); }
.sp-card-link:hover .speakers_card {
  box-shadow: 0 14px 14px #7070701c, 0 3px 8px #70707021;
  border-color: var(--base-color-brand--color-teal-30, #7fd4cc);
}

.sp-back { text-decoration: none; font-weight: 600; color: var(--base-color-brand--color-teal-30, #00978f); }
.sp-back:hover { text-decoration: underline; }

.sp-detail { display: grid; grid-template-columns: 18rem 1fr; gap: 3rem; align-items: start; }
.sp-detail_media { position: sticky; top: 6rem; display: flex; flex-direction: column; gap: 1.5rem; }
.sp-detail_media .speaker_avatar-ring { width: 18rem; height: 18rem; }
.sp-detail_media .speaker_avatar_img { width: 100%; height: 100%; object-fit: cover; }

.sp-slot { border: 1px solid var(--base-color-neutral--gray-20, #e6e6e6); border-radius: var(--round-size-m, 1rem); padding: 1rem 1.25rem; text-align: center; }
.sp-slot_label { font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; opacity: .6; }
.sp-slot_value { font-size: 1.05rem; margin-top: .25rem; }

.sp-role { margin-top: .5rem; opacity: .85; }
.sp-talk_kicker { font-size: .8rem; text-transform: uppercase; letter-spacing: .06em; color: var(--base-color-brand--color-teal-30, #00978f); font-weight: 700; margin-bottom: .5rem; }
.sp-talk_desc, .sp-bio p { line-height: 1.6; opacity: .9; }
.sp-cta { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; }

@media (max-width: 767px) {
  .sp-detail { grid-template-columns: 1fr; gap: 2rem; }
  .sp-detail_media { position: static; align-items: center; text-align: center; }
  .sp-detail_media .speaker_avatar-ring { width: 14rem; height: 14rem; }
}

/* Placeholder awatara (gość specjalny bez ujawnionego zdjęcia) */
.sp-avatar-placeholder {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  font-size: 4rem; font-weight: 300; line-height: 1;
  color: var(--base-color-brand--color-teal-30, #00978f);
  background: linear-gradient(160deg, #eef9f8, #d8efed);
}

/* Podstrona prelegenta = struktura karty programu (agenda_card is-popup, zawsze widoczna) */
.sp-photo-fill { width: 100%; height: 100%; object-fit: cover; display: block; }
.sp-takeaways { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .5rem; }
.sp-takeaways li { line-height: 1.5; }
/* placeholder "?" w dużym kafelku zdjęcia (gdyby kiedyś brakło foto na podstronie) */
.speaker_photo-lg .sp-avatar-placeholder { width: 100%; height: 100%; border-radius: var(--spacing-m); }

/* Odstęp między sekcją Bio a punktorami "Z tego spotkania wyniesiesz" */
.agenda_section-takeaways { margin-top: 2.5rem; }
.sp-takeaways li { padding-left: .1rem; }

/* --- NeuroKryzys spike (feedback 02.07): karty + odstepy sekcji --- */
.speakers_card { padding-left: 1.5rem; padding-right: 1.5rem; text-align: center; }
.speakers_card .speaker_name,
.speakers_card .speaker_meta { text-align: center; }
/* mniejsza biala przerwa: partnerzy strategiczni (pod hero) -> "Zastanawiasz sie" */
.section_partners .padding-section-small { padding-bottom: 0.5rem; }
#problem-sticky .padding-section-large { padding-top: 3rem; }
/* Podstrona prelegenta: tytul prelekcji proporcjonalny do reszty (feedback 02.07) */
.agenda_card.is-popup .agenda_title { font-size: 1.75rem; line-height: 1.3; }
@media (max-width: 767px){ .agenda_card.is-popup .agenda_title { font-size: 1.4rem; } }


/* Hero image: 1:1 z oryginalem NeuroBezpieczni (computed: 800x533 natural, radius 64px lewe, cover, overflow prawo) */
.hero_image {
  display: inline-block;
  width: 800px;
  height: 533px;
  max-width: none;
  object-fit: cover;
  object-position: 50% 35%;
  border-radius: 64px 0 0 64px;
}
@media (max-width: 991px) {
  .hero_image { width: 100%; height: auto; aspect-ratio: 3 / 2; border-radius: 1.5rem; }
}
