.elementor-365 .elementor-element.elementor-element-e1cb7a8{--display:flex;}.elementor-365 .elementor-element.elementor-element-3bbbd85{--spacer-size:50px;}.elementor-365 .elementor-element.elementor-element-ef201cb{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-365 .elementor-element.elementor-element-d059ee2{text-align:center;}.elementor-365 .elementor-element.elementor-element-d059ee2 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:45px;font-weight:600;color:#FFFFFF;}.elementor-365 .elementor-element.elementor-element-4285f3b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-365 .elementor-element.elementor-element-3ee6957{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:30px 30px;--row-gap:30px;--column-gap:30px;}.elementor-365 .elementor-element.elementor-element-99ea705{--display:flex;}.elementor-365 .elementor-element.elementor-element-f2755e8 .elementor-heading-title{color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-365 .elementor-element.elementor-element-9bc586c{font-family:"Roboto", Sans-serif;font-size:17px;font-weight:400;color:#FFFFFF;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-365 .elementor-element.elementor-element-cf6f96e .elementor-icon-list-icon i{color:#FFFFFF;transition:color 0.3s;}.elementor-365 .elementor-element.elementor-element-cf6f96e .elementor-icon-list-icon svg{fill:#FFFFFF;transition:fill 0.3s;}.elementor-365 .elementor-element.elementor-element-cf6f96e{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-365 .elementor-element.elementor-element-cf6f96e .elementor-icon-list-text{color:#FFFFFF;transition:color 0.3s;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-365 .elementor-element.elementor-element-27bdc0d{--display:flex;}.elementor-365 .elementor-element.elementor-element-1a55b15 .elementor-heading-title{color:#FFFFFF;}.elementor-365 .elementor-element.elementor-element-ec5a2ed{font-family:"Roboto", Sans-serif;font-size:17px;font-weight:400;color:#FFFFFF;}.elementor-365 .elementor-element.elementor-element-a749459 .elementor-icon-list-icon i{color:#FFFFFF;transition:color 0.3s;}.elementor-365 .elementor-element.elementor-element-a749459 .elementor-icon-list-icon svg{fill:#FFFFFF;transition:fill 0.3s;}.elementor-365 .elementor-element.elementor-element-a749459{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-365 .elementor-element.elementor-element-a749459 .elementor-icon-list-text{color:#FFFFFF;transition:color 0.3s;}.elementor-365 .elementor-element.elementor-element-e066313{--display:flex;}.elementor-365 .elementor-element.elementor-element-1c125cc .elementor-heading-title{color:#FFFFFF;}.elementor-365 .elementor-element.elementor-element-fe5e3f1{font-family:"Roboto", Sans-serif;font-size:17px;font-weight:400;color:#FFFFFF;}.elementor-365 .elementor-element.elementor-element-3b22e62 .elementor-icon-list-icon i{color:#FFFFFF;transition:color 0.3s;}.elementor-365 .elementor-element.elementor-element-3b22e62 .elementor-icon-list-icon svg{fill:#FFFFFF;transition:fill 0.3s;}.elementor-365 .elementor-element.elementor-element-3b22e62{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-365 .elementor-element.elementor-element-3b22e62 .elementor-icon-list-text{color:#FFFFFF;transition:color 0.3s;}/* Start custom CSS for container, class: .elementor-element-4285f3b *//* ====== WRAP ====== */
.membresias-container{
  display:flex;
  justify-content:center;
  gap:30px;
  flex-wrap:wrap;
  margin:50px auto;
}

/* ====== CARD ====== */
.membresia-card{
  background:#111;
  padding:35px 30px;
  width:310px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.08);
  text-align:center;
  position:relative;
  transition:0.3s;
  box-shadow:0 15px 40px rgba(0,0,0,0.6);
}

.membresia-card:hover{ transform:translateY(-10px); }

.membresia-card h3{ color:#fff; margin-bottom:15px; }

.precio{
  font-size:26px;
  font-weight:800;
  color:#ff0000;
  margin-bottom:20px;
}

/* Icon List */
.membresia-card .elementor-icon-list-items{
  text-align:left;
}
.membresia-card .elementor-icon-list-text{
  color:#ddd;
}
.membresia-card .elementor-icon-list-item{
  margin-bottom:10px;
}

/* Botón */
.btn-membresia .elementor-button,
.btn-membresia{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 26px;
  background:#ff0000 !important;
  color:#fff !important;
  border-radius:12px;
  text-decoration:none;
  font-weight:900;
  border:none;
  cursor:pointer;
  transition:0.25s;
  width: 100%;
}

.btn-membresia:hover{
  background:#b80000 !important;
  transform: translateY(-2px);
}

.destacada{ border:2px solid #ff0000; }

.badge{
  position:absolute;
  top:-12px;
  right:20px;
  background:#ff0000;
  color:#fff;
  padding:6px 12px;
  font-size:12px;
  border-radius:20px;
  font-weight:800;
}

/* Oro */
.oro{ border:2px solid gold; }

.vip,
.vip .elementor-button{
  background:gold !important;
  color:#000 !important;
}
.vip:hover,
.vip .elementor-button:hover{
  background:#d4af37 !important;
}

/* ====== MODAL ====== */
.qr-modal{
  position: fixed;
  inset: 0;
  display:none;
  z-index: 999999;
}

.qr-modal.is-open{ display:block; }

.qr-modal__overlay{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,0.72);
}

.qr-modal__box{
  position: relative;
  width: min(560px, 92vw);
  margin: 6vh auto;
  background: rgba(12,12,12,0.96);
  border: 1px solid rgba(255,255,255,0.10);
  border-left: 6px solid #e10600;
  border-radius: 18px;
  box-shadow: 0 22px 70px rgba(0,0,0,0.70);
  padding: 22px 22px 18px;
}

.qr-modal__close{
  position:absolute;
  top:12px;
  right:12px;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.04);
  color:#fff;
  cursor:pointer;
}

.qr-modal__header{ margin-bottom: 14px; }
.qr-modal__title{
  color:#fff;
  font-size: 20px;
  font-weight: 900;
  letter-spacing: .3px;
}
.qr-modal__subtitle{ color: rgba(255,255,255,.80); margin-top: 6px; font-weight:700; }
.qr-modal__price{ color:#ff0000; font-weight:900; margin-top: 4px; }

.qr-modal__content{
  display:flex;
  gap:16px;
  align-items:center;
  flex-wrap:wrap;
}

.qr-modal__img{
  width: 220px;
  height: 220px;
  object-fit: contain;
  background: #fff;
  border-radius: 14px;
  padding: 10px;
}

.qr-modal__note{
  flex: 1;
  min-width: 220px;
  color: rgba(255,255,255,.88);
  line-height: 1.55;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  padding: 12px 12px;
}

.qr-modal__note a{ color:#ff0000; font-weight: 900; text-decoration:none; }
.qr-modal__note a:hover{ text-decoration: underline; }

.qr-modal__actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  margin-top: 16px;
  flex-wrap: wrap;
}

.qr-modal__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 18px;
  border-radius: 12px;
  background:#e10600;
  border: 2px solid #e10600;
  color:#fff;
  font-weight: 900;
  text-decoration:none;
  cursor:pointer;
  transition: .25s;
}
.qr-modal__btn:hover{ background:#b80000; border-color:#b80000; transform: translateY(-2px); }

.qr-modal__btn.secondary{
  background: transparent;
  border-color: rgba(255,255,255,0.18);
}
.qr-modal__btn.secondary:hover{
  background: rgba(225,6,0,0.12);
  border-color:#e10600;
}

@media (max-width: 520px){
  .qr-modal__img{ width: 100%; height: auto; }
  .qr-modal__actions{ justify-content: center; }
  .qr-modal__btn{ width: 100%; }
}/* End custom CSS */