.elementor-62 .elementor-element.elementor-element-2b8cac2{--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-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-62 .elementor-element.elementor-element-54e1bdbc .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:300;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-62 .elementor-element.elementor-element-46586c5d{margin:-10px 10px calc(var(--kit-widget-spacing, 0px) + 0px) 10px;}.elementor-62 .elementor-element.elementor-element-54e1bdbc{margin:0px 10px calc(var(--kit-widget-spacing, 0px) + 13px) 10px;}.elementor-62 .elementor-element.elementor-element-54e1bdbc .elementor-heading-title{font-size:13px;}}/* Start custom CSS for shortcode, class: .elementor-element-46586c5d *//* Contenedor general tarjeta Fideliza */
.pf-card.pf-card--fidelizacion {
  max-width: 420px;
  margin: 24px auto;
  padding: 28px 24px 24px;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.06);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Header */
.pf-card__header {
  margin-bottom: 20px;
}
.pf-card__title {
  font-size: 22px;
  font-weight: 700;
  color: #4e5254;
  margin-bottom: 4px;
}
.pf-card__subtitle {
  font-size: 20px;
  font-weight: 600;
  color: #4e5254;
}
.pf-card__email {
  font-size: 15px;
  color: #838385;
  text-decoration: underline;
  word-break: break-word;
}

/* =========================
   MEMBER ID
   ========================= */
.pf-member-id-wrap {
  margin-bottom: 18px;
  padding: 12px 14px;
  border-radius: 16px;
  background: #f7fbfc;
  border: 1px solid #e6f1f4;
}

.pf-member-id-label {
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #8e9496;
  margin-bottom: 4px;
}

.pf-member-id-value {
  font-size: 14px;
  font-weight: 700;
  color: #075674;
  word-break: break-word;
}

/* =========================
   QR FIDELIZA
   ========================= */
.pf-qr-wrap {
  margin: 20px 0 24px;
  padding: 18px;
  border-radius: 20px;
  background: #f7fbfd;
  border: 1px solid #e2eef3;
  text-align: center;
}

.pf-qr-label {
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8b949b;
  margin-bottom: 12px;
}

.pf-qr-image img {
  width: 180px;
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 12px;
  border-radius: 16px;
  background: #ffffff;
  padding: 10px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
}

.pf-qr-help {
  font-size: 14px;
  line-height: 1.45;
  color: #66727a;
}

/* Grid de datos */
.pf-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 24px;
  margin-bottom: 20px;
}
.pf-grid__item {
}
.pf-label {
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #a0a0a0;
  margin-bottom: 2px;
}
.pf-value {
  font-size: 14px;
  color: #4e5254;
}
.pf-value--big {
  font-size: 28px;
  font-weight: 700;
}

/* Progreso */
.pf-progress {
  margin-top: 8px;
}
.pf-progress__label {
  font-size: 14px;
  color: #4e5254;
  margin-bottom: 6px;
}
.pf-progress__bar {
  width: 100%;
  height: 10px;
  border-radius: 999px;
  background: #eaf9ff;
  overflow: hidden;
  margin-bottom: 6px;
}
.pf-progress__fill {
  height: 100%;
  width: 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #45acb4, #e08147);
  transition: width 0.4s ease;
}

/* Colores por nivel */
.pf-progress__fill--explorador { background: linear-gradient(90deg, #3f8fd8, #45acb4); }
.pf-progress__fill--familiar   { background: linear-gradient(90deg, #45acb4, #f9ac3d); }
.pf-progress__fill--foodie     { background: linear-gradient(90deg, #f9ac3d, #e08147); }
.pf-progress__fill--leal       { background: linear-gradient(90deg, #075674, #45acb4); }
.pf-progress__fill--embajador  { background: linear-gradient(90deg, #075674, #e08147); }
.pf-progress__fill--superfan   { background: linear-gradient(90deg, #e08147, #f9ac3d); }
.pf-progress__fill--leyenda    { background: linear-gradient(90deg, #075674, #3f8fd8); }

.pf-progress__text {
  font-size: 12px;
  color: #4e5254;
}
.pf-progress__text--small {
  font-size: 14px;
  color: #838385;
  margin-top: 2px;
}

/* Badge % completado */
.pf-progress__badge {
  display: inline-block;
  margin-top: 8px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #eaf9ff;
  color: #075674;
  font-size: 13px;
  font-weight: 600;
}

/* Mensaje por nivel */
.pf-level-message {
  margin-top: 16px;
  font-size: 13px;
  color: #4e5254;
}

/* Estados vacíos / error */
.pf-card--empty,
.pf-card--error {
  max-width: 420px;
  margin: 24px auto;
  padding: 18px 16px;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 12px 30px rgba(0,0,0,0.04);
  font-size: 14px;
  color: #4e5254;
}

/* Responsive */
@media (max-width: 480px) {
  .pf-card.pf-card--fidelizacion {
    margin: 16px 12px;
    padding: 22px 18px 18px;
  }

  .pf-grid {
    gap: 12px 16px;
  }

  .pf-value--big {
    font-size: 24px;
  }

  .pf-qr-image img {
    width: 160px;
  }
}/* End custom CSS */