/* Full Speed Trophy Agenda – Bootstrap v2
   Układ responsywny bez absolute/fixed dla elementów agendy.
   Wszystkie klasy mają prefiks fstb2-, żeby nie kolidować z istniejącą stroną. */
.fstb2-agenda{
  --fstb2-bg:#eee8cf;
  --fstb2-text:#3d4946;
  --fstb2-orange:#ec6636;
  --fstb2-card:#efb98f;
  background:var(--fstb2-bg);
  color:var(--fstb2-text);
  overflow:hidden;
}
.fstb2-agenda,
.fstb2-agenda *{box-sizing:border-box;}
.fstb2-agenda__container{max-width:1120px;}
.fstb2-agenda__hero img{width:min(100%, 880px);height:auto;}
.fstb2-agenda__title{
  color:var(--fstb2-text);
  font-size:clamp(28px,3.2vw,38px);
  line-height:1;
  font-weight:800;
  margin:0 0 24px;
}
.fstb2-agenda__timeline{max-width:760px;}
.fstb2-agenda__event{
  display:grid;
  grid-template-columns:300px 56px minmax(0, 1fr);
  column-gap:0;
  min-height:150px;
}
.fstb2-agenda__event--activity{min-height:365px;}
.fstb2-agenda__event--gala{min-height:150px;}
.fstb2-agenda__side{min-width:0;display:flex;align-items:flex-start;justify-content:flex-end;padding-right:24px;}
.fstb2-agenda__side--arrows{justify-content:flex-start;align-items:center;padding-right:0;padding-left:0;}
.fstb2-agenda__side--arrows img{width:118px;height:auto;display:block;opacity:.96;}
.fstb2-agenda__side--arrows-small{justify-content:center;}
.fstb2-agenda__side--arrows-small img{width:72px;}
.fstb2-agenda__rail{
  width:56px;
  min-height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  border-left:2px solid var(--fstb2-orange);
}
.fstb2-agenda__day-icon{width:58px;max-width:none;height:auto;display:block;transform:translateX(-1px);margin:0 0 12px -2px;}
.fstb2-agenda__circle{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.07);
  transform:translateX(-22px);
  flex:0 0 auto;
}
.fstb2-agenda__circle img{display:block;max-width:28px;max-height:28px;width:auto;height:auto;}
.fstb2-agenda__main{min-width:0;padding-left:20px;padding-bottom:28px;}
.fstb2-agenda__time{
  color:var(--fstb2-text);
  font-size:18px;
  line-height:1.15;
  font-weight:800;
  margin:0;
  letter-spacing:.01em;
}
.fstb2-agenda__copy{
  color:var(--fstb2-text);
  font-size:17px;
  line-height:1.16;
  font-weight:700;
  margin:0;
}
.fstb2-agenda__copy--offset{margin-top:43px;}
.fstb2-agenda__card{
  width:100%;
  max-width:275px;
  min-height:232px;
  background:var(--fstb2-card);
  border-radius:3px;
  color:var(--fstb2-text);
  text-align:center;
  padding:0 22px 30px;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.fstb2-agenda__card--left{margin-top:84px;}
.fstb2-agenda__card--right{margin-top:85px;}
.fstb2-agenda__card-icon{
  width:46px;
  height:46px;
  border-radius:50%;
  background:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
  margin:-23px 0 24px;
  flex:0 0 auto;
}
.fstb2-agenda__card-icon img{display:block;max-width:31px;max-height:31px;width:auto;height:auto;}
.fstb2-agenda__card h2{
  color:var(--fstb2-text);
  font-size:17px;
  line-height:1.15;
  font-weight:800;
  letter-spacing:.02em;
  margin:0 0 30px;
}
.fstb2-agenda__card p{
  color:var(--fstb2-text);
  font-size:16px;
  line-height:1.14;
  font-weight:700;
  margin:0 0 20px;
}
.fstb2-agenda__card p:last-child{margin-bottom:0;}
.fstb2-agenda__note{display:flex;align-items:flex-start;gap:14px;margin-top:34px;}
.fstb2-agenda__note .fstb2-agenda__circle{transform:none;margin-left:-42px;}
.fstb2-agenda__mobile-card{display:none;}

@media (max-width: 991.98px){
  .fstb2-agenda__timeline{max-width:700px;}
  .fstb2-agenda__event{grid-template-columns:260px 54px minmax(0, 1fr);}
  .fstb2-agenda__side{padding-right:18px;}
  .fstb2-agenda__card{max-width:245px;}
  .fstb2-agenda__copy{font-size:16px;}
}

@media (max-width: 767.98px){
  .fstb2-agenda{padding-left:0;padding-right:0;}
  .fstb2-agenda__hero img{width:100%;}
  .fstb2-agenda__title{margin-bottom:22px;}
  .fstb2-agenda__timeline{max-width:100%;padding:0 6px;}
  .fstb2-agenda__event{
    grid-template-columns:48px minmax(0, 1fr);
    min-height:auto;
    margin-bottom:0;
  }
  .fstb2-agenda__event--activity,
  .fstb2-agenda__event--gala{min-height:auto;}
  .fstb2-agenda__side{display:none!important;}
  .fstb2-agenda__rail{grid-column:1;width:48px;align-items:center;border-left:2px solid var(--fstb2-orange);}
  .fstb2-agenda__main{grid-column:2;padding-left:14px;padding-bottom:34px;}
  .fstb2-agenda__day-icon{width:44px;margin-bottom:10px;}
  .fstb2-agenda__circle{width:38px;height:38px;transform:translateX(-20px);}
  .fstb2-agenda__circle img{max-width:24px;max-height:24px;}
  .fstb2-agenda__time{font-size:17px;}
  .fstb2-agenda__copy{font-size:15.5px;line-height:1.22;}
  .fstb2-agenda__copy--offset{margin-top:28px;}
  .fstb2-agenda__mobile-card{display:block;margin-top:34px;}
  .fstb2-agenda__card,
  .fstb2-agenda__card--right{max-width:100%;min-height:auto;margin-top:32px;padding:0 18px 26px;}
  .fstb2-agenda__mobile-card .fstb2-agenda__card{margin-top:0;}
  .fstb2-agenda__card h2{font-size:16px;margin-bottom:22px;}
  .fstb2-agenda__card p{font-size:15px;line-height:1.2;margin-bottom:15px;}
  .fstb2-agenda__note{gap:12px;margin-top:28px;}
  .fstb2-agenda__note .fstb2-agenda__circle{width:38px;height:38px;margin-left:-62px;transform:none;}
  .fstb2-agenda__note .fstb2-agenda__copy{padding-top:4px;}
}
