.elementor-178 .elementor-element.elementor-element-2e38ebb{--display:flex;--min-height:100vh;--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;}/* Start custom CSS for shortcode, class: .elementor-element-637fb85 *//* =========================================================
   LOGIN (page-id-178) — Custom CSS del contenedor
   Contenedor principal: .bk-login-page
   Wrapper shortcode:    .bk-login-wrap
   Card (contenedor interno): .bk-login-card
   ========================================================= */

/* ---------- 1) FONDO GLOBAL + GLOW (incluye header/footer) ---------- */
.page-id-178{
  background: #FAFAFA !important;
  overflow-x: hidden;
}

/* Glow “sombrilla/mancha” detrás de TODO */
.page-id-178::before{
  content:"";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(760px 760px at 18% 70%,
      rgba(34,251,130,.20) 0%,
      rgba(34,251,130,.10) 35%,
      rgba(34,251,130,0) 70%),
    radial-gradient(620px 620px at 85% 35%,
      rgba(15,118,110,.10) 0%,
      rgba(15,118,110,0) 65%);
  filter: blur(30px);
  transform: translateZ(0);
}

/* Header/Main/Footer por encima del glow y sin fondo */
.page-id-178 .elementor-location-header,
.page-id-178 #content,
.page-id-178 .elementor-location-footer{
  position: relative;
  z-index: 1;
  background: transparent !important;
}

/* ---------- 2) CONTENEDOR DE LA PÁGINA ---------- */
.bk-login-page{
  background: transparent;
  display: grid;
  place-items: center;
  padding: clamp(14px, 3vw, 28px);
  overflow: visible;
  position: relative;
  z-index: 1;
  height: 100%;
  min-height: 0;
}

/* Wrappers Elementor */
.bk-login-page > .e-con-inner{
  width: 100%;
  height: 100%;
  min-height: 0;
  display: grid;
  place-items: center;
}

/* ---------- 3) CARD ---------- */
.bk-login-card{
  width: 100%;
  max-width: 440px;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 18px;
  box-shadow: 0 18px 50px rgba(15,23,42,.12);
  padding: 28px 24px;
}

/* ---------- 4) ULTIMATE MEMBER ---------- */
.bk-login-wrap{
  width: 100%;
}

.bk-login-wrap .um,
.bk-login-wrap .um-form,
.bk-login-wrap .um-form form{
  width: 100%;
  max-width: 100%;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.bk-login-wrap .um-header,
.bk-login-wrap .um-profile-photo{
  display: none !important;
}

.bk-login-wrap .um-field{
  margin-bottom: 14px !important;
}

.bk-login-wrap .um-field-label label{
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(15,118,110,.75);
}

.bk-login-wrap input[type="text"],
.bk-login-wrap input[type="password"],
.bk-login-wrap input[type="email"]{
  border-radius: 12px !important;
  border: 1px solid rgba(15,118,110,.18) !important;
  background: rgba(248,250,252,1) !important;
  padding: 14px 14px !important;
  height: auto !important;
  box-shadow: none !important;
}

.bk-login-wrap input:focus{
  outline: none !important;
  border-color: rgba(1,221,124,.95) !important;
  box-shadow: 0 0 0 4px rgba(1,221,124,.18) !important;
}

.bk-login-wrap .um-link-alt,
.bk-login-wrap a{
  color: rgba(15,118,110,.85);
  font-weight: 600;
  text-decoration: none;
}
.bk-login-wrap a:hover{
  color: #01dd7c;
}

.bk-login-wrap .um-button,
.bk-login-wrap input[type="submit"].um-button{
  width: 100% !important;
  border: 0 !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  background: linear-gradient(135deg, #01dd7c, #22fb82) !important;
  color: #003e3e !important;
  font-weight: 800 !important;
  box-shadow: 0 14px 34px rgba(1,221,124,.22) !important;
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease;
}

.bk-login-wrap .um-button:hover{
  transform: translateY(-1px);
  filter: brightness(1.02);
  box-shadow: 0 18px 42px rgba(1,221,124,.28) !important;
}

/* ---------- 5) MÓVIL: centrar ---------- */
@media (max-width: 767px){
  .page-id-178 #content,
  .page-id-178 #content > .page-content,
  .page-id-178 #content > .page-content > .elementor{
    height: 100%;
    min-height: 0;
  }

  .page-id-178 .bk-login-page{
    padding: 16px;
    display: grid;
    place-items: center;
    min-height: 100svh;
    height: auto;
  }

  .page-id-178 .bk-login-card{
    width: 100%;
    max-width: 420px;
  }
}

/* =========================================================
   HEADER / MENÚ (ARREGLO DEFINITIVO stacking + hamburguesa)
   ========================================================= */

/* ===== Header layout ===== */
.app-header{ width: 100%; }

.app-header .elementor-container,
.app-header .e-con-inner{
  max-width: 1200px;
  margin: 0 auto;
}

.app-logo,
.app-logo a{
  display: flex !important;
  align-items: center !important;
}

.app-logo img,
.app-header .elementor-widget-site-logo img{
  width: auto !important;
  height: 42px !important;
  max-height: 42px !important;
  object-fit: contain !important;
  object-position: left center !important;
  image-rendering: -webkit-optimize-contrast;
}

.app-header .elementor-widget-site-logo a,
.app-header .elementor-widget-site-logo{
  line-height: 0 !important;
}

@media (max-width: 767px){
  .app-logo img,
  .app-header .elementor-widget-site-logo img{
    height: 34px !important;
    max-height: 34px !important;
  }
}

.app-header.e-con{
  max-width: 1200px;
  margin: 0 auto;
}

/* 1) Header siempre arriba + evita stacking raros */
.elementor-location-header{
  position: sticky;
  top: 0;
  z-index: 2147483000 !important;
  isolation: isolate; /* crea stacking propio “ganador” */
}

/* 2) Nada del header recorta el dropdown */
.elementor-location-header,
.elementor-location-header .e-con,
.elementor-location-header .e-con-inner{
  overflow: visible !important;
}

/* 3) MUY IMPORTANTE:
      NO dejes el main con z-index, porque te tapa overlays según el stacking context.
      Lo anulamos SOLO en esta página para no cargarte otras. */
.page-id-178 #content,
.page-id-178 .site-content{
  z-index: auto !important;
}

/* 4) El widget del nav menu por encima y sin transforms que rompan fixed */
.elementor-location-header .elementor-widget-nav-menu{
  position: relative;
  z-index: 2147483001 !important;
  transform: none !important;
  filter: none !important;
}

/* 5) Dropdown: fixed, centrado y SIEMPRE encima */
:root{ --bk-header-h: 84px; }
@media (max-width: 767px){ :root{ --bk-header-h: 72px; } }

.elementor-location-header .elementor-nav-menu--dropdown{
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  top: var(--bk-header-h) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  z-index: 2147483647 !important;
  overflow: visible !important;
}

/* Elementor mete inline width/left/top -> lo neutralizamos */
.elementor-location-header .elementor-nav-menu--dropdown[style]{
  left: 0 !important;
  right: 0 !important;
  top: var(--bk-header-h) !important;
}

/* 6) Centrado del listado */
.elementor-location-header .elementor-nav-menu--dropdown ul.elementor-nav-menu{
  width: min(520px, 92vw);
  margin: 0 auto !important;
  text-align: center;
  padding: 10px 0;
}

.elementor-location-header .elementor-nav-menu--dropdown li{ width: 100%; }

.elementor-location-header .elementor-nav-menu--dropdown a.elementor-item{
  display: block;
  text-align: center;
}/* End custom CSS */