.elementor-1082 .elementor-element.elementor-element-edf540d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:1;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-1082 .elementor-element.elementor-element-edf540d:not(.elementor-motion-effects-element-type-background), .elementor-1082 .elementor-element.elementor-element-edf540d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://swm.omardiaz.net/wp-content/uploads/2026/06/swm_qs_hero.webp");background-position:center left;background-repeat:no-repeat;background-size:cover;}.elementor-1082 .elementor-element.elementor-element-edf540d::before, .elementor-1082 .elementor-element.elementor-element-edf540d > .elementor-background-video-container::before, .elementor-1082 .elementor-element.elementor-element-edf540d > .e-con-inner > .elementor-background-video-container::before, .elementor-1082 .elementor-element.elementor-element-edf540d > .elementor-background-slideshow::before, .elementor-1082 .elementor-element.elementor-element-edf540d > .e-con-inner > .elementor-background-slideshow::before, .elementor-1082 .elementor-element.elementor-element-edf540d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(270deg, #0000003D 0%, #000000CC 72%);}.elementor-1082 .elementor-element.elementor-element-835a78f{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1082 .elementor-element.elementor-element-aabea3c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-1082 .elementor-element.elementor-element-85530ac.elementor-element{--align-self:flex-start;}.elementor-1082 .elementor-element.elementor-element-85530ac .elementor-heading-title{font-family:"Oswald", Sans-serif;font-size:100px;font-weight:700;text-transform:uppercase;line-height:1.1em;letter-spacing:-1px;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1082 .elementor-element.elementor-element-7d73297{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;font-family:"Oswald", Sans-serif;font-size:42px;font-weight:700;text-transform:none;text-decoration:none;color:var( --e-global-color-041ad44 );}.elementor-1082 .elementor-element.elementor-element-7139841{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1082 .elementor-element.elementor-element-318ebd5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;text-decoration:none;line-height:1.7em;letter-spacing:0px;}.elementor-1082 .elementor-element.elementor-element-318ebd5.elementor-element{--align-self:flex-start;}.elementor-1082 .elementor-element.elementor-element-e2015f9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1082 .elementor-element.elementor-element-e2015f9.elementor-element{--align-self:flex-start;}.elementor-1082 .elementor-element.elementor-element-7c3dd1a{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1082 .elementor-element.elementor-element-ed11fdd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1082 .elementor-element.elementor-element-eea5910{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1082 .elementor-element.elementor-element-eea5910:not(.elementor-motion-effects-element-type-background), .elementor-1082 .elementor-element.elementor-element-eea5910 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1082 .elementor-element.elementor-element-4c5ac65{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-3%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1082 .elementor-element.elementor-element-4c5ac65:not(.elementor-motion-effects-element-type-background), .elementor-1082 .elementor-element.elementor-element-4c5ac65 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1082 .elementor-element.elementor-element-fda4202{margin:-20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1082 .elementor-element.elementor-element-d24f574{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1082 .elementor-element.elementor-element-92d11b2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1082 .elementor-element.elementor-element-92d11b2:not(.elementor-motion-effects-element-type-background), .elementor-1082 .elementor-element.elementor-element-92d11b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4F4F5;}.elementor-1082 .elementor-element.elementor-element-ff058e8{margin:-5% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-1082 .elementor-element.elementor-element-7c3dd1a{--content-width:1200px;}.elementor-1082 .elementor-element.elementor-element-ed11fdd{--content-width:1200px;}.elementor-1082 .elementor-element.elementor-element-eea5910{--content-width:1200px;}.elementor-1082 .elementor-element.elementor-element-92d11b2{--content-width:1200px;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1082 .elementor-element.elementor-element-85530ac .elementor-heading-title{font-size:15px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1082 .elementor-element.elementor-element-7d73297{font-size:14px;}.elementor-1082 .elementor-element.elementor-element-318ebd5{font-size:15px;}}@media(max-width:767px){.elementor-1082 .elementor-element.elementor-element-835a78f{--padding-top:72px;--padding-bottom:72px;--padding-left:24px;--padding-right:24px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1082 .elementor-element.elementor-element-85530ac .elementor-heading-title{font-size:14px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1082 .elementor-element.elementor-element-7d73297{font-size:13px;}.elementor-1082 .elementor-element.elementor-element-318ebd5{font-size:14px;}}/* Start custom CSS for container, class: .elementor-element-7c3dd1a *//* ============================================================
   BLOQUE — ABC Fútbol Lab
   Archivo: swm-block-abc.css
   Dónde va: Elementor → hamburguesa → Configuración de página
             → CSS personalizado (página "Programas")

   REQUIERE: swm-design-system-v2.css + swm-components.css

   NOTA: El padding de sección lo controla .swm-section en Elementor.
   NOTA: swm-reveal va en divs neutros que envuelven img-wrap y text.
   ============================================================ */


/* ─── Sección ──────────────────────────────────────────────── */
.swm-abc {
  background: #f3f3f4;
}

/* ─── Container ────────────────────────────────────────────── */
.swm-abc-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

/* ─── Grid ──────────────────────────────────────────────────── */
.swm-abc-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}


/* ─── Imagen ────────────────────────────────────────────────── */
.swm-abc-img-wrap {
  position: relative;
  border-radius: var(--swm-radius-card);
  overflow: hidden;
  box-shadow: var(--swm-shadow-island);
  aspect-ratio: 4 / 3;
}

.swm-abc-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.7s var(--swm-ease);
}

.swm-abc-img-wrap:hover img {
  transform: scale(1.04);
}

.swm-abc-img-accent {
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: var(--swm-accent);
  opacity: 0.15;
  pointer-events: none;
}


/* ─── Texto ─────────────────────────────────────────────────── */
.swm-abc-label {
  font-family: var(--swm-font-body) !important;
  font-size: var(--swm-text-xs) !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--swm-accent) !important;
  margin-bottom: 14px !important;
  line-height: 1.7 !important;
}

.swm-abc-title {
  font-family: var(--swm-font-title) !important;
  font-size: clamp(2rem, 3.5vw, 3rem) !important;
  font-weight: 700 !important;
  color: var(--swm-black) !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  margin-bottom: 10px !important;
  text-transform: uppercase !important;
}

.swm-abc-subtitle {
  font-family: var(--swm-font-body) !important;
  font-size: 1.05rem !important;
  font-weight: 600 !important;
  color: var(--swm-accent) !important;
  margin-bottom: 20px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.swm-abc-body {
  font-family: var(--swm-font-body) !important;
  font-size: var(--swm-text-body) !important;
  line-height: 1.75 !important;
  color: var(--swm-slate) !important;
  letter-spacing: 0 !important;
  margin-bottom: 36px !important;
  text-transform: none !important;
}


/* ─── Steps ─────────────────────────────────────────────────── */
.swm-abc-steps {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.swm-abc-step {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 16px;
  align-items: start;
}

.swm-abc-circle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--swm-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--swm-font-title) !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: var(--swm-white) !important;
  box-shadow: 0 8px 20px rgba(0, 193, 169, 0.30);
}

.swm-abc-step > div:last-child {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.swm-abc-step-name {
  font-family: var(--swm-font-title) !important;
  font-size: calc(1rem + 4px) !important;
  font-weight: 700 !important;
  color: var(--swm-black) !important;
  margin: 0 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  line-height: 44px !important;
}

.swm-abc-step-desc {
  font-family: var(--swm-font-body) !important;
  font-size: var(--swm-text-sm) !important;
  font-weight: 600 !important;
  color: var(--swm-slate-muted) !important;
  line-height: 1.6 !important;
  letter-spacing: 0 !important;
  margin: 0 !important;
  text-transform: none !important;
}


/* ─── Responsive — Tablet ──────────────────────────────────── */
@media (max-width: 960px) {
  .swm-abc-grid { grid-template-columns: 1fr; gap: 48px; }
}

/* ─── Responsive — Mobile ──────────────────────────────────── */
@media (max-width: 640px) {
  .swm-abc-container { padding: 0 24px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ed11fdd *//* ============================================================
   BLOQUE 2 — Historia "Nuestra Historia"
   Archivo: swm-quienes-historia.css
   Dónde va: Elementor → hamburguesa → Configuración de página
             → CSS personalizado (página "Quiénes Somos")

   REQUIERE: swm-design-system-v2.css + swm-components.css

   ELIMINADO vs versión anterior:
   · .swm-quienes-historia-left .swm-eyebrow  → reemplazado por .swm-section-header--left
   · .swm-quienes-historia-title              → reemplazado por .swm-title-section
   · .swm-quienes-historia-left-note          → reemplazado por .swm-section-desc
   · padding de sección y breakpoints         → controlado por .swm-section en Elementor
   ============================================================ */


/* ─── Sección ──────────────────────────────────────────────── */
.swm-quienes-historia-section {
  width: 100%;
  background-color: var(--swm-paper);
  position: relative;
  /* padding eliminado → controlado por .swm-section en Elementor */
}

/* Dot-grid decorativo */
.swm-quienes-historia-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(71,85,105,0.07) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
}

/* ─── Wrapper: grid 40 / 60 ────────────────────────────────── */
.swm-quienes-historia-wrapper {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 40% 60%;
  gap: 80px;
  align-items: start;
}


/* ══════════════════════════════════════════════════════════════
   COLUMNA IZQUIERDA — sticky
══════════════════════════════════════════════════════════════ */

.swm-quienes-historia-left {
  position: sticky;
  top: 180px;
}

/* El swm-section-header--left ya maneja alineación.
   Solo ajustamos el margin-bottom para no dejar espacio
   extra entre el header y la barra de acento */
.swm-quienes-historia-left .swm-section-header {
  margin-bottom: 24px;
}

/* Barra de acento mint */
.swm-quienes-historia-accent-bar {
  display: block;
  width: 60px;
  height: 4px;
  background: var(--swm-accent);
  border-radius: 2px;
  margin-bottom: 28px;
}

/* Año decorativo */
.swm-quienes-historia-year {
  margin-top: 40px;
  display: block;
}

.swm-quienes-historia-year__num {
  font-family: var(--swm-font-title) !important;
  font-size: 5rem !important;
  font-weight: 900 !important;
  color: var(--swm-accent) !important;
  opacity: 0.12;
  line-height: 1;
  letter-spacing: -0.05em !important;
  display: block;
  user-select: none;
}


/* ══════════════════════════════════════════════════════════════
   COLUMNA DERECHA — narrativa
══════════════════════════════════════════════════════════════ */

.swm-quienes-historia-right {
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* Bloque de párrafo individual */
.swm-quienes-historia-block {
  position: relative;
  padding-left: 32px;
  padding-bottom: 48px;
}

/* Línea de tiempo vertical */
.swm-quienes-historia-block::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 0;
  width: 2px;
  background: linear-gradient(
    180deg,
    var(--swm-accent) 0%,
    rgba(0, 193, 169, 0.08) 100%
  );
  border-radius: 2px;
}

/* Dot en la línea de tiempo */
.swm-quienes-historia-block::after {
  content: '';
  position: absolute;
  left: -4px;
  top: 8px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--swm-accent);
  box-shadow: 0 0 0 3px rgba(0, 193, 169, 0.15);
}

/* Último bloque sin línea sobrante */
.swm-quienes-historia-block:last-child {
  padding-bottom: 0;
}

.swm-quienes-historia-block:last-child::before {
  background: linear-gradient(
    180deg,
    var(--swm-accent) 0%,
    transparent 100%
  );
}

/* Número del bloque */
.swm-quienes-historia-block__marker {
  margin-bottom: 10px;
}

.swm-quienes-historia-block__num {
  font-family: var(--swm-font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--swm-accent) !important;
  line-height: 1;
}

/* Texto del párrafo */
.swm-quienes-historia-block__text {
  font-family: var(--swm-font-body) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
  color: var(--swm-slate) !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  margin: 0 !important;
}

.swm-quienes-historia-block__text strong {
  font-weight: 700 !important;
  color: var(--swm-slate) !important;
  border-bottom: 1.5px solid rgba(0, 193, 169, 0.40);
  padding-bottom: 1px;
}


/* ─── Responsive — Tablet ──────────────────────────────────── */
@media (max-width: 960px) {
  .swm-quienes-historia-wrapper { grid-template-columns: 1fr; gap: 48px; }
  .swm-quienes-historia-left    { position: static; top: auto; }
  .swm-quienes-historia-year    { display: none; }
}

/* ─── Responsive — Mobile ──────────────────────────────────── */
@media (max-width: 600px) {
  .swm-quienes-historia-block   { padding-left: 24px; padding-bottom: 36px; }
  .swm-quienes-historia-block__text { font-size: 16px !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-eea5910 *//* ============================================================
   BLOQUE 3 — Nuestro Equipo
   Archivo: swm-quienes-equipo.css  ·  v3
   Dónde va: Elementor → hamburguesa → Configuración de página
             → CSS personalizado (página "Quiénes Somos")

   REQUIERE: swm-design-system-v2.css + swm-components.css

   CAMBIOS v3
   ─────────────────────────────────────────────────────────────
   · aspect-ratio de la foto 4/5 → 1/1 (70% y luego +15%)
   · Sombras reescritas: doble capa + hairline border
     (las de tokens se perdían sobre fondo blanco y en hover)
   · Bio recortada a 7 líneas + "Mostrar todo / Ocultar"
     Actúa sobre TODAS las cards a la vez (.is-expanded se aplica
     al grid, no a la card)
   · v3.1 · El toggle deja de verse como botón: texto plano
     alineado a la izquierda, tamaño y familia de la bio
   · v3.2 · Toggle "Ver más / Ver menos": minúsculas, sin
     letter-spacing, gris de la bio → hover menta
   · v3.2 · Borde de hover de la card: menta → gris tenue

   CAMBIOS v2
   ─────────────────────────────────────────────────────────────
   · Grid 3 col → 4 col (Cecilia · Regina · Paola · Lisa)
   · Wrapper 1200px → 1320px · gap 32px → 24px
   · Card body padding 32px → 26px · nombre y bio escalados
   · Breakpoint tablet 960px → 1180px
   · Eliminado .swm-quienes-equipo-card__bio strong
   ============================================================ */


/* ─── Sección ──────────────────────────────────────────────── */
.swm-quienes-equipo-section {
  width: 100%;
  background-color: var(--swm-white);
  /* padding eliminado → controlado por .swm-section en Elementor */
}

/* ─── Wrapper ──────────────────────────────────────────────── */
.swm-quienes-equipo-wrapper {
  max-width: 1320px;
  margin: 0 auto;
}


/* ─── Grid 4 columnas ──────────────────────────────────────── */
.swm-quienes-equipo-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  align-items: start;   /* v3: cada card crece solo lo que necesita */
}

/*  ALTERNATIVA 2 × 2 — cards grandes, sección más alta.
    Para usarla: comenta el bloque de arriba y descomenta este.

.swm-quienes-equipo-wrapper { max-width: 1000px; }
.swm-quienes-equipo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
  align-items: start;
}
*/


/* ─────────────────────────────────────────────────────────────
   Card base
   ─────────────────────────────────────────────────────────────
   v3 · Sobre fondo blanco, --swm-shadow-card (0 20px 40px /.04)
   es demasiado difusa: se lee como neblina, no como elevación.
   Se sustituye por dos capas — una de contacto muy corta y una
   ambiental — más un borde de 1px que define el canto aunque la
   sombra no se perciba. Los rgba usan el morado de marca en vez
   de negro puro para que la sombra no se vea sucia.
   ─────────────────────────────────────────────────────────────*/
.swm-quienes-equipo-card {
  background: var(--swm-paper) !important;
  border-radius: var(--swm-radius-card);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(49, 47, 87, 0.07);
  box-shadow:
    0 1px 2px  rgba(49, 47, 87, 0.05),
    0 10px 24px rgba(49, 47, 87, 0.07);
  transition:
    transform    0.4s var(--swm-ease),
    box-shadow   0.4s var(--swm-ease),
    border-color 0.4s var(--swm-ease);
}

.swm-quienes-equipo-card:hover {
  transform: translateY(-8px);
  border-color: rgba(49, 47, 87, 0.12);   /* v3.2: gris tenue, era menta */
  box-shadow:
    0 2px 6px   rgba(49, 47, 87, 0.06),
    0 24px 48px rgba(49, 47, 87, 0.16);
}


/* ─── Imagen ───────────────────────────────────────────────── */
.swm-quienes-equipo-card__img-wrap {
  width: 100%;
  aspect-ratio: 1 / 1;   /* v3.2: era 8/7 → +15% de altura */
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
}

.swm-quienes-equipo-card__img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  margin: 0 !important;
  filter: grayscale(100%);
  transform-origin: center center;
  transition:
    filter    0.6s ease,
    transform 0.7s var(--swm-ease);
}

.swm-quienes-equipo-card:hover .swm-quienes-equipo-card__img {
  filter: grayscale(0%);
  transform: scale(1.05);
}

/* Badge de rol flotante sobre la imagen */
.swm-quienes-equipo-card__badge {
  position: absolute;
  bottom: 16px;
  left: 16px;
  background: var(--swm-accent);
  color: var(--swm-white);
  font-family: var(--swm-font-body) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  padding: 5px 12px;
  border-radius: 9999px;
  line-height: 1 !important;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.swm-quienes-equipo-card:hover .swm-quienes-equipo-card__badge {
  opacity: 1;
  transform: translateY(0);
}


/* ─── Cuerpo de la card ────────────────────────────────────── */
.swm-quienes-equipo-card__body {
  padding: 26px 24px 30px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* Rol */
.swm-quienes-equipo-card__role {
  font-family: var(--swm-font-body) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: var(--swm-accent) !important;
  margin: 0 0 8px !important;
  line-height: 1.3 !important;
}

/* Nombre */
.swm-quienes-equipo-card__name {
  font-family: var(--swm-font-title) !important;
  font-size: clamp(1.25rem, 1.6vw, 1.45rem) !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  color: #312f57 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 14px !important;
  min-height: 2.2em;   /* alinea el divisor con nombres de 1 o 2 líneas */
  display: flex;
  align-items: flex-end;
}

/* Divisor mini */
.swm-quienes-equipo-card__divider {
  display: block;
  width: 32px;
  height: 2px;
  background: var(--swm-accent);
  border-radius: 2px;
  opacity: 0.45;
  margin-bottom: 16px;
  flex-shrink: 0;
}


/* ─────────────────────────────────────────────────────────────
   Bio — recorte a 5 líneas
   ─────────────────────────────────────────────────────────────*/
.swm-quienes-equipo-card__bio {
  font-family: var(--swm-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: var(--swm-slate-muted) !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  margin: 0 !important;

  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;   /* v3.1: eran 5 */
  line-clamp: 7;
  overflow: hidden;
}

/* Estado expandido — se aplica al GRID, no a la card:
   un clic abre las cuatro bios a la vez */
.swm-quienes-equipo-grid.is-expanded .swm-quienes-equipo-card__bio {
  -webkit-line-clamp: unset;
  line-clamp: unset;
  overflow: visible;
}


/* ─────────────────────────────────────────────────────────────
   Mostrar todo / Ocultar
   ─────────────────────────────────────────────────────────────
   v3.1 · Es un <button> por accesibilidad (foco y teclado), pero
   debe leerse como texto, no como botón. El tema y Elementor le
   aplican su estilo de botón (fondo coral, padding, radio), así
   que hay que anularlo con !important: la especificidad del tema
   suele ganarle a una clase suelta.
   Mismo tamaño y familia que la bio, en minúsculas, sin
   tracking: gris de la bio en reposo, menta en hover.
   ─────────────────────────────────────────────────────────────*/
.swm-quienes-equipo-card__toggle,
.swm-quienes-equipo-card__toggle:visited {
  appearance: none !important;
  -webkit-appearance: none !important;
  background: none !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 14px 0 0 !important;
  width: auto !important;
  min-width: 0 !important;
  text-align: left !important;
  text-decoration: none !important;
  text-shadow: none !important;
  align-self: flex-start;
  cursor: pointer;

  display: inline-flex;
  align-items: center;
  gap: 6px;

  font-family: var(--swm-font-body) !important;
  font-size: 13.5px !important;      /* = bio */
  font-weight: 600 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  line-height: 1.65 !important;
  color: var(--swm-slate-muted) !important;

  transition: color 0.25s ease !important;
}

.swm-quienes-equipo-card__toggle:hover,
.swm-quienes-equipo-card__toggle:focus {
  background: none !important;
  background-color: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  color: var(--swm-accent) !important;
}

.swm-quienes-equipo-card__toggle:focus-visible {
  outline: 2px solid var(--swm-accent);
  outline-offset: 4px;
  border-radius: 4px;
}

.swm-quienes-equipo-card__toggle[hidden] {
  display: none;
}

.swm-quienes-equipo-card__toggle svg {
  flex-shrink: 0;
  transition: transform 0.3s var(--swm-ease);
}

/* Si prefieres el texto totalmente pelado, oculta el chevron:
   .swm-quienes-equipo-card__toggle svg { display: none; }        */

.swm-quienes-equipo-grid.is-expanded .swm-quienes-equipo-card__toggle svg {
  transform: rotate(180deg);
}


/* ─── Responsive — Tablet / laptop chico ───────────────────── */
@media (max-width: 1180px) {
  .swm-quienes-equipo-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
  .swm-quienes-equipo-card__body { padding: 30px 28px 34px; }
  .swm-quienes-equipo-card__bio  { font-size: 14px !important; line-height: 1.7 !important; }
  .swm-quienes-equipo-card__name { min-height: 0; display: block; }
}

/* ─── Responsive — Mobile ──────────────────────────────────── */
@media (max-width: 600px) {
  .swm-quienes-equipo-grid { grid-template-columns: 1fr; gap: 20px; }
  .swm-quienes-equipo-card { transition-delay: 0s !important; }
  .swm-quienes-equipo-card__img-wrap { aspect-ratio: 7 / 6; }
}

/* ─── Accesibilidad ────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .swm-quienes-equipo-card,
  .swm-quienes-equipo-card__img,
  .swm-quienes-equipo-card__toggle svg { transition: none !important; }
}/* End custom CSS */