/*
 Theme Name: EEAAM – Hello Elementor Child
 Template: hello-elementor
 Version: 1.0.0
 Text Domain: eeaam-hello-child
*/

/* Tus estilos van acá… */
/* ===== Grid responsive: 4 / 2 / 1 ===== */
.eeaam-staff__grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
}
@media (max-width: 1024px){
  .eeaam-staff__grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 600px){
  .eeaam-staff__grid{ grid-template-columns: 1fr; }
}

/* ===== Card ===== */
.eeaam-staff__card{
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}
.eeaam-staff__figure{ margin: 0; }
.eeaam-staff__img{
  width: 100%;
  height: 353px;              /* mantiene proporción visual */
  object-fit: cover;
  display: block;
  border-bottom: 0;
}
.eeaam-staff__body{
  padding: 12px 4px 0;
}
.eeaam-staff__name{
  margin: 10px 0 4px;
  font-size: 18px;
  font-weight: 600;
  color: #111;
}
.eeaam-staff__role{
  margin: 0 0 12px;
  color: #818181;             /* como en tu Figma */
  font-size: 14px;
}

/* Botón "Ver más" (opcional) */
.eeaam-staff__more{
  margin-top: 20px;
  text-align: center;
}
.eeaam-btn{
  display: inline-block;
  padding: 10px 18px;
  border-radius: 9999px;
  background: #0B497A;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
}
.eeaam-btn:hover{ filter: brightness(1.06); transform: translateY(-1px); }

/* ============ Panel / tarjeta del formulario ============ */
.eeaam-form{
  background: #FDFDFD;
  border: 1px solid #E5EAF0;
  border-radius: 16px;
  padding: 16px 18px;
  
  max-width: 100%; /* ajustá según tu columna */
  margin: 0 auto 0 0; /* alinea a la izquierda de su columna */
}

/* Grid 2 columnas arriba */
.eeaam-row{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 10px;
}
.eeaam-full{ margin-top: 10px; }

/* Etiquetas sobrias */
.eeaam-form label{
  display: block;
  font-size: 16px;
	font-weight:500;
  color: #000000;
  margin: 4px 2px 0px;
}

/* Campos (CF7 añade spans .wpcf7-form-control-wrap alrededor) */
.eeaam-form .wpcf7-form-control{
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #E8EAED;
  background: #E8EAED;
  color: #0A2540;
  border-radius: 12px;
  outline: none;
  transition: border-color .2s, box-shadow .2s, background .2s;
}
.eeaam-form input[type="text"],
.eeaam-form input[type="email"]{
  height: 48px;
  padding: 10 14px;
}
.eeaam-form textarea{
  min-height: 110px;
  padding: 12px 14px;
  resize: vertical;
}

/* Placeholder */
.eeaam-form ::placeholder{ color:#B3B3B3; opacity:.9; }

/* Focus */
.eeaam-form .wpcf7-form-control:focus{
  border-color:#0B497A;
  box-shadow: 0 0 0 3px rgba(11,73,122,.16);
  background: #fff;
}

/* Botón */
.eeaam-btn,
.eeaam-form input[type="submit"].wpcf7-submit{
  display: inline-block;
  width: 100%;
  height: 48px;
  border-radius: 12px;
  background: #0B497A;
  color: #fff;
  font-weight: 600;
  border: none;
  padding: 0 22px;
  cursor: pointer;
  margin-top: 12px;
}
.eeaam-btn:hover{ filter: brightness(1.06); transform: translateY(-1px); }

/* Estados de validación CF7 */
.eeaam-form .wpcf7-not-valid{ border-color:#E23442; background:#FFF7F7; }
.eeaam-form .wpcf7-not-valid-tip{ color:#E23442; font-size:12px; margin-top:6px; }
.eeaam-form .wpcf7-response-output{
  border-radius: 10px;
  margin: 14px 0 0;
}

/* Responsive: 1 columna en mobile */
@media (max-width: 768px){
  .eeaam-row{ grid-template-columns: 1fr; }
  .eeaam-form{ max-width: 100%; }
}
/* === Overlay en la imagen === */
.eeaam-staff__figure{ position: relative; margin:0; }
.eeaam-staff__overlay{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  background: linear-gradient(to bottom, rgba(10,37,64,0), rgba(10,37,64,.45));
  opacity:0; transition:opacity .2s ease;
}
.eeaam-staff__card:hover .eeaam-staff__overlay{ opacity:1; }

.eeaam-staff__overlay-btn{
  appearance:none; border:0; cursor:pointer;
  padding:10px 16px; border-radius:9999px;
  background:#0B497A; color:#fff; font-weight:600;
  box-shadow:0 4px 14px rgba(11,73,122,.25);
}
.eeaam-staff__overlay-btn:hover{ filter:brightness(1.06); transform:translateY(-1px); }

/* === Modal === */
.eeaam-lock{ overflow:hidden; }
.eeaam-modal[hidden]{ display:none; }
.eeaam-modal{
  position:fixed; inset:0; z-index:9999;
  display:block;
}
.eeaam-modal__overlay{
  position:absolute; inset:0; background:rgba(0,0,0,.5);
}
.eeaam-modal__dialog{
  position:relative; z-index:1; background:#fff;
  max-width:680px; margin:8vh auto; border-radius:16px;
  padding:20px 20px 24px; box-shadow:0 22px 60px rgba(0,0,0,.35);
}
.eeaam-modal__close{
  position:absolute; top:10px; right:12px; border:0; background:transparent;
  font-size:28px; line-height:1; cursor:pointer;
}
.eeaam-modal__title{ margin:0 28px 10px 0; font-size:22px; font-weight:700; color:#0A2540; }
.eeaam-modal__content p{ margin:0 0 10px; color:#243447; line-height:1.55; }
/* Contenedor de la foto */
.eeaam-staff__figure{
  position: relative;
  height: 353px;          /* alto fijo del marco */
  overflow: hidden;       /* recorte limpio */
  border-radius: 16px;    /* igual que la card */
  line-height: 0;         /* evita espacios blancos */
  background: #f2f4f7;    /* placeholder sutil mientras carga */
}

/* Imagen dentro del contenedor */
.eeaam-staff__img{
  width: 100%;
  height: 100% !important; /* pisa height:auto de Elementor */
  object-fit: cover;
  display: block;
  border-radius: 16px 16px 0 0; /* opcional si querés redondeo arriba */
}


/* Estilos css para single-template_carreras.php*/

.container{ max-width:1440px; margin:0 auto; padding:0 16px; }

/* Chips / botones */
.carr-chip{ display:inline-block; padding:4px 10px; border-radius:9999px; background:#E9F1F9; color:#0B497A; font-weight:600; font-size:12px; }
.btn{ display:inline-block; padding:10px 18px; border-radius:9999px; background:#0B497A; color:#fff; text-decoration:none; font-weight:600; }
.btn:hover{ filter:brightness(1.06); transform:translateY(-1px); }
.btn--ghost{ background:transparent; color:#0B497A; border:1px solid #0B497A; }
.btn--light{ background:#F4F7FA; color:#0B497A; border:1px solid #E6EDF5; }

/* ====== ARCHIVE ====== */
.carr-archive__head{ margin:24px 0 12px; }
.carr-archive__sub{ color:#6B7C8F; }

.carr-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
@media (max-width:1024px){ .carr-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){  .carr-grid{ grid-template-columns:1fr; } }

.carr-card{ background:#fff; border:1px solid #E6EDF5; border-radius:16px; overflow:hidden; display:flex; flex-direction:column; }
.carr-card__figure{ height:200px; overflow:hidden; }
.carr-card__img{ width:100%; height:100%; object-fit:cover; display:block; }
.carr-card__body{ padding:14px; }
.carr-card__title{ margin:8px 0 6px; font-size:18px; }
.carr-card__title a{ color:#0A2540; text-decoration:none;font-size:24px; }
.carr-card__desc{ margin:0 0 12px; color:#637489; }
.carr-card__actions{ display:flex; gap:20px; flex-direction:column; text-align: center;}

/* ====== SINGLE ====== */
.carr-hero{ display:grid; grid-template-columns:1.1fr .9fr; gap:28px; align-items:center; margin:24px 0 10px; }
@media (max-width:1440px){ .carr-hero{ grid-template-columns:1fr; } }

.carr-hero__figure{ height:380px; overflow:hidden; border-radius:16px; }
.carr-hero__img{ width:100%; height:100%; object-fit:cover; display:block; }
.carr-hero__title{ margin:10px 0 8px; font-size:48px;font-weight:600; }
.carr-hero__prof{ color:black; margin:0 0 8px;font-size:19px; }
.carr-hero__desc{ color:#2B3B4D; }

.carr-hero__actions{ display:flex; gap:10px; margin-top:12px; flex-wrap:wrap; }

.carr-panel{ background:#fff; border:1px solid #E6EDF5; border-radius:16px; padding:16px; margin:18px 0 28px; }
.carr-panel h3{ margin:0 0 8px; }
.carr-chips{ display:flex; gap:10px; flex-wrap:wrap; margin-top:10px; }
.chip{ background:#F4F7FA; border:1px solid #E6EDF5; border-radius:10px; padding:6px 10px; font-size:14px; }
.chip span{ color:#60748A; font-weight:600; margin-right:6px; }
.carr-actions{ display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }


/*css para shortcode de carreras */
.container{ max-width:1100px; margin:0 auto; padding:0 16px; }

/* Grid */
.carr-grid{ display:grid; gap:20px; }
.carr-grid--cols-1{ grid-template-columns:1fr; }
.carr-grid--cols-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.carr-grid--cols-3{ grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:1024px){ .carr-grid--cols-3{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:640px){  .carr-grid{ grid-template-columns:1fr; } }

/* Card */
.carr-card{ background:#fff; border:1px solid #E6EDF5; border-radius:16px; overflow:hidden; display:flex; flex-direction:column; }
.carr-card.is-hidden{ display:none; }
.carr-card__figure{ height:200px; overflow:hidden; }
.carr-card__img{ width:100%; height:100%; object-fit:cover; display:block; }
.carr-card__body {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.carr-chip{ display:inline-block; padding:12px 20px; border-radius:9999px; background:#E9F1F9; color:#0B497A; font-weight:600; font-size:12px; }
.carr-card__title{ margin:8px 0 6px; font-size:18px; }
.carr-card__title a{ color:#0A2540; text-decoration:none; }
.carr-card__desc{ margin:0 0 12px; color:#637489; }

/* Botones */
.btn{ display:inline-block; padding:10px 18px; border-radius:9999px; background:#0B497A; color:#fff; text-decoration:none !important; font-weight:600; }
.btn:hover{ filter:brightness(1.06); transform:translateY(-1px); }
.btn--ghost{ background:transparent; color:#0B497A; border:1px solid #0B497A;text-decoration:none !important; }
.carr-card__actions{ display:flex; gap:20px; }
.carr-archive__pagination{ text-align:center; margin-top:16px; }

/* Contenedor imagen */
.carr-card__figure{
  position: relative;
  height: auto;                 /* ajustá si querés */
  overflow: hidden;
  border-radius: 16px 16px 0 0;
}
.carr-card__img{
  width:100%; height:100%; object-fit:cover; display:block;
}

/* Chip de duración en la foto */
.carr-badge{
  position:absolute; top:10px; left:12px;
  display:inline-flex; align-items:center; gap:6px;
  padding:4px 10px;
  border-radius: 9999px;
  background: rgba(255,255,255,.85);
  border: 1px solid #E0E7EF;
  font-size:12px; font-weight:600; color:#0B497A;
  backdrop-filter: blur(4px); /* opcional */
  box-shadow: 0 2px 8px rgba(10,37,64,.08);
}
.carr-badge::before{
  content:""; width:8px; height:8px; border-radius:50%;
  background:#0B497A; /* puntito como en Figma */
}


/*Single template carreras*/

.container{ max-width:1100px; margin:0 auto; padding:0 16px; }

.muted{ color:#818181; }

/* Chip */
.carr-chip{
  display:inline-block; padding:6px 12px; border-radius:9999px;border: 1px solid #003970;
  background:#EEF5FB; color:#0B497A; font-weight:400; font-size:16px;
}

/* Hero */
.carr-hero{ display:grid; grid-template-columns:1.1fr .9fr; gap:28px; align-items:center; margin:26px 0 100px; }
@media (max-width:900px){ .carr-hero{ grid-template-columns:1fr; } }

.carr-hero__figure{ height:380px; overflow:hidden; border-radius:16px; }
.carr-hero__img{ width:100%; height:100%; object-fit:cover; display:block; }
.carr-hero__title{ margin:10px 0 6px; font-size:28px; }
.carr-hero__prof{ margin:4px 0 10px; }
.carr-hero__desc p{ margin:0 0 10px; }
.carr-hero__actions{ display:flex; gap:10px; margin-top:12px; flex-wrap:wrap; }

/* Tabs + layout secundario */
.carr-sections{ display:grid; grid-template-columns:1.1fr .9fr; gap:24px; margin:10px 0 28px; align-items:start; }
@media (max-width:1000px){ .carr-sections{ grid-template-columns:1fr; } }

.tabs{ background:#fff; border:1px solid #E6EDF5; border-radius:16px; padding:14px; }
.tabs__list{ display:flex; gap:8px; border-bottom:1px solid #E6EDF5; margin-bottom:10px; }
.tabs__tab{
  appearance:none; border:0; background:transparent; cursor:pointer;
  padding:8px 12px; border-radius:10px; font-weight:600; color:#0B497A;
}
.tabs__tab[aria-selected="true"]{ background:#EEF5FB; }
.tabs__panel{ display:none; }
.tabs__panel.is-active{ display:block; }

.carr-side__figure{ height:260px; overflow:hidden; border-radius:16px; margin:0 0 10px; }
.carr-side__img{ width:100%; height:100%; object-fit:cover; display:block; }

.carr-facts{ list-style:none; padding:0; margin:0 0 12px; display:grid; gap:8px; }
.carr-facts li{  border-bottom:1px solid #E4E6E6; border-radius:0px; padding:8px 0px; }
.carr-facts li span{ color:#60748A; font-weight:700; margin-right:6px; }

/* Botones */
.btn{ display:inline-block; padding:10px 38px; border-radius:16px; background:#0B497A; color:#fff; text-decoration:none; font-weight:700; }
.btn:hover{ filter:brightness(1.06); transform:translateY(-1px);background-color:white;border: 1px solid #003970 }
.btn--ghost{ background:transparent; color:#0B497A; border:1px solid #0B497A; }
.btn--light{ background:#F4F7FA; color:#0B497A; border:1px solid #E6EDF5; }
.btn.is-disabled{ pointer-events:none; }
/* aplica margen superior a todo hijo excepto el primero */
.carr-hero__text > * + *{
  margin-top: 22px;
}




/* =========== CARRERAS - Acordeón (+ / −) =========== */
.acc{ display:flex; flex-direction:column; gap:14px; }
.acc-item{
  background:#fff; border:1px solid #E6EDF5; border-radius:16px;
  overflow:hidden;
}
.acc-head{
  width:100%; text-align:left; padding:14px 16px;
  background:#FAFAFA; border:0; cursor:pointer;
  display:flex; align-items:center; justify-content:space-between;
  font-weight:700; font-size:18px; color:#0A2540;
}
.acc-head::after{
  content:'+'; display:inline-grid; place-items:center;
  width:28px; height:28px; border-radius:9999px;
  background:#fff; border:1px solid #E6EDF5;
  font-weight:900; line-height:1; color:#003970;
}
.acc-head[aria-expanded="true"]::after{ content:'−'; }
.acc-panel{ padding:14px 16px; }
.acc-head:hover{
	background-color:#003970;
	color:white;
}
.acc-head:active{
	background-color:#003970;
	color:white;
}
.acc-head:focus{
	background-color:#003970;
	color:white;
}


/* =========== CARRERAS - Hero: espaciado interno =========== */
/* así podés usar "gap" entre chip, título, descripción, línea de profesor y botones */
.carr-hero__text{ display:grid; gap:22px; }
.carr-hero__text > *{ margin:0; }          /* evita márgenes colapsados */
.carr-hero__desc p{ margin:0 0 10px; }     /* párrafos dentro de la descripción */

/* =========== CARRERAS - Columna derecha: detalles y acciones =========== */
.carr-side__figure{ height:260px; overflow:hidden; border-radius:16px; margin:0 0 10px; }
.carr-side__img{ width:100%; height:100%; object-fit:cover; display:block; }
.carr-facts{ list-style:none; padding:0; margin:0 0 12px; display:grid; gap:8px; }
.carr-facts li{ border-bottom:1px solid #E4E6E6; border-radius:0px; padding:8px 0px; }
.carr-facts li span{ color:black; font-weight:400; margin-right:6px;font-size:19px; }
.carr-side__actions{ display:flex; gap:10px; flex-wrap:wrap; }

/* =========== Botón deshabilitado (mismo color, sin efecto raro) =========== */
.btn.is-disabled,
.btn[aria-disabled="true"],
button.btn:disabled{
  opacity:1; pointer-events:none; filter:none; transform:none;
  cursor:not-allowed;                     /* inactivo pero sólido */
  background:#0B497A; color:#fff;
}
/* Botones en la columna derecha */
.carr-side__actions{
  display: flex;
  flex-direction: column;   /* uno abajo del otro */
  gap: 12px;
}

.carr-side__actions .btn{
  display: block;           /* que se comporte como bloque */
  width: 100%;              /* ocupa todo el ancho */
  box-sizing: border-box;   /* incluye padding y borde sin desbordar */
  text-align: center;
}


/* Modal Doppler */
.modal[hidden]{display:none;}
.modal{position:fixed; inset:0; z-index:9999;}
.modal__overlay{position:absolute; inset:0; background:rgba(0,0,0,.5);}
.modal__dialog{position:relative; z-index:1; background:#fff; max-width:560px; margin:10vh auto; padding:22px; border-radius:16px; box-shadow:0 22px 60px rgba(0,0,0,.35);}
.modal__close{position:absolute; top:10px; right:12px; border:0; background:transparent; font-size:28px; cursor:pointer;}
.modal__title{margin:0 0 6px; font-size:22px; font-weight:700;}
.modal__subtitle{margin:0 0 12px; color:#60748A;}
.eeaam-lock{overflow:hidden;}
.btn.is-disabled{
  opacity: .55;
  cursor: not-allowed;
}
.btn.is-disabled{ opacity:.55; cursor:not-allowed; }
.eeaam-lock{ overflow:hidden; } /* bloquea el scroll cuando el modal está abierto */
/* Contenedor en una fila */
.cf7-inline{
  display: flex;
  gap: 10px;
  align-items: center;
}

/* Email ocupa todo el ancho disponible */
.cf7-inline .cf7-inline__input{
  flex: 1;
  height: 48px;
  padding: 0 14px;
  border: 1px solid #E8EAED;
  border-radius: 12px;
  background: #FDFDFD;
  box-sizing: border-box;
}

/* Botón */
.cf7-inline .cf7-inline__btn{
  height: 48px;
  padding: 0 22px;
  border-radius: 12px;
  border: none;
  background: #0B497A;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}

/* Hover opcional */
.cf7-inline .cf7-inline__btn:hover{
  filter: brightness(1.06);
  transform: translateY(-1px);
}

/* Responsivo (en móviles, una columna) */
@media (max-width: 480px){
  .cf7-inline{ flex-direction: column; }
  .cf7-inline .cf7-inline__btn{ width: 100%; }
}
/* Fuerza la fila en CF7 y evita que los wrappers empujen el botón abajo */
.cf7-inline {
  display: flex;
  gap: 10px;
  align-items: center;
}

.cf7-inline .wpcf7-form-control-wrap {
  flex: 1;              /* el wrapper del input ocupa el espacio */
  display: flex;        /* para que el input no se estire raro */
}

/* El input dentro del wrapper no se haga 100% por estilos globales */
.cf7-inline input[type="email"].cf7-inline__input {
  width: auto;
  flex: 1;
  height: 48px;
  padding: 0 14px;
  border: 1px solid #E8EAED;
  border-radius: 12px;
  background: #FDFDFD;
  box-sizing: border-box;
}

/* Botón al costado */
.cf7-inline .wpcf7-submit.cf7-inline__btn {
  height: 48px;
  padding: 0 22px;
  border-radius: 12px;
  border: none;
  background: #0B497A;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  width: auto;     /* por si algún estilo global lo hacía 100% */
  margin: 0;       /* limpia márgenes heredados */
}

/* Mobile: apilado */
@media (max-width: 480px){
  .cf7-inline { flex-direction: column; }
  .cf7-inline .wpcf7-submit.cf7-inline__btn { width: 100%; }
}
/* contenedor en fila */
#plan-cf7 .cf7-inline{
  display: flex;
  align-items: center;
  gap: 10px;
}

/* los <p> que CF7 mete adentro */
#plan-cf7 .cf7-inline > p{
  margin: 0 !important;
  display: flex !important;   /* en lugar de block */
  flex: 1 1 0;                 /* el primero ocupa el espacio */
  min-width: 0;
}

/* el segundo <p> (submit) no crece */
#plan-cf7 .cf7-inline > p:last-child{
  flex: 0 0 auto;
	gap:20px;
}

/* el input puede encogerse y no expandirse a 100% */
#plan-cf7 .cf7-inline input[type="email"].cf7-inline__input{
  flex: 1 1 0;
  min-width: 0;
  width: auto !important;
  height: 48px;
  padding: 0 14px;
  border: 1px solid #E8EAED;
  border-radius: 12px;
  background: #FDFDFD;
  box-sizing: border-box;
}

/* el botón al costado, sin 100% heredados */
#plan-cf7 .cf7-inline input.wpcf7-submit.cf7-inline__btn{
  display: inline-flex;
  flex: 0 0 auto;
  width: auto !important;
  height: 48px;
  padding: 0 22px;
  border-radius: 12px;
  border: none;
  background: #0B497A;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}

/* mobile: apilado */
@media (max-width: 480px){
  #plan-cf7 .cf7-inline{ flex-direction: column; }
  #plan-cf7 .cf7-inline input.wpcf7-submit.cf7-inline__btn{ width: 100% !important; }
}
.carr-hero__text .carr-chip{
  display: inline-flex;        /* se comporta como pill */
  align-items: center;
  white-space: nowrap;         /* que no corte en 2 líneas */
  width: auto;                 /* nada de 100% */
  max-width: fit-content;      /* por si algún reset mete anchuras raras */
  align-self: flex-start;      /* si el contenedor es flex/grid, no lo estires */
}

.carr-download{
  margin: 14px 0 22px;
}
.carr-download .btn{
  width: 100%;
  max-width: 340px;   /* opcional */
}
.btn js-open-dp-plan{
	border:1px solid #0B497A!important;

}
.btn js-open-dp-plan:hover{
	color:#0B497A !important;
}
/* Si sólo querés tocar el botón suelto de descarga */
.carr-download .btn{
  background: #003970 !important;
  border-color: #003970 !important;
  color: #fff !important;
}


/* =========================================================
   Egresados (Alumnos) — versión limpia y unificada
   ========================================================= */

/* ---------- Filtros ---------- */
.alum__head{ margin-bottom: 12px; }
.alum__title{ margin:0 0 8px; font-size:28px; font-weight:700; }

.alum__filters{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0 14px;
}

.alum__filter{
  appearance:none;
  border:1px solid #262626;
  background-color:transparent;
  color:#262626;
  padding:10px 16px;
  border-radius:9999px;
  font-weight:500;
  cursor:pointer;
  transition:background-color .18s ease, color .18s ease, border-color .18s ease;
}

.alum__filter:hover,
.alum__filter:active,
.alum__filter.is-active{
  background-color:#262626;
  color:#fff;
  border-color:#262626;
}

/* ---------- Grid (4 → 3 → 2 → 1) ---------- */
.alum__grid{
  display:grid;
  gap:24px;
  grid-template-columns: repeat(4, minmax(0,1fr));
  align-items:start;
}

@media (max-width:1200px){
  .alum__grid{ grid-template-columns: repeat(3, 1fr); }
}
@media (max-width:900px){
  .alum__grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width:560px){
  .alum__grid{ grid-template-columns: 1fr; }
}

/* ---------- Card ---------- */
.alum__card{
  background:#fff;
  border:1px solid #E6EDF5;
  border-radius:16px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  height:100%;
}
.alum__card.is-hidden{ display:none; }

/* Imagen con alto proporcional y recorte prolijo */
.alum__figure{
  aspect-ratio: 4 / 5;          /* todas iguales visualmente */
  overflow:hidden;
  border-radius:16px 16px 0 0;
}
.alum__img{
  width:100%;
  height:100% !important;
  object-fit:cover;
  object-position:center top;   /* cara más arriba si hay mucho cielo */
  display:block;
}

/* Contenido */
.alum__body{
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.alum__name{
  margin:6px 0 4px;
  font-size:18px;
  font-weight:700;
  color:#0A2540;
}
.alum__role{ margin:0; color:#637489; font-size:14px; }

/* Chips de categoría */
.alum__chips{ display:flex; gap:8px; flex-wrap:wrap; }
.alum__chip{
  background:#F4F7FA;
  border:1px solid #E6EDF5;
  border-radius:10px;
  padding:4px 8px;
  font-size:12px;
  color:#60748A;
  font-weight:700;
}

/* Contacto */
.alum__contacto a{
  color:#0B497A;
  text-decoration:none;
}
/* ===== Oferta Home (tabs + lista) ===== */
.off { margin: 24px 0; }

.off__title { margin: 0 0 10px; font-size: 28px; font-weight: 700; }

.off__filters {
  display: flex; gap: 10px; flex-wrap: wrap;
  margin: 8px 0 18px;
	font-size:24px;
}
.off__filter{
  appearance:none; border:1px solid #E0E0E0; background:#fff; color:#111;
  border-radius:9999px; padding:16px 24px; cursor:pointer; font-weight:600;font-size:24px;
}
.off__filter.is-active{ background:#262626; color:#fff; }
.off__filter:hover{background-color:#262626}

/* Grilla */
.off-grid{ display:grid; gap:100px; }
.off-grid.off-grid--cols-3{ grid-template-columns:repeat(3,minmax(0,1fr));margin-top:56px; }
.off-grid.off-grid--cols-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }

@media (max-width:1024px){ .off-grid.off-grid--cols-3,.off-grid.off-grid--cols-4{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:640px){  .off-grid{ grid-template-columns:1fr; } }

/* Ítem tipo “título + flecha” */
.off-item__link{
  display:flex; align-items:center; justify-content:space-between;
  gap:14px; padding:14px 0; border-bottom:1px solid #E8E8E8; text-decoration:none !important;
}
.off-item__title{ color:#111; font-weight:700; line-height:1.2;font-size:24px; }
.off-item__arrow{
  width:28px; height:28px; border-radius:50%;
  background:#111; position:relative; flex:0 0 28px;
}
.off-item__arrow::after{
  content:"›"; position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:16px; transform: translateX(1px);
}
.off-item__link:hover .off-item__arrow{ filter:brightness(1.1);  transition:all .15s; }









/* ===== Slider de staff (Splide) ===== */
.eeaam-staff-slider__title{ margin:0 0 14px; font-weight:700; font-size:28px; }

.splide__slide{ display:flex; }
.eeaam-staff__card{
  display:flex; flex-direction:column; width:100%; height:100%;
  border:1px solid #E6EDF5; border-radius:16px; overflow:hidden; background:#fff;
}
.eeaam-staff__figure{ position:relative; aspect-ratio:4/3; overflow:hidden; }
.eeaam-staff__img{ width:100%; height:100%; object-fit:cover; display:block; }

.eeaam-staff__overlay{
  position:absolute; inset:auto 0 0 0; display:flex; justify-content:center;
  padding:10px; background:linear-gradient(transparent, rgba(0,0,0,.35));
  opacity:0; transition:.25s;
}
.eeaam-staff__figure:hover .eeaam-staff__overlay{ opacity:1; }

.eeaam-staff__overlay-btn{
  background:#0B497A; color:#fff; border:0; border-radius:10px;
  padding:8px 12px; cursor:pointer; font-weight:600;
}

.eeaam-staff__body{ padding:12px; }
.eeaam-staff__name{ margin:0 0 4px; font-weight:700; }
.eeaam-staff__role{ margin:0; color:#637489; }

/* Flechas Splide (opcional) */
.eeaam-staff-slider .splide__arrow{
  background:#0B497A; color:#fff; opacity:.95; width:38px; height:38px;
  border-radius:9999px;
}
.eeaam-staff-slider .splide__arrow:hover{ filter:brightness(1.06); }

/* Modal genérico */
.eeaam-lock{ overflow:hidden; }

/* ===== Flechas Splide – Staff slider ===== */
.eeaam-staff-slider .splide__arrows { pointer-events: none; }
.eeaam-staff-slider .splide__arrow {
  pointer-events: auto;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 46px;
  height: 44px;
  border-radius: 9999px;
  border: 1px solid #E6EDF5;
  background: #fff;
  color: #0B497A;           /* color de icono */
  box-shadow: 0 6px 20px rgba(0,0,0,.12);
  opacity: .95;
  transition: transform .18s ease, opacity .18s ease, background .18s, color .18s, border-color .18s;
  z-index: 5;
}
.eeaam-staff-slider .splide__arrow--prev { left: -24px; }
.eeaam-staff-slider .splide__arrow--next { right: -24px; }

/* Icono más grande y usando el color actual */
.eeaam-staff-slider .splide__arrow svg {
  width: 15px;
  height: 25px;
  fill: currentColor;
}

/* Hover / Active */
.eeaam-staff-slider .splide__arrow:hover {
  background: #0B497A;
  color: #fff;
  border-color: #0B497A;
  transform: translateY(-50%) scale(1.05);
  opacity: 1;
}
.eeaam-staff-slider .splide__arrow:active {
  transform: translateY(-50%) scale(.98);
}

/* Accesibilidad */
.eeaam-staff-slider .splide__arrow:focus-visible {
  outline: 3px solid #93c5fd; /* azul clarito */
  outline-offset: 2px;
}

/* Deshabilitado (por si no hay loop) */
.eeaam-staff-slider .splide__arrow:disabled {
  opacity: .35;
  cursor: default;
}

/* Responsive: las acercamos y achicamos un poco */
@media (max-width: 1024px) {
  .eeaam-staff-slider .splide__arrow { width: 40px; height: 40px; }
  .eeaam-staff-slider .splide__arrow--prev { left: -8px; }
  .eeaam-staff-slider .splide__arrow--next { right: -8px; }
}
@media (max-width: 640px) {
  .eeaam-staff-slider .splide__arrow {
    width: 38px; height: 38px;
    /* ligerísimo blur para que se lea sobre la foto */
    background: rgba(255,255,255,.92);
    backdrop-filter: saturate(120%) blur(4px);
  }
  .eeaam-staff-slider .splide__arrow--prev { left: 6px; }
  .eeaam-staff-slider .splide__arrow--next { right: 6px; }
}

/* (Opcional) mostrar flechas solo al pasar el mouse en desktop
.eeaam-staff-slider .splide__arrow { opacity: 0; }
.eeaam-staff-slider:hover .splide__arrow { opacity: .95; }
*/


/* ===== Acordeón con esquinas redondeadas (16px) ===== */



/* ========= Elementor NUEVO (markup <details>) ========= */
.acc-rounded .e-n-accordion > details.e-n-accordion-item{
  
  border: 1px solid #EBEBEB;
  border-radius: 16px;
  overflow: hidden;
  background: #EBEBEB;
}



/* ========= OFERTA HOME: responsive & pulido mobile ========= */

/* Filtros como “pills” + scroll horizontal en mobile */
.off__filters{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin: 0 0 16px;
}
@media (max-width:640px){
  .off__filters{
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom: 6px;           /* para que no tape el borde inferior */
    scroll-snap-type:x mandatory;
  }
  .off__filter{
    white-space:nowrap;
    scroll-snap-align:start;
  }
}

/* Grilla fluida: 3/2/1 columnas según ancho */
.off-grid{
  display:grid;
  gap: 16px;
}
.off-grid.off-grid--cols-4{ grid-template-columns: repeat(4, minmax(0,1fr)); }
.off-grid.off-grid--cols-3{ grid-template-columns: repeat(3, minmax(0,1fr)); }

@media (max-width:1024px){
  .off-grid.off-grid--cols-4,
  .off-grid.off-grid--cols-3{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width:640px){
  .off-grid.off-grid--cols-4,
  .off-grid.off-grid--cols-3{ grid-template-columns: 1fr; }
}

/* Card: asegurar espacios para la flecha y recorte de títulos largos */
.off-item__link{
  position:relative;
  display:block;
  padding:16px 44px 16px 16px;  /* espacio a la derecha para la flecha */
  border:1px solid #E6EDF5;
  border-radius:14px;
  background:#fff;
  text-decoration:none;
  transition:.2s box-shadow, .2s transform;
  min-height: 72px;             /* altura táctil cómoda */
}
.off-item__link:hover{ box-shadow:0 6px 16px rgba(0,0,0,.08); transform: translateY(-1px); }

.off-item__title{
  font-weight:600;
  line-height:1.25;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;         /* 2 renglones en mobile */
  -webkit-box-orient:vertical;
}

/* Flecha circular a la derecha, centrada verticalmente */
.off-item__arrow{
  position:absolute;
  top:50%;
  right:12px;
  transform:translateY(-50%);
  width:28px; height:28px;
  border-radius:9999px;
  background:#111;              /* mismo estilo que tenías */
  display:inline-block;
}
.off-item__arrow::before{
  content:"";
  position:absolute; inset:0;
  margin:auto;
  width:8px; height:8px;
  border-right:2px solid #fff;
  border-top:2px solid #fff;
  transform: rotate(45deg);
}

/* Tipografías un toque más chicas en pantallas angostas */
@media (max-width:640px){
  .off-item__title{ font-size:15px; }
  .off__filter{ font-size:14px; padding:8px 12px; }
}
