.cp-ponentes-widget{position:relative;padding:60px 20px;background:transparent;overflow:hidden;}
.cp-glow{position:absolute;top:-120px;left:50%;transform:translateX(-50%);width:640px;height:640px;background:radial-gradient(circle,var(--cp-glow-color,rgba(200,30,50,.35)) 0%,transparent 70%);pointer-events:none;}
.cp-container{position:relative;max-width:1200px;margin:0 auto;z-index:1;}
.cp-header{text-align:center;margin-bottom:8px;}
.cp-title{color:#fff;font-size:clamp(22px,3vw,32px);font-weight:700;margin:0 0 10px;}
.cp-description{color:#e8c9c9;font-size:16px;margin:0;}
.cp-swipe-indicator{display:none;align-items:center;justify-content:center;gap:8px;color:#e8c9c9;font-size:13px;margin:14px 0 0;}
.cp-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin-top:36px;}
.cp-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.35);}
.cp-card-hidden{display:none;}
.cp-card-image{position:relative;width:100%;height:300px;background:#eee;}
.cp-card-image img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.cp-card-button{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);background:rgba(255,255,255,.92);border:none;border-radius:999px;padding:10px 22px;font-size:14px;font-weight:600;color:#7a1020;cursor:pointer;}
.cp-card-badges{position:absolute;top:14px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;z-index:2;}
.cp-card-flag{display:block;width:34px;height:34px;border-radius:50%;overflow:hidden;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.25);flex-shrink:0;transition:transform .2s ease;cursor:default;}
.cp-card-flag img{width:100%;height:100%;object-fit:cover;display:block;}
.cp-card-flag:hover{transform:scale(1.18);}
.cp-card-country-pill{background:#fff;color:#16305c;border:1.5px solid #16305c;border-radius:999px;padding:4px 14px;font-size:12px;font-weight:700;line-height:1.4;white-space:nowrap;}
.cp-card-info{padding:18px 16px 22px;text-align:center;}
.cp-card-name{margin:0 0 4px;font-size:17px;font-weight:700;color:#16305c;}
.cp-card-specialty{margin:0;font-size:13px;color:#c1121f;font-weight:600;}
.cp-button-wrap{text-align:center;margin-top:40px;}
.cp-show-more{background:transparent;border:1px solid #e8c9c9;color:#fff;padding:12px 30px;border-radius:999px;font-size:15px;cursor:pointer;transition:background .2s;}
.cp-show-more:hover{background:rgba(255,255,255,.1);}

@media (max-width:980px){
  .cp-swipe-indicator{display:flex;}
  .cp-button-wrap{display:none;}
  .cp-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:16px;padding-bottom:10px;}
  .cp-grid::-webkit-scrollbar{display:none;}
  .cp-card{flex:0 0 var(--cp-mobile-card-width, 78%);scroll-snap-align:center;box-shadow:0 4px 10px rgba(0,0,0,.12);}
  .cp-card-image{height:260px;}
}

/* ===========================================
   Modal interno de respaldo (solo si NO se
   seleccionó un Popup de Elementor)
   =========================================== */
.cp-ponentes-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:9999;align-items:center;justify-content:center;padding:20px;}
.cp-ponentes-modal.active{display:flex;}
.cp-modal-card{background:#fff;max-width:720px;width:100%;max-height:85vh;overflow:auto;border-radius:18px;position:relative;display:flex;flex-wrap:wrap;}
.cp-modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#333;z-index:2;}
.cp-modal-image{width:260px;flex-shrink:0;height:320px;background:#eee;}
.cp-modal-image img{width:100%;height:100%;object-fit:cover;display:block;}
.cp-modal-content{flex:1;min-width:260px;padding:24px;}
.cp-modal-country{display:flex;align-items:center;gap:6px;font-size:13px;margin-bottom:8px;}
.cp-modal-country img{width:20px;}
.cp-modal-name{margin:0 0 4px;font-size:20px;}
.cp-modal-specialty{margin:0 0 14px;color:#999;font-size:14px;}
.cp-modal-list{margin:0 0 16px;padding-left:18px;font-size:14px;color:#333;line-height:1.6;}
.cp-modal-cv{display:inline-block;background:#7a1020;color:#fff;text-decoration:none;padding:10px 20px;border-radius:999px;font-size:14px;font-weight:600;}
.cp-modal-cv:hover{background:#5c0c18;}

@media (max-width:600px){
  .cp-ponentes-modal{padding:12px;align-items:flex-end;}
  .cp-modal-card{flex-direction:column;max-height:92vh;width:100%;}
  .cp-modal-image{width:100%;height:220px;}
  .cp-modal-content{padding:18px;min-width:0;}
  .cp-modal-name{font-size:18px;}
  .cp-modal-close{top:8px;right:10px;background:rgba(255,255,255,.85);width:32px;height:32px;border-radius:50%;line-height:32px;text-align:center;font-size:22px;}
}

/* ===========================================
   Ajustes personalizados solicitados
   =========================================== */
.cp-card-button {
    left: 50% !important;
    bottom: -20px !important;
    padding: 0px 22px !important;
    border-radius: 10px !important;
    border: 1px solid #1B2B6D !important;
}
.cp-card-info {
    padding: 40px 10px 22px !important;
}
.cp-ponentes-widget {
    padding: 0px 0px !important;
}
.cp-container {
    position: relative;
    max-width: 1300px;
    margin: 0 auto;
}
button.cp-show-more {
    border-radius: 10px;
    padding: 0px 22px;
    border: 1px solid #1B2B6D !important;
}
