@keyframes infiniteScrollBg {
    0% {
      transform: translate(0, 100%);
    }
    100%{
      transform: translate(0, -150%);
    }
}
.page-template-location-landing-page .cstm_footer{
    margin-top: 0;
}
.section_spacing{
    padding: 100px 0;
}
.white_section{
    background-color: #fff;
}
.white_section h2{
    color: #444444;
}
.grey_section{
    background-color: #EEEEEE;
}
.grey_section h2{
    color: #444444;
}
.green_section{
    background-color: #287D82;
}
.green_section h2{
    color: #fff;
}
.dark_section{
    background-color: #444444;
}
.dark_section h2{
    color: #fff;
}
.two_col_grid__row{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 80px;
}
.two_col_grid__img_col img{
    max-width: 100%;
    filter: drop-shadow(0px 0px 16px #D0B762);
    border-radius: 10px;
}
.landing_sec h2{
    font-family: 'Outfit';
    font-weight: 900;
    font-size: 60px;
    line-height: 120%;
    position: relative;
    padding-bottom: 12px;
}
.landing_sec h2::after{
    content: '';
    position: absolute;
    bottom: -5px;
    /* left: 0; */
    background-color: #D0B762;
    width: 60px;
    height: 5px;
}
.two_col_grid__detail_col p{
    font-family: 'Outfit';
    font-weight: 500;
    font-size: 16px;
    line-height: 150%;
    margin: 25px 0;
}
.grid_60_40__row{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px;
}


/* odd grid */
.odd_grid .two_col_grid__img_col{
    order: 1;
}
.odd_grid .two_col_grid__detail_col{
    order: 2;
}
/* even grid */
.even_grid .two_col_grid__img_col{
    order: 2;
}
.even_grid .two_col_grid__detail_col{
    order: 1;
}

.landing_banner{
    background-color: #D0B762;
    position: relative;
    min-height: 600px;
    overflow: hidden;
    display: flex;
    align-items: center;
}
.landing_banner__wrapper{
    z-index: 10;
    position: relative;
}
.landing_banner__col_one{
    width: 50%;
}
.landing_banner__title{
    font-size: 50px;
    font-family: 'Outfit';
    font-weight: 900;
    color: #fff;
    line-height: 120%;
    margin-bottom: 15px;
}
.landing_banner__desc{
    font-size: 16px;
    font-family: 'Outfit';
    font-weight: 400;
    color: #fff;
    opacity: 0.8;
    line-height: 150%;
    margin-bottom: 30px;
}
.landing_cta__btn{
    font-size: 13px;
    font-family: 'Outfit';
    font-weight: 700;
    color: #fff;
    line-height: 150%;
    text-transform: uppercase;
    display: inline-block;
    padding: 13px 15px;
    background-color: #287D82;
    box-shadow: 3px 3px 5px -1px #287D82;
    border-radius: 4px;
    transition: all 0.3s ease;
    letter-spacing: 0.07em;
    min-width: 200px;
    width: max-content;
    text-align: center;
}
.landing_cta__btn:hover{
    box-shadow: 6px 6px 5px -1px #287d82;
    color: #fff;
}
.landing_cta__btn:focus{
    color: #fff;
}
.landing_banner__animation{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; 
}
.landing_banner__animation img{
    object-fit: cover;
    position: absolute;
    box-shadow: 0 3px 6px rgb(0 0 0 / 20%);
    border-radius: 5px;
    bottom: 0;
}
.landing_banner__animation img:nth-child(1){
    max-width: 450px;
    max-height: 450px;
    top: 65px;
    right: 150px;
    z-index: 3;
    animation: infiniteScrollBg 15s linear infinite;
}
.landing_banner__animation img:nth-child(2){
    max-width: 335px;
    max-height: 250px;
    bottom: 85px;
    right: 545px;
    z-index: 2;
    opacity: 0.4;
    filter: blur(1px);
    animation: infiniteScrollBg 25s linear infinite;
}
.landing_banner__animation img:nth-child(3){
    max-width: 295px;
    max-height: 235px;
    right: 0;
    bottom: 64px;
    opacity: 0.8;
    filter: blur(3px);
    z-index: 1;
    animation: infiniteScrollBg 35s linear infinite;
}
.landing_banner__animation svg{
    position: absolute;
}
.landing_banner__animation svg.landing_banner_square_one{
    top: 50%;
    transform: translateY(-50%);
    animation: infiniteScrollBg 21s linear infinite;
}
.landing_banner__animation svg.landing_banner_square_two{
    top: -70px;
    left: 25%;
    animation: infiniteScrollBg 24s linear infinite;
}
.landing_banner__animation svg.landing_banner_square_three{
    bottom: -70px;
    left: 30%;
    animation: infiniteScrollBg 27s linear infinite;
}
.landing_banner__animation svg.landing_banner_square_four{
    right: 0;
    animation: infiniteScrollBg 24s linear infinite;
}

/* banner bottom strip */
.banner_bottom__strip{
    background-color: #287D82;
    padding: 15px 0;
}
.banner_bottom__row{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 175px;
    place-items: center;
    text-align: center;
    color: #fff;
    font-size: 14px;
    font-family: 'Outfit';
    font-weight: 700;
    text-transform: uppercase;
    line-height: 150%;
}
.banner_bottom__col{
    position: relative;
}
.banner_bottom__col svg{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.banner_bottom__col:nth-child(1) svg{
    left: 95%;
}
.banner_bottom__col:nth-child(2) svg{
    left: 120%;
}
.banner_bottom__col img{
    display: none;
}

/* Get your suites noticed */
.overlap_img_col{
    position: relative;
}
.overlap_img_col img{
    max-width: 380px;
}
.overlap_img_col img:nth-child(2){
    position: absolute;
    right: 0;
    bottom: 0;
}

/* Become a SuiteFinder Fave */
.suite_fave_box{
    background-color: #444444;
    box-shadow: 0px 0px 16px 6px #D0B762;
    padding: 75px;
    text-align: center;
    position: relative;
}
/* .suite_fave_box::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    border-left: 40px solid #d0b762;
    border-top: 40px solid #d0b762;
    border-right: 40px solid transparent;
    border-bottom: 40px solid transparent;
}
.ribbon-star{
    width: 25px;
    height: 25px;
    position: absolute;
    left: 24px;
    top: 24px;
    display: block;
    animation: zoom-in-zoom-out 2.5s ease-out infinite;
} */
.suite_fave_box h2{
    font-family: 'Outfit';
    font-weight: 900;
    font-size: 60px;
    line-height: 120%;
    color: #EEEEEE;
    position: relative;
    padding-bottom: 12px;
}
/* .suite_fave_box h2::after{
    content: '';
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #D0B762;
    width: 60px;
    height: 5px;
} */
.suite_fave_box p{
    color: #EEEEEE;
    width: 70%;
    margin: 45px auto;
}

/* Customize your profile to stand out */
.green_section h2{
    color: #fff;
}
.green_section p{
    color: #fff;
}
.green_section .landing_cta__btn{
    background-color: #D0B762;
    box-shadow: 3px 3px 5px -1px #D0B762;
}
.green_section .landing_cta__btn:hover{
    box-shadow: 6px 6px 5px -1px #D0B762;
    color: #fff;
}

/* pricing */
.pricing_sec h2{
    margin-bottom: 50px;
}
.pricing_sec h2::after{
    background-color: #287D82;
}
.grid_60_40__detail_col{
    grid-column: span 1;
}
.grid_60_40__pricing_col{
    grid-column: span 2;
}
.pricing_sec .grid_60_40__detail_col{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.pricing_card_grid{
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 22px;
}
.landing_pricing_card{
    padding: 20px;
    background-color: #fff;
    max-width: 376px;
    grid-column: span 3;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.fave_pricing_card::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    border-left: 40px solid #d0b762;
    border-top: 40px solid #d0b762;
    border-right: 40px solid transparent;
    border-bottom: 40px solid transparent;
}
.landing_pricing_card h3{
    font-size: 16px;
    font-family: 'Outfit';
    font-weight: 900;
    letter-spacing: 0.15em;
    line-height: 120%;
    text-transform: uppercase;
    margin-bottom: 18px;
    color: #D0B762;
}
.standard_pricing_card h3{
    color: #BDBDBD;
}
.fave_pricing_card h3{
    color: #D0B762;
}
.price_box{
    color: #444444;
    margin-bottom: 20px;
}
.landing_offer_price{
    font-size: 20px;
    font-family: 'Outfit';
    font-weight: 600;
    line-height: 120%;
    margin-bottom: 0;
}
.landing_offer_price sup,
.landing_offer_price span{
    font-weight: 900;
}
.landing_offer_price sup{
    font-size: 28px;
}
.landing_offer_price span{
    font-size: 50px;
}
.landing_offer_time{
    font-size: 12px;
    font-family: 'Outfit';
    font-weight: 500;
    line-height: 120%;
    text-decoration: underline;
}
.landing_regular_price{
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 14px;
    font-family: 'Outfit';
    font-weight: 500;
    line-height: 120%;
    color: #BDBDBD;
}
.landing_feature_li{
    font-size: 14px;
    font-family: 'Outfit';
    font-weight: 500;
    line-height: 120%;
    color: #444444;
    text-align: left;
    padding-left: 35px;
    margin-bottom: 18px;
    position: relative;
}
.landing_feature_li:last-child{
    margin-bottom: 0;
}
.landing_feature_li::before{
    content: '';
    background-image: url('../images/landing-list-item-icon.png');
    background-repeat: no-repeat;
    width: 23px;
    height: 6px;
    position: absolute;
    left: 0;
    top: 6px;
}
.include_standard{
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 4px;
}
.include_standard p:first-child{
    color: #287D82;
    font-size: 14px;
    font-family: 'Outfit';
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    line-height: 120%;
    text-decoration: underline;
    margin: 0;
}
.include_standard p:nth-child(2){
    color: #D0B762;
    font-size: 25px;
    font-family: 'Outfit';
    font-weight: 900;
    line-height: 120%;
    margin: 0;
}
.extra_pricing_row{
    background-color: #287D82;
    padding: 5px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    place-items: center;
    grid-column: span 6;
    text-align: center;
}
.extra_pricing_row .extra_pricing_col{
    width: 100%;
}
.extra_pricing_row .extra_pricing_col:first-child{
    border-right: 1px solid #fff;
}
.extra_pricing_row .extra_pricing_col p{
    font-family: 'Outfit';
    font-weight: 700;
    font-size: 14px;
    line-height: 120%;
    color: #fff;
    margin-bottom: 3px;
}
.extra_pricing_row .extra_pricing_col span{
    font-family: 'Outfit';
    font-weight: 500;
    font-size: 12px;
    line-height: 120%;
    color: #fff;
}
/* brand Landing Start css */
.cst-best-ribbon.brand_landingribbon:before{
    border: 4px solid #114f52;
    border-left-color: #114f52;
    border-top-color: transparent;
    border-right-color: transparent;
}
.cst-best-ribbon:after{
    border-color: #287D82;
    border-bottom-color: transparent;

}
.regi_brandlanding_banner .cst-best-ribbon.brand_landingribbon,
.suite_fave_box .cst-best-ribbon.brand_landingribbon{
    background: #287D82;
}
.landing_sec .suite_fave_box::before{
    content: unset;
}
/*brand Landing ENd table css */
/***** MEDIA QUERIES *****/
@media screen and (max-width:991px) {
    .landing_banner__animation{
        display: none;
    }
    .landing_banner{
        min-height: auto;
    }
    .landing_banner__wrapper{
        padding-top: 50px;
    }
    .landing_banner__col_one{
        width: 100%;
    }
    .landing_banner__title{
        font-size: 35px;
    }
    .banner_bottom__row{
        grid-template-columns: 1fr;
        gap: 35px;
    }
    .banner_bottom__col svg{
        display: none;
    }
    .banner_bottom__col img{
        display: inline-block;
        width: 50px;
        position: absolute;
    }
    .banner_bottom__col:first-child img{
        top: 5px;
    }
    .banner_bottom__col:nth-child(2) img{
        top: 5px;
        left: -50px;
        transform: rotateY(180deg);
    }
    .section_spacing{
        padding: 50px 0;
    }
    .two_col_grid__row{
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .overlap_img_col img{
        max-width: 100%;
    }
    .overlap_img_col img:first-child{
        display: none;
    }
    .overlap_img_col img:nth-child(2){
        position: unset;
    }
    .landing_sec h2{
        font-size: 30px;
    }
    .two_col_grid__detail_col p{
        font-size: 14px;
    }
    .landing_cta__btn{
        padding: 10px;
    }
    /* even grid */
    .even_grid .two_col_grid__img_col{
        order: 1;
    }
    .even_grid .two_col_grid__detail_col{
        order: 2;
    }
    .suite_fave_box{
        padding: 30px 0;
    }
    .suite_fave_box h2{
        width: 80%;
        margin: 0 auto;
    }
    .suite_fave_box p{
        width: 100%;
    }
    .grid_60_40__row{
        grid-template-columns: 1fr;
        gap: 60px 0;
    }
    .landing_pricing_card{
        max-width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .banner_bottom__row{
        gap: 30px;
    }
    .banner_bottom__col img{
        width: 40px;
    }
    .pricing_card_grid{
        gap: 22px;
    }
    .landing_pricing_card{
        grid-column: span 6;
    }
    .extra_pricing_row{
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 15px 25px;
    }
    .extra_pricing_row .extra_pricing_col:first-child{
        border-bottom: 1px solid #fff;
        border-right: none;
        padding-bottom: 20px;
    }
}