.elementor-16249 .elementor-element.elementor-element-4960eb3{--display:flex;--min-height:82vh;--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:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:0.6;--padding-top:120px;--padding-bottom:92px;--padding-left:80px;--padding-right:80px;}.elementor-16249 .elementor-element.elementor-element-4960eb3:not(.elementor-motion-effects-element-type-background), .elementor-16249 .elementor-element.elementor-element-4960eb3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-hero009 );background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-16249 .elementor-element.elementor-element-4960eb3::before, .elementor-16249 .elementor-element.elementor-element-4960eb3 > .elementor-background-video-container::before, .elementor-16249 .elementor-element.elementor-element-4960eb3 > .e-con-inner > .elementor-background-video-container::before, .elementor-16249 .elementor-element.elementor-element-4960eb3 > .elementor-background-slideshow::before, .elementor-16249 .elementor-element.elementor-element-4960eb3 > .e-con-inner > .elementor-background-slideshow::before, .elementor-16249 .elementor-element.elementor-element-4960eb3 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(96deg, #000000B0 0%, #060C1499 100%);}.elementor-16249 .elementor-element.elementor-element-8f590d2{--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;--justify-content:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );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-16249 .elementor-element.elementor-element-4d17c18{text-align:start;font-family:"Inter", Sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;line-height:1.4em;letter-spacing:0.22em;color:var( --e-global-color-e5bc095 );}.elementor-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-16249 .elementor-element.elementor-element-4e36fee .elementor-heading-title{font-family:"Barlow", Sans-serif;font-weight:500;line-height:1em;letter-spacing:-0.035em;color:var( --e-global-color-e5bc095 );}.elementor-16249 .elementor-element.elementor-element-deba30a{--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:020px 020px;--row-gap:020px;--column-gap:020px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-post-info .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-text, .elementor-widget-post-info .elementor-icon-list-text a{color:var( --e-global-color-secondary );}.elementor-widget-post-info .elementor-icon-list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-512480d .elementor-icon-list-icon{width:14px;}.elementor-16249 .elementor-element.elementor-element-512480d .elementor-icon-list-icon i{font-size:14px;}.elementor-16249 .elementor-element.elementor-element-512480d .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-16249 .elementor-element.elementor-element-512480d .elementor-icon-list-text, .elementor-16249 .elementor-element.elementor-element-512480d .elementor-icon-list-text a{color:var( --e-global-color-e5bc095 );}.elementor-16249 .elementor-element.elementor-element-e138659 .elementor-icon-list-icon{width:14px;}.elementor-16249 .elementor-element.elementor-element-e138659 .elementor-icon-list-icon i{font-size:14px;}.elementor-16249 .elementor-element.elementor-element-e138659 .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-16249 .elementor-element.elementor-element-e138659 .elementor-icon-list-text, .elementor-16249 .elementor-element.elementor-element-e138659 .elementor-icon-list-text a{color:var( --e-global-color-e5bc095 );}.elementor-16249 .elementor-element.elementor-element-5526fec{--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;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-16249 .elementor-element.elementor-element-987e432{--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:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-bcbca17{--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:020px 020px;--row-gap:020px;--column-gap:020px;border-style:solid;--border-style:solid;border-width:0rem 0rem 0rem 0.1rem;--border-top-width:0rem;--border-right-width:0rem;--border-bottom-width:0rem;--border-left-width:0.1rem;border-color:var( --e-global-color-f9cf6fc );--border-color:var( --e-global-color-f9cf6fc );--margin-top:03%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:02%;--padding-right:02%;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-16249 .elementor-element.elementor-element-e63b5b5 .elementor-heading-title{font-family:"Barlow", Sans-serif;font-size:2rem;font-weight:500;line-height:1em;letter-spacing:-0.035em;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu .elementor-item{font-family:"Barlow", Sans-serif;font-size:1rem;font-weight:500;line-height:1em;letter-spacing:-0.035em;}.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-primary );}.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu--dropdown a, .elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-menu-toggle{color:var( --e-global-color-f9cf6fc );fill:var( --e-global-color-f9cf6fc );}.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu--dropdown{background-color:var( --e-global-color-e5bc095 );}.elementor-16249 .elementor-element.elementor-element-3de37ec .elementor-heading-title{font-family:"Barlow", Sans-serif;font-size:2rem;font-weight:500;line-height:1em;letter-spacing:-0.035em;}.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-menu-toggle{margin:0 auto;}.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu .elementor-item{font-family:"Barlow", Sans-serif;font-size:1rem;font-weight:500;line-height:1em;letter-spacing:-0.035em;}.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-primary );}.elementor-16249 .elementor-element.elementor-element-3c16b3d .elementor-heading-title{font-family:"Barlow", Sans-serif;font-size:2rem;font-weight:500;line-height:1em;letter-spacing:-0.035em;}.elementor-16249 .elementor-element.elementor-element-2199cb0{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 5%;}.elementor-16249 .elementor-element.elementor-element-6768b68{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:50px;--padding-bottom:050px;--padding-left:48px;--padding-right:48px;}.elementor-16249 .elementor-element.elementor-element-6768b68:not(.elementor-motion-effects-element-type-background), .elementor-16249 .elementor-element.elementor-element-6768b68 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-soft002 );}.elementor-16249 .elementor-element.elementor-element-1d81e42{--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:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:32px;--margin-left:0px;--margin-right:0px;}.elementor-16249 .elementor-element.elementor-element-1e8d34d{text-align:start;}.elementor-16249 .elementor-element.elementor-element-1e8d34d .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );color:var( --e-global-color-ink0001 );}.elementor-16249 .elementor-element.elementor-element-f33c20d{--swiper-slides-to-display:3;--swiper-slides-gap:10px;margin:3% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;--arrow-prev-left-align:100%;--arrow-prev-translate-x:-100%;--arrow-prev-left-position:-6%;--arrow-prev-top-align:0%;--arrow-prev-caption-spacing:0px;--arrow-prev-translate-y:0px;--arrow-prev-top-position:-13%;--arrow-next-right-align:0%;--arrow-next-translate-x:0%;--arrow-next-right-position:0%;--arrow-next-top-align:0%;--arrow-next-caption-spacing:0px;--arrow-next-translate-y:0px;--arrow-next-top-position:-13%;--arrow-normal-color:var( --e-global-color-primary );}.elementor-16249 .elementor-element.elementor-element-f33c20d .swiper-slide > .elementor-element{height:100%;}.elementor-16249 .elementor-element.elementor-element-f33c20d :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {border-style:solid;}@media(min-width:768px){.elementor-16249 .elementor-element.elementor-element-987e432{--width:70%;}.elementor-16249 .elementor-element.elementor-element-bcbca17{--width:30%;}}@media(max-width:1024px){.elementor-16249 .elementor-element.elementor-element-4960eb3{--padding-top:84px;--padding-bottom:64px;--padding-left:32px;--padding-right:32px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-4d17c18{font-size:11px;}.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-4e36fee .elementor-heading-title{font-size:64px;}.elementor-widget-post-info .elementor-icon-list-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-5526fec{--padding-top:90px;--padding-bottom:90px;--padding-left:32px;--padding-right:32px;}.elementor-widget-theme-post-content{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-e63b5b5 .elementor-heading-title{font-size:64px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu .elementor-item{font-size:64px;}.elementor-16249 .elementor-element.elementor-element-3de37ec .elementor-heading-title{font-size:64px;}.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu .elementor-item{font-size:64px;}.elementor-16249 .elementor-element.elementor-element-3c16b3d .elementor-heading-title{font-size:64px;}.elementor-16249 .elementor-element.elementor-element-6768b68{--padding-top:90px;--padding-bottom:90px;--padding-left:32px;--padding-right:32px;}.elementor-16249 .elementor-element.elementor-element-1e8d34d .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-f33c20d{--swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-16249 .elementor-element.elementor-element-4960eb3{--min-height:66vh;--padding-top:92px;--padding-bottom:60px;--padding-left:24px;--padding-right:24px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-4d17c18{font-size:11px;}.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-4e36fee .elementor-heading-title{font-size:48px;}.elementor-widget-post-info .elementor-icon-list-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-5526fec{--padding-top:72px;--padding-bottom:72px;--padding-left:24px;--padding-right:24px;}.elementor-16249 .elementor-element.elementor-element-987e432{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-theme-post-content{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-bcbca17{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-e63b5b5 .elementor-heading-title{font-size:48px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-ce27bf5 .elementor-nav-menu .elementor-item{font-size:48px;}.elementor-16249 .elementor-element.elementor-element-3de37ec .elementor-heading-title{font-size:48px;}.elementor-16249 .elementor-element.elementor-element-cdc57e9 .elementor-nav-menu .elementor-item{font-size:48px;}.elementor-16249 .elementor-element.elementor-element-3c16b3d .elementor-heading-title{font-size:48px;}.elementor-16249 .elementor-element.elementor-element-6768b68{--padding-top:72px;--padding-bottom:72px;--padding-left:24px;--padding-right:24px;}.elementor-16249 .elementor-element.elementor-element-1e8d34d{text-align:center;}.elementor-16249 .elementor-element.elementor-element-1e8d34d .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-16249 .elementor-element.elementor-element-f33c20d{--swiper-slides-to-display:1;}}/* Start custom CSS for container, class: .elementor-element-4960eb3 *//* Reserva de tokens: el kit del sitio, si existe, tiene prioridad */
:root{
  --e-global-color-primary:#1C3A6F;
  --e-global-color-secondary:#142B54;
  --e-global-color-text:#2B2F36;
  --e-global-color-accent:#A8C2E8;
  --e-global-color-ink0001:#0D1117;
  --e-global-color-soft002:#F7F8FA;
  --e-global-color-tsft003:#5B6470;
  --e-global-color-tmut004:#8A929C;
  --e-global-color-line005:#E6E8EC;
  --e-global-color-lnst006:#C7CCD3;
  --e-global-color-blght07:#E8EEF7;
  --e-global-color-amid008:#5A8CC7;
  --e-global-color-hero009:#060C14;
  --e-global-color-cdrk010:#0D1117;
  --e-global-typography-primary-font-family:"Barlow",sans-serif;
  --e-global-typography-primary-font-weight:500;
  --e-global-typography-primary-font-size:88px;
  --e-global-typography-primary-line-height:1em;
  --e-global-typography-primary-letter-spacing:-0.035em;
  --e-global-typography-secondary-font-family:"Barlow",sans-serif;
  --e-global-typography-secondary-font-weight:500;
  --e-global-typography-secondary-font-size:64px;
  --e-global-typography-secondary-line-height:1.05em;
  --e-global-typography-secondary-letter-spacing:-0.03em;
  --e-global-typography-text-font-family:"Inter",sans-serif;
  --e-global-typography-text-font-weight:400;
  --e-global-typography-text-font-size:16px;
  --e-global-typography-text-line-height:1.6em;
  --e-global-typography-text-letter-spacing:0em;
  --e-global-typography-accent-font-family:"Inter",sans-serif;
  --e-global-typography-accent-font-weight:600;
  --e-global-typography-accent-font-size:11px;
  --e-global-typography-accent-line-height:1.4em;
  --e-global-typography-accent-letter-spacing:0.22em;
  --e-global-typography-accent-text-transform:uppercase;
  --e-global-typography-lead111-font-family:"Inter",sans-serif;
  --e-global-typography-lead111-font-weight:400;
  --e-global-typography-lead111-font-size:19px;
  --e-global-typography-lead111-line-height:1.6em;
  --e-global-typography-lead111-letter-spacing:0em;
  --e-global-typography-btn2222-font-family:"Barlow",sans-serif;
  --e-global-typography-btn2222-font-weight:500;
  --e-global-typography-btn2222-font-size:15px;
  --e-global-typography-btn2222-line-height:1.2em;
  --e-global-typography-btn2222-letter-spacing:-0.005em;
  --e-global-typography-cnt3333-font-family:"Barlow",sans-serif;
  --e-global-typography-cnt3333-font-weight:500;
  --e-global-typography-cnt3333-font-size:84px;
  --e-global-typography-cnt3333-line-height:1em;
  --e-global-typography-cnt3333-letter-spacing:-0.04em;
  --e-global-typography-nav4444-font-family:"Barlow",sans-serif;
  --e-global-typography-nav4444-font-weight:500;
  --e-global-typography-nav4444-font-size:16px;
  --e-global-typography-nav4444-line-height:1.2em;
  --e-global-typography-nav4444-letter-spacing:-0.005em;
  --e-global-typography-quo5555-font-family:"Barlow",sans-serif;
  --e-global-typography-quo5555-font-weight:500;
  --e-global-typography-quo5555-font-size:48px;
  --e-global-typography-quo5555-line-height:1.2em;
  --e-global-typography-quo5555-letter-spacing:-0.025em;
  --e-global-typography-h4card6-font-family:"Barlow",sans-serif;
  --e-global-typography-h4card6-font-weight:500;
  --e-global-typography-h4card6-font-size:20px;
  --e-global-typography-h4card6-line-height:1.25em;
  --e-global-typography-h4card6-letter-spacing:-0.015em;
}
.elementor-16249 .elementor-element.elementor-element-4960eb3 .elementor-button{position:relative;overflow:hidden;z-index:1;
  transition:color .4s cubic-bezier(.23,1,.32,1),border-color .4s cubic-bezier(.23,1,.32,1)}
.elementor-16249 .elementor-element.elementor-element-4960eb3 .elementor-button::before{content:'';position:absolute;inset:0;background:#fff;
  transform:scaleX(0);transform-origin:left center;
  transition:transform .5s cubic-bezier(.77,0,.175,1);z-index:-1}
.elementor-16249 .elementor-element.elementor-element-4960eb3 .elementor-button:hover{color:var(--e-global-color-primary)}
.elementor-16249 .elementor-element.elementor-element-4960eb3 .elementor-button:hover::before{transform:scaleX(1)}
.elementor-16249 .elementor-element.elementor-element-4960eb3 .elementor-button .elementor-button-content-wrapper{position:relative;z-index:2}
.elementor-16249 .elementor-element.elementor-element-4960eb3 .elementor-button .elementor-button-icon{font-size:13px;
  transition:transform .45s cubic-bezier(.23,1,.32,1)}
.elementor-16249 .elementor-element.elementor-element-4960eb3 .elementor-button:hover .elementor-button-icon{transform:translate(3px,-3px)}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-ce27bf5 *//* ============================================================
   SUBMENÚ estilo cabecera — para los widgets Menú de navegación
   Replica el efecto de #gc-header .nav-dropdown

   PEGAR EN: Elementor → Ajustes del sitio → CSS personalizado
   CLASE: al widget Menú de navegación → Avanzado → Clases CSS:
          menu-drop
   ============================================================ */

.menu-drop{
  --md-ease: cubic-bezier(.23, 1, .32, 1);
  --md-line: var(--e-global-color-line005, #E6E8EC);
  --md-brand: var(--e-global-color-primary, #1C3A6F);
  --md-text: var(--e-global-color-text, #2B2F36);

  /* El widget entero por encima de los widgets que vengan después */
  position: relative;
  z-index: 20;
}


/* ───── APILAMIENTO ─────
   El panel flota, pero los <li> que van DESPUÉS en la lista se
   pintaban encima de él: con z-index automático, en un mismo
   contexto de apilamiento gana el hermano posterior. Se eleva el
   <li> abierto, no solo el panel. */
.menu-drop .elementor-nav-menu > li{
  position: relative;
}
.menu-drop .elementor-nav-menu > li:hover,
.menu-drop .elementor-nav-menu > li:focus-within,
.menu-drop .elementor-nav-menu > li.highlighted{
  z-index: 1200;
}
.menu-drop .sub-menu{
  z-index: 1200 !important;
}


/* ───── 1 · EL PANEL DEL SUBMENÚ ─────
   Mismos valores que .nav-dropdown de la cabecera.
   width:max-content deja que crezca con los textos largos
   ("Hostelería Grupo Cabello"), con un tope para el sidebar. */
.menu-drop .sub-menu{
  background: #fff !important;
  border: 1px solid var(--md-line) !important;
  border-radius: 2px !important;
  padding: 18px 0 !important;
  min-width: 280px !important;
  width: max-content;
  max-width: min(340px, 90vw);
  list-style: none !important;
  margin: 0 !important;
  box-shadow: 0 12px 40px rgba(13,17,23,.06),
              0 2px 8px rgba(13,17,23,.04) !important;
}


/* ───── 2 · LOS ENLACES — el efecto de la línea que crece ─────
   letter-spacing y text-transform explícitos: sin ellos heredaba
   las mayúsculas y el tracking ancho del panel de Elementor. */
.menu-drop .sub-menu a.elementor-sub-item{
  position: relative;
  display: flex !important;
  align-items: center;
  padding: 11px 28px !important;
  font-family: var(--e-global-typography-secondary-font-family, 'Barlow'), sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  white-space: normal;
  color: var(--md-text) !important;
  text-decoration: none !important;
  border: 0 !important;
  background: transparent !important;
  transition: color .25s ease,
              padding-left .3s var(--md-ease) !important;
}

/* La línea azul, oculta a 0 de ancho */
.menu-drop .sub-menu a.elementor-sub-item::before{
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  width: 0;
  height: 1px;
  background: var(--md-brand);
  transform: translateY(-50%);
  transition: width .3s var(--md-ease);
}

/* Hover: el texto se aparta y la línea crece a 17px */
.menu-drop .sub-menu a.elementor-sub-item:hover,
.menu-drop .sub-menu a.elementor-sub-item:focus{
  color: var(--md-brand) !important;
  padding-left: 45px !important;
  background: transparent !important;
}
.menu-drop .sub-menu a.elementor-sub-item:hover::before,
.menu-drop .sub-menu a.elementor-sub-item:focus::before{
  width: 17px;
}


/* ───── 3 · LA FLECHITA ───── */
.menu-drop .sub-arrow{
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  transition: transform .28s var(--md-ease);
}
.menu-drop .sub-arrow svg{
  width: 10px;
  height: 10px;
  fill: currentColor;
}
.menu-drop .menu-item-has-children:hover > a > .sub-arrow,
.menu-drop .menu-item-has-children.highlighted > a > .sub-arrow{
  transform: rotate(180deg);
}


/* ───── 4 · ENLACES DE PRIMER NIVEL ─────
   Barlow 16/500, caja normal, como el menú de la cabecera. */
.menu-drop a.elementor-item{
  font-family: var(--e-global-typography-secondary-font-family, 'Barlow'), sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: -.005em !important;
  text-transform: none !important;
  color: var(--e-global-color-ink0001, #0D1117) !important;
  transition: color .25s ease !important;
}
.menu-drop a.elementor-item:hover,
.menu-drop a.elementor-item.highlighted{
  color: var(--md-brand) !important;
}


/* ───── MÓVIL ───── */
@media (max-width: 767px){
  .menu-drop .sub-menu{
    min-width: 0 !important;
    max-width: none;
    padding: 12px 0 !important;
  }
  .menu-drop .sub-menu a.elementor-sub-item{
    padding: 10px 20px !important;
    font-size: 14px !important;
  }
  .menu-drop .sub-menu a.elementor-sub-item:hover{
    padding-left: 36px !important;
  }
  .menu-drop .sub-menu a.elementor-sub-item::before{ left: 14px; }
}/* End custom CSS */
/* Start custom CSS for loop-carousel, class: .elementor-element-f33c20d *//* ============================================================
   CONTROLES DE CARRUSEL — sistema reutilizable
   Puntos (rayitas) + flechas (círculos), calcados del boceto.

   PEGAR EN: Elementor → Ajustes del sitio → CSS personalizado

   CÓMO SE USA — en el widget, Avanzado → Clases CSS
     Base                →  carrusel-new
     Sobre fondo oscuro  →  carrusel-new carrusel-new--dark
     Puntos arriba       →  carrusel-new carrusel-new--dots-top
     Puntos al lateral   →  carrusel-new carrusel-new--dots-side
   ============================================================ */

.carrusel-new{
  --gcc-ease: cubic-bezier(.23, 1, .32, 1);

  /* ---- Los únicos valores que hay que tocar ---- */
  --gcc-dot:        var(--e-global-color-lnst006, #C7CCD3);
  --gcc-dot-hover:  var(--e-global-color-tsft003, #5B6470);
  --gcc-dot-active: var(--e-global-color-primary, #1C3A6F);
  --gcc-dot-w:      32px;
  --gcc-dot-w-on:   56px;

  --gcc-arrow-size:      52px;
  --gcc-arrow-bg:        #fff;
  --gcc-arrow-border:    var(--e-global-color-line005, #E6E8EC);
  --gcc-arrow-ink:       var(--e-global-color-ink0001, #0D1117);
  --gcc-arrow-bg-hover:  var(--e-global-color-primary, #1C3A6F);
  --gcc-arrow-ink-hover: #fff;

  --gcc-gap-top: 48px;

  /* El path del boceto, URL-encoded (no base64) */
  --gcc-arrow-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
}

/* ---- VARIANTE OSCURA: solo cambia variables ---- */
.carrusel-new--dark{
  --gcc-dot:        rgba(255,255,255,.28);
  --gcc-dot-hover:  rgba(255,255,255,.55);
  --gcc-dot-active: #fff;

  --gcc-arrow-bg:        transparent;
  --gcc-arrow-border:    rgba(255,255,255,.24);
  --gcc-arrow-ink:       #fff;
  --gcc-arrow-bg-hover:  #fff;
  --gcc-arrow-ink-hover: var(--e-global-color-primary, #1C3A6F);
}


/* ============================================================
   PUNTOS — rayitas alineadas a la izquierda
   ============================================================ */

/* Variables de Swiper: se ponen ADEMÁS de las reglas explícitas.
   Swiper las usa internamente (opacidad .2 en inactivos, tamaño
   base, radio), y sin resetearlas quedan restos. */
.carrusel-new{
  --swiper-pagination-color: var(--gcc-dot-active);
  --swiper-pagination-bullet-width: var(--gcc-dot-w);
  --swiper-pagination-bullet-height: 2px;
  --swiper-pagination-bullet-border-radius: 0;
  --swiper-pagination-bullet-inactive-color: var(--gcc-dot);
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 0px;
}

.carrusel-new .swiper-pagination{
  position: static !important;
  display: flex !important;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  width: auto;
  margin-top: var(--gcc-gap-top);
  transform: none !important;
  text-align: left;
  line-height: 1;
}

.carrusel-new .swiper-pagination-bullet{
  width: var(--gcc-dot-w);
  height: 2px;
  margin: 0 !important;
  border: none;
  border-radius: 0;
  padding: 0;
  background: var(--gcc-dot);
  opacity: 1;
  cursor: pointer;
  transition: background-color 400ms var(--gcc-ease),
              width 500ms var(--gcc-ease);
}
.carrusel-new .swiper-pagination-bullet:hover{
  background: var(--gcc-dot-hover);
}
/* La activa se ALARGA: es lo que da la sensación de progreso */
.carrusel-new .swiper-pagination-bullet-active{
  width: var(--gcc-dot-w-on);
  background: var(--gcc-dot-active);
}


/* ============================================================
   FLECHAS — círculos que se rellenan al pasar el ratón
   ============================================================ */

.carrusel-new .elementor-swiper-button{
  width: var(--gcc-arrow-size);
  height: var(--gcc-arrow-size);
  border: 1px solid var(--gcc-arrow-border);
  border-radius: 50%;
  background: var(--gcc-arrow-bg);
  color: var(--gcc-arrow-ink);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  /* position lo pone Elementor con las variables --arrow-*: no se toca */
  transition: background-color 350ms var(--gcc-ease),
              border-color 350ms var(--gcc-ease),
              color 350ms var(--gcc-ease),
              transform 350ms var(--gcc-ease);
}
.carrusel-new .elementor-swiper-button:hover{
  background-color: var(--gcc-arrow-bg-hover);
  border-color: var(--gcc-arrow-bg-hover);
  color: var(--gcc-arrow-ink-hover);
}
.carrusel-new .elementor-swiper-button:active{
  transform: scale(.94);
}
.carrusel-new .elementor-swiper-button-disabled{
  opacity: .3;
  cursor: not-allowed;
}
/* Deshabilitada NO se rellena al pasar el ratón */
.carrusel-new .elementor-swiper-button-disabled:hover{
  background-color: var(--gcc-arrow-bg);
  border-color: var(--gcc-arrow-border);
  color: var(--gcc-arrow-ink);
}


/* ───── EL ICONO: el path EXACTO del boceto ─────
   Elementor pinta un chevron relleno. El boceto usa una línea con
   punta abierta:  M5 12h14 M13 6l6 6-6 6  con trazo 1,5 en un
   viewBox de 24 — o sea, a 16px la línea mide 9,3px y la punta 4px.

   En vez de aproximarlo con bordes girados, se usa ese mismo path
   como MÁSCARA y se pinta con currentColor: así el icono es
   idéntico y hereda las transiciones de color del botón.
   El SVG va URL-encoded, no en base64.                          */

/* Sin soporte de mask se deja el chevron de Elementor, con su
   tamaño y color correctos: nunca se queda un cuadrado suelto. */
.carrusel-new .elementor-swiper-button svg{
  width: 16px;
  height: 16px;
  fill: currentColor;
}

@supports (mask-image: none) or (-webkit-mask-image: none){

  .carrusel-new .elementor-swiper-button svg,
  .carrusel-new .elementor-swiper-button i{
    display: none !important;
  }

  /* Es un item flex del botón, así que se centra solo:
     sin position:absolute ni cálculos de desplazamiento. */
  .carrusel-new .elementor-swiper-button::before{
    content: "";
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
    background-color: currentColor;
    -webkit-mask: var(--gcc-arrow-svg) center / contain no-repeat;
            mask: var(--gcc-arrow-svg) center / contain no-repeat;
    transition: transform 350ms var(--gcc-ease);
  }

  /* La anterior es la misma flecha girada, igual que en el boceto */
  .carrusel-new .elementor-swiper-button-prev::before{
    transform: rotate(180deg);
  }
}


/* ───── RESPONSIVE ───── */
@media (max-width: 767px){
  .carrusel-new{
    --gcc-dot-w: 26px;
    --gcc-dot-w-on: 44px;
    --gcc-arrow-size: 44px;
    --gcc-gap-top: 28px;
  }
  .carrusel-new .swiper-pagination{ gap: 8px; }
}


/* ============================================================
   DÓNDE SE COLOCAN LOS PUNTOS

     carrusel-new carrusel-new--dots-top    encima de las tarjetas
     carrusel-new carrusel-new--dots-side   en el lateral, en vertical
                 + carrusel-new--dots-left  el lateral, a la izquierda

   POR QUÉ ESTO ES POSIBLE
   Comprobado en el HTML servido: .swiper-pagination es hija DIRECTA
   del widget, hermana del .swiper. Elementor la saca del carrusel
   cuando "Posición de la paginación" está en FUERA
   (clase .elementor-pagination-position-outside).

   Eso significa que NO hay overflow:hidden que la recorte y que el
   widget es su contenedor de posicionamiento. Si alguien cambia ese
   ajuste a DENTRO, la paginación vuelve al swiper y estas variantes
   dejan de colocarse: es el primer sitio donde mirar.

   REGLA DE ORO
   Al widget del carrusel NO se le cambia el  display . Convertirlo en
   flex rompe el cálculo de anchos de Swiper y las diapositivas
   desaparecen. Las dos variantes reservan hueco con padding y anclan
   la paginación en absoluto: el swiper no se entera de nada.
   ============================================================ */

/* El ancla de posicionamiento de las dos variantes */
.carrusel-new{
  position: relative;
}


/* ───── ARRIBA DE LAS TARJETAS ───── */
.carrusel-new.carrusel-new--dots-top{
  --gcc-top-h: 34px;   /* franja reservada: 2px de rayita + separación */

  /* !important porque el padding del panel del widget tiene 4 clases
     de especificidad y este .elementor-16249 .elementor-element.elementor-element-f33c20d solo 2. */
  padding-top: var(--gcc-top-h) !important;
}

.carrusel-new.carrusel-new--dots-top .swiper-pagination{
  position: absolute !important;
  top: 0 !important;
  bottom: auto !important;
  left: 0 !important;
  right: auto !important;
  transform: none !important;

  flex-direction: row !important;
  width: 100% !important;
  margin: 0 !important;
}


/* ───── EN EL LATERAL, EN VERTICAL ─────
   El padding del WIDGET reserva el hueco, y la paginación se ancla a
   ese hueco. Los desplazamientos de un absoluto se miden contra la
   caja de RELLENO del contenedor, así que  right: 0  cae justo en la
   franja reservada: los puntos quedan fuera de las tarjetas, no
   encima de las fotos.

   Las rayitas son más cortas aquí a propósito: con ~10 diapositivas,
   en columna a 32px + 10px de hueco serían ~420px de alto, más que
   muchas tarjetas. Con 24px y 8px baja a ~320px. */
.carrusel-new.carrusel-new--dots-side{
  --gcc-dot-w:      24px;   /* ALTO de la rayita: ahora van en vertical */
  --gcc-dot-w-on:   40px;
  --gcc-dot-gap:     8px;
  --gcc-side-w:     44px;   /* hueco reservado al lateral */

  padding-right: var(--gcc-side-w) !important;

  /* Las variables de Swiper, también giradas */
  --swiper-pagination-bullet-width: 2px;
  --swiper-pagination-bullet-height: var(--gcc-dot-w);
  --swiper-pagination-bullet-vertical-gap: 0px;
}

.carrusel-new.carrusel-new--dots-side .swiper-pagination{
  position: absolute !important;
  top: 50% !important;
  bottom: auto !important;
  right: 0 !important;
  left: auto !important;

  transform: translateY(-50%) !important;

  flex-direction: column !important;
  justify-content: center !important;
  align-items: center;

  width: var(--gcc-side-w) !important;
  margin: 0 !important;
  gap: var(--gcc-dot-gap);
}

/* El lateral izquierdo: se mueve el hueco y el anclaje */
.carrusel-new.carrusel-new--dots-side.carrusel-new--dots-left{
  padding-right: 0 !important;
  padding-left: var(--gcc-side-w) !important;
}
.carrusel-new.carrusel-new--dots-side.carrusel-new--dots-left .swiper-pagination{
  right: auto !important;
  left: 0 !important;
}

/* LAS RAYITAS GIRAN: 2px de ancho, el largo en vertical.
   Y la transición pasa de  width  a  height , que es la dimensión que
   ahora crece en la activa. Si se deja en width, la activa salta de
   golpe sin animar. */
.carrusel-new.carrusel-new--dots-side .swiper-pagination-bullet{
  width: 2px !important;
  height: var(--gcc-dot-w) !important;
  border-radius: 0 !important;
  transition: background-color 400ms var(--gcc-ease),
              height 500ms var(--gcc-ease);
}

.carrusel-new.carrusel-new--dots-side .swiper-pagination-bullet-active{
  width: 2px !important;
  height: var(--gcc-dot-w-on) !important;
}


/* ───── ALINEACIÓN DE LOS PUNTOS ARRIBA O ABAJO ───── */
.carrusel-new.carrusel-new--dots-center .swiper-pagination{
  justify-content: center !important;
}
.carrusel-new.carrusel-new--dots-right .swiper-pagination{
  justify-content: flex-end !important;
}


/* ───── EN MÓVIL, EL LATERAL VUELVE ABAJO ─────
   Una columna de puntos en un teléfono se come 44px de ancho de
   tarjeta. Debajo y en horizontal es lo único legible. */
@media (max-width: 767px){

  .carrusel-new.carrusel-new--dots-side{
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .carrusel-new.carrusel-new--dots-side .swiper-pagination{
    position: static !important;
    transform: none !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
    width: auto !important;
    margin-top: var(--gcc-gap-top) !important;
    gap: 8px;
  }

  .carrusel-new.carrusel-new--dots-side .swiper-pagination-bullet{
    width: 26px !important;
    height: 2px !important;
    transition: background-color 400ms var(--gcc-ease),
                width 500ms var(--gcc-ease);
  }

  .carrusel-new.carrusel-new--dots-side .swiper-pagination-bullet-active{
    width: 44px !important;
    height: 2px !important;
  }
}/* End custom CSS */