.gtm-directory,.gtm-profile{--gtm-accent:#008f87;--gtm-ink:#23344d;box-sizing:border-box;font-family:inherit;color:var(--gtm-ink)}.gtm-directory *,.gtm-profile *{box-sizing:border-box}.gtm-items{display:grid;grid-template-columns:repeat(var(--gtm-cols,3),minmax(0,1fr));gap:24px}.gtm-card{min-width:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 7px 22px rgba(22,40,54,.09);border:1px solid #edf0f1}.gtm-card-link{border:0;background:transparent;display:block;text-align:left;width:100%;height:100%;color:inherit;text-decoration:none!important;padding:0;cursor:pointer;font:inherit}.gtm-card-link:hover,.gtm-card-link:focus-visible{color:inherit;box-shadow:inset 0 0 0 2px var(--gtm-accent)}.gtm-card-photo{height:205px;overflow:hidden;background:#e4eeee}.gtm-card-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 26%}.gtm-no-photo{height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d4e9e8,#e8eeee);font-size:50px;color:var(--gtm-accent)}.gtm-card-body{padding:18px 20px;min-height:112px}.gtm-card-role{font-weight:700;color:var(--gtm-accent);font-size:15px;line-height:1.3;margin-bottom:4px}.gtm-card-name{font-size:19px;font-weight:750;line-height:1.3;color:var(--gtm-ink);margin:0 0 7px}.gtm-card-quote{font-size:14px;line-height:1.5;color:#647188;margin:0}.gtm-card-wide .gtm-card-body{display:flex;gap:17px;align-items:flex-start}.gtm-card-wide .gtm-card-copy{min-width:0;flex:1}.gtm-person-icon{width:48px;height:48px;flex:0 0 48px;background:var(--gtm-accent);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center}.gtm-person-icon svg{width:26px;height:26px}.gtm-card-compact .gtm-card-photo{height:190px}.gtm-card-compact .gtm-card-body{min-height:100px;padding:13px 16px}.gtm-card-compact .gtm-card-role{font-size:12px}.gtm-card-compact .gtm-card-name{font-size:16px}.gtm-card-compact .gtm-card-quote{font-size:13px}.gtm-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin:22px 0}.gtm-controls button{width:41px;height:41px;padding:0;border:0;border-radius:50%;background:#e8f4f3;color:var(--gtm-accent);font-size:30px;line-height:1;cursor:pointer}.gtm-controls button:disabled{opacity:.25;cursor:default}.gtm-controls button:hover:not(:disabled){background:var(--gtm-accent);color:#fff}.gtm-controls[hidden]{display:none}.gtm-count{font-size:13px;color:#637184}.gtm-dots{display:flex;gap:7px}.gtm-dots button{width:10px;height:10px;border-radius:50%;background:#cbd4da;font-size:0}.gtm-dots button.active{background:var(--gtm-accent)}.gtm-is-carousel .gtm-viewport{overflow:hidden}.gtm-is-carousel .gtm-items{display:flex;gap:20px;transition:transform .4s ease;will-change:transform}.gtm-is-carousel .gtm-card{flex:0 0 calc((100% - (var(--gtm-cols) - 1) * 20px)/var(--gtm-cols))}.gtm-is-grid .gtm-card[hidden]{display:none}.gtm-profile{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:30px;width:100%;max-width:1200px;margin:auto}.gtm-profile-side{min-width:0}.gtm-profile-photo{width:100%;min-height:180px;background:#e4eeee}.gtm-profile-photo img{width:100%;display:block;height:auto;max-height:380px;object-fit:cover}.gtm-profile-contact{margin-top:16px}.gtm-profile h1,.gtm-profile h2,.gtm-profile h3{color:var(--gtm-ink);font-family:inherit}.gtm-profile h3,.gtm-profile h2{border-bottom:1px solid #d9dfe2;padding-bottom:8px;margin:0 0 15px;font-size:18px}.gtm-profile h3{font-size:16px}.gtm-profile-contact p{font-size:14px;color:#647184;overflow-wrap:anywhere;margin:7px 0}.gtm-profile-contact a{color:var(--gtm-accent);text-decoration:none}.gtm-profile-social{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.gtm-profile-social a{display:inline-flex;align-items:center;padding:6px 10px;background:var(--gtm-accent);color:white!important;border-radius:20px;text-decoration:none;font-size:12px}.gtm-profile-main{min-width:0}.gtm-profile-name{font-size:28px!important;line-height:1.2;margin:0 0 6px!important}.gtm-profile-role{color:#84909b;margin:0 0 24px!important}.gtm-profile-main section{margin:0 0 24px}.gtm-education{margin:8px 0;color:#697587}.gtm-education span{color:#89939f}.gtm-skill{margin-bottom:17px}.gtm-skill-label{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:5px;font-size:14px}.gtm-skill-bar{height:5px;background:#e9ecee}.gtm-skill-bar>span{height:100%;display:block;background:var(--gtm-accent)}.gtm-profile-bio{line-height:1.75;color:#657183}.gtm-profile-quote{border-left:4px solid var(--gtm-accent);padding:6px 0 6px 19px;font-style:italic;color:#657183;margin:20px 0}.gtm-single-wrap{padding:35px 20px 70px}.gtm-single-inner{max-width:1200px;margin:auto}.gtm-back a{color:var(--gtm-accent,#008f87);text-decoration:none}.gtm-modal{position:fixed;inset:0;display:none;z-index:999999;align-items:center;justify-content:center;padding:20px}.gtm-modal.is-open{display:flex}.gtm-modal-backdrop{position:absolute;inset:0;background:rgba(7,23,32,.72)}.gtm-modal-panel{position:relative;z-index:1;background:#fff;border-radius:12px;padding:34px;width:min(1050px,100%);max-height:90vh;overflow:auto;box-shadow:0 20px 60px #0004}.gtm-modal-close{position:sticky;top:-25px;float:right;z-index:5;border:0;background:var(--gtm-accent,#008f87);color:#fff;border-radius:50%;width:34px;height:34px;font-size:24px;cursor:pointer}.gtm-modal-open{overflow:hidden}@media(max-width:900px){.gtm-items{grid-template-columns:repeat(min(2,var(--gtm-cols)),minmax(0,1fr))}.gtm-is-carousel .gtm-card{flex-basis:calc((100% - (min(2,var(--gtm-cols)) - 1) * 20px)/min(2,var(--gtm-cols)))}}@media(max-width:620px){.gtm-items{grid-template-columns:1fr}.gtm-is-carousel .gtm-card{flex-basis:100%}.gtm-card-photo{height:220px}.gtm-profile{grid-template-columns:1fr;gap:22px}.gtm-profile-side{max-width:100%}.gtm-profile-photo{max-width:360px}.gtm-modal-panel{padding:22px 16px}.gtm-profile-name{font-size:23px!important}}@media(prefers-reduced-motion:reduce){.gtm-is-carousel .gtm-items{transition:none}}

/* v1.2: tarjetas como el diseño de referencia; imágenes alineadas arriba para no cortar cabezas. */
.gtm-directory .gtm-card,.gtm-directory .gtm-card-link{position:relative}
.gtm-directory .gtm-card-link::before,.gtm-directory .gtm-card-link::after,.gtm-directory .gtm-card::before,.gtm-directory .gtm-card::after{content:none!important;border:0!important}
.gtm-directory .gtm-card-link:hover,.gtm-directory .gtm-card-link:focus-visible{box-shadow:none!important;border-color:transparent!important;text-decoration:none!important}
.gtm-directory .gtm-card:hover{box-shadow:0 9px 24px rgba(22,40,54,.14)}
.gtm-directory .gtm-card-photo img{object-position:center top}
.gtm-directory .gtm-card-wide .gtm-card-photo{height:170px;background:#f3f6f6}
.gtm-directory .gtm-card-wide .gtm-card-body{padding:15px 22px 18px;min-height:137px;gap:20px;align-items:flex-start}
.gtm-directory .gtm-card-wide .gtm-person-icon{width:60px;height:60px;flex-basis:60px}
.gtm-directory .gtm-card-wide .gtm-card-role{font-size:18px;line-height:1.25;margin:0 0 3px}
.gtm-directory .gtm-card-wide .gtm-card-name{font-size:20px;line-height:1.25;margin:0 0 7px}
.gtm-directory .gtm-card-wide .gtm-card-quote{font-size:16px;line-height:1.35;color:#536179}
.gtm-profile-social a{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;padding:0!important;border:0!important;border-radius:50%;background:transparent!important;color:var(--gtm-accent)!important;box-shadow:none!important;transition:background .2s,color .2s}
.gtm-profile-social a:hover,.gtm-profile-social a:focus-visible{background:var(--gtm-accent)!important;color:white!important}
.gtm-profile-extra{color:#657183;line-height:1.75}
.gtm-modal-close{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;padding:0!important;text-align:center!important;font-family:Arial,sans-serif!important;font-weight:400!important;box-sizing:border-box!important;transform:none!important}
@media(max-width:620px){.gtm-directory .gtm-card-wide .gtm-card-role{font-size:16px}.gtm-directory .gtm-card-wide .gtm-card-name{font-size:18px}.gtm-directory .gtm-card-wide .gtm-card-quote{font-size:14px}.gtm-directory .gtm-card-wide .gtm-card-body{padding:14px;gap:12px}.gtm-directory .gtm-card-wide .gtm-person-icon{width:45px;height:45px;flex-basis:45px}}

/* v1.3: círculo de vista amplia 10px más pequeño; carrusel compacto sin icono. */
.gtm-directory .gtm-card-wide .gtm-person-icon{width:50px;height:50px;flex-basis:50px}
.gtm-directory .gtm-card-wide .gtm-person-icon svg{width:23px;height:23px}
.gtm-directory.gtm-is-carousel .gtm-card-compact .gtm-card-body{display:block;padding:12px 15px 13px;min-height:82px}
.gtm-directory.gtm-is-carousel .gtm-card-compact .gtm-card-photo{height:170px}
.gtm-directory.gtm-is-carousel .gtm-card-compact .gtm-card-role{font-size:12px;margin:0 0 2px}
.gtm-directory.gtm-is-carousel .gtm-card-compact .gtm-card-name{font-size:15px;margin:0 0 4px}
.gtm-directory.gtm-is-carousel .gtm-card-compact .gtm-card-quote{font-size:13px;line-height:1.3}
@media(max-width:620px){.gtm-directory .gtm-card-wide .gtm-person-icon{width:35px;height:35px;flex-basis:35px}.gtm-directory .gtm-card-wide .gtm-person-icon svg{width:19px;height:19px}}

/* v1.4: per-member inline object-position overrides the standard crop. */

.gtm-dots[hidden],.gtm-controls button[hidden]{display:none!important}

/* v1.7: filtros, items wrappers y columnas responsive */
.gtm-directory .gtm-member-item{min-width:0}.gtm-directory .gtm-member-item>.gtm-card{height:100%}
.gtm-directory .gtm-directory-filters{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 20px;align-items:center}
.gtm-directory .gtm-directory-filters label{flex:1 1 210px;max-width:420px}
.gtm-directory .gtm-directory-filters input,.gtm-directory .gtm-directory-filters select{width:100%;min-height:42px;padding:8px 12px;border:1px solid #cbd7dc;border-radius:8px;background:white;color:var(--gtm-ink);font:inherit}
.gtm-directory .gtm-no-results{padding:18px;text-align:center;color:#536179}
.gtm-directory .gtm-no-results[hidden],.gtm-directory .gtm-member-item[hidden]{display:none!important}
.gtm-is-carousel .gtm-member-item{flex:0 0 calc((100% - (var(--gtm-cols) - 1) * 20px)/var(--gtm-cols));min-width:0}
.gtm-is-carousel .gtm-member-item .gtm-card{width:100%}
.gtm-vcard-action{margin-top:16px}.gtm-vcard-link{display:inline-block;border:1px solid var(--gtm-accent);padding:9px 12px;border-radius:8px;text-decoration:none!important;color:var(--gtm-accent)}
@media(max-width:900px){.gtm-directory .gtm-items{grid-template-columns:repeat(var(--gtm-tablet-cols,2),minmax(0,1fr))}.gtm-directory.gtm-is-carousel .gtm-member-item{flex-basis:calc((100% - (var(--gtm-tablet-cols,2) - 1) * 20px)/var(--gtm-tablet-cols,2))}}
@media(max-width:620px){.gtm-directory .gtm-items{grid-template-columns:repeat(var(--gtm-mobile-cols,1),minmax(0,1fr))}.gtm-directory.gtm-is-carousel .gtm-member-item{flex-basis:calc((100% - (var(--gtm-mobile-cols,1) - 1) * 20px)/var(--gtm-mobile-cols,1))}}

/* v1.7.1: impedir que los estilos del tema agranden o coloreen el boton
   invisible de cada tarjeta. El hover sigue exactamente el radio y tamano. */
.gtm-directory .gtm-card{isolation:isolate;}
.gtm-directory .gtm-card .gtm-card-link,
.gtm-directory .gtm-card .gtm-card-link:hover,
.gtm-directory .gtm-card .gtm-card-link:focus,
.gtm-directory .gtm-card .gtm-card-link:active{
  box-sizing:border-box!important;display:block!important;width:100%!important;
  height:100%!important;min-height:0!important;max-width:100%!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  outline:0!important;box-shadow:none!important;background:transparent!important;
  background-color:transparent!important;color:inherit!important;transform:none!important;
  text-align:left!important;letter-spacing:normal!important;text-decoration:none!important;
  overflow:hidden!important;
}
.gtm-directory .gtm-card .gtm-card-link:hover .gtm-card-body,
.gtm-directory .gtm-card .gtm-card-link:focus .gtm-card-body{background:transparent!important;}
.gtm-directory .gtm-card:focus-within{outline:2px solid var(--gtm-accent);outline-offset:2px;}
.gtm-directory .gtm-card:hover{box-shadow:0 9px 24px rgba(22,40,54,.14);}

/* v1.7.2: hover configurable dentro de las dimensiones reales de la tarjeta.
   El tema no puede inyectar fondos o dimensiones en el enlace interior. */
.gtm-directory .gtm-card{transition:box-shadow .22s ease,border-color .22s ease;}
.gtm-directory .gtm-card .gtm-card-body{transition:background-color .22s ease;}
.gtm-directory .gtm-card:hover,.gtm-directory .gtm-card:focus-within{border-color:var(--gtm-accent)!important;box-shadow:0 9px 24px rgba(22,40,54,.14)!important;}
.gtm-directory .gtm-card:hover .gtm-card-body,
.gtm-directory .gtm-card:focus-within .gtm-card-body,
.gtm-directory .gtm-card .gtm-card-link:hover .gtm-card-body,
.gtm-directory .gtm-card .gtm-card-link:focus-visible .gtm-card-body{background:var(--gtm-hover,#e0f3ed)!important;}
@media(prefers-reduced-motion:reduce){.gtm-directory .gtm-card,.gtm-directory .gtm-card .gtm-card-body{transition:none!important;}}

/* v1.7.3: En carrusel, el contenido ocupa toda la altura real de la tarjeta.
   Evita la franja blanca en tarjetas con textos de distinta longitud,
   sin modificar el comportamiento ni las medidas de la vista wide. */
.gtm-directory.gtm-is-carousel .gtm-card .gtm-card-link,
.gtm-directory.gtm-is-carousel .gtm-card .gtm-card-link:hover,
.gtm-directory.gtm-is-carousel .gtm-card .gtm-card-link:focus {
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
}
.gtm-directory.gtm-is-carousel .gtm-card .gtm-card-photo {
    flex:0 0 auto;
}
.gtm-directory.gtm-is-carousel .gtm-card .gtm-card-body {
    flex:1 1 auto;
    width:100%;
}
