/* Bienvenida 5 — Bootstrap 4 ready */

/* --- Base / variables --- */
html { scroll-behavior: smooth; }

:root{
    --b5-naranja:#fd7e14;
    --b5-verde:#28a745;
    --b5-dark:#333;
}

/* Utilidades base (scope b5) */
.b5-section{ padding:80px 0; }
.section-alt{ background:#f9f9f9; }
.section-title{
    position:relative; font-size:32px; text-transform:uppercase; margin-bottom:35px; color:var(--b5-dark);
}
.section-title:after{
    content:''; display:block; width:60px; height:4px; background:var(--b5-verde); margin:15px auto 0;
}
.text-naranja{ color:var(--b5-naranja)!important; }
.text-success{ color:var(--b5-verde)!important; }

/* ---------------- HERO ---------------- */
.b5-hero-section{
    position:relative; min-height:580px; display:flex; align-items:center; justify-content:center;
    background-size:cover; background-position:center center; background-attachment:fixed;
    overflow:hidden; color:#fff;
}
.b5-hero-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.35)); }
.b5-hero-content{ position:relative; z-index:2; }
.b5-hero-title{ font-size:48px; font-weight:700; text-transform:uppercase; margin-bottom:10px; }
.b5-hero-subtitle{ font-size:20px; max-width:800px; margin:0 auto 22px; line-height:1.5; }
.b5-hero-ctas .btn{ margin:0 8px; padding:12px 28px; border-width:2px; }
.b5-hero-ctas .btn-primary{ background:var(--b5-verde); border-color:var(--b5-verde); }
.b5-hero-ctas .btn-primary:hover{ background:#218838; border-color:#1e7e34; }

/* BS4: reemplazo a btn-default */
.b5-hero-ctas .btn-outline-warning{
    color:var(--b5-naranja);
    border-color:var(--b5-naranja);
    background:transparent;
}
.b5-hero-ctas .btn-outline-warning:hover{
    color:#e67e22;
    background:rgba(255,255,255,.08);
    border-color:#e67e22;
}

/* Badges laterales */
.b5-hero-badges{
    position:absolute; right:20px; top:20px; z-index:2; display:flex; flex-direction:column; gap:10px;
}
.b5-hero-badge{
    background:rgba(0,0,0,.45); color:#fff; border:1px solid rgba(255,255,255,.15);
    padding:10px 14px; border-radius:6px; display:flex; align-items:center; gap:8px; backdrop-filter: blur(2px);
}

/* Decoración flotante */
.b5-float{ position:absolute; width:120px; height:120px; border-radius:50%; opacity:.12; z-index:1; }
.b5-float-1{ background:#9be7b1; top:10%; left:5%; animation:b5-float 14s ease-in-out infinite; }
.b5-float-2{ background:#ffe0c2; bottom:8%; right:8%; animation:b5-float 18s ease-in-out infinite reverse; }
@keyframes b5-float{
    0%{ transform:translateY(0) translateX(0) scale(1); }
    50%{ transform:translateY(-25px) translateX(10px) scale(1.05); }
    100%{ transform:translateY(0) translateX(0) scale(1); }
}

/* --------------- HIGHLIGHTS --------------- */
#b5-highlights .b5-icon-circle{
    width:80px; height:80px; border-radius:50%; margin:0 auto 12px;
    display:flex; align-items:center; justify-content:center; color:#fff; font-size:34px;
    background:var(--b5-verde); box-shadow:0 6px 18px rgba(40,167,69,.25);
}
.mt-5-neg { margin-top:-50px; }
.mb-5-pos { margin-bottom:50px; }
#b5-highlights h4{ margin-top:6px; font-weight:700; color:var(--b5-dark); }

/* ---------------- ABOUT ---------------- */
.b5-about-row{ display:flex; flex-wrap:wrap; align-items:center; }
.b5-about-img{ text-align:center; }
.b5-about-text{ color:#555; line-height:1.6; }
.b5-list{ margin-top:12px; padding-left:18px; }
.b5-list li{ margin-bottom:8px; }

/* --------------- CARDS (Ejes) --------------- */
.b5-card{
    background:#fff; border-radius:8px; padding:24px 20px; text-align:center;
    box-shadow:0 2px 16px rgba(0,0,0,.08); transition:transform .25s ease, box-shadow .25s ease; height:100%;
}
.b5-card:hover{ transform:translateY(-6px); box-shadow:0 10px 22px rgba(0,0,0,.12); }
.b5-card-ico{
    width:70px; height:70px; border-radius:50%; margin:0 auto 12px; display:flex; align-items:center; justify-content:center;
    background:linear-gradient(135deg, var(--b5-verde), #46c466); color:#fff; font-size:30px;
}
.b5-card h4{ margin:8px 0 6px; font-weight:700; color:var(--b5-dark); }
.b5-card p{ color:#666; }

/* --------------- TEAM --------------- */
.b5-member{ position:relative; overflow:hidden; border-radius:8px; box-shadow:0 2px 16px rgba(0,0,0,.08); }
.b5-member img{ width:100%; height:260px; object-fit:cover; display:block; }
.b5-member-overlay{
    position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.65));
    color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:flex-end;
    padding:18px; opacity:0; transition:opacity .25s ease;
}
.b5-member:hover .b5-member-overlay{ opacity:1; }

/* --------------- PARTNERS / marquee --------------- */
.b5-partners{ position:relative; background:#f4fff7; padding:50px 0 70px; overflow:hidden; }
.b5-partners-overlay{
    position:absolute; inset:0; background:linear-gradient(180deg, rgba(219,244,225,.45), rgba(219,244,225,.2)); pointer-events:none;
}
.b5-marquee{ position:relative; margin-top:10px; }
.b5-track{ display:flex; gap:40px; width:max-content; animation:b5-scroll 24s linear infinite; padding:12px 0; }
.b5-logo{ width:160px; height:70px; display:flex; align-items:center; justify-content:center; filter:grayscale(.15); opacity:.9; }
.b5-logo img{ max-width:100%; max-height:100%; object-fit:contain; }
@keyframes b5-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

/* --------------- CTA final --------------- */
.b5-cta{ position:relative; background:linear-gradient(135deg, #1f753a, #28a745); color:#fff; padding:70px 0; overflow:hidden; }
.b5-cta-overlay{ position:absolute; inset:0; background:radial-gradient(ellipse at 20% 30%, rgba(255,255,255,.15), transparent 55%); }
.b5-cta h3{ position:relative; z-index:1; font-weight:600; margin-bottom:20px; }
.b5-cta .btn-primary{ background:#fff; color:#1a6b35; border-color:#fff; }
.b5-cta .btn-primary:hover{ background:#e8ffe8; border-color:#e8ffe8; }

/* Hover utilitario */
.zoom-hover{ transition: transform .3s ease-in-out; transform-origin:center; }
.zoom-hover:hover{ transform: scale(1.12); }

/* --------------- Responsive básicos --------------- */
@media (max-width: 991px){
    .b5-hero-title{ font-size:40px; }
    .b5-member img{ height:240px; }
}
@media (max-width: 767px){
    .b5-hero-section{ min-height:420px; background-attachment:scroll; }
    .b5-hero-title{ font-size:32px; }
    .b5-hero-subtitle{ font-size:16px; }
    .b5-hero-badges{ position:absolute; right:auto; left:50%; transform:translateX(-50%); top:auto; bottom:16px; flex-direction:row; }
    .b5-logo{ width:120px; height:56px; }
    .b5-card{ padding:20px 16px; }
}

/* --- Misión / Visión --- */
.b5-miv-section .b5-miv-box{
    background:#fff; border-radius:10px; padding:26px 22px; box-shadow:0 2px 16px rgba(0,0,0,.08);
    height:100%; transition:transform .25s ease, box-shadow .25s ease; text-align:left;
}
.b5-miv-section .b5-miv-box:hover{ transform:translateY(-6px); box-shadow:0 10px 22px rgba(0,0,0,.12); }
.b5-miv-section .b5-icon-circle{
    width:72px; height:72px; border-radius:50%; display:flex; align-items:center; justify-content:center;
    font-size:32px; color:#fff; margin-bottom:14px; box-shadow:0 6px 18px rgba(0,0,0,.12);
}
.b5-ico-green{ background: linear-gradient(135deg, var(--b5-verde), #46c466); }
.b5-ico-orange{ background: linear-gradient(135deg, var(--b5-naranja), #ff9a3d); }
.b5-ico-blue {background: linear-gradient(135deg, #007bff, #33a0ff);box-shadow: 0 6px 18px rgba(0, 123, 255, 0.25);}

.b5-miv-title{ margin:6px 0 8px; font-weight:700; color:var(--b5-dark); text-transform:uppercase; letter-spacing:.3px; }
.b5-miv-text{ color:#555; line-height:1.65; margin:0; }
@media (max-width: 767px){
    .b5-miv-section .b5-miv-box{ padding:22px 18px; }
    .b5-miv-section .b5-icon-circle{ width:64px; height:64px; font-size:28px; }
}

/* --- Timeline / Historia --- */
.timeline { list-style:none; padding:0; position:relative; }
.timeline:before {
    content:''; position:absolute; top:0; bottom:0; left:50%; width:2px; background:#ddd;
}
.timeline > li { position:relative; margin-bottom:50px; }
.timeline-badge {
    position:absolute; top:0; left:50%; width:40px; height:40px; margin-left:-20px;
    background:var(--b5-naranja); border-radius:50%; color:#fff; text-align:center; line-height:40px;
}
.timeline-panel {
    position:relative; width:45%; padding:20px; background:#fff; border:1px solid #ddd; border-radius:4px;
}
.timeline > li:nth-child(odd)  .timeline-panel { left:0; }
.timeline > li:nth-child(even) .timeline-panel { left:55%; }
@media (max-width: 767px){
    .timeline-panel { width:90%; left:5% !important; }
}

/* Pequeños ajustes */
.mt-5-neg { margin-top:-20px; }
#history-cloud, #b5-history { padding:50px 0; }

/* --- Equipo (cards) --- */
.team-section{ padding:80px 0; }
.team-section .section-title{ font-size:32px; text-transform:uppercase; margin-bottom:10px; color:#333; }
.team-section .section-subtitle{ color:#777; margin-bottom:40px; }
.team-section .team-item{
    background:#fff; border-radius:6px; box-shadow:0 2px 15px rgba(0,0,0,0.1); overflow:hidden; margin-bottom:30px;
    transition: transform .3s ease, box-shadow .3s ease;
}
.team-section .team-item:hover{ transform:translateY(-5px); box-shadow:0 8px 20px rgba(0,0,0,0.12); }
.team-section .team-item img{
    width:100%; height:250px; object-fit:contain; background-color:#f9f9f9;
}
.team-section .team-body{ padding:20px; text-align:center; }
.team-section .team-body h4{ margin-bottom:10px; font-size:18px; text-transform:uppercase; color:#333; }
.team-section .team-body hr{ width:40px; border:0; border-top:2px solid #28a745; margin:10px auto 20px; }
.team-section .team-body p{ color:#777; font-size:14px; margin-bottom:20px; }

/* Botón “Leer más” */
.btn-readmore{
    display:inline-block; padding:6px 20px; font-size:14px; line-height:1.5; color:#28a745;
    border:2px solid #28a745; border-radius:4px; background:transparent; transition:all .3s ease;
}
.btn-readmore:hover, .btn-readmore:focus{ background:#28a745; color:#fff; text-decoration:none; }

/* Grid flex para #b5-topics */
.b5-topics-row{ display:flex; flex-wrap:wrap; margin-left:-15px; margin-right:-15px; }
.b5-topics-col{ padding-left:15px; padding-right:15px; box-sizing:border-box; width:100%; }
@media (min-width:768px){ .b5-topics-col{ width:50%; } }
@media (min-width:992px){ .b5-topics-col{ width:25%; } }

/* --- Galería (Owl + Magnific) --- */
.gallery-section{ position:relative; overflow:hidden; padding:100px 0; }
.gallery-section::before{
    content:''; position:absolute; inset:0; background:url('../img/verdeclaro.jpg') center/cover no-repeat;
    filter: blur(4px) brightness(0.9); transform:scale(1); z-index:-2;
}
.gallery-section::after{
    content:''; position:absolute; inset:0; background-color: rgba(219,244,225,0.5); z-index:-1;
}
.gallery-section .container{ position:relative; z-index:1; }
.img-wrapper{ position:relative; overflow:hidden; border-radius:4px; }
.img-wrapper img{ width:100%; height:250px; object-fit:cover; transition: transform .3s ease; }
.img-wrapper:hover img{ transform: scale(1.05); }
.img-overlay{
    position:absolute; inset:0; background: rgba(0,0,0,0.4);
    display:flex; align-items:center; justify-content:center; opacity:0; transition: opacity .3s ease; color:#fff; font-size:2em;
}
.img-wrapper:hover .img-overlay{ opacity:1; }

.owl-nav button{
    background: rgba(0,0,0,0.3); padding:10px; border-radius:50%; color:#fff; border:none; font-size:24px; transition: background .3s ease;
}
.owl-nav button:hover{ background: rgba(0,0,0,0.5); }
.owl-dots{ text-align:center; margin-top:30px; position:relative; z-index:1; }
.owl-dots .owl-dot{ display:inline-block; margin:0 5px; }
.owl-dots .owl-dot span{
    display:block; width:12px; height:12px; border-radius:50%; background: rgba(255,255,255,0.5);
    transition: background .3s ease, width .3s ease;
}
.owl-dots .owl-dot.active span{ background:#fff; width:24px; }
@media (max-width:767px){
    .gallery-section{ padding:70px 0; }
    .img-wrapper img{ height:200px; }
}

/* --- ¿Quiénes Somos? --- */
.about-row{ display:flex; flex-wrap:wrap; align-items:center; }
.about-img{ text-align:center; margin-bottom:30px; }
.about-img img{ width:200px; height:200px; border-radius:50%; object-fit:cover; }
.about-text h3, .about-text h4{ margin-top:20px; font-weight:600; }
.about-text p{ color:#555; line-height:1.6; }
.about-text ul{ margin-top:15px; padding-left:20px; }
.about-text li{ margin-bottom:8px; }

/* --- Colaboradores --- */
.b5-collab-card{ background:#fff; border-radius:10px; box-shadow:0 2px 16px rgba(0,0,0,.08); padding:28px 24px; }
.b5-collab-title{ margin:0 0 16px; font-weight:700; color:#333; }
.b5-collab-subtitle{ margin:10px 0 16px; font-size:16px; font-weight:600; color:#333; }
.b5-collab-list p{ margin:6px 0; color:#555; }
@media (max-width:767px){ .b5-collab-card{ padding:22px 18px; } }
#b5-collabs h3{ margin-top:0; margin-bottom:25px; font-weight:700; color:#333; }
#b5-collabs .b5-collab-item{ margin:8px 0; color:#555; }
@media (max-width:767px){ #b5-collabs .col-sm-4{ margin-bottom:10px; } }

/* --- Colaboradores (cards con logo + link) --- */
#b5-collabs .collab-col{ margin-bottom:22px; }

#b5-collabs .collab-card{
    background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:10px;
    box-shadow:0 6px 18px rgba(0,0,0,.08);
    padding:14px; display:flex; gap:14px; align-items:center; height:100%;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    cursor:pointer; outline:none;
}
#b5-collabs .collab-card:hover,
#b5-collabs .collab-card:focus{
    transform: translateY(-4px);
    box-shadow:0 12px 28px rgba(0,0,0,.12);
    border-color:rgba(0,0,0,.10);
}

#b5-collabs .collab-logo{
    width:64px; height:64px; border-radius:8px; background:#f7f7f7; flex:0 0 64px;
    display:flex; align-items:center; justify-content:center; overflow:hidden;
}
#b5-collabs .collab-logo img{ max-width:100%; max-height:100%; object-fit:contain; }

#b5-collabs .collab-body{ min-width: 0; } /* permite truncado */
#b5-collabs .collab-title{
    margin:0; font-size:14px; line-height:1.35; text-transform:uppercase; color:#333;
}
#b5-collabs .collab-title a{ color:inherit; text-decoration:none; border-bottom:1px dotted #28a745; }
#b5-collabs .collab-title a:hover{ color:#28a745; border-bottom-color:transparent; }

#b5-collabs .collab-meta{
    margin-top:4px; font-size:12px; color:#666; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

/* Chip opcional (país, área, etc.) */
#b5-collabs .collab-chip{
    display:inline-block; font-size:11px; color:#1a6b35; background:rgba(40,167,69,.1);
    border:1px solid rgba(40,167,69,.25); border-radius:999px; padding:2px 8px; margin-top:6px;
}


/* --- FAQ (Accordion BS4) --- */
#b5-faq .card{ border-color:#e5e5e5; }
#b5-faq .card-header{ padding:0; cursor:pointer; background:#fff; border-bottom-color:#eaeaea; }
#b5-faq .card-header .btn-link{
    display:block; width:100%; text-align:left; padding:12px 15px; color:inherit; text-decoration:none;
}
#b5-faq .card-header .btn-link:hover{ background:#f8f8f8; text-decoration:none; }
#b5-faq .card-header .btn-link[aria-expanded="true"]{ background:#f5f5f5; }
#b5-faq .card-body{ line-height:1.6; }

/* --- Mapa (Leaflet) --- */
#b5-map-canvas{
    height:420px; border-radius:8px; box-shadow:0 2px 16px rgba(0,0,0,.08);
}
.m-t-15{ margin-top:15px; }
.m-t-5{ margin-top:5px; }

/* Leaflet popup theming */
.leaflet-popup-content-wrapper{
    background:#fff; border-radius:12px; border:1px solid rgba(0,0,0,.06); box-shadow:0 10px 30px rgba(0,0,0,.12);
}
.leaflet-popup-tip{ background:#fff; box-shadow:0 8px 20px rgba(0,0,0,.10); }
.leaflet-popup-content{ margin:14px 16px; font-size:14px; line-height:1.5; color:#333; }
.leaflet-popup-content strong{ display:block; font-size:15px; margin-bottom:8px; color:var(--b5-dark); }
.leaflet-container a.leaflet-popup-close-button{ color:#999; }
.leaflet-container a.leaflet-popup-close-button:hover{ color:#666; }

.leaflet-popup .btn{
    display:block; width:100%; text-align:center; border-width:2px; border-radius:999px;
    font-weight:600; box-shadow:0 4px 12px rgba(40,167,69,.18);
    transition: transform .1s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
.leaflet-popup .btn:active{ transform: translateY(1px); }

/* BS4: usar btn-sm; dejamos fallback para btn-xs por compatibilidad */
.leaflet-popup .btn.btn-sm,
.leaflet-popup .btn.btn-xs{
    padding:8px 14px; font-size:13px; line-height:1.3;
}
.leaflet-popup .btn-primary{
    background:var(--b5-verde); border-color:var(--b5-verde); color:#fff;
}
.leaflet-popup .btn-primary:hover{
    background:#218838; border-color:#1e7e34; box-shadow:0 8px 18px rgba(40,167,69,.28);
}

/* --- Controles Leaflet --- */
.leaflet-control-zoom a{
    border-radius:6px !important; border-color: rgba(0,0,0,.08) !important; box-shadow: 0 4px 12px rgba(0,0,0,.10);
}
.leaflet-control-zoom a:hover{ background:#f5fff8 !important; color:#1e7e34 !important; }

/* Ancla cómoda al hacer scroll con #hash cuando hay header fijo */
.b5-section{ scroll-margin-top:80px; }


/* ===== FAQ (BS4) – aspecto limpio + caret ===== */
#b5-faq .accordion .card{
    border:1px solid #e9ecef;
    border-radius:6px;
    overflow:hidden;
}
#b5-faq .accordion .card + .card{ margin-top:10px; }

#b5-faq .card-header{
    background:#fff;
    border-bottom:1px solid #eef1f3;
}
#b5-faq .card-header .btn-link{
    color:#333;                 /* evita azul del link */
    text-decoration:none;       /* sin subrayado */
    padding:12px 15px;          /* click área amplia */
}
#b5-faq .card-header .btn-link:hover{
    background:#f8f9fa;
    text-decoration:none;
}
#b5-faq .card-header .btn-link[aria-expanded="true"]{
    background:#f5f6f7;
}

/* Título + caret a la derecha */
#b5-faq .faq-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
#b5-faq .faq-title{
    font-weight:600;
    line-height:1.4;
}

/* Caret puro CSS (sin iconos) */
#b5-faq .faq-caret{
    width:16px; height:16px; position:relative; flex:0 0 16px;
}
#b5-faq .faq-caret::before{
    content:''; position:absolute; inset:0;
    margin:auto;
    width:8px; height:8px;
    border-right:2px solid #6c757d;
    border-bottom:2px solid #6c757d;
    transform:rotate(-45deg);           /* flecha apuntando a la derecha/abajo */
    transition:transform .2s ease;
}
/* Gira cuando está abierto */
#b5-faq .btn-link[aria-expanded="true"] .faq-caret::before{
    transform:rotate(45deg);
}

/* Cuerpo del FAQ */
#b5-faq .card-body{
    line-height:1.6;
    color:#555;
}

/* --- Tarjetita para la sección ¿Quiénes Somos? --- */
.b5-about-card{
    background:#fff;
    border:1px solid rgba(0,0,0,.06);
    border-radius:12px;
    box-shadow:0 10px 28px rgba(0,0,0,.10);
    padding:26px 22px;
    position:relative;
    overflow:hidden;
    transition:transform .25s ease, box-shadow .25s ease;
}
.b5-about-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 36px rgba(0,0,0,.12);
}

/* Detalle superior (acento verde) */
.b5-about-card::before{
    content:'';
    position:absolute;
    top:0; left:0; right:0;
    height:6px;
    background:linear-gradient(90deg, var(--b5-verde), #46c466);
}

/* Imagen dentro de la tarjetita */
.b5-about-card .about-img img{
    width:180px; height:180px; object-fit:cover;
    border-radius:16px;
    box-shadow:0 8px 20px rgba(0,0,0,.12);
    border:3px solid #fff;
}

/* Tipografía dentro de la tarjeta */
.b5-about-card .about-text h3{ margin-top:6px; font-weight:700; color:var(--b5-dark); }
.b5-about-card .about-text h4{ margin-top:18px; font-weight:700; color:var(--b5-dark); }
.b5-about-card .about-text p{ color:#555; line-height:1.7; }
.b5-about-card .about-text ul{ margin-top:10px; padding-left:18px; }
.b5-about-card .about-text li{ margin-bottom:8px; }

/* Chip/etiqueta flotante opcional */
.b5-about-chip{
    position:absolute; top:12px; right:12px;
    background:rgba(40,167,69,.1); color:var(--b5-verde);
    border:1px solid rgba(40,167,69,.25);
    padding:6px 10px; font-size:12px; font-weight:600; border-radius:999px;
}

/* Responsive fino */
@media (max-width: 767px){
    .b5-about-card{ padding:20px 16px; }
    .b5-about-card .about-img{ margin-bottom:16px; }
    .b5-about-card .about-img img{ width:150px; height:150px; border-radius:14px; }
}


/* --- Flip cards (Equipo) --- */
.team-section .team-item{
    position: relative;
    height: 380px;                 /* asegura alto fijo para el efecto 3D */
    cursor: pointer;               /* indica que es interactiva */
    will-change: transform;
}
@media (max-width: 767px){
    .team-section .team-item{ height: 360px; }
}

/* Contenedor 3D */
.team-section .team-item .flip-inner{
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    transition: transform .6s cubic-bezier(.2,.6,.2,1);
}

/* Estados */
.team-section .team-item.is-flipped .flip-inner{ transform: rotateY(180deg); }

/* Caras */
.team-section .team-item .flip-face{
    position: absolute;
    inset: 0;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    display: flex;
    flex-direction: column;
    border-radius: 6px;            /* coincide con tu .team-item */
    overflow: hidden;
}

/* Frente: reusa tal cual tu contenido */
.team-section .team-item .flip-front{
    transform: rotateY(0);
    background: #fff;
}

/* Reverso */
.team-section .team-item .flip-back{
    transform: rotateY(180deg);
    background: #fff;
    padding: 18px;
    text-align: left;
}

/* Bio del reverso */
.team-section .team-back h4{
    margin-bottom: 6px;
    font-size: 18px;
    text-transform: uppercase;
    color:#333;
}
.team-section .team-back hr{
    width: 40px; border: 0; border-top: 2px solid #28a745; margin:10px 0 12px;
}
.team-section .team-bio{
    color:#555; font-size:14px; line-height:1.6; margin-bottom:14px;
}
.team-section .flip-hint{
    color:#999; font-size:12px; display:block; margin-top:6px;
}

/* Botón cerrar del reverso (reusa tu btn-readmore) */
.team-section .flip-close{
    margin-top:auto;                /* empuja hacia abajo si la bio es corta/larga */
}


/* Modal “Sabías que?” */
.sabias-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    inset: 0;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(4px);
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.sabias-content {
    background: #fff;
    border-radius: 16px;
    padding: 30px 40px;
    max-width: 500px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,0.25);
    position: relative;
    animation: fadeInUp 1s ease;
}

.sabias-title {
    color: #1a6b35;
    font-weight: 700;
    margin-bottom: 12px;
}

.sabias-text {
    color: #333;
    font-size: 15px;
    line-height: 1.6;
}

.sabias-close {
    position: absolute;
    top: 10px;
    right: 14px;
    font-size: 24px;
    color: #999;
    background: none;
    border: none;
    cursor: pointer;
    transition: color .2s ease;
}

.sabias-close:hover {
    color: #333;
}

@keyframes fadeInUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}
