/* General Styles */
.pb-about-page {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    color: #333;
    min-height: 100vh;
    padding: 3rem 0;
}
.pb-about-container {
    max-width: 896px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.info-contact,
.social-list-sm {
  text-align: left !important;
  justify-content: flex-start !important;
}

.social-list-sm {
  display: flex;
  gap: 1rem;
  padding: 0;
}
a.boton-asesoria:hover {
  background-color: #C99482;
  color: white;
}

/* Colors */
.pb-text-primary { color: #1a202c; }
.pb-text-accent { color: #d69e2e; }
.pb-text-trust { color: #4B739B; }
.pb-text-muted-foreground { color: #4a5568; }
.pb-bg-secondary { background-color: rgba(237, 242, 247, 0.5); }
.pb-bg-card { background-color: #fff; }
.pb-border-border { border-color: #e2e8f0; }
.pb-border-accent { border-color: #d69e2e; }
.pb-border-trust { border-color: #4B739B; }
.pb-border-primary { border-color: #1a202c; }
.pb-bg-gradient { 
    background: linear-gradient(to bottom right, rgba(214, 158, 46, 0.05), rgba(43, 108, 176, 0.05)); 
}

/* Typography */
.pb-about-title, .pb-section-title {
    font-family: 'Crimson Text', serif;
    font-weight: 600;
    color: #1a202c;
}
.pb-about-title {
    font-size: 3.125rem;
    margin-bottom: 1.5rem;
    text-align: center;
}
.pb-section-title {
    font-size: 1.875rem;
    margin-bottom: 1.5rem;
    text-align: left;
}
.pb-cta-section .pb-section-title {
    text-align: center;
}
.pb-about-subtitle, .pb-section-text, .pb-item-text, .pb-cta-text {
    font-size: 1.125rem;
    color: #4a5568;
    text-align: justify;
}
.pb-about-subtitle {
    max-width: 640px;
    margin: 0 auto;
}
.pb-item-title, .pb-card-title, .pb-specialization-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1a202c;
    margin-bottom: 0.5rem;
    text-align: left;
}
.pb-item-meta, .pb-card-meta {
    color: #4a5568;
    margin-bottom: 0.75rem;
    text-align: left;
}
.pb-card-subtext {
    font-size: 0.875rem;
    color: #4a5568;
    text-align: left;
}
.pb-blockquote {
    font-family: 'Crimson Text', serif;
    font-style: italic;
    font-size: 1.25rem;
    color: #1a202c;
    border-left: 4px solid #d69e2e;
    padding-left: 1.5rem;
    margin: 2rem 0;
    text-align: left;
}

/* Layout */
.pb-about-header {
    text-align: center;
    margin-bottom: 4rem;
}
.pb-about-content {
    max-width: 100%;
}
.pb-philosophy-section, .pb-reflection-section {
    border-radius: 1rem;
    padding: 2rem;
    margin-bottom: 3rem;
    background-color: #F6ECE9; /* Light gray background */
    text-align: justify;
}
@media (min-width: 1024px) {
    .pb-philosophy-section, .pb-reflection-section {
        padding: 3rem;
    }
}
.pb-experience-section {
    margin-bottom: 3rem;
}
.pb-experience-item {
    border-left: 4px solid;
    padding-left: 1.5rem;
    margin-bottom: 2rem;
    text-align: justify !important;
}
.pb-education-grid, .pb-specialization-grid {
    display: grid;
    gap: 1.5rem;
    margin-bottom: 3rem;
}
@media (min-width: 768px) {
    .pb-education-grid, .pb-specialization-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
.pb-education-card {
    background-color: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    padding: 1.5rem;
}
.pb-specialization-list {
    list-style: none;
    padding: 0;
}
.pb-specialization-list li {
    color: #4a5568;
    margin-bottom: 0.5rem;
    text-align: left;
}
.pb-specialization-list li::before {
    content: "•";
    margin-right: 0.5rem;
}
.pb-cta-section {
    text-align: center;
}
.pb-cta-text {
    max-width: 640px;
    margin: 0 auto 2rem;
    text-align: center;
}

/* Buttons */
.pb-btn {
    display: inline-flex;
    align-items: center;
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 500;
    border-radius: 0.375rem;
    transition: all 0.2s ease;
    cursor: pointer;
}
.pb-btn-primary {
    background-color: #1a202c;
    color: #fff;
    border: 1px solid #1a202c;
}
.pb-btn-primary:hover {
    background-color: #2d3748;
    border-color: #2d3748;
}
.pb-btn-outline {
    background-color: transparent;
    border: 1px solid;
}
.pb-btn-outline-accent {
    border-color: #d69e2e;
    color: #d69e2e;
}
.pb-btn-outline-accent:hover {
    background-color: #d69e2e;
    color: #fff;
}
.pb-btn-outline-trust {
    border-color: #2b6cb0;
    color: #2b6cb0;
}
.pb-btn-outline-trust:hover {
    background-color: #2b6cb0;
    color: #fff;
}
.pb-btn-icon {
    width: 1rem;
    height: 1rem;
    margin-right: 0.5rem;
}
.pb-cta-buttons {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
}
@media (min-width: 640px) {
    .pb-cta-buttons {
        flex-direction: row;
    }
}
.pb-languages-grid {
    display: flex;
    flex-wrap: nowrap;
    gap: 2rem;
    justify-content: center;
    align-items: center;
    margin-bottom: 2rem;
}
@media (max-width: 767px) {
    .pb-languages-grid {
        flex-direction: column;
        gap: 1.5rem;
    }
}
.pb-language-card {
    background-color: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    padding: 1.5rem;
    display: flex;
    align-items: center;
    max-width: 200px;
    width: 100%;
}
.pb-language-icon {
    margin-right: 1rem;
}
.pb-icon {
    width: 2rem;
    height: 2rem;
    color: #4a5568;
}
/* Sección genérica con espaciado vertical (si aún no la tienes) */
.pb-section {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (max-width: 767px) {
  .pb-section {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

/* Lista de membresías */
.pb-membership-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 1.5rem;
}

@media (min-width: 768px) {
  /* Dos columnas en pantallas medianas y grandes */
  .pb-membership-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

.pb-membership-item {
  border-left: 4px solid;      /* El color lo da la clase pb-border-... */
  padding-left: 1.5rem;
  font-size: 1rem;
  color: #4a5568;              /* Texto gris medio coherente con tu esquema */
  line-height: 1.6;
}
/* Contenedor de logos */
.pb-memberships-logos {
  display: flex;
  flex-wrap: wrap;           /* se acomodan si la línea se hace pequeña */
  gap: 2rem;                 /* separación uniforme */
  justify-content: center;
  align-items: center;
  margin-bottom: 2rem;       /* espacio inferior para no pegarse a la siguiente sección */
}

/* Cada logo */
.pb-logo img {
  .pb-logo img { max-width: 100%; height: auto; }
  filter: grayscale(50);      
  transition: transform 0.2s ease;
}

.pb-logo:hover img {
  transform: scale(1.05);    /* ligero zoom al pasar el cursor */
}

/* Ajuste para pantallas pequeñas */
@media (max-width: 767px) {
  .pb-logo img {
    height: 70px;
  }
}

/* Contenedor no flotante, con separación entre filas y columnas */
.a2a_kit.a2a_default_style{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;         /* row-gap  column-gap */
}

/* Anula márgenes raros del plugin y homogeniza el hitbox */
.a2a_kit.a2a_default_style a{
  display: inline-flex;
  margin: 0 !important;
  line-height: 1;         /* evita “saltos” verticales */
}

/* Opcional: en móvil, un pelín más de aire */
@media (max-width: 480px){
  .a2a_kit.a2a_default_style{
    gap: 12px 16px;
  }
}
