.elementor-8553 .elementor-element.elementor-element-2e9403a{--display:flex;--min-height:350px;--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:30px 30px;--row-gap:30px;--column-gap:30px;--overlay-opacity:0.5;}.elementor-8553 .elementor-element.elementor-element-2e9403a:not(.elementor-motion-effects-element-type-background), .elementor-8553 .elementor-element.elementor-element-2e9403a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://ridgewoodmoving.com/wp-content/uploads/2025/05/realtor-min.jpg");background-position:center center;background-size:cover;}.elementor-8553 .elementor-element.elementor-element-2e9403a::before, .elementor-8553 .elementor-element.elementor-element-2e9403a > .elementor-background-video-container::before, .elementor-8553 .elementor-element.elementor-element-2e9403a > .e-con-inner > .elementor-background-video-container::before, .elementor-8553 .elementor-element.elementor-element-2e9403a > .elementor-background-slideshow::before, .elementor-8553 .elementor-element.elementor-element-2e9403a > .e-con-inner > .elementor-background-slideshow::before, .elementor-8553 .elementor-element.elementor-element-2e9403a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #000000 0%, #00000000 100%);}.elementor-8553 .elementor-element.elementor-element-69537dc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0em;--margin-bottom:2em;--margin-left:0em;--margin-right:0em;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8553 .elementor-element.elementor-element-7f9c5a0{--display:flex;--margin-top:2em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;}.elementor-8553 .elementor-element.elementor-element-39c8812{--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:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-8553 .elementor-element.elementor-element-0cf2d0f{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8553 .elementor-element.elementor-element-419549b{--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;--flex-wrap:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-8553 .elementor-element.elementor-element-9d16c4d{--display:flex;--margin-top:2em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;--padding-top:2em;--padding-bottom:1em;--padding-left:0em;--padding-right:0em;}.elementor-8553 .elementor-element.elementor-element-9d16c4d:not(.elementor-motion-effects-element-type-background), .elementor-8553 .elementor-element.elementor-element-9d16c4d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F6F6;}.elementor-8553 .elementor-element.elementor-element-b85db48{text-align:center;}.elementor-8553 .elementor-element.elementor-element-d2f8db3{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;--padding-top:0em;--padding-bottom:3em;--padding-left:0em;--padding-right:0em;}.elementor-8553 .elementor-element.elementor-element-d2f8db3:not(.elementor-motion-effects-element-type-background), .elementor-8553 .elementor-element.elementor-element-d2f8db3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F6F6;}.elementor-8553 .elementor-element.elementor-element-95adc5e > .elementor-widget-container{padding:1em 1em 1em 1em;border-radius:10px 10px 10px 10px;box-shadow:0px 4px 13.4px 0px rgba(0, 0, 0, 0.25);}.elementor-8553 .elementor-element.elementor-element-95adc5e .elementor-icon-box-title{margin-bottom:10px;color:#000000;}.elementor-8553 .elementor-element.elementor-element-95adc5e .elementor-icon-box-title, .elementor-8553 .elementor-element.elementor-element-95adc5e .elementor-icon-box-title a{font-size:1rem;font-weight:700;text-transform:uppercase;}.elementor-8553 .elementor-element.elementor-element-95adc5e .elementor-icon-box-description{font-size:1rem;color:var( --e-global-color-text );}.elementor-8553 .elementor-element.elementor-element-b9ba75f > .elementor-widget-container{padding:1em 1em 1em 1em;border-radius:10px 10px 10px 10px;box-shadow:0px 4px 13.4px 0px rgba(0, 0, 0, 0.25);}.elementor-8553 .elementor-element.elementor-element-b9ba75f .elementor-icon-box-title{margin-bottom:10px;color:#000000;}.elementor-8553 .elementor-element.elementor-element-b9ba75f .elementor-icon-box-title, .elementor-8553 .elementor-element.elementor-element-b9ba75f .elementor-icon-box-title a{font-size:1rem;font-weight:700;text-transform:uppercase;}.elementor-8553 .elementor-element.elementor-element-b9ba75f .elementor-icon-box-description{font-size:1rem;color:var( --e-global-color-text );}.elementor-8553 .elementor-element.elementor-element-d98807e > .elementor-widget-container{padding:1em 1em 1em 1em;border-radius:10px 10px 10px 10px;box-shadow:0px 4px 13.4px 0px rgba(0, 0, 0, 0.25);}.elementor-8553 .elementor-element.elementor-element-d98807e .elementor-icon-box-title{margin-bottom:10px;color:#000000;}.elementor-8553 .elementor-element.elementor-element-d98807e .elementor-icon-box-title, .elementor-8553 .elementor-element.elementor-element-d98807e .elementor-icon-box-title a{font-size:1rem;font-weight:700;text-transform:uppercase;}.elementor-8553 .elementor-element.elementor-element-d98807e .elementor-icon-box-description{font-size:1rem;color:var( --e-global-color-text );}.elementor-8553 .elementor-element.elementor-element-0426776{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 20px;--row-gap:0px;--column-gap:20px;--padding-top:2em;--padding-bottom:2em;--padding-left:0em;--padding-right:0em;}.elementor-8553 .elementor-element.elementor-element-6e76157{--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-8553 .elementor-element.elementor-element-3b477d8 > .elementor-widget-container{padding:20px 0px 0px 0px;}.elementor-8553 .elementor-element.elementor-element-616bdf9{--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-8553 .elementor-element.elementor-element-34cbc55{--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;--padding-top:2em;--padding-bottom:2em;--padding-left:0em;--padding-right:0em;}.elementor-8553 .elementor-element.elementor-element-34cbc55:not(.elementor-motion-effects-element-type-background), .elementor-8553 .elementor-element.elementor-element-34cbc55 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F6F6;}.elementor-8553 .elementor-element.elementor-element-5abd686 > .elementor-widget-container{background-color:#FFFFFF;padding:2em 6em 2em 6em;border-radius:15px 15px 15px 15px;box-shadow:0px 2px 11px 0px rgba(14.000000000000021, 84.00000000000004, 135, 0.16);}@media(max-width:1024px){.elementor-8553 .elementor-element.elementor-element-2e9403a{--min-height:300px;--gap:30px 30px;--row-gap:30px;--column-gap:30px;}.elementor-8553 .elementor-element.elementor-element-39c8812{--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-8553 .elementor-element.elementor-element-419549b{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-8553 .elementor-element.elementor-element-d2f8db3{--grid-auto-flow:row;--padding-top:15px;--padding-bottom:25px;--padding-left:15px;--padding-right:15px;}.elementor-8553 .elementor-element.elementor-element-0426776{--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:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-8553 .elementor-element.elementor-element-616bdf9{--justify-content:center;}.elementor-8553 .elementor-element.elementor-element-5abd686 > .elementor-widget-container{margin:0em 2em 0em 2em;padding:2em 3em 2em 3em;}}@media(max-width:767px){.elementor-8553 .elementor-element.elementor-element-2e9403a{--min-height:225px;--justify-content:flex-end;--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-8553 .elementor-element.elementor-element-2e9403a:not(.elementor-motion-effects-element-type-background), .elementor-8553 .elementor-element.elementor-element-2e9403a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center right;}.elementor-8553 .elementor-element.elementor-element-69537dc{--margin-top:0em;--margin-bottom:1em;--margin-left:0em;--margin-right:0em;}.elementor-8553 .elementor-element.elementor-element-e371625{width:100%;max-width:100%;}.elementor-8553 .elementor-element.elementor-element-a09ed85{width:100%;max-width:100%;}.elementor-8553 .elementor-element.elementor-element-d2f8db3{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-8553 .elementor-element.elementor-element-3b477d8 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-8553 .elementor-element.elementor-element-5abd686 > .elementor-widget-container{margin:0em 1em 0em 1em;padding:1em 1.5em 1em 1.5em;}}@media(min-width:768px){.elementor-8553 .elementor-element.elementor-element-0cf2d0f{--width:50%;}.elementor-8553 .elementor-element.elementor-element-419549b{--width:50%;}.elementor-8553 .elementor-element.elementor-element-6e76157{--width:45%;}.elementor-8553 .elementor-element.elementor-element-616bdf9{--width:55%;}.elementor-8553 .elementor-element.elementor-element-34cbc55{--content-width:950px;}}@media(max-width:1024px) and (min-width:768px){.elementor-8553 .elementor-element.elementor-element-0cf2d0f{--width:100%;}.elementor-8553 .elementor-element.elementor-element-419549b{--width:100%;}.elementor-8553 .elementor-element.elementor-element-6e76157{--width:100%;}.elementor-8553 .elementor-element.elementor-element-616bdf9{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-a592d97 */.lash:hover .path1 {
    transform: translate(-4px, -3px);
}

.lash:hover .path2 {
    transform: translate(4px, -2px);
}

.lash:hover .path3 {
    transform: translate(4px, 3px);
}

.heart path {
    transition: transform 0.3s ease-in-out;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3b477d8 *//* Base styles for body - adjust as needed */

/* --- Full Width CTA Button Styles --- */
.full-width-cta-button {
    display: flex;
    /* Use flexbox for layout */
    
    align-items: center; /* Vertically center items */
    justify-content: flex-start; /* Align items to the start (left) */
    width: 100%; /* Make the button full width */
    padding: 20px 40px; /* Vertical and horizontal padding */
    background-color: #fff; /* Default background */
    color: black; /* Default text color */
   box-shadow: 0px 4px 15.4px 0px rgba(151, 151, 151, 0.30) !important;
    border-radius: 8px; /* Optional rounded corners */
    text-decoration: none; /* Remove underline from link */
    cursor: pointer;
    overflow: hidden; /* Prevent content spillover during animation */
    box-sizing: border-box; /* Include padding and border in width */
    position: relative; /* For positioning the hidden icon */

    /* Smooth transitions for hover effects */
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Style for the icons */
.full-width-cta-button .cta-icon {
    height: 50px; /* Adjust icon size as needed */
    width: auto;
    display: block; /* Helps with alignment inside circle */
    flex-shrink: 0; /* Prevent icons from shrinking */
}

/* Container for the text ONLY */
.full-width-cta-button .cta-content {
    display: flex; /* Still use flex for alignment if needed */
    color: #000;
    align-items: center;
    margin-left: 15px; /* Space after the first icon */
    margin-right: 15px;
    flex-grow: 0; /* Don't grow by default */
    transition: flex-grow 0.6s ease; /* Smooth transition for growing */
}

/* Container for the swapping text */
.full-width-cta-button .cta-text-container {
    position: relative; /* Needed for absolute positioning of hover text */
    display: inline-block; /* Fit content size */
    white-space: nowrap; /* Prevent text wrapping */
    /* Apply font styles here */
    font-family: "Mulish", Sans-serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
}

/* Base style for both text spans */
.full-width-cta-button .cta-text {
    display: inline-block;
    transition: opacity 0.2s ease-in-out; /* Smooth text fade */
}

/* Style for the hover text (initially hidden) */
.full-width-cta-button .cta-text-hover {
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    opacity: 0; /* Hidden by default */
    white-space: nowrap; /* Prevent wrapping */
}

/* Wrapper for the right arrow icon (for background circle) */
.full-width-cta-button .cta-icon-right-wrapper {
    display: flex; /* Center the icon inside */
    align-items: center;
    justify-content: center;
    width: 50px; /* Circle size - adjust as needed */
    height: 50px; /* Circle size - adjust as needed */
    border-radius: 50%; /* Make it a circle */
    background-color: #F7F7F7; /* Default background */
    margin-left: 10px; /* Initial spacing */
    flex-shrink: 0; /* Prevent shrinking */
    position: relative; /* For positioning the hidden icon */
    
    /* Remove any transition here as we're using animations */
}

/* The right arrow icon */
.full-width-cta-button .cta-icon-right {
    height: 25px !important;
    transition: transform 0.3s ease; /* Smooth transform */
}

/* --- Icon Swap on Hover --- */
/* Create a class for alternate icon that will show on hover */
.full-width-cta-button .cta-icon-left,
.full-width-cta-button .cta-icon-right {
    transition: opacity 0.3s ease; /* Smooth fade between icons */
}

/* Style for the SVGs - default (colored) icon */
.full-width-cta-button .cta-icon-left[src*="svg1332.svg"] {
    opacity: 1; /* Visible by default */
}

/* On hover - swap icons */
.full-width-cta-button:hover .cta-icon-left[src*="svg1332.svg"] {
    filter: brightness(0) invert(1); /* Make it white */
}

/* --- Hover Effects --- */
.full-width-cta-button:hover {
    background-color: #D0202E; /* Red background on hover */
    color: white; /* White text on hover */
    border-color: #D0202E; /* Match border color */
}

/* Hide default text on hover */
.full-width-cta-button:hover .cta-text-default {
    opacity: 0;
}

/* Show hover text on hover */
.full-width-cta-button:hover .cta-text-hover {
    opacity: 1;
}

/* On hover, make the content grow to push the arrow right */
.full-width-cta-button:hover .cta-content {
    flex-grow: 1;
}

/* Animation for the arrow when returning from hover */
.full-width-cta-button:not(:hover) .cta-icon-right-wrapper {
    animation: bounceBack 0.8s ease;
}

/* Define the bounce back animation */
@keyframes bounceBack {
    0% {
        transform: translateX(0);
    }
    20% {
        transform: translateX(-10px); /* Slight overshoot to left */
    }
    40% {
        transform: translateX(-3px); /* Bounce right a little */
    }
    60% {
        transform: translateX(-7px); /* Bounce left again slightly */
    }
    80% {
        transform: translateX(-2px); /* Small bounce right */
    }
    100% {
        transform: translateX(0); /* Final resting position */
    }
}

/* Add a gentle pulse to the arrow icon on hover */


@keyframes pulse {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(3px); /* Slight right movement */
    }
}

/* Change the right arrow wrapper background on hover */
.full-width-cta-button:hover .cta-icon-right-wrapper {
    background-color: #fff; /* White circle background on hover */
}

/* Make the right arrow black on hover (since it's on white background) */
.full-width-cta-button:hover .cta-icon-right {
    filter: brightness(0); /* Make the arrow icon black */
}
/* Wrapper for the LEFT icons (for swapping) */
.full-width-cta-button .cta-icon-left-wrapper {
    position: relative; /* Context for absolute positioned icons */
    width: 50px; /* Match icon height for container size */
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0; 
}

/* Style for BOTH LEFT icons */
.full-width-cta-button .cta-icon-left-wrapper .cta-icon-left {
    height: 50px;
    width: auto;
    display: block; 
    position: absolute; /* Position icons on top of each other */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease-in-out; /* Smooth fade */
}

/* Hide the HOVER left icon by default */
.full-width-cta-button .cta-icon-left-wrapper .cta-icon-left-hover {
    opacity: 0;
}

/* Hide DEFAULT LEFT icon on hover */
.full-width-cta-button:hover .cta-icon-left-wrapper .cta-icon-left-default {
     opacity: 0;
}

/* Show HOVER LEFT icon on hover */
.full-width-cta-button:hover .cta-icon-left-wrapper .cta-icon-left-hover {
     opacity: 1;
}

/* --- Full Width CTA Button Styles --- */
.full-width-cta-button {
    /* Added margin between stacked buttons */
    margin-bottom: 15px; 
}
/* Remove margin from the last button */
.full-width-cta-button:last-child {
    margin-bottom: 0;
}

/* Container for the text ONLY */
.full-width-cta-button .cta-content {
    /* Added min-width to ensure consistent spacing */
    min-width: 190px; /* Adjust this value as needed */
    /* Removed flex-grow: 0; - min-width handles default state */
    /* transition: flex-grow 0.6s ease; /* This was already present */ 
}

/* Wrapper for the right arrow icon */
.full-width-cta-button .cta-icon-right-wrapper {
    /* Made bounce animation infinite */
    animation: bounceBack 0.8s ease infinite; 
}


/* --- Hover Effects --- */

/* Make content grow on hover to push arrow */
.full-width-cta-button:hover .cta-content {
    /* flex-grow: 1; /* This was already present */
    /* Ensure min-width doesn't interfere with growing */
    min-width: auto; 
}

/* Animate right arrow wrapper on hover */
.full-width-cta-button:hover .cta-icon-right-wrapper {
    /* animation: none; /* This was already present */
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 1024px) {
    .full-width-cta-button {
        padding: 10px 10px;
}
  .full-width-cta-button .cta-icon {
    height: 20px; /* Adjust icon size as needed */
  }
  .full-width-cta-button .cta-icon-right-wrapper {
    display: flex; /* Center the icon inside */
    align-items: center;
    justify-content: center;
    width: 30px; /* Circle size - adjust as needed */
    height: 30px; /* Circle size - adjust as needed */
    
}
.full-width-cta-button .cta-icon-left-wrapper .cta-icon-left {
    height: 40px;
}

.full-width-cta-button .cta-icon-right {
    height: 15px !important;
}
.full-width-cta-button .cta-text-container {
    font-size: 1rem;
}
    
}/* End custom CSS */