.elementor-4352 .elementor-element.elementor-element-7cc03d7{--display:flex;--overlay-opacity:0.3;--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-4352 .elementor-element.elementor-element-7cc03d7::before, .elementor-4352 .elementor-element.elementor-element-7cc03d7 > .elementor-background-video-container::before, .elementor-4352 .elementor-element.elementor-element-7cc03d7 > .e-con-inner > .elementor-background-video-container::before, .elementor-4352 .elementor-element.elementor-element-7cc03d7 > .elementor-background-slideshow::before, .elementor-4352 .elementor-element.elementor-element-7cc03d7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-4352 .elementor-element.elementor-element-7cc03d7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-4352 .elementor-element.elementor-element-bdc3437{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-0a10604{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-c8359eb{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-8a7ac39{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-c3317b4{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-8f1e869{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-7d0d3af{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-a5edc57{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4352 .elementor-element.elementor-element-4e4ae1d{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS *//* =========================================
   FIX GLOBAL DESBORDAMIENTO HORIZONTAL
   WORDPRESS + ELEMENTOR
========================================= */

html,
body{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
}

body{
    position:relative;
}


/* TODOS LOS ELEMENTOS RESPETAN SU CONTENEDOR */

*,
*::before,
*::after{
    box-sizing:border-box;
}


/* EVITA QUE LOS HIJOS DE GRID/FLEX DESBORDEN */

.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget,
.elementor-widget-container,
.e-con,
.e-con-inner,
.e-con > *,
.e-con-inner > *,
section,
article,
div{
    min-width:0;
}


/* IMÁGENES, VIDEOS E IFRAMES */

img,
video,
iframe,
svg,
canvas{
    max-width:100%;
}

img,
video{
    height:auto;
}


/* VIDEOS DE FONDO / HERO */

video{
    object-fit:cover;
}


/* TEXTOS LARGOS */

p,
h1,
h2,
h3,
h4,
h5,
h6,
a,
span{
    overflow-wrap:break-word;
    word-wrap:break-word;
}


/* =========================================
   ELEMENTOR
========================================= */

.elementor{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
}

.elementor-section,
.elementor-top-section,
.elementor-inner-section,
.elementor-container{
    width:100%;
    max-width:100%;
}

.elementor-column,
.elementor-widget-wrap,
.elementor-widget,
.elementor-widget-container{
    max-width:100%;
}


/* NUEVOS CONTENEDORES FLEXBOX DE ELEMENTOR */

.e-con,
.e-con-inner{
    max-width:100%;
}

.e-con{
    --width:100%;
}


/* =========================================
   GRIDS Y FLEX
========================================= */

[class*="grid"],
[class*="Grid"]{
    min-width:0;
}

[class*="flex"],
[class*="Flex"]{
    min-width:0;
}


/* =========================================
   EVITA PROBLEMAS POR MÁRGENES NEGATIVOS
========================================= */

@media(max-width:767px){

    html,
    body{
        width:100%;
        max-width:100vw;

        overflow-x:hidden !important;
    }

    .elementor,
    .elementor-section,
    .elementor-container,
    .elementor-column,
    .elementor-widget,
    .elementor-widget-container,
    .e-con,
    .e-con-inner{
        max-width:100vw;
    }

}


/* =========================================
   PROTECCIÓN EXTRA PARA TU WEB
========================================= */

.smt-home-hero,
.smt-practice-visual,
.smt-lso-visual,
.smt-sonia,
.smt-locations{
    width:100%;
    max-width:100%;

    overflow-x:hidden;
}


/* TODOS LOS GRIDS PERSONALIZADOS */

.smt-home-hero__inner,
.smt-practice-visual__inner,
.smt-lso-visual__grid,
.smt-sonia__inner,
.smt-sonia__grid,
.smt-locations__inner,
.smt-locations__grid{
    width:100%;
    max-width:100%;
}


/* GRID: CLAVE PARA QUE NO EMPUJE EL VIEWPORT */

.smt-practice-visual__body,
.smt-lso-visual__grid,
.smt-sonia__grid,
.smt-locations__head,
.smt-locations__grid{
    min-width:0;
}

.smt-practice-visual__body > *,
.smt-lso-visual__grid > *,
.smt-sonia__grid > *,
.smt-locations__head > *,
.smt-locations__grid > *{
    min-width:0;
}


/* =========================================
   MÓVIL — PROTECCIÓN MÁS ESTRICTA
========================================= */

@media(max-width:767px){

    .smt-home-hero,
    .smt-practice-visual,
    .smt-lso-visual,
    .smt-sonia,
    .smt-locations{
        max-width:100vw;
        overflow:hidden;
    }

    .smt-home-hero__inner,
    .smt-practice-visual__inner,
    .smt-sonia__inner,
    .smt-locations__inner{
        max-width:100%;
    }

}/* End custom CSS */