/* V3: capa visual premium; conserva la hoja oficial app.css y experiencia.css */
body.is-premium-intro{background:#eaf4ff}
body.is-premium-intro .app{width:min(100%,440px);max-width:440px;overflow:hidden;min-height:100dvh;padding:0 14px 18px;background:#f7fbff url('/assets/img/fondo-arquitectonico.webp') center top/100% 100% no-repeat;border:2px solid #fff;border-radius:34px;box-shadow:0 18px 55px #1256a128}
body.is-premium-intro .ja-header{min-height:55px;height:55px;padding:12px 7px 0;background:transparent;position:relative;top:auto;justify-content:flex-end;z-index:20}
body.is-premium-intro .ja-header .brand{display:none}
body.is-premium-intro .ja-privacy{display:flex;align-items:center;min-height:38px;padding:5px 12px;border:1px solid white;border-radius:99px;color:#1062db;background:#ffffffc7;box-shadow:0 5px 18px #a4c9f36e;font-size:12px;font-weight:900;text-decoration:underline}
body.is-premium-intro .ja-privacy:before{content:'🔒';margin-right:6px;text-decoration:none}
body.is-premium-intro .ja-progress,body.is-premium-intro .ja-footer{display:none}
body.is-premium-intro .exp-v{display:block}
body.is-premium-intro .ja-content{padding:0 6px 12px}
body.is-premium-intro .premium-brand{margin:-6px auto 0;width:78%;max-width:296px;text-align:center}
body.is-premium-intro .premium-brand img{display:block;width:100%;height:clamp(130px,37vw,180px);object-fit:contain;mix-blend-mode:multiply}
body.is-premium-intro .premium-ruc{font-size:10px;letter-spacing:3px;font-weight:900;color:#194478;margin-top:-5px}
body.is-premium-intro .premium-guide-slot{margin:12px 0 8px}
body.is-premium-intro .ja-guide-wrap{margin:0;min-height:190px;display:grid;grid-template-columns:43% 57%;gap:0;align-items:center}
body.is-premium-intro .mascot-hero{height:204px;max-height:204px;position:relative;border-radius:50%;background:radial-gradient(circle at 48% 55%,#e2fbff 1%,#abdfff 45%,#76c2f7a6 58%,#ffffff30 71%);border:2px solid #d1f3ff;box-shadow:inset 0 0 0 7px #f6ffff82,0 6px 25px #59aeec66;overflow:visible}
body.is-premium-intro .mascot-hero:before{content:'';position:absolute;inset:-8px;border:2px solid #ffffffa0;border-radius:50%;pointer-events:none}
body.is-premium-intro .ja-guide-wrap .mascot-hero img{width:116%;height:215px;max-height:215px;max-width:none;object-fit:contain;object-position:bottom center;margin-left:-4%;filter:drop-shadow(0 5px 6px #21427535)}
body.is-premium-intro .ja-bubble{font-size:clamp(12px,3.1vw,15px);background:#fff!important;border:1px solid #9bdefa;border-right:3px solid #44cef5;border-bottom:3px solid #60d9ff;border-radius:27px!important;box-shadow:0 9px 26px #2c9bee37;padding:17px 12px!important;line-height:1.35}
body.is-premium-intro .premium-eyebrow{display:flex;align-items:center;justify-content:center;gap:7px;margin:13px 0 7px;font-size:clamp(8px,2.5vw,11px);white-space:nowrap;color:#126be8;font-weight:900;letter-spacing:1.5px}
body.is-premium-intro .premium-eyebrow span{background:#228cfd;width:20px;height:1px;flex:0 1 20px}
body.is-premium-intro .premium-title{margin:8px 0 17px;font-weight:900;color:#082b70;text-align:center;font-size:clamp(33px,9vw,47px);line-height:1.01;letter-spacing:-1.35px}
body.is-premium-intro .premium-title em{display:block;color:#1264e7;font-style:normal;text-shadow:0 3px 0 #bad9ff}
body.is-premium-intro .premium-services{display:flex;justify-content:space-between;gap:5px;margin:17px 0 15px}
body.is-premium-intro .premium-services>div{display:flex;align-items:center;flex:1;justify-content:center;gap:5px;border-right:1px solid #9ac4ee;color:#062d7c;font-size:clamp(8px,2.5vw,11px);letter-spacing:.3px;font-weight:900}
body.is-premium-intro .premium-services>div:last-child{border:0}
body.is-premium-intro .premium-icon{font-size:20px;width:35px;height:35px;border-radius:50%;background:#e8f4ff;display:grid;place-items:center;box-shadow:0 3px 12px #bed9ef70}
body.is-premium-intro .premium-copy{text-align:center;font-size:clamp(14px,3.8vw,17px);line-height:1.5;margin:8px 4px 16px;color:#1b477f;font-weight:600}
body.is-premium-intro .premium-cta{position:relative;border:2px solid #86eaff!important;border-radius:25px!important;min-height:65px!important;font-size:clamp(17px,5vw,23px)!important;box-shadow:0 5px 0 #0056c5,0 12px 25px #1692ed61!important;background:linear-gradient(150deg,#14a7ff,#1465ea 55%,#003fa7)!important;color:white;margin:10px 0 21px;text-shadow:0 2px 5px #0855ae60}
body.is-premium-intro .premium-cta span{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:23px;border:1px solid #49c7ff;border-radius:50%;width:37px;height:37px;display:grid;place-items:center}
body.is-premium-intro .premium-bottom{display:flex;align-items:center;gap:14px;padding:13px 19px;margin:6px 0 0;border:2px solid white;border-radius:22px;background:#f9fdffce;box-shadow:0 4px 18px #328be129;color:#16417e}
body.is-premium-intro .premium-bottom .premium-doc{font-size:29px;border-right:1px solid #a6c6e6;padding-right:12px}
body.is-premium-intro .premium-bottom b{display:block;font-size:13px}
body.is-premium-intro .premium-bottom small{font-size:11px;display:block;line-height:1.25;margin-top:4px}
@media(max-width:360px){body.is-premium-intro .app{padding-inline:9px;border-radius:25px}body.is-premium-intro .premium-brand img{height:125px}body.is-premium-intro .ja-guide-wrap{min-height:160px}body.is-premium-intro .mascot-hero{height:164px}body.is-premium-intro .ja-guide-wrap .mascot-hero img{height:173px;max-height:173px}body.is-premium-intro .premium-services>div{flex-direction:column;font-size:9px}body.is-premium-intro .premium-cta{min-height:59px!important}}
@media(min-width:520px){body.is-premium-intro .app{margin:18px auto;min-height:calc(100dvh - 36px)}}
@media(prefers-reduced-motion:reduce){body.is-premium-intro *{animation:none!important}}


/* CARRERA_ALVAREZ_FONDO_GLOBAL_V1 */

/* Fondo arquitectónico durante todo el recorrido */
body.is-premium-intro {
    background: #eaf4ff;
}

body.is-premium-intro .app {
    background-color: #f7fbff;
    background-image:
        url('/assets/img/fondo-arquitectonico.webp');
    background-position: center top;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    min-height: 100dvh;
}

/* Mantener transparentes los contenedores generales */
body.is-premium-intro #public-view,
body.is-premium-intro .exp-v,
body.is-premium-intro .ja-content {
    background: transparent;
    background-color: transparent;
}

/* Dar legibilidad a tarjetas y formularios */
body.is-premium-intro .choice,
body.is-premium-intro .card,
body.is-premium-intro .form-card {
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(8px);
}

/* Evitar desbordamiento horizontal */
body.is-premium-intro .app,
body.is-premium-intro .ja-content {
    max-width: 100%;
    box-sizing: border-box;
}

@media (max-width: 480px) {
    body.is-premium-intro .app {
        background-position: center top;
        background-size: 100% 100%;
    }
}

/* CARRERA_ALVAREZ_CONTACTO_VERTICAL_V1 */

/* DNI arriba y WhatsApp debajo */
body.is-premium-intro #contact .two {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    width: 100%;
}

/* Campos a todo el ancho */
body.is-premium-intro #contact .field {
    min-width: 0;
    width: 100%;
}

/* Etiquetas con mayor protagonismo */
body.is-premium-intro #contact .field label {
    display: block;
    font-size: 16px;
    font-weight: 900;
    margin-bottom: 9px;
    color: #082b70;
}

/* Inputs grandes y fáciles de utilizar */
body.is-premium-intro #contact .field input {
    display: block;
    width: 100%;
    min-height: 64px;
    box-sizing: border-box;
    padding: 14px 18px;
    border-radius: 18px;
    border: 2px solid #d5e5fa;
    background: rgba(255,255,255,.96);
    font-size: 20px;
    color: #082b70;
}

body.is-premium-intro #contact .field input:focus {
    outline: none;
    border-color: #1878f4;
    box-shadow: 0 0 0 4px rgba(24,120,244,.12);
}


/* CA_MOBILE_ADAPTIVE_V2 */

@media (max-width: 519px) {
  html {
    -webkit-text-size-adjust: 100%;
  }

  body.is-premium-intro .app {
    width: 100%;
    max-width: 440px;
    min-height: 100svh;
    padding-inline: 12px;
    padding-bottom: max(12px, env(safe-area-inset-bottom));
    overflow-x: clip;
  }

  body.is-premium-intro .ja-content {
    padding-inline: 5px;
    padding-bottom: 12px;
    min-width: 0;
  }

  /* Asesor virtual con mayor protagonismo */
  body.is-premium-intro .ja-guide-wrap {
    grid-template-columns: 48% minmax(0, 52%);
    min-height: 220px;
    align-items: center;
  }

  body.is-premium-intro .mascot-hero {
    height: 220px;
    max-height: none;
  }

  body.is-premium-intro .ja-guide-wrap .mascot-hero img {
    width: 125%;
    height: 240px;
    max-height: none;
    max-width: none;
    object-fit: contain;
    object-position: bottom center;
    margin-left: -10%;
  }

  body.is-premium-intro .ja-bubble {
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: clamp(12px, 3.2vw, 15px);
    padding: 12px 10px !important;
  }

  /* Textos más proporcionados */
  body.is-premium-intro .ja-content h1,
  body.is-premium-intro .ja-content h2 {
    font-size: clamp(24px, 7vw, 34px);
    line-height: 1.12;
    overflow-wrap: break-word;
  }

  /* Controles táctiles */
  body.is-premium-intro .ja-content button,
  body.is-premium-intro .ja-content input,
  body.is-premium-intro .ja-content select {
    max-width: 100%;
    box-sizing: border-box;
  }

  body.is-premium-intro .toolbar button {
    min-height: 48px;
  }

  body.is-premium-intro .ja-content input {
    font-size: 16px;
  }

  body.is-premium-intro .choices,
  body.is-premium-intro .toolbar {
    min-width: 0;
  }
}

/* Teléfonos con poca altura útil */
@media (max-width: 519px) and (max-height: 740px) {
  body.is-premium-intro .ja-guide-wrap {
    min-height: 165px;
  }

  body.is-premium-intro .mascot-hero {
    height: 165px;
  }

  body.is-premium-intro .ja-guide-wrap .mascot-hero img {
    height: 188px;
  }

  body.is-premium-intro .ja-content h1,
  body.is-premium-intro .ja-content h2 {
    font-size: clamp(23px, 6.5vw, 29px);
  }
}
