/* ============================
   MÓDULO: Equipo Liora
   Scope: .team-section
   ============================ */

/* Título principal centrado y cálido */
.team-section .section-title{
  font-size: clamp(28px,4vw,44px);
  line-height:1.1; font-weight:900;
  color: var(--brand, #B88A2D);
  margin: 0 0 10px;
  text-align:center;
  letter-spacing:.2px;
  text-shadow: 0 1px 8px rgba(0,0,0,.25);
}

/* Intro del equipo */
.team-intro{
  max-width: 920px;
  margin: 6px auto 18px;
  padding: 12px 16px 12px 18px;
  color: var(--muted, #B9B2A3);
  border: 1px solid var(--line, #24324A);
  border-radius: 14px;
  background: linear-gradient(180deg, var(--surface, #0F1E33), var(--panel, #12233A));
  box-shadow: var(--shadow, 0 12px 30px rgba(0,0,0,.35));
  position: relative;
  text-align: center;
}

.team-intro::before{
  content:"";
  position:absolute; left:0; top:0; bottom:0;
  width:6px; border-radius:14px 0 0 14px;
  background: linear-gradient(135deg, var(--brand, #B88A2D), var(--brand-2, #D2B46C));
}

/* Bloque de departamento */
.team-section .dept-block{ margin-top: 16px; }

.team-section .dept-title{
  font-size: clamp(20px,2.8vw,28px);
  font-weight: 900; color: var(--text, #EDE8D9);
  margin: 0 0 16px; text-align:center; padding-left:0;
  position:relative;
}

.team-section .dept-title::after{
  content:""; display:block; width:72px; height:4px; border-radius:3px;
  margin:.45rem auto 0;
  background: linear-gradient(135deg, var(--brand, #B88A2D), var(--brand-2, #D2B46C));
  filter: drop-shadow(0 4px 12px rgba(184,138,45,.35));
}

/* Grid de personas + divisor central en desktop */
.team-section .people-grid{
  position:relative;
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  column-gap: clamp(36px, 5vw, 72px);
  row-gap: clamp(32px, 4vw, 56px);
  padding-block: 6px;
}

.team-section .people-grid::before{
  content:""; position:absolute; inset:0 auto 0 50%;
  width:1px; background: var(--line, #24324A); opacity:.6;
  transform: translateX(-.5px);
}

@media (max-width: 900px){
  .team-section .people-grid{ grid-template-columns: 1fr; }
  .team-section .people-grid::before{ display:none; }
}

/* Tarjeta de persona */
.team-section .person{
  background: linear-gradient(180deg, var(--surface, #0F1E33), var(--panel, #12233A));
  border: 1px solid var(--line, #24324A);
  border-radius: 18px;
  box-shadow: var(--shadow, 0 12px 30px rgba(0,0,0,.35));
  padding: clamp(18px, 2.4vw, 24px);
}

/* Header con avatar grande (2.5×) */
.team-section .person-header{
  display:grid; grid-template-columns: 180px 1fr;
  gap: clamp(16px, 2vw, 22px); align-items:center;
  margin-bottom: 6px;
}

.team-section .person-avatar{
  width: 180px; height: 180px;
  border-radius: 16px;
  object-fit: cover; object-position: center;
  box-shadow: 0 0 0 2px rgba(184,138,45,.8), 0 12px 26px rgba(0,0,0,.28);
  background:#0b1729;
}

/* Nombre + cargo */
.team-section .person-name{
  margin:0; font-size: clamp(18px,2.6vw,22px);
  font-weight:900; color: var(--text, #EDE8D9);
}

.team-section .person-role{
  display:block; margin-top:2px;
  color: var(--brand-2, #D2B46C);
  font-weight:800;
}

/* Fichas de info */
.team-section .person-info{ margin: 8px 0 0; }
.team-section .person-info .row{
  display:grid; grid-template-columns: 1fr; gap:6px;
  padding: 12px 0; border-top:1px solid rgba(255,255,255,.08);
}

.team-section .person-info dt{
  font-size:.78rem; letter-spacing:.5px; text-transform:uppercase;
  color: color-mix(in oklab, var(--text, #EDE8D9) 70%, black);
  font-weight:800;
}
.team-section .person-info dd{ margin:0; color: var(--text, #EDE8D9); }
.team-section .person-info .bullet-item{
  display:block;
  padding-left: 1.1rem;
  text-indent: -0.8rem;
  margin: .2rem 0;
}
.team-section .person-info .bullet-item::first-letter{
  color: var(--brand-2, #D2B46C);
}
@media (max-width: 900px){
  .team-section .person-header{
    grid-template-columns: 1fr; justify-items:center; text-align:center;
  }
  .team-section .person-avatar{ width: 160px; height: 160px; }
  .team-section .person-info .row{ grid-template-columns: 1fr; text-align:left; }
}
@media (max-width: 520px){
  .team-section .person-avatar{ width: 140px; height: 140px; }
}

/* Chips de idiomas */
.team-section .chip{
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.45rem .8rem; margin:.2rem .35rem .2rem 0;
  font-size:.92rem; line-height:1; border-radius:999px;
  color: var(--text, #EDE8D9);
  background: rgba(8,16,32,.55);
  border:1px solid rgba(210,180,108,.55);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

/* ===== Eslogan final (línea SOLO arriba) ===== */
.team-slogan{
  max-width: 1000px;
  margin: clamp(28px, 5vw, 48px) auto 0;
  text-align: center;
  color: var(--text, #EDE8D9);
}

.team-slogan .rule{
  display:block; height:1px; width:100%;
  background: linear-gradient(90deg, transparent, rgba(210,180,108,.55), transparent);
  margin: 0 0 12px;  /* solo arriba de la frase */
}

.team-slogan .quote{
  margin:0;
  font-size: clamp(18px, 3vw, 24px);
  font-weight: 900; letter-spacing:.2px;
  text-shadow: 0 1px 8px rgba(0,0,0,.25);
}

.team-slogan .sig{
  display:block;
  margin-top:8px;
  margin-bottom: 10px;
  font-weight:800; font-size:.95rem; letter-spacing:.4px;
  color: var(--brand-2, #D2B46C);
}
