.elementor-kit-579276{--e-global-color-primary:#07294D;--e-global-color-secondary:#5F98AE;--e-global-color-text:#1A1D23;--e-global-color-accent:#B84F2C;--e-global-typography-primary-font-family:"Sora";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Sora";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-v4-color-text-body );font-family:var( --e-global-typography-v4-body-text-font-family ), Sans-serif;font-size:var( --e-global-typography-v4-body-text-font-size );font-weight:var( --e-global-typography-v4-body-text-font-weight );}.elementor-kit-579276 button,.elementor-kit-579276 input[type="button"],.elementor-kit-579276 input[type="submit"],.elementor-kit-579276 .elementor-button{background-color:var( --e-global-color-v4-color-accent );font-family:"Inter", Sans-serif;font-size:16px;font-weight:600;color:var( --e-global-color-v4-color-bg-neutral );border-radius:12px 12px 12px 12px;}.elementor-kit-579276 button:hover,.elementor-kit-579276 button:focus,.elementor-kit-579276 input[type="button"]:hover,.elementor-kit-579276 input[type="button"]:focus,.elementor-kit-579276 input[type="submit"]:hover,.elementor-kit-579276 input[type="submit"]:focus,.elementor-kit-579276 .elementor-button:hover,.elementor-kit-579276 .elementor-button:focus{background-color:var( --e-global-color-v4-color-accent-hover );}.elementor-kit-579276 e-page-transition{background-color:#FFBC7D;}.elementor-kit-579276 a{color:var( --e-global-color-v4-color-primary );}.elementor-kit-579276 h1{color:var( --e-global-color-v4-color-primary );font-family:var( --e-global-typography-v4-title-1-font-family ), Sans-serif;font-size:var( --e-global-typography-v4-title-1-font-size );font-weight:var( --e-global-typography-v4-title-1-font-weight );}.elementor-kit-579276 h2{color:var( --e-global-color-v4-color-primary );font-family:var( --e-global-typography-v4-title-2-font-family ), Sans-serif;font-size:var( --e-global-typography-v4-title-2-font-size );font-weight:var( --e-global-typography-v4-title-2-font-weight );}.elementor-kit-579276 h3{color:var( --e-global-color-v4-color-primary );font-family:var( --e-global-typography-v4-title-3-font-family ), Sans-serif;font-size:var( --e-global-typography-v4-title-3-font-size );font-weight:var( --e-global-typography-v4-title-3-font-weight );}.elementor-kit-579276 h4{font-family:var( --e-global-typography-v4-title-4-font-family ), Sans-serif;font-size:var( --e-global-typography-v4-title-4-font-size );font-weight:var( --e-global-typography-v4-title-4-font-weight );}.elementor-kit-579276 h5{font-family:var( --e-global-typography-v4-title-5-font-family ), Sans-serif;font-size:var( --e-global-typography-v4-title-5-font-size );font-weight:var( --e-global-typography-v4-title-5-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-579276{font-size:var( --e-global-typography-v4-body-text-font-size );}.elementor-kit-579276 h1{font-size:var( --e-global-typography-v4-title-1-font-size );}.elementor-kit-579276 h2{font-size:var( --e-global-typography-v4-title-2-font-size );}.elementor-kit-579276 h3{font-size:var( --e-global-typography-v4-title-3-font-size );}.elementor-kit-579276 h4{font-size:var( --e-global-typography-v4-title-4-font-size );}.elementor-kit-579276 h5{font-size:var( --e-global-typography-v4-title-5-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-579276{font-size:var( --e-global-typography-v4-body-text-font-size );}.elementor-kit-579276 h1{font-size:var( --e-global-typography-v4-title-1-font-size );}.elementor-kit-579276 h2{font-size:var( --e-global-typography-v4-title-2-font-size );}.elementor-kit-579276 h3{font-size:var( --e-global-typography-v4-title-3-font-size );}.elementor-kit-579276 h4{font-size:var( --e-global-typography-v4-title-4-font-size );}.elementor-kit-579276 h5{font-size:var( --e-global-typography-v4-title-5-font-size );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --font-body:Inter; --font-size-small:13px; --color-border:#E3E6EA; --font-heading:Sora; --font-size-h2:28px; --color-primary:#07294D; --radius-sm:8px; --color-accent:#B84F2C; --color-accent-hover:#A04426; --font-size-h1:40px; --font-size-h3:20px; --font-size-body:16px; --color-text-body:#1A1D23; --color-text-muted:#5C6470; --color-secondary:#5F98AE; --radius-pill:20px; --space-card-padding:16px; --radius-md:12px; --color-secondary-tint:#E8F1F5; --color-primary-light:#0F3D6E; --color-primary-dark:#041729; --color-bg-neutral:#F6F8FA; --e-gv-76c73b2:#5C6470; --e-gv-46487c5:#F6F8FA; --e-gv-3cf99a4:#07294D; --e-gv-6447cc8:12px; --e-gv-26b6e99:Inter; --e-gv-20ab260:13px; --e-gv-5df614d:16px; --e-gv-58e35d4:#5F98AE; --e-gv-53d70b8:#FFC600; --e-gv-4458d11:#1A1D23; --e-gv-65b0401:#041729; --e-gv-12f5a16:8px; --e-gv-7c346ad:#E0AD00; --e-gv-342333d:#5C6470; --e-gv-6be078c:#F6F8FA; --e-gv-1a9988c:Inter; --e-gv-59b2bd3:13px; --e-gv-316c08f:#07294D; --e-gv-26bec10:8px; --e-gv-7672ae8:#FFC600; --e-gv-3d8c425:#E0AD00; --color-acent-on-dark:#E8956E; --color-acent-on-dark-hover:#EAA280; --font-size-medium:14px; --font-size-h4:16px; }
/* Start custom CSS */:root {

  

  /* ===== TIPOGRAFÍA FLUIDA — clamp(mínimo móvil, escalado, máximo desktop) ===== */
  --font-size-h1: clamp(1.75rem, 1.1rem + 2.8vw, 2.75rem);   /* 28px → 44px */
  --font-size-h2: clamp(1.375rem, 1rem + 1.6vw, 2rem);        /* 22px → 32px */
  --font-size-h3: clamp(1.125rem, 1rem + 0.5vw, 1.25rem);     /* 18px → 20px */
  --font-size-body: clamp(0.9375rem, 0.9rem + 0.15vw, 1rem);  /* 15px → 16px */

  /* ===== ESPACIADO FLUIDO ===== */
  --space-section-y: clamp(2.5rem, 2rem + 3vw, 4.5rem);   /* 40px → 72px */
  --space-card-padding: clamp(0.875rem, 0.8rem + 0.5vw, 1.25rem); /* 14px → 20px */
  --gap-grid: clamp(0.75rem, 0.5rem + 1vw, 1.5rem);       /* 12px → 24px */

  /* ===== RADIOS Y BORDES (fijos, no necesitan fluidez) ===== */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-pill: 20px;

  /* ===== TRANSICIONES — consistencia en hovers ===== */
  --transition-fast: 0.18s ease;
}

/* ===== Ejemplo de uso dentro de clases globales V4 ===== */
.title-1 {
  font-size: var(--font-size-h1);
  line-height: 1.2;
}

.title-2 {
  font-size: var(--font-size-h2);
  line-height: 1.25;
}

.body-text {
  font-size: var(--font-size-body);
  line-height: 1.6;
}

.btn-primary {
  background-color: var(--color-accent);
  color: var(--color-primary);
  border-radius: var(--radius-sm);
  transition: background-color var(--transition-fast);
}

.btn-primary:hover {
  background-color: var(--color-accent-hover);
}

.card-course {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: var(--space-card-padding);
}

section {
  padding-top: var(--space-section-y);
  padding-bottom: var(--space-section-y);
}


.wpcf7-form {
  display: flex;
  flex-direction: column;
  gap: 0px;600px;
}

.wpcf7-form label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-weight: 600;
  font-size: 14px;
  color: #07294D;
}

.wpcf7-form-control {
  font-weight: 400;
  border: 1px solid #e3e6ea!important;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 14px;
  color: #1a1a1a;
  background: #fff;
  transition: border-color .15s ease;
}

.wpcf7-form-control:focus {
  outline: none;
  border-color: #e3e6ea;
  box-shadow: 0 0 0 3px rgba(184, 79, 44, 0.12);
}

/* Select con flecha propia (los navegadores no dejan estilizar mucho la nativa) */
select.wpcf7-form-control {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M0 0l5 6 5-6z' fill='%2307294D'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 32px;
}

/* Checkbox de política de privacidad */
.wpcf7-form .wpcf7-acceptance label {
  flex-direction: row;
  align-items: flex-start;
  gap: 8px;
  font-weight: 400;
  font-size: 13px;
  color: #4a4a4a;
}
.wpcf7-form .wpcf7-acceptance input[type="checkbox"] {
  accent-color: #b84f2c;
  width: 16px;
  height: 16px;
  margin-top: 2px;
}

/* Contenedor principal */
.mi-checkbox-personalizado {
  display: block !important;
  margin: 10px 0 !important;
}

/* Resetear estilos del contenedor */
.mi-checkbox-personalizado .wpcf7-acceptance,
.mi-checkbox-personalizado .wpcf7-acceptance label,
.mi-checkbox-personalizado .wpcf7-list-item {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}

/* El label que contiene checkbox y texto */
.mi-checkbox-personalizado .wpcf7-acceptance label {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important; /* Alinea checkbox con la primera línea del texto */
  gap: 10px !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  color: #4a4a4a !important;
  line-height: 1.5 !important;
}

/* El span que envuelve el checkbox */
.mi-checkbox-personalizado .wpcf7-list-item {
  display: flex !important;
  align-items: flex-start !important;
}

/* El label interno de CF7 */
.mi-checkbox-personalizado .wpcf7-list-item-label {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  display: inline !important;
}

/* El checkbox */
.mi-checkbox-personalizado input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0 !important; /* Evita que se encoja */
  margin: 2px 0 0 0 !important; /* Ajusta la alineación vertical */
  accent-color: #b84f2c !important;
  background: transparent !important;
  border: 2px solid #07294D !important;
  border-radius: 4px !important;
  padding: 0 !important;
  cursor: pointer !important;
}

/* El texto del checkbox */
.mi-checkbox-personalizado .wpcf7-list-item-label {
  font-weight: 400 !important;
  font-size: 14px !important;
  color: #07294D !important;
  line-height: 1.5 !important;
  display: inline !important;
}

/* Estilo del enlace dentro del texto */
.mi-checkbox-personalizado a {
  color: #b84f2c !important;
  text-decoration: underline !important;
  font-weight: 500 !important;
}

.mi-checkbox-personalizado a:hover {
  color: #07294D !important;
  text-decoration: none !important;
}/* End custom CSS */