.elementor-10 .elementor-element.elementor-element-f466afe{--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;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.5;--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-10 .elementor-element.elementor-element-f466afe::before, .elementor-10 .elementor-element.elementor-element-f466afe > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-f466afe > .e-con-inner > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-f466afe > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-f466afe > .e-con-inner > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-f466afe > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-2672cff );--background-overlay:'';}.elementor-10 .elementor-element.elementor-element-f466afe.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-10 .elementor-element.elementor-element-c46e870{--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-10 .elementor-element.elementor-element-f2861e5 img{width:21%;}.elementor-10 .elementor-element.elementor-element-c32d47e{--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;}.elementor-10 .elementor-element.elementor-element-c32d47e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.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-weight:var( --e-global-typography-accent-font-weight );}.elementor-10 .elementor-element.elementor-element-d0b0b34{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-menu-toggle{margin:0 auto;}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu .elementor-item{font-family:"Roboto", Sans-serif;font-weight:600;}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-d9dd17f );fill:var( --e-global-color-d9dd17f );}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-d9dd17f );}.elementor-10 .elementor-element.elementor-element-d0b0b34 .e--pointer-framed .elementor-item:before,
					.elementor-10 .elementor-element.elementor-element-d0b0b34 .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-d9dd17f );}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-035dfad );}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:var( --e-global-color-035dfad );}.elementor-10 .elementor-element.elementor-element-d0b0b34 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-10 .elementor-element.elementor-element-d0b0b34 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:var( --e-global-color-035dfad );}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main .elementor-item{padding-left:24px;padding-right:24px;}.elementor-10 .elementor-element.elementor-element-417e3f2{--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-10 .elementor-element.elementor-element-417e3f2.e-con{--align-self:stretch;}.elementor-10 .elementor-element.elementor-element-1625ed7{--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-10 .elementor-element.elementor-element-d255104{--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;--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-10 .elementor-element.elementor-element-bcaa78e{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-10 .elementor-element.elementor-element-bcaa78e.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-10 .elementor-element.elementor-element-248f9f6{--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;--overlay-opacity:0.5;--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-10 .elementor-element.elementor-element-248f9f6::before, .elementor-10 .elementor-element.elementor-element-248f9f6 > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-248f9f6 > .e-con-inner > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-248f9f6 > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-248f9f6 > .e-con-inner > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-248f9f6 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #00000040 0%, #000000A3 100%);}.elementor-10 .elementor-element.elementor-element-6070231 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-10 .elementor-element.elementor-element-9329189{--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-10 .elementor-element.elementor-element-ac3a2bf{--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;--overlay-opacity:0.22;--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-10 .elementor-element.elementor-element-ac3a2bf::before, .elementor-10 .elementor-element.elementor-element-ac3a2bf > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-ac3a2bf > .e-con-inner > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-ac3a2bf > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-ac3a2bf > .e-con-inner > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-ac3a2bf > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-10 .elementor-element.elementor-element-a5a677d{--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-10 .elementor-element.elementor-element-456628f{--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:64px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-b25c4e2{--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;}.elementor-10 .elementor-element.elementor-element-f704854{--display:flex;--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-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-10 .elementor-element.elementor-element-75adc98{padding:15px 15px 15px 15px;--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-10 .elementor-element.elementor-element-75adc98 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-10 .elementor-element.elementor-element-75adc98 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-10 .elementor-element.elementor-element-75adc98 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-10 .elementor-element.elementor-element-75adc98 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-10 .elementor-element.elementor-element-75adc98 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-field-type-html{padding-bottom:0px;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-button[type="submit"]{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-10 .elementor-element.elementor-element-75adc98 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-10 .elementor-element.elementor-element-85f1137{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-572f758{--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;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-10 .elementor-element.elementor-element-f466afe{--width:100%;--min-height:56px;--justify-content:flex-end;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-10 .elementor-element.elementor-element-c46e870{--width:50%;}.elementor-10 .elementor-element.elementor-element-f2861e5{text-align:left;}.elementor-10 .elementor-element.elementor-element-f2861e5 img{width:42%;}.elementor-10 .elementor-element.elementor-element-c32d47e{--width:50%;--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;}.elementor-10 .elementor-element.elementor-element-d0b0b34{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-d0b0b34 .elementor-nav-menu--main .elementor-item{padding-left:0px;padding-right:0px;}.elementor-10 .elementor-element.elementor-element-d255104{--width:100%;--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-10 .elementor-element.elementor-element-bcaa78e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-10 .elementor-element.elementor-element-456628f{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-b25c4e2{--width:100%;--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-10 .elementor-element.elementor-element-f704854{--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-10 .elementor-element.elementor-element-75adc98{padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-10 .elementor-element.elementor-element-f466afe{--width:100%;}.elementor-10 .elementor-element.elementor-element-c46e870{--width:25%;}.elementor-10 .elementor-element.elementor-element-c32d47e{--width:70%;}.elementor-10 .elementor-element.elementor-element-417e3f2{--width:100%;}.elementor-10 .elementor-element.elementor-element-1625ed7{--width:100%;}.elementor-10 .elementor-element.elementor-element-d255104{--width:100%;}.elementor-10 .elementor-element.elementor-element-248f9f6{--width:100%;}.elementor-10 .elementor-element.elementor-element-9329189{--width:100%;}.elementor-10 .elementor-element.elementor-element-ac3a2bf{--width:100%;}.elementor-10 .elementor-element.elementor-element-a5a677d{--width:100%;}.elementor-10 .elementor-element.elementor-element-456628f{--width:100%;}.elementor-10 .elementor-element.elementor-element-f704854{--width:50%;}.elementor-10 .elementor-element.elementor-element-85f1137{--width:50%;}.elementor-10 .elementor-element.elementor-element-572f758{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-f466afe *//* Contenedor cabecera (glass + sombra) */
.elementor-location-header{
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(15,23,42,.06);
  box-shadow:0 8px 24px rgba(10,23,40,.08);
  position:sticky; top:0; z-index:9999;
}
.elementor-location-header img{height:34px;width:auto}

/* Items */
.elementor-nav-menu--main .elementor-nav-menu a{
  padding:12px 14px; border-radius:12px; font-weight:800; color:#0f172a; text-decoration:none;
}
.elementor-nav-menu--main .elementor-nav-menu a:hover{background:rgba(15,23,42,.06)}

/* Último ítem como botón (Diagnóstico) */
.elementor-nav-menu--main .elementor-nav-menu .menu-item:last-child &gt; a{
  background:#0f172a; color:#fff; border-radius:999px; padding:10px 18px;
  box-shadow:0 10px 24px rgba(15,23,42,.18);
}


.elementor-nav-menu--dropdown a{padding:18px 20px;border-bottom:1px solid rgba(15,23,42,.06);font-weight:800}

/* Anclas: que el header no tape el destino */
#inicio,#servicios,#video,#zona,#contacto{scroll-margin-top:90px}
html{scroll-behavior:smooth}
/* ===== Header móvil: altura, alineación y toggle ===== */
.elementor-location-header{
  position: sticky; top: 0; z-index: 9999;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(15,23,42,.06);
  box-shadow: 0 8px 24px rgba(10,23,40,.08);
  overflow: visible;                 /* que el dropdown no se corte */
}

/* contenedor del header compacto y centrado */
.elementor-location-header .elementor-container,
.elementor-location-header .e-con{
  min-height: 56px;                  /* altura real del header en móvil */
  padding: 8px 12px;
  display: flex; align-items: center;
}

/* logo y nav en la misma fila; el nav se va a la derecha */
.elementor-location-header .elementor-widget-image{ margin: 0; }
.elementor-location-header .elementor-widget-nav-menu{ margin-left: auto; }

.elementor-menu-toggle:hover{ background: rgba(15,23,42,.06); }

/* dropdown bonito y por debajo del header */
.elementor-nav-menu--dropdown{
  background: rgba(255,255,255,.98);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 18px 50px rgba(10,23,40,.12);
}

/* evitar que el primer bloque se separe del header */
html, body{ margin:0; }
#inicio{ margin-top: 0 !important; }

/* si tienes la barra de admin de WordPress visible (usuario logueado) */
body.admin-bar .elementor-location-header{ top: 46px; }

/* responsive específico */
@media (max-width: 767px){
  /* por si alguna columna del logo se escondió en móvil */
  .elementor-location-header .elementor-column,
  .elementor-location-header .e-con{
    align-items: center;
  }
}
/* ===== Mostrar/ocultar hamburguesa por breakpoint ===== */

/* HEADER base: altura y alineación */
.elementor-location-header{
  position:sticky; top:0; z-index:9999;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(15,23,42,.06);
  box-shadow:0 8px 24px rgba(10,23,40,.08);
  overflow:visible;
}
.elementor-location-header .e-con,
.elementor-location-header .elementor-container{
  min-height:56px; padding:8px 12px; display:flex; align-items:center;
}
.elementor-location-header .elementor-widget-image{ margin:0; }
.elementor-location-header .elementor-widget-nav-menu{ margin-left:auto; }

/* DESKTOP (≥1025px): menú visible, burger oculta */
@media (min-width:1025px){
  .elementor-location-header .elementor-menu-toggle{ display:none; }
  /* dejar que Elementor pinte el menú; no forzamos display aquí */
}

/* MÓVIL / TABLET (≤1024px): burger visible, menú horizontal oculto */
@media (max-width:1024px){
  .elementor-location-header .elementor-menu-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    width:40px; height:40px; border-radius:12px; padding:0;
    box-shadow:0 4px 14px rgba(0,0,0,.06);
  }
  /* ocultamos SOLO el menú horizontal dentro del header */
  .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu{
    display:none;
  }
  /* estilo del dropdown */
  .elementor-location-header .elementor-nav-menu--dropdown{
    background:rgba(255,255,255,.98);
    backdrop-filter:blur(8px);
    border:1px solid rgba(15,23,42,.08);
    box-shadow:0 18px 50px rgba(10,23,40,.12);
  }
}
/* Hace sticky solo la cabecera de Elementor */
.elementor-location-header{
  position: sticky; top: 0; z-index: 9999;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(15,23,42,.06);
  box-shadow: 0 8px 24px rgba(10,23,40,.08);
  overflow: visible; /* para que el dropdown no se corte */
}
/* Altura cómoda en móvil/desktop */
.elementor-location-header .e-con,
.elementor-location-header .elementor-container{
  min-height: 56px; padding: 8px 12px; display: flex; align-items: center;
}
/* Menú: burger solo en ≤1024px (ajusta a tu breakpoint) */
@media (min-width:1025px){
  .elementor-location-header .elementor-menu-toggle{ display:none; }
}
@media (max-width:1024px){
  .elementor-location-header .elementor-menu-toggle{
    display:inline-flex; width:40px; height:40px; border-radius:12px; padding:0;
    align-items:center; justify-content:center; box-shadow:0 4px 14px rgba(0,0,0,.06);
  }
  .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu{ display:none; }
  .elementor-location-header .elementor-nav-menu--dropdown{
    background:rgba(255,255,255,.98); backdrop-filter:blur(8px);
    border:1px solid rgba(15,23,42,.08); box-shadow:0 18px 50px rgba(10,23,40,.12);
  }
}
/* Si estás logueado (barra admin) */
body.admin-bar .elementor-location-header{ top: 46px; }

/* Que las anclas no se tapen bajo el header */
#inicio,#servicios,#video,#zona,#contacto,#testimonios{ scroll-margin-top: 90px; }
/* Arriba (no sticky): transparente */
.elementor-location-header{
  background: transparent;
  border-bottom: 0;
  box-shadow: none;
}

/* En sticky: fondo claro “glass”, borde y sombra */
.elementor-location-header.elementor-sticky--effects{
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(15,23,42,.06);
  box-shadow: 0 8px 24px rgba(10,23,40,.08);
}

/* Asegurar que queda por encima */
.elementor-location-header{ position:sticky; top:0; z-index:9999; }

/* Si estás logueado (barra admin) */
body.admin-bar .elementor-location-header{ top:46px; }

/* Dropdown del menú (cuando se abre) */
.elementor-location-header .elementor-nav-menu--dropdown{
  background: rgba(255,255,255,.98);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 18px 50px rgba(10,23,40,.12);
}
/* Siempre sólido */
.hx-header{
  position:sticky; top:0; z-index:9999;
  background: rgba(255,255,255,.95) !important;
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 8px 24px rgba(10,23,40,.08);
  overflow: visible;
}
.hx-header &gt; .elementor-background-overlay{ display:none; } /* por si un overlay transparente lo estaba “borrando” */
body.admin-bar .hx-header{ top:46px; } /* si ves la barra de admin */
.elementor-nav-menu--main .elementor-nav-menu .menu-item:last-child &gt; a{
  background:#0f172a;color:#fff;border-radius:999px;padding:10px 18px;
  box-shadow:0 10px 24px rgba(15,23,42,.18);
}
/* ===== Nav móvil a ancho completo ===== */
@media (max-width:1024px){
  /* que el contenedor del header no recorte */
  .elementor-location-header{ overflow: visible; }

.elementor-location-header .elementor-nav-menu--dropdown{
  position: absolute;
  left: 50%; transform: translateX(-50%);
  width: calc(100vw - 24px);   /* deja pequeño margen lateral */
  max-width: 760px;            /* opcional, tope de ancho */
  margin-top: 8px;
}


  /* si estás logueado (barra admin) suma 46px aprox */
  body.admin-bar .elementor-location-header .elementor-nav-menu--dropdown{
    top: calc(56px + 46px);
  }

  /* items cómodos */
  .elementor-location-header .elementor-nav-menu--dropdown a{
    padding: 18px 20px;
    font-size: 16px; font-weight: 800;
    border-bottom: 1px solid rgba(15,23,42,.06);
  }
  .elementor-location-header .elementor-nav-menu--dropdown .menu-item:last-child &gt; a{
    border-bottom: 0;
  }

  /* botón hamburguesa con área táctil */
  .elementor-location-header .elementor-menu-toggle{
    display: inline-flex;
    width: 40px; height: 40px; border-radius: 12px; padding: 0;
    align-items: center; justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,.06);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1625ed7 *//* barra centrada */
#hx-subnav{
  max-width:1200px; margin:18px auto; padding:0 16px;
  display:flex; gap:10px; flex-wrap:wrap; justify-content:center;
}
#hx-subnav .pill{
  display:inline-flex; align-items:center; padding:10px 14px;
  border-radius:999px; background:#eef2f7; color:#0f172a; text-decoration:none;
  border:1px solid rgba(15,23,42,.08);
}
#hx-subnav .pill:hover{ transform:translateY(-2px); box-shadow:0 10px 30px rgba(6,20,33,.12) }

/* que se quede “pegado” al llegar al top */
#hx-subnav.sticky{
  position:sticky; top:70px; z-index:6; /* ajusta top al alto de tu header */
  backdrop-filter:blur(8px);
}
#inicio, #servicios, #video, #zona, #contacto{ scroll-margin-top:90px; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d255104 *//* Grid y límites */
#servicios{max-width:1200px;margin:0 auto;padding:64px 16px}
#servicios .cards{display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}
@media (max-width:1100px){#servicios .cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){#servicios .cards{grid-template-columns:1fr}}

/* Tarjeta: muestra la IMAGEN y aplica el efecto */
#servicios .card{
  position:relative; isolation:isolate; overflow:hidden;
  min-height:360px; border-radius:22px;
  /* fondo: primero la imagen, detrás un degradado muy sutil por si falta la imagen */
  background:
    var(--img) center/cover no-repeat,
    linear-gradient(180deg,#f1f5f9,#e2e8f0);
  box-shadow:0 18px 50px rgba(10,23,40,.14);
  transform:translateY(0); transition:transform .35s ease, box-shadow .35s ease;
}

/* Velo oscuro para legibilidad (ajusta opacidad si quieres más imagen) */
#servicios .card::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(2,8,23,.05) 30%, rgba(2,8,23,.72) 100%);
  transition:opacity .35s ease; opacity:.85;
}

/* Brillo suave arriba (look premium) */
#servicios .card::before{
  content:""; position:absolute; inset:-25% -25% 40% -25%;
  background:radial-gradient(60% 40% at 50% 0%, rgba(255,255,255,.65), transparent 70%);
  mix-blend-mode:soft-light; opacity:.55; pointer-events:none;
}

/* Contenido */
#servicios .card .body{
  position:absolute; inset:auto 0 0 0; padding:24px; color:#fff;
  transform:translateY(8px); transition:transform .35s ease;
}
#servicios .card h3{margin:0 0 6px; font-size:1.25rem}
#servicios .card p{margin:0 0 14px; opacity:.95; max-width:46ch}

/* Convierte el enlace en botón sutil */
#servicios .card .link{
  display:inline-flex; align-items:center; gap:10px; font-weight:800;
  text-decoration:none; color:#fff;
  padding:10px 14px; border-radius:999px;
  background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(4px);
}
#servicios .card .link:hover{background:rgba(255,255,255,.24)}

/* Hover: levanta, reduce el velo y sube el texto */
#servicios .card:hover{transform:translateY(-6px); box-shadow:0 28px 70px rgba(10,23,40,.22)}
#servicios .card:hover::after{opacity:.7}
#servicios .card:hover .body{transform:translateY(-6px)}
/* Velo un poco más oscuro para que el texto destaque */
#servicios .card::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(2,8,23,.10) 35%, rgba(2,8,23,.78) 100%);
  opacity:.9; transition:opacity .35s ease;
}
/* En hover, aligera un pelín */
#servicios .card:hover::after{ opacity:.75; }

/* Texto más nítido */
#servicios .card .body{ color:#fff; text-shadow:0 2px 14px rgba(0,0,0,.35); }
#servicios .card h3{ color:#fff; }
#servicios .card p{ color:rgba(255,255,255,.95); }
/* Botón tipo píldora con glass y contraste estable */
#servicios .card .link{
  display:inline-flex; align-items:center; gap:10px;
  font-weight:800; text-decoration:none; color:#fff;
  padding:11px 16px; border-radius:999px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.34);
  backdrop-filter:blur(6px);
  box-shadow:0 10px 24px rgba(0,0,0,.22);
  opacity:1; /* fuerza visibilidad */
}
#servicios .card .link:hover{ background:rgba(255,255,255,.26); }
#servicios .card{ transform:translateY(0); transition:transform .28s ease, box-shadow .28s ease; }
#servicios .card:hover{ transform:translateY(-6px); box-shadow:0 28px 70px rgba(10,23,40,.22); }
/* 1) Velo más oscuro para legibilidad */
#servicios .card::after{
  content:""; position:absolute; inset:0;
  /* más sombra abajo para el texto y CTA */
  background:
    linear-gradient(180deg, rgba(2,8,23,.00) 0%, rgba(2,8,23,.25) 35%, rgba(2,8,23,.82) 100%);
  opacity:1;  /* antes .85 */
  transition:opacity .25s ease;
}
#servicios .card:hover::after{ opacity:.92; }

/* 2) Texto con más peso y sombra nítida */
#servicios .card .body{ color:#fff; text-shadow:0 3px 16px rgba(0,0,0,.55); }
#servicios .card h3{
  margin:0 0 6px; font-size:1.28rem; font-weight:800; letter-spacing:.1px;
  color:#fff;
}
#servicios .card p{
  margin:0 0 14px; color:#f8fafc; opacity:.98; font-weight:600;
}

/* 3) CTA tipo píldora con contraste alto */
#servicios .card .link{
  display:inline-flex; align-items:center; gap:10px;
  padding:12px 18px; border-radius:999px; font-weight:900; letter-spacing:.2px;
  text-decoration:none; color:#0b1326;                   /* texto oscuro */
  background: #ffffff;                                   /* fondo blanco sólido */
  border:1px solid rgba(15,23,42,.18);
  box-shadow:0 10px 28px rgba(0,0,0,.32);
}
#servicios .card .link:hover{
  transform:translateY(-1px);
  background:#efefef;
}

/* 4) Variante por tarjeta (si quieres acento de color en hover) */
#servicios .card:nth-child(1) .link:hover{ background:#fa1f02; color:#fff; border-color:#fa1f02; } /* Capilaridad */
#servicios .card:nth-child(2) .link:hover{ background:#0ea5e9; color:#fff; border-color:#0ea5e9; } /* Condensación */
#servicios .card:nth-child(3) .link:hover{ background:#22c55e; color:#fff; border-color:#22c55e; } /* Filtraciones */
#servicios .card:nth-child(4) .link:hover{ background:#f59e0b; color:#fff; border-color:#f59e0b; } /* Cal */

/* 5) Levantar un poco la zona de texto en hover para “reveal” */
#servicios .card .body{ transform:translateY(6px); transition:transform .25s ease; }
#servicios .card:hover .body{ transform:translateY(-4px); }

/* 6) Accesibilidad: tamaños mínimos de click */
#servicios .card .link{ min-height:44px; }
/* ====== SERVICIOS: MOBILE TUNING ====== */
@media (max-width: 768px){
  /* Sección y grid */
  #servicios{ padding:40px 12px; }
  #servicios .cards{ grid-template-columns:1fr; gap:14px; }

  /* Tarjeta compacta y legible */
  #servicios .card{
    min-height: 320px; border-radius:18px;
    box-shadow: 0 10px 28px rgba(10,23,40,.14);
    background-position: center;                 /* centra el foco en móvil */
  }
  #servicios .card::after{
    /* un poco más de sombra abajo para el texto */
    background: linear-gradient(180deg, rgba(2,8,23,0.02) 30%, rgba(2,8,23,.86) 100%);
    opacity: 1;
  }
  #servicios .card .body{ padding:18px; transform:none; }
  #servicios .card h3{ font-size:1.1rem; margin:0 0 6px; }
  #servicios .card p{ font-size:.95rem; margin:0 0 12px; opacity:.98; }

  /* CTA grande y centrado (tappable) */
  #servicios .card .link{
    width:100%; justify-content:center;
    padding:13px 16px; font-size:.95rem;
    border-radius:999px;
    background:#fff; color:#0b1326; border:1px solid rgba(15,23,42,.18);
    box-shadow:0 8px 20px rgba(0,0,0,.22);
  }
  #servicios .card .link:hover{ background:#efefef; }

  /* Reduce el “lift” en hover (móvil no tiene hover) */
  #servicios .card:hover{ transform:none; box-shadow:0 10px 28px rgba(10,23,40,.14); }
}

/* Estirar a “edge-to-edge” si el tema mete cajón lateral */
@media (max-width:560px){
  #servicios{ padding-left:0; padding-right:0; }
  #servicios .cards{
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    padding:0 12px;            /* gutter cómodo */
  }
}
/* Hace la tarjeta completa clicable sin JS */
#servicios .card{ position:relative; cursor:pointer; }
#servicios .card .stretched{
  position:absolute; inset:0; z-index:3;
  text-indent:-9999px; /* oculto accesible */
  background:transparent;
}

/* Si usas el botón interno como “look”, que no rompa nada */
#servicios .card .link{ position:relative; z-index:4; }
#servicios .card{ position:relative; cursor:pointer; }
#servicios .card .stretched{
  position:absolute; inset:0; z-index:3; background:transparent; text-indent:-9999px;
}
#servicios .card .body, #servicios .card .link{ position:relative; z-index:4; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-248f9f6 *//* Sección #video bien ordenada */
#video{ position:relative; z-index:0; padding:64px 16px; }
#video .elementor-background-overlay{ z-index:0; pointer-events:none; }

/* El widget de vídeo por encima del overlay, con marco 16:9 */
#video .elementor-widget-video{ position:relative; z-index:1; }
#video .elementor-widget-video .elementor-wrapper{
  position:relative;
  width:100%; max-width:1100px; margin:0 auto;
  aspect-ratio:16/9; height:auto;
  border-radius:18px; overflow:hidden;
  box-shadow:0 22px 60px rgba(6,20,33,.35);
  background:#000;
}
/* El iframe ocupa el marco */
#video .elementor-widget-video iframe,
#video .elementor-widget-video .elementor-video,
#video .elementor-widget-video .e-hosted-video{
  position:absolute; inset:0; width:100%; height:100%; border:0;
}

/* Que el salto a #video no lo tape el header */
#video{ scroll-margin-top:90px; }
/* Encabezado dentro de #video */
#video .head{
  position:relative; z-index:1;               /* por encima del overlay */
  max-width:1100px; margin:0 auto 18px;
  text-align:center; color:#fff; padding:0 16px;
}
#video .head h2{
  margin:0 0 6px;
  font-size:clamp(1.9rem,4vw,2.3rem);
  font-weight:900; letter-spacing:-.02em;
  text-shadow:0 3px 16px rgba(0,0,0,.45);
}
#video .head .lead{
  margin:0; opacity:.95;
  font-size:clamp(1rem,2.6vw,1.15rem);
}

/* Orden de capas y marco del vídeo (por si no lo tenías) */
#video{ position:relative; z-index:0; padding:64px 16px; }
#video .elementor-background-overlay{ z-index:0; pointer-events:none; }
#video .elementor-widget-video{ position:relative; z-index:1; }
#video .elementor-widget-video .elementor-wrapper{
  position:relative; width:100%; max-width:1100px; margin:0 auto;
  aspect-ratio:16/9; height:auto; border-radius:18px; overflow:hidden;
  box-shadow:0 22px 60px rgba(6,20,33,.35); background:#000;
}
#video .elementor-widget-video iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }

/* Ancla cómoda */
#video{ scroll-margin-top:90px; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9329189 */#zona{
  position:relative; padding:64px 16px; display:grid; place-items:center; color:#fff;
  background: var(--bg) center/cover no-repeat;
}
#zona::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.65), rgba(0,0,0,.15));
}
#zona .panel{
  position:relative; z-index:1; max-width:560px;
  padding:24px; border-radius:22px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(6px);
}
#zona h2{margin:0 0 6px; font-size:clamp(1.8rem,4vw,2.2rem); color:#fff}
#zona p{margin:0 0 10px; opacity:.95}
#zona .ticks{margin:12px 0 18px; padding:0; list-style:none}
#zona .ticks li{margin:6px 0; padding-left:26px; position:relative}
#zona .ticks li::before{content:"✓"; position:absolute; left:0; top:0; color:#efce8c; font-weight:900}
#zona .btn.primary{
  display:inline-flex; padding:12px 18px; border-radius:999px; text-decoration:none;
  background:#fa1f02; color:#fff; border:1px solid #fa1f02;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac3a2bf */#prefooter-cta{
  margin:64px 0 0; padding:26px 0;
  background: linear-gradient(90deg, rgba(15,23,42,1), rgba(15,23,42,.85));
  color:#fff;
}
#prefooter-cta .wrap{
  max-width:1100px; margin:0 auto; padding:0 16px;
  display:flex; align-items:center; gap:18px; justify-content:space-between; flex-wrap:wrap;
}
#prefooter-cta h3{ margin:0 0 4px; font-size:clamp(1.2rem,3vw,1.6rem); }
#prefooter-cta p{ margin:0; opacity:.92; }
#prefooter-cta .btns{ display:flex; gap:10px; flex-wrap:wrap; }
#prefooter-cta .btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px; border-radius:999px; font-weight:800; text-decoration:none; color:#fff;
}
#prefooter-cta .btn.primary{ background:#fa1f02; }
#prefooter-cta .btn.whats{ background:#25D366; }
/* Pre-footer CTA legible, encima del overlay */
#prefooter-cta{ 
  position:relative; z-index:0; 
  padding:36px 0; 
  background: linear-gradient(90deg,#0f172a 0%, #0f2035 50%, #0f172a 100%);
  color:#fff;
}
#prefooter-cta .elementor-background-overlay{ z-index:0; pointer-events:none; }

/* Contenido por encima del overlay, con “glass panel” opcional */
#prefooter-cta .wrap{
  position:relative; z-index:1;
  max-width:1100px; margin:0 auto; padding:16px; 
  display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap;

  /* Quita estas 4 líneas si lo quieres sin panel translúcido */
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.18);
  border-radius:18px;
  backdrop-filter: blur(6px);
}

/* Texto bien contrastado */
#prefooter-cta .txt h3{ 
  margin:0 0 4px; 
  font-size:clamp(1.2rem,3vw,1.6rem); 
  font-weight:900; 
  color:#fff; 
  text-shadow:0 2px 12px rgba(0,0,0,.45);
}
#prefooter-cta .txt p{ 
  margin:0; 
  color:#f8fafc; 
  font-weight:600;
}

/* Botones con punch */
#prefooter-cta .btns{ display:flex; gap:10px; flex-wrap:wrap; }
#prefooter-cta .btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:44px; padding:12px 18px; border-radius:999px; 
  font-weight:900; text-decoration:none; color:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.28);
  border:1px solid transparent;
}
#prefooter-cta .btn.primary{ background:#fa1f02; border-color:#fa1f02; }
#prefooter-cta .btn.whats{ background:#25D366; border-color:#25D366; }
#prefooter-cta .btn:hover{ transform:translateY(-1px); }

/* Responsivo */
@media (max-width:780px){
  #prefooter-cta .wrap{ justify-content:center; text-align:center; }
}
/* Prefooter más cómodo */
#prefooter-cta{ padding:48px 0; }

/* Panel glass: borde más sutil y un pelín más de padding */
#prefooter-cta .wrap{
  padding:20px;
  border-color:rgba(255,255,255,.14);         /* antes .18 */
  box-shadow:0 12px 36px rgba(0,0,0,.22);     /* más presencia */
}

/* Título un punto más grande/contrastado */
#prefooter-cta .txt h3{
  font-size:clamp(1.3rem,3.2vw,1.75rem);
  text-shadow:0 2px 10px rgba(0,0,0,.35);
}

/* Botones: levantar un poco y equilibrar */
#prefooter-cta .btn{ box-shadow:0 10px 24px rgba(0,0,0,.28); }
#prefooter-cta .btn:hover{ transform:translateY(-1px); }

/* Móvil: centrar todo y apilar botones */
@media (max-width:780px){
  #prefooter-cta .wrap{ text-align:center; justify-content:center; }
  #prefooter-cta .btns{ width:100%; justify-content:center; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a5a677d */:root{ --hx-ink:#0f172a; --hx-text:#334155; --hx-red:#fa1f02; }

#testimonios{ max-width:1100px; margin:0 auto; padding:64px 16px; }
#testimonios .head{ text-align:center; margin-bottom:20px; }
#testimonios .head h2{ margin:0 0 6px; font-size:clamp(1.9rem,4vw,2.3rem); color:var(--hx-ink); }
#testimonios .head p{ margin:0; color:var(--hx-text); }

#testimonios .quotes{
  display:grid; gap:16px;
  grid-template-columns:repeat(3,1fr);
}
@media (max-width:900px){ #testimonios .quotes{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ #testimonios .quotes{ grid-template-columns:1fr; } }

#testimonios .quote{
  background:#fff; border:1px solid rgba(15,23,42,.08);
  border-radius:18px; padding:18px; box-shadow:0 18px 50px rgba(10,23,40,.08);
  display:grid; grid-template-columns:auto 1fr; grid-template-areas:
    "avatar name"
    "avatar stars"
    "text text";
  column-gap:12px; row-gap:6px;
}
#testimonios .quote .avatar{ grid-area:avatar; width:56px; height:56px; border-radius:50%; overflow:hidden; }
#testimonios .quote .avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
#testimonios .quote .name{ grid-area:name; font-weight:900; color:var(--hx-ink); }
#testimonios .quote .stars{ grid-area:stars; color:#fbbf24; letter-spacing:2px; font-size:1rem; }
#testimonios .quote blockquote{ grid-area:text; margin:8px 0 0; color:var(--hx-ink); font-weight:600; line-height:1.45; }

#testimonios .mini-cta{
  margin-top:18px; display:flex; gap:10px; justify-content:center; flex-wrap:wrap;
}
#testimonios .btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px; border-radius:999px; font-weight:900; text-decoration:none; color:#fff;
}
#testimonios .btn.primary{ background:var(--hx-red); }
#testimonios .btn.whats{ background:#25D366; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-456628f *//* ---- Sección Contacto 2 columnas ---- */
#contacto{
  position:relative; padding:64px 16px; background:linear-gradient(180deg,#fff,#f7fafc);
}
#contacto .wrap{
  max-width:1100px; margin:0 auto; padding:0; 
  display:grid; grid-template-columns:1fr 1fr; gap:20px;
}
@media (max-width:900px){
  #contacto .wrap{ grid-template-columns:1fr; }
}

/* Columna imagen: usa una de las dos opciones */
#contacto .col.image{
  border-radius:22px; overflow:hidden;
  /* Opción A: si usas la columna con FONDO DE IMAGEN */
  background: var(--contact-img, url('/wp-content/uploads/2025/10/contacto.jpg')) center/cover no-repeat;
  min-height:420px; box-shadow:0 18px 50px rgba(10,23,40,.12);
}
#contacto .col.image img{ display:block; width:100%; height:100%; object-fit:cover; }

/* Columna formulario */
#contacto .col.form{
  border-radius:22px; background:#fff; 
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 18px 50px rgba(10,23,40,.10);
  padding:24px;
}

/* Encabezado */
#contacto .head{ margin:0 0 14px; }
#contacto .head h2{
  margin:0 0 6px; font-size:clamp(1.8rem,4vw,2.2rem);
  font-weight:900; letter-spacing:-.02em; color:#0f172a;
}
#contacto .head .lead{ margin:0; color:#334155; font-weight:600; }

/* ——— Estilos para el Formulario de Elementor ——— */
#contacto .elementor-form{
  --input-bg:#fbfcfe; --input-bd:#e4e6ea; --radius:12px;
}
#contacto .elementor-form .elementor-field-group{
  margin-bottom:12px;
}
#contacto .elementor-form .elementor-field,
#contacto .elementor-form textarea{
  width:100%; background:var(--input-bg);
  border:1px solid var(--input-bd); border-radius:var(--radius);
  padding:14px 12px; font:inherit;
}
#contacto .elementor-form textarea{ min-height:120px; resize:vertical; }

#contacto .elementor-form .elementor-button{
  border-radius:999px; font-weight:900; padding:12px 18px;
  background:#fa1f02; border:1px solid #fa1f02; color:#fff;
  box-shadow:0 10px 24px rgba(250,31,2,.22);
}
#contacto .elementor-form .elementor-button:hover{
  filter:brightness(.96);
}

/* Check de privacidad alineado */
#contacto .elementor-field-type-acceptance{
  display:flex; align-items:flex-start; gap:10px;
}

/* Ancla cómoda para que no tape el header */
#contacto{ scroll-margin-top:90px; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-572f758 *//* Footer claro centrado */
#hx-footer.centered{
  background:#ffffff; color:#0f172a;
  border-top:1px solid rgba(15,23,42,.08);
  padding-top:28px;
}
#hx-footer.centered .wrap{
  max-width:1200px; margin:0 auto; padding:0 16px 18px;
  display:grid; gap:20px; grid-template-columns:repeat(4,1fr);
  text-align:center;
}
@media (max-width:900px){ #hx-footer.centered .wrap{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ #hx-footer.centered .wrap{ grid-template-columns:1fr; } }

/* Columnas centradas verticalmente */
#hx-footer.centered .col{ display:flex; flex-direction:column; align-items:center; }

/* Marca */
#hx-footer.centered .logo{ height:36px; width:auto; display:block; margin-bottom:10px; }
#hx-footer.centered .claim{ margin:0 0 10px; color:#475569; max-width:36ch; }
#hx-footer.centered .contacts{ display:flex; gap:12px; flex-wrap:wrap; margin:8px 0 12px; }
#hx-footer.centered .contact{ color:#0f172a; text-decoration:none; font-weight:800; }
#hx-footer.centered .contact:hover{ text-decoration:underline; }

/* Botón WhatsApp */
#hx-footer.centered .btn.whats{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:44px; padding:10px 16px; border-radius:999px;
  background:#25D366; color:#0b1326; font-weight:900; text-decoration:none;
  box-shadow:0 8px 20px rgba(37,211,102,.35);
}

/* Listas */
#hx-footer.centered h4{ margin:4px 0 8px; color:#0f172a; font-size:1.05rem; }
#hx-footer.centered ul{ list-style:none; margin:0; padding:0; }
#hx-footer.centered li{ margin:6px 0; }
#hx-footer.centered a{ color:#0f172a; text-decoration:none; font-weight:700; }
#hx-footer.centered a:hover{ color:#000; text-decoration:underline; }

/* Franja inferior */
#hx-footer.centered .mini{
  border-top:1px solid rgba(15,23,42,.08);
  padding:12px 16px; text-align:center; color:#64748b; font-size:.95rem;
}
#hx-footer.centered .mini .sep{ margin:0 8px; color:#cbd5e1; }

/* Anclas cómodas con header sticky */
#servicios,#video,#zona,#contacto,#testimonios{ scroll-margin-top:90px; }/* End custom CSS */
/* Start custom CSS */:root{
  --hx-red:#fa1f02; --hx-gold:#efce8c; --hx-ink:#0f172a; --hx-text:#334155;
}

/* Contenedor del hero */
#inicio.hero{
  position:relative; display:grid; place-items:center; text-align:center;
  min-height:72vh; width:100%;
}

/* Fondo por CSS var o por Elementor */
#inicio.bg-cover{
  background:var(--bg) center/cover no-repeat;
}

/* Velo/gradiente superior para legibilidad */
#inicio.hero::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,.12));
}

/* Contenido */
#inicio .content{position:relative; z-index:2; color:#fff; max-width:900px; padding:20px}
#inicio h1{margin:0 0 10px; font-weight:900; letter-spacing:-.02em; font-size:clamp(2rem,6vw,3.2rem)}
#inicio h1 span{
  background:linear-gradient(90deg,var(--hx-gold),#ffffff);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
#inicio .lead{margin:0; opacity:.95; font-size:clamp(1rem,2.8vw,1.25rem)}

/* Botones CTA */
#inicio .cta{display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:16px}
#inicio .btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px; border-radius:999px; font-weight:700; text-decoration:none;
  border:1px solid rgba(255,255,255,.3); color:#fff;
}
#inicio .btn.primary{background:var(--hx-red); border-color:var(--hx-red)}
#inicio .btn.ghost{background:transparent}
#inicio .btn.whats{background:#25D366; border-color:#25D366}

/* Marquee de chips */
#inicio .marquee{
  position:absolute; left:0; right:0; bottom:8px;
  display:flex; gap:10px; justify-content:center; z-index:2; flex-wrap:wrap; padding:0 12px;
}
#inicio .marquee span{
  display:inline-block; padding:.2rem .8rem; border-radius:999px;
  border:1px solid rgba(255,255,255,.25); color:#fff; font-size:.9rem;
  background:rgba(255,255,255,.08);
}

/* Responsivo */
@media (max-width:480px){
  #inicio.hero{min-height:64vh}
  #inicio .content{padding:16px}
}
/* Evita que el tema/plantilla encajone el contenido */
.elementor-section.elementor-section-boxed &gt; .elementor-container{
  max-width:100% !important;
}

/* Si usas Contenedores (Flexbox), desactiva el max-width del contenedor interno */
.elementor-container,
.e-con{
  max-width:100% !important;
}

/* Por si algún padre trae padding lateral */
#inicio.hero{
  padding-left:0 !important;
  padding-right:0 !important;
}
#inicio.hero{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
/* 1) Activo del menú (píldora elegante) */
#hx-nav a[href="#contacto"].btn,
#hx-nav a.is-active{
  background:#0f172a; color:#fff; border-radius:999px; padding:10px 18px;
  box-shadow:0 10px 24px rgba(15,23,42,.18);
}

/* 2) Hover sutil en enlaces del menú */
#hx-nav a:not(.btn):hover{
  background:rgba(15,23,42,.06); border-radius:12px;
}

/* 3) Offset de anclas para que no tape el header al saltar */
#inicio, #servicios, #video, #zona, #contacto, #testimonios{
  scroll-margin-top: 90px;
}

/* 4) CTA buttons: micro-interacción */
#inicio .btn{ transition: transform .15s ease, box-shadow .15s ease; }
#inicio .btn:hover{
  transform: translateY(-2px);
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}

/* 5) Chips inferiores: contraste un pelín mayor */
#inicio .marquee span{
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.28);
}

/* 6) Imagen del hero en pantallas muy anchas: centra foco */
@media (min-width:1400px){
  #inicio.hero{ background-position: 60% center; } /* mueve el punto de interés si lo necesitas */
}
:root{ --hx-ink:#0f172a; --hx-text:#334155; --hx-gold:#efce8c; --hx-red:#fa1f02; }
#inicio.hero{
  background: var(--bg) center/cover no-repeat fixed; /* parallax simple */
}

/* Fallback móvil/iOS (desactiva parallax para evitar saltos) */
@media (max-width:1024px){
  #inicio.hero{ background-attachment: scroll; }
}
/* 1) Oculta el skip-link sin romper accesibilidad */
a.skip-link,
.screen-reader-text.skip-link{
  position:absolute;
  top:-40px; left:-40px;
  width:1px; height:1px;
  overflow:hidden;
  clip:rect(1px,1px,1px,1px); clip-path: inset(50%);
  white-space:nowrap;
}
a.skip-link:focus,
.screen-reader-text.skip-link:focus{
  top:10px; left:10px; width:auto; height:auto; clip:auto; clip-path:none;
  padding:8px 12px; border-radius:999px;
  background:#0f172a; color:#fff; z-index:10000;
}
/* Chips del hero como enlaces */
#inicio .marquee .chip{
  display:inline-block; padding:.32rem .9rem; border-radius:999px;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.12);
  color:#fff; text-decoration:none; font-weight:800;
  backdrop-filter:blur(4px);
}
#inicio .marquee .chip:hover{
  background:rgba(255,255,255,.22);
}
<a class="chip" href="https://humix.es/capilaridad?utm_source=landing-donbenito&amp;utm_medium=hero-chip&amp;utm_campaign=topicos&amp;utm_content=capilaridad" target="_blank" rel="noopener">Capilaridad</a>/* End custom CSS */