.home .site-header .wrap {
    max-width: 100%;
    padding: 0 !important;!i;!;
}

.home-swiper-container {
    max-width: 100vw;
    height: 75vh;
}

.stacked {
    display: grid;
    grid-template:
        'stack';
}

.stacked > * {
    grid-area: stack;
}

.home-slider-title {
    max-width: 500px;
}

.home-slider-title-text.main-title {
    color: #fff;
}

.home-slider-description {
    color: #fff;
}

.home-slider-title .primary-button {
    background-color: transparent;
    border: 1px solid #fff;
}

.home-slider .swiper-slide {
    background-color: #000;
}

.home-slider .swiper-slide img {
    opacity: 0.6;
    height: 100%;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.home-slider-title .primary-button:hover {
    color: #bb5927;
    border-color: #bb5927;
}

.home-slider-navigation .swiper-button-next, .home-slider-navigation .swiper-button-prev {
    position: relative;
    background-color: rgb(40 75 23 / 90%);
    padding: 20px 15px;
    transition: 0.3s;
}

.home-slider-navigation {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: end;
    grid-gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
    margin-top: -100px;
}

.home-slider-navigation .swiper-button-next:after, .home-slider-navigation .swiper-button-prev:after {
    font-size: 30px;
}

.home-slider-navigation .swiper-button-next:hover, .home-slider-navigation .swiper-button-prev:hover {
    background-color: rgb(187 89 39 / 90%);
}

.flex-container {
    display: flex;
    align-items: center;
    justify-content: center;
    grid-gap: 50px;
    flex-wrap: wrap;
}

.section {
    padding: 75px 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 90vw;
}

.home-section-2 .flex-item {
    flex: 0 1;
}

.home-section-2 img {
    max-width: 325px;
}

.home-section-2.our-park-section-2 img {
    max-width: 200px;
}

.home-section-3-bg-overlay {
    background-image: linear-gradient(0deg, rgba(40, 75, 23, 1) 35%, rgb(40 75 23 / 70%) 100%);
    padding-top: 50px;
}

.home-section-3, .home-section-5 {
    padding: 0 !important;!i;!;
    background-size: cover;
}

.text-white {
    color: #fff !important;!i;!;
}

.secondary-title {
    font-size: 48px;
    text-align: center;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    grid-gap: 25px;
    color: #4c412d;
    flex-wrap: wrap;
}

.secondary-title:before {
    content: "";
    background-image: url(./images/title-icon-left-1.png);
    width: 127px;
    height: 22px;
    display: block;
    margin-top: 15px;
}

.secondary-title:after {
    content: "";
    background-image: url(./images/title-icon-right-1.png);
    width: 127px;
    height: 22px;
    display: block;
    margin-top: 15px;
}

.secondary-title.text-white:before {
    content: "";
    background-image: url(./images/title-icon-left.png);
    width: 127px;
    height: 22px;
    display: block;
    margin-top: 15px;
}

.secondary-title.text-white:after {
    content: "";
    background-image: url(./images/title-icon-right.png);
    width: 127px;
    height: 22px;
    display: block;
    margin-top: 15px;
}

.flex-col {
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: center;
    align-items: center;
    grid-gap: 25px;
    line-height: 0;
}

.flex-row-3 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    grid-gap: 25px;
}

.flex-row-3 .flex-col {
    flex: 1 1 calc(33.33% - 16.67px);
}

.card {
    display: grid;
    grid-template:
        'stack';
    overflow: hidden;
    cursor: pointer;
    transition: all .7s cubic-bezier(.5,.12,.46,.88);
    transform-style: preserve-3d;
    transform: rotateY(0deg);
    aspect-ratio: 4/3;
    width: 100%;
    height: 100%;
}

.card > * {
    grid-area: stack;
    line-height: 0;
}

.card-bg-image {
    transition: all .7s cubic-bezier(.5,.12,.46,.88);
}

.card-content {
    display: flex;
    justify-content: center;
    transition: all .7s cubic-bezier(.5,.12,.46,.88);
    cursor: pointer;
    transform: rotateY(-180deg) translateZ(200px);
    transform-style: preserve-3d;
    backface-visibility: hidden;
}

.card-content-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 25px;
    grid-gap: 10px;
    text-align: center;
}

.card:hover .card-bg-image {
    background-color: rgb(0 0 0);
    transform: rotateY(180deg);
    transform-style: preserve-3d;
    z-index: 1;
}

.card:hover .card-content {
    transition: all .7s cubic-bezier(.5,.12,.46,.88);
    transform: rotateY(0deg) translateZ(0px);
    z-index: 2;
}

.card:hover .card-bg-image img {
    opacity: 0.3;
}

.card-bg-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    aspect-ratio: 4/3;
}

.card-content-inner p {
    margin: 0;
    color: #fff;
}

.card-content-inner h4 {
    color: #fff;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 38px;
}

.front-heading {
    display: flex;
    align-items: end;
    justify-content: center;
    background-image: linear-gradient(0deg, rgb(0 0 0) 0%, rgb(0 0 0 / 30%) 35%);
    position: relative;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    transition: all .7s cubic-bezier(.5,.12,.46,.88);
    padding: 25px;
    box-sizing: border-box;
}

.front-heading h4 {
    color: #fff;
    text-align: center;
    font-size: 38px;
    text-transform: uppercase;
    line-height: 1.25;
}

.card:hover .front-heading {
    transform: rotateY(180deg) translateZ(200px);
    z-index: 0;
    transition: all .7s cubic-bezier(.5,.12,.46,.88);
}

.home-section-3 a.primary-button.white-button {
    background-color: #fff;
    border-color: #fff;
    color: #1b5119;
}

.home-section-3 a.primary-button.white-button:hover {
    background-color: transparent;
    color: #fff;
}

.secondary-title-container p {
    color: #284b17;
    font-size: 20px;
    font-weight: 700;
}

.amenitiy {
    flex: 1 1 calc(33.33% - 16.67px);
    display: flex;
    grid-gap: 15px;
}

.amenity-icon img {
    max-width: 40px;!i;!i;!;
    height: auto;
    object-fit: contain;
    width: 100%;
}

.amenity-icon {flex: 1 1 calc(25% - 7.5px);}

.amenity-content {
    text-align: left;
    display: flex;
    flex-direction: column;
    grid-gap: 5px;
}

.amenity-content p {
    margin: 0;
}

.amenity-content h4 {
    margin: 0;
    font-size: 24px;
    color: #4c412d;
}

.home-section-5-bg-overlay {
    background-image: linear-gradient(0deg, rgba(187, 89, 39, 1) 10%, rgb(187, 89, 39, 0.6) 100%);
    padding-top: 50px;
}

.testimonials-swiper-container {
    max-width: 1200px;
    overflow: hidden;
}

.testimonial-author p {
    font-size: 26px;
    font-family: 'Muara', sans-serif;
    margin: 0;
}

.testimonial-content p {
    margin: 0;
}

.testimonial {
    display: flex;
    flex-direction: column;
    grid-gap: 15px;
}

.flex-fun {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    grid-gap: 50px;
}

.flex-fun-left {
    flex: 1 1 calc(25% - 25px);
}

.flex-fun-right {
    flex: 1 1 calc(75% - 25px);
}

.flex-fun-left img {
    max-width: 150px;
}

.flex-fun-left .flex-col {
    align-items: start;
    grid-gap: 0px;
}

.flex-fun-left p {
    margin: 20px 0;
    text-align: left;
}

.flex-fun-right .flex-row {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 50px;
}

.card-slide-up {
    flex: 1 1 calc(33.33% - 33.33px);
    aspect-ratio: 3/4.5;
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
    display: flex;
    align-items: end;
}

.card-slide-up:nth-child(5n-4) .card-slide {
    background-color: #bb5927;
}

.card-slide-up:nth-child(5n-3) .card-slide {
    background-color: #4aa135;
}

.card-slide-up:nth-child(5n-2) .card-slide {
    background-color: #284b17;
}

.card-slide-up:nth-child(5n-1) .card-slide {
    background-color: #4c412d;
}

.card-slide-up:nth-child(5n) .card-slide {
    background-color: #777d3f;
}

.card-slide-up .card-slide {
    padding: 15px;
    box-sizing: border-box;
    color: #fff;
    width: 100%;
    text-align: left;
}

.card-slide h4 {
    margin: 0;
    color: #fff;
    font-size: 26px;
}

.card-slide-hidden a {
    color: #fff;
}

.card-slide-hidden a:hover {
    text-decoration: underline;
}

.card-slide-hidden {
    transform: translateY(100%);
    position: fixed;
    transition: 0.3s;
	opacity: 0;
}

.card-slide-up:hover .card-slide-hidden {
    transform: translateY(0%);
    position: relative;
	opacity: 1;
}

.card-slide a {
    display: block;
    line-height: 1;
}

.home-section-7 {
    padding: 0 !important;!i;!;
    background-position: center bottom;
    background-size: cover;
    background-repeat: no-repeat;
}

.map-content .flex-col {
    background-color: rgb(255 255 255 / 85%);
    padding: 100px 50px 175px;
    
}

.map-content {
    max-width: 450px;
    z-index: 1;
}

.map-content p {
    text-align: left;
    margin: 0;
}

.map-content .flex-col {
    align-items: start;
}

.home-section-8 {
    margin-top: -25px;
}

.gallery-swiper {
    max-width: 100%;
    overflow: hidden;
}

.lg-backdrop.in {
    opacity: 0.7 !important;
}

.before-footer-image {
    line-height: 0;
}

.before-footer-image img {
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.book-now a {
    background-color: #284b17;
    color: #fff !important;!i;!;!i;!;
}

.home-section-6 {
    background-size: contain;
}

.section-divider {
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.title-bg {
    background-position: left bottom;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    padding: 60px 0;
}

.title-bg-section:nth-child(3n-1) .title-bg {
    background-image: url('./images/title-bg-1.png');
}

.title-bg-section:nth-child(3n) .title-bg {
    background-image: url('./images/title-bg-2.png');
}

.title-bg-section:nth-child(3n+1) .title-bg {
    background-image: url('./images/title-bg-3.png');
}

.things-section-3 .title-bg-section:nth-child(3n-2) .title-bg {
    background-image: url('./images/title-bg-1.png');
}

.things-section-3 .title-bg-section:nth-child(3n-1) .title-bg {
    background-image: url('./images/title-bg-2.png');
}

.things-section-3 .title-bg-section:nth-child(3n) .title-bg {
    background-image: url('./images/title-bg-3.png');
}

.title-bg .wrap {
    transform: translateY(-60%);
}

.title-bg-section > .flex-col {
    grid-gap: 75px;
}

.title-bg-section {
    padding-top: 0px !important;!i;!;
}

.amenities .flex-row {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 50px;
    align-items: center;
    text-align: left;
}

.amenities .flex-row > * {
    flex: 1 1 calc(50% - 25px);
}

.amenities .flex-col {
    grid-gap: 50px;
}

.amenities h3 {
    font-size: 36px;
}

.amenities .flex-row:nth-child(4n-3) h3 {
    color: #bb5927;
}

.amenities .flex-row:nth-child(4n-2) h3 {
    color: #4aa135;
}

.amenities .flex-row:nth-child(4n-1) h3 {
    color: #284b17;
}

.amenities .flex-row:nth-child(4n) h3 {
    color: #4c412d;
}

.our-park-section-4 .flex-col .wrap {
    display: flex;
    flex-direction: column;
    grid-gap: 75px;
}

.our-park-section-4 .flex-col .wrap .buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    grid-gap: 25px;
}

.rule {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 25px;
}

.rule .flex-item:last-child {
    flex: 1 1 calc(75% - 12.5px);
    text-align: left;
}

.rules {
    max-width: 900px;
    align-items: start;
}

.rule h3 {
    color: #4c412d;
    font-size: 26px;
}

.rules > .flex-row {
    display: flex;
    flex-direction: column;
    grid-gap: 15px;
}

.amenities img {
    aspect-ratio: 16/9;
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: center;
}

.things-section.flex-col {
    width: 100%;
    grid-gap: 75px;
}

.things-section > .wrap {
    max-width: 900px;
    width: 100%;
}

.things-section-3 > .flex-col {
    grid-gap: 75px;
}

.things-section-3 {
    padding-top: 0px !important;!i;!;
}

.rate-container {
    background-image: url(./images/rates-bg.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.rate-inner:nth-child(4n-3) .rate-overlay {background-image: linear-gradient(0deg, rgba(187, 89, 39, 1) 10%, rgb(187, 89, 39, 0.8) 100%);}

.rate-inner:nth-child(4n-2) .rate-overlay {background-image: linear-gradient(0deg, rgb(40 75 23) 10%, rgb(40 75 23 / 80%) 100%);}

.rate-inner:nth-child(4n-1) .rate-overlay {background-image: linear-gradient(0deg, #4aa135 10%, rgb(74 161 53 / 80%) 100%);}

.rate-inner:nth-child(4n) .rate-overlay {background-image: linear-gradient(0deg, #4c412d 10%, rgb(76 65 45 / 80%) 100%);}

.rate-overlay {
    padding: 50px 50px 0;
    box-sizing: border-box;
}

.rate-overlay > .flex-col .flex-row {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 50px;
}

.rate-overlay > .flex-col .flex-row > * {
    flex: 1 1 calc(50% - 25px);
}

.rate-first-image img {
    aspect-ratio: 16/9;
    object-fit: cover;
    object-position: center;
    cursor: pointer;
    transition: 0.3s;
}

.rate-content {
    text-align: left;
    align-items: start;
}

.rate-content > p {
    margin: 0;
}

.rate-table {
    color: #fff;
}

.rate-table tr, .rate-table td, .rate-table tbody {
    border: 0px;
}

th, td {
    padding: 10px;
    box-sizing: border-box;
}

th {font-weight: 700;}

.rates-section-3 {
    padding: 0px !important;
}

.rates-section-3 .wrap > .flex-col {
    grid-gap: 75px;
}

.rate-button {
    margin: 0 auto;
}

.rate-button .secondary-button {
    background-color: #fcf4e7;
    color: #284b17;
    border-color: #fcf4e7;
}

.rate-button .secondary-button:hover {
    background-color: transparent;
    color: #fcf4e7;
}

.rate-gallery {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 10px;
    align-items: center;
    margin-top: 10px;
}

.rate-gallery > * {
    flex: 1 1 calc(20% - 8px);
}

.gallery-image-r img {
    aspect-ratio: 16/9;
    width: 100%;
    object-fit: cover;
    object-position: center;
    cursor: pointer;
    transition: 0.3s;
}

.rate-section-divider {
    height: 150px;
    background-size: cover;
    background-position: left bottom;
    background-repeat: no-repeat;
}

.rate-inner:nth-child(4n-3) .rate-section-divider {
    background-image: url(./images/section-divider-brown.png);
}

.rate-inner:nth-child(4n-2) .rate-section-divider {
    background-image: url(./images/section-divider-green.png);
}

.rate-inner:nth-child(4n-1) .rate-section-divider {
    background-image: url(./images/section-divider-light-green.png);
}

.rate-inner:nth-child(4n) .rate-section-divider {
    background-image: url(./images/section-divider-dark-brown.png);
}

.rate-first-image img:hover {
    scale: 1.1;
}

.rate-first-image {
    overflow: hidden;
    display: block;
}

.gallery-image-r img:hover {
    scale: 1.1;
}

.contact-map-section {
    padding: 0 !important;!i;!;
    display: grid;
    grid-template:
        'stack';
}

.map iframe {
    height: 600px;
}

.map {
    line-height: 0;
    z-index: 1;
}


.contact-map-section > * {
    grid-area: stack;
    line-height: 0;
    width: 100%;
}

.contact-map-section .wrap {
    display: flex;
    align-items: stretch;
}

.contact-map-section .map-content .flex-col {
    height: 100%;
    box-sizing: border-box;
    padding: 50px;
}

.wpcf7-spinner {
    display: block !important;
}

.contact-form-inline p {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 20px;
}

.contact-form-inline p > * {
    flex: 1 1 calc(50% - 10px);
}

.contact-form h3 {
    font-size: 48px;
    color: #fff;
    text-align: center;
}

.contact-address a {
    text-decoration: underline;
}

.wpcf7-not-valid-tip {
    color: #fff;
    text-align: left;
}

.wpcf7-response-output {
    color: #fff !important;!i;!;
    text-align: center;
}

.site-inner:not(.home .site-inner) {
    background-image: url(./images/body-bg.png);
    background-position: center;
    background-size: 90vw;
    background-attachment: fixed;
    background-repeat: no-repeat;
}

.home-section-2 {
    background-color: #fff;
}

.testimonials {
    max-width: 100%;
}

.home-section-2 .flex-container {
    max-width: 900px;
    margin: 0 auto;
}

.home-section-2 .flex-item:last-child {
    flex: 1 1;
}

.site-header:not(.home .site-header) {
    height: 50vh;
}

.site-footer .wrap p:last-child {
    display: none;
}

@media (max-width:767px){
    
    .home-section-2 .flex-item {
        text-align: center;
    }
    
    .home-section-2 .flex-container {
        grid-gap: 0;
        flex-direction: column;
    }

    .flex-row-3 {
        flex-direction: column;
        grid-gap: 50px;
    }

    .flex-fun-right .flex-row {
        flex-direction: column;
    }

    .contact-map-section .map-content .flex-col, .map-content .flex-col {
        padding: 25px 25px 100px;
    }

    .home-slider-navigation .swiper-button-next, .home-slider-navigation .swiper-button-prev {
        padding: 5px;
    }

    .home-slider-navigation .swiper-button-next:after, .home-slider-navigation .swiper-button-prev:after {
        font-size: 16px;
    }

    .home-slider-navigation {
        margin-top: -50px;
    }

    .amenities .flex-row {
        flex-direction: column;
        align-items: start;
        grid-gap: 25px;
    }

    .amenities .flex-col {
        grid-gap: 25px;
    }
    
    .contact-form-inner {
        flex-direction: column;
    }

}

@media(max-width: 960px){
    
    .section {
        padding: 50px 0;
    }
    
    .home-section-3-bg-overlay, .home-section-5-bg-overlay {
        padding: 50px 0;
    }
    
    .amenitiy {
        flex: 1 1 calc(50% - 25px);
    }
    
    .flex-fun {
        flex-direction: column;
    }
    
    .flex-fun-left .flex-col {
        align-items: center;
    }
    
    .flex-fun-left p {
        text-align: center;
    }

    .secondary-title {
        flex-direction: column;
        grid-gap: 15px;
    }

    .title-bg .wrap {
        transform: translateY(-20%);
    }

    .title-bg {
        background-position: center bottom;
    }

    .our-park-section-4 .flex-col .wrap {
        grid-gap: 50px;
    }

    .title-bg-section > .flex-col {
        grid-gap: 25px;
    }
    
    .things-section.flex-col {
        grid-gap: 25px;
    }

    .rate-overlay {
        padding: 50px 25px 0px;
    }
    
    .rate-overlay > .flex-col .flex-row {
        flex-direction: column;
        grid-gap: 25px;
    }
    
    .flex-col.rate-content {
        align-items: center;
    }

    .rates-section-3 .wrap > .flex-col {
        grid-gap: 25px;
    }

    .rate-section-divider {
        height: 100px;
    }

    .site-footer .wrap {
        flex-direction: column;
        grid-gap: 10px;
        padding: 10px 0px !important;
    }

    footer.site-footer {
        margin-top: -51px;
    }

}