/*
 CursosIA v2.3 — fidelidad a la lámina de diseño aprobada.
 Afecta SOLO a Ejemplos / Tutor / Empresas.
 Fotografías, robot y gráficos se extraen de la composición autorizada,
 no son sustituciones genéricas.
*/
body.home .courses.courses-fidelity {
  width:100%;max-width:none; padding:62px 0 68px; background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
body.home .courses-fidelity .courses-fidelity-head {
  display:flex; position:relative;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:26px;
}
body.home .courses-fidelity .courses-fidelity-head>div{flex:1;text-align:center;margin-left:165px}
body.home .courses-fidelity .courses-fidelity-head h2 {color:#0b1b49;font-size:clamp(34px,2.95vw,47px);font-weight:900;line-height:1.12;letter-spacing:-1.15px;margin:0 0 8px}
body.home .courses-fidelity .courses-fidelity-head p{margin:0;color:#697693;font-size:clamp(16px,1.22vw,19px);line-height:1.52}
body.home .courses-fidelity .courses-fidelity-all{display:inline-flex;align-items:center;gap:9px;min-width:165px;justify-content:flex-end;color:#2364ff;font-size:14px;font-weight:750;white-space:nowrap;margin-bottom:7px}
body.home .courses-fidelity .courses-fidelity-all svg{width:17px;height:17px}
body.home .courses-fidelity-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
body.home .courses-fidelity .courses-fidelity-card {
  display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:340px;padding:5px 5px 6px;overflow:hidden;
  background:#fff;border:1px solid #e5ecf8;border-radius:16px;box-shadow:0 3px 11px rgba(35,75,140,.035);
  transition:transform .2s ease,box-shadow .2s ease;
}
body.home .courses-fidelity .courses-fidelity-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(31,67,117,.1)}
body.home .courses-fidelity .cf-photo{position:relative;aspect-ratio:2.8 / 1;border-radius:12px 12px 0 0;overflow:hidden;background:#f1f6fe}
body.home .courses-fidelity .cf-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;border:0}
body.home .courses-fidelity .cf-body{
  display:flex;flex-direction:column;align-items:flex-start;position:relative;flex:1;padding:20px 18px 15px;border-radius:0 0 12px 12px;
}
body.home .courses-fidelity .cf-green .cf-body{background:linear-gradient(145deg,#f5fff6,#eeffef)}
body.home .courses-fidelity .cf-purple .cf-body{background:linear-gradient(145deg,#fbf8ff,#f3eeff)}
body.home .courses-fidelity .cf-orange .cf-body{background:linear-gradient(145deg,#fffaf4,#fff2e8)}
body.home .courses-fidelity .cf-blue .cf-body{background:linear-gradient(145deg,#f6fbff,#edf6ff)}
body.home .courses-fidelity .cf-label{
  display:inline-flex;align-items:center;position:absolute;top:-16px;left:16px;
  max-width:calc(100% - 28px);padding:7px 12px;border-radius:999px;
  font-size:clamp(10px,.84vw,12px);font-weight:800;line-height:1.15;white-space:nowrap;box-shadow:0 2px 4px #00000005;
}
body.home .courses-fidelity .cf-green .cf-label{background:#d8f9d9;color:#146b36}
body.home .courses-fidelity .cf-purple .cf-label{background:#ead5ff;color:#6630c5}
body.home .courses-fidelity .cf-orange .cf-label{background:#ffe8d4;color:#da5819}
body.home .courses-fidelity .cf-blue .cf-label{background:#dbedff;color:#125acf}
body.home .courses-fidelity .cf-body h3{font-size:clamp(15px,1.2vw,19px);line-height:1.23;letter-spacing:-.45px;color:#101d4a;font-weight:850;margin:7px 0 11px}
body.home .courses-fidelity .cf-body>p{font-size:clamp(13px,1.02vw,16px);color:#687694;line-height:1.45;margin:0 0 15px}
body.home .courses-fidelity .cf-link{margin-top:auto;display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:850;line-height:1.3;color:#071a44}
body.home .courses-fidelity .cf-play{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}
body.home .courses-fidelity .cf-green .cf-play{background:#d3f8d3;color:#05ac5e}
body.home .courses-fidelity .cf-purple .cf-play{background:#e5c8ff;color:#7424e9}
body.home .courses-fidelity .cf-orange .cf-play{background:#ffe0c3;color:#f56b10}
body.home .courses-fidelity .cf-blue .cf-play{background:#d3e6ff;color:#1467fa}
body.home .courses-fidelity .cf-play svg{width:13px;height:13px;fill:currentColor}
body.home .courses-fidelity .cf-arrow{width:17px;height:17px}
body.home .courses-fidelity .cf-empty{text-align:center;color:var(--muted);padding:16px}
/* Tutor: misma composición de tres columnas y el robot original de la lámina. */
body.home .tutor.tutor-fidelity{overflow:hidden;padding:40px 0 45px;background:linear-gradient(112deg,#fbfdff 0%,#f8fbff 37%,#e9f4ff 73%,#e5f0ff 100%)}
body.home .tutor-fidelity .tf-grid{display:grid;grid-template-columns:minmax(0,33%) minmax(0,35%) minmax(0,30%);gap:1%;align-items:center}
body.home .tutor-fidelity .tf-intro{position:relative;z-index:1}
body.home .tutor-fidelity h2{color:#0b1b49;font-size:clamp(34px,2.95vw,47px);line-height:1.12;font-weight:900;letter-spacing:-1.15px;margin:0 0 11px}
body.home .tutor-fidelity .tf-lead{color:#687794;font-size:clamp(16px,1.18vw,19px);line-height:1.52;margin:0 0 24px}
body.home .tutor-fidelity .tf-checks,body.home .enterprise-fidelity .ef-checks{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:11px}
body.home .tutor-fidelity .tf-checks li,body.home .enterprise-fidelity .ef-checks li{position:relative;display:flex;gap:12px;align-items:center;font-size:clamp(13px,1.09vw,16px);color:#54627f;line-height:1.5}
body.home .tutor-fidelity .tf-checks li::before,body.home .enterprise-fidelity .ef-checks li::before{content:'✓';display:grid;place-items:center;color:#fff;background:#0fbb66;flex-shrink:0;width:21px;height:21px;border-radius:50%;font-size:14px;font-weight:900}
body.home .tutor-fidelity .tf-cta,body.home .enterprise-fidelity .ef-cta{min-height:49px;font-size:15px;font-weight:800;border-radius:999px;padding:12px 24px;min-width:220px;justify-content:center;background:#2b66ff;box-shadow:0 7px 17px #346aff44;border:1px solid #2b66ff;color:#fff}
body.home .tutor-fidelity .tf-cta .icon,body.home .enterprise-fidelity .ef-cta .icon{width:18px;height:18px}
body.home .tutor-fidelity .tf-chat{min-height:315px;max-height:none;width:100%;display:flex;flex-direction:column;background:#fff;border:1px solid #e2eafa;border-radius:17px;box-shadow:0 12px 26px #2e62ae12;overflow:hidden;z-index:2;position:relative}
body.home .tutor-fidelity .tf-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;font-size:13px;font-weight:850;color:#11214d;border-bottom:1px solid #e6edf8}
body.home .tutor-fidelity .tf-chat-header>span:first-child{display:flex;align-items:center;gap:7px}
body.home .tutor-fidelity .tf-chat-header .icon{width:16px;height:16px;color:#2364ff}
body.home .tutor-fidelity .tf-chat-header small{font-size:11px;font-weight:500;color:#697891}
body.home .tutor-fidelity .tf-chat-header .online{width:8px;height:8px;background:#17ca72;border-radius:50%}
body.home .tutor-fidelity .tf-chat-close{font-size:18px;color:#8795b1;font-weight:500}
body.home .tutor-fidelity .tf-chat-body{display:flex;flex-direction:column;gap:10px;padding:17px 15px;max-height:310px;min-height:230px;overflow:auto;flex:1}
body.home .tutor-fidelity .tf-chat-body .msg{font-size:12px;line-height:1.44;padding:10px 13px;background:#f3f5f9;color:#273350;border-radius:14px;max-width:91%;box-shadow:none}
body.home .tutor-fidelity .tf-chat-body .msg.user{align-self:flex-end;background:#d8eaff;color:#234476}
body.home .tutor-fidelity .tf-chat-input{display:flex;align-items:center;gap:7px;padding:9px 12px 11px;margin:0}
body.home .tutor-fidelity .tf-chat-input input{height:42px;font-size:12px;line-height:1.3;padding:9px 13px;background:#fff;border:1px solid #d9e6f7;border-radius:12px}
body.home .tutor-fidelity .tf-chat-input button{border:0;border-radius:12px;background:#2869ff;color:#fff;width:42px;height:42px;display:grid;place-items:center;padding:0;flex-shrink:0}
body.home .tutor-fidelity .tf-chat-input button .icon{width:19px;height:19px}
body.home .tutor-fidelity .tf-robot{align-self:stretch;width:100%;display:flex;align-items:center;justify-content:center;min-width:0;overflow:visible}
/* Corporativo: foto real y paneles idénticos extraídos del diseño, sin simular nuevos gráficos. */
body.home .enterprise.enterprise-fidelity{background:#fff;padding:48px 0 58px}
body.home .enterprise-fidelity .ef-grid{display:grid;grid-template-columns:minmax(0,31%) minmax(0,23%) minmax(0,27%) minmax(0,17%);gap:1%;align-items:stretch}
body.home .enterprise-fidelity .ef-copy{min-width:0;align-self:center}
body.home .enterprise-fidelity h2{font-size:clamp(34px,2.95vw,47px);color:#0b1b49;font-weight:900;line-height:1.12;letter-spacing:-1.15px;margin:0 0 11px}
body.home .enterprise-fidelity .ef-lead{font-size:clamp(16px,1.18vw,19px);color:#65738f;line-height:1.52;margin:0 0 24px}
body.home .enterprise-fidelity .ef-checks{gap:10px;margin-bottom:23px}
body.home .enterprise-fidelity .ef-checks li{font-size:clamp(13px,1.03vw,15px);line-height:1.35}
body.home .enterprise-fidelity .ef-team,body.home .enterprise-fidelity .ef-visual{min-width:0;min-height:220px;align-self:stretch;overflow:hidden;display:flex;align-items:stretch;justify-content:center}
body.home .enterprise-fidelity .ef-team{position:relative;border-radius:8px;background:linear-gradient(90deg,#fff,#f5f9fd)}
body.home .enterprise-fidelity .ef-team img{width:100%;height:100%;max-height:310px;object-fit:cover;object-position:center;border-radius:8px;display:block}
body.home .enterprise-fidelity .ef-visual img{display:block;width:100%;height:auto;max-height:320px;object-fit:contain;object-position:top center;border-radius:12px}

body.home .tutor-fidelity .tf-robot-stage{position:relative;width:100%;min-height:265px;border-left:2px solid #dce6f5;background:linear-gradient(180deg,#eff6ff 0%,#edf5ff 100%);overflow:hidden}
body.home .tutor-fidelity .tf-robot-stage::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0));pointer-events:none}
body.home .tutor-fidelity .tf-robot-stage img{position:absolute;right:-8px;bottom:0;width:57%;max-width:none;height:100%;object-fit:cover;object-position:left center;z-index:1}
body.home .tutor-fidelity .tf-robot-note{position:absolute;left:18px;top:18px;width:170px;color:#4569f0;font-size:clamp(16px,1.15vw,22px);font-weight:700;line-height:1.05;font-family:'Comic Sans MS','Segoe Print',cursive;transform:rotate(-10deg);z-index:4}
body.home .tutor-fidelity .tf-robot-arrow{position:absolute;left:8px;top:102px;width:90px;height:54px;color:#4569f0;z-index:4}
body.home .tutor-fidelity .tf-feature-card{position:absolute;left:32px;bottom:14px;width:270px;background:#fff;border:1px solid #e7edf8;border-radius:13px;box-shadow:0 10px 24px rgba(37,73,125,.08);z-index:4;overflow:hidden}
body.home .tutor-fidelity .tf-feature-card ul{list-style:none;margin:0;padding:0}
body.home .tutor-fidelity .tf-feature-card li{position:relative;padding:12px 16px 12px 46px;font-size:clamp(12px,.9vw,15px);color:#485774;line-height:1.18;background:#fff;border-top:1px solid #eef2f8}
body.home .tutor-fidelity .tf-feature-card li:first-child{border-top:0}
body.home .tutor-fidelity .tf-feature-card li::before{content:'';position:absolute;left:16px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;background:#e9f9ee;box-shadow:inset 0 0 0 1px rgba(56,185,104,.06)}
body.home .tutor-fidelity .tf-feature-card li::after{content:'✓';position:absolute;left:22px;top:50%;transform:translateY(-54%);font-size:13px;font-weight:900;color:#2cc06a}
body.home .enterprise-fidelity .ef-team::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.92) 11%,rgba(255,255,255,.6) 18%,rgba(255,255,255,0) 34%);z-index:2;pointer-events:none}
body.home .enterprise-fidelity .ef-quote-wrap{flex:1;display:flex;align-items:flex-start}
body.home .enterprise-fidelity .ef-author-row{margin-top:16px;padding-top:14px;border-top:1px solid #edf1f7}

body.home .enterprise-fidelity .ef-progress img,body.home .enterprise-fidelity .ef-testimonial img{border:1px solid #e6eefb;box-shadow:0 5px 15px #223c7608;background:#fff}
/* Dark mode: preserve artwork exactly; adjust only readable surrounding content. */
body.dark.home .courses.courses-fidelity{background:linear-gradient(#101e38,#12223d)}
body.dark.home .courses-fidelity .courses-fidelity-head h2,body.dark.home .tutor-fidelity h2,body.dark.home .enterprise-fidelity h2{color:#f2f6ff}
body.dark.home .courses-fidelity .courses-fidelity-head p,body.dark.home .tutor-fidelity .tf-lead,body.dark.home .enterprise-fidelity .ef-lead{color:#bfcbe2}
body.dark.home .tutor.tutor-fidelity{background:linear-gradient(120deg,#102039,#1a2c4c)}
body.dark.home .tutor-fidelity .tf-checks li,body.dark.home .enterprise-fidelity .ef-checks li{color:#d0daef}
body.dark.home .tutor-fidelity .tf-robot{background:#edf4ff;border-radius:17px}
body.dark.home .enterprise.enterprise-fidelity{background:#111f39}
body.dark.home .courses-fidelity .courses-fidelity-card{border-color:#324467}
@media (min-width:900px) and (max-width:1200px){
 body.home .courses-fidelity-grid{gap:10px}
 body.home .courses-fidelity .cf-body{padding:19px 12px 13px}
 body.home .courses-fidelity .cf-label{left:9px;font-size:10px;padding:6px 8px}
 body.home .courses-fidelity .cf-body h3{font-size:15px}
 body.home .courses-fidelity .cf-body>p{font-size:13px}
 body.home .tutor-fidelity .tf-grid{grid-template-columns:33% 36% 29%;gap:1%}
 body.home .tutor-fidelity h2,body.home .enterprise-fidelity h2{font-size:32px}
 body.home .enterprise-fidelity .ef-grid{grid-template-columns:30% 23% 27% 17%;gap:1%}
 body.home .enterprise-fidelity .ef-checks li,body.home .tutor-fidelity .tf-checks li{font-size:12px}
 body.home .enterprise-fidelity .ef-cta,body.home .tutor-fidelity .tf-cta{min-height:45px;font-size:12px;padding:10px 13px;min-width:0}
}
@media(max-width:899px){
 body.home .courses.courses-fidelity{padding:48px 0 58px}
 body.home .courses-fidelity .courses-fidelity-head{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px}
 body.home .courses-fidelity .courses-fidelity-head>div{margin:0;text-align:center}
 body.home .courses-fidelity .courses-fidelity-head h2{font-size:clamp(27px,4.2vw,36px)}
 body.home .courses-fidelity .courses-fidelity-all{align-self:center;justify-content:center;font-size:13px;margin:3px 0 0}
 body.home .courses-fidelity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
 body.home .courses-fidelity .courses-fidelity-card{min-height:320px}
 body.home .courses-fidelity .cf-photo{aspect-ratio:2.8/1}
 body.home .courses-fidelity .cf-body h3{font-size:17px}
 body.home .courses-fidelity .cf-body>p{font-size:14px}
 body.home .tutor.tutor-fidelity{padding:44px 0 52px}
 body.home .tutor-fidelity .tf-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
 body.home .tutor-fidelity .tf-intro{grid-column:1 / -1}
 body.home .tutor-fidelity .tf-chat{min-height:340px}
 body.home .enterprise.enterprise-fidelity{padding:42px 0 49px}
 body.home .enterprise-fidelity .ef-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 body.home .enterprise-fidelity .ef-copy{grid-column:1/-1;margin-bottom:8px}
 body.home .enterprise-fidelity .ef-team img{max-height:280px}
 body.home .enterprise-fidelity .ef-visual img{max-height:none}
}
@media(max-width:599px){
 body.home .courses.courses-fidelity{padding:39px 0 45px}
 body.home .courses-fidelity .courses-fidelity-head h2{font-size:27px;line-height:1.16}
 body.home .courses-fidelity .courses-fidelity-head p{font-size:14px}
 body.home .courses-fidelity-grid{grid-template-columns:1fr;gap:15px;max-width:440px;margin:0 auto}
 body.home .courses-fidelity .courses-fidelity-card{min-height:0;border-radius:15px;padding:5px}
 body.home .courses-fidelity .cf-photo{aspect-ratio:2.8/1}
 body.home .courses-fidelity .cf-body{padding:22px 17px 17px}
 body.home .courses-fidelity .cf-label{font-size:11px}
 body.home .courses-fidelity .cf-body h3{font-size:19px;line-height:1.25}
 body.home .courses-fidelity .cf-body>p{font-size:15px;line-height:1.45}
 body.home .tutor.tutor-fidelity{padding:42px 0 46px}
 body.home .tutor-fidelity .tf-grid{grid-template-columns:minmax(0,1fr);gap:19px}
 body.home .tutor-fidelity .tf-intro{grid-column:auto}
 body.home .tutor-fidelity h2{font-size:34px}
 body.home .tutor-fidelity .tf-lead{font-size:15px}
 body.home .tutor-fidelity .tf-checks li{font-size:14px}
 body.home .tutor-fidelity .tf-chat{min-height:330px}
 body.home .tutor-fidelity .tf-chat-body{min-height:240px}
 body.home .tutor-fidelity .tf-robot{max-width:410px;margin:0 auto}
 body.home .enterprise.enterprise-fidelity{padding:39px 0 47px}
 body.home .enterprise-fidelity .ef-grid{grid-template-columns:minmax(0,1fr);gap:14px}
 body.home .enterprise-fidelity .ef-copy{grid-column:auto}
 body.home .enterprise-fidelity h2{font-size:34px}
 body.home .enterprise-fidelity .ef-lead{font-size:15px}
 body.home .enterprise-fidelity .ef-checks li{font-size:14px}
 body.home .enterprise-fidelity .ef-team{max-height:260px}
 body.home .enterprise-fidelity .ef-team img{max-height:260px}
 body.home .enterprise-fidelity .ef-progress,body.home .enterprise-fidelity .ef-testimonial{width:100%;max-width:430px;margin:0 auto;min-height:0}
 body.home .enterprise-fidelity .ef-visual img{height:auto;width:100%;max-height:none}
}

/* Testimonio con texto real, sin letras recortadas en la imagen de referencia. */
body.home .enterprise-fidelity .ef-testimonial-content{width:100%;height:100%;background:#fff;border:1px solid #e5ecf6;border-radius:12px;padding:23px 17px 16px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 3px 12px rgba(35,73,112,.035)}
body.home .enterprise-fidelity .ef-testimonial-content>div>p{font-size:clamp(11px,.86vw,13px);color:#59677f;line-height:1.46;margin:0;position:relative}
body.home .enterprise-fidelity .ef-testimonial-content>div>p::before{content:'“';font-size:24px;color:#8b9bb9;font-weight:900;margin-right:2px;vertical-align:baseline}
body.home .enterprise-fidelity .ef-author{display:flex;align-items:center;gap:10px;min-width:0}
body.home .enterprise-fidelity .ef-author img{width:43px;height:43px;border-radius:50%;object-fit:cover;flex-shrink:0}
body.home .enterprise-fidelity .ef-author strong{display:block;font-size:12px;color:#10204c;line-height:1.35}
body.home .enterprise-fidelity .ef-author small{display:block;font-size:11px;line-height:1.35;color:#738099}
@media(max-width:899px){body.home .enterprise-fidelity .ef-testimonial-content{min-height:225px}}
@media(max-width:599px){body.home .enterprise-fidelity .ef-testimonial-content{min-height:200px;padding:21px}body.home .enterprise-fidelity .ef-testimonial-content>div>p{font-size:15px;line-height:1.53}body.home .enterprise-fidelity .ef-author strong{font-size:14px}body.home .enterprise-fidelity .ef-author small{font-size:12px}}
body.dark.home .enterprise-fidelity .ef-testimonial-content{background:#1c2f51;border-color:#375070}
body.dark.home .enterprise-fidelity .ef-testimonial-content>div>p,body.dark.home .enterprise-fidelity .ef-author small{color:#c4d0e6}
body.dark.home .enterprise-fidelity .ef-author strong{color:#f6f9ff}


@media(max-width:899px){
 body.home .tutor-fidelity .tf-robot-stage{min-height:260px;border-left:0;border-radius:18px}
 body.home .tutor-fidelity .tf-robot-note{left:16px;top:16px;width:145px;font-size:18px}
 body.home .tutor-fidelity .tf-robot-arrow{left:8px;top:92px;width:72px;height:44px}
 body.home .tutor-fidelity .tf-feature-card{left:26px;right:auto;width:222px;bottom:12px}
 body.home .tutor-fidelity .tf-feature-card li{font-size:12px;padding:10px 12px 10px 36px}
}
@media(max-width:599px){
 body.home .tutor-fidelity .tf-robot-stage{min-height:250px}
 body.home .tutor-fidelity .tf-robot-stage img{right:-2px;width:54%}
 body.home .tutor-fidelity .tf-robot-note{left:12px;top:16px;width:136px;font-size:17px;line-height:1.05}
 body.home .tutor-fidelity .tf-robot-arrow{left:4px;top:88px;width:58px;height:36px}
 body.home .tutor-fidelity .tf-feature-card{left:18px;right:auto;width:210px;bottom:10px}
 body.home .tutor-fidelity .tf-feature-card li{font-size:11px;padding:9px 11px 9px 34px}
 body.home .enterprise-fidelity .ef-team::before{background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.55) 18%,rgba(255,255,255,0) 34%)}
}
