.elementor-78241 .elementor-element.elementor-element-e36e871{--display:flex;--min-height:40vh;--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;--justify-content:center;--overlay-opacity:0.06;--padding-top:0px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;}.elementor-78241 .elementor-element.elementor-element-e36e871::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';background-image:url("https://ecosio.com/app/uploads/2025/07/chatgpt-image-jul-16-2025-10_29_21-am.jpg");background-position:0px -131px;background-repeat:no-repeat;background-size:cover;}.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-78241 .elementor-element.elementor-element-2d1d0df{text-align:center;}.elementor-78241 .elementor-element.elementor-element-2d1d0df .elementor-heading-title{font-family:"Messina Sans", Sans-serif;font-size:42px;font-weight:600;text-transform:none;color:var( --e-global-color-c8e1197 );}.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-78241 .elementor-element.elementor-element-32f6fd0{text-align:center;font-family:"Messina Sans", Sans-serif;font-weight:400;color:var( --e-global-color-c8e1197 );margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:30px 30px 30px 30px;width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;}.elementor-78241 .elementor-element.elementor-element-32f6fd0.elementor-element{--align-self:center;}.elementor-78241 .elementor-element.elementor-element-ae6c5e7{--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:20px;--margin-bottom:-10px;--margin-left:0px;--margin-right:0px;}.elementor-78241 .elementor-element.elementor-element-d367a90{--display:flex;--min-height:120px;--border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(96.9, 96.9, 96.9, 0.5);}.elementor-78241 .elementor-element.elementor-element-d367a90:not(.elementor-motion-effects-element-type-background), .elementor-78241 .elementor-element.elementor-element-d367a90 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#82D3491A;}.elementor-78241 .elementor-element.elementor-element-4100b3e{text-align:center;padding:10px 20px 10px 20px;}.elementor-78241 .elementor-element.elementor-element-4100b3e .elementor-heading-title{font-family:"Messina Sans", Sans-serif;font-size:25px;font-weight:600;-webkit-text-stroke-color:#000;stroke:#000;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-item:not(:last-child):after{content:"";border-color:#ddd;}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:1px;}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:1px;}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-78241 .elementor-element.elementor-element-92f2b56{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-item > a{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:400;}.elementor-78241 .elementor-element.elementor-element-92f2b56 .elementor-icon-list-text{transition:color 0.3s;}.elementor-78241 .elementor-element.elementor-element-ecb3811{--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;--overlay-opacity:1;border-style:none;--border-style:none;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:50px;--padding-left:40px;--padding-right:40px;}.elementor-78241 .elementor-element.elementor-element-ecb3811::before, .elementor-78241 .elementor-element.elementor-element-ecb3811 > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-ecb3811 > .e-con-inner > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-ecb3811 > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-ecb3811 > .e-con-inner > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-ecb3811 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-78241 .elementor-element.elementor-element-a5427b2{text-align:center;margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 40px) 0px;}.elementor-78241 .elementor-element.elementor-element-a5427b2 .elementor-heading-title{font-family:"Messina Sans", Sans-serif;font-size:26px;font-weight:400;text-transform:none;}.elementor-78241 .elementor-element.elementor-element-9c58bc7{padding:0px 20px 0px 20px;}.elementor-78241 .elementor-element.elementor-element-59b5a2e{--display:flex;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-78241 .elementor-element.elementor-element-9dc87b4{font-family:"Messina Sans", Sans-serif;font-size:14px;font-weight:400;color:#1D1D1DE6;}.elementor-78241 .elementor-element.elementor-element-1c01a9d{--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;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-78241 .elementor-element.elementor-element-fa6ef03{text-align:left;margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-78241 .elementor-element.elementor-element-fa6ef03 .elementor-heading-title{font-family:"Messina Sans", Sans-serif;font-weight:600;color:var( --e-global-color-text );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-78241 .elementor-element.elementor-element-a48f3ff{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:4px;}.elementor-78241 .elementor-element.elementor-element-a48f3ff .elementor-divider-separator{width:10%;margin:0 auto;margin-left:0;}.elementor-78241 .elementor-element.elementor-element-a48f3ff .elementor-divider{text-align:left;padding-block-start:5px;padding-block-end:5px;}.elementor-78241 .elementor-element.elementor-element-e0709ca{--display:flex;}.elementor-78241 .elementor-element.elementor-element-1a94a74{--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;}.elementor-78241 .elementor-element.elementor-element-ceb3a9e{--display:flex;}.elementor-78241 .elementor-element.elementor-element-d30f52e{--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;}.elementor-78241 .elementor-element.elementor-element-3564931{--display:flex;}.elementor-78241 .elementor-element.elementor-element-12d04f9{--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;}.elementor-78241 .elementor-element.elementor-element-a1b781c{--display:flex;}.elementor-78241 .elementor-element.elementor-element-4131aad{--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;}.elementor-78241 .elementor-element.elementor-element-f26e4e5{--display:flex;}.elementor-78241 .elementor-element.elementor-element-e268cf3{--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;}.elementor-78241 .elementor-element.elementor-element-5a12241{--n-accordion-title-font-size:20px;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-title-normal-color:#0054FF;--n-accordion-icon-size:15px;margin:30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-78241 .elementor-element.elementor-element-0a16d42{--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:80px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-78241 .elementor-element.elementor-element-0a16d42:not(.elementor-motion-effects-element-type-background), .elementor-78241 .elementor-element.elementor-element-0a16d42 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://ecosio.com/app/uploads/2024/12/adobestock_917327795-scaled.jpeg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-78241 .elementor-element.elementor-element-5c12068{text-align:center;}.elementor-78241 .elementor-element.elementor-element-5c12068 .elementor-heading-title{font-family:"Messina Sans", Sans-serif;font-weight:600;color:var( --e-global-color-c8e1197 );}.elementor-78241 .elementor-element.elementor-element-b513499{--divider-border-style:solid;--divider-color:var( --e-global-color-c8e1197 );--divider-border-width:3.7px;}.elementor-78241 .elementor-element.elementor-element-b513499 .elementor-divider-separator{width:15%;margin:0 auto;margin-center:0;}.elementor-78241 .elementor-element.elementor-element-b513499 .elementor-divider{text-align:center;padding-block-start:10px;padding-block-end:10px;}.elementor-78241 .elementor-element.elementor-element-7632c9b{--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;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-78241 .elementor-element.elementor-element-667426d{--display:flex;}.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-78241 .elementor-element.elementor-element-fd2f6bd img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );transition-duration:1.5s;box-shadow:0px 0px 5px 1px rgba(156.4, 156.4, 156.4, 0.5);}.elementor-78241 .elementor-element.elementor-element-fd2f6bd:hover img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-78241 .elementor-element.elementor-element-b152185{--display:flex;}.elementor-78241 .elementor-element.elementor-element-a623a5d img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );transition-duration:1.2s;box-shadow:0px 0px 5px 1px rgba(156.4, 156.4, 156.4, 0.5);}.elementor-78241 .elementor-element.elementor-element-3ae22e5{--display:flex;}.elementor-78241 .elementor-element.elementor-element-b0aa505 img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );transition-duration:1.2s;box-shadow:0px 0px 5px 1px rgba(156.4, 156.4, 156.4, 0.5);}.elementor-78241 .elementor-element.elementor-element-8b21fe0{--display:flex;}.elementor-78241 .elementor-element.elementor-element-ff8db38 img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );transition-duration:1.2s;box-shadow:0px 0px 5px 1px rgba(156.4, 156.4, 156.4, 0.5);}@media(min-width:768px){.elementor-78241 .elementor-element.elementor-element-d367a90{--width:43%;}.elementor-78241 .elementor-element.elementor-element-ecb3811{--content-width:1200px;}}@media(min-width:1401px){.elementor-78241 .elementor-element.elementor-element-e36e871::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-attachment:scroll;}.elementor-78241 .elementor-element.elementor-element-0a16d42:not(.elementor-motion-effects-element-type-background), .elementor-78241 .elementor-element.elementor-element-0a16d42 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:1400px){.elementor-78241 .elementor-element.elementor-element-e36e871{--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;}.elementor-78241 .elementor-element.elementor-element-2d1d0df .elementor-heading-title{font-size:45px;}.elementor-78241 .elementor-element.elementor-element-1c01a9d{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-78241 .elementor-element.elementor-element-0a16d42{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-78241 .elementor-element.elementor-element-7632c9b{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:1024px){.elementor-78241 .elementor-element.elementor-element-e36e871::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-position:0px 0px;}}@media(max-width:767px){.elementor-78241 .elementor-element.elementor-element-e36e871::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-video-container::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .e-con-inner > .elementor-background-slideshow::before, .elementor-78241 .elementor-element.elementor-element-e36e871 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-position:0px 0px;}.elementor-78241 .elementor-element.elementor-element-2d1d0df .elementor-heading-title{font-size:35px;}.elementor-78241 .elementor-element.elementor-element-4100b3e .elementor-heading-title{font-size:25px;}.elementor-78241 .elementor-element.elementor-element-ecb3811{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-78241 .elementor-element.elementor-element-9c58bc7{padding:0px 0px 0px 0px;}.elementor-78241 .elementor-element.elementor-element-1c01a9d{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-78241 .elementor-element.elementor-element-fa6ef03 .elementor-heading-title{font-size:30px;}.elementor-78241 .elementor-element.elementor-element-0a16d42{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-78241 .elementor-element.elementor-element-5c12068 .elementor-heading-title{font-size:25px;}.elementor-78241 .elementor-element.elementor-element-7632c9b{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}}/* Start custom CSS for container, class: .elementor-element-e36e871 */.elementor-78241 .elementor-element.elementor-element-e36e871 {background: radial-gradient( 50% 100% at var(--g4-1-x-position) var(--g4-1-y-position), #0054FF -10%, transparent ), radial-gradient( 100% 100% at var(--g4-2-x-position) var(--g4-2-y-position), #001642 -100%, transparent ), radial-gradient( 100% 100% at var(--g4-3-x-position) var(--g4-3-y-position), #3fc0d1/*#0054FF*/ -100%, transparent ), radial-gradient( 50% 100% at var(--g4-4-x-position) var(--g4-4-y-position), #001642 -100%, transparent ), #001642;animation-name: g-4; animation-iteration-count: infinite; animation-duration: 8s; transition-timing-function: ease-in-out;}@property --g4-1-x-position { syntax: "<percentage>"; inherits: false; initial-value: 87.23379629629622%; } @property --g4-1-y-position { syntax: "<percentage>"; inherits: false; initial-value: 83.08008213552361%; } @property --g4-2-x-position { syntax: "<percentage>"; inherits: false; initial-value: 18.900462962962923%; } @property --g4-2-y-position { syntax: "<percentage>"; inherits: false; initial-value: 78.15195071868584%; } @property --g4-3-x-position { syntax: "<percentage>"; inherits: false; initial-value: 88.62268518518512%; } @property --g4-3-y-position { syntax: "<percentage>"; inherits: false; initial-value: 15.071868583162217%; } @property --g4-4-x-position { syntax: "<percentage>"; inherits: false; initial-value: 11.712962962962967%; } @property --g4-4-y-position { syntax: "<percentage>"; inherits: false; initial-value: 16.550308008213555%; }:root {--g4-1-x-position: 87.23379629629622%;--g4-1-y-position: 83.08008213552361%;--g4-2-x-position: 18.900462962962923%;--g4-2-y-position: 78.15195071868584%;--g4-3-x-position: 88.62268518518512%;--g4-3-y-position: 15.071868583162217%;--g4-4-x-position: 11.712962962962967%;--g4-4-y-position: 16.550308008213555%;}@keyframes g-4 { 25% { --g4-1-x-position: 88.11342592592592%; --g4-1-y-position: 17.74127310061603%; --g4-2-x-position: 86.99074074074056%; --g4-2-y-position: 80.29774127310063%; --g4-3-x-position: 11.157407407407389%; --g4-3-y-position: 18.80903490759754%; --g4-4-x-position: 15.543981481481403%; --g4-4-y-position: 78.31622176591377%; } 50% { --g4-1-x-position: 13.888888888888834%; --g4-1-y-position: 18.891170431211524%; --g4-2-x-position: 85.20833333333329%; --g4-2-y-position: 17.874743326488705%; --g4-3-x-position: 15%; --g4-3-y-position: 85%; --g4-4-x-position: 100%; --g4-4-y-position: 100%; } 75% { --g4-1-x-position: 17.071759259259224%; --g4-1-y-position: 75.56468172484597%; --g4-2-x-position: 13.136574074074%; --g4-2-y-position: 20.739219712525706%; --g4-3-x-position: 84.25925925925932%; --g4-3-y-position: 74.94866529774129%; --g4-4-x-position: 81.82870370370377%; --g4-4-y-position: 16.837782340862468%; } }/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-9c58bc7 *//* --- Variables de Color (¡Puedes cambiarlas fácilmente!) --- */
.modern-validator-form {
  --primary-color: #002268; /* Púrpura/Azul para botones y foco */
  --primary-color-light: #f0eefe; /* Sombra de foco */
  --text-color: #333; /* Texto principal */
  --border-color: #d1d5db; /* Bordes de inputs */
  --background-color: #ffffff; /* Fondo de inputs */
  --label-color: #111827; /* Color de las etiquetas */
}

/* --- Estilos Generales del Formulario --- */

.modern-validator-form .formBox{
    padding: 25px;
    box-shadow: 0px 0px 5px 0px #6b72804f;
    border-radius: 20px;
}

.modern-validator-form .entwerter-disclaimer{
    font-family: 'Messina Sans Initial';
    font-size: 18px;
    color: #6b7280;
    margin-bottom: 16px;
    text-align: center;
}


.modern-validator-form form {
  display: flex;
  flex-direction: column;
  gap: 24px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: var(--text-color);
}

.modern-validator-form .field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.modern-validator-form .form-label {
  font-weight: 600;
  font-size: 14px;
  color: var(--label-color);
}

/* --- AJUSTE PARA EL SELECT (Select2) --- */

.modern-validator-form .select2-container.entwerter_select2 .select2-choice {
  height: 44px !important;
  line-height: 42px !important; /* Ajustado para centrar verticalmente */
  padding: 0 12px !important;
  border-radius: 8px !important;
  border: 1px solid var(--border-color) !important;
  background-image: none !important;
  background-color: var(--background-color) !important;
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05) !important;
  transition: border-color 0.2s, box-shadow 0.2s;
  font-size: 18px;
  font-family: 'Messina Sans Initial';
}

.modern-validator-form .select2-container-active .select2-choice {
  border-color: var(--primary-color) !important;
  box-shadow: 0 0 0 3px var(--primary-color-light) !important;
}

.modern-validator-form .select2-arrow {
  border: none !important;
  background: none !important;
}

.modern-validator-form .select2-arrow b {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="%23888"><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5" /></svg>') !important;
  background-size: 16px 16px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  top: 50% !important;
  transform: translateY(-50%);
  left: -5px !important;
  position: absolute;
}

/* --- AJUSTE PARA EL INPUT DE ARCHIVO --- */
/* Aplicamos un estilo base al input para que tenga la misma apariencia */
.modern-validator-form input[type="file"] {
    width: 100%;    
  font-size: 18px;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  padding: 5px 10px;
  color: var(--text-color);
  line-height: 28px;
  background-color: var(--background-color);
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  transition: border-color 0.2s, box-shadow 0.2s;
}

.modern-validator-form input[type="file"]:hover {
    border-color: #a0aec0;
}

/* Y ahora estilizamos el botón interno */
.modern-validator-form input[type="file"]::file-.elementor-78241 .elementor-element.elementor-element-9c58bc7-button {
  font-weight: 600;
  color: var(--primary-color);
  background-color: var(--primary-color-light);
  padding: 6px 12px; /* Ajuste de padding */
  border: none; /* Quitamos el borde del botón */
  border-radius: 6px;
  cursor: pointer;
  margin-right: 12px;
  transition: background-color 0.2s, color 0.2s;
 
}

.modern-validator-form input[type="file"]::file-.elementor-78241 .elementor-element.elementor-element-9c58bc7-button:hover {
  background-color: var(--primary-color);
  color: white;
  font-family: 'Messina Sans Initial'!important;
}


/* --- Estilo para los Checkbox Personalizados (Sin cambios) --- */
.modern-validator-form .validation-checkbox {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
}
.modern-validator-form .validation-checkbox input[type="checkbox"] {
  display: none;
}
.modern-validator-form .validation-checkbox .checkbox-label::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 2px solid var(--border-color);
  border-radius: 6px;
  background-color: var(--background-color);
  transition: all 0.2s;
  vertical-align: middle;
  margin-right: 8px;
  font-family: 'Messina Sans Initial';
}
.modern-validator-form .validation-checkbox input[type="checkbox"]:checked + .checkbox-label::before {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M9.9997 15.1709l-4.1992-4.1709-1.4142 1.4142 5.6134 5.625 12.0005-12.025-1.4142-1.4142z"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
}

/* --- Estilo para el Botón de Enviar (Sin cambios) --- */
.modern-validator-form .submit-btn {
  width: 100%;
  padding: 12px 20px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background-color: var(--primary-color);
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: background-color 0.3s, transform 0.2s, box-shadow 0.3s;
  box-shadow: 0 4px 15px -5px var(--primary-color);
  font-family: 'Messina Sans Initial';
}

.modern-validator-form .submit-btn:hover {
  background-color: #5847d8;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px -5px var(--primary-color);
}

.modern-validator-form .submit-wrap .terms {
  font-family: 'Messina Sans Initial';      
  font-size: 18px;
  color: #6b7280;
  margin-bottom: 16px;
  text-align: center;
}

/* --- ESTILOS PARA LOS RESULTADOS DE VALIDACIÓN --- */

/* --- Variables de Color para Estados --- */
.modern-validator-form {
  --success-bg: #d4edda;
  --success-border: #c3e6cb;
  --success-text: #155724;
  --error-bg: #f8d7da;
  --error-border: #f5c6cb;
  --error-text: #721c24;
  --info-bg: #e2e3e5;
  --info-border: #d6d8db;
  --info-text: #383d41;
}

/* --- Alerta Principal (Caja Roja Superior) --- */
.modern-validator-form .entwerter-alert {
  background-color: var(--error-bg);
  border: 1px solid var(--error-border);
  color: var(--error-text);
  padding: 1rem 1.5rem;
  margin-bottom: 2rem;
  border-radius: 8px;
}

.modern-validator-form .entwerter-alert h6 {
  margin: 0;
  font-size: 16px;
  font-weight: 500;
}

/* --- Títulos (Summary & Details) --- */
.modern-validator-form h2 {
  font-family: "Helvetica", "Arial", sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #00234c; /* Un azul oscuro corporativo */
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #eee;
}

/* --- Tabla de Resumen (Summary) --- */
.modern-validator-form .summary-tbl {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.modern-validator-form .summary-tbl th,
.modern-validator-form .summary-tbl td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #ddd;
}

.modern-validator-form .summary-tbl th {
  background-color: #f8f9fa;
  font-weight: 600;
  color: #495057;
}

/* Colores para las filas de la tabla */
.modern-validator-form .summary-tbl tr.success-tbl {
  background-color: var(--success-bg);
  color: var(--success-text);
}
.modern-validator-form .summary-tbl tr.error-tbl {
  background-color: var(--error-bg);
  color: var(--error-text);
}


/* --- Sección de Detalles (Details) --- */
.modern-validator-form .entwerter-details .validation-artifact {
  margin-bottom: 2rem;
}

.modern-validator-form .entwerter-details h4 {
  font-size: 18px;
  font-weight: 600;
  color: #333;
  margin-bottom: 1rem;
}

.modern-validator-form .entwerter-details ul {
  list-style-type: none;
  padding-left: 0;
  margin: 0;
}

.modern-validator-form .entwerter-details li {
  padding: 1rem;
  border-radius: 6px;
  margin-bottom: 0.5rem;
  border: 1px solid;
}

/* Estilos para cada tipo de mensaje */
.modern-validator-form .entwerter-details li.success {
  background-color: var(--success-bg);
  border-color: var(--success-border);
  color: var(--success-text);
}

.modern-validator-form .entwerter-details li.error {
  background-color: var(--error-bg);
  border-color: var(--error-border);
  color: var(--error-text);
}

.modern-validator-form .entwerter-details li.info {
  background-color: var(--info-bg);
  border-color: var(--info-border);
  color: var(--info-text);
  font-style: italic;
}

.modern-validator-form .entwerter-details li h5 {
  font-size: 16px;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

.modern-validator-form .entwerter-details li div {
  line-height: 1.6;
}

/* Etiqueta de los mensajes de error (Location, Error message, etc.) */
.modern-validator-form .entwerter-details li .title {
  font-weight: 600;
  margin-right: 5px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a1b176 */.elementor-78241 .elementor-element.elementor-element-4a1b176 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4d01f5 */.elementor-78241 .elementor-element.elementor-element-b4d01f5 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab94ecb */.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    list-style: disc;
}
.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    margin-left: 40px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6645930 */.elementor-78241 .elementor-element.elementor-element-6645930 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bd93d55 */.elementor-78241 .elementor-element.elementor-element-bd93d55 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a1b176 */.elementor-78241 .elementor-element.elementor-element-4a1b176 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4d01f5 */.elementor-78241 .elementor-element.elementor-element-b4d01f5 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab94ecb */.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    list-style: disc;
}
.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    margin-left: 40px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6645930 */.elementor-78241 .elementor-element.elementor-element-6645930 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bd93d55 */.elementor-78241 .elementor-element.elementor-element-bd93d55 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a1b176 */.elementor-78241 .elementor-element.elementor-element-4a1b176 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4d01f5 */.elementor-78241 .elementor-element.elementor-element-b4d01f5 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab94ecb */.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    list-style: disc;
}
.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    margin-left: 40px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6645930 */.elementor-78241 .elementor-element.elementor-element-6645930 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bd93d55 */.elementor-78241 .elementor-element.elementor-element-bd93d55 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a1b176 */.elementor-78241 .elementor-element.elementor-element-4a1b176 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4d01f5 */.elementor-78241 .elementor-element.elementor-element-b4d01f5 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab94ecb */.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    list-style: disc;
}
.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    margin-left: 40px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6645930 */.elementor-78241 .elementor-element.elementor-element-6645930 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bd93d55 */.elementor-78241 .elementor-element.elementor-element-bd93d55 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a1b176 */.elementor-78241 .elementor-element.elementor-element-4a1b176 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4d01f5 */.elementor-78241 .elementor-element.elementor-element-b4d01f5 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab94ecb */.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    list-style: disc;
}
.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    margin-left: 40px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6645930 */.elementor-78241 .elementor-element.elementor-element-6645930 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bd93d55 */.elementor-78241 .elementor-element.elementor-element-bd93d55 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a1b176 */.elementor-78241 .elementor-element.elementor-element-4a1b176 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-4a1b176 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b4d01f5 */.elementor-78241 .elementor-element.elementor-element-b4d01f5 li{
    list-style: disc;
}

/* Make each list item a flex container */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li {
  display: flex;
  align-items: flex-start; 
  margin-bottom: 12px;   
}

/* Style the custom icon */
.elementor-78241 .elementor-element.elementor-element-b4d01f5 li::before {
  content: "";
  display: inline-block;
  flex-shrink: 0; 
  width: 16px;
  height: 16px;
  background-image: url(https://ecosio.com/app/uploads/2020/02/android-icon-36x36-1.png);
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 8px;
  margin-top: 5px; 
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ab94ecb */.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    list-style: disc;
}
.elementor-78241 .elementor-element.elementor-element-ab94ecb li{
    margin-left: 40px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6645930 */.elementor-78241 .elementor-element.elementor-element-6645930 li{
    list-style: disc;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bd93d55 */.elementor-78241 .elementor-element.elementor-element-bd93d55 li{
    list-style: disc;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Messina Sans';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://ecosio.com/app/uploads/2022/10/messina-regular.woff2') format('woff2'),
		url('https://ecosio.com/app/uploads/2022/10/messina-regular.woff') format('woff');
}
@font-face {
	font-family: 'Messina Sans';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	src: url('https://ecosio.com/app/uploads/2022/10/messina-light.woff2') format('woff2'),
		url('https://ecosio.com/app/uploads/2022/10/messina-light.woff') format('woff');
}
@font-face {
	font-family: 'Messina Sans';
	font-style: normal;
	font-weight: 800;
	font-display: auto;
	src: url('https://ecosio.com/app/uploads/2022/10/messina-bold-1.woff2') format('woff2'),
		url('https://ecosio.com/app/uploads/2022/10/messina-bold.woff') format('woff');
}
/* End Custom Fonts CSS */