.elementor-1104 .elementor-element.elementor-element-16bf027{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--overlay-opacity:0.42;}.elementor-1104 .elementor-element.elementor-element-16bf027:not(.elementor-motion-effects-element-type-background), .elementor-1104 .elementor-element.elementor-element-16bf027 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://vivalafotografia.com/wp-content/uploads/2026/01/william-eggleston-02.jpg");background-size:cover;}.elementor-1104 .elementor-element.elementor-element-16bf027::before, .elementor-1104 .elementor-element.elementor-element-16bf027 > .elementor-background-video-container::before, .elementor-1104 .elementor-element.elementor-element-16bf027 > .e-con-inner > .elementor-background-video-container::before, .elementor-1104 .elementor-element.elementor-element-16bf027 > .elementor-background-slideshow::before, .elementor-1104 .elementor-element.elementor-element-16bf027 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1104 .elementor-element.elementor-element-16bf027 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#3B3B3B;--background-overlay:'';}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1104 .elementor-element.elementor-element-c59df2e{font-family:"Montserrat", Sans-serif;font-size:46px;font-weight:600;text-shadow:0px 0px 10px rgba(0, 0, 0, 0.73);color:#FFFFFF;}.elementor-1104 .elementor-element.elementor-element-0a35364{font-family:"Inter", Sans-serif;font-size:24px;font-weight:400;text-shadow:0px 0px 10px rgba(0, 0, 0, 0.93);color:#FFFFFF;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1104 .elementor-element.elementor-element-458b4f8 .elementor-button{background-color:#A2422B;font-family:"Montserrat", Sans-serif;font-size:23px;font-weight:500;border-radius:15px 15px 15px 15px;padding:15px 50px 15px 50px;}.elementor-1104 .elementor-element.elementor-element-5d073b9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1104 .elementor-element.elementor-element-5d073b9:not(.elementor-motion-effects-element-type-background), .elementor-1104 .elementor-element.elementor-element-5d073b9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFEB5F;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1104 .elementor-element.elementor-element-4191efa{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1104 .elementor-element.elementor-element-4191efa .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:25px;font-weight:500;}.elementor-1104 .elementor-element.elementor-element-4819056{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-1104 .elementor-element.elementor-element-0a68c02{--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-1104 .elementor-element.elementor-element-0a68c02:not(.elementor-motion-effects-element-type-background), .elementor-1104 .elementor-element.elementor-element-0a68c02 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F1F1F1;}.elementor-1104 .elementor-element.elementor-element-9e8f6a8{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:70px;--padding-left:30px;--padding-right:30px;}.elementor-1104 .elementor-element.elementor-element-cad6eeb{text-align:center;}.elementor-1104 .elementor-element.elementor-element-cad6eeb .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:700;line-height:38px;}.elementor-1104 .elementor-element.elementor-element-66a5932{margin:18px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;font-family:"Inter", Sans-serif;font-size:22px;font-weight:400;}.elementor-1104 .elementor-element.elementor-element-de08ee3 .elementor-button{background-color:#A2422B;font-family:"Montserrat", Sans-serif;font-size:23px;font-weight:500;border-radius:15px 15px 15px 15px;padding:15px 50px 15px 50px;}.elementor-1104 .elementor-element.elementor-element-de08ee3{margin:21px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1104 .elementor-element.elementor-element-f4547f6{--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-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1104 .elementor-element.elementor-element-05858c3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1104 .elementor-element.elementor-element-1689100{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-1104 .elementor-element.elementor-element-153516c{--display:flex;--min-height:506px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--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-1104 .elementor-element.elementor-element-153516c:not(.elementor-motion-effects-element-type-background), .elementor-1104 .elementor-element.elementor-element-153516c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://vivalafotografia.com/wp-content/uploads/2026/01/henri-cartier-bresson-1.jpg");background-position:center center;background-size:cover;}.elementor-1104 .elementor-element.elementor-element-bfe020c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:56px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}.elementor-1104 .elementor-element.elementor-element-bfe020c:not(.elementor-motion-effects-element-type-background), .elementor-1104 .elementor-element.elementor-element-bfe020c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#845EB3;}.elementor-1104 .elementor-element.elementor-element-e319483{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;columns:1;text-align:center;font-family:"Inter", Sans-serif;font-size:24px;font-weight:400;text-shadow:0px 0px 10px rgba(0, 0, 0, 0);color:#FFFFFF;}.elementor-1104 .elementor-element.elementor-element-e319483 a{color:#FFFFFF;}.elementor-1104 .elementor-element.elementor-element-e319483 a:hover, .elementor-1104 .elementor-element.elementor-element-e319483 a:focus{color:#FFFFFF;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1104 .elementor-element.elementor-element-3750124{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-1104 .elementor-element.elementor-element-3750124.elementor-element{--align-self:center;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-field-group{padding-right:calc( 60px/2 );padding-left:calc( 60px/2 );margin-bottom:12px;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-form-fields-wrapper{margin-left:calc( -60px/2 );margin-right:calc( -60px/2 );margin-bottom:-12px;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1104 .elementor-element.elementor-element-3750124 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1104 .elementor-element.elementor-element-3750124 .elementor-labels-inline .elementor-field-group > label{padding-left:6px;}body:not(.rtl) .elementor-1104 .elementor-element.elementor-element-3750124 .elementor-labels-inline .elementor-field-group > label{padding-right:6px;}body .elementor-1104 .elementor-element.elementor-element-3750124 .elementor-labels-above .elementor-field-group > label{padding-bottom:6px;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-field-type-html{padding-bottom:0px;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-button{font-family:"Montserrat", Sans-serif;font-size:23px;font-weight:600;border-radius:18px 18px 18px 18px;padding:23px 23px 23px 23px;}.elementor-1104 .elementor-element.elementor-element-3750124 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-button[type="submit"]{color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-message{font-family:"Inter", Sans-serif;font-size:18px;font-weight:500;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-message.elementor-message-success{color:#FFFFFF;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-message.elementor-message-danger{color:#FFFFFF;}.elementor-1104 .elementor-element.elementor-element-3750124 .elementor-message.elementor-help-inline{color:#FFFFFF;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-1104 .elementor-element.elementor-element-16bf027{--padding-top:45px;--padding-bottom:45px;--padding-left:45px;--padding-right:45px;}.elementor-1104 .elementor-element.elementor-element-1689100{--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;}.elementor-1104 .elementor-element.elementor-element-bfe020c{--min-height:536px;}.elementor-1104 .elementor-element.elementor-element-e319483{--container-widget-width:826px;--container-widget-flex-grow:0;width:var( --container-widget-width, 826px );max-width:826px;}}@media(max-width:767px){.elementor-1104 .elementor-element.elementor-element-16bf027:not(.elementor-motion-effects-element-type-background), .elementor-1104 .elementor-element.elementor-element-16bf027 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;}.elementor-1104 .elementor-element.elementor-element-16bf027{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:15px;}.elementor-1104 .elementor-element.elementor-element-c59df2e{font-size:42px;}.elementor-1104 .elementor-element.elementor-element-0a35364{font-size:23px;}.elementor-1104 .elementor-element.elementor-element-4191efa .elementor-heading-title{font-size:20px;}.elementor-1104 .elementor-element.elementor-element-9e8f6a8{--padding-top:30px;--padding-bottom:45px;--padding-left:20px;--padding-right:20px;}.elementor-1104 .elementor-element.elementor-element-cad6eeb .elementor-heading-title{font-size:27px;}.elementor-1104 .elementor-element.elementor-element-66a5932{font-size:20px;}.elementor-1104 .elementor-element.elementor-element-de08ee3 .elementor-button{font-size:19px;padding:13px 13px 13px 13px;}.elementor-1104 .elementor-element.elementor-element-1689100{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1104 .elementor-element.elementor-element-1689100.e-con{--align-self:center;}.elementor-1104 .elementor-element.elementor-element-bfe020c{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:13px 12px;--row-gap:13px;--column-gap:12px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:20px;}.elementor-1104 .elementor-element.elementor-element-e319483{--container-widget-width:330px;--container-widget-flex-grow:0;width:var( --container-widget-width, 330px );max-width:330px;font-size:23px;}.elementor-1104 .elementor-element.elementor-element-3750124{width:var( --container-widget-width, 300px );max-width:300px;padding:0px 0px 0px 0px;--container-widget-width:300px;--container-widget-flex-grow:0;}}@media(min-width:768px){.elementor-1104 .elementor-element.elementor-element-0a68c02{--width:50%;}.elementor-1104 .elementor-element.elementor-element-f4547f6{--width:50%;}.elementor-1104 .elementor-element.elementor-element-153516c{--width:50%;}.elementor-1104 .elementor-element.elementor-element-bfe020c{--width:81%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1104 .elementor-element.elementor-element-153516c{--width:100%;}.elementor-1104 .elementor-element.elementor-element-bfe020c{--width:100%;}}/* Start custom CSS for heading, class: .elementor-element-4191efa */.marquee {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.marquee .elementor-heading-title {
  display: inline-flex;
  white-space: nowrap;
  animation: scroll-left 30s linear infinite;
}

.marquee .elementor-heading-title::after {
  content: "     |   CLASES ONLINE Y EN DIRECTO   |   CLASES GRABADAS POR SI NO PUEDES ASISTIR   |   CONTACTO DIRECTO CON EL PROFESOR    |   CLASES ONLINE Y EN DIRECTO   |   CLASES GRABADAS POR SI NO PUEDES ASISTIR   |   CONTACTO DIRECTO CON EL PROFESOR   ";
}

@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4819056 *//* 1) Que las 3 columnas tengan SIEMPRE la misma altura */
.elementor-1104 .elementor-element.elementor-element-4819056{
  align-items: stretch; /* importante en contenedores flex */
}

/* 2) La columna de la imagen ocupa toda la altura del contenedor */
.elementor-1104 .elementor-element.elementor-element-4819056 .elementor-widget-image,
.elementor-1104 .elementor-element.elementor-element-4819056 .elementor-widget-image .elementor-widget-container{
  height: 100%;
}

/* 3) La imagen rellena el alto (sin hueco blanco) */
.elementor-1104 .elementor-element.elementor-element-4819056 .elementor-widget-image img{
  width: 100%;
  height: 100%;
  object-fit: cover;      /* rellena recortando si hace falta */
  display: block;         /* evita huecos por inline */
}

/* 4) Por si hay “espacio fantasma” típico de line-height */
.elementor-1104 .elementor-element.elementor-element-4819056 .elementor-widget-image{
  li/* End custom CSS */