.elementor-901 .elementor-element.elementor-element-a2638cb{--display:flex;--min-height:100vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--overlay-opacity:0.5;--overlay-mix-blend-mode:multiply;--padding-top:200px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-901 .elementor-element.elementor-element-a2638cb:not(.elementor-motion-effects-element-type-background), .elementor-901 .elementor-element.elementor-element-a2638cb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );background-image:url("https://rhapsodytoronto.com/wp-content/uploads/2026/01/Rectangle-14-1.jpg");background-position:center center;background-repeat:repeat;}.elementor-901 .elementor-element.elementor-element-a2638cb::before, .elementor-901 .elementor-element.elementor-element-a2638cb > .elementor-background-video-container::before, .elementor-901 .elementor-element.elementor-element-a2638cb > .e-con-inner > .elementor-background-video-container::before, .elementor-901 .elementor-element.elementor-element-a2638cb > .elementor-background-slideshow::before, .elementor-901 .elementor-element.elementor-element-a2638cb > .e-con-inner > .elementor-background-slideshow::before, .elementor-901 .elementor-element.elementor-element-a2638cb > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #00000000 0%, var( --e-global-color-1598770 ) 100%);}.elementor-901 .elementor-element.elementor-element-bc716e2{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-901 .elementor-element.elementor-element-b9728f4.elementor-element{--align-self:center;}.elementor-901 .elementor-element.elementor-element-b9728f4{text-align:center;}.elementor-901 .elementor-element.elementor-element-b9728f4 .elementor-heading-title{font-family:"Asar", Sans-serif;font-size:65px;font-weight:400;text-transform:capitalize;line-height:95px;color:var( --e-global-color-primary );}.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-901 .elementor-element.elementor-element-4bcaf90 .elementor-button{background-color:#DBE13600;font-family:"Outfit", Sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:0px 0px 0px 0px;padding:15px 30px 15px 30px;}.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button:hover, .elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-accent );}.elementor-901 .elementor-element.elementor-element-4bcaf90{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-901 .elementor-element.elementor-element-4bcaf90.elementor-element{--align-self:center;}.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button-content-wrapper{flex-direction:row;}.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button:hover svg, .elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button:focus svg{fill:var( --e-global-color-accent );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-901 .elementor-element.elementor-element-b9728f4 .elementor-heading-title{font-size:50px;line-height:69px;}}@media(min-width:768px){.elementor-901 .elementor-element.elementor-element-bc716e2{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-901 .elementor-element.elementor-element-bc716e2{--width:100%;}}@media(max-width:767px){.elementor-901 .elementor-element.elementor-element-a2638cb{--min-height:55vh;--padding-top:160px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-901 .elementor-element.elementor-element-b9728f4 .elementor-heading-title{font-size:23px;line-height:40px;}}/* Start custom CSS for button, class: .elementor-element-4bcaf90 *//* 1. Base Button Setup */
.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button {
    background-color: transparent!important; /* Base Green Background */
    color: #DBE136 !important; /* Base Black Text */
    
    /* Setup Border - solid transparent initially to prevent size jumping */
    border: 1px solid #DBE136; 
    
    position: relative;
    overflow: hidden; 
    z-index: 1;
    transition: all 0.3s ease; /* Smooth transition for color/border */
}

/* 2. The "Blackout" Swipe Layer (The Animation) */
.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 120%; 
    height: 100%;
    background-color: #DBE136; /* The Swipe is BLACK */
    
    /* The Rhapsody Skew logic */
    transform-origin: left;
    transform: translateX(-10%) scaleX(0) skewX(-20deg); 
    transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
    
    z-index: 0; /* Sits behind text */
}

/* 3. Bring Text Above the Swipe */
.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button span, 
.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button .elementor-button-content-wrapper {
    position: relative;
    z-index: 2; 
}

/* 4. Hover Actions */
.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button:hover::before {
    transform: translateX(-10%) scaleX(1) skewX(-20deg); /* Black Swipe Activates */
}

.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button:hover {
    color: #000 !important; /* Text turns Green */
    border-color: #dce25a !important; /* Border turns Green */
    background-color: transparent !important; /* Optional: ensures border is crisp */
}

/* 5. Fix for Icons (if you use them) */
.elementor-901 .elementor-element.elementor-element-4bcaf90 .elementor-button:hover svg {
    fill: #dce25a !important;
}/* End custom CSS */