/* ═══════════════════════════════════════════════════════════════════
   SOBRE NÓS — sobre.css
   Prefix: sb-   |  Accent: indigo / brand
   ═══════════════════════════════════════════════════════════════════ */

/* ═══════ HERO ═══════ */
.sb-hero {
  position: relative;
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8rem 0 4rem;
  overflow: hidden;
}

.sb-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.sb-hero__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
  pointer-events: none;
}
.sb-hero__orb--1 { width: 550px; height: 550px; top: -140px; left: -100px; background: #6366f1; opacity: .22; animation: sb-pulse 7s ease-in-out infinite; }
.sb-hero__orb--2 { width: 450px; height: 450px; bottom: -80px; right: -60px; background: #0891b2; opacity: .18; animation: sb-pulse 9s ease-in-out infinite 1.5s; }
.sb-hero__orb--3 { width: 300px; height: 300px; top: 45%; left: 60%; background: #8b5cf6; opacity: .14; animation: sb-pulse 6s ease-in-out infinite .8s; }

@keyframes sb-pulse {
  0%, 100% { opacity: .16; }
  50% { opacity: .28; }
}

.sb-hero__center {
  text-align: center;
  max-width: 760px;
  margin: 0 auto;
}

.sb-hero__title {
  font-size: clamp(2.2rem, 5vw, 3.6rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -1px;
  color: var(--wf-text-1);
  margin-bottom: 1.2rem;
}

.sb-hero__desc {
  font-size: 1.05rem;
  line-height: 1.65;
  color: var(--wf-text-2);
  max-width: 620px;
  margin: 0 auto;
}


/* ═══════ ACCENT SECTION ═══════ */
.sb-section--accent {
  background: linear-gradient(180deg, transparent, rgba(99,102,241,.02), transparent);
  border-top: 1px solid rgba(99,102,241,.06);
  border-bottom: 1px solid rgba(99,102,241,.06);
}


/* ═══════ LEADER HERO (CEO) ═══════ */
.sb-leader {
  margin-top: 3rem;
}

.sb-leader--hero {
  display: flex;
  align-items: center;
  gap: 3rem;
  padding: 3rem;
  border-radius: 24px;
  background: rgba(99,102,241,.04);
  border: 1px solid rgba(99,102,241,.12);
  transition: border-color .35s;
}
.sb-leader--hero:hover {
  border-color: rgba(99,102,241,.22);
}

.sb-leader__photo-wrap {
  flex-shrink: 0;
  position: relative;
}

.sb-leader__photo-wrap--lg {
  width: 200px;
  height: 200px;
}

.sb-leader__photo-wrap--lg .sb-leader__photo {
  width: 200px;
  height: 200px;
}

.sb-leader__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  border: 3px solid rgba(99,102,241,.25);
  box-shadow: 0 0 40px rgba(99,102,241,.15);
}

.sb-leader__info {
  flex: 1;
}

.sb-leader__role {
  display: inline-block;
  padding: .2rem .7rem;
  border-radius: 6px;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .6px;
  text-transform: uppercase;
  font-family: monospace;
  background: rgba(99,102,241,.12);
  color: #818cf8;
  margin-bottom: .6rem;
}

.sb-leader__name {
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--wf-text-1);
  margin-bottom: .7rem;
  letter-spacing: -.3px;
}

.sb-leader__bio {
  font-size: .9rem;
  line-height: 1.65;
  color: var(--wf-text-2);
  margin-bottom: .5rem;
}

.sb-leader__bio--highlight {
  color: var(--wf-text-3);
  font-style: italic;
}

.sb-leader__tags {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: 1rem;
}

.sb-leader__tag {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  padding: .35rem .7rem;
  border-radius: 8px;
  font-size: .76rem;
  font-weight: 700;
  background: rgba(99,102,241,.08);
  color: #a5b4fc;
  border: 1px solid rgba(99,102,241,.12);
}

.sb-leader__tag i {
  font-size: .85rem;
}

@media (max-width: 768px) {
  .sb-leader--hero {
    flex-direction: column;
    text-align: center;
    padding: 2rem;
    gap: 1.5rem;
  }
  .sb-leader__photo-wrap--lg {
    width: 150px;
    height: 150px;
  }
  .sb-leader__photo-wrap--lg .sb-leader__photo {
    width: 150px;
    height: 150px;
  }
  .sb-leader__tags {
    justify-content: center;
  }
}


/* ═══════ LEADERS GRID ═══════ */
.sb-leaders-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
  margin-top: 2.5rem;
}

.sb-leader-card {
  padding: 2rem 1.5rem;
  border-radius: 18px;
  background: rgba(255,255,255,.02);
  border: 1px solid var(--wf-border);
  text-align: center;
  transition: transform .35s, border-color .35s;
}
.sb-leader-card:hover {
  transform: translateY(-4px);
  border-color: rgba(99,102,241,.2);
}

.sb-leader-card .sb-leader__photo-wrap {
  width: 120px;
  height: 120px;
  margin: 0 auto .8rem;
}

.sb-leader-card .sb-leader__photo {
  width: 120px;
  height: 120px;
}

.sb-leader-card .sb-leader__role {
  display: inline-block;
  margin-bottom: .4rem;
}

.sb-leader-card .sb-leader__name {
  font-size: 1.1rem;
  margin-bottom: .6rem;
}

.sb-leader-card .sb-leader__bio {
  font-size: .82rem;
  line-height: 1.55;
}

.sb-leader-card .sb-leader__tags {
  justify-content: center;
}

@media (max-width: 1024px) {
  .sb-leaders-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .sb-leaders-grid {
    grid-template-columns: 1fr;
  }
}


/* ═══════ CEO QUOTE ═══════ */
.sb-ceo-quote {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  padding: 4rem 3.5rem;
  background: linear-gradient(135deg, rgba(99,102,241,.05), rgba(139,92,246,.03));
  border: 1px solid rgba(99,102,241,.12);
}

.sb-ceo-quote__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.sb-ceo-quote__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(90px);
  opacity: .2;
}
.sb-ceo-quote__orb--1 { width: 350px; height: 350px; top: -80px; right: -60px; background: #6366f1; }
.sb-ceo-quote__orb--2 { width: 300px; height: 300px; bottom: -60px; left: -50px; background: #8b5cf6; }

.sb-ceo-quote__content {
  position: relative;
  z-index: 2;
}

.sb-ceo-quote__header {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-bottom: 2rem;
}

.sb-ceo-quote__avatar-wrap {
  flex-shrink: 0;
  width: 72px;
  height: 72px;
}

.sb-ceo-quote__avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(99,102,241,.3);
}

.sb-ceo-quote__label {
  display: block;
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .7px;
  color: #818cf8;
  margin-bottom: .15rem;
}

.sb-ceo-quote__name {
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--wf-text-1);
  letter-spacing: -.2px;
}

.sb-ceo-quote__icon {
  font-size: 3rem;
  color: rgba(99,102,241,.2);
  display: block;
  margin-bottom: 1rem;
}

.sb-ceo-quote__text {
  border: none;
  margin: 0;
  padding: 0;
}

.sb-ceo-quote__text p {
  font-size: 1.1rem;
  line-height: 1.75;
  color: var(--wf-text-2);
  margin-bottom: 1rem;
}

.sb-ceo-quote__text strong {
  color: var(--wf-text-1);
  font-weight: 700;
}

.sb-ceo-quote__signature {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(99,102,241,.1);
}

.sb-ceo-quote__sig-line {
  width: 40px;
  height: 2px;
  background: linear-gradient(90deg, #6366f1, #8b5cf6);
  border-radius: 2px;
}

.sb-ceo-quote__sig-text {
  font-size: 1.05rem;
  font-weight: 800;
  font-style: italic;
  background: linear-gradient(135deg, #818cf8, #a78bfa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  letter-spacing: -.2px;
}

@media (max-width: 768px) {
  .sb-ceo-quote {
    padding: 2.5rem 1.5rem;
  }
  .sb-ceo-quote__text p {
    font-size: 1rem;
  }
}

/* ═══════════════════════════════════════════════════════════════════
   HISTÓRIA — TIMELINE HORIZONTAL  #sb-historia
   ═══════════════════════════════════════════════════════════════════ */

.sb-tg {
  background: linear-gradient(135deg, #818cf8, #a78bfa);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.sb-badge {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #a78bfa;
  background: rgba(167, 139, 250, .1);
  border: 1px solid rgba(167, 139, 250, .2);
  border-radius: 20px;
  padding: .3rem .85rem;
}

.sb-hist__header {
  text-align: center;
  margin-bottom: 3rem;
}

.sb-hist__header h2 {
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  font-weight: 800;
  margin: .6rem 0 .5rem;
  letter-spacing: -.3px;
}

.sb-hist__header p {
  color: var(--wf-text-2);
  font-size: .97rem;
  max-width: 560px;
  margin: 0 auto;
  line-height: 1.7;
}

/* ── Scrollable track ── */
/* ── Dual-era track ── */
.sb-hist__dual {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 0;
  overflow-x: auto;
  padding-bottom: 1.5rem;
}

.sb-era {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
}
.sb-era--brq { flex: 4 4 0; }
.sb-era--wf  { flex: 4 4 0; }

/* Era label chip */
.sb-era__chip {
  font-size: .6rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
  text-align: center;
  padding: .28rem .6rem .32rem;
  border-radius: 8px 8px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
}
.sb-era__chip span {
  font-weight: 500;
  font-size: .55rem;
  opacity: .7;
  text-transform: none;
  letter-spacing: 0;
}
.sb-era--brq .sb-era__chip {
  color: rgba(167,139,250,.6);
  background: rgba(167,139,250,.05);
  border: 1px solid rgba(167,139,250,.12);
  border-bottom: none;
}
.sb-era--wf .sb-era__chip {
  color: #c4b5fd;
  background: rgba(167,139,250,.11);
  border: 1px solid rgba(167,139,250,.28);
  border-bottom: none;
}

/* Events row inside era (with embedded rail) */
.sb-era__events {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  position: relative;
  padding-top: .6rem;
  flex: 1;
}
.sb-era__events::before {
  content: '';
  position: absolute;
  top: calc(.6rem + 7px);
  left: 5%;
  right: 5%;
  height: 2px;
  border-radius: 1px;
  z-index: 0;
}
.sb-era--brq .sb-era__events::before {
  background: linear-gradient(90deg,
    rgba(167,139,250,.08) 0%,
    rgba(167,139,250,.32) 100%);
}
.sb-era--wf .sb-era__events::before {
  background: linear-gradient(90deg,
    rgba(167,139,250,.32) 0%,
    #a78bfa 100%);
}

/* Events inside era inherit full-width flex */
.sb-era__events .sb-hist__event {
  z-index: 1;
  padding: 0 .5rem;
}

/* ── Spinoff divider ── */
.sb-era-split {
  flex-shrink: 0;
  width: 52px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 1.9rem; /* clears era chip height */
  gap: 0;
}
.sb-era-split__line {
  flex: 1;
  width: 2px;
  min-height: 24px;
  background: linear-gradient(180deg,
    rgba(167,139,250,.05) 0%,
    #a78bfa 45%,
    rgba(167,139,250,.15) 100%);
  border-radius: 1px;
}
.sb-era-split__badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .08rem;
  padding: .28rem .4rem;
  border-radius: 8px;
  background: linear-gradient(135deg, #7c3aed, #a78bfa);
  margin-top: .3rem;
  text-align: center;
  line-height: 1.35;
}
.sb-era-split__badge i {
  font-size: .75rem;
  color: #fff;
}
.sb-era-split__badge span {
  font-size: .5rem;
  font-weight: 700;
  color: rgba(255,255,255,.85);
  white-space: nowrap;
  letter-spacing: .04em;
}
.sb-era-split__badge strong {
  font-size: .54rem;
  font-weight: 900;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .06em;
}

/* ── Rail line (legacy, kept for reference) ── */
.sb-hist__rail { display: none; }


/* ── Event ── */
.sb-hist__event {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1 1 0;
  min-width: 0;
  padding: 0 .75rem;
  position: relative;
  z-index: 1;
}
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: rgba(167,139,250,.35);
  border: 2px solid rgba(167,139,250,.5);
  flex-shrink: 0;
  margin-bottom: .75rem;
}

.sb-hist__dot--highlight {
  width: 18px;
  height: 18px;
  background: #a78bfa;
  border-color: #fff;
  box-shadow: 0 0 12px rgba(167,139,250,.5);
}

.sb-hist__dot--now {
  display: none; /* replaced by .sb-hist__icon--now */
}

/* Clock icon for the "now" node */
.sb-hist__icon--now {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: linear-gradient(135deg, #7c3aed, #a78bfa);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .75rem;
  flex-shrink: 0;
  box-shadow: 0 0 0 4px rgba(167,139,250,.15), 0 0 20px rgba(167,139,250,.65);
  animation: sb-dot-pulse 2.2s ease-in-out infinite;
}
.sb-hist__icon--now i {
  font-size: 1.1rem;
  color: #fff;
}

@keyframes sb-dot-pulse {
  0%,100% { box-shadow: 0 0 0 4px rgba(167,139,250,.15), 0 0 18px rgba(167,139,250,.55); }
  50%      { box-shadow: 0 0 0 9px rgba(167,139,250,.08), 0 0 30px rgba(167,139,250,.8); }
}

.sb-hist__year {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #a78bfa;
  margin-bottom: .5rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .1rem;
  text-align: center;
}

/* Step separator between years in a range: 2010 › 11 › 12 */
.sb-hist__sep {
  color: rgba(167,139,250,.4);
  font-weight: 400;
  font-size: .58rem;
  margin: 0 .05rem;
}

.sb-hist__badge-now {
  font-size: .6rem;
  font-weight: 700;
  background: #a78bfa;
  color: #0e0b1a;
  padding: .1rem .45rem;
  border-radius: 20px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.sb-hist__desc {
  font-size: .75rem;
  color: var(--wf-text-2);
  line-height: 1.6;
  text-align: center;
}

.sb-hist__desc strong { color: var(--wf-text-1); }

.sb-hist__event--highlight .sb-hist__year { color: #c4b5fd; }
.sb-hist__event--highlight .sb-hist__desc { color: var(--wf-text-1); }

.sb-hist__event--now .sb-hist__desc {
  color: var(--wf-text-1);
  font-weight: 500;
}

/* ── Outlook block ── */
.sb-hist__outlook {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  margin-top: 2.5rem;
  padding: 1.5rem 1.75rem;
  border-radius: 14px;
  background: linear-gradient(135deg,
    rgba(124,58,237,.08) 0%,
    rgba(167,139,250,.06) 50%,
    rgba(20,184,166,.05) 100%);
  border: 1px solid rgba(167,139,250,.18);
}
.sb-hist__outlook-icon-wrap {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: linear-gradient(135deg, #7c3aed, #a78bfa);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.sb-hist__outlook-icon-wrap i {
  font-size: 1.3rem;
  color: #fff;
}
.sb-hist__outlook-body { display: flex; flex-direction: column; gap: .5rem; }
.sb-hist__outlook-title {
  font-size: .85rem;
  font-weight: 700;
  color: #c4b5fd;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.sb-hist__outlook-text {
  font-size: .9rem;
  color: var(--wf-text-2);
  line-height: 1.7;
}
.sb-hist__outlook-text strong { color: var(--wf-text-1); }

@media (max-width: 900px) {
  .sb-hist__dual  { overflow-x: auto; scrollbar-width: thin; }
  .sb-era--brq    { min-width: 440px; }
  .sb-era--wf     { min-width: 340px; }
  .sb-era-split   { min-width: 52px; }
  .sb-hist__desc  { font-size: .72rem; }
}

