.elementor-kit-19464{--e-global-color-primary:#000000;--e-global-color-secondary:#828282;--e-global-color-text:#000000;--e-global-color-accent:#EEEEEE;--e-global-color-ba572a4:#FFFFFF;--e-global-color-88b870a:#D31145;--e-global-color-8e27b43:#1F1F23;--e-global-color-597a07a:#333333;--e-global-color-1571329:#00703C;--e-global-color-d4a0ce3:#0095D8;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-weight:500;color:var( --e-global-color-597a07a );font-family:"Lato", Sans-serif;font-size:20px;font-weight:400;line-height:1.5em;}.elementor-kit-19464 button,.elementor-kit-19464 input[type="button"],.elementor-kit-19464 input[type="submit"],.elementor-kit-19464 .elementor-button{background-color:var( --e-global-color-88b870a );font-family:"Lato", Sans-serif;font-size:16px;font-weight:700;text-transform:uppercase;line-height:1.2em;color:var( --e-global-color-ba572a4 );padding:15px 36px 15px 36px;}.elementor-kit-19464 button:hover,.elementor-kit-19464 button:focus,.elementor-kit-19464 input[type="button"]:hover,.elementor-kit-19464 input[type="button"]:focus,.elementor-kit-19464 input[type="submit"]:hover,.elementor-kit-19464 input[type="submit"]:focus,.elementor-kit-19464 .elementor-button:hover,.elementor-kit-19464 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-ba572a4 );}.elementor-kit-19464 e-page-transition{background-color:var( --e-global-color-primary );}.elementor-kit-19464 p{margin-block-end:0px;}.elementor-kit-19464 a{color:var( --e-global-color-88b870a );}.elementor-kit-19464 a:hover{color:var( --e-global-color-1571329 );}.elementor-kit-19464 h1{color:var( --e-global-color-597a07a );font-family:"Mulish", Sans-serif;font-size:90px;font-weight:800;text-transform:none;line-height:1.2em;}.elementor-kit-19464 h2{color:var( --e-global-color-597a07a );font-family:"Mulish", Sans-serif;font-size:90px;font-weight:800;text-transform:none;line-height:1.2em;}.elementor-kit-19464 h3{font-size:clamp(22px, 1/5vw, 30px);}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1700px;}.e-con{--container-max-width:1700px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1366px){.elementor-kit-19464{font-size:18px;}.elementor-kit-19464 h1{font-size:54px;}.elementor-kit-19464 h2{font-size:54px;}}@media(max-width:1200px){.elementor-kit-19464 h2{font-size:54px;}}@media(max-width:1024px){.elementor-kit-19464 h2{font-size:54px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:880px){.elementor-kit-19464 h1{font-size:40px;}.elementor-kit-19464 h2{font-size:40px;line-height:1.2em;}}@media(max-width:767px){.elementor-kit-19464{font-size:16px;}.elementor-kit-19464 p{margin-block-end:0px;}.elementor-kit-19464 h1{font-size:36px;line-height:1.2em;}.elementor-kit-19464 h2{font-size:36px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */html, body {
max-width: 100%;
overflow-x: hidden;
}


/*Sticky Header Code*/
/***
* class: .sticky-header
*/
header.sticky-header {
	--header-height: 100px;
	--shrink-header-to: 0.6;
	--transition: .45s cubic-bezier(.4, 0, .2, 1);
	background-color: #fff;
	transition: background-color var(--transition),
				backdrop-filter var(--transition),
				box-shadow var(--transition);
}

/***
* Sticky header activated
*/
header.sticky-header.elementor-sticky--effects {
	background-color:#fff;
	box-shadow: 0px 4px 33px 1px rgba(0, 0, 0, .07);
	-webkit-backdrop-filter: saturate(180%) blur(20px);
	backdrop-filter: saturate(180%) blur(20px);
}
header.sticky-header > .elementor-container {
	min-height: var(--header-height);
	transition: min-height var(--transition);
}
header.sticky-header.elementor-sticky--effects > .elementor-container {
	min-height: calc( var(--header-height) * var(--shrink-header-to) );
}

/***
* Shorter header on mobile (70px instead of 100px)
*/
@media only screen and (max-width: 767px) {
	header.sticky-header {
		--header-height: 70px;
	}
}

/***
* class: .logo
*/
header.sticky-header .logo img {
	transition: transform var(--transition);
}
header.sticky-header.elementor-sticky--effects .logo img {
	transform: scale(.8);
}

/* Custom CSS*/

/*Card height*/
.training-support-box {
    min-height: 280px;
}

@media screen and (max-width: 1024px){
    .training-support-box {
        min-height: 0px;
    }
}

.highlight-red-heading,
.highlight-red-ftr-heading {
	color: #D31145
}

.highlight-red-ftr-heading {
    display: block;
}

.highlight-chill {
	font-style: italic;
	color: #8dd3f4;
	font-weight: 500;
}

/*Why Rita's Accordion Code*/

/* --- 1. BASE TAB STYLING (Closed State) --- */
.rita-tab,
.about-rita-tab{
    transition: flex-grow 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
    cursor: pointer;
    flex-grow: 1 !important;
    flex-basis: 0 !important;
    overflow: hidden;
    position: relative;
    /* Default Closed State Look */
    background-color: #EAEAEA !important;
    background-image: none !important;
}

/* --- 2. EXPANDED TAB STYLING (Active State) --- */
body .rita-tab.active-tab,
body .about-rita-tab.active-tab {
    flex-grow: 7 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    /* Background Logic */
    background-color: transparent !important;
    background-size: cover !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
}

/* --- 3. DYNAMIC BACKGROUND IMAGES --- */
#rita-1.active-tab { background-image: url('/wp-content/uploads/2026/04/image19.webp') !important; }
#rita-2.active-tab { background-image: url('/wp-content/uploads/2026/04/image20.webp') !important; }
#rita-3.active-tab { background-image: url('/wp-content/uploads/2026/04/image21.webp') !important; }
#rita-4.active-tab { background-image: url('/wp-content/uploads/2026/04/image22.webp') !important; }
#rita-5.active-tab { background-image: url('/wp-content/uploads/2026/04/image23.webp') !important; }
#about-rita-1.active-tab { background-image: url('/wp-content/uploads/2026/04/image24.webp') !important; }
#about-rita-2.active-tab { background-image: url('/wp-content/uploads/2026/04/image20.webp') !important; }
#about-rita-3.active-tab { background-image: url('/wp-content/uploads/2026/04/image21.webp') !important; }
#about-rita-4.active-tab { background-image: url('/wp-content/uploads/2026/04/image23.webp') !important; }
#about-rita-5.active-tab { background-image: url('/wp-content/uploads/2026/06/about-ritas-dt.webp') !important; }
/* Ensure internal Elementor layers stay transparent */
.rita-tab.active-tab .elementor-background-overlay,
.rita-tab.active-tab .elementor-motion-effects-layer,
.about-rita-tab.active-tab .elementor-background-overlay,
.about-rita-tab.active-tab .elementor-motion-effects-layer {
    opacity: 0 !important; /* Set to 0 to ensure no default Elementor tinting */
}

/* --- 4. CONTENT DISPLAY LOGIC --- */

/* Vertical Title (Visible when closed) */
.tab-closed-content {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    white-space: nowrap;
    text-transform: uppercase;
    font-weight: bold;
    transition: opacity 0.3s ease;
    
    /* ALIGNMENT FIX: */
    margin-top: auto !important;    /* Pushes text to the bottom */
    margin-bottom: 40px !important; /* Space from the very bottom edge */
    margin-left: auto !important;   /* Horizontal center */
    margin-right: auto !important;  /* Horizontal center */
}

/* Ensure the closed tab container is a flexbox to allow the margin-top: auto to work */
.rita-tab:not(.active-tab),
.about-rita-tab:not(.active-tab){
    display: flex !important;
    flex-direction: column;
}

.rita-tab.active-tab .tab-closed-content,
.about-rita-tab.active-tab .tab-closed-content{
    display: none;
}

/* Open Content (Visible when active) */
.rita-tab .tab-open-content,
.about-rita-tab .tab-open-content{
    display: none;
    opacity: 0;
    /*width: 100% !important;*/
    /*height: 100% !important;*/
    background: transparent !important; 
    z-index: 2;
    position: relative;
}

.rita-tab.active-tab .tab-open-content,
.about-rita-tab.active-tab .tab-open-content{
    display: flex !important;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    opacity: 1;
    visibility: visible;
}

/* --- 5. LAYOUT & BOX MODEL FIXES --- */

/* Reset Elementor's default inner spacing for active tab */
body .rita-tab.active-tab > .elementor-widget-wrap,
body .rita-tab.active-tab > .elementor-container,
body .rita-tab.active-tab > .e-con-inner,
body .about-rita-tab.active-tab > .elementor-widget-wrap,
body .about-rita-tab.active-tab > .elementor-container,
body .about-rita-tab.active-tab > .e-con-inner {
    padding: 0 !important;
    margin: 0 !important;
    height: 100% !important;
    width: 100% !important;
}
/* Target Mobile Devices (767px and below) */
@media (max-width: 767px) {
    
    /* EA Vertical Text back to horizontal */
    .tab-closed-content {
        writing-mode: horizontal-tb !important;
        transform: rotate(0deg) !important;
        white-space: normal !important;
        margin: 0 !important;
        text-align: center;
        width: 100%;
    }
    
    .parent-container-class {
        flex-direction: column !important;
        height: auto !important;
    }
    
    .rita-tab,
    .about-rita-tab {
        width: 100% !important;
        min-height: 0;
        flex-grow: 0 !important;
    }

    /* Active state on mobile */
    .rita-tab.active-tab,
    .about-rita-tab.active-tab {
        min-height: 500px;
        flex-grow: 0 !important;
    }
    
    /* Reset the Vertical Orientation (Essential Addons override) */
    .tab-closed-content {
        writing-mode: horizontal-tb !important;
        transform: none !important;
        white-space: normal !important;
        margin: auto  !important; 
        
        /* Text styling for mobile */
        text-align: left;
        width: 100%;
        padding: 20px;
    }

    /* 4. Force the container to behave like a centering box */
    .rita-tab:not(.active-tab),
    .about-rita-tab:not(.active-tab)  {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        /*min-height: 20px;*/
    }
    
    .tab-closed-content {
        writing-mode: horizontal-tb !important;
        transform: none !important;
        white-space: normal !important;
        
        /* THE FIX: Specifically reset the desktop margins */
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        /*margin-left: auto !important;*/
        /*margin-right: auto !important;*/
        width: 100%;
        /*padding: 20px;*/
    }

    .rita-tab:not(.active-tab),
    .about-rita-tab:not(.active-tab) {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        min-height: 80px;
    }
}

/*End of Why Rita's Accordion Code*/

/*Our Process Page*/
/* --- 1. GLOBAL WRAPPER & ANIMATIONS --- */
.steps-to-ownership {
    position: relative;
    overflow: hidden; /* Prevents large SVG from causing horizontal scroll */
}

@keyframes ping {
    0% {
        box-shadow: 0 0 0 0px rgba(211, 17, 69, 0.7);
    }
    100% {
        box-shadow: 0 0 0 20px rgba(211, 17, 69, 0);
    }
}
/* --- 2. MOBILE STYLES (Default / Below 880px) --- */
.step-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 20px;
    background: #eee;
    border-radius: 20px;
    margin-bottom: 20px;
}

/* --- 3. TABLET & DESKTOP ADJUSTMENTS (Above 880px) --- */
@media (min-width: 1024px) {
    .step-card {
        flex-direction: row; /* Side-by-side layout */
        background: transparent;
        margin-left: -100px;
        padding-top: 60px;
        padding-bottom: 60px;
    }

    /* The Offset Gray Box behind the card */
    .step-card::before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        bottom: 0;
        left: 15%;
        right: 0;
        background: #eee;
        border-radius: 28px;
    }
}


/* --- 4. LARGE DESKTOP DECORATIONS (Above 1024px) --- */
@media (min-width: 1025px) {
    /* The large Dotted SVG Background */
    /*.steps-to-ownership::before {*/
    /*    content: "";*/
    /*    position: absolute;*/
    /*    z-index: -2;*/
    /*    top: 20px;*/
    /*    left: 50%;*/
    /*    transform: translateX(-50%);*/
        /*width: 1270px;*/
        /*height: 3145px;*/
        /*background: url('/wp-content/uploads/2026/04/bg-stripe-dotted.svg') no-repeat;*/
        /*background-size: contain;*/
    }

    /* The Pulsing Red Dot */
    .steps-to-ownership::after {
    content: "";
    position: absolute;
    top: 15px; 
    left: 50%;
    transform: translateX(-50%);
    width: 12px; /* Smaller core looks better with this effect */
    height: 12px;
    border-radius: 100%;
    background: #d31145; /* The solid core */
    animation: ping 1.5s infinite;
    z-index: 10;
}
@media (max-width: 1023px) {
    .steps-to-ownership::after {
        display: none !important;
        content: none;
    }
}
}/* End custom CSS */