/*
 * Prestadores - Acceso y autenticacion publica
 * Fase 9K.1 - Extraido del CSS adicional estable de Fase 9I.
 * Incluye /mi-cuenta/ para visitantes, recuperacion y cambio de contrasena.
 * La regla mixta de .account-status-block permanece en el CSS adicional.
 */

/* =========================================================
   FASE 6J - ACCESO PUBLICO /MI-CUENTA
   Bloque canonico consolidado - visitante no logueado
   Dueno visual: .account-hero / .account-card
========================================================= */

.account-hero{
  background:linear-gradient(160deg,#e8f0ff 0%,#f6fbff 50%,#ffffff 100%);
  padding:clamp(28px,6vw,60px) 0;
}

.account-wrap{
  width:min(1100px,92%);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:clamp(20px,4vw,36px);
  align-items:center;
}

.account-left h1{ margin:6px 0 10px; font-size:clamp(28px,4vw,44px); line-height:1.1; color:var(--ink); }

.account-left .lead{ font-size:clamp(16px,1.7vw,18px); color:var(--muted); max-width:48ch; }

.pill{
  display:inline-block;
  font-weight:600;
  font-size:.85rem;
  padding:6px 10px;
  border-radius:999px;
  background:#eef4ff;
  color:#1843c7;
  border:1px solid #dfe8ff;
}

.benefits{ margin:16px 0 0; padding:0; list-style:none; color:var(--muted); }
.benefits li{ position:relative; margin:8px 0; padding-left:24px; }

.benefits li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--brand);
}

.account-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow);
  padding:clamp(18px,2.4vw,24px);
  display:flex;
  flex-direction:column;
  gap:14px;
}

.account-card .wp-block-group.has-border,
.account-card .wp-block-group.is-style-bordered,
.account-card .kadence-blocks-accordion-item,
.account-card .card,
.account-card .panel,
.account-card [class*="border"],
.account-card .box,
.account-card .fieldset{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding-left:0!important;
  padding-right:0!important;
}

.account-card input[type="text"],
.account-card input[type="email"],
.account-card input[type="password"],
.account-card input[type="tel"],
.account-card select,
.account-card textarea,
.account-card .ff-el-input--content input,
.account-card .ff-el-input--content textarea{
  width:100%;
  border:1px solid var(--line);
  background:#fff;
  border-radius:10px;
  padding:12px;
  font-size:16px;
  color:#0f172a;
  outline:none;
  box-shadow:0 1px 0 rgba(2,6,23,.02);
}

.account-card input:focus,
.account-card select:focus,
.account-card textarea:focus{ border-color:#b4ccff; box-shadow:0 0 0 4px rgba(37,99,235,.12); }

.account-card #prestadores-login p.login-submit{ margin:12px 0 0!important; }

.account-card #prestadores-login #login-submit{
  display:flex!important;
  width:100%!important;
  justify-content:center!important;
  align-items:center!important;
  min-height:48px;
  padding:14px 18px!important;
  border:0!important;
  border-radius:14px!important;
  font-weight:700!important;
  font-size:16px!important;
  line-height:1!important;
  color:#fff!important;
  background:linear-gradient(180deg,#2563eb 0%,#1d4ed8 100%)!important;
  box-shadow:0 12px 28px rgba(37,99,235,.22)!important;
  cursor:pointer!important;
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease!important;
}

.account-card #prestadores-login #login-submit:hover{
  filter:brightness(1.03);
  transform:translateY(-1px);
  box-shadow:0 16px 34px rgba(37,99,235,.26)!important;
}

.account-card #prestadores-login #login-submit:active{ transform:translateY(0); filter:brightness(.98); }
.account-card #prestadores-login #login-submit:focus{ outline:none!important; }

.account-card #prestadores-login #login-submit:focus-visible{
  outline:3px solid rgba(37,99,235,.25)!important;
  outline-offset:3px;
}

/* Estructura WordPress y fondo del acceso */
body:not(.logged-in).page-id-1828,
body:not(.logged-in).page-id-1828 #wrapper,
body:not(.logged-in).page-id-1828 #inner-wrap,
body:not(.logged-in).page-id-1828 .site,
body:not(.logged-in).page-id-1828 .site-content,
body:not(.logged-in).page-id-1828 .site-main,
body:not(.logged-in).page-id-1828 .content-area,
body:not(.logged-in).page-id-1828 .entry,
body:not(.logged-in).page-id-1828 .entry-content,
body:not(.logged-in).page-id-1828 .entry-content-wrap,
body:not(.logged-in).page-id-1828 .kb-row-layout-wrap,
body:not(.logged-in).page-id-1828 .kt-row-column-wrap,
body:not(.logged-in).page-id-1828 .kt-inside-inner-col{
  background:#EAF2FB!important;
}

body:not(.logged-in).page-id-1828 #inner-wrap,
body:not(.logged-in).page-id-1828 #primary,
body:not(.logged-in).page-id-1828 #main,
body:not(.logged-in).page-id-1828 .site-main,
body:not(.logged-in).page-id-1828 .content-area,
body:not(.logged-in).page-id-1828 .entry-content,
body:not(.logged-in).page-id-1828 .entry-content-wrap{
  min-height:0!important;
  height:auto!important;
  display:block!important;
  flex:none!important;
}

body:not(.logged-in).page-id-1828 #inner-wrap,
body:not(.logged-in).page-id-1828 #primary,
body:not(.logged-in).page-id-1828 #main{
  min-height:100vh!important;
}

body:not(.logged-in).page-id-1828 #colophon,
body:not(.logged-in).page-id-1828 footer,
body:not(.logged-in).page-id-1828 .site-footer{
  display:none!important;
}

body:not(.logged-in).page-id-1828 .account-hero{
  min-height:calc(100vh - 86px);
  display:flex;
  align-items:center;
  padding:80px 0 90px;
  box-sizing:border-box;
  background:linear-gradient(160deg,#e8f0ff 0%,#f6fbff 52%,#ffffff 100%);
}

/* Tipografia final del acceso */
body:not(.logged-in).page-id-1828 .account-left .pill{ font-weight:650!important; letter-spacing:-.01em!important; color:#2563eb!important; }

body:not(.logged-in).page-id-1828 .account-left h1{
  font-size:clamp(2rem,3.7vw,2.75rem)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  font-weight:650!important;
  color:#111827!important;
}

body:not(.logged-in).page-id-1828 .account-left .lead{
  font-size:1rem!important;
  line-height:1.5!important;
  font-weight:400!important;
  color:#374151!important;
  max-width:48ch!important;
}

body:not(.logged-in).page-id-1828 .account-left .lead strong{ font-weight:650!important; color:#111827!important; }
body:not(.logged-in).page-id-1828 .benefits{ color:#374151!important; }

body:not(.logged-in).page-id-1828 .benefits li{ font-size:1rem!important; line-height:1.45!important; font-weight:400!important; }

body:not(.logged-in).page-id-1828 .account-card h3,
body:not(.logged-in).page-id-1828 .account-card .card-head h3{
  margin:0 0 6px!important;
  font-size:1.55rem!important;
  line-height:1.14!important;
  letter-spacing:-.032em!important;
  font-weight:650!important;
  color:#111827!important;
}

body:not(.logged-in).page-id-1828 .account-card .card-sub,
body:not(.logged-in).page-id-1828 .account-card p{
  font-size:1rem!important;
  line-height:1.48!important;
  font-weight:400!important;
  color:#4b5563!important;
}

body:not(.logged-in).page-id-1828 .account-card label{ font-size:.95rem!important; line-height:1.35!important; font-weight:500!important; color:#374151!important; }

body:not(.logged-in).page-id-1828 .account-card input[type="text"],
body:not(.logged-in).page-id-1828 .account-card input[type="email"],
body:not(.logged-in).page-id-1828 .account-card input[type="password"],
body:not(.logged-in).page-id-1828 .account-card input[type="tel"]{
  font-size:16px!important;
  font-weight:400!important;
  color:#111827!important;
}

body:not(.logged-in).page-id-1828 .account-card #prestadores-login #login-submit{ font-weight:650!important; letter-spacing:-.01em!important; }

body:not(.logged-in).page-id-1828 .account-card a,
body:not(.logged-in).page-id-1828 .card-foot a{ font-weight:500!important; }

@media (max-width:980px){ .account-wrap{ grid-template-columns:1fr; } }

@media (min-width:768px){
  body:not(.logged-in).page-id-1828{
    overflow-y:hidden!important;
  }

  body:not(.logged-in).page-id-1828 .account-hero{
    height:calc(100vh - 74px)!important;
    min-height:calc(100vh - 74px)!important;
    max-height:calc(100vh - 74px)!important;
    overflow:hidden!important;
    padding:48px 0 40px!important;
  }
}

@media (max-width:768px){
  .account-card input[type="text"],
.account-card input[type="email"],
.account-card input[type="password"]{
    font-size:16px!important;
    line-height:1.4;
  }
}

@media (max-width:767px){
  body:not(.logged-in).page-id-1828{
    overflow-y:auto!important;
  }

  body:not(.logged-in).page-id-1828 .account-hero{
    height:auto!important;
    min-height:100vh!important;
    max-height:none!important;
    overflow:visible!important;
    padding:32px 16px 40px!important;
  }

  .account-left{ margin-bottom:24px; }
  .account-wrap{ display:flex; flex-direction:column; justify-content:center; }

  body:not(.logged-in).page-id-1828 .account-left h1{
    font-size:clamp(1.86rem,7vw,2.2rem)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    font-weight:650!important;
  }

  body:not(.logged-in).page-id-1828 .account-left .lead{
    font-size:.96rem!important;
    line-height:1.48!important;
    font-weight:400!important;
  }

  body:not(.logged-in).page-id-1828 .benefits li{ font-size:.95rem!important; line-height:1.45!important; font-weight:400!important; }

  body:not(.logged-in).page-id-1828 .account-card h3,
body:not(.logged-in).page-id-1828 .account-card .card-head h3{
    font-size:1.42rem!important;
    line-height:1.14!important;
    font-weight:650!important;
  }

  body:not(.logged-in).page-id-1828 .account-card .card-sub,
body:not(.logged-in).page-id-1828 .account-card p{
    font-size:.95rem!important;
    line-height:1.45!important;
  }
}


/* ---------------------------------------------
   10) AUTH - Recuperar contrasena (page-id-3383)
--------------------------------------------- */
/* PRESTADORES - Recuperar contrasena */
.prest-pass-wrap,
.prest-pass-wrapper{
  max-width:480px;
  margin:60px auto 80px;
  padding:24px 20px 28px;
  background:#ffffff;
  border-radius:20px;
  box-shadow:0 24px 60px rgba(15,23,42,.16);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#0f172a;
}

/* ---------------------------------------------
   11) AUTH - Cambiar contrasena (page-id-3421)
--------------------------------------------- */
body.page-id-3421 .auth-wrap{ display:flex; justify-content:center; padding:48px 16px; }
body.page-id-3421 .auth-card{
  max-width:720px;
  width:100%;
  background:#fff;
  border:1px solid rgba(2,6,23,.08);
  border-radius:22px;
  box-shadow:0 30px 80px rgba(2,6,23,.08);
  padding:34px 34px 26px;
}
body.page-id-3421 .auth-head{ display:flex; gap:14px; align-items:flex-start; margin-bottom:22px; }
body.page-id-3421 .auth-dot{
  width:14px;height:14px;border-radius:999px;
  background:rgba(37,99,235,.20);
  box-shadow:0 0 0 6px rgba(37,99,235,.10);
  margin-top:6px;
}
body.page-id-3421 .auth-title{
  margin:0 0 6px;
  font-size:32px;
  line-height:1.15;
  letter-spacing:-.02em;
  color:#0F172A;
}
body.page-id-3421 .auth-sub{ margin:0; color:#334155; font-size:15px; line-height:1.6; }

body.page-id-3421 .auth-form{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:12px;
}
body.page-id-3421 .auth-form .auth-field{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:0;
}
body.page-id-3421 .auth-form .auth-field label{ font-weight:700; color:#0F172A; margin:0; }
body.page-id-3421 .auth-form .auth-field input[type="password"]{
  width:100%;
  box-sizing:border-box;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(2,6,23,.12);
  box-shadow:0 1px 0 rgba(2,6,23,.03);
}
body.page-id-3421 .auth-form .auth-field input[type="password"]:focus{
  outline:none;
  border-color:rgba(37,99,235,.55);
  box-shadow:0 0 0 4px rgba(37,99,235,.16);
}
body.page-id-3421 .auth-form button.pp-btn{
  width:100%;
  display:block;
  margin-top:8px;
  padding:12px 16px;
  border-radius:14px;
  border:none;
  font-weight:800;
  color:#fff;
  background:linear-gradient(90deg,#2563EB,#0EA5E9);
  box-shadow:0 12px 30px rgba(37,99,235,.22);
  cursor:pointer;
}
body.page-id-3421 .auth-form button.pp-btn:hover{ filter:brightness(1.02); }

body.page-id-3421 .auth-foot{
  margin-top:14px;
  padding-top:12px;
  border-top:1px dashed rgba(2,6,23,.12);
}
body.page-id-3421 .auth-foot a{ font-weight:700; color:#2563EB; }
/* =========================================================
   FASE 9K.7 - MI CUENTA PUBLICA
   Fondo continuo y ancho movil sin doble contenedor
   Alcance: visitante no autenticado en /mi-cuenta/
========================================================= */

body:not(.logged-in).page-id-1828{
  background:#EAF2FB!important;
  overflow-x:clip!important;
}

body:not(.logged-in).page-id-1828 .account-hero{
  width:100vw!important;
  max-width:100vw!important;
  margin-right:calc(50% - 50vw)!important;
  margin-left:calc(50% - 50vw)!important;
  background:#EAF2FB!important;
}

body:not(.logged-in).page-id-1828 .account-wrap{
  width:min(1100px,calc(100% - 48px))!important;
  max-width:1100px!important;
  margin-right:auto!important;
  margin-left:auto!important;
  box-sizing:border-box!important;
}

@media (max-width:767px){
  body:not(.logged-in).page-id-1828 .account-hero{
    width:100vw!important;
    max-width:100vw!important;
    margin-right:calc(50% - 50vw)!important;
    margin-left:calc(50% - 50vw)!important;
    padding:32px 0 40px!important;
    background:#EAF2FB!important;
  }

  body:not(.logged-in).page-id-1828 .account-wrap{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-right:18px!important;
    padding-left:18px!important;
    gap:34px!important;
    align-items:stretch!important;
    box-sizing:border-box!important;
  }

  body:not(.logged-in).page-id-1828 .account-left{
    width:100%!important;
    max-width:none!important;
    margin-bottom:0!important;
    box-sizing:border-box!important;
  }

  body:not(.logged-in).page-id-1828 .account-card{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
}

/* =========================================================
   FASE 9K.10.1 - CABECERA OFICIAL Y ACCESO SIN LOGOS DUPLICADOS
   Pantalla dividida bajo la cabecera pública oficial de Prestadores.
   No modifica recuperación, cambio de contraseña ni panel autenticado.
========================================================= */

/* Neutraliza la estructura Kadence exterior sin afectar al panel autenticado. */
body:not(.logged-in).page-id-1828,
body:not(.logged-in).page-id-1828 #wrapper,
body:not(.logged-in).page-id-1828 #inner-wrap,
body:not(.logged-in).page-id-1828 .site,
body:not(.logged-in).page-id-1828 .site-content,
body:not(.logged-in).page-id-1828 .site-main,
body:not(.logged-in).page-id-1828 .content-area,
body:not(.logged-in).page-id-1828 .entry,
body:not(.logged-in).page-id-1828 .entry-content,
body:not(.logged-in).page-id-1828 .entry-content-wrap,
body:not(.logged-in).page-id-1828 .kb-row-layout-wrap,
body:not(.logged-in).page-id-1828 .kt-row-column-wrap,
body:not(.logged-in).page-id-1828 .wp-block-kadence-column,
body:not(.logged-in).page-id-1828 .kt-inside-inner-col{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:#f3f6fb!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}

body:not(.logged-in).page-id-1828{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  color:#0f172a!important;
}

body:not(.logged-in).page-id-1828 #inner-wrap,
body:not(.logged-in).page-id-1828 #primary,
body:not(.logged-in).page-id-1828 #main{
  min-height:0!important;
}

body:not(.logged-in).page-id-1828 .entry-content > p:empty{
  display:none!important;
}

/* Marco principal inmersivo. */
body:not(.logged-in).page-id-1828 .account-hero.account-hero--split{
  width:100vw!important;
  max-width:100vw!important;
  min-height:calc(100svh - 92px)!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:18px 18px 22px!important;
  display:flex!important;
  align-items:stretch!important;
  background:#f3f6fb!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

body:not(.logged-in).page-id-1828 .account-login-layout{
  width:100%!important;
  max-width:none!important;
  min-height:calc(100svh - 132px)!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr)!important;
  gap:0!important;
  align-items:stretch!important;
  border:1px solid rgba(148,163,184,.18)!important;
  border-radius:28px!important;
  background:#ffffff!important;
  box-shadow:0 24px 70px rgba(15,23,42,.10)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

/* Panel azul de marca. */
body:not(.logged-in).page-id-1828 .account-brand-panel{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  color:#ffffff!important;
  background:
    radial-gradient(circle at 56% 42%,rgba(96,165,250,.48) 0,rgba(59,130,246,.18) 25%,rgba(37,99,235,0) 56%),
    linear-gradient(145deg,#1149ad 0%,#1d5fc8 50%,#1f6ed2 100%)!important;
  overflow:hidden!important;
  isolation:isolate!important;
  box-sizing:border-box!important;
}

body:not(.logged-in).page-id-1828 .account-brand-panel::before,
body:not(.logged-in).page-id-1828 .account-brand-panel::after{
  content:"";
  position:absolute;
  z-index:0;
  border-radius:999px;
  pointer-events:none;
}

body:not(.logged-in).page-id-1828 .account-brand-panel::before{
  width:520px;
  height:520px;
  left:34%;
  top:24%;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:
    0 0 0 72px rgba(255,255,255,.025),
    0 0 0 148px rgba(255,255,255,.018);
}

body:not(.logged-in).page-id-1828 .account-brand-panel::after{
  width:240px;
  height:240px;
  right:-70px;
  bottom:-80px;
  background:rgba(255,255,255,.055);
  filter:blur(2px);
}

body:not(.logged-in).page-id-1828 .account-brand-panel__inner{
  position:relative;
  z-index:1;
  min-height:100%;
  display:flex;
  flex-direction:column;
  padding:48px 54px 46px;
  box-sizing:border-box;
}

body:not(.logged-in).page-id-1828 .account-brand-panel__copy{
  margin-top:auto;
  margin-bottom:40px;
  max-width:650px;
}

body:not(.logged-in).page-id-1828 .account-brand-panel__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  margin:0 0 18px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  color:rgba(255,255,255,.94);
  background:rgba(255,255,255,.10);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  font-size:.78rem;
  line-height:1;
  font-weight:700;
  letter-spacing:.02em;
}

body:not(.logged-in).page-id-1828 .account-brand-panel h1{
  margin:0!important;
  max-width:760px!important;
  color:#ffffff!important;
  font-size:clamp(2.9rem,5vw,5.3rem)!important;
  line-height:.98!important;
  font-weight:600!important;
  letter-spacing:-.055em!important;
  text-wrap:balance!important;
}

body:not(.logged-in).page-id-1828 .account-brand-panel .lead{
  max-width:620px!important;
  margin:24px 0 0!important;
  color:rgba(255,255,255,.82)!important;
  font-size:clamp(1rem,1.35vw,1.2rem)!important;
  line-height:1.55!important;
  font-weight:400!important;
}

body:not(.logged-in).page-id-1828 .account-brand-panel__tags{
  position:relative;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

body:not(.logged-in).page-id-1828 .account-brand-panel__tags li{
  min-height:31px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.30);
  border-radius:999px;
  color:#ffffff;
  background:rgba(255,255,255,.11);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  font-size:.77rem;
  line-height:1;
  font-weight:700;
}

/* Panel derecho y formulario. */
body:not(.logged-in).page-id-1828 .account-form-panel{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:100%!important;
  margin:0!important;
  padding:48px clamp(42px,6vw,96px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  color:#0f172a!important;
  background:#ffffff!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}

body:not(.logged-in).page-id-1828 .account-form-panel__inner{
  width:100%;
  max-width:440px;
  margin:0 auto;
}

body:not(.logged-in).page-id-1828 .account-form-panel .card-head{
  display:block!important;
  margin:0 0 26px!important;
  padding:0!important;
}

body:not(.logged-in).page-id-1828 .account-form-panel .card-head h2,
body:not(.logged-in).page-id-1828 .account-form-panel .card-head h3{
  margin:0 0 7px!important;
  color:#0f172a!important;
  font-size:clamp(1.9rem,2.8vw,2.35rem)!important;
  line-height:1.08!important;
  font-weight:650!important;
  letter-spacing:-.045em!important;
}

body:not(.logged-in).page-id-1828 .account-form-panel .card-sub{
  margin:0!important;
  color:#6b7280!important;
  font-size:.98rem!important;
  line-height:1.5!important;
  font-weight:400!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login{
  width:100%;
  margin:0;
}

body:not(.logged-in).page-id-1828 #prestadores-login p{
  margin:0 0 18px!important;
  padding:0!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login p.login-remember{
  display:flex;
  align-items:center;
  margin:2px 0 22px!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login label{
  display:block!important;
  margin:0 0 8px!important;
  color:#1f2937!important;
  font-size:.94rem!important;
  line-height:1.3!important;
  font-weight:600!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login p.login-remember label{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  color:#374151!important;
  font-weight:500!important;
  cursor:pointer;
}

body:not(.logged-in).page-id-1828 #prestadores-login input[type="text"],
body:not(.logged-in).page-id-1828 #prestadores-login input[type="email"],
body:not(.logged-in).page-id-1828 #prestadores-login input[type="password"]{
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:0 15px!important;
  border:1px solid #d7dee9!important;
  border-radius:11px!important;
  color:#0f172a!important;
  background:#f8fafc!important;
  box-shadow:0 1px 0 rgba(15,23,42,.02)!important;
  outline:none!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:400!important;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease!important;
  box-sizing:border-box!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login input[type="text"]:hover,
body:not(.logged-in).page-id-1828 #prestadores-login input[type="email"]:hover,
body:not(.logged-in).page-id-1828 #prestadores-login input[type="password"]:hover{
  border-color:#bdc8d8!important;
  background:#ffffff!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login input[type="text"]:focus,
body:not(.logged-in).page-id-1828 #prestadores-login input[type="email"]:focus,
body:not(.logged-in).page-id-1828 #prestadores-login input[type="password"]:focus{
  border-color:#2563eb!important;
  background:#ffffff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.13)!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login input:-webkit-autofill,
body:not(.logged-in).page-id-1828 #prestadores-login input:-webkit-autofill:hover,
body:not(.logged-in).page-id-1828 #prestadores-login input:-webkit-autofill:focus{
  -webkit-text-fill-color:#0f172a!important;
  -webkit-box-shadow:0 0 0 1000px #ffffff inset!important;
  transition:background-color 9999s ease-out 0s!important;
}

body:not(.logged-in).page-id-1828 #prestadores-login input[type="checkbox"]{
  width:17px!important;
  height:17px!important;
  margin:0!important;
  accent-color:#2563eb;
}

body:not(.logged-in).page-id-1828 .account-form-panel #prestadores-login p.login-submit{
  margin:0!important;
}

body:not(.logged-in).page-id-1828 .account-form-panel #prestadores-login #login-submit{
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:0 20px!important;
  border:0!important;
  border-radius:11px!important;
  color:#ffffff!important;
  background:linear-gradient(180deg,#2f6def 0%,#1f59df 100%)!important;
  box-shadow:0 12px 26px rgba(37,99,235,.24)!important;
  font-size:1rem!important;
  line-height:1!important;
  font-weight:650!important;
  letter-spacing:-.015em!important;
  cursor:pointer!important;
}

body:not(.logged-in).page-id-1828 .account-form-panel #prestadores-login #login-submit:hover{
  filter:brightness(1.025)!important;
  transform:translateY(-1px)!important;
  box-shadow:0 15px 30px rgba(37,99,235,.28)!important;
}

body:not(.logged-in).page-id-1828 .account-form-panel #prestadores-login #login-submit:active{
  transform:translateY(0)!important;
}

body:not(.logged-in).page-id-1828 .login-extra{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:8px 14px!important;
  margin:30px 0 0!important;
  padding:0!important;
  color:transparent!important;
  font-size:0!important;
  text-align:center!important;
}

body:not(.logged-in).page-id-1828 .login-extra a{
  color:#2563eb!important;
  font-size:.94rem!important;
  line-height:1.35!important;
  font-weight:600!important;
  text-decoration:none!important;
}

body:not(.logged-in).page-id-1828 .login-extra a:hover{
  color:#1d4ed8!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

body:not(.logged-in).page-id-1828 .login-error{
  margin:0 0 18px!important;
  padding:12px 14px!important;
  border:1px solid #fecaca!important;
  border-radius:10px!important;
  color:#991b1b!important;
  background:#fef2f2!important;
  font-size:.9rem!important;
  line-height:1.45!important;
  font-weight:500!important;
}

/* Tableta: conserva dos secciones, con mayor presencia del formulario. */
@media (max-width:1080px) and (min-width:768px){
  body:not(.logged-in).page-id-1828 .account-login-layout{
    grid-template-columns:minmax(0,.92fr) minmax(390px,1.08fr)!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__inner{
    padding:40px 38px;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel h1{
    font-size:clamp(2.5rem,5.2vw,4rem)!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel{
    padding:42px 38px!important;
  }
}

/* Móvil: panel azul breve arriba y formulario blanco a ancho completo. */
@media (max-width:767px){
  body:not(.logged-in).page-id-1828 .account-hero.account-hero--split{
    min-height:calc(100svh - 112px)!important;
    padding:12px 0 0!important;
    display:block!important;
    background:#ffffff!important;
  }

  body:not(.logged-in).page-id-1828 .account-login-layout{
    min-height:calc(100svh - 124px)!important;
    display:block!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel{
    min-height:330px!important;
    border-radius:0 0 28px 28px!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__inner{
    min-height:330px;
    padding:26px 22px 30px;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__copy{
    margin-top:auto;
    margin-bottom:24px;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__eyebrow{
    min-height:27px;
    margin-bottom:14px;
    padding:0 10px;
    font-size:.7rem;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel h1{
    font-size:clamp(2.1rem,10vw,3rem)!important;
    line-height:1.01!important;
    letter-spacing:-.05em!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel .lead{
    margin-top:16px!important;
    font-size:.96rem!important;
    line-height:1.48!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__tags{
    gap:7px;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__tags li{
    min-height:28px;
    padding:0 12px;
    font-size:.68rem;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel{
    min-height:0!important;
    padding:36px 22px 52px!important;
    display:block!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel__inner{
    max-width:520px;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel .card-head{
    margin-bottom:24px!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel .card-head h2,
  body:not(.logged-in).page-id-1828 .account-form-panel .card-head h3{
    font-size:1.85rem!important;
  }

  body:not(.logged-in).page-id-1828 #prestadores-login p{
    margin-bottom:17px!important;
  }

  body:not(.logged-in).page-id-1828 .login-extra{
    justify-content:flex-start!important;
    margin-top:28px!important;
    text-align:left!important;
  }
}

@media (max-width:380px){
  body:not(.logged-in).page-id-1828 .account-brand-panel__inner{
    padding-right:18px;
    padding-left:18px;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel{
    padding-right:18px!important;
    padding-left:18px!important;
  }
}

/* =========================================================
   FASE 9K.10.2 - CIERRE VERTICAL SIN DOBLE FONDO
   El acceso ocupa toda la altura restante bajo la cabecera.
========================================================= */

@media (min-width:768px){
  /*
   * La altura se resuelve mediante flexbox desde el wrapper principal.
   * Así evitamos depender de restas fijas respecto de la cabecera.
   */
  body:not(.logged-in).page-id-1828 #wrapper{
    min-height:100dvh!important;
    display:flex!important;
    flex-direction:column!important;
  }

  body:not(.logged-in).page-id-1828 #inner-wrap,
  body:not(.logged-in).page-id-1828 .site-content,
  body:not(.logged-in).page-id-1828 .content-area,
  body:not(.logged-in).page-id-1828 #primary,
  body:not(.logged-in).page-id-1828 #main,
  body:not(.logged-in).page-id-1828 .site-main,
  body:not(.logged-in).page-id-1828 .entry,
  body:not(.logged-in).page-id-1828 .entry-content,
  body:not(.logged-in).page-id-1828 .entry-content-wrap,
  body:not(.logged-in).page-id-1828 .kb-row-layout-wrap,
  body:not(.logged-in).page-id-1828 .kt-row-layout-inner,
  body:not(.logged-in).page-id-1828 .kt-row-column-wrap,
  body:not(.logged-in).page-id-1828 .wp-block-kadence-column,
  body:not(.logged-in).page-id-1828 .kt-inside-inner-col{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }

  body:not(.logged-in).page-id-1828 .account-hero.account-hero--split{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:18px!important;
  }

  body:not(.logged-in).page-id-1828 .account-login-layout{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
  }
}

/* =========================================================
   FASE 9K.10.3 - PANEL ANCLADO BAJO LA CABECERA
   El acceso comienza a media altura de la cabecera y llega al fondo.
========================================================= */

@media (min-width:768px){
  /*
   * La cabecera oficial permanece por encima del panel.
   * El bloque de acceso se desplaza hacia arriba para comenzar
   * aproximadamente desde la mitad vertical de la cabecera.
   */
  body:not(.logged-in).page-id-1828 #masthead,
  body:not(.logged-in).page-id-1828 .site-header,
  body:not(.logged-in).page-id-1828 .site-header-wrap,
  body:not(.logged-in).page-id-1828 .site-header-row-container,
  body:not(.logged-in).page-id-1828 .site-header-row-container-inner,
  body:not(.logged-in).page-id-1828 .kadence-sticky-header{
    position:relative!important;
    z-index:30!important;
  }

  body:not(.logged-in).page-id-1828 .site-content,
  body:not(.logged-in).page-id-1828 .content-area,
  body:not(.logged-in).page-id-1828 #primary,
  body:not(.logged-in).page-id-1828 #main,
  body:not(.logged-in).page-id-1828 .site-main,
  body:not(.logged-in).page-id-1828 .entry,
  body:not(.logged-in).page-id-1828 .entry-content,
  body:not(.logged-in).page-id-1828 .entry-content-wrap{
    overflow:visible!important;
  }

  body:not(.logged-in).page-id-1828 .account-hero.account-hero--split{
    position:relative!important;
    z-index:1!important;
    width:100vw!important;
    max-width:100vw!important;
    min-height:calc(100dvh - 96px)!important;
    margin-top:-52px!important;
    margin-right:calc(50% - 50vw)!important;
    margin-bottom:0!important;
    margin-left:calc(50% - 50vw)!important;
    padding:0 20px!important;
    align-items:stretch!important;
    background:#f3f6fb!important;
  }

  body:not(.logged-in).page-id-1828 .account-login-layout{
    width:100%!important;
    max-width:none!important;
    min-height:calc(100dvh - 96px)!important;
    height:auto!important;
    margin:0!important;
    border-right:1px solid rgba(148,163,184,.18)!important;
    border-bottom:0!important;
    border-left:1px solid rgba(148,163,184,.18)!important;
    border-radius:30px 30px 0 0!important;
    box-shadow:0 -8px 34px rgba(15,23,42,.07)!important;
    overflow:hidden!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel,
  body:not(.logged-in).page-id-1828 .account-form-panel{
    min-height:calc(100dvh - 96px)!important;
  }
}

/* =========================================================
   FASE 9K.10.4 - ACCESO A PANTALLA COMPLETA
   Azul y blanco ocupan todo el viewport; cabecera superpuesta.
========================================================= */

@media (min-width:768px){
  /*
   * La cabecera oficial queda flotando sobre la composición.
   * El acceso ocupa de borde a borde todo el viewport.
   */
  body:not(.logged-in).page-id-1828 #masthead,
  body:not(.logged-in).page-id-1828 .site-header,
  body:not(.logged-in).page-id-1828 .site-header-wrap,
  body:not(.logged-in).page-id-1828 .site-header-row-container,
  body:not(.logged-in).page-id-1828 .site-header-row-container-inner,
  body:not(.logged-in).page-id-1828 .kadence-sticky-header{
    position:fixed!important;
    top:18px!important;
    left:50%!important;
    z-index:50!important;
    width:min(1320px,calc(100vw - 36px))!important;
    max-width:min(1320px,calc(100vw - 36px))!important;
    margin:0!important;
    transform:translateX(-50%)!important;
  }

  body:not(.logged-in).page-id-1828,
  body:not(.logged-in).page-id-1828 #wrapper,
  body:not(.logged-in).page-id-1828 #inner-wrap,
  body:not(.logged-in).page-id-1828 .site,
  body:not(.logged-in).page-id-1828 .site-content,
  body:not(.logged-in).page-id-1828 .content-area,
  body:not(.logged-in).page-id-1828 #primary,
  body:not(.logged-in).page-id-1828 #main,
  body:not(.logged-in).page-id-1828 .site-main,
  body:not(.logged-in).page-id-1828 .entry,
  body:not(.logged-in).page-id-1828 .entry-content,
  body:not(.logged-in).page-id-1828 .entry-content-wrap,
  body:not(.logged-in).page-id-1828 .kb-row-layout-wrap,
  body:not(.logged-in).page-id-1828 .kt-row-layout-inner,
  body:not(.logged-in).page-id-1828 .kt-row-column-wrap,
  body:not(.logged-in).page-id-1828 .wp-block-kadence-column,
  body:not(.logged-in).page-id-1828 .kt-inside-inner-col{
    width:100%!important;
    max-width:none!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    overflow:visible!important;
  }

  body:not(.logged-in).page-id-1828 .account-hero.account-hero--split{
    position:relative!important;
    z-index:1!important;
    width:100vw!important;
    max-width:100vw!important;
    min-height:100dvh!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    overflow:hidden!important;
  }

  body:not(.logged-in).page-id-1828 .account-login-layout{
    width:100vw!important;
    max-width:100vw!important;
    min-height:100dvh!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr)!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel,
  body:not(.logged-in).page-id-1828 .account-form-panel{
    min-height:100dvh!important;
    height:100dvh!important;
    border-radius:0!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__inner{
    padding-top:116px!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel{
    padding-top:116px!important;
  }
}

/* =========================================================
   FASE 9K.10.4.1 - CABECERA FLOTANTE SIN DUPLICACION
   Solo el contenedor principal de la cabecera queda fijo.
========================================================= */

@media (min-width:768px){
  /*
   * En la fase anterior se fijaron también contenedores internos
   * de Kadence. Cada uno se transformaba en una superficie flotante,
   * produciendo la doble barra blanca observada en escritorio.
   */
  body:not(.logged-in).page-id-1828 #masthead{
    position:fixed!important;
    top:18px!important;
    left:50%!important;
    z-index:50!important;
    width:min(1320px,calc(100vw - 36px))!important;
    max-width:min(1320px,calc(100vw - 36px))!important;
    margin:0!important;
    transform:translateX(-50%)!important;
  }

  /*
   * Los elementos internos vuelven a participar normalmente
   * dentro de una única cabecera.
   */
  body:not(.logged-in).page-id-1828 #masthead .site-header-wrap,
  body:not(.logged-in).page-id-1828 #masthead .site-header-row-container,
  body:not(.logged-in).page-id-1828 #masthead .site-header-row-container-inner,
  body:not(.logged-in).page-id-1828 #masthead .kadence-sticky-header{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:auto!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
  }
}

/* =========================================================
   FASE 9K.10.5 - ACCESO MOVIL A PANTALLA COMPLETA
   Replica la composición de escritorio sin apariencia de tarjeta.
========================================================= */

@media (max-width:767px){
  /*
   * La cabecera oficial flota sobre la pantalla de acceso.
   * Solo #masthead controla la posición para evitar duplicaciones.
   */
  body:not(.logged-in).page-id-1828 #masthead{
    position:fixed!important;
    top:14px!important;
    left:50%!important;
    z-index:50!important;
    width:calc(100vw - 28px)!important;
    max-width:calc(100vw - 28px)!important;
    margin:0!important;
    transform:translateX(-50%)!important;
  }

  body:not(.logged-in).page-id-1828 #masthead .site-header-wrap,
  body:not(.logged-in).page-id-1828 #masthead .site-header-row-container,
  body:not(.logged-in).page-id-1828 #masthead .site-header-row-container-inner,
  body:not(.logged-in).page-id-1828 #masthead .kadence-sticky-header{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:auto!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
  }

  /*
   * Neutraliza márgenes y fondos heredados de Kadence.
   * El acceso ocupa como mínimo toda la altura visible.
   */
  body:not(.logged-in).page-id-1828,
  body:not(.logged-in).page-id-1828 #wrapper,
  body:not(.logged-in).page-id-1828 #inner-wrap,
  body:not(.logged-in).page-id-1828 .site,
  body:not(.logged-in).page-id-1828 .site-content,
  body:not(.logged-in).page-id-1828 .content-area,
  body:not(.logged-in).page-id-1828 #primary,
  body:not(.logged-in).page-id-1828 #main,
  body:not(.logged-in).page-id-1828 .site-main,
  body:not(.logged-in).page-id-1828 .entry,
  body:not(.logged-in).page-id-1828 .entry-content,
  body:not(.logged-in).page-id-1828 .entry-content-wrap,
  body:not(.logged-in).page-id-1828 .kb-row-layout-wrap,
  body:not(.logged-in).page-id-1828 .kt-row-layout-inner,
  body:not(.logged-in).page-id-1828 .kt-row-column-wrap,
  body:not(.logged-in).page-id-1828 .wp-block-kadence-column,
  body:not(.logged-in).page-id-1828 .kt-inside-inner-col{
    width:100%!important;
    max-width:none!important;
    min-height:100svh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  body:not(.logged-in).page-id-1828{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    background:#ffffff!important;
  }

  body:not(.logged-in).page-id-1828 .account-hero.account-hero--split{
    width:100vw!important;
    max-width:100vw!important;
    min-height:100svh!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    background:transparent!important;
    overflow:visible!important;
  }

  body:not(.logged-in).page-id-1828 .account-login-layout{
    width:100vw!important;
    max-width:100vw!important;
    min-height:100svh!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
    border:0!important;
    border-radius:0!important;
    background:#ffffff!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  /*
   * El panel azul ocupa la parte superior del viewport.
   * El formulario completa el resto y puede crecer si el contenido lo exige.
   */
  body:not(.logged-in).page-id-1828 .account-brand-panel{
    width:100%!important;
    min-height:52svh!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border-radius:0!important;
    flex:0 0 auto!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__inner{
    min-height:52svh!important;
    padding:132px 22px 34px!important;
    justify-content:flex-end!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__copy{
    margin-top:0!important;
    margin-bottom:24px!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__eyebrow{
    min-height:29px!important;
    margin-bottom:15px!important;
    padding:0 11px!important;
    font-size:.72rem!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel h1{
    max-width:100%!important;
    font-size:clamp(2.35rem,11.3vw,3.55rem)!important;
    line-height:1.01!important;
    letter-spacing:-.052em!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel .lead{
    max-width:100%!important;
    margin-top:18px!important;
    font-size:1rem!important;
    line-height:1.48!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__tags{
    gap:8px!important;
  }

  body:not(.logged-in).page-id-1828 .account-brand-panel__tags li{
    min-height:29px!important;
    padding:0 13px!important;
    font-size:.69rem!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel{
    width:100%!important;
    min-height:48svh!important;
    height:auto!important;
    margin:0!important;
    padding:42px 22px max(52px,env(safe-area-inset-bottom))!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    border-radius:0!important;
    background:#ffffff!important;
    box-shadow:none!important;
    flex:1 0 auto!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel__inner{
    width:100%!important;
    max-width:520px!important;
    margin:0 auto!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel .card-head{
    margin-bottom:25px!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel .card-head h2,
  body:not(.logged-in).page-id-1828 .account-form-panel .card-head h3{
    font-size:clamp(1.9rem,8.6vw,2.35rem)!important;
  }

  body:not(.logged-in).page-id-1828 #prestadores-login p{
    margin-bottom:18px!important;
  }

  body:not(.logged-in).page-id-1828 .login-extra{
    justify-content:flex-start!important;
    margin-top:28px!important;
    text-align:left!important;
  }
}

@media (max-width:380px){
  body:not(.logged-in).page-id-1828 .account-brand-panel__inner{
    padding-right:18px!important;
    padding-left:18px!important;
  }

  body:not(.logged-in).page-id-1828 .account-form-panel{
    padding-right:18px!important;
    padding-left:18px!important;
  }
}
/* =========================================================
   FASE 9K.11 - VERIFICACION DE CORREO
   /correo-pendiente/ + /verificar-correo/
   Dueno visual: .prest-email-*
========================================================= */

.prest-email-shell{
  width:100%;
  box-sizing:border-box;
  padding:clamp(24px,6vw,68px) 16px;
}

.prest-email-shell *,
.prest-email-shell *::before,
.prest-email-shell *::after{
  box-sizing:border-box;
}

.prest-email-card{
  width:100%;
  max-width:560px;
  margin:0 auto;
  padding:30px;
  border:1px solid #e2e8f0;
  border-radius:22px;
  background:#ffffff;
  color:#0f172a;
  box-shadow:0 18px 48px rgba(15,23,42,.08);
}

/* Mensaje operacional */
.prest-email-card__notice{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0 0 24px;
  padding:12px 14px;
  border:1px solid #bfdbfe;
  border-radius:13px;
  background:#eff6ff;
  color:#1e3a5f;
  font-size:.9rem;
  line-height:1.45;
  font-weight:600;
}

.prest-email-card__notice-icon{
  display:inline-flex;
  flex:0 0 22px;
  width:22px;
  height:22px;
  align-items:center;
  justify-content:center;
  margin-top:1px;
  border-radius:999px;
  background:#dbeafe;
  color:#1d4ed8;
  font-size:.78rem;
  font-weight:800;
}

/* Cabecera */
.prest-email-card__header{
  text-align:left;
}

.prest-email-card__icon{
  display:flex;
  width:52px;
  height:52px;
  align-items:center;
  justify-content:center;
  margin:0 0 18px;
  border-radius:16px;
  background:#eff6ff;
  color:#2563eb;
}

.prest-email-card__icon svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.prest-email-card__eyebrow{
  margin:0 0 8px;
  color:#2563eb;
  font-size:.74rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.prest-email-card h2{
  margin:0 0 10px!important;
  color:#0f172a!important;
  font-size:clamp(1.65rem,4vw,2rem)!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:-.025em;
}

.prest-email-card__header > p{
  margin:0!important;
  color:#64748b;
  font-size:.98rem;
  line-height:1.65;
}

/* Formulario */
.prest-email-card__form{
  display:grid;
  gap:14px;
  margin-top:26px;
}

.prest-email-card__field{
  display:grid;
  gap:7px;
  margin:0;
}

.prest-email-card__field > span{
  color:#334155;
  font-size:.88rem;
  line-height:1.3;
  font-weight:700;
}

.prest-email-card__field input[type="email"]{
  width:100%;
  height:50px;
  margin:0;
  padding:0 14px;
  border:1px solid #cbd5e1;
  border-radius:13px;
  outline:none;
  background:#ffffff;
  color:#0f172a;
  font:inherit;
  font-size:16px;
  box-shadow:none;
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    background .16s ease;
}

.prest-email-card__field input[type="email"]::placeholder{
  color:#94a3b8;
}

.prest-email-card__field input[type="email"]:hover{
  border-color:#b8c4d4;
}

.prest-email-card__field input[type="email"]:focus{
  border-color:#2563eb;
  background:#ffffff;
  box-shadow:0 0 0 4px rgba(37,99,235,.11);
}

/* Boton principal: sirve para <button> y <a> */
.prest-email-card .prest-email-card__button{
  appearance:none;
  display:inline-flex;
  width:100%;
  min-height:50px;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:0 18px;
  border:0;
  border-radius:13px;
  background:linear-gradient(180deg,#2f6def 0%,#1f59df 100%);
  color:#ffffff!important;
  font:inherit;
  font-size:.95rem;
  font-weight:700;
  line-height:1;
  text-align:center;
  text-decoration:none!important;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(37,99,235,.20);
  transition:
    transform .16s ease,
    filter .16s ease,
    box-shadow .16s ease;
}

.prest-email-card .prest-email-card__button:hover{
  filter:brightness(1.025);
  transform:translateY(-1px);
  box-shadow:0 13px 26px rgba(37,99,235,.25);
}

.prest-email-card .prest-email-card__button:active{
  transform:translateY(0);
}

.prest-email-card .prest-email-card__button:focus-visible{
  outline:3px solid rgba(37,99,235,.25);
  outline-offset:3px;
}

/* Ayuda */
.prest-email-card__hint{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:18px;
  padding:13px 14px;
  border:1px solid #e2e8f0;
  border-radius:13px;
  background:#f8fafc;
}

.prest-email-card__hint-icon{
  display:inline-flex;
  flex:0 0 22px;
  width:22px;
  height:22px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#dcfce7;
  color:#15803d;
  font-size:.76rem;
  font-weight:900;
}

.prest-email-card__hint p{
  margin:0!important;
  color:#64748b;
  font-size:.82rem;
  line-height:1.5;
}

.prest-email-card__hint strong{
  color:#334155;
}

/* Pie */
.prest-email-card__footer{
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid #eef2f7;
  text-align:center;
}

.prest-email-card__footer a,
.prest-email-card__secondary-link{
  color:#475569!important;
  font-size:.88rem;
  line-height:1.4;
  font-weight:700;
  text-decoration:none!important;
}

.prest-email-card__footer a:hover,
.prest-email-card__secondary-link:hover{
  color:#2563eb!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
}

/* Pantalla intermedia /verificar-correo/ */
.prest-email-card__verify-actions{
  display:grid;
  gap:12px;
  margin-top:22px;
}

.prest-email-card__secondary-link{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
}

/* Movil */
@media (max-width:640px){
  .prest-email-shell{
    padding:24px 14px 38px;
  }

  .prest-email-card{
    padding:22px 18px;
    border-radius:18px;
    box-shadow:0 12px 34px rgba(15,23,42,.07);
  }

  .prest-email-card__icon{
    width:48px;
    height:48px;
    margin-bottom:16px;
    border-radius:15px;
  }

  .prest-email-card__form{
    margin-top:22px;
  }
}