/* En tu archivo CSS principal */
body {
    font-display: swap;
    font-size: 16px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    hanging-punctuation: first last;
    font-feature-settings: 'zero' on, 'cv05' on, 'cv08' on, 'cv09' on;
}


/* Especificar tamaños para contenedores de texto */
h1, h2, h3, p {
    min-height: 1.2em;
}

/* Para iconos */
[class*="fa-"], .stmlms-icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    min-width: 1em;
    text-align: center;
}

/* CSS Document */
#pmpro_payment_method span a {
  background-position: left bottom;
  background-size: contain;
  background-repeat: no-repeat; 
  display: inline-block;
  margin-left: 1%;
  max-width: 300px;
  padding-bottom: 60px;
  text-align: left;
  width: 90%;
}
#pmpro_payment_method span.gateway_paypalexpress {
  margin: 2em 0 0;
}
#pmpro_payment_method span.gateway_authorizenet a, 
#pmpro_payment_method span.gateway_braintree a,
#pmpro_payment_method span.gateway_cybersource a,
#pmpro_payment_method span.gateway_paypal a,
#pmpro_payment_method span.gateway_stripe a, 
#pmpro_payment_method span.gateway_ a, 
#pmpro_payment_method span.gateway_twocheckout a {
  background-image: url(assets/css/images/pay-with-credit-cards.png);
}
#pmpro_payment_method span.gateway_paypalexpress a {
  background-image: url(assets/css/images/pay-with-paypal.png);
}

.pmpro_checkout-h2-msg a {
  color: red !important;
}

@media (min-width: 769px) {
  #pmpro_payment_method .pmpro_checkout-fields {
    column-gap: 2em;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
  }
  #pmpro_payment_method span {
    flex: 1;
  }
  #pmpro_payment_method span.gateway_paypalexpress {
    margin-top: 0;
  }
}

/* CSS Login */
body.page-id-6:not(.logged-in) {
    background: url("https://opocamp.com/wp-content/uploads/2024/04/Opocampbuenassisima-18-18-scaled.webp") no-repeat center center fixed;
    background-size: cover;
    min-height: 100vh;
}
body.page-id-6:not(.logged-in) .masterstudy__login-page-form {
  background-color: white;
  padding: 40px 0;
  border-radius: 10px;
}
body.page-id-6:not(.logged-in) a.masterstudy-button.masterstudy-button_style-primary {
  background: #A83A65;
  border-radius: 20px;
}
body.page-id-6:not(.logged-in) a.masterstudy-button.masterstudy-button_style-primary:hover {
  background: #852A4E;
}
/* Estilo para la sección de cambio de cuenta / contraseña */
body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px; /* espacio entre los bloques */
  margin-top: 20px;
  padding: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

body.page-id-6:not(.logged-in) .masterstudy-authorization__switch {
    margin-top: 0 !important;
}

body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-account {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  align-items: center;
}

body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-account-title {
  font-weight: 600;
  margin-right: 4px;
}

body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-account-link {
  font-weight: 700;
  color: #A83A65;
  text-decoration: none;
  padding: 2px 6px;
  border-radius: 4px;
  transition: background-color 0.15s ease;
}

body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-account-link:hover {
  background-color: rgba(168, 58, 101, 0.08);
}

body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-lost-pass {
  font-size: 14px;
  color: #555;
  text-align: center;
}

/* En escritorio, los mostramos en fila con separadores */
@media (min-width: 768px) {
  body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-wrapper {
    flex-direction: row;
    justify-content: space-between;
  }
  body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-lost-pass {
    margin-left: 20px;
  }
}

body.page-id-6:not(.logged-in) .masterstudy-authorization__switch-account a.masterstudy-authorization__switch-account-link {
  font-weight: bold;
  color: #a86880;
}
body.page-id-6:not(.logged-in) #wrapper {
  padding-top: 0;
}
body.page-id-6:not(.logged-in) .masterstudy__login-page {
  padding: 70px 0;
}

/* OCULTAR BOTON RESULTADOS FILTRO */
.elementor-element.elementor-element-0708b0e .ms_lms_courses_archive__filter_actions input[type=submit] {
  display: none;
}

/* ESTILO FILTRO*/ 
.ms_lms_courses_archive__filter_actions {
  padding: 0 25px 20px;
}

/* ESTILO ETIQUETA ESTADO*/
.ms_lms_courses_card_item_status span {
  font-size: 14px !important;
  font-weight: 500 !important;
}


.ms_lms_courses_card_item_status {
  color: white;
  font-size: 14px;
  padding: 10px;
}

/* ESTILO MATERIAS CARDS*/
.ms_lms_courses_card_item_info_enlace {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ms_lms_courses_card_item_info_wishlist .stm-lms-wishlist {
  z-index: 5;
}

.cancel-button {
  border-radius: 4px !important;
}

.stm_lms_instructor_courses__single--enroll .btn span {
  font-size: 10px !important;  /* Tamaño normal */
}


/* Estilo para el enlace de "Renovar" */
.stm-lms-user-memberships #pmpro_account #pmpro_account-membership table tr td:last-child .pmpro_actionlinks a#pmpro_actionlink-renew {
  background-color: #19C895;
  color: white;
  padding: 18px 24px;
  font-size: 16px;
  text-align: center;
  border-radius: 4px;
  display: inline-block;
  text-decoration: none;
  transition: background-color 0.3s ease;
}
.stm-lms-user-memberships #pmpro_account #pmpro_account-membership table tr td:last-child .pmpro_actionlinks a#pmpro_actionlink-renew:hover {
  background-color: #17a777;
}

/* Estilos generales para las tablas */
.stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table,
.stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 20px 0 !important;
  box-sizing: border-box;
  font-size: 14px !important;
}

/* Estilo para las cabeceras de la tabla */
.stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table th,
.stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table th {
  background-color: #f4f4f4 !important;
  font-weight: bold !important;
  padding: 12px 8px !important;
  text-align: left !important;
  border: 1px solid #ddd !important;
}

/* Estilo para las celdas de la tabla */
.stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table td,
.stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table td {
  background-color: #fff !important;
  padding: 12px 8px !important;
  border: 1px solid #ddd !important;
  font-size: 14px !important;
  text-align: left !important;
  display: table-cell !important;
}

@media (max-width: 768px) {
  .stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table th,
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table th {
    font-size: 16px !important;
    display: block !important;
    width: 100%;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table td,
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table td {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
    padding: 10px !important;
    margin-top: 10px;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table tr,
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table tr {
    display: block !important;
    margin-bottom: 10px;
  }
  .cancel-button {
    padding: 12px 24px !important;
    font-size: 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin-top: 10px !important;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-membership table tr td:last-child .pmpro_actionlinks a#pmpro_actionlink-renew {
    width: 100% !important;
    padding: 18px 20px !important;
    font-size: 18px !important;
    display: block;
    margin-top: 10px;
    border-radius: 4px !important;
  }
}

@media (max-width: 480px) {
  .stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table,
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table {
    font-size: 12px !important;
    margin: 10px 0 !important;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-membership .pmpro_table td,
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table td {
    padding: 8px !important;
    font-size: 12px !important;
  }
  .cancel-button {
    padding: 10px 20px !important;
    font-size: 14px !important;
    width: 100% !important;
    border-radius: 4px !important;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-membership table tr td:last-child .pmpro_actionlinks a#pmpro_actionlink-renew {
    font-size: 16px !important;
    padding: 18px 18px !important;
  }
}

/* Eliminar los pseudo-elementos ::before */
.pmpro_table tbody tr th::before, 
.pmpro_table tbody tr td::before, 
.pmpro_table tfoot tr td::before {
  content: none !important;
}

@media (max-width: 768px) {
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table th {
    display: table-cell !important;
    background-color: #f4f4f4 !important;
    text-align: left !important;
    font-size: 16px !important;
    padding: 12px 8px !important;
    border: 1px solid #ddd !important;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table td {
    display: block !important;
    width: 100% !important;
    font-size: 14px !important;
    padding: 10px !important;
    border: 1px solid #ddd !important;
    box-sizing: border-box;
    margin-top: 10px !important;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table {
    width: 100% !important;
    border-collapse: collapse !important;
  }
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table tr {
    display: block !important;
    margin-bottom: 10px !important;
  }
}

@media (max-width: 480px) {
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table th,
  .stm-lms-user-memberships #pmpro_account #pmpro_account-invoices .pmpro_table td {
    font-size: 12px !important;
    padding: 8px 5px !important;
  }
}

.masterstudy-enrolled-courses-sorting,
.stm_lms_levels__items,
#pmpro_actionlink-update-billing {
  display: none !important;
}

/*AÑADIR ESTILOS A LOS LABEL GENERADOS CON JAVASCRIPT*/
.generated-label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.masterstudy-single-course-dynamic-sidebar__info {
  display: none !important;
}

.masterstudy-single-course-dynamic-sidebar__buttons {
    display: none !important;
}


/* PMPro · Aviso de sesión iniciada (simple) */
#pmpro_account_loggedin{
  /* Reseteo mínimo (evita el “punto” y sangrías) */
  display: block;
  list-style: none !important;
  padding-left: 10px !important;

  /* Caja */
  margin: 10px 0;
  padding: 10px 15px;
  background: var(--pmpro--color--background-soft, #f5f5f5);
  border: 1px solid var(--pmpro--color--border--variation, #ddd);
  border-radius: var(--pmpro--base--border-radius, 4px);
  box-sizing: border-box;

  /* Texto */
  font-size: 13px;
  line-height: 1.5;
  color: var(--pmpro--color--text, inherit);

  /* Evitar cortes feos en emails/URLs largas */
  overflow-wrap: anywhere;
  word-break: normal;
}
#pmpro_account_loggedin::marker{ content: none !important; }

#pmpro_account_loggedin strong{
  font-weight: 600; /* un poco más fino que bold */
}

#pmpro_account_loggedin a{
  color: var(--pmpro--color--accent, #0073aa);
  text-decoration: none;
}
#pmpro_account_loggedin a:hover,
#pmpro_account_loggedin a:focus{
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Responsive */
@media (max-width: 768px){
  #pmpro_account_loggedin{
    font-size: 14px;
    text-align: center;
    padding: 10px 12px;
  }
  #pmpro_account_loggedin strong{
    display: block;
    margin-bottom: 5px;
  }
  #pmpro_account_loggedin a{
    display: inline-block;
    margin-top: 5px;
    max-width: 100%;
  }
}




/* CSS ADICIONAL DE PERSONALIZAR INICIO*/
.header {
  background: #000;
}
.stm_lms_courses_search {
  display: none;
}

[data-elementor-type="wp-post"].elementor {
  z-index: 0 !important;
  position: relative;
}
.grecaptcha-badge {
  z-index: 1000 !important;
  position: fixed !important;
  bottom: 70px !important;
}
.grecaptcha-badge { 
  transform: translateZ(100px) !important;
}

footer.footer {
  display: none !important;
}

.bg_gradient {
  background: linear-gradient(334deg, rgb(94, 45, 81), rgb(15, 4, 18), rgb(70, 17, 56)) 0% 0% / 180% 180% no-repeat fixed;
  animation: 6s ease 0s infinite normal none running gradient-animation;
  margin: 0;  
}
section.navigation {
  justify-content: space-between;
}

@media (min-width: 1025px) {
  .navigation .navigation-menu .starter-menu {
    display: flex;
    justify-content: center;
    gap: 40px;
  }
}

.navigation .navigation-menu .mobile-switcher span {
  width: 20px;
  height: 3px;
  background-color: #fff;
  margin-bottom: 5px;
  border-radius: 5px;
}

@keyframes gradient-animation {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.stm_lms_levels__wrapper {
  justify-content: center;
  display:block !important;
}

.stm_lms_levels__container {
  padding: 30px!important;
  width: 100% !important;
}


@media screen and (max-width: 1024px) {
  .stm_lms_levels__container:nth-of-type(3) {
    position: relative;
    left: 50%;
    transform: translate(-50%);
  }
}

.page-id-5511 {
  background-color: white;
}
.page-id-5511 .ms_lms_courses_archive__filter_form {
  background-color: white !important;
  border-radius: 10px;
}
.page-id-5511 .ms_lms_courses_archive__filter_options_item_checkbox_inner span {
  background: #FFC4DA;
}
.page-id-5511 .elementor-5511 .elementor-element.elementor-element-0708b0e .ms_lms_courses_archive__filter_options_item_checkbox_inner input[type=checkbox]:checked+span {
  background-image: linear-gradient(180deg, #FFC4DA 0%, #FFC4DA 100%);
}
.page-id-5511 .elementor-5511 .elementor-element.elementor-element-0708b0e .ms_lms_courses_archive__filter_options_item_subcategory h3 {
  color: #a53966 !important;
  font-size: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.page-id-5511 .elementor-5511 .elementor-element.elementor-element-2e90786 .autocomplete-wrapper input[type=text] {
  background-color: white;
}
.page-id-5511 .ms_lms_courses_archive__filter_options_item_title_toggler::before {
  border-right: 2px solid #000;
}
.page-id-5511 .ms_lms_courses_archive__filter_options_item_title_toggler::after {
  border-bottom: 2px solid #000;
}
.elementor-5511 .elementor-element.elementor-element-0708b0e .ms_lms_courses_card_item_status.hot span {
  padding-top: 2px;
}

.fa-circle-play:before, .fa-play-circle:before {
  font-size: 18px;
}
.fa-microphone:before {
  font-size: 17px;
}
.fa-edit:before, .fa-pen-to-square:before {
  font-size: 17px;
}

.navigation .navigation-menu .menu>li
{
	border-bottom: none !important;      /* quita borde inferior */
}
.navigation-menu ul.starter-menu li a {
  text-decoration: none !important;    /* quita subrayado */
  border: none !important;             /* quita cualquier borde */
  border-bottom: none !important;      /* quita borde inferior */
  padding: 5px 10px !important;        /* padding uniforme */
}


.navigation-menu ul.starter-menu li a {
  transition: transform 0.1s ease, background-color 0.1s ease;
}
.navigation-menu ul.starter-menu li a:active {
  transform: scale(0.95);
  background-color: rgba(255,255,255,0.1);
}

/* Hover suave en escritorio (>1024px) */
@media (min-width: 1025px) {
  .navigation-menu ul.starter-menu li a:hover {
    transform: scale(1.02);
    background-color: rgba(255,255,255,0.05);
  }
}

@media (max-width: 1024px) {
  /* 2.1) Cabecera y nav en columna */
  .header .container {
    display: flex;
    flex-direction: column;
  }
  .navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }

  /* 2.2) Ocultar switcher y forzar menÃº desplegado */
  .navigation-menu {
    order: 2;
    width: 100%;
    margin-top: 1em;
    display: block !important;
    background: #000;           /* fondo negro */
    padding: 0.5em 0;
  }
  .navigation-menu .mobile-switcher {
    display: none !important;
  }

  /* 2.3) Starter-menu como flex horizontal */
  .navigation-menu ul.starter-menu {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-around !important;
    margin: 0;
    padding: 0;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
	text-decoration: none !important;    /* quita subrayado */
  }
  .navigation-menu ul.starter-menu li {
    list-style: none;
    margin: 0.5em 0;
  }
  .navigation-menu ul.starter-menu li a {
    display: block;
    color: #fff !important;    /* enlaces blancos */
  }
}


@media (max-width: 768px) {
  section.navigation + .navigation-menu {
    margin-top: 1em;
  }
}


@media (min-width: 1025px) {
  .header .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2em;
  }

  .navigation {
    display: flex;
    align-items: center;
    gap: 2em;
    flex: 1;
  }

  .starter-logo {
    display: flex;
    align-items: center;
  }

  .navigation-menu {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .navigation-menu ul.starter-menu {
    display: flex;
    gap: 1.5em;
    margin: 0;
    padding: 0;
    list-style: none;
    align-items: center;
  }

  .navigation-menu ul.starter-menu li {
    margin: 0;
  }

  .navigation-menu ul.starter-menu li a {
    display: inline-block;
    padding: 10px 20px;
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff !important;
    border-radius: 8px;
    font-weight: 500;
    text-align: center;
    transition: all 0.2s ease;
  }

  .navigation-menu ul.starter-menu li a:hover {
    background-color: rgba(255, 255, 255, 0.2);
    transform: scale(1.05);
  }

}

.ssq-center-center {
  left: 70vw !important;
  text-shadow: unset !important;
}
.ssq-center-center h1 {
  font-size: 50px;
  color: white;
}

/* ESTILO FILTRO RESETEAR*/ 
.ms_lms_courses_archive__filter_actions_reset {
  margin: 0 0 10px !important;
  background-color: #ffe0ec !important;
  padding: 0.75rem 1.5rem !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  font-weight: bold !important;
  color: #000 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  transition: background-color 0.3s ease !important;
}


/*DISEÑO INICIO CATEGORÍAS*/
.stm_lms_courses_categories.style_6 .stm_lms_courses_category {
  background-color: black !important;
  min-height: 120px !important;
  flex-direction: row !important;
  margin: 0;
  padding: 20px;
  border: 2px solid #FFC4DA;
}
.stm_lms_courses_categories.style_6 .stm_lms_courses_category h4 {
  color: white !important;
}
.stm_lms_courses_categories.style_6 .stm_lms_courses_category:hover h4 {
  color: black !important;
}
.stm_lms_courses_categories.style_6 .stm_lms_courses_category:hover {
  background-color: #f7c8da !important;
}
.stm_lms_courses_categories.style_6 {
  justify-content: start;
  gap: 15px !important;
}

@media (max-width: 769px) {
  .stm_lms_courses_categories.style_6 {
    display: flex !important;
    white-space: unset !important;
    font-size: unset !important;
  }
  .stm_lms_courses_categories.style_6 .stm_lms_courses_category h4, 
  .stm_lms_courses_categories.style_6 .stm_lms_courses_category i {
    width: unset !important;
  }
}

@media (max-width: 515px) {
  .stm_lms_courses_categories.style_6 .stm_lms_courses_category:first-child,
  .stm_lms_courses_categories.style_6 .stm_lms_courses_category:last-child {
    margin: 0 !important;
  }
  .stm_lms_courses_categories.style_6 .stm_lms_courses_category {
    width: 100% !important;
  }
  a.stm_lms_courses_category.no_deco {
    margin: 0 0 5px !important;
    min-height: 20px !important;
  }
  .stm_lms_courses_categories.style_6 .stm_lms_courses_category:hover {
    transform: translateY(0px) !important;
  }
  .stm_lms_courses_categories.style_6 .stm_lms_courses_category:hover h4 {
    color: #a53966 !important;
  }
  .ms_lms_courses_card.card-style-4 .ms_lms_courses_card_item:hover .ms_lms_courses_card_item_info {
    background: linear-gradient(180deg, rgba(0, 25, 49, 0) 0, rgba(0, 25, 49, .9) 100%) !important;
  }
  .stm_lms_courses_categories.style_6 {
    gap: 2px !important;
  }
}

.ms_lms_courses_card_item_wrapper {
  background-color: #fae1eb61;
  border-radius: 20px;
}

/* NEW - Mantengo el original (ya cumple AAA) */
.elementor-5511 .elementor-element.elementor-element-0708b0e .ms_lms_courses_card_item_status.new, 
.stm_lms_post_status.heading_font.new, 
span.masterstudy-related-courses__item-status.masterstudy-related-courses__item-status_new {
  background: #533943 !important; /* Morado oscuro (6.9:1) */
  color: #ffffff; /* Texto blanco */
  border-radius: 20px;
}

/* HOT - Versión oscurecida */
.elementor-5511 .elementor-element.elementor-element-0708b0e .ms_lms_courses_card_item_status.hot, 
span.masterstudy-related-courses__item-status.masterstudy-related-courses__item-status_hot, 
.stm_lms_post_status.heading_font.hot {
  background: #8C2A4D !important; /* Rosa más oscuro (7:1) */
  color: #ffffff;
  border-radius: 20px;
}

/* SPECIAL - Versión oscurecida */
.elementor-5511 .elementor-element.elementor-element-0708b0e .ms_lms_courses_card_item_status.special, 
span.masterstudy-related-courses__item-status.masterstudy-related-courses__item-status_special, 
.stm_lms_post_status.heading_font.special {
  background: #2A4A8C !important; /* Azul más oscuro (7:1) */
  color: #ffffff;
  border-radius: 20px;
}

/* CSS CAJAS MOLONAS */
/* Ratón*/
.ratoncito {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja1:hover .ratoncito {
  transform: translate3d(-40px, -30px, 0) scale3d(1, 1, 1);
}
.caja1 .ratoncito svg {
  transition: fill 0.4s ease-out;
}
.caja1:hover .ratoncito svg {
  fill: #fdc3da !important;
}

/* Círculo1*/
.circulo1 {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja1:hover .circulo1 {
  transform: translate3d(10px, 0, 0) scale3d(0.9, 0.9, 1);
}

/* Círculo2*/
.circulo2 {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja1:hover .circulo2 {
  transform: translate3d(0, 0, 0) scale3d(0.9, 0.9, 1);
}

/* Círculo3*/
.circulo3 {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja1:hover .circulo3 {
  transform: translate3d(0, 0, 0) scale3d(1.1, 1.1, 1);
}
.caja1:hover .circulo3 circle {
  fill: #fdc3da;
  stroke: black;
}
.caja1:hover .circulo3 g:nth-child(3) path {
  fill: white !important;
}

/* Destello*/
.destello {
  transform: translate3d(0, 0, 0) scale3d(0, 0, 0);
  transform-style: preserve-3d;
  transition: all 0.4s ease-out;
}
.caja1:hover .destello {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
}

/* CAJA 2*/
/* Lupita*/
.lupita {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja2:hover .lupita {
  transform: translate3d(-45px, -95px, 0) scale3d(1, 1, 1);
}
.caja2 .lupita svg {
  transition: fill 0.4s ease-out;
}
.caja2:hover .lupita svg {
  fill: #fdc3da !important;
}

/* item2*/
.item2 {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja2:hover .item2 {
  transform: translate3d(0, -55px, 0) scale3d(1, 1, 1);
}
.caja2 .item2 svg path {
  transition: fill 0.4s ease-out;
}
.caja2:hover svg path[d="M263.86,60.72H7.24c-3.76,0-6.83-3.07-6.83-6.83V7.28c0-3.76,3.07-6.83,6.83-6.83h256.62 c3.76,0,6.83,3.07,6.83,6.83v46.61C270.69,57.64,267.62,60.72,263.86,60.72z"] {
  fill: #fdc3da !important;
}

/* Caja hidden*/
.item2_caja {
  max-height: 117px;
  overflow: hidden;
  width: 280px;
}

/* item2_sup*/
.item2_sup {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja2:hover .item2_sup {
  transform: translate3d(0, -55px, 0) scale3d(1, 1, 1);
}

/* item2_sub*/
.item2_sub {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja2:hover .item2_sub {
  transform: translate3d(0, -55px, 0) scale3d(1, 1, 1);
}

/* check2*/
.check2 {
  transform: translate3d(0, 0, 0) scale3d(0.5, 0.5, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
  opacity: 0;
}
.caja2:hover .check2 {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  opacity: 1;
}

/* CAJA 3*/
/* varita3*/
.varita3 {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transform-style: preserve-3d;
  transition: all 0.5s ease-out;
}
.caja3:hover .varita3 {
  transform: translate3d(-60px, -5px, 0) scale3d(1, 1, 1);
}
.varita3 line {
  stroke: white;
  transition: stroke 0.4s ease-out;
}
.caja3:hover .varita3 line {
  stroke: black;
}

/* skillls3*/
.caja_skillls3 {
  width: 280px;
}
.caja_skillls3 div.e-con-inner {
  width: 55px;
  background-color: #fff;
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
  transition: all 0.5s ease-out;
}
.caja3:hover .caja_skillls3 div.e-con-inner {
  width: 250px;
}
.skillls3 {
  max-width: 300px !important;
  width: 55px;
  justify-content: center;
  display: flex;
}

/*ESTILOS PÁGINA DE PAGO*/
.elementor-5555 .elementor-element.elementor-element-39cf46ab {
  border-style: none !important;
  --border-style: none !important;
  --overlay-opacity: 0.95 !important;
  padding-top: 15px;
}

.elementor-5555 .elementor-element.elementor-element-39cf46ab::before {
  border-radius: 10px !important;
}
button[type="button"]#other_discount_code_toggle:focus {
  color: cornflowerblue;
}
#wrapper .pmpro_submit {
  margin-bottom: 10px;
}
.pmpro-checkout #wrapper #pmpro_submit_span input#pmpro_btn-submit {
  background-color: #A83A65;
  color: white;
  border: none;
}
.pmpro-checkout #wrapper #pmpro_submit_span input#pmpro_btn-submit:hover {
  background-color: #852A4E;
  color: white;
  border: none;
}
input[type="button"]#other_discount_code_button {
  margin-left: 10px;
  padding: 13px;
  background: #A83A65;
  color: white;
  border-radius: 8px;
  text-decoration: none;
}
input[type="button"]#other_discount_code_button:hover,
input[type="button"]#other_discount_code_button:focus {
  background: #852A4E;
  color: white;
  border-radius: 8px !important;
}

#pmpro_form #pmpro_payment_information_fields .pmpro_payment-discount-code {
  display: none !important; 
}
#pmpro_form #pmpro_payment_information_fields h3 {
  font-size: 1.25rem !important;
  padding: 0 !important;
}
.pmpro-checkout #wrapper #pmpro_submit_span input#pmpro_btn-submit {
  border-radius: 8px !important;
}
#wrapper .pmpro_message.pmpro_error,
.pmpro_error, 
input[type="text"].pmpro_error, 
input[type="email"].pmpro_error, 
input[type="url"].pmpro_error, 
input[type="password"].pmpro_error, 
input[type="number"].pmpro_error, 
input[type="tel"].pmpro_error, 
input[type="range"].pmpro_error, 
input[type="date"].pmpro_error, 
input[type="month"].pmpro_error, 
input[type="week"].pmpro_error, 
input[type="time"].pmpro_error, 
input[type="datetime"].pmpro_error, 
input[type="datetime-local"].pmpro_error, 
input[type="color"].pmpro_error, 
textarea.pmpro_error {
  background: #a83a6526 !important;
  border-color: #A83A65 !important;
}
.input-fields, 
input[type="text"], 
input[type="email"], 
input[type="password"], 
input[type="url"], 
input[type="search"], 
textarea, 
select, 
.woocommerce .select2-container .select2-selection {
  background-color: #f9f4f4;
}

/* ICONO DE CURSOS POPULARES */
.course_available_only_in_subscription__image,
.masterstudy-popular-courses {
  display: none !important;
}

/* FICHA DE MATERIA RESPONSIVE */
body .masterstudy-buy-button {
  background-color: #A83A65 !important;
}
.masterstudy-single-course-dynamic-sidebar__main-topbar {
  background-color: #f7eef7 !important;
}
.masterstudy-single-course-tabs.masterstudy-single-course-tabs_style-buttons .masterstudy-single-course-tabs__item.masterstudy-single-course-tabs__item_active {
  background: #ffc4da80 !important;
  color: #A83A65 !important;
}
.masterstudy-curriculum-list__item,
.masterstudy-single-course-complete-block {
  background: #f7eef7 !important; 
}
.masterstudy-single-course-complete__bar-filled {
  border-bottom: 6px solid #A83A65 !important;
}
.masterstudy-single-course-complete-block__details {
  background: #A83A65 !important;
}
.masterstudy-single-course-reviews__add-button {
  color: #A83A65 !important;
}
.masterstudy-single-course-complete-block__icon::before {
  color: #A83A65 !important;
}
.masterstudy-single-course-reviews__add-button-icon {
  background: #A83A65 !important;
}
.masterstudy-single-course-dynamic-sidebar__bottombar::before {
  background: white !important;
  left: 0 !important;
  right: 0 !important;
}
.masterstudy-single-course-dynamic-sidebar .masterstudy-single-course-status {
  display: none !important;
}

a.masterstudy-button .masterstudy-button__title {
    text-transform: none !important;
}

a.masterstudy-button.masterstudy-button_style-primary {
  background: #A83A65 !important;
}
.masterstudy-file-attachment {
  background: #f7eef7 !important; 
}

/* Botón con diseño uniforme */
body .masterstudy-buy-button_plans-dropdown > a.masterstudy-membership,
body .masterstudy-buy-button_plans-dropdown > button.masterstudy-membership {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffc4da80 !important;
    border-radius: 8px !important;
    padding: 10px 20px !important;
    min-height: 38px !important;
    border: 0 !important;
    margin-bottom: 10px !important;
    transition: background 0.15s, color 0.15s !important;
    text-align: center !important;
    width: 100% !important;
}

/* Último botón sin margen inferior extra */
body .masterstudy-buy-button_plans-dropdown > a:last-child,
body .masterstudy-buy-button_plans-dropdown > button:last-child {
    margin-bottom: 0 !important;
}

/* Precio GRANDE */
.masterstudy-buy-button_plans-dropdown__label {
    font-size: 2rem !important;
    font-weight: bold !important;
    color: #A83A65 !important;
    line-height: 1 !important;
    margin: 0 !important;
    display: inline-block !important;
    transition: color 0.15s !important;
}

/* Título arriba del botón */
.masterstudy-buy-button_plans-dropdown__title {
    display: block !important;
    font-size: 14px !important;
    color: #A83A65 !important;
    font-weight: 700 !important;
    margin-bottom: 3px !important;
    text-align: center !important;
}

/* HOVER: fondo oscuro y textos blancos */
body .masterstudy-buy-button_plans-dropdown > a.masterstudy-membership:hover,
body .masterstudy-buy-button_plans-dropdown > button.masterstudy-membership:hover {
    background: #A83A65 !important;
    color: #fff !important;
}

body .masterstudy-buy-button_plans-dropdown > a.masterstudy-membership:hover .masterstudy-buy-button_plans-dropdown__label,
body .masterstudy-buy-button_plans-dropdown > button.masterstudy-membership:hover .masterstudy-buy-button_plans-dropdown__label {
    color: #fff !important;
}



body .masterstudy-buy-button_plans-dropdown .masterstudy-buy-button__title:hover {
	color: white !important;
}

body .masterstudy-buy-button__title{
	text-align: center !important;
}

/* PASARELA DE PAGO ESTILOS */
#wrapper #pmpro_account_loggedin {
  display: block !important;
}

@media (max-width: 515px) {
  #pmpro_user_fields .pmpro_checkout-fields {
    display: block;
  }
  #pmpro_user_fields .pmpro_checkout-fields .pmpro_checkout-field {
    width: 100%;
  }
}

/* BOTÓN USER */
button#dLabel {
  background-color: transparent !important;
  border-color: transparent !important; 
}
button#dLabel i {
  background-color: transparent !important;
  font-size: var(--stm-lms-auth-links-sing-in-icon-size);
  color: white;
}
button#dLabel .stmlms-user::before {
  content: "\f007";
  font-size: 20px;
  font-weight: 600;
}
button#dLabel span.login_name {
  display: none !important;
}
button#dLabel span.caret {
  border-top-color: white !important;
  border-bottom-color: white !important;
}
/* =========================
   PANEL USUARIO – GENERAL
   ========================= */
body.blog.logged-in.wp-custom-logo.stm_lms_button.theme-ms-lms-starter-theme.elementor-default.elementor-kit-5512.stm_lms_chat_page {
  background-color: white;
}

/* =========================
   BARRA PRINCIPAL USUARIO
   ========================= */
.stm_lms_acc_tabs__main {
  display: flex;
  background-color: #9c4365 !important;
  border-top: none !important;
  border-radius: 20px 0 0 20px !important; /* solo lado izquierdo */
  gap: 10px !important;
  padding: 0 10px !important;
  padding-right: 50px !important; /* espacio para los 3 puntos */
  position: relative;
}

/* =========================
   ITEMS DEL MENÚ PRINCIPAL
   ========================= */
.stm_lms_acc_tabs .float_menu_item__inline {
  margin: 10px 0;
  border-radius: 10px;
  background-color: transparent !important;
}

.stm_lms_acc_tabs .float_menu_item__inline:hover,
.stm_lms_acc_tabs .float_menu_item__inline.float_menu_item_active {
  background-color: white !important;
}

.stm_lms_acc_tabs .float_menu_item__inline span {
  color: white !important;
}

.stm_lms_acc_tabs .float_menu_item__inline:hover span,
.stm_lms_acc_tabs .float_menu_item__inline.float_menu_item_active span {
  color: #9c4365 !important;
}

.stm_lms_acc_tabs .float_menu_item__inline i {
  color: white !important;
}

.stm_lms_acc_tabs .float_menu_item__inline:hover i,
.stm_lms_acc_tabs .float_menu_item__inline.float_menu_item_active i {
  color: #9c4365 !important;
}

/* =========================
   BOTÓN DE LOS 3 PUNTOS
   ========================= */
.stm_lms_acc_tabs i.stm_lms_acc_tabs__toggle {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #9c4365 !important;
  color: white !important;
  cursor: pointer;
  border: none !important;
  border-radius: 0 !important; /* MUY IMPORTANTE */
  padding: 0 !important;
}

/* Hover del botón */
.stm_lms_acc_tabs i.stm_lms_acc_tabs__toggle:hover {
  background-color: #8b3b5a !important;
}

/* Evita radios o efectos heredados */
.stm_lms_acc_tabs__toggle::before,
.stm_lms_acc_tabs__toggle::after {
  border-radius: 0 !important;
}

/* =========================
   MENÚ OCULTO (DESPLEGABLE)
   ========================= */
.stm_lms_acc_tabs__secondary_inner {
  background-color: #9c4365 !important;
  border-radius: 15px !important;
  padding: 10px !important;
  box-shadow: none !important;
}

.stm_lms_acc_tabs__secondary_inner__section {
  background-color: transparent !important;
}

.stm_lms_acc_tabs__secondary_inner .float_menu_item {
  background-color: transparent !important;
  border-radius: 10px !important;
  margin: 8px 0 !important;
  padding: 10px !important;
}

.stm_lms_acc_tabs__secondary_inner .float_menu_item:hover,
.stm_lms_acc_tabs__secondary_inner .float_menu_item.float_menu_item_active {
  background-color: white !important;
}

.stm_lms_acc_tabs__secondary_inner .float_menu_item span {
  color: white !important;
}

.stm_lms_acc_tabs__secondary_inner .float_menu_item:hover span,
.stm_lms_acc_tabs__secondary_inner .float_menu_item.float_menu_item_active span {
  color: #9c4365 !important;
}

.stm_lms_acc_tabs__secondary_inner .float_menu_item i {
  color: white !important;
}

.stm_lms_acc_tabs__secondary_inner .float_menu_item:hover i {
  color: #9c4365 !important;
}

/* =========================
   TÍTULOS Y ELEMENTOS ROSAS
   ========================= */
.stm_lms_user_info_top h3,
.create_announcement h1,
.stm-lms-wrapper--gradebook .gradebook-header h1 {
  display: inline-block;
  padding: 0.25em;
  border-radius: 5px;
  background-color: #ffe0ec;
  color: #9c4365;
}

.acentuado span {
  display: inline-block;
  padding: 0.15em;
  border-radius: 5px;
  background-color: #ffe0ec;
  color: #9c4365;
}

.stm_lms_edit_socials_list {
  background-color: #ffe0ec !important;
  border-radius: 5px !important;
}

div.multiseparator:after {
  background-color: #914965 !important;
}

.stm-lms-user-quizzes .stm-lms-user-quiz__status i.stmlms-cross {
  color: #914965 !important;
}

/* =========================
   WISHLIST Y CURSOS
   ========================= */
.stm-lms-wishlist span {
  display: none;
}

.ms_lms_courses_card_item_info_wishlist {
  justify-content: flex-start !important;
  position: absolute;
  top: 100px;
  left: 10px;
}

.fa-heart:before {
  content: "\f004";
  font-weight: bolder;
  background-color: white;
  border-radius: 20px;
  padding: 5px;
}

.ms_lms_courses_card.card-style-3 
.ms_lms_courses_card_item_info_wishlist 
.stm-lms-wishlist i {
  font-size: 14px !important;
}

.elementor-5511 
.elementor-element.elementor-element-0708b0e 
.ms_lms_courses_card_item_info_wishlist 
.stm-lms-wishlist i {
  color: #4D5E6F;
}

/* =========================
   PRECIOS / SUSCRIPCIONES
   ========================= */
i.stmlms-subscription {
  color: #a53966 !important;
}

.ms_lms_courses_card.card-style-3 
.ms_lms_courses_card_item_info_price_single.subscription i::before,
.ms_lms_courses_card_item_info_price_single.subscription span {
  color: #a53966 !important;
}

a.ms_lms_courses_card_item_info_price_preview {
  background: #a53966 !important;
}

.ms_lms_courses_card_item_info_price_single span {
  padding: 1em !important;
  border-radius: 5px;
  background-color: #ffe0ec;
  color: #9c4365 !important;
}

/* FLOATING ELEMENT */
@keyframes float {
  0% { transform: translatey(0); }
  50% { transform: translatey(-20px); }
  100% { transform: translatey(0); }
}
.floating {
  animation: float 6s ease-in-out infinite;
}

/* DESACTIVAR ENVIAR MENSAJE */
#stm_lms_send_fast_message {
  display: none;
}

/* FLOATING ELEMENT */
footer {
  display: flex !important;
  margin: unset !important;
}
.footer-width-fixer {
  margin: auto 0 0 !important;
}

/* ESTILOS FORMULARIO CONTACTO CON NOSOTROS */
div.wpforms-container-full .wpforms-form button[type=submit] {
  padding: 15px 40px;
  text-transform: uppercase;
  color: #fff;
  transition: ease-in-out 0.3s;
} 
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) {
  background-color: #a83a65;
  color: #fff;
} 
div.wpforms-container-full button[type=submit]:hover {
  background-color: #a83a65;
  color: #fff;
} 
div.wpforms-container-full input[type=text]:focus:invalid, 
div.wpforms-container-full input[type=email]:focus:invalid, 
div.wpforms-container-full .wpforms-form textarea:focus {
  border-color: #a83a65;
  box-shadow: 0 0 0 1px #a83a65, 0px 1px 2px rgba(0, 0, 0, 0.15);
}
.wpforms-form {
  padding: 20px 35px !important;
  width: 80% !important;
  margin: auto !important;
}
div.wpforms-container-full .wpforms-form .wpforms-field .wpforms-field-row:last-child, 
div.wpforms-container-full input[type=email], 
div.wpforms-container-full input[type=text], 
div.wpforms-container-full select, 
div.wpforms-container-full textarea, 
.wp-core-ui div.wpforms-container-full input[type=email], 
.wp-core-ui div.wpforms-container-full textarea {
  max-width: 100% !important;
}

/* Foros */
.bbp-breadcrumb p:first-child {
  display: inline-block;
  padding: 0.25em;
  border-radius: 5px;
  background-color: #ffe0ec;
  color: #9c4365;
  font-size: 30px;
  font-weight: 700;
}
div.bbp-template-notice.info {
  background-color: #fee0ec7a;
}
.bbp-breadcrumb-home,
.bbp-breadcrumb span:first-of-type {
  display: none;
}
.bbp-author-avatar img {
  display: none !important;
}
.bbp-author-avatar {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 3px;
  background-image: url(https://opocamp.com/wp-content/uploads/2024/06/iconuser2-07.png);
  background-size: cover;
}
form#bbp-search-form {
  margin-bottom: 20px;
}
input#bbp_search {
  border-radius: 100px;
  height: 45px;
  padding: 0 20px;
  margin-right: 10px;
}
input#bbp_search_submit {
  background-color: #9c4365;
  border-color: #9c4365;
}
.pmpro_bbp_membership_msg {
  font-size: 12px !important;
  border: 1px solid #ca4453;
  padding: 0.6rem;
  border-radius: 3px;
}
#forums-list-0 {
  font-family: poppins !important;
}
#forums-list-0 ul.forum-titles {
  font-size: 18px;
}
#forums-list-0 li.bbp-body {
  font-size: 14px;
}
#forums-list-0 span.bbp-author-name {
  font-size: 12px;
}

/* ESTILOS imagen fixed */
.imagen_fixed, .imagen_fixed2 {
  background-attachment: fixed;
}
.imagen_fixed2 video {
  position: fixed !important;
  top: 150px !important;
  object-fit: cover !important;
}
div.pmpro_content_message {
  margin: 2em;
}

/* ESTILOS imagen MONO*/
.pmpro_content_message {
  text-align: center;
  z-index: 2;
}
.pmpro_content_image {
  width: 750px;
  text-align: center;
  align-self: center;
  margin-top: 90px;
  margin-bottom: 60px;
}
body.pmpro-variation_1.page-template.page-template-elementor_header_footer.page.page-id-66886.stm_lms_button.pmpro-body-level-required.pmpro-body-level-4.pmpro-body-level-2.ehf-footer.ehf-template-ms-lms-starter-theme.ehf-stylesheet-ms-lms-starter-theme.theme-ms-lms-starter-theme.wpf-default.wpft-forum.wpf-guest.wpfu-group-4.wpf-theme-2022.wpf-is_standalone-0.wpf-boardid-0.is_wpforo_page-1.is_wpforo_url-1.is_wpforo_shortcode_page-0.wpforo.elementor-default.elementor-template-full-width.elementor-kit-5512.elementor-page .pmpro {
  text-align: center;
  padding: 0 180px;
}
@media (max-width: 800px) {
  body.pmpro-variation_1.page-template.page-template-elementor_header_footer.page.page-id-66886.stm_lms_button.pmpro-body-level-required.pmpro-body-level-4.pmpro-body-level-2.ehf-footer.ehf-template-ms-lms-starter-theme.ehf-stylesheet-ms-lms-starter-theme.theme-ms-lms-starter-theme.wpf-default.wpft-forum.wpf-guest.wpfu-group-4.wpf-theme-2022.wpf-is_standalone-0.wpf-boardid-0.is_wpforo_page-1.is_wpforo_url-1.is_wpforo_shortcode_page-0.wpforo.elementor-default.elementor-template-full-width.elementor-kit-5512.elementor-page .pmpro {
    padding: 0 30px !important;
  }
}

/* Estilos foro imagen*/
#wpforo #wpforo-wrap img {
  max-height: none;
}
#wpforo #wpforo-wrap .wpf-head-bar {
  border-radius: 0 0 0 0 !important;
}
@media (max-width: 515px) {
  .imagen_fixed2 {
    max-height: 100px !important;
    margin: 0 !important;
    padding: 0 !important;
  }  
  .imagen_fixed2 video {
    position: relative !important;
    top: 0 !important;
  }
  #wpforo #wpforo-wrap .wpforo-cat-panel {
    flex-wrap: nowrap !important;
  }
}

/*Estilos titulo foro*/
.wpforo-content > #wpforo-title {
  display: none;
}

/*CORAZON Lista de Deseos*/
.masterstudy-single-course-wishlist:hover .masterstudy-single-course-wishlist__title::before,
.masterstudy-single-course-wishlist__title.masterstudy-single-course-wishlist_added::before {
  color: #CA4453 !important;
}

/* Estilos deseados */
a[href="https://opocamp.com/fogata/actividades-none/"],
a[href="https://opocamp.com/fogata/gincana-actividades-none/"],
a[href="https://opocamp.com/fogata/gincana-gincana-actividades-none/"] {
  display: none;
}
a[href="https://opocamp.com/gincana-legislacion"],
a[href="https://opocamp.com/gincana-informatica"],
a[href="https://opocamp.com/gincana-psicotecnicos"] {
  font-size: 18px !important;
}
h3:has(a[href="https://opocamp.com/fogata/actividades-none/"]),
h3:has(a[href="https://opocamp.com/fogata/gincana-actividades-none/"]),
h3:has(a[href="https://opocamp.com/fogata/gincana-gincana-actividades-none/"]) {
  padding: 0 !important;
}

.cat-stat-posts, 
.cat-stat-topics, 
.wpforo-forum-stat-posts, 
.wpforo-forum-stat-topics {
  display: none !important;
}

#pmpro_cancel .pmpro_actions_nav {
  margin-top: 20px;
}

.pmpro-checkout #wrapper:before {
  content: "";
  background-image: url(https://opocamp.com/wp-content/uploads/2024/06/sdfsdfsdf.png);
  background-repeat: no-repeat;
  background-color: rgb(156 67 101) !important;
  top: 0;
  position: absolute;
  width: 100%;
  min-height: 750px;
  background-size: cover;
  z-index: -1;
}

body.pmpro-checkout .footer-width-fixer .elementor-66569 {
  display: none;
}

/* Cancela suscripcion */
body.pmpro-cancel #pmpro_cancel .pmpro_actionlinks a {
  border-radius: 30px !important;
  text-transform: unset !important;
}
.pmpro_btn.pmpro_btn-submit.pmpro_yeslink.yeslink {
  border-radius: 30px !important;
  font-weight: 600 !important;
  font-family: 'Montserrat' !important;
}

p#other_discount_code_p {
  display: none;
}
#pmpro_form .pmpro_checkout h2 span {
  width: 100%;
}

/*payment method*/
#pmpro_payment_method .pmpro_form_heading.pmpro_font-large:after {
  content: "";
  background: var(--payment-image-url);
  display: block;
  background-repeat: no-repeat;
  background-size: 200px;
  height: 50px;
  margin-top: 5px;
}

.mce-container.mce-panel.mce-foot button:hover {
  background-color: unset !important;
}

/*Borrar enviar mensaje*/
div.stm_lms_become_instructor {
  display: none !important;
}
.stm_lms_user_side h3 {
  font-size: 14px !important;
}

#wpforo #wpforo-wrap .wpf-profile-section .wpf-stat-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 10px;
  grid-auto-rows: minmax(80px, auto);
}
.wpf-statbox-data {
  display: flex;
  gap: 10px;
}

/*BOTON VER MATERIAS*/
.masterstudy-single-course-complete__buttons {
  display: none !important;
}

ul.h5p-actions {
  display: none !important;
}

/*FILTRO BUSQUEDA MATERIA POR PRECIO*/
.ms_lms_courses_archive__filter_options_item:nth-of-type(3) .ms_lms_courses_archive__filter_options_item_category:nth-of-type(2) {
  display: none;
}

/*CENTRAR MONO*/
body.pmpro-variation_1.page-template.page-template-elementor_header_footer.page.page-id-66886.stm_lms_button .pmpro {
  align-self: center;
  text-align: center;
}
body.pmpro-variation_1.page-template.page-template-elementor_header_footer.page.page-id-66886.stm_lms_button .pmpro p {
  padding: 0 2%;
}

/*Buscador de materias*/
.ms_lms_course_search_box__search_input { display:none !important; }
.ms_lms_course_search_box__search_input .autocomplete-wrapper input[type=text] {
  color: #5E6E7F !important;
}

/*Color texto cuenta de usuario*/
.stm-lms-user-courses .stm_lms_instructor_courses__single--started,
.stm_lms_instructor_courses__single--term a, 
.stm_lms_instructor_courses__single--term {
  color: #5F5F5F !important;
}

/*Textos y enlaces en gris*/
.pmpro_card a {
  color: #0073e6;
  text-decoration: none;
}
.pmpro_card a:hover {
  color: #005bb5;
  text-decoration: underline;
}

.masterstudy-authorization__separator-title {
  color: #6B757F !important;
}
#masterstudy-authorization-sign-up {
  color: #A83A65 !important;
}

/* Color instructor accesibilidad*/
.masterstudy-related-courses__instructor {
  color: #515961 !important;
}

/* Buscador materias*/
.ms_lms_course_search_box__search_input.search_button_inside {
  width: 100%;
}

/*Texto dentro del indice de la materia*/
.masterstudy-curriculum-accordion__section-count {
  color: white !important;
}

/*Texto Materia Indice*/
.masterstudy-course-player-header__course-label {
  color: #565E66 !important;
}

/*FOCO ACCESIBILIDAD*/
:focus:not(:focus-visible) {
  outline: none !important;
}
:focus-visible {
  outline: 3px solid #00BFFF !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
  transition: outline 0.2s ease;
}
svg:focus-visible,
i:focus-visible,
a:focus-visible {
  outline: 3px solid #00BFFF !important;
  outline-offset: 3px !important;
  box-shadow: none !important;
}

/*COLOR TEXTO NUMERO PREGUNTAS CUESTIONARIO*/
.masterstudy-curriculum-accordion__meta {
  color: #636363 !important;
}

/*Color del texto del enlace "volver a la cuenta del usuario"*/
.masterstudy-back-link .sr-only {
  color: #565E66 !important;
}

/*Estilos foro accesibilidad*/
#wpforo #wpforo-wrap .wpf-button-outlined.wpf-subscribe-forum, 
#wpforo #wpforo-wrap .wpf-button-outlined.wpf-subscribe-topic {
  color: #9B582B !important;
  border-color: #9B582B !important;
}
.wpforo-last-post-author a {
  color: #CD2929 !important;
}
.wpf-forum-jump-title,
.wpf-viewing-users,
.wpf-forum-jump select,
.wpforo-post-content-bottom .cbleft,
.wpf-author-nicename,
.wpforo-revision-created,
.wpforo-revision-action-restore,
.wpforo-revision-action-delete,
.wpforo-date-ago, 
.wpf-viewed-users {
  color: #5E5E5E !important;
}
.wpf-member-title.wpfut.wpfug-4.wpfbg-2.wpfcl-3 {
  background-color: #5E5E5E !important;
}
.wpf-field-required-icon {
  color: #A80A46 !important; 
}
input[name="post[title]"] {
  color: #827373 !important; 
}
span.wpf-post-starter {
  color: #a80b46 !important;
}
#wpforo #wpforo-wrap .wpforo-post-head .wpf-post-head-top .wpf-post-stat .wpf-post-stat-box .wpf-tstat svg {
  fill: #a80b46 !important;
}
#wpforo #wpforo-wrap .wpf-search i, 
.wpf-profile-menu-label {
  color: #a80b46 !important;
}
#wpforo #wpforo-wrap .wpf-button:hover, 
.wpf-button:hover {
  background: #7e0f39 !important;
}
#wpforo #wpforo-wrap .wpf-button, 
.wpf-button {
  background: #a8144c !important;
}
#wpforo #wpforo-wrap .wpforo-category .wpf-button {
  color: white !important;
}
#wpforo #wpforo-wrap .wpforo-profile .wpforo-profile-head .wpforo-profile-back {
  background: #a80b46 !important;
}
.wpf-topic-form-forumid {
  color: #5E5E5E !important;
}
.wpf-head-filter select,
.wpfp-box.wpfp-joined {
  color: #5E5E5E !important;
}
.author-name a {
  color: #CD2929 !important;
}
.wpf-member-title.wpfut.wpfug-1 {
  color: #A80A46 !important; 
}
.wpfbr-b {
  border: 1px solid #A80A46 !important;
}
#pickaxe-fab-container button,
#pickaxe-fab-container input[type=button], 
#pickaxe-fab-container input[type=submit] {
  border: none !important;
  background: none !important;
}

/* =============== ESTILO PICKAXE CHAT EN MOVIL =============== */

@media (max-width: 600px) {
  /* Ajustar ancho del widget flotante */
  .pxe-fixed[style*="width"] {
    width: 100vw !important;
    max-width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
    border-radius: 0 !important;
    min-width: unset !important;
  }

  /* Reducir tamaño del título */
  .pxe-fixed p[style*="font-size: 30px"] {
    font-size: 18px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }
}

/* =============== FIN ESTILO PICKAXE CHAT EN MOVIL =============== */


.pmpro_table {
  width: 100%;
  border-collapse: collapse;
  font-family: Arial, sans-serif;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 1rem;
}

.pmpro_table th,
.pmpro_table td {
  padding: 12px 15px;
  text-align: center;
  border-bottom: 1px solid #ddd;
}

.pmpro_table th {
  background-color: #f5f5f5;
  font-weight: 600;
  color: #333;
}

.pmpro_table tr:last-child td {
  border-bottom: none;
}

.pmpro_table td[colspan="3"] {
  text-align: center;
  font-style: italic;
  color: #cc0000;
}

.pmpro_table a {
  color: #0073aa;
  font-weight: bold;
  text-decoration: none;
}

.pmpro_table a:hover {
  text-decoration: underline;
  color: #005177;
}

/* Envoltorio para centrar todo horizontalmente */
.membership-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

/* Caja interna con sombra y fondo */
.membership-box {
  background: #f9f9f9;
  padding: 30px 20px;
  border: 2px dashed #0073aa;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  animation: fadeIn 0.8s ease;
  text-align: center;
  width: 100%;
}

/* Texto */
.membership-text {
  text-align: center !important;
  font-size: 1.2em;
  color: #333;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

/* Botón principal */
.membership-btn {
  font-size: 1.1em;
  padding: 15px 30px;
  background: rgb(156 67 101) !important;
  color: #fff;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.2s ease;
}

.membership-btn:hover {
  background: #e64a19;
  transform: scale(1.05);
}

/* Animación de entrada */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Responsive para móviles */
@media (max-width: 600px) {
  .membership-box {
    padding: 20px 15px;
    max-width: 90%;
  }

  .membership-text {
    font-size: 1em;
  }

  .membership-btn {
    font-size: 1em;
    padding: 12px 20px;
    width: 100%;
  }
}

/* Radios: un poco de espacio y centrado vertical */
.pmpro_radio_option {
    display: flex;
    align-items: center;
    margin-bottom: 0.75em;
}
.pmpro_radio_option input[type="radio"] {
    margin-right: 0.5em;
}

/* Textarea: altura, padding y foco más evidente */
.pmpro_form_field-textarea .pmpro_form_input-textarea {
    min-height: 8em;            /* altura base */
    padding: 0.75em;            /* un poco más cómodo */
    border: 1px solid #ccc;     /* mismo estilo PMPro */
    border-radius: 4px;
    font-size: 1rem;            /* igual que inputs */
    line-height: 1.5;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    resize: vertical;
    width: 100%;
    box-sizing: border-box;
}
.pmpro_form_field-textarea .pmpro_form_input-textarea:focus {
    outline: none;
    border-color: #0073aa;       /* azul PMPro */
    box-shadow: 0 0 0 2px rgba(0,115,170,0.15);
}

/* Ajuste de la etiqueta y asterisco */
.pmpro_form_field .pmpro_form_label {
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 0.5em;
    display: block;
}
.pmpro_asterisk abbr {
    color: #d63638;
    font-weight: bold;
    text-decoration: none;
}

body.pmpro-cancel #pmpro_cancel .pmpro_message {
    margin-bottom: 15px !important;
}

.ms_lms_courses_archive__filter_actions {
  display: flex !important;
  justify-content: center !important;
  gap: 1rem !important;
  margin-top: 1rem !important;
}

.ms_lms_courses_archive__filter_actions_button {
  background-color: #ffe0ec !important;
  padding: 0.75rem 1.5rem !important;
  border: none !important;
  border-radius: 999px !important;
  font-weight: bold !important;
  cursor: pointer !important;
  color: #000 !important;
  transition: background-color 0.3s ease !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

.ms_lms_courses_archive__filter_actions_button:hover {
  background-color: #f5cada !important;
}


.ms_lms_courses_archive__filter_actions_reset:hover {
  background-color: #f5cada !important;
}

.masterstudy-single-course-dynamic-sidebar__main {
  min-height: 300px; /* Ajusta según el contenido real */
}

.starter-menu {
  height: 50px; /* Ajusta según tu diseño */
}

.pmpro_form_fields {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 16px;
}
.pmpro_form_field {
  min-width: 220px;
  flex: 1 1 30%;   /* 3 por fila */
  box-sizing: border-box;
}
@media (max-width: 800px) {
  .pmpro_form_field {
    flex: 1 1 100%;
  }
}

/* ===== PMPro tablas responsive con labels REALES ===== */

/* Escritorio: tabla normal y ocultamos los labels embebidos */
@media (min-width: 769px){
  .stm-lms-user-memberships #pmpro_account .pmpro_table thead{ display: table-header-group !important; }
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody tr{ display: table-row !important; }
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody td{ display: table-cell !important; }
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody td .pmpro-cell-label{ display: none !important; }
}

/* Móvil: ocultamos thead y convertimos cada <td> en grid (label izq | valor dcha) */
@media (max-width: 768px){
  /* 0) Si el layout padre usa flex/grid/float, forzamos 100% */
  .stm-lms-user-memberships{ display: block !important; }
  .stm-lms-user-memberships #pmpro_account{ display:block !important; width:100% !important; max-width:100% !important; }
  .stm-lms-user-memberships #pmpro_account .pmpro_box{
    display:block !important; width:100% !important; max-width:none !important;
    flex:0 0 100% !important; grid-column:1 / -1 !important; float:none !important; clear:both !important;
    margin-left:0 !important; margin-right:0 !important;
  }

  /* 1) La tabla ocupa todo */
  .stm-lms-user-memberships #pmpro_account .pmpro_box .pmpro_table{
    width:100% !important; max-width:100% !important; table-layout: fixed;
  }

  /* 2) Oculta cabeceras y pone cada fila como tarjeta */
  .stm-lms-user-memberships #pmpro_account .pmpro_table thead{ display:none !important; }
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody tr{
    display:block !important; width:100% !important;
    border:1px solid #eee; border-radius:8px; margin:12px 0; overflow:hidden;
  }

  /* 3) Cada celda: grid 42% | 58% */
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody td{
    display:grid !important; width:100% !important; box-sizing:border-box;
    grid-template-columns: 42% 1fr; column-gap:.75rem; row-gap:.4rem;
    align-items:center; padding:.6rem .8rem; text-align:left !important;
  }

  /* 4) Label y valor */
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody td .pmpro-cell-label{
    font-weight:600; grid-column:1; align-self:center; word-break:break-word;
  }
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody td .pmpro-cell-value{
    grid-column:2; align-self:center;
  }
  .stm-lms-user-memberships #pmpro_account .pmpro_table tbody td .pmpro-cell-value > p{
    margin:0 !important;
  }
}

/* Centrar y destacar el título */
.masterstudy-related-courses__title {
    display: block;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 1rem;
    color: #2c3e50;
    border-bottom: 2px solid #2c3e50;
    padding-bottom: 0.5rem;
}

/* Ocultar el bloque meta completo (membresía, rating, instructor) */
.masterstudy-related-courses__item-meta {
    display: none !important;
}

/* Lista en formato de tarjetas */
.masterstudy-related-courses__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.5rem;
    padding: 0;
    list-style: none;
}

/* Tarjeta de cada curso */
.masterstudy-related-courses__item {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.masterstudy-related-courses__item:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 14px rgba(0,0,0,0.15);
}

/* Imagen adaptada */
.masterstudy-related-courses__image {
    width: 100%;
    height: auto;
    display: block;
}

/* Título de cada materia */
.masterstudy-related-courses__item-title {
    display: block;
    text-align: center;
    font-size: 1rem;
    font-weight: 600;
    padding: 0.8rem;
    color: #34495e;
}

/* Quitar subrayado y color raro en enlaces */
.masterstudy-related-courses__unified-link {
    text-decoration: none;
    color: inherit;
}

/* Panel de autenticación superior */
.pmpro-auth-panel{
    margin-bottom: 1.5rem;
    border: 1px solid var(--pmpro--color--border--variation, #e5e7eb);
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgb(0 0 0 / 6%);
}
.pmpro-auth-panel__content{ padding: 1.25rem 1.25rem; }
.pmpro-auth-panel__title{
    margin: 0 0 .25rem 0;
    font-size: clamp(1.1rem, 2vw, 1.35rem);
    line-height: 1.3;
}
.pmpro-auth-panel__subtitle{
    margin: 0 0 .75rem 0;
    color: #6b7280;
    font-size: .95rem;
}
.pmpro-auth-panel__actions{
    display: flex; flex-wrap: wrap; gap: .5rem;
}
.pmpro-btn{
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .65rem .9rem; border-radius: 10px; border: 1px solid #e5e7eb;
    text-decoration: none; font-weight: 600; line-height: 1; transition: .15s ease-in-out;
    background: #f9fafb;
}
.pmpro-btn:hover{ transform: translateY(-1px); box-shadow: 0 6px 14px rgb(0 0 0 / 8%); }
.pmpro-btn__icon{ width: 18px; height: 18px; }

.pmpro-btn--google{
    background: #fff; border-color: #e5e7eb;
}
.pmpro-btn--login{
    background: #0ea5e9; border-color: #0ea5e9; color: #fff;
}

.pmpro-auth-panel__divider{
    margin: .9rem 0; height: 1px; background: #e5e7eb; position: relative;
}
.pmpro-auth-panel__divider::after{
    content: "o";
    position: absolute; left: 50%; top: -9px; transform: translateX(-50%);
    background: #fff; padding: 0 .5rem; color: #6b7280; font-size: .85rem;
}
.pmpro-auth-panel__footnote{ margin: 0; color: #6b7280; font-size: .92rem; }

/* Oculta el bloque original “¿Ya tienes cuenta?” dentro de Información de la cuenta */
#pmpro_user_fields .pmpro_card_actions{ display:none !important; }

/* Mejora visual general de las cards de PMPro */
.pmpro .pmpro_card{
    border-radius: 12px;
    border: 1px solid var(--pmpro--color--border--variation, #e5e7eb);
    overflow: hidden;
}
.pmpro .pmpro_card_title, .pmpro .pmpro_form_heading{ margin: 0; }
.pmpro .pmpro_card_content{ padding: 1.25rem; }
.pmpro .pmpro_form_field{ margin-bottom: .9rem; }
.pmpro .pmpro_form_label{ font-weight: 600; }

/* Botón principal de pago */
.pmpro_btn.pmpro_btn-submit-checkout{
    border-radius: 10px; padding: .85rem 1.1rem; font-weight: 700;
}

/* Panel superior */
.pmpro-auth-panel{ margin-bottom:1.5rem; border:1px solid #e5e7eb; background:#fff; border-radius:12px; box-shadow:0 4px 16px rgb(0 0 0 / 6%); }
.pmpro-auth-panel__content{ padding:1.25rem; }
.pmpro-auth-panel__title{ margin:0 0 .25rem 0; font-size:clamp(1.1rem,2vw,1.35rem); line-height:1.3; }
.pmpro-auth-panel__subtitle{ margin:0 0 .75rem 0; color:#6b7280; font-size:.95rem; }
.pmpro-auth-panel__actions{ display:flex; flex-wrap:wrap; gap:.5rem; }
.pmpro-btn{ display:inline-flex; align-items:center; gap:.5rem; padding:.65rem .9rem; border-radius:10px; border:1px solid #e5e7eb; text-decoration:none; font-weight:600; line-height:1; transition:.15s; background:#f9fafb; }
.pmpro-btn:hover{ transform:translateY(-1px); box-shadow:0 6px 14px rgb(0 0 0 / 8%); }
.pmpro-btn__icon{ width:18px; height:18px; }
.pmpro-btn--google{ background:#fff; }

.pmpro-auth-panel__divider{ margin:.9rem 0; height:1px; background:#e5e7eb; position:relative; }
.pmpro-auth-panel__divider::after{ content:"o"; position:absolute; left:50%; top:-9px; transform:translateX(-50%); background:#fff; padding:0 .5rem; color:#6b7280; font-size:.85rem; }
.pmpro-auth-panel__footnote{ margin:0; color:#6b7280; font-size:.92rem; }

/* Botón de login “¿Ya tienes cuenta?” */
.pmpro-btn--login {
  background-color: var(--pmpro--color--accent);
  border: 1px solid var(--pmpro--color--accent);
  border-radius: var(--pmpro--base--border-radius);
  box-shadow: 1px 2px 4px rgb(0 0 0 / .1);
  box-sizing: border-box;
  color: var(--pmpro--color--base);
  font-weight: 600;
  text-decoration: none;
  padding: .65rem .9rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color .2s ease, box-shadow .2s ease;
}

.pmpro-btn--login:hover {
  filter: brightness(1.1);
  box-shadow: 2px 4px 8px rgb(0 0 0 / .15);
  color: var(--pmpro--color--base);
}


/* — Ajustes elegantes sobre el bloque de oferta — */
#pmpro_pricing_fields #pmpro_level_cost .pmpro_level_cost_text{
  /* borde visible pero sutil */
  border: 1px solid color-mix(in srgb, var(--pmpro--color--accent) 16%, #e5e7eb);
  border-radius: 14px;
  padding: 16px 18px;
  background: #fff;
  box-shadow: 0 6px 18px rgb(0 0 0 / .06);
}

/* pequeña línea de separación, muy discreta, antes del precio */
.offer-price-line{
  margin: 2px 0 0 0;
  padding-top: 8px;
  border-top: 1px solid rgb(0 0 0 / .06);
  color: #374151;
  font-weight: 600;
}

/* precio: un poco más pequeño y compacto */
.offer-price-line .amount{
  font-size: clamp(1.45rem, 3.2vw, 0.9rem);
  line-height: 1.05;
  font-weight: 900;
  color: #0f172a;
}
.offer-price-line .per{ color:#6b7280; }

/* título con mejor respiración */
.offer-headline{
  margin: 0 0 2px 0;
  font-size: clamp(1.02rem, 1.6vw, 1.18rem);
  line-height: 1.45;
  color: #0f172a;
}
.offer-headline .emphasis{
  font-size: clamp(1.8rem, 4vw, 2.3rem);
  font-weight: 900;
  color: var(--pmpro--color--accent);
  letter-spacing: .2px;
  margin-right: .35rem;
}

/* chips más sobrias */
.offer-chips{
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px;
}
.chip{
  display: inline-flex; align-items: center;
  padding: .36rem .6rem;
  border-radius: 999px;
  background: rgb(0 0 0 / .04);
  color: #334155;
  font-weight: 600;            /* menos “gritón” que 700 */
  font-size: .92rem;
}
.chip-accent{
  background: color-mix(in srgb, var(--pmpro--color--accent) 14%, #ffffff);
  color: #0f172a;
}
.chip-green{
  background: #EDF9F1;         /* verde clarito */
  color: #0a5f3b;
  /* si hay soporte: suaviza aún más el verde */
  background: color-mix(in srgb, #22c55e 16%, #ffffff);
}

/* en móvil, un pelín más compacto */
@media (max-width: 900px){
  #pmpro_pricing_fields #pmpro_level_cost .pmpro_level_cost_text{ padding: 14px; }
}

/* Oculta el H2 "Información de membresía" en la tarjeta de precios */
#pmpro_pricing_fields .pmpro_card_title.pmpro_font-large{
  display: none !important;
}

/* (Opcional) Ajusta un pelín el espacio superior del contenido */
#pmpro_pricing_fields .pmpro_card_content{
  padding-top: 18px; /* ajusta si quieres más/menos aire */
}

/* === Breadcrumb OpoCamp LMS === */
.mslms-breadcrumbs-container {
  background: #ffc4da80; /* fondo suave rosado */
  padding: 8px 14px;
  border-radius: 8px;
  margin-bottom: 12px;
}

.mslms-breadcrumbs {
  font-size: 15px;
  line-height: 1.5;
  font-weight: 500; /* un poco más gordo en general */
  color: #000; /* texto base negro */
}

.mslms-breadcrumbs__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.mslms-breadcrumbs__item {
  display: flex;
  align-items: center;
}

.mslms-breadcrumbs__sep {
  color: #A83A65;
  opacity: .7;
}

.mslms-breadcrumbs__link {
  color: #000; /* negro al inicio */
  font-weight: 600;
  text-decoration: none;
  transition: color .2s ease, background .2s ease;
  padding: 2px 6px;
  border-radius: 4px;
}

.mslms-breadcrumbs__link:hover {
  background: #A83A65;
  color: #fff;
  text-decoration: none;
}

.mslms-breadcrumbs__current {
  font-weight: 700;
  color: #000;
  padding: 2px 6px;
  border-radius: 4px;
  background: rgba(77,94,111,.15); /* gris suave de fondo */
}

/* =========================================================
   FIX PICKAXE · AISLARLO DE LOS ESTILOS DEL TEMA
   ========================================================= */

/* 0) IMPORTANTE: ELIMINA esta regla si la tenías,
      porque puede romper fondos/transiciones dentro del diálogo:

.pickaxe-embed [class*="bg-transparent"],
[id^="deployment-"] [class*="bg-transparent"] {
  background-color: inherit !important;
}
*/


/* 1) Quitar borde/sombra que mete el tema a TODOS los botones
      pero SOLO dentro de los embeds de Pickaxe */
.pickaxe-embed button,
[id^="deployment-"] button {
  border-color: transparent !important;
  box-shadow: none !important;
}

/* 2) Evitar que el :hover / :focus / :active global pinte fondo
      PERO SOLO en botones que NO tienen background inline.
      De esta forma NO tocamos el FAB ni botones de Pickaxe
      que ya traen su fondo configurado por inline-style. */

.pickaxe-embed button:not([style*="background"]):hover,
.pickaxe-embed button:not([style*="background"]):focus,
.pickaxe-embed button:not([style*="background"]):active,
[id^="deployment-"] button:not([style*="background"]):hover,
[id^="deployment-"] button:not([style*="background"]):focus,
[id^="deployment-"] button:not([style*="background"]):active {
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* 3) FAB / botón flotante: solo limpiamos borde,
      pero NO tocamos background ni hover */
button.pxe-fixed,
button.pxe-flex {
  border-color: transparent !important;
}

/* 4) Forzar que la “caja” del botón de enviar mantenga su fondo blanco */
.pickaxe-embed .pxe-z-2.pxe-absolute[style*="border-top-right-radius"],
[id^="deployment-"] .pxe-z-2.pxe-absolute[style*="border-top-right-radius"] {
  background-color: rgb(255, 255, 255) !important;
}

/* 5) Outline de accesibilidad solo dentro del chat de Pickaxe */
.pickaxe-embed button:focus-visible,
[id^="deployment-"] button:focus-visible,
button.pxe-fixed:focus-visible,
button.pxe-flex:focus-visible {
  outline: none !important;
}

/* 6) Subir el z-index del diálogo de Pickaxe para que no quede detrás
      de otros elementos del tema. Ajusta el número si hace falta. */
[id^="deployment-"],
[id^="deployment-"] .pxe-fixed,
[id^="deployment-"] .pxe-z-50,
.pickaxe-embed .pxe-fixed {
  z-index: 2147483647 !important; /* valor muy alto tipo "widget siempre encima" */
}

/* ===============================
   PMPRO – GUEST GATE CENTRADO
   =============================== */

.oc-pmpro-guest-wrapper{
  min-height: 70vh;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 40px 20px;
}

.oc-pmpro-guest-gate{
  max-width: 520px;
  width: 100%;
  text-align: center;
}

.oc-pmpro-actions{
  display: flex;
  gap: 14px;
  justify-content: center;
  margin-top: 10px;
}

.oc-pmpro-actions .pmpro_btn{
  flex: 1 1 auto;
  text-align: center;
}

/* Responsive */
@media (max-width: 480px){
  .oc-pmpro-actions{
    flex-direction: column;
  }
}
