.elementor-3444 .elementor-element.elementor-element-c4933de{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.7;--margin-top:-160px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:210px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-c4933de:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-c4933de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://wmsmile.com/wp-content/uploads/2026/07/smiling-woman.jpg");background-position:0px 0px;background-repeat:no-repeat;background-size:cover;}.elementor-3444 .elementor-element.elementor-element-c4933de::before, .elementor-3444 .elementor-element.elementor-element-c4933de > .elementor-background-video-container::before, .elementor-3444 .elementor-element.elementor-element-c4933de > .e-con-inner > .elementor-background-video-container::before, .elementor-3444 .elementor-element.elementor-element-c4933de > .elementor-background-slideshow::before, .elementor-3444 .elementor-element.elementor-element-c4933de > .e-con-inner > .elementor-background-slideshow::before, .elementor-3444 .elementor-element.elementor-element-c4933de > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(161deg, #1B3341 31%, #1B334199 100%);}.elementor-3444 .elementor-element.elementor-element-77cd6fb{--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-3444 .elementor-element.elementor-element-66184a7{--display:flex;}.elementor-3444 .elementor-element.elementor-element-83d525f > .elementor-widget-container{margin:0px 0px -26px 0px;}.elementor-3444 .elementor-element.elementor-element-83d525f{font-family:"Open Sans", Sans-serif;font-size:84px;font-weight:800;text-transform:uppercase;line-height:1em;text-shadow:0px 0px 14px #1C3443;color:#FFFEFE;}.elementor-3444 .elementor-element.elementor-element-e92a515 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-e92a515{font-family:"Open Sans", Sans-serif;font-size:36px;font-weight:400;line-height:1.2em;color:#72A373;}.elementor-3444 .elementor-element.elementor-element-c21314c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 15px 0px;}.elementor-3444 .elementor-element.elementor-element-c21314c{font-family:"Open Sans", Sans-serif;font-size:26px;font-weight:300;line-height:1.2em;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-873a693{--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:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-3444 .elementor-element.elementor-element-3647d52 .elementor-button{background-color:#1B3341;font-family:"Open Sans", Sans-serif;font-size:15px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:41px 41px 41px 41px;}.elementor-3444 .elementor-element.elementor-element-3647d52 > .elementor-widget-container{margin:2px 0px 25px 0px;padding:4px 4px 4px 0px;border-radius:94px 94px 94px 94px;}.elementor-3444 .elementor-element.elementor-element-e023af4{--display:flex;}.elementor-3444 .elementor-element.elementor-element-5bd6826{--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:30px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-5bd6826:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-5bd6826 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#749075;}.elementor-3444 .elementor-element.elementor-element-2d4299d{--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:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:17px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-6c9091c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-6c9091c{text-align:center;font-family:"Open Sans", Sans-serif;font-size:37px;font-weight:600;text-transform:uppercase;line-height:1.1em;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-4d7bd79 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-4d7bd79{text-align:center;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:300;line-height:1.2em;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-1a64e9c .elementor-button{background-color:#1B3341;font-family:"Open Sans", Sans-serif;font-size:15px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:41px 41px 41px 41px;}.elementor-3444 .elementor-element.elementor-element-1a64e9c > .elementor-widget-container{margin:2px 0px 25px 0px;padding:4px 4px 4px 0px;border-radius:94px 94px 94px 94px;}.elementor-3444 .elementor-element.elementor-element-f1fa4b7{--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:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-10ba9d6{--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:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:17px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-544df66 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-544df66{text-align:start;font-family:"Open Sans", Sans-serif;font-size:37px;font-weight:600;text-transform:uppercase;line-height:1.1em;color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-826ef79 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-826ef79{text-align:start;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:300;line-height:1.2em;color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-8a3aee1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-8a3aee1{text-align:start;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:700;text-transform:uppercase;line-height:1.2em;color:#72A373;}.elementor-3444 .elementor-element.elementor-element-5c3ca85 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-5c3ca85{text-align:start;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:300;line-height:1.2em;color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-696adf1{--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:25px;--margin-bottom:0px;--margin-left:15px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-9d34741 > .elementor-widget-container{box-shadow:7px 7px 15px 0px rgba(0,0,0,0.5);}.elementor-3444 .elementor-element.elementor-element-9d34741 img{border-radius:9px 9px 9px 9px;}.elementor-3444 .elementor-element.elementor-element-02c76b3{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-98278bd{--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:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-8e37f0d{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-fdce0f1{--display:flex;}.elementor-3444 .elementor-element.elementor-element-49dad42 .elementor-icon-list-icon i{color:#72A373;transition:color 0.3s;}.elementor-3444 .elementor-element.elementor-element-49dad42 .elementor-icon-list-icon svg{fill:#72A373;transition:fill 0.3s;}.elementor-3444 .elementor-element.elementor-element-49dad42{--e-icon-list-icon-size:20px;--icon-vertical-offset:0px;}.elementor-3444 .elementor-element.elementor-element-49dad42 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-3444 .elementor-element.elementor-element-49dad42 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3444 .elementor-element.elementor-element-49dad42 .elementor-icon-list-item > a{font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:500;}.elementor-3444 .elementor-element.elementor-element-49dad42 .elementor-icon-list-text{transition:color 0.3s;}.elementor-3444 .elementor-element.elementor-element-05c721b{--display:flex;}.elementor-3444 .elementor-element.elementor-element-6012109 .elementor-icon-list-icon i{color:#72A373;transition:color 0.3s;}.elementor-3444 .elementor-element.elementor-element-6012109 .elementor-icon-list-icon svg{fill:#72A373;transition:fill 0.3s;}.elementor-3444 .elementor-element.elementor-element-6012109{--e-icon-list-icon-size:20px;--icon-vertical-offset:0px;}.elementor-3444 .elementor-element.elementor-element-6012109 .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-3444 .elementor-element.elementor-element-6012109 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3444 .elementor-element.elementor-element-6012109 .elementor-icon-list-item > a{font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:500;}.elementor-3444 .elementor-element.elementor-element-6012109 .elementor-icon-list-text{transition:color 0.3s;}.elementor-3444 .elementor-element.elementor-element-da266d3{--display:flex;}.elementor-3444 .elementor-element.elementor-element-e80c0bb .elementor-icon-list-icon i{color:#72A373;transition:color 0.3s;}.elementor-3444 .elementor-element.elementor-element-e80c0bb .elementor-icon-list-icon svg{fill:#72A373;transition:fill 0.3s;}.elementor-3444 .elementor-element.elementor-element-e80c0bb{--e-icon-list-icon-size:20px;--icon-vertical-offset:0px;}.elementor-3444 .elementor-element.elementor-element-e80c0bb .elementor-icon-list-icon{padding-inline-end:0px;}.elementor-3444 .elementor-element.elementor-element-e80c0bb .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3444 .elementor-element.elementor-element-e80c0bb .elementor-icon-list-item > a{font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:500;}.elementor-3444 .elementor-element.elementor-element-e80c0bb .elementor-icon-list-text{transition:color 0.3s;}.elementor-3444 .elementor-element.elementor-element-838633c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-838633c{text-align:start;font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:300;line-height:1.2em;color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-0943e15 .elementor-button{background-color:#1B3341;font-family:"Open Sans", Sans-serif;font-size:15px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:41px 41px 41px 41px;}.elementor-3444 .elementor-element.elementor-element-0943e15 > .elementor-widget-container{margin:2px 0px 25px 0px;padding:4px 4px 4px 0px;border-radius:94px 94px 94px 94px;}.elementor-3444 .elementor-element.elementor-element-fd11efe{--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:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:70px;--padding-bottom:55px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-fd11efe:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-fd11efe > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-fd11efe > .elementor-shape-top svg, .elementor-3444 .elementor-element.elementor-element-fd11efe > .e-con-inner > .elementor-shape-top svg{height:52px;}.elementor-3444 .elementor-element.elementor-element-ce4dced{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3444 .elementor-element.elementor-element-ce4dced.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3444 .elementor-element.elementor-element-54e16cc{--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:35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-1e1a26c > .elementor-widget-container{margin:0px 0px -20px 0px;}.elementor-3444 .elementor-element.elementor-element-1e1a26c{text-align:start;font-family:"Open Sans", Sans-serif;font-size:38px;font-weight:400;text-transform:uppercase;line-height:1.1em;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-317d34a > .elementor-widget-container{margin:-12px 0px -27px 0px;}.elementor-3444 .elementor-element.elementor-element-317d34a{text-align:start;font-family:"Open Sans", Sans-serif;font-size:37px;font-weight:700;text-transform:uppercase;line-height:1.1em;color:#72A373;}.elementor-3444 .elementor-element.elementor-element-8d84a2f{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-2fa6782{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-9423fb0{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-716cd36{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-eaac8d6{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-a712143{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-310a099{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-889ee5f{--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-3444 .elementor-element.elementor-element-29c2249 .elementor-button{background-color:#1B3341;font-family:"Open Sans", Sans-serif;font-size:15px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:41px 41px 41px 41px;}.elementor-3444 .elementor-element.elementor-element-29c2249 > .elementor-widget-container{margin:2px 0px 25px 0px;padding:4px 4px 4px 0px;border-radius:94px 94px 94px 94px;}.elementor-3444 .elementor-element.elementor-element-ce8c399{--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:55px;--padding-bottom:55px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-ce8c399:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-ce8c399 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#749075;}.elementor-3444 .elementor-element.elementor-element-2266456{--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:35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-b092753 > .elementor-widget-container{margin:0px 0px -20px 0px;}.elementor-3444 .elementor-element.elementor-element-b092753{text-align:start;font-family:"Open Sans", Sans-serif;font-size:35px;font-weight:400;text-transform:uppercase;line-height:1.1em;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-a468fa6 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-a468fa6{text-align:start;font-family:"Open Sans", Sans-serif;font-size:37px;font-weight:600;text-transform:uppercase;line-height:1.1em;color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-f982c5d{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-d5163f9{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-f1a12c3{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-651fce4{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-f79abea{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-c6f791b{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-bc045d5{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-30d5ea6 .elementor-button{background-color:#1B3341;font-family:"Open Sans", Sans-serif;font-size:15px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:41px 41px 41px 41px;}.elementor-3444 .elementor-element.elementor-element-30d5ea6 > .elementor-widget-container{margin:2px 0px 25px 0px;padding:4px 4px 4px 0px;border-radius:94px 94px 94px 94px;}.elementor-3444 .elementor-element.elementor-element-9a15e40{--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;}.elementor-3444 .elementor-element.elementor-element-9a15e40.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3444 .elementor-element.elementor-element-1d69c6e > .elementor-widget-container{border-style:solid;border-width:10px 10px 10px 10px;border-color:#FFFFFF;border-radius:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-d9ad71f{--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:55px;--padding-bottom:55px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-d9ad71f:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-d9ad71f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-0344404{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3444 .elementor-element.elementor-element-0344404.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3444 .elementor-element.elementor-element-16796fc{--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:35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-5918197 > .elementor-widget-container{margin:0px 0px -20px 0px;}.elementor-3444 .elementor-element.elementor-element-5918197{font-family:"Open Sans", Sans-serif;font-size:35px;font-weight:400;text-transform:uppercase;line-height:1.1em;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-ca17a74 > .elementor-widget-container{margin:-12px 0px -27px 0px;}.elementor-3444 .elementor-element.elementor-element-ca17a74{text-align:start;font-family:"Open Sans", Sans-serif;font-size:37px;font-weight:700;text-transform:uppercase;line-height:1.1em;color:#72A373;}.elementor-3444 .elementor-element.elementor-element-3bf7e96{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-06a6b70{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-7503a87{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-02b34f2{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-939f2ff{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-adf907c{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-e6a4d88{font-family:"Open Sans", Sans-serif;font-size:20px;color:#FFFFFF;}.elementor-3444 .elementor-element.elementor-element-ca79994{--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-3444 .elementor-element.elementor-element-7808444 .elementor-button{background-color:#1B3341;font-family:"Open Sans", Sans-serif;font-size:15px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:41px 41px 41px 41px;}.elementor-3444 .elementor-element.elementor-element-7808444 > .elementor-widget-container{margin:2px 0px 25px 0px;padding:4px 4px 4px 0px;border-radius:94px 94px 94px 94px;}.elementor-3444 .elementor-element.elementor-element-1ee7949{--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:35px;--padding-bottom:34px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-1ee7949:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-1ee7949 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFBD84;}.elementor-3444 .elementor-element.elementor-element-819921e{--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:35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-8cc2a8f > .elementor-widget-container{margin:0px 0px -10px 0px;}.elementor-3444 .elementor-element.elementor-element-8cc2a8f{text-align:center;font-family:"Open Sans", Sans-serif;font-size:50px;font-weight:800;text-transform:uppercase;line-height:1.1em;color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-5e0a2eb{text-align:center;font-family:"Open Sans", Sans-serif;font-size:20px;color:#1B3341;}.elementor-3444 .elementor-element.elementor-element-24f4515 .elementor-button{background-color:#1B3341;font-family:"Open Sans", Sans-serif;font-size:15px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:41px 41px 41px 41px;}.elementor-3444 .elementor-element.elementor-element-24f4515 > .elementor-widget-container{margin:2px 0px 25px 0px;padding:4px 4px 4px 0px;border-radius:94px 94px 94px 94px;}@media(max-width:1024px){.elementor-3444 .elementor-element.elementor-element-c4933de:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-c4933de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center right;}.elementor-3444 .elementor-element.elementor-element-77cd6fb{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3444 .elementor-element.elementor-element-5bd6826{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3444 .elementor-element.elementor-element-f1fa4b7{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3444 .elementor-element.elementor-element-49dad42{--icon-vertical-align:flex-start;}.elementor-3444 .elementor-element.elementor-element-6012109{--icon-vertical-align:flex-start;}.elementor-3444 .elementor-element.elementor-element-e80c0bb{--icon-vertical-align:flex-start;}.elementor-3444 .elementor-element.elementor-element-fd11efe{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3444 .elementor-element.elementor-element-ce8c399{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3444 .elementor-element.elementor-element-d9ad71f{--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;}}@media(max-width:767px){.elementor-3444 .elementor-element.elementor-element-c4933de:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-c4933de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://wmsmile.com/wp-content/uploads/2026/07/smiling-woman.jpg");}.elementor-3444 .elementor-element.elementor-element-c4933de{--padding-top:130px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-3444 .elementor-element.elementor-element-83d525f > .elementor-widget-container{margin:30px 0px -25px 0px;padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-83d525f{text-align:center;font-size:35px;}.elementor-3444 .elementor-element.elementor-element-e92a515 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-e92a515{text-align:center;font-size:16px;}.elementor-3444 .elementor-element.elementor-element-c21314c > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-c21314c{font-size:16px;}.elementor-3444 .elementor-element.elementor-element-873a693.e-con{--align-self:center;}.elementor-3444 .elementor-element.elementor-element-3647d52 > .elementor-widget-container{margin:-15px 0px 20px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-6c9091c > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-6c9091c{text-align:center;font-size:32px;}.elementor-3444 .elementor-element.elementor-element-4d7bd79 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-4d7bd79{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-1a64e9c > .elementor-widget-container{margin:-15px 0px 20px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-544df66 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-544df66{text-align:center;font-size:32px;}.elementor-3444 .elementor-element.elementor-element-826ef79 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-826ef79{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-8a3aee1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-8a3aee1{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-5c3ca85 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-5c3ca85{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-696adf1{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3444 .elementor-element.elementor-element-838633c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-838633c{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-0943e15 > .elementor-widget-container{margin:-15px 0px 20px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-1e1a26c > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-1e1a26c{text-align:center;font-size:23px;}.elementor-3444 .elementor-element.elementor-element-317d34a > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-317d34a{text-align:center;font-size:25px;}.elementor-3444 .elementor-element.elementor-element-8d84a2f > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-8d84a2f{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-716cd36 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-716cd36{font-size:15px;}.elementor-3444 .elementor-element.elementor-element-a712143 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-a712143{font-size:15px;}.elementor-3444 .elementor-element.elementor-element-310a099 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-310a099{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-889ee5f{--justify-content:center;}.elementor-3444 .elementor-element.elementor-element-29c2249 > .elementor-widget-container{margin:-15px 0px 20px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-ce8c399{--padding-top:20px;--padding-bottom:45px;--padding-left:20px;--padding-right:20px;}.elementor-3444 .elementor-element.elementor-element-b092753{text-align:center;font-size:29px;}.elementor-3444 .elementor-element.elementor-element-a468fa6 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-a468fa6{text-align:center;font-size:32px;}.elementor-3444 .elementor-element.elementor-element-f982c5d > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-f982c5d{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-651fce4 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-651fce4{font-size:15px;}.elementor-3444 .elementor-element.elementor-element-c6f791b > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-c6f791b{font-size:15px;}.elementor-3444 .elementor-element.elementor-element-bc045d5 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-bc045d5{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-30d5ea6 > .elementor-widget-container{margin:-15px 0px 20px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-5918197{text-align:center;font-size:29px;}.elementor-3444 .elementor-element.elementor-element-ca17a74 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-ca17a74{text-align:center;font-size:25px;}.elementor-3444 .elementor-element.elementor-element-3bf7e96 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-3bf7e96{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-02b34f2 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-02b34f2{font-size:15px;}.elementor-3444 .elementor-element.elementor-element-adf907c > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-adf907c{font-size:15px;}.elementor-3444 .elementor-element.elementor-element-e6a4d88 > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-e6a4d88{text-align:center;font-size:15px;}.elementor-3444 .elementor-element.elementor-element-ca79994{--justify-content:center;}.elementor-3444 .elementor-element.elementor-element-7808444 > .elementor-widget-container{margin:-15px 0px 20px 0px;padding:0px 0px 0px 0px;}.elementor-3444 .elementor-element.elementor-element-8cc2a8f{font-size:29px;}.elementor-3444 .elementor-element.elementor-element-5e0a2eb > .elementor-widget-container{padding:0px 10px 0px 10px;}.elementor-3444 .elementor-element.elementor-element-5e0a2eb{font-size:15px;}.elementor-3444 .elementor-element.elementor-element-24f4515 > .elementor-widget-container{margin:-15px 0px 20px 0px;padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-3444 .elementor-element.elementor-element-c4933de{--content-width:1450px;}.elementor-3444 .elementor-element.elementor-element-66184a7{--width:100%;}.elementor-3444 .elementor-element.elementor-element-e023af4{--width:54%;}.elementor-3444 .elementor-element.elementor-element-5bd6826{--content-width:1350px;}.elementor-3444 .elementor-element.elementor-element-2d4299d{--width:100%;}.elementor-3444 .elementor-element.elementor-element-f1fa4b7{--content-width:1350px;}.elementor-3444 .elementor-element.elementor-element-10ba9d6{--width:50%;}.elementor-3444 .elementor-element.elementor-element-696adf1{--width:50%;}.elementor-3444 .elementor-element.elementor-element-02c76b3{--content-width:1350px;}.elementor-3444 .elementor-element.elementor-element-98278bd{--width:100%;}.elementor-3444 .elementor-element.elementor-element-fd11efe{--content-width:1350px;}.elementor-3444 .elementor-element.elementor-element-ce4dced{--width:42.185%;}.elementor-3444 .elementor-element.elementor-element-54e16cc{--width:100%;}.elementor-3444 .elementor-element.elementor-element-ce8c399{--content-width:1350px;}.elementor-3444 .elementor-element.elementor-element-2266456{--width:100%;}.elementor-3444 .elementor-element.elementor-element-9a15e40{--width:42.185%;}.elementor-3444 .elementor-element.elementor-element-d9ad71f{--content-width:1350px;}.elementor-3444 .elementor-element.elementor-element-0344404{--width:42.185%;}.elementor-3444 .elementor-element.elementor-element-16796fc{--width:100%;}.elementor-3444 .elementor-element.elementor-element-1ee7949{--content-width:1350px;}.elementor-3444 .elementor-element.elementor-element-819921e{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-3444 .elementor-element.elementor-element-e023af4{--width:100%;}.elementor-3444 .elementor-element.elementor-element-2d4299d{--width:100%;}.elementor-3444 .elementor-element.elementor-element-10ba9d6{--width:100%;}.elementor-3444 .elementor-element.elementor-element-696adf1{--width:99%;}.elementor-3444 .elementor-element.elementor-element-ce4dced{--width:100%;}.elementor-3444 .elementor-element.elementor-element-9a15e40{--width:100%;}.elementor-3444 .elementor-element.elementor-element-0344404{--width:100%;}}@media(min-width:1025px){.elementor-3444 .elementor-element.elementor-element-c4933de:not(.elementor-motion-effects-element-type-background), .elementor-3444 .elementor-element.elementor-element-c4933de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}/* Start custom CSS for button, class: .elementor-element-3647d52 *//* ==========================================================
   PREMIUM RESPONSIVE LIVE CALL BUTTON
   Elementor CSS class: live-call-button
   ========================================================== */

.live-call-button {
    /* Desktop indicator positioning */
    --live-dot-size: 11px;
    --live-dot-left: 19px;
    --live-text-space: 24px;

    position: relative;
    display: inline-block;
    overflow: visible;
}


/* Main button */

.live-call-button .elementor-button {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-left: calc(
        var(--live-dot-left) +
        var(--live-dot-size) +
        var(--live-text-space)
    );

    border: 1px solid rgba(255, 255, 255, 0.9);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;

    animation:
        liveButtonGlow 2.8s ease-in-out infinite,
        liveButtonBreathe 3s ease-in-out infinite;

    box-shadow:
        0 0 10px rgba(255, 35, 35, 0.18),
        0 0 22px rgba(255, 35, 35, 0.12);
}


/* Keep button text above the shine */

.live-call-button .elementor-button-content-wrapper,
.live-call-button .elementor-button-text {
    position: relative;
    z-index: 5;
}


/* ==========================================================
   BLINKING RED LIVE DOT
   Positioned relative to the actual button
   ========================================================== */

.live-call-button .elementor-button::before {
    content: "";

    position: absolute;
    left: var(--live-dot-left);
    top: 50%;

    width: var(--live-dot-size);
    height: var(--live-dot-size);

    border-radius: 50%;
    background-color: #ff2d2d;

    transform: translateY(-50%);

    z-index: 4;
    pointer-events: none;

    box-shadow:
        0 0 5px rgba(255, 45, 45, 1),
        0 0 10px rgba(255, 45, 45, 0.8);

    animation: liveDotBlink 0.9s ease-in-out infinite;
}


/* ==========================================================
   PREMIUM SHINE EFFECT
   ========================================================== */

.live-call-button .elementor-button::after {
    content: "";

    position: absolute;
    top: -60%;
    left: -130%;

    width: 42%;
    height: 220%;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0)
    );

    transform: rotate(24deg);

    z-index: 2;
    pointer-events: none;

    animation: liveShineSweep 5s ease-in-out infinite;
}


/* ==========================================================
   EXPANDING PULSE RING

   This uses a box-shadow animation on the dot so it remains
   centered without needing another pseudo-element.
   ========================================================== */

@keyframes liveDotBlink {
    0%,
    100% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 0 rgba(255, 45, 45, 0.65);
    }

    45% {
        opacity: 0.35;

        box-shadow:
            0 0 3px rgba(255, 45, 45, 0.65),
            0 0 7px rgba(255, 45, 45, 0.45),
            0 0 0 7px rgba(255, 45, 45, 0);
    }

    70% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 12px rgba(255, 45, 45, 0);
    }
}


/* ==========================================================
   BUTTON GLOW
   ========================================================== */

@keyframes liveButtonGlow {
    0%,
    100% {
        box-shadow:
            0 0 10px rgba(255, 35, 35, 0.15),
            0 0 20px rgba(255, 35, 35, 0.08);
    }

    50% {
        box-shadow:
            0 0 17px rgba(255, 35, 35, 0.42),
            0 0 32px rgba(255, 35, 35, 0.22);
    }
}


/* ==========================================================
   SUBTLE BREATHING EFFECT
   ========================================================== */

@keyframes liveButtonBreathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.018);
    }
}


/* ==========================================================
   SHINE SWEEP
   ========================================================== */

@keyframes liveShineSweep {
    0%,
    65% {
        left: -130%;
    }

    82%,
    100% {
        left: 160%;
    }
}


/* ==========================================================
   HOVER
   ========================================================== */

.live-call-button .elementor-button:hover {
    animation-play-state: paused;

    transform: translateY(-2px) scale(1.015);

    box-shadow:
        0 0 17px rgba(255, 35, 35, 0.5),
        0 0 32px rgba(255, 35, 35, 0.3),
        0 0 48px rgba(255, 35, 35, 0.16);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 1024px) {
    .live-call-button {
        --live-dot-size: 10px;
        --live-dot-left: 17px;
        --live-text-space: 21px;
    }

    .live-call-button .elementor-button {
        animation:
            liveButtonGlow 2.8s ease-in-out infinite,
            liveButtonBreathe 3s ease-in-out infinite;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {
    .live-call-button {
        --live-dot-size: 9px;
        --live-dot-left: 15px;
        --live-text-space: 18px;

        width: 100%;
        max-width: 100%;
    }

    .live-call-button .elementor-button {
        width: 100%;
        min-height: 48px;

        padding-right: 18px;
        padding-left: calc(
            var(--live-dot-left) +
            var(--live-dot-size) +
            var(--live-text-space)
        );

        white-space: normal;
        text-align: center;
        line-height: 1.25;
    }
}


/* ==========================================================
   EXTRA-SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 420px) {
    .live-call-button {
        --live-dot-size: 8px;
        --live-dot-left: 13px;
        --live-text-space: 15px;
    }

    .live-call-button .elementor-button {
        min-height: 46px;
        padding-right: 14px;
        font-size: 14px;
    }
}


/* ==========================================================
   ACCESSIBILITY: REDUCE MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .live-call-button .elementor-button,
    .live-call-button .elementor-button::before,
    .live-call-button .elementor-button::after {
        animation: none;
    }

    .live-call-button .elementor-button::before {
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-77cd6fb */.elementor-element-e8d2f57, footer {
    display: none;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-1a64e9c *//* ==========================================================
   PREMIUM RESPONSIVE LIVE CALL BUTTON
   Elementor CSS class: live-call-button
   ========================================================== */

.live-call-button {
    /* Desktop indicator positioning */
    --live-dot-size: 11px;
    --live-dot-left: 19px;
    --live-text-space: 24px;

    position: relative;
    display: inline-block;
    overflow: visible;
}


/* Main button */

.live-call-button .elementor-button {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-left: calc(
        var(--live-dot-left) +
        var(--live-dot-size) +
        var(--live-text-space)
    );

    border: 1px solid rgba(255, 255, 255, 0.9);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;

    animation:
        liveButtonGlow 2.8s ease-in-out infinite,
        liveButtonBreathe 3s ease-in-out infinite;

    box-shadow:
        0 0 10px rgba(255, 35, 35, 0.18),
        0 0 22px rgba(255, 35, 35, 0.12);
}


/* Keep button text above the shine */

.live-call-button .elementor-button-content-wrapper,
.live-call-button .elementor-button-text {
    position: relative;
    z-index: 5;
}


/* ==========================================================
   BLINKING RED LIVE DOT
   Positioned relative to the actual button
   ========================================================== */

.live-call-button .elementor-button::before {
    content: "";

    position: absolute;
    left: var(--live-dot-left);
    top: 50%;

    width: var(--live-dot-size);
    height: var(--live-dot-size);

    border-radius: 50%;
    background-color: #ff2d2d;

    transform: translateY(-50%);

    z-index: 4;
    pointer-events: none;

    box-shadow:
        0 0 5px rgba(255, 45, 45, 1),
        0 0 10px rgba(255, 45, 45, 0.8);

    animation: liveDotBlink 0.9s ease-in-out infinite;
}


/* ==========================================================
   PREMIUM SHINE EFFECT
   ========================================================== */

.live-call-button .elementor-button::after {
    content: "";

    position: absolute;
    top: -60%;
    left: -130%;

    width: 42%;
    height: 220%;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0)
    );

    transform: rotate(24deg);

    z-index: 2;
    pointer-events: none;

    animation: liveShineSweep 5s ease-in-out infinite;
}


/* ==========================================================
   EXPANDING PULSE RING

   This uses a box-shadow animation on the dot so it remains
   centered without needing another pseudo-element.
   ========================================================== */

@keyframes liveDotBlink {
    0%,
    100% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 0 rgba(255, 45, 45, 0.65);
    }

    45% {
        opacity: 0.35;

        box-shadow:
            0 0 3px rgba(255, 45, 45, 0.65),
            0 0 7px rgba(255, 45, 45, 0.45),
            0 0 0 7px rgba(255, 45, 45, 0);
    }

    70% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 12px rgba(255, 45, 45, 0);
    }
}


/* ==========================================================
   BUTTON GLOW
   ========================================================== */

@keyframes liveButtonGlow {
    0%,
    100% {
        box-shadow:
            0 0 10px rgba(255, 35, 35, 0.15),
            0 0 20px rgba(255, 35, 35, 0.08);
    }

    50% {
        box-shadow:
            0 0 17px rgba(255, 35, 35, 0.42),
            0 0 32px rgba(255, 35, 35, 0.22);
    }
}


/* ==========================================================
   SUBTLE BREATHING EFFECT
   ========================================================== */

@keyframes liveButtonBreathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.018);
    }
}


/* ==========================================================
   SHINE SWEEP
   ========================================================== */

@keyframes liveShineSweep {
    0%,
    65% {
        left: -130%;
    }

    82%,
    100% {
        left: 160%;
    }
}


/* ==========================================================
   HOVER
   ========================================================== */

.live-call-button .elementor-button:hover {
    animation-play-state: paused;

    transform: translateY(-2px) scale(1.015);

    box-shadow:
        0 0 17px rgba(255, 35, 35, 0.5),
        0 0 32px rgba(255, 35, 35, 0.3),
        0 0 48px rgba(255, 35, 35, 0.16);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 1024px) {
    .live-call-button {
        --live-dot-size: 10px;
        --live-dot-left: 17px;
        --live-text-space: 21px;
    }

    .live-call-button .elementor-button {
        animation:
            liveButtonGlow 2.8s ease-in-out infinite,
            liveButtonBreathe 3s ease-in-out infinite;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {
    .live-call-button {
        --live-dot-size: 9px;
        --live-dot-left: 15px;
        --live-text-space: 18px;

        width: 100%;
        max-width: 100%;
    }

    .live-call-button .elementor-button {
        width: 100%;
        min-height: 48px;

        padding-right: 18px;
        padding-left: calc(
            var(--live-dot-left) +
            var(--live-dot-size) +
            var(--live-text-space)
        );

        white-space: normal;
        text-align: center;
        line-height: 1.25;
    }
}


/* ==========================================================
   EXTRA-SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 420px) {
    .live-call-button {
        --live-dot-size: 8px;
        --live-dot-left: 13px;
        --live-text-space: 15px;
    }

    .live-call-button .elementor-button {
        min-height: 46px;
        padding-right: 14px;
        font-size: 14px;
    }
}


/* ==========================================================
   ACCESSIBILITY: REDUCE MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .live-call-button .elementor-button,
    .live-call-button .elementor-button::before,
    .live-call-button .elementor-button::after {
        animation: none;
    }

    .live-call-button .elementor-button::before {
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-0943e15 *//* ==========================================================
   PREMIUM RESPONSIVE LIVE CALL BUTTON
   Elementor CSS class: live-call-button
   ========================================================== */

.live-call-button {
    /* Desktop indicator positioning */
    --live-dot-size: 11px;
    --live-dot-left: 19px;
    --live-text-space: 24px;

    position: relative;
    display: inline-block;
    overflow: visible;
}


/* Main button */

.live-call-button .elementor-button {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-left: calc(
        var(--live-dot-left) +
        var(--live-dot-size) +
        var(--live-text-space)
    );

    border: 1px solid rgba(255, 255, 255, 0.9);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;

    animation:
        liveButtonGlow 2.8s ease-in-out infinite,
        liveButtonBreathe 3s ease-in-out infinite;

    box-shadow:
        0 0 10px rgba(255, 35, 35, 0.18),
        0 0 22px rgba(255, 35, 35, 0.12);
}


/* Keep button text above the shine */

.live-call-button .elementor-button-content-wrapper,
.live-call-button .elementor-button-text {
    position: relative;
    z-index: 5;
}


/* ==========================================================
   BLINKING RED LIVE DOT
   Positioned relative to the actual button
   ========================================================== */

.live-call-button .elementor-button::before {
    content: "";

    position: absolute;
    left: var(--live-dot-left);
    top: 50%;

    width: var(--live-dot-size);
    height: var(--live-dot-size);

    border-radius: 50%;
    background-color: #ff2d2d;

    transform: translateY(-50%);

    z-index: 4;
    pointer-events: none;

    box-shadow:
        0 0 5px rgba(255, 45, 45, 1),
        0 0 10px rgba(255, 45, 45, 0.8);

    animation: liveDotBlink 0.9s ease-in-out infinite;
}


/* ==========================================================
   PREMIUM SHINE EFFECT
   ========================================================== */

.live-call-button .elementor-button::after {
    content: "";

    position: absolute;
    top: -60%;
    left: -130%;

    width: 42%;
    height: 220%;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0)
    );

    transform: rotate(24deg);

    z-index: 2;
    pointer-events: none;

    animation: liveShineSweep 5s ease-in-out infinite;
}


/* ==========================================================
   EXPANDING PULSE RING

   This uses a box-shadow animation on the dot so it remains
   centered without needing another pseudo-element.
   ========================================================== */

@keyframes liveDotBlink {
    0%,
    100% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 0 rgba(255, 45, 45, 0.65);
    }

    45% {
        opacity: 0.35;

        box-shadow:
            0 0 3px rgba(255, 45, 45, 0.65),
            0 0 7px rgba(255, 45, 45, 0.45),
            0 0 0 7px rgba(255, 45, 45, 0);
    }

    70% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 12px rgba(255, 45, 45, 0);
    }
}


/* ==========================================================
   BUTTON GLOW
   ========================================================== */

@keyframes liveButtonGlow {
    0%,
    100% {
        box-shadow:
            0 0 10px rgba(255, 35, 35, 0.15),
            0 0 20px rgba(255, 35, 35, 0.08);
    }

    50% {
        box-shadow:
            0 0 17px rgba(255, 35, 35, 0.42),
            0 0 32px rgba(255, 35, 35, 0.22);
    }
}


/* ==========================================================
   SUBTLE BREATHING EFFECT
   ========================================================== */

@keyframes liveButtonBreathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.018);
    }
}


/* ==========================================================
   SHINE SWEEP
   ========================================================== */

@keyframes liveShineSweep {
    0%,
    65% {
        left: -130%;
    }

    82%,
    100% {
        left: 160%;
    }
}


/* ==========================================================
   HOVER
   ========================================================== */

.live-call-button .elementor-button:hover {
    animation-play-state: paused;

    transform: translateY(-2px) scale(1.015);

    box-shadow:
        0 0 17px rgba(255, 35, 35, 0.5),
        0 0 32px rgba(255, 35, 35, 0.3),
        0 0 48px rgba(255, 35, 35, 0.16);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 1024px) {
    .live-call-button {
        --live-dot-size: 10px;
        --live-dot-left: 17px;
        --live-text-space: 21px;
    }

    .live-call-button .elementor-button {
        animation:
            liveButtonGlow 2.8s ease-in-out infinite,
            liveButtonBreathe 3s ease-in-out infinite;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {
    .live-call-button {
        --live-dot-size: 9px;
        --live-dot-left: 15px;
        --live-text-space: 18px;

        width: 100%;
        max-width: 100%;
    }

    .live-call-button .elementor-button {
        width: 100%;
        min-height: 48px;

        padding-right: 18px;
        padding-left: calc(
            var(--live-dot-left) +
            var(--live-dot-size) +
            var(--live-text-space)
        );

        white-space: normal;
        text-align: center;
        line-height: 1.25;
    }
}


/* ==========================================================
   EXTRA-SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 420px) {
    .live-call-button {
        --live-dot-size: 8px;
        --live-dot-left: 13px;
        --live-text-space: 15px;
    }

    .live-call-button .elementor-button {
        min-height: 46px;
        padding-right: 14px;
        font-size: 14px;
    }
}


/* ==========================================================
   ACCESSIBILITY: REDUCE MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .live-call-button .elementor-button,
    .live-call-button .elementor-button::before,
    .live-call-button .elementor-button::after {
        animation: none;
    }

    .live-call-button .elementor-button::before {
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-29c2249 *//* ==========================================================
   PREMIUM RESPONSIVE LIVE CALL BUTTON
   Elementor CSS class: live-call-button
   ========================================================== */

.live-call-button {
    /* Desktop indicator positioning */
    --live-dot-size: 11px;
    --live-dot-left: 19px;
    --live-text-space: 24px;

    position: relative;
    display: inline-block;
    overflow: visible;
}


/* Main button */

.live-call-button .elementor-button {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-left: calc(
        var(--live-dot-left) +
        var(--live-dot-size) +
        var(--live-text-space)
    );

    border: 1px solid rgba(255, 255, 255, 0.9);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;

    animation:
        liveButtonGlow 2.8s ease-in-out infinite,
        liveButtonBreathe 3s ease-in-out infinite;

    box-shadow:
        0 0 10px rgba(255, 35, 35, 0.18),
        0 0 22px rgba(255, 35, 35, 0.12);
}


/* Keep button text above the shine */

.live-call-button .elementor-button-content-wrapper,
.live-call-button .elementor-button-text {
    position: relative;
    z-index: 5;
}


/* ==========================================================
   BLINKING RED LIVE DOT
   Positioned relative to the actual button
   ========================================================== */

.live-call-button .elementor-button::before {
    content: "";

    position: absolute;
    left: var(--live-dot-left);
    top: 50%;

    width: var(--live-dot-size);
    height: var(--live-dot-size);

    border-radius: 50%;
    background-color: #ff2d2d;

    transform: translateY(-50%);

    z-index: 4;
    pointer-events: none;

    box-shadow:
        0 0 5px rgba(255, 45, 45, 1),
        0 0 10px rgba(255, 45, 45, 0.8);

    animation: liveDotBlink 0.9s ease-in-out infinite;
}


/* ==========================================================
   PREMIUM SHINE EFFECT
   ========================================================== */

.live-call-button .elementor-button::after {
    content: "";

    position: absolute;
    top: -60%;
    left: -130%;

    width: 42%;
    height: 220%;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0)
    );

    transform: rotate(24deg);

    z-index: 2;
    pointer-events: none;

    animation: liveShineSweep 5s ease-in-out infinite;
}


/* ==========================================================
   EXPANDING PULSE RING

   This uses a box-shadow animation on the dot so it remains
   centered without needing another pseudo-element.
   ========================================================== */

@keyframes liveDotBlink {
    0%,
    100% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 0 rgba(255, 45, 45, 0.65);
    }

    45% {
        opacity: 0.35;

        box-shadow:
            0 0 3px rgba(255, 45, 45, 0.65),
            0 0 7px rgba(255, 45, 45, 0.45),
            0 0 0 7px rgba(255, 45, 45, 0);
    }

    70% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 12px rgba(255, 45, 45, 0);
    }
}


/* ==========================================================
   BUTTON GLOW
   ========================================================== */

@keyframes liveButtonGlow {
    0%,
    100% {
        box-shadow:
            0 0 10px rgba(255, 35, 35, 0.15),
            0 0 20px rgba(255, 35, 35, 0.08);
    }

    50% {
        box-shadow:
            0 0 17px rgba(255, 35, 35, 0.42),
            0 0 32px rgba(255, 35, 35, 0.22);
    }
}


/* ==========================================================
   SUBTLE BREATHING EFFECT
   ========================================================== */

@keyframes liveButtonBreathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.018);
    }
}


/* ==========================================================
   SHINE SWEEP
   ========================================================== */

@keyframes liveShineSweep {
    0%,
    65% {
        left: -130%;
    }

    82%,
    100% {
        left: 160%;
    }
}


/* ==========================================================
   HOVER
   ========================================================== */

.live-call-button .elementor-button:hover {
    animation-play-state: paused;

    transform: translateY(-2px) scale(1.015);

    box-shadow:
        0 0 17px rgba(255, 35, 35, 0.5),
        0 0 32px rgba(255, 35, 35, 0.3),
        0 0 48px rgba(255, 35, 35, 0.16);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 1024px) {
    .live-call-button {
        --live-dot-size: 10px;
        --live-dot-left: 17px;
        --live-text-space: 21px;
    }

    .live-call-button .elementor-button {
        animation:
            liveButtonGlow 2.8s ease-in-out infinite,
            liveButtonBreathe 3s ease-in-out infinite;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {
    .live-call-button {
        --live-dot-size: 9px;
        --live-dot-left: 15px;
        --live-text-space: 18px;

        width: 100%;
        max-width: 100%;
    }

    .live-call-button .elementor-button {
        width: 100%;
        min-height: 48px;

        padding-right: 18px;
        padding-left: calc(
            var(--live-dot-left) +
            var(--live-dot-size) +
            var(--live-text-space)
        );

        white-space: normal;
        text-align: center;
        line-height: 1.25;
    }
}


/* ==========================================================
   EXTRA-SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 420px) {
    .live-call-button {
        --live-dot-size: 8px;
        --live-dot-left: 13px;
        --live-text-space: 15px;
    }

    .live-call-button .elementor-button {
        min-height: 46px;
        padding-right: 14px;
        font-size: 14px;
    }
}


/* ==========================================================
   ACCESSIBILITY: REDUCE MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .live-call-button .elementor-button,
    .live-call-button .elementor-button::before,
    .live-call-button .elementor-button::after {
        animation: none;
    }

    .live-call-button .elementor-button::before {
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-30d5ea6 *//* ==========================================================
   PREMIUM RESPONSIVE LIVE CALL BUTTON
   Elementor CSS class: live-call-button
   ========================================================== */

.live-call-button {
    /* Desktop indicator positioning */
    --live-dot-size: 11px;
    --live-dot-left: 19px;
    --live-text-space: 24px;

    position: relative;
    display: inline-block;
    overflow: visible;
}


/* Main button */

.live-call-button .elementor-button {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-left: calc(
        var(--live-dot-left) +
        var(--live-dot-size) +
        var(--live-text-space)
    );

    border: 1px solid rgba(255, 255, 255, 0.9);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;

    animation:
        liveButtonGlow 2.8s ease-in-out infinite,
        liveButtonBreathe 3s ease-in-out infinite;

    box-shadow:
        0 0 10px rgba(255, 35, 35, 0.18),
        0 0 22px rgba(255, 35, 35, 0.12);
}


/* Keep button text above the shine */

.live-call-button .elementor-button-content-wrapper,
.live-call-button .elementor-button-text {
    position: relative;
    z-index: 5;
}


/* ==========================================================
   BLINKING RED LIVE DOT
   Positioned relative to the actual button
   ========================================================== */

.live-call-button .elementor-button::before {
    content: "";

    position: absolute;
    left: var(--live-dot-left);
    top: 50%;

    width: var(--live-dot-size);
    height: var(--live-dot-size);

    border-radius: 50%;
    background-color: #ff2d2d;

    transform: translateY(-50%);

    z-index: 4;
    pointer-events: none;

    box-shadow:
        0 0 5px rgba(255, 45, 45, 1),
        0 0 10px rgba(255, 45, 45, 0.8);

    animation: liveDotBlink 0.9s ease-in-out infinite;
}


/* ==========================================================
   PREMIUM SHINE EFFECT
   ========================================================== */

.live-call-button .elementor-button::after {
    content: "";

    position: absolute;
    top: -60%;
    left: -130%;

    width: 42%;
    height: 220%;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0)
    );

    transform: rotate(24deg);

    z-index: 2;
    pointer-events: none;

    animation: liveShineSweep 5s ease-in-out infinite;
}


/* ==========================================================
   EXPANDING PULSE RING

   This uses a box-shadow animation on the dot so it remains
   centered without needing another pseudo-element.
   ========================================================== */

@keyframes liveDotBlink {
    0%,
    100% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 0 rgba(255, 45, 45, 0.65);
    }

    45% {
        opacity: 0.35;

        box-shadow:
            0 0 3px rgba(255, 45, 45, 0.65),
            0 0 7px rgba(255, 45, 45, 0.45),
            0 0 0 7px rgba(255, 45, 45, 0);
    }

    70% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 12px rgba(255, 45, 45, 0);
    }
}


/* ==========================================================
   BUTTON GLOW
   ========================================================== */

@keyframes liveButtonGlow {
    0%,
    100% {
        box-shadow:
            0 0 10px rgba(255, 35, 35, 0.15),
            0 0 20px rgba(255, 35, 35, 0.08);
    }

    50% {
        box-shadow:
            0 0 17px rgba(255, 35, 35, 0.42),
            0 0 32px rgba(255, 35, 35, 0.22);
    }
}


/* ==========================================================
   SUBTLE BREATHING EFFECT
   ========================================================== */

@keyframes liveButtonBreathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.018);
    }
}


/* ==========================================================
   SHINE SWEEP
   ========================================================== */

@keyframes liveShineSweep {
    0%,
    65% {
        left: -130%;
    }

    82%,
    100% {
        left: 160%;
    }
}


/* ==========================================================
   HOVER
   ========================================================== */

.live-call-button .elementor-button:hover {
    animation-play-state: paused;

    transform: translateY(-2px) scale(1.015);

    box-shadow:
        0 0 17px rgba(255, 35, 35, 0.5),
        0 0 32px rgba(255, 35, 35, 0.3),
        0 0 48px rgba(255, 35, 35, 0.16);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 1024px) {
    .live-call-button {
        --live-dot-size: 10px;
        --live-dot-left: 17px;
        --live-text-space: 21px;
    }

    .live-call-button .elementor-button {
        animation:
            liveButtonGlow 2.8s ease-in-out infinite,
            liveButtonBreathe 3s ease-in-out infinite;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {
    .live-call-button {
        --live-dot-size: 9px;
        --live-dot-left: 15px;
        --live-text-space: 18px;

        width: 100%;
        max-width: 100%;
    }

    .live-call-button .elementor-button {
        width: 100%;
        min-height: 48px;

        padding-right: 18px;
        padding-left: calc(
            var(--live-dot-left) +
            var(--live-dot-size) +
            var(--live-text-space)
        );

        white-space: normal;
        text-align: center;
        line-height: 1.25;
    }
}


/* ==========================================================
   EXTRA-SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 420px) {
    .live-call-button {
        --live-dot-size: 8px;
        --live-dot-left: 13px;
        --live-text-space: 15px;
    }

    .live-call-button .elementor-button {
        min-height: 46px;
        padding-right: 14px;
        font-size: 14px;
    }
}


/* ==========================================================
   ACCESSIBILITY: REDUCE MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .live-call-button .elementor-button,
    .live-call-button .elementor-button::before,
    .live-call-button .elementor-button::after {
        animation: none;
    }

    .live-call-button .elementor-button::before {
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS for wb-before-after-image-slider-elementor, class: .elementor-element-1d69c6e *//* Tablet fix for TwentyTwenty image comparison slider */
@media (min-width: 768px) and (max-width: 1024px) {

    .twentytwenty-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        overflow: hidden !important;
    }

    .twentytwenty-container {
        width: 100% !important;
        max-width: 100% !important;
        aspect-ratio: 1.5 / 1;
        height: auto !important;
        overflow: hidden !important;
    }

    .twentytwenty-container img {
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .twentytwenty-before,
    .twentytwenty-after {
        top: 0 !important;
        left: 0 !important;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-7808444 *//* ==========================================================
   PREMIUM RESPONSIVE LIVE CALL BUTTON
   Elementor CSS class: live-call-button
   ========================================================== */

.live-call-button {
    /* Desktop indicator positioning */
    --live-dot-size: 11px;
    --live-dot-left: 19px;
    --live-text-space: 24px;

    position: relative;
    display: inline-block;
    overflow: visible;
}


/* Main button */

.live-call-button .elementor-button {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-left: calc(
        var(--live-dot-left) +
        var(--live-dot-size) +
        var(--live-text-space)
    );

    border: 1px solid rgba(255, 255, 255, 0.9);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;

    animation:
        liveButtonGlow 2.8s ease-in-out infinite,
        liveButtonBreathe 3s ease-in-out infinite;

    box-shadow:
        0 0 10px rgba(255, 35, 35, 0.18),
        0 0 22px rgba(255, 35, 35, 0.12);
}


/* Keep button text above the shine */

.live-call-button .elementor-button-content-wrapper,
.live-call-button .elementor-button-text {
    position: relative;
    z-index: 5;
}


/* ==========================================================
   BLINKING RED LIVE DOT
   Positioned relative to the actual button
   ========================================================== */

.live-call-button .elementor-button::before {
    content: "";

    position: absolute;
    left: var(--live-dot-left);
    top: 50%;

    width: var(--live-dot-size);
    height: var(--live-dot-size);

    border-radius: 50%;
    background-color: #ff2d2d;

    transform: translateY(-50%);

    z-index: 4;
    pointer-events: none;

    box-shadow:
        0 0 5px rgba(255, 45, 45, 1),
        0 0 10px rgba(255, 45, 45, 0.8);

    animation: liveDotBlink 0.9s ease-in-out infinite;
}


/* ==========================================================
   PREMIUM SHINE EFFECT
   ========================================================== */

.live-call-button .elementor-button::after {
    content: "";

    position: absolute;
    top: -60%;
    left: -130%;

    width: 42%;
    height: 220%;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0)
    );

    transform: rotate(24deg);

    z-index: 2;
    pointer-events: none;

    animation: liveShineSweep 5s ease-in-out infinite;
}


/* ==========================================================
   EXPANDING PULSE RING

   This uses a box-shadow animation on the dot so it remains
   centered without needing another pseudo-element.
   ========================================================== */

@keyframes liveDotBlink {
    0%,
    100% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 0 rgba(255, 45, 45, 0.65);
    }

    45% {
        opacity: 0.35;

        box-shadow:
            0 0 3px rgba(255, 45, 45, 0.65),
            0 0 7px rgba(255, 45, 45, 0.45),
            0 0 0 7px rgba(255, 45, 45, 0);
    }

    70% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 12px rgba(255, 45, 45, 0);
    }
}


/* ==========================================================
   BUTTON GLOW
   ========================================================== */

@keyframes liveButtonGlow {
    0%,
    100% {
        box-shadow:
            0 0 10px rgba(255, 35, 35, 0.15),
            0 0 20px rgba(255, 35, 35, 0.08);
    }

    50% {
        box-shadow:
            0 0 17px rgba(255, 35, 35, 0.42),
            0 0 32px rgba(255, 35, 35, 0.22);
    }
}


/* ==========================================================
   SUBTLE BREATHING EFFECT
   ========================================================== */

@keyframes liveButtonBreathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.018);
    }
}


/* ==========================================================
   SHINE SWEEP
   ========================================================== */

@keyframes liveShineSweep {
    0%,
    65% {
        left: -130%;
    }

    82%,
    100% {
        left: 160%;
    }
}


/* ==========================================================
   HOVER
   ========================================================== */

.live-call-button .elementor-button:hover {
    animation-play-state: paused;

    transform: translateY(-2px) scale(1.015);

    box-shadow:
        0 0 17px rgba(255, 35, 35, 0.5),
        0 0 32px rgba(255, 35, 35, 0.3),
        0 0 48px rgba(255, 35, 35, 0.16);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 1024px) {
    .live-call-button {
        --live-dot-size: 10px;
        --live-dot-left: 17px;
        --live-text-space: 21px;
    }

    .live-call-button .elementor-button {
        animation:
            liveButtonGlow 2.8s ease-in-out infinite,
            liveButtonBreathe 3s ease-in-out infinite;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {
    .live-call-button {
        --live-dot-size: 9px;
        --live-dot-left: 15px;
        --live-text-space: 18px;

        width: 100%;
        max-width: 100%;
    }

    .live-call-button .elementor-button {
        width: 100%;
        min-height: 48px;

        padding-right: 18px;
        padding-left: calc(
            var(--live-dot-left) +
            var(--live-dot-size) +
            var(--live-text-space)
        );

        white-space: normal;
        text-align: center;
        line-height: 1.25;
    }
}


/* ==========================================================
   EXTRA-SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 420px) {
    .live-call-button {
        --live-dot-size: 8px;
        --live-dot-left: 13px;
        --live-text-space: 15px;
    }

    .live-call-button .elementor-button {
        min-height: 46px;
        padding-right: 14px;
        font-size: 14px;
    }
}


/* ==========================================================
   ACCESSIBILITY: REDUCE MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .live-call-button .elementor-button,
    .live-call-button .elementor-button::before,
    .live-call-button .elementor-button::after {
        animation: none;
    }

    .live-call-button .elementor-button::before {
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-24f4515 *//* ==========================================================
   PREMIUM RESPONSIVE LIVE CALL BUTTON
   Elementor CSS class: live-call-button
   ========================================================== */

.live-call-button {
    /* Desktop indicator positioning */
    --live-dot-size: 11px;
    --live-dot-left: 19px;
    --live-text-space: 24px;

    position: relative;
    display: inline-block;
    overflow: visible;
}


/* Main button */

.live-call-button .elementor-button {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-left: calc(
        var(--live-dot-left) +
        var(--live-dot-size) +
        var(--live-text-space)
    );

    border: 1px solid rgba(255, 255, 255, 0.9);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background-color 0.3s ease;

    animation:
        liveButtonGlow 2.8s ease-in-out infinite,
        liveButtonBreathe 3s ease-in-out infinite;

    box-shadow:
        0 0 10px rgba(255, 35, 35, 0.18),
        0 0 22px rgba(255, 35, 35, 0.12);
}


/* Keep button text above the shine */

.live-call-button .elementor-button-content-wrapper,
.live-call-button .elementor-button-text {
    position: relative;
    z-index: 5;
}


/* ==========================================================
   BLINKING RED LIVE DOT
   Positioned relative to the actual button
   ========================================================== */

.live-call-button .elementor-button::before {
    content: "";

    position: absolute;
    left: var(--live-dot-left);
    top: 50%;

    width: var(--live-dot-size);
    height: var(--live-dot-size);

    border-radius: 50%;
    background-color: #ff2d2d;

    transform: translateY(-50%);

    z-index: 4;
    pointer-events: none;

    box-shadow:
        0 0 5px rgba(255, 45, 45, 1),
        0 0 10px rgba(255, 45, 45, 0.8);

    animation: liveDotBlink 0.9s ease-in-out infinite;
}


/* ==========================================================
   PREMIUM SHINE EFFECT
   ========================================================== */

.live-call-button .elementor-button::after {
    content: "";

    position: absolute;
    top: -60%;
    left: -130%;

    width: 42%;
    height: 220%;

    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0.28),
        rgba(255, 255, 255, 0)
    );

    transform: rotate(24deg);

    z-index: 2;
    pointer-events: none;

    animation: liveShineSweep 5s ease-in-out infinite;
}


/* ==========================================================
   EXPANDING PULSE RING

   This uses a box-shadow animation on the dot so it remains
   centered without needing another pseudo-element.
   ========================================================== */

@keyframes liveDotBlink {
    0%,
    100% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 0 rgba(255, 45, 45, 0.65);
    }

    45% {
        opacity: 0.35;

        box-shadow:
            0 0 3px rgba(255, 45, 45, 0.65),
            0 0 7px rgba(255, 45, 45, 0.45),
            0 0 0 7px rgba(255, 45, 45, 0);
    }

    70% {
        opacity: 1;

        box-shadow:
            0 0 5px rgba(255, 45, 45, 1),
            0 0 10px rgba(255, 45, 45, 0.85),
            0 0 0 12px rgba(255, 45, 45, 0);
    }
}


/* ==========================================================
   BUTTON GLOW
   ========================================================== */

@keyframes liveButtonGlow {
    0%,
    100% {
        box-shadow:
            0 0 10px rgba(255, 35, 35, 0.15),
            0 0 20px rgba(255, 35, 35, 0.08);
    }

    50% {
        box-shadow:
            0 0 17px rgba(255, 35, 35, 0.42),
            0 0 32px rgba(255, 35, 35, 0.22);
    }
}


/* ==========================================================
   SUBTLE BREATHING EFFECT
   ========================================================== */

@keyframes liveButtonBreathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.018);
    }
}


/* ==========================================================
   SHINE SWEEP
   ========================================================== */

@keyframes liveShineSweep {
    0%,
    65% {
        left: -130%;
    }

    82%,
    100% {
        left: 160%;
    }
}


/* ==========================================================
   HOVER
   ========================================================== */

.live-call-button .elementor-button:hover {
    animation-play-state: paused;

    transform: translateY(-2px) scale(1.015);

    box-shadow:
        0 0 17px rgba(255, 35, 35, 0.5),
        0 0 32px rgba(255, 35, 35, 0.3),
        0 0 48px rgba(255, 35, 35, 0.16);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 1024px) {
    .live-call-button {
        --live-dot-size: 10px;
        --live-dot-left: 17px;
        --live-text-space: 21px;
    }

    .live-call-button .elementor-button {
        animation:
            liveButtonGlow 2.8s ease-in-out infinite,
            liveButtonBreathe 3s ease-in-out infinite;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media screen and (max-width: 767px) {
    .live-call-button {
        --live-dot-size: 9px;
        --live-dot-left: 15px;
        --live-text-space: 18px;

        width: 100%;
        max-width: 100%;
    }

    .live-call-button .elementor-button {
        width: 100%;
        min-height: 48px;

        padding-right: 18px;
        padding-left: calc(
            var(--live-dot-left) +
            var(--live-dot-size) +
            var(--live-text-space)
        );

        white-space: normal;
        text-align: center;
        line-height: 1.25;
    }
}


/* ==========================================================
   EXTRA-SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 420px) {
    .live-call-button {
        --live-dot-size: 8px;
        --live-dot-left: 13px;
        --live-text-space: 15px;
    }

    .live-call-button .elementor-button {
        min-height: 46px;
        padding-right: 14px;
        font-size: 14px;
    }
}


/* ==========================================================
   ACCESSIBILITY: REDUCE MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    .live-call-button .elementor-button,
    .live-call-button .elementor-button::before,
    .live-call-button .elementor-button::after {
        animation: none;
    }

    .live-call-button .elementor-button::before {
        opacity: 1;
    }
}/* End custom CSS */