/* Morgan's Code */



/*----- Start of Menu Icon Card Flip cards ----- */
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-item {
  transform-style: preserve-3d;
}



/* 1st level container styles */
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-card-item-border-0-1 {
  perspective: 1100px;
}

body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-items .menu-card-item-border-0-1 {
  overflow: visible;
  background-color: transparent;
}

body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-items .column:nth-of-type(odd) .menu-card-item-border-0-1 {
  z-index: 1;
}




/* BACK Description: makes sure it's vertically centered */
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-content {
  transform-style: preserve-3d;
}


body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card {
padding: 0rem;

}

/* FRONT Subtitle and Title and image : Position absolutely and hide when card is flipped */
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-card-item-title {
  transform: rotateY(0deg);
  -webkit-transform:rotateY(0deg);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  width: 100%;
  left: 0;
  margin-bottom: 0;
}



body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-item-description, body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-item-subtitle, body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-content h3 {
  transform: rotateY(0deg);
  -webkit-transform:rotateY(0deg);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-item-image {
  transform:scaleX(-1);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  padding: 0;

}

/* FRONT add different color to front of card  */
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-card-item-border-0-1 > div:last-child:before {
  background-color: #fff;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: rotateY(0deg);
  -webkit-transform:rotateY(0deg);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  z-index: -1;
}

/*  ----- Animations------ 

body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-items .menu-card-item-border-0-1 .menu-item-title {
  opacity: 1;
  transition: all .5s cubic-bezier(1, -0.29, 0, -0.28);
}
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-items .menu-card-item-border-0-1:hover .menu-item-title,
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-items .menu-card-item-border-0-1:hover .menu-item-subtitle {
  opacity: 0;
  transition: all .5s cubic-bezier(0, 0.51, 1, 1.92);
}
*/

/* FRONT 2nd level Container: animate return flip  and add box shadow to parent container */
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-items .menu-card-item-border-0-1 > div:last-child {
  transform-style: preserve-3d;
  box-shadow: 0 1.5px 2.7px rgba(0, 0, 0, 0.09), 0 3.8px 6.8px rgba(0, 0, 0, 0.062), 0 7.8px 13.8px rgba(0, 0, 0, 0.05), 0 16.1px 28.5px rgba(0, 0, 0, 0.04), 0 44px 78px rgba(0, 0, 0, 0.028);
  transition: all .7s ease;
  height: 100%;
  width: 100%;
  background-color: #437db2;
  min-height: 400px;
  display: flex;
  align-items: center;
}

/* on hover of border-0-1 flip entire 2nd level container */
body.home-page section[data-lucid-group="Menu Icon Card (1)"] .menu-icon-card-items .menu-card-item-border-0-1:hover>div:last-child {
  transform: rotateY(180deg);
  transition: all .7s ease;
  box-shadow: 0 1.5px 2.7px rgba(0, 0, 0, 0.09),
    0 3.8px 6.8px rgba(0, 0, 0, 0.062),
    0 7.8px 13.8px rgba(0, 0, 0, 0.05),
    0 16.1px 28.5px rgba(0, 0, 0, 0.04),
    0 44px 78px rgba(0, 0, 0, 0.028);
}

/*----- End of Menu Icon Card Flip cards ----- */


@media (min-width:1024px) {
body.home-page .menu-icon-section .menu-item-break {
  display: none;
}
body.home-page .menu-icon-section .menus > .menu {
  flex: 0 0 25%;
  max-width: calc(25% - calc(2rem));
}

}

/* Pods: With Cards */
.pods-section .pods-item-content { /* Square Text */ 
    background: #eeeeee;
    padding: 40px 60px;
    margin: 50px 50px;
    border-radius: 4px;
    box-shadow: 0px 10px 15px #0000001a;
}

@media (max-width: 1000px) {
    .pods-items > .row { flex-direction: column; }
    .pods-items > .row:nth-child(even) .column { order: -1 !important; }
    .pods-items > .row .image-box {
        width: 400px;
        max-width: 400px;
        margin: auto auto -50px auto;
        border-radius: 4px;
        z-index: -1;
    }
    .pods-section .pods-item-content {
        padding: 20px 20px;
        margin-bottom: 80px;
    }
}


/* Textblock Columns 2 : Split 50% width Background Image */

/**  Right Image **/
@media (min-width: 1024px) {
    section.color-scheme-16 .section-custom-background {
           max-width: 50%;
           left: 50%;
   }
   section.color-scheme-16 .column-1 img:first-of-type {
           display: none;
   }
}

/*** Animation fixes ***/
section.color-scheme-16.animated.effect-zoom-out .section-custom-background {
    animation: zoomOutSplitRight 5s ease-out 1 !important;
    transform: scale(1);
}

@keyframes zoomOutSplitRight {
	100% {
	    transform: scale(1);
	}
	
	0% {
	    transform: translate(5vw,0) scale(1.2);
	}
}
/* Mobile Empty Column Fix */
@media screen and (max-width: 1024px) {
		.column {
		    flex: 0 0 100%;
		    max-width: 100%;
		}
}

/*** Front sections additional hacks ***/
section.color-scheme-16.front-stack {
    max-width: 1200px;
    margin: 0 auto;
}
section.color-scheme-16.front-stack .row  {
    max-width: 93.33333% !important;
}

@media (min-width: 1024px) {
		section.color-scheme-16.front-stack .section-custom-background {
				right: initial;
		}
}

/* Textblock Columns 2 : Split 50% width Background Image */

/** Left Image **/
@media (min-width: 1024px) {
	section.color-scheme-17 .section-custom-background {
			max-width: 50%;
			left: 0;
	}
	section.color-scheme-17 .column-2 img {
			display: none;
	}

}

/*** Animation fixes ***/
section.color-scheme-17.animated.effect-zoom-out .section-custom-background {
animation: zoomOutSplitLeft 5s ease-out 1 !important;
transform: scale(1);
}

@keyframes zoomOutSplitLeft {
	100% {
		transform: scale(1);
	}
	
	0% {
		transform: translate(-5vw,0) scale(1.2);
	}
}

/* Mobile Empty Column Fix */
@media screen and (max-width: 1024px) {
	.column {
		flex: 0 0 100%;
		max-width: 100%;
	}
}
/*** Front sections additional hacks ***/
section.color-scheme-17.front-stack {
max-width: 1200px;
margin: 0 auto;
}
section.color-scheme-17.front-stack .row {
max-width: 93.33333% !important;
}



@media (min-width:1024px) {

  section.color-scheme-13 {
		border-radius: 0 0 10vw 0;
		overflow: hidden;
	  }
section.color-scheme-15 {
		border-radius: 5vw 0 0 0;
		padding-top: 10rem;
  overflow: hidden;
	  }

    section.color-scheme-19 {
      border-radius: 0 0 10vw 0;
      overflow: hidden;
      }
  }

@media (min-width:1400px) {

  section.color-scheme-13 {
		border-radius: 0 0 20vw 0;
		overflow: hidden;
	  }
 section.color-scheme-15 {
		border-radius: 20vw 0 0 0;
		padding-top: 10rem;
  overflow: hidden;
	  }
    section.color-scheme-19 {
      border-radius: 0 0 20vw 0;
      overflow: hidden;
      }
  }

/* Hero: Unzoom video */
.hero-video video {
    width: 100vw !important;
    height: 100vh !important;
    object-fit: cover !important;
 }



section.full-width.back-stack .section-description > .row .column, section.full-width.back-stack .section-outro > .row .column, .timeline-section .section-heading + .row .column {
max-width: 800px !important;
}
.image-section figcaption {
max-width: 800px !important;
margin: 2rem auto 0 auto !important;
}
figcaption.description {
max-width: 800px !important;
margin: 2rem auto 0 auto !important;
}
.video-section .description {
max-width: 800px !important;
margin: 2rem auto 0 auto !important;
}






/* Original Code */

@media only screen and (min-width: 41.05em) {
body[data-uri="/"] .hero .tagline, .hero .tagline-sub-heading { font-size: 3.5rem; }
}

#credentials_grid {
display: flex;
flex-flow: row wrap;
justify-content: center;
align-items: flex-start;
}

#credentials_grid > a {
flex: 0 0 calc(50% - 0.5rem);
max-width: calc(50% - 0.5rem);
width: 100%;
}

#credentials_grid > a > img {
display: block;
max-width: 90%;
max-height: 150px;
margin: 0.5rem auto;
float: none;
}

@media screen and (min-width: 768px) {
#credentials_grid > a {
flex: 0 0 calc(25% - 0.5rem);
max-width: calc(25% - 0.5rem);
width: 100%;
}

#credentials_grid > a > img { max-width: 150px; }

}
body[data-uri=""] .intro.fragment { margin-top: 10rem; }
.p-refund-policy {
  text-align: center;
  position: absolute;
  bottom: -3rem;
  left: 0;
  right: 0;
}
/* hides the location radio buttons from consultation form */
.consultation-form .expand-link + p,
.consultation-form .radio-field { display: none; }



/* Fancy Announcements ------------------------------ */
.color-scheme-10-background-color .title { font-size: 48px; margin-bottom: 20px; }
.color-scheme-10-background-color .subtitle { font-size: 20px; }
.color-scheme-10-background-color .section-container {
    background-color: none;
}
.color-scheme-10-background-color .section-container::before,
.color-scheme-10-background-color .section-container::after {
    background-color: none;
    display: none;
}
.color-scheme-10-background-color .announcement-section {
    padding: 0;
    margin: 0;
}
.color-scheme-10-background-color .section-container {
    background: none;
}
.color-scheme-10-background-color .section-content {
    background: #fff;
    background: url("https://s3.amazonaws.com/eii-lucid/assets/2406/384263/original.jpg?1635890360");
    background-size: cover;
    background-repeat: no-repeat;
    margin: 0 auto;
    padding: 10px 40px;
    -webkit-box-shadow: 0px 6px 14px 0px #0005; 
    box-shadow: 0px 6px 14px 0px #0005;
}
.color-scheme-10-background-color .row.announcement-wrapper {
    position: relative;
    background: #fff;
    padding: 50px;
    margin: 0;
    min-width: 100%;
    -webkit-box-shadow: 0px 6px 14px 0px #0005; 
    box-shadow: 0px 6px 14px 0px #0005;
}
.color-scheme-10-background-color .column {
    margin-right: 2rem;
}
.color-scheme-10-background-color .column.shrink {
    border-right: none;
    margin-right: 0;
}
.color-scheme-10-background-color a.button { margin: 120px 0 0 0; }
@media (max-width: 1000px) {
    .color-scheme-10-background-color,
    .color-scheme-10-background-color .section-container { padding: 0; }
    .color-scheme-10-background-color .section-container .section-content { padding: 1rem 3rem; }
    .color-scheme-10-background-color .section-heading { padding: 0; }
    .color-scheme-10-background-color .announcement-wrapper { border-right: none; flex-direction: column; }
    .color-scheme-10-background-color .column:first-child { border-right: none; margin: 0; }
    .color-scheme-10-background-color a.button { margin: 2rem 0 0 0; }
}

@media (max-width: 960px) {
.color-scheme-10-background-color .title {
    text-align: center !important;
    line-height: .5em;
    font-size: 1.6em;
}
.color-scheme-10-background-color .subtitle { 
    text-align: center !important; 
}
.color-scheme-10-background-color.announcement-section .title {
    line-height: 1em;
    font-size: 1.6em;
}
}

/* BMI Calculator using fancy announcements --------- */
.color-scheme-10-background-color.bmi-calculator-section .section-content { padding: 10%; }
.bmi-calculator-section .button { margin-top: 2rem; }
.color-scheme-10-background-color.bmi-calculator-section .section-content::after {
    content:'';
    width: 90%;
    height: 80%;
    display: block;
    position: absolute;
    top: 10%;
    left: 5%;
    background: #fff;
    z-index: -1;
}
@media (max-width: 640px) {
    .color-scheme-10-background-color.bmi-calculator-section .section-content::after {
        width: 90%;
        height: 90%;
        top: 5%;
        left: 5%;
    }
}

/* Reviews: Increased Padding ---------------------- */
.reviews-item { padding: 3rem; }
@media (max-width:1024px) { .reviews-item { padding: 1.5rem; }
}

/* Navigation C: Increasing hit areas on desktop and mobile for better usability */ @media (max-width: 1024px) { .nav-items nav a { padding: 1rem 0 !important; } .navigation-c.fixed-navigation-mobile nav { padding: 0; } .navigation-c.fixed-navigation-mobile a.slide-menu__control, .navigation-c.fixed-navigation-mobile a:nth-last-child(2) { margin-right: 0; } } /* removing author underline from blog card section */ a .menu-item-subtitle, a.blog-card-item .blog-card-item-subtitle { border-bottom: none; }
/* Photo set section revisions */ @media (min-width: 1024px) { .photo-set-section figcaption { padding: 0 2rem; } } .photo-set-section figcaption strong { display: block; }
/* add more side padding to buttons */ .layout .tns-controls button span, .layout a.button span, .layout button.button span, .overlay-section .button span { padding: 1.25rem 3rem; }
/* Animation: Animate section content only instead of entire section */ section.animated.effect-fade-in-up { animation-play-state: paused !important; animation-direction: reverse !important; z-index: 1; } section.animated.effect-fade-in-up.back-stack { z-index: 0; } section.animated.effect-fade-in-up .section-content { animation: fadeInUp 1.25s cubic-bezier(.76,0,.24,1) 1 !important; z-index: 2; position: relative; } section.back-stack.animated.effect-fade-in-up .section-container { background-color: transparent; }
.animate.effect-fade-in-up { visibility: visible; } .animate.effect-fade-in-up .section-container { visibility: hidden; }
/* Slideshow section mods */ .slideshow-section .slideshow { overflow: hidden; } .slideshow-section .swiper-button-prev:after, .slideshow-section .swiper-container-rtl .swiper-button-next:after { content: 'prev'; background: radial-gradient(100% 50% at 0% 50%, rgba(0,0,0,0.4) 99%, rgba(0,0,0,0) 100%) no-repeat 50% 50% / 100% 100%; padding: 3.5rem 2rem; color: #fff; } .slideshow-section .swiper-button-next:after, .slideshow-section .swiper-container-rtl .swiper-button-prev:after { content: 'next'; background: radial-gradient(100% 50% at 100% 50%, rgba(0,0,0,0.4) 99%, rgba(0,0,0,0) 100%) no-repeat 50% 50% / 100% 100%; padding: 3.5rem 2rem; color: #fff; } .slideshow-section .swiper-button-next, .slideshow-section .swiper-button-prev { background-color: transparent !important; }
/* Navigation: Fade In Animation */ @media screen and (min-width: 1024px) { .navigation nav { animation: fadeIn .8s  .3s cubic-bezier(.76,0,.24,1) both; } .navigation .logo { animation: fadeIn .8s  0s cubic-bezier(.76,0,.24,1) both; } } @keyframes fadeIn { 0% {opacity:0;} 100% {opacity:1;} }
/* Bar / Navigation > Homepage: Move static navigation closer to the top of page for desktop resolutions */ @media (min-width: 1024px) { .home-page .nav-unstack { top: 20px; } }
/* Pods and feature cards better spacing and left alignment */ @media (min-width: 600px) { section.features-card-section .features-card-item { padding: 0 3rem; } } @media (max-width: 1024px) { section.pods-section .pods-items h2 { margin-top: .5rem; } } section.pods-section .pods-items p, section.pods-section .pods-items h2, .pods-items .pods-item-content { text-align: left; }

/* Textblock Columns: Center images and svgs  */ .textblock-columns-3-section svg, .textblock-columns-3-section p svg, .textblock-columns-2-section svg, .textblock-columns-2-section p svg, .textblock-columns-3-section img, .textblock-columns-3-section p img, .textblock-columns-2-section img, .textblock-columns-2-section p img { margin: 1rem auto; display: block; }
/* Video Wide: Remove space between video wide sections and next section */ section.section.video-looping-wide-section { padding-bottom: 0; }
/* Reviews: Increased Padding */ .reviews-item { padding: 3rem; } @media (max-width:1024px) { .reviews-item { padding: 1.5rem; } }
/* Pods: Remove bottom gap on pods section set to front */ @media (min-width:1024px) { .pods-section.front-stack .section-container:after { bottom: 0rem; }
.pods-section .section-container { padding-bottom: 0; margin-bottom: -2rem; } }
/* Mega Menu: Style Adjustments */ .color-scheme-1 .multi-column-menu .all-pages li { border-bottom: none; height: auto; }
.color-scheme-1 .multi-column-menu .all-pages li { border-bottom: none; }
.overlay-menu .multi-column-menu a { width: 100%; }
.overlay-menu .multi-column-menu .group-name { font-weight: 400;}
.color-scheme-1 .overlay-menu-icons .menu-icon { border:none }
.multi-column-menu img { width: 100%; }
.multi-column-menu>div, .multi-column-menu>div:only-child { max-width: initial; }
.multi-column-menu { max-width: 100%; }
.menu-icons .menu-icon { padding: 0 1rem; }
.overlay-menu .multi-column-menu a, .overlay-menu .multi-column-menu a:hover { padding: 1rem 0; line-height: 1.2; height: initial; }
.overlay-menu .multi-column-menu li { height: initial } /* left align all paragraphs on mobile resolutions */ @media (max-width:640px) { p { text-align: left !important; } }
/* Hero: Unzoom video */ .hero-video video { width: 100vw !important; height: 100vh !important; object-fit: cover !important; }
/* Reduce card item paddings on mobile */ @media (max-width: 1024px){ .menu-photo-card-content,  .features-card-item { padding: 1.5rem !important; } }

body[data-uri="/cost-and-financing"] section[data-lucid-group="Menu Photo (1)"] h3 { display: none; }
body[data-uri="/cost-and-financing"] section[data-lucid-group="Menu Photo (1)"] .photo-box:before { padding-bottom: 30%; }

/* Textblock Column 2 Grid Layout */
section.color-scheme-21 {
    &:not(:has(.section-description, .section-outro)) {
        & .column:has(.image) {
            grid-row: span 2;
        }
    }

    & .section-content {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
        gap: 0px 0px;
        grid-auto-rows: min-content;

        @media (max-width:800px) {
            grid-template-columns: 1fr;
        }

        & .content-row {
            & .column {
                & ul.ruled-list:has(+ .buttons-container) {
                    padding: 0;

                    & li {
                        display: flex;
                        padding: 20px 0;
                        margin: 0;

                        &::before {
                            content: '';
                            height: 1lh;
                            aspect-ratio: 1;
                            display: inline-block;
                            margin-right: 8px;
                            background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGNpcmNsZSBjeD0iMTAuNzAzIiBjeT0iMTAuODYiIHI9IjEwIiBmaWxsPSIjMDc5MjUyIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Im05LjQ0MSAxMS42NCA1LjU4Ni01LjU4NSAxLjYxMyAxLjYxMy03LjEzMSA3LjEzMS0uMDY4LjA2OC0zLjU5My0zLjU5NEw3LjQ2IDkuNjZsMS45OCAxLjk4WiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg==");
                            background-size: cover;
                            margin-left: 10px;
                        }
                    }
                }

                &:not(:has(>.image)) {
                    grid-row: span 2;

                    & .section-richtext {
                        justify-content: center;
                        display: flex;
                        flex-flow: column;

                    }
                }
            }
        }
    }

    & .section-description,
    .section-outro {
        margin: 0 !important;

        & .row {
            display: contents;

            & .column {
                height: 100%;
                justify-content: center;
            }
        }
    }

    & .section-heading {
        grid-column: span 2;
    }

    & .section-description:has(+ .content-row .column-2 >.image) {
        order: 2;

        &+.content-row .column-2 {
            order: 3;
        }
    }

    & .section-description {

        & .column {
            display: contents;

            & .section-richtext {
                flex: 1;
            }
        }
    }

    & .section-outro,
    .section-description {

        & .section-richtext {
            padding: var(--custom-spacing-two) !important;
            background: #413C71;
            margin: 0;

            & * {
                margin-top: 0 !important;
                color: #fff;
                text-align: center;
            }

            & blockquote {
                @media (min-width:1024px) {
                    font-size: 25px !important;

                    &+p strong {
                        font-size: 20px !important;
                        transform: none;

                    }
                }
            }
        }
    }

    &[class*="textblock-columns"] .content-row>.column {
        background: #fff;
        padding: var(--custom-spacing-three) !important;

        &:has(.image) {
            padding: 0 !important;

            & .image {
                margin: 0;
                height: 100%;

                & img {
                    margin: 0 !important;
                    height: 100% !important;
                    object-fit: cover;
                }
            }
        }
    }

    & .content-row {
        display: contents;
    }

    &:has(+section.color-scheme-20) {
        padding-bottom: 0;
    }

    &+style+section.color-scheme-21:not(:has(.section-heading)),
    +section.color-scheme-21:not(:has(.section-heading)) {
        padding-top: 0;
    }
}

section.color-scheme-20 {
    background-color: transparent !important;
    padding-top: 0;

    & .section-container {
        background-color: transparent;
        padding: 0 1rem;

        & .section-content {
            padding: var(--custom-spacing-two) !important;
            background-color: #25215E;
        }

    }

    & .column {
        flex: 1 !important;
    }

    &.wildcard-section {
        & .section-richtext:not(:has(p)) {
            display: flex;

            &>* {
                flex: 1;
            }

        }

    }

    & figure {
        & img {
            box-shadow: none;
        }
    }
}



/* End of Textblock Column 2 Grid Layout */

:root {

  --custom-spacing-two: 40px;
  --custom-spacing-three: 80px;

}
@media (max-width:1024px) {
  :root {
      --custom-spacing-two: 20px;
      --custom-spacing-three: 40px;

  }
}

@media (max-width:640px) {
  :root {
      --custom-spacing-three: 20px;
  }
}