.elementor-1448 .elementor-element.elementor-element-7a6181e{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1448 .elementor-element.elementor-element-0f9ea57{--display:flex;--min-height:95vh;--justify-content:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--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-1448 .elementor-element.elementor-element-3780219{border-style:none;border-radius:50px 50px 50px 50px;}.elementor-1448 .elementor-element.elementor-element-3780219 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1448 .elementor-element.elementor-element-3a7d277 .elementor-button{background-color:#FFFFFF00;font-family:"hagrid-text", Sans-serif;font-size:20px;font-weight:300;line-height:1rem;fill:var( --e-global-color-text );color:var( --e-global-color-text );border-style:solid;border-width:1px 1px 1px 1px;border-radius:100px 100px 100px 100px;}.elementor-1448 .elementor-element.elementor-element-3a7d277 .elementor-button:hover, .elementor-1448 .elementor-element.elementor-element-3a7d277 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-text );}.elementor-1448 .elementor-element.elementor-element-3a7d277{width:var( --container-widget-width, 20% );max-width:20%;--container-widget-width:20%;--container-widget-flex-grow:0;}.elementor-1448 .elementor-element.elementor-element-3a7d277.elementor-element{--align-self:center;}.elementor-1448 .elementor-element.elementor-element-3a7d277 .elementor-button:hover svg, .elementor-1448 .elementor-element.elementor-element-3a7d277 .elementor-button:focus svg{fill:var( --e-global-color-text );}#elementor-popup-modal-1448 .dialog-widget-content{animation-duration:0.6s;border-style:solid;border-width:0px 0px 0px 0px;border-color:var( --e-global-color-accent );box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-1448{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-1448 .dialog-message{width:100vw;height:100vh;align-items:flex-start;}@media(max-width:1600px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--min-height:85vh;--justify-content:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;}.elementor-1448 .elementor-element.elementor-element-3780219{border-radius:40px 40px 40px 40px;}.elementor-1448 .elementor-element.elementor-element-3a7d277 .elementor-button{font-size:18px;}}@media(max-width:1200px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--min-height:75vh;--justify-content:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;}.elementor-1448 .elementor-element.elementor-element-3780219{border-radius:32px 32px 32px 32px;}}@media(max-width:1024px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--min-height:65vh;--justify-content:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;}.elementor-1448 .elementor-element.elementor-element-3780219{border-radius:24px 24px 24px 24px;}.elementor-1448 .elementor-element.elementor-element-3a7d277{width:var( --container-widget-width, 25% );max-width:25%;--container-widget-width:25%;--container-widget-flex-grow:0;}}@media(max-width:880px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--min-height:55vh;--justify-content:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-1448 .elementor-element.elementor-element-3780219{border-radius:20px 20px 20px 20px;}}@media(max-width:767px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--min-height:65vh;--justify-content:center;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-1448 .elementor-element.elementor-element-3780219{border-radius:16px 16px 16px 16px;}.elementor-1448 .elementor-element.elementor-element-3a7d277{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}}@media(min-width:768px){.elementor-1448 .elementor-element.elementor-element-7a6181e{--width:100%;}}@media(max-width:1600px) and (min-width:768px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--content-width:1120px;}}@media(max-width:1200px) and (min-width:768px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--content-width:980px;}}@media(max-width:1024px) and (min-width:768px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--content-width:860px;}}@media(max-width:880px) and (min-width:768px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--content-width:100%;}}@media(min-width:2400px){.elementor-1448 .elementor-element.elementor-element-0f9ea57{--content-width:1600px;--gap:40px 40px;--row-gap:40px;--column-gap:40px;}#elementor-popup-modal-1448 .dialog-message{width:100vw;}}/* Start custom CSS for button, class: .elementor-element-3a7d277 */.my-btn .elementor-button {
    position: relative;
    overflow: hidden; /* keeps fill inside rounded shape */
    border-radius: 100px;
    border: 1px solid #000; /* white border before fill */
    z-index: 1;
    background: transparent;
    color: #000; /* optional: dark text before hover */
}

/* Fill box */
.my-btn .elementor-button::before {
    content: '';
    position: absolute;
    background: #FF8000; /* <-- fill color */
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: right; /* <-- change direction if desired */
    transition: transform .4s ease;
    border-radius: 100px;
    z-index: -1; /* keep behind text */
}

/* Hover animation */
.my-btn .elementor-button:hover::before {
    transform: scaleX(1);
    transform-origin: left;
}

/* Optional: text color change on hover for contrast */
.my-btn .elementor-button:hover {
    color: #fff;
}/* End custom CSS */