.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-236 .elementor-element.elementor-element-711e29d{--display:flex;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-236 .elementor-element.elementor-element-4659051{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-236 .elementor-element.elementor-element-403afc7{--display:flex;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-236 .elementor-element.elementor-element-cc8843a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-236 .elementor-element.elementor-element-2d3765c{--display:flex;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-236 .elementor-element.elementor-element-888b063{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-236 .elementor-element.elementor-element-777a758{--display:flex;--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;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-236 .elementor-element.elementor-element-b4f3799{--display:flex;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-236 .elementor-element.elementor-element-0a38674{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-236 .elementor-element.elementor-element-777a758{--content-width:1600px;}}/* Start custom CSS for html, class: .elementor-element-4659051 *//* HERO */

.hero{
background:linear-gradient(
180deg,
#dfeee4 0%,
#eaf5ee 45%,
#f4faf6 100%
);
padding:80px 0;
font-family:Segoe UI,system-ui,sans-serif;
position:relative;
overflow:hidden;
}

/* efecto suave de fondo */

.hero::before{
content:"";
position:absolute;
top:-120px;
left:-120px;
width:420px;
height:420px;
background:#cfe5d7;
border-radius:50%;
filter:blur(120px);
opacity:.55;
}

.hero::after{
content:"";
position:absolute;
bottom:-140px;
right:-140px;
width:420px;
height:420px;
background:#e6f3ea;
border-radius:50%;
filter:blur(120px);
opacity:.65;
}

/* contenedor */

.hero-container{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
gap:80px;
padding:0 40px;
position:relative;
z-index:2;
}

.hero-container{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
gap:80px;
padding:0 40px;
}

/* TITULO */

.hero-content h1{
font-size:64px;
line-height:1.1;
font-weight:700;
color:#111827;
margin-bottom:24px;
max-width:540px;
}

.hero-gradient{
background:linear-gradient(90deg,#2563eb,#7c3aed);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

/* TEXTO */

.hero-content p{
font-size:18px;
color:#475569;
line-height:1.7;
max-width:520px;
margin-bottom:32px;
}

/* BOTONES */

.hero-buttons{
display:flex;
gap:20px;
margin-bottom:35px;
}

.btn-primary{
background:#2563eb;
color:white;
padding:16px 28px;
border-radius:30px;
text-decoration:none;
font-weight:600;
box-shadow:0 10px 25px rgba(37,99,235,.25);
transition:.2s;
}

.btn-primary:hover{
transform:translateY(-2px);
}

.btn-outline{
border:2px solid #2563eb;
color:#2563eb;
padding:14px 28px;
border-radius:30px;
text-decoration:none;
font-weight:600;
transition:.2s;
}

.btn-outline:hover{
background:#2563eb;
color:white;
}

/* STATS */

.hero-stats{
display:flex;
gap:30px;
align-items:center;
font-size:16px;
color:#334155;
}

.stat{
display:flex;
align-items:center;
gap:8px;
}

.stars{
color:#fbbf24;
font-size:18px;
}

/* IMAGEN */

.hero-image{
position:relative;
}

.hero-image img{
width:100%;
border-radius:20px;
display:block;
}

/* CARD FLOTANTE */

.progress-card{
position:absolute;
bottom:-20px;
left:40px;
background:white;
padding:18px 22px;
border-radius:14px;
display:flex;
align-items:center;
gap:14px;
box-shadow:0 20px 40px rgba(0,0,0,.15);
}

.progress-icon{
width:42px;
height:42px;
background:#10b981;
color:white;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-weight:bold;
}

.progress-text span{
font-size:14px;
color:#64748b;
display:block;
}

.progress-text strong{
font-size:16px;
color:#0f172a;
}

/* RESPONSIVE */

@media (max-width:900px){

.hero-container{
grid-template-columns:1fr;
gap:50px;
}

.hero-content h1{
font-size:42px;
}

.hero-buttons{
flex-direction:column;
align-items:flex-start;
}

.hero-stats{
flex-direction:column;
align-items:flex-start;
gap:12px;
}

.progress-card{
left:20px;
bottom:-15px;
}

}

.btn-primary:hover{
color:#ffffff !important;
}

.progress-card{
position:absolute;
bottom:-20px;
left:-40px;
}

.progress-icon .emoji{
filter:brightness(0) invert(1);
}

.hero{
background:linear-gradient(180deg,#eff6ff 0%, #ffffff 50%, #faf5ff 100%);
padding:80px 0;
font-family:Segoe UI,system-ui,sans-serif;
}





@media (max-width:1024px){

.hero-container{
grid-template-columns:1fr;
gap:60px;
text-align:center;
}

.hero-content h1{
font-size:48px;
max-width:700px;
margin-left:auto;
margin-right:auto;
}

.hero-content p{
margin-left:auto;
margin-right:auto;
}

.hero-buttons{
justify-content:center;
}

.hero-stats{
justify-content:center;
}

.hero-image{
max-width:600px;
margin:auto;
}

.progress-card{
left:50%;
transform:translateX(-50%);
}

}

@media (max-width:1024px){

.hero-image{
display:none;
}

.hero-container{
grid-template-columns:1fr;
text-align:center;
}

.hero-buttons{
justify-content:center;
}

.hero-stats{
justify-content:center;
}

}

@media (max-width:769px){

.hero{
padding:70px 0;
}

.hero-container{
grid-template-columns:1fr;
gap:40px;
padding:0 30px;
text-align:center;
}

.hero-content h1{
font-size:42px;
line-height:1.15;
max-width:620px;
margin-left:auto;
margin-right:auto;
}

.hero-content p{
font-size:17px;
max-width:620px;
margin-left:auto;
margin-right:auto;
}

.hero-buttons{
justify-content:center;
flex-wrap:wrap;
}

.hero-stats{
justify-content:center;
flex-wrap:wrap;
gap:18px;
font-size:15px;
}

.hero-image{
display:none;
}

}

@media (max-width:769px){

.hero-buttons{
justify-content:center;
align-items:center;
flex-direction:row;
gap:16px;
}

.btn-primary,
.btn-outline{
width:auto;
}

.hero-stats{
justify-content:center;
align-items:center;
flex-direction:row;
gap:24px;
}

}

@media (max-width:426px){

.hero-buttons{
flex-direction:column;
align-items:center;
gap:14px;
}

.btn-primary,
.btn-outline{
width:100%;
max-width:280px;
text-align:center;
}

.hero-stats{
flex-direction:column;
align-items:center;
gap:10px;
text-align:center;
}

.stat{
justify-content:center;
}

}

@media (max-width:426px){

.hero-content h1{
font-size:34px !important;
line-height:1.15 !important;
margin-bottom:18px !important;
}

.hero-content p{
font-size:16px !important;
line-height:1.6 !important;
margin-bottom:24px !important;
}

}

@media (max-width:426px){

.btn-primary,
.btn-outline{
width:100% !important;
max-width:320px !important;
text-align:center !important;
}

}

@media (max-width:426px){

.hero-stats{
flex-direction:column !important;
align-items:center !important;
justify-content:center !important;
gap:8px !important;
text-align:center !important;
font-size:14px !important;
}

.stat{
justify-content:center !important;
}

}

@media (max-width:426px){

.hero{
padding:110px 0 !important;
}

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-711e29d */.hero-content h1{
font-size:56px;
line-height:1.15;
font-weight:700;
color:#111827;
margin-bottom:24px;
max-width:540px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-cc8843a */#como-funciona.como-funciona{
  background:#ffffff;
  padding:80px 0;
  font-family:Segoe UI, system-ui, sans-serif;
}

#como-funciona .cf-container{
  max-width:1280px;
  margin:0 auto;
  padding:0 16px;
}

#como-funciona .cf-header{
  text-align:center;
  margin-bottom:64px;
}

#como-funciona .cf-header h2{
  font-size:44px !important;
  line-height:1.2;
  font-weight:400;
  color:#0f172a;
  margin:0 0 16px;
}


#como-funciona .cf-header p{
  font-size:16px;
  line-height:1.7;
  color:#475569;
  max-width:672px;
  margin:0 auto;
  font-weight: 500;
}

#como-funciona .cf-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:32px;
}

#como-funciona .cf-card-wrapper{
  position:relative;
}

#como-funciona .cf-line{
  position:absolute;
  top:64px;
  left:60%;
  width:80%;
  height:2px;
  background:linear-gradient(to right, #cbd5e1, #e2e8f0);
  z-index:0;
}

#como-funciona .cf-card-wrapper:last-child .cf-line{
  display:none;
}

#como-funciona .cf-card{
  position:relative;
  background:#ffffff;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:32px;
  z-index:1;
  transition:all 0.3s ease;
}

#como-funciona .cf-card:hover{
  border-color:#93c5fd;
  box-shadow:0 20px 45px rgba(15, 23, 42, 0.10);
}

#como-funciona .cf-number{
  position:absolute;
  top:-16px;
  left:-16px;
  width:40px;
  height:40px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg, #2563eb, #9333ea);
  color:#ffffff;
  font-size:16px;
  font-weight:700;
  box-shadow:0 10px 20px rgba(37, 99, 235, 0.25);
}

#como-funciona .cf-icon{
  width:64px;
  height:64px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:24px;
  color:#ffffff;
  transition:transform 0.3s ease;
}

#como-funciona .cf-card:hover .cf-icon{
  transform:scale(1.1);
}

#como-funciona .cf-icon svg{
  width:32px;
  height:32px;
}

#como-funciona .cf-icon-blue{
  background:linear-gradient(135deg, #3b82f6, #2563eb);
}

#como-funciona .cf-icon-purple{
  background:linear-gradient(135deg, #a855f7, #9333ea);
}

#como-funciona .cf-icon-indigo{
  background:linear-gradient(135deg, #6366f1, #4f46e5);
}

#como-funciona .cf-card h3{
  font-size:20px;
  line-height:1.4;
  font-weight:600;
  color:#0f172a;
  margin:0 0 12px;
}

#como-funciona .cf-card p{
  font-size:16px;
  line-height:1.65;
  color:#475569;
  margin:0;
}

@media (max-width:1024px){
  #como-funciona .cf-grid{
    grid-template-columns:1fr;
  }

  #como-funciona .cf-line{
    display:none;
  }

  #como-funciona .cf-header h2{
    font-size:36px;
  }
}

@media (max-width:767px){
  #como-funciona.como-funciona{
    padding:64px 0;
  }

  #como-funciona .cf-container{
    padding:0 20px;
  }

  #como-funciona .cf-header{
    margin-bottom:48px;
  }

  #como-funciona .cf-header h2{
    font-size:30px;
  }

  #como-funciona .cf-header p{
    font-size:16px;
  }

  #como-funciona .cf-card{
    padding:28px 24px;
  }

  #como-funciona .cf-card h3{
    font-size:22px;
  }
}

#como-funciona .cf-header h2{
  font-size:44px;
  line-height:1.15;
  font-weight:600;
  color:#0f172a;
  margin:0 0 16px;
}


#como-funciona .cf-container{
max-width:1550px !important;
padding-left:60px !important;
padding-right:60px !important;
}

#como-funciona .cf-grid{
gap:24px !important;
}

#como-funciona .cf-card{
padding:26px !important;
}

#como-funciona .cf-icon{
width:56px !important;
height:56px !important;
margin-bottom:18px !important;
}

#como-funciona .cf-icon svg{
width:26px !important;
height:26px !important;
}

#como-funciona .cf-card h3{
font-size:18px !important;
margin-bottom:8px !important;
}

#como-funciona .cf-card p{
font-size:15px !important;
line-height:1.6 !important;
}

#como-funciona .cf-container{
max-width:1350px !important;
padding-left:140px !important;
padding-right:140px !important;
}



@media (max-width:1024px){

#como-funciona .cf-container{
max-width:1000px !important;
padding-left:40px !important;
padding-right:40px !important;
}

#como-funciona .cf-grid{
grid-template-columns:repeat(2,1fr) !important;
gap:20px !important;
}

#como-funciona .cf-card{
padding:22px !important;
}

#como-funciona .cf-icon{
width:52px !important;
height:52px !important;
}

#como-funciona .cf-icon svg{
width:24px !important;
height:24px !important;
}

#como-funciona .cf-header h2{
font-size:36px !important;
}

#como-funciona .cf-header p{
font-size:15px !important;
}

#como-funciona .cf-line{
display:none !important;
}

}

@media (max-width:769px){

#como-funciona .cf-card{
text-align:center !important;
}

#como-funciona .cf-icon{
margin-left:auto !important;
margin-right:auto !important;
}

}

@media (max-width:426px){

#como-funciona .cf-container{
padding-left:24px !important;
padding-right:24px !important;
}

#como-funciona .cf-grid{
grid-template-columns:1fr !important;
gap:18px !important;
}

#como-funciona .cf-card{
text-align:center !important;
padding:22px !important;
}

#como-funciona .cf-icon{
width:50px !important;
height:50px !important;
margin-left:auto !important;
margin-right:auto !important;
margin-bottom:14px !important;
}

#como-funciona .cf-icon svg{
width:22px !important;
height:22px !important;
}

#como-funciona .cf-card h3{
font-size:17px !important;
}

#como-funciona .cf-card p{
font-size:14px !important;
line-height:1.6 !important;
}

#como-funciona .cf-header h2{
font-size:28px !important;
}

#como-funciona .cf-header p{
font-size:15px !important;
}

#como-funciona .cf-line{
display:none !important;
}

}

#como-funciona .cf-header h2{
font-size:32px !important;
line-height:1.2 !important;
}

@media (min-width:1025px){

#como-funciona .cf-header h2{
font-size:44px !important;
line-height:1.2 !important;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-888b063 */#clases{
padding:80px 0;
background:linear-gradient(135deg,#f8fafc,#eff6ff);
font-family:Segoe UI,system-ui,sans-serif;
}

#clases .clases-container{
max-width:1350px;
margin:auto;
padding:0 40px;
}

/* HEADER */

#clases .clases-header{
text-align:center;
margin-bottom:64px;
}

#clases .clases-header h2{
font-size:44px;
font-weight:600;
color:#0f172a;
line-height:1.15;
margin-bottom:14px;
}

#clases .clases-header p{
font-size:16px;
color:#475569;
max-width:640px;
margin:auto;
line-height:1.6;
}

/* FEATURES GRID */

#clases .clases-features{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:24px;
margin-bottom:70px;
}

/* CARD */

#clases .feature-card{
background:#ffffff;
border-radius:12px;
padding:24px;
box-shadow:0 2px 10px rgba(15,23,42,0.05);
transition:all .25s ease;
}

#clases .feature-card:hover{
box-shadow:0 10px 25px rgba(15,23,42,0.08);
transform:translateY(-3px);
}

/* ICON */

#clases .feature-icon{
width:40px;
height:40px;
color:#2563eb;
margin-bottom:16px;
stroke-width:2;
}

/* TITLE */

#clases .feature-card h3{
font-size:16px;
font-weight:600;
color:#0f172a;
margin-bottom:6px;
}

/* TEXT */

#clases .feature-card p{
font-size:14px;
color:#475569;
line-height:1.5;
}

/* TABLET */

@media (max-width:1024px){

#clases .clases-features{
grid-template-columns:repeat(2,1fr);
}

}

/* MOBILE */

@media (max-width:426px){

#clases .clases-container{
padding:0 24px;
}

#clases .clases-header h2{
font-size:32px;
}

#clases .clases-header p{
font-size:16px;
}

#clases .clases-features{
grid-template-columns:1fr;
gap:18px;
}

#clases .feature-card{
text-align:center;
}

#clases .feature-icon{
margin-left:auto;
margin-right:auto;
}

}

#clases .feature-card{
background:#ffffff;
border-radius:12px;
padding:24px;
box-shadow:0 2px 10px rgba(15,23,42,0.05);
transition:all .25s ease;
text-align:center;
}

#clases .feature-icon{
width:40px;
height:40px;
color:#2563eb;
margin:0 auto 16px auto;
display:block;
stroke-width:2;
}

#clases .clases-container{
max-width:1200px;
margin:auto;
padding-left:120px;
padding-right:120px;
}

/* SECCION */

#clases{
padding:90px 0;
background:linear-gradient(135deg,#f8fafc,#eff6ff);
font-family:Segoe UI,system-ui,sans-serif;
}

#clases .clases-container{
max-width:1150px;
margin:auto;
padding-left:120px;
padding-right:120px;
}


/* ICON */

#clases .feature-icon{
width:44px;
height:44px;
color:#2563eb;
margin-bottom:16px;
padding:10px;
background:#eff6ff;
border-radius:12px;
}


@media (max-width:1024px){

#clases .clases-container{
max-width:900px;
padding-left:40px;
padding-right:40px;
}

#clases .clases-header h2{
font-size:36px;
}

#clases .clases-header p{
font-size:15px;
}

#clases .clases-features{
grid-template-columns:repeat(2,1fr);
gap:22px;
}

#clases .feature-card{
padding:22px;
}

#clases .feature-icon{
width:40px;
height:40px;
}

}

@media (max-width:426px){

#clases{
padding:70px 0;
}

#clases .clases-container{
max-width:100%;
padding-left:24px;
padding-right:24px;
}

#clases .clases-header{
margin-bottom:48px;
}

#clases .clases-header h2{
font-size:32px;
line-height:1.2;
}

#clases .clases-header p{
font-size:15px;
max-width:100%;
}

#clases .clases-features{
grid-template-columns:1fr;
gap:18px;
}

#clases .feature-card{
padding:22px;
text-align:center;
}

#clases .feature-icon{
width:38px;
height:38px;
margin-left:auto;
margin-right:auto;
margin-bottom:14px;
}

#clases .feature-card h3{
font-size:16px;
}

#clases .feature-card p{
font-size:14px;
}

}

#clases .feature-card{
background:#ffffff;
border-radius:12px;
padding:24px;
border:1px solid #bfdbfe; /* celeste suave */
box-shadow:0 2px 10px rgba(15,23,42,0.05);
transition:all .25s ease;
text-align:center;
}

#clases .feature-card:hover{
border-color:#3b82f6; /* azul iconos */
box-shadow:0 12px 28px rgba(59,130,246,0.15);
transform:translateY(-3px);
}

#clases{
padding:90px 0 30px 0;}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2d3765c *//* CARD 1 - Azul */
#clases .feature-card:nth-child(1) .feature-icon{
background:#eff6ff;
color:#2563eb;
}

/* CARD 2 - Violeta */
#clases .feature-card:nth-child(2) .feature-icon{
background:#f3e8ff;
color:#9333ea;
}

/* CARD 3 - Verde */
#clases .feature-card:nth-child(3) .feature-icon{
background:#ecfdf5;
color:#10b981;
}

/* CARD 4 - Rosa */
#clases .feature-card:nth-child(4) .feature-icon{
background:#fdf2f8;
color:#ec4899;
}




#clases .feature-card{
background: linear-gradient(
135deg,
rgba(37,99,235,0.08),
rgba(236,72,153,0.08)
);
backdrop-filter: blur(6px);
border:1px solid rgba(59,130,246,0.15);
}



#clases{
background: linear-gradient(
135deg,
#f1f5f9 0%,
#e2e8f0 50%,
#e0ecff 100%
) !important;}




/* TITULO BASE */
#clases .clases-header h2{
font-size:44px;
font-weight:600;
color:#0f172a; /* color normal */
line-height:1.15;
margin-bottom:14px;
}

/* PARTE CON GRADIENTE */
#clases .clases-header h2 span{
background: linear-gradient(90deg, #2563eb, #6366f1, #7c3aed);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-cae5e4c */#ejercicios{
padding:90px 0;
background:#ffffff;
font-family:Segoe UI,system-ui,sans-serif;
}

#ejercicios .ej-container{
max-width:1100px;
margin:auto;
padding:0 40px;
}

#ejercicios .ej-header{
text-align:center;
margin-bottom:60px;
}

#ejercicios .ej-header h2{
font-size:44px;
font-weight:600;
color:#0f172a;
margin-bottom:14px;
line-height:1.15;
}

#ejercicios .ej-header p{
font-size:16px;
color:#475569;
max-width:650px;
margin:auto;
line-height:1.6;
}

#ejercicios .ej-list{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:20px;
}

#ejercicios .ej-item{
display:flex;
gap:16px;
padding:18px;
border-radius:12px;
background:#f8fafc;
border:1px solid #e2e8f0;
transition:all .25s ease;
}

#ejercicios .ej-item:hover{
background:#f1f5f9;
border-color:#bfdbfe;
transform:translateY(-2px);
}

#ejercicios .ej-icon{
width:44px;
height:44px;
border-radius:10px;
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
}

#ejercicios .ej-icon svg{
width:22px;
height:22px;
color:white;
}

#ejercicios .blue{
background:linear-gradient(135deg,#3b82f6,#2563eb);
}

#ejercicios .purple{
background:linear-gradient(135deg,#a855f7,#9333ea);
}

#ejercicios .indigo{
background:linear-gradient(135deg,#6366f1,#4f46e5);
}

#ejercicios .pink{
background:linear-gradient(135deg,#ec4899,#db2777);
}

#ejercicios h3{
font-size:17px;
font-weight:600;
color:#0f172a;
margin-bottom:4px;
}

#ejercicios p{
font-size:14px;
color:#475569;
line-height:1.5;
}

#ejercicios{
padding:100px 0;
background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
}

#ejercicios .ej-item{
display:flex;
gap:18px;
padding:22px 24px;
border-radius:14px;
background:#ffffff;
border:1px solid #e2e8f0;
transition:all .25s ease;
box-shadow:0 4px 14px rgba(15,23,42,0.04);
}

#ejercicios .ej-item:hover{
transform:translateY(-4px);
border-color:#93c5fd;
box-shadow:0 18px 40px rgba(37,99,235,0.10);
}
#ejercicios .ej-icon{
width:52px;
height:52px;
border-radius:12px;
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
}

#ejercicios .ej-icon svg{
width:26px;
height:26px;
color:white;
}

#ejercicios .ej-list{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:24px;
}

@media (max-width:426px){

#ejercicios{
padding:70px 0;
}

#ejercicios .ej-container{
padding-left:24px;
padding-right:24px;
}

#ejercicios .ej-header{
margin-bottom:48px;
}

#ejercicios .ej-header h2{
font-size:30px;
line-height:1.2;
}

#ejercicios .ej-header p{
font-size:15px;
}

#ejercicios .ej-list{
grid-template-columns:1fr;
gap:18px;
}

#ejercicios .ej-item{
padding:20px;
}

#ejercicios .ej-icon{
width:44px;
height:44px;
}

#ejercicios .ej-icon svg{
width:22px;
height:22px;
}

#ejercicios h3{
font-size:16px;
}

#ejercicios p{
font-size:14px;
}

}

@media (max-width:1024px){

#ejercicios .ej-item{
flex-direction:column;
align-items:center;
text-align:center;
}

#ejercicios .ej-icon{
margin-bottom:-13px;
}

#ejercicios h3{
margin-bottom:4px;
}

}

@media (max-width:426px){

#ejercicios{
padding:70px 0;
}

#ejercicios .ej-container{
padding-left:24px;
padding-right:24px;
}

#ejercicios .ej-header{
margin-bottom:48px;
}

#ejercicios .ej-header h2{
font-size:30px;
line-height:1.2;
}

#ejercicios .ej-header p{
font-size:15px;
}

#ejercicios .ej-list{
grid-template-columns:1fr;
gap:18px;
}

#ejercicios .ej-item{
flex-direction:column;
align-items:center;
text-align:center;
padding:22px;
}

#ejercicios .ej-icon{
width:46px;
height:46px;
margin-bottom:-13px;
}

#ejercicios .ej-icon svg{
width:22px;
height:22px;
}

#ejercicios h3{
font-size:17px;
margin-bottom:4px;
}

#ejercicios p{
font-size:14px;
line-height:1.5;
}

}

@media (min-width:1025px){

#ejercicios .ej-container{
max-width:1200px;
}

#ejercicios .ej-list{
grid-template-columns:repeat(4,1fr);
gap:28px;
}

#ejercicios .ej-item{
flex-direction:column;
align-items:center;
text-align:center;
padding:28px 24px;
}

#ejercicios .ej-icon{
margin-bottom:14px;
}

#ejercicios h3{
font-size:18px;
margin-bottom:6px;
}

#ejercicios p{
font-size:14px;
max-width:220px;
margin:auto;
}

#ejercicios .ej-icon{
width:52px;
height:52px;
border-radius:12px;
display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
margin-bottom:-5px;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0a38674 */.english-cta{
padding:90px 20px;
font-family:Segoe UI,system-ui,sans-serif;
background:linear-gradient(
180deg,
#b7d0bb 0%,
#c9ddc8 55%,
#e8e1c8 100%
);
position:relative;
overflow:hidden;
}

/* contenedor */

.english-cta-wrapper{
max-width:900px;
margin:auto;
text-align:center;
position:relative;
z-index:2;
}

/* glow decorativo */

.english-cta-glow{
position:absolute;
width:420px;
height:420px;
border-radius:50%;
filter:blur(90px);
opacity:.35;
}

.glow-left{
top:-120px;
left:-120px;
background:#9fc4a3;
}

.glow-right{
bottom:-140px;
right:-120px;
background:#e3d9b8;
}

/* icono */

.english-cta-icon{
width:64px;
height:64px;
background:rgba(255,255,255,0.5);
backdrop-filter:blur(10px);
border-radius:16px;
display:flex;
align-items:center;
justify-content:center;
margin:0 auto 30px auto;
}

/* titulo */

.english-cta-title{
font-size:40px;
color:#2f5d7c;
font-weight:600;
margin-bottom:18px;
line-height:1.2;
}

/* texto */

.english-cta-text{
font-size:18px;
color:#4b5563;
max-width:620px;
margin:auto;
margin-bottom:36px;
line-height:1.6;
}

/* botones */

.english-cta-actions{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

/* boton principal */

.cta-btn-primary{
background:white;
color:#2563eb;
padding:16px 34px;
border-radius:40px;
font-size:18px;
font-weight:600;
text-decoration:none;
transition:all .25s ease;
box-shadow:0 10px 30px rgba(0,0,0,0.25);
}

.cta-btn-primary:hover{
background:#1d4ed8;
color:white;
transform:translateY(-3px);
box-shadow:0 14px 40px rgba(0,0,0,0.35);
}

/* boton outline */

.cta-btn-outline{
border:2px solid #2f5d7c;
color:#2f5d7c;
padding:14px 28px;
border-radius:30px;
text-decoration:none;
font-weight:600;
transition:.2s;
display:inline-block;
}

.cta-btn-outline:hover{
background:#2f5d7c;
border-color:#2f5d7c;
color:white;
transform:translateY(-2px);
}

/* responsive */

@media (max-width:768px){

.english-cta-title{
font-size:40px;
color:#2f5d7c;
font-weight:600;
margin-bottom:18px;
line-height:1.2;
}

.english-cta-text{
font-size:18px;
color:#4b5563;
max-width:620px;
margin:auto;
margin-bottom:36px;
line-height:1.6;
}

.english-cta-actions{
flex-direction:column;
}

.cta-btn-primary,
.cta-btn-outline{
width:100%;
max-width:320px;
margin:auto;
}

}

.cta-btn-primary{
background:#2563eb;
color:white;
padding:16px 28px;
border-radius:30px;
text-decoration:none;
font-weight:600;
box-shadow:0 10px 25px rgba(37,99,235,.25);
transition:.2s;
display:inline-block;
}

.cta-btn-primary:hover{
transform:translateY(-2px);
color:white;
}

/* outline */




.cta-btn-primary,
.cta-btn-outline{
padding:14px 26px;
font-size:16px;
}

@media (max-width:1024px){

.english-cta-actions .cta-btn-primary,
.english-cta-actions .cta-btn-outline{
max-width:550px !important;
width:100% !important;
}

}







.english-cta-icon{
background:#2563eb !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b4f3799 */@media (max-width:1024px){

.english-cta{
padding:70px 20px;
}

.english-cta-title{
font-size:38px;
max-width:720px;
margin-left:auto;
margin-right:auto;
}

.english-cta-text{
font-size:18px;
max-width:600px;
margin-left:auto;
margin-right:auto;
}

.english-cta-actions{
justify-content:center;
gap:18px;
}

.english-cta-icon{
width:56px;
height:56px;
margin-bottom:24px;
}

}

@media (max-width:768px){

.english-cta{
padding:60px 20px;
}

.english-cta-title{
font-size:32px;
}

.english-cta-text{
font-size:17px;
}

.english-cta-actions{
flex-direction:column;
align-items:center;
gap:14px;
}

.cta-btn-primary,
.cta-btn-outline{
width:100%;
max-width:280px;
text-align:center;
}

}



@media (max-width:426px){

.english-cta{
padding:60px 18px;
}

.english-cta-title{
font-size:28px;
line-height:1.25;
}

.english-cta-text{
font-size:16px;
margin-bottom:30px;
}

.english-cta-icon{
width:52px;
height:52px;
margin-bottom:22px;
}

.english-cta-actions{
flex-direction:column;
gap:12px;
}

.english-cta-actions .cta-btn-primary,
.english-cta-actions .cta-btn-outline{
width:100% !important;
max-width:100% !important;
font-size:16px;
padding:16px 22px;
}

}

@media (max-width:426px){

.english-cta-actions .cta-btn-primary,
.english-cta-actions .cta-btn-outline{
max-width:360px !important;
width:100% !important;
}

}






.english-cta{
background: radial-gradient(circle at 20% 30%, rgba(59,130,246,0.12), transparent 45%),
radial-gradient(circle at 80% 70%, rgba(239,68,68,0.12), transparent 45%),
linear-gradient(135deg, #f8fafc, #eef2ff) !important;
}/* End custom CSS */