:root {
    --nr_light_green: #7791a5;
    --nr_dark_green:#b4b1ac;
    --nr_light_blue: #b9874d;
    --nr_dark_blue: #435562;
    --wl_pink: #abbaa7;
    --wl_light_pink: #667468;
}

:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):before, :is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):after {
    /* filter:hue-rotate(156deg) saturate(0.8) brightness(1.2); */
    background-image: url(/widgets/weddinglanding/assets/sssurfw.svg);
    --bg:#abbaa7;
}

html {
    scroll-behavior: smooth;
}
a {
    scroll-margin-top: 11em;
    scroll-padding-top: 20em;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "lato",sans-serif;
    font-weight: 500;
    color:var(--nr_dark_blue);
}


.cc_hero_wrap {
    position:relative;
    width:100%;
    height:0;
    padding-bottom:25%;
}
.cc_hero_wrap_img {
    width:100%;
    max-width:100%;
    position:absolute;
    top:0;
    left:0;
}
.cc_hero_wrap_logo {
    width: 40%;
    z-index: 1;
    position: absolute;
    margin-left: 30%;
    top: 10%;
}
.imgcredit {
    position: absolute;
    bottom: 0rem;
    right: 19rem;
    color:#fff;
    font-size: .7rem;
}
.ccfont {
    font-family: "lato",sans-serif;
}

h1 {
    color:#00529C;
    font-size:2.5rem;
}

h2 {
    color:var(--nr_dark_blue);
}

a:hover {
    color: var(--wl_light_pink);
}

/* #newsletter_signup_wrap h1{color: #008285; font-size:5em;} */

.center  {
    text-align:center;
}
section.cc_gap {
    margin-top:5rem;
    /* margin-bottom:4rem; */
}
section.cc_gap h2 {
    color:var(--nr_dark_blue);
    font-size: 2.9rem;
    font-weight: 500;
    text-transform: none;
    line-height: 1.1;
    margin: .25em;
}
#prizes {
    margin-top:3rem;
}
.prizes_wrap {
    justify-content: center;
}
.prize {
    width:20em;
    margin:2rem;
}
.prize_image img {
    max-width:100%;
}
.prize_level {
    font-family: "lato",sans-serif;
    font-size:2rem;
    color:#00529C;
    font-weight: 700;
    text-transform: none;
}
.prize_description {
    font-size:1.1rem;
}

.readable.narrow {
    text-align:center;
    max-width:110ch;
    margin-left:auto;
    margin-right:auto;
    left:0;
    right:0;
}
.readable.narrow p {
    font-size:1.1rem;
}

#bed {
    max-width:80%;
    display:block;
    margin-left:0;
}

.cc_nav h4 {
    text-transform: uppercase;
    font-weight:200;
    margin:0;
    color:white;
    font-size:1.2rem;
    z-index:1;
    overflow:hidden;
}
.cc_nav h2 {
    text-transform: uppercase;
    font-weight:900;
    margin:0;
    color:white;
    z-index:1;
    overflow:hidden;
    font-size: 2.2rem;
}
.cc_nav_bg {
    position:absolute;
    width:100%;
    height:100%;
    object-fit: cover;
}
.flex {
    display:flex;
}
.inCart {
    display:none !important;
}
a.cc_nav {
    display:block;
    width:20rem;
    height:8rem;
    position:relative;
    display:flex;
    justify-content: center;
    align-items: center;
    overflow:hidden;
    text-align:center;
    margin:2rem;
    background-color: var(--wl_pink);
    transition: 0.3s all;
}

a.cc_nav:hover {
    background-color: var(--wl_light_pink);
}

.cc_nav_content_wrap {
    padding:1rem;
    width:100%;
    z-index: 1;
    text-transform: uppercase;
}
#sticky_cc_nav_wrap {
    max-width:1920px;
    margin-left:auto;
    margin-right:auto;
    left:0;
    right:0;
    justify-content: center;
}
.sticky_cc_nav {
    background:white;
    position:sticky;
    top:0;
    padding-top: 4.7rem;
    z-index:90;
    box-shadow: 0 3px 6px -5px black;
}
.sticky_cc_nav a {
    text-decoration:none;
}

.plx_header {
    display:flex;
    padding:2rem;
    background-attachment: fixed;
    background-image:url("/widgets/weddinglanding/assets/WeddingBouquet-Background.jpg");
    background-size:cover;
    background-repeat:repeat-y;
    margin-top:5rem;
    margin-bottom:4rem;
    justify-content: center;
    align-items: center;
}
.plx_header h4 {
    font-weight:200;
    color:var(--nr_dark_blue);
    font-size:1.8rem;
    margin:0;
}
.plx_header h2 {
    font-weight:500;
    color:var(--nr_dark_blue);
    text-shadow:1px 1px 10px #fff;
    font-size: 2.9rem;
    margin:0;
    text-transform: none;
    line-height: 1em;

}
.plx_header.nogapbottom {
    margin-bottom:0;
}

.contain {
    max-width:1920px;
    margin-left:auto;
    margin-right:auto;
    left:0;
    right:0;
    position:relative;
}
.readable {
    max-width:75%;
}
.sensible {
    max-width:1600px;
}

#rules {
    background-image:url("/modules/mod_cclanding/assets/css/images/rules_bg.jpg");
    background-size:cover;
    padding:3rem;
}
.rule_number {
    color:#7DA7D9;
    font-size:7rem;
    font-weight:900;
    margin-right:2rem;
    width:10rem;
    text-align:right;
}
.rule_title {
    color:#00529C;
    font-size:3rem;
    line-height:1;
    font-weight:900;
    margin-right:2rem;
    width:40rem;
    text-align:left;
    text-transform: none;
}
.rule_wrap {
    display:flex;
    background:white;
    padding:3rem;
    align-items:center;
    justify-content: space-between;
    margin-bottom:3rem;
}
.rule_wrap:last-child {
    margin-bottom:0;
}
.rule_description {
    font-size:1.1rem;
    line-height:1.5;
    width:100%;
}

#locations {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-height: 440px;
}

.destination_header {
    background: none;
    height: 30%;
    display: flex;
    justify-content: center;
    width: 100%;
    transition: all .5s ease;
}

.destination_content_wrap {
    height: 70%;
    transition: all .5s ease;
}

.destination_content {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
}

/* .destination_wrap.center:hover > .destination_content_wrap {
    height: 100%!important;
    background-color: white;
}

.destination_wrap.center:hover > .destination_header {
    height: 20%!important;
} */


.hoverno {
    display: block;
}

.hovershow {
    display: none;
}

.destination_content:hover > .hoverno {
    display: none;
}

.destination_content:hover > .hovershow {
    display: block;
}

#locations h3, #faq_section h3 {
    color:var(--nr_dark_blue);
    text-transform: uppercase;
    font-weight: bold;
}

#locations p, #faq_section p {
    color: var(--wl_pink);
    /* margin: auto; */
}

/* #locations a, #faq_section a {
    background-color: var(--wl_pink);
}

#locations .close {
    background-color: var(--nr_dark_green);
} */

.coupon {
    position:absolute;
    display:block;
    width:40%;
    top:0%;
    right:-10%;
    transition:transform 1s ease;
    filter:drop-shadow(-10px -10px 5px rgba(0,0,0,0.2));
}
#coupon2 {
    top:25%;
}
span.allcaps {
    font-weight:bold;
    text-transform: uppercase;
}
.readable p {
    font-size:1.1rem;
    margin:1em;
}
.blue {
    color:#00529C;
}
hr {
    margin-top:4rem;
    margin-bottom:4rem;
}
.destinations {
    justify-content: center;
    flex-wrap:wrap;
}
.destination_wrap {
    margin:1%;
    box-shadow:0 0 1rem rgba(0,0,0,0.4);
    max-height: 575px;
}
.destination_image {
    padding-top: 5px;
    object-fit: contain;
    width: 80%;
    max-width: 200px;
    pointer-events:none;
}
.destination_content_wrap {
    padding:1.5rem;
}
.destination_content_wrap p {
    font-size:1rem;
    color:#00529C;
}
.destination_content_wrap ul li{
    font-size:1rem;
    color:#00529C;
	text-align:left;
}

.swiper-button-next:after, .swiper-button-prev:after {
    color:black;
}


.destination_content h3 {
    /* margin-bottom:2rem; */
    margin-top:0;
    font-size:1.5rem;
    color:var(--nr_dark_blue);
    text-transform: none;
    pointer-events:none;
}
.destination_content p {
    pointer-events:none;
}
.destination_content h1 span{display:block; font-size:1rem; font-style:italic; margin-top:5px;}

a.btn, a.button {
    color:var(--nr_dark_blue);
    border: 1px solid #435562;
    background-color: #FFF;
}

.cta_link, .block_button {
    display:block;
    text-align:center;
    text-decoration:none;
    background:#00529C;
    color:white;
    padding:1rem;
    text-transform:uppercase;
    margin-top:2rem;
}

/*
.destination_content .block_button{position:absolute; bottom:10px;}
*/

.swiper-container {
    display:none;
}
.vswiper {
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}
.flex.destinations {
    display:flex;
}
section {
    position:relative;
}
.swiper-slide {
    position:relative;
    height: auto!important;
    min-width: 11rem;
}
/* @media only screen and (max-width: 1200px) {
    
	.swiper-container {
        display:block;
    }
    .flex.destinations {
        display:none;
    }
    .destination_wrap {
        width:100%;
    }
    .swiper-slide {
        width:25rem !important;
    }
	
} */
.swiper-container {
    width: 100%;
    height: 45rem;
}

.cr__gallery .fullscreen__previousHold, .cr__gallery .fullscreen__nextHold {
    width:82px !important;
}

.swiper-pagination1 {
    width: fit-content !important;
    margin: auto;
}

.swiper-pagination2 {
    width: fit-content !important;
    margin: auto;
}

/* .swiper-slide {
    width:25rem;
    max-width:25rem;
} */

#faq_section .contain {
    padding: 5rem 0;
}

#faq_section {
    max-width: 1090px;
    margin: 2rem auto;
    overflow: hidden;
    display: flex;
    max-height: 500px;
}

.faq {
    display:flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom:2rem;
}
.faq h3 {
    text-transform: uppercase;
    color:var(--nr_dark_blue);
    font-size:1.5rem;
    margin-right:2rem;
    font-weight:900;
    text-align:right;
    font-family: "lato",sans-serif;
	width:40%;
}
.faq p {
    margin: 0;
    margin-right: auto;
}

.blog_wrapper {
    margin: 3rem 0;
}

.faq a, .faq a:hover {
    color: var(--nr_dark_green);
    text-decoration: underline;
}

.blog_item {
    display: flex;
    /* flex-wrap: wrap; */
    gap: 2rem;
    justify-content: center;
    margin-bottom: 2rem;
}

.blog_item:last-child {
    margin-bottom: 0;
}

.blog_item img {
    height: 10rem;
    width: 15rem;
    object-fit: cover;
}

.blog_item div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 40%;
}

.blog_item h3 {
    color:var(--nr_dark_blue);
    margin: 0;
}

.blog_item p {
    margin: 0;
}

.blog_item a {
    align-self: center;
    text-decoration: none;
    text-transform: uppercase;
    background-color: var(--wl_pink);
    color: white;
    padding: .5rem 2rem;
    transition: 0.3s all;
    text-wrap: nowrap;
}

.blog_item a:hover {
    background-color: var(--wl_light_pink);
}

p a {
    color:var(--wl_pink);
    text-decoration:none;
    font-weight:bold;
}

#moreq {
    margin-top:4rem;
    margin-bottom:4rem;
}
#moreq h2 {
    font-size:2rem;
    font-family: "lato",sans-serif;
    color:var(--nr_dark_blue);
    text-transform: uppercase;
}
#moreq a {
    color: var(--wl_pink);
}

#moreq a:hover {
    color: var(--wl_light_pink);
}

.gallerycr {
    padding-bottom: 2.5rem;
}

.teaser {
    width:100%;
    height:15rem;
    background-size:cover;
    display:block;
    position:relative;
    margin-bottom:3rem;
    text-decoration:none;
    display: flex;
    align-items: center;
    background-position: center;
    min-height: 25vh;
}
#itin_teaser {
    background-image: url("/widgets/weddinglanding/assets/bouquet.png"), linear-gradient(-90deg, rgb(255 255 255) -7%, rgba(255,255,255,0) 50%), url("/widgets/weddinglanding/assets/concert-at-shadowland-pavilion.jpg");
    justify-content: flex-end;
}
#itin_teaser .msg {
    transition:transform 0.3s ease;
}
#itin_teaser:hover .msg {
    transform:scale(1.1);
}
#itin_teaser h1 {
    font-family:Lato,sans-serif;
}
#itin_teaser h1 .top {
    font-weight:200;
    text-transform:uppercase;
    color:#464646;
    font-size:1.5rem;
}
#itin_teaser h1 .bottom {
    font-weight:900;
    text-transform:uppercase;
    color:#028285;
    font-size:3rem;
}

/* #mt_teaser {
    overflow:hidden;
    background-image:url("/modules/mod_wedding_landing/assets/images/tour_bg.jpg");
    justify-content: flex-end;
}
#mt_teaser .grad_overlay {
    width: 100%;
    height: 100%;
    background: linear-gradient(-90deg, rgb(255 255 255) 0%, rgba(255,255,255,0) 85%);
    opacity: 0.5;
    transition: opacity 0.3s ease;
    position: absolute;
}
#mt_teaser:hover .grad_overlay {
    opacity:1;
}
#mt_teaser .msg {
    transition: transform 0.3s ease;
    z-index: 2;
    position: relative;
    margin-right: 5%;
} */
.msg img {
    display:block;
    transition:all 0.3s ease;
}
#mt {
    width: 30rem;
    line-height: 1;
    text-align: center;
    transition:all 0.3s ease;
}
#mt h4 {
    margin: 0;
    text-transform: uppercase;
    font-weight: 10;
    text-shadow:1px 1px 7px #fff;
}
#mt h2 {
    margin: 0;
    text-transform: uppercase;
    text-shadow:1px 1px 7px #fff;
}
#check_out {
    width:14rem;
    position:relative;
    top:2.5rem;
}
#mt_teaser:hover #mt {
    transform:scale(1.1);
}
#mt_teaser:hover #check_out {
    transform:scale(1.1) translateY(-1rem);
}

#galleryimg {
    margin-bottom: 5rem;
}

.clear{display:block; clear:both; overflow:hidden; width:100%;}



.destination_wrap {
    background: #FFF;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 75%;
    height:100%;
    max-height: 26rem;
}				
.destination_wrap .containExcitement{
	width: 100%;
	height: 100%;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	transition: all 0.5s linear;
}

.swiper, .vswiper {
    padding-bottom: 20px!important;
}

.swiper-pagination {
    bottom: 0!important;
    --swiper-theme-color: var(--wl_pink);
}

.destination_wrap.flipped .containExcitement{
	transform: rotateY(180deg);
}

.destination_wrap .front, .destination_wrap .back{
	/* position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background:#FFF; */
}
.destination_wrap .back{
	display:block;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
	box-sizing: border-box;
	
}
.destination_wrap .front {
    padding:1rem;
}


.destination_wrap .close{cursor:pointer; position:absolute; top:-10px; right:-10px; z-index:5; box-shadow:0 0 5px #CCC; border-radius:50%; padding:5px 10px; font-size:16px; font-weight:700; color:#FFF; border:2px solid #FFF; background:#00529C; line-height:22px;}


#itin_teaser .msg > * {
	/* text-shadow: 0 0 1px #fcfcfc, 0 0 2px #fcfcfc, 0 0 3px #fcfcfc, 0 0 4px #fcfcfc, 0 0 5px #fcfcfc, 0 0 1px #fcfcfc, 0 0 2px #fcfcfc, 0 0 3px #fcfcfc, 0 0 4px #fcfcfc, 0 0 5px #fcfcfc; */
}


aside#grand_prize_wrap {
	position: relative;
	overflow: hidden;
}

.swiper-scrollbar-horizontal {
    height: 8px;
    margin-top: 1rem;
    padding-left: 10px;
}



.faq {
	margin-left: 15px;
	margin-right: 15px;
}
#faq .faq.button-cta {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-direction:row;
	flex-wrap:nowrap;
	align-content:flex-start;
	margin: 0;
	padding: 0;
	vertical-align: top;
}

#faq .faq.button-cta .readable.contain{}

#faq .faq.button-cta a.chevron_link{padding:0; margin:-20px 0 20px 0; font-size:100%;}
#faq .faq.button-cta a.chevron_link span{}

.cc_banner_text {
    color: #00529C;
    font-size: 2.5rem;
    font-weight: 900;
    margin: 0.67em 0;
    text-transform: none;
}


/* tag filters */

.tag_filter_section {
    background:#e0e1dd;
    font-size:1.2rem;
}
.tag_filter_section .contain {
    display: grid;
    place-items: center;
}
.tag_filter_section ul {
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    gap:2em;
}
.tag_filter_section ul li {
    padding:1em;
    color:var(--nr_dark_blue);
    text-transform:uppercase;
    transition:all 0.3s ease;
    background-color:#e0e1dd;
}
.tag_filter_section ul li:hover {
    cursor:pointer;
    color:white;
    background-color:var(--wl_pink);
}
.tag_filter_section ul li.active {
    background-color:var(--wl_pink);
    color:white;
}
.swiper-slide.hide {
    display:none;
}
.tag_filter_section {
    margin-top:var(--biggap);
}


/****************************************
	MOBILE STYLING
****************************************/


@media screen and (max-width:800px){	
	.flex.destinations {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		align-content: flex-start;
		justify-content: space-evenly;
	}
	.destination_wrap{
		width: 90%;
        max-width: 55rem;
        margin: auto;
		height: 22rem;
	}

    .blog_item{
        flex-wrap: wrap;
    }

    section.cc_gap h2{
        font-size: 2.2rem;
    }
	
    .plx_header h2 {
        font-size: 2.2rem;
    }

	/**************************/
	
	.cc_nav h4 {
		font-size: 1rem;
	}
	.cc_nav h2 {
		font-size: 1.5rem;
	}
    .plx_header h4 {
        font-size: 1.4rem;
    }
	.blog_item h3 {
        font-size: 1.2rem;
    }

	/**************************/
	
	.teaser{margin-bottom:0;}

    .faq {
        align-items: center;
    }

    .faq h3 {
        margin-right: 0;
        width: 90%;
        text-align: center;
    }

    .faq p {
        text-align: center;
        width: 90%;
        margin-right: 0;
    }

    .blog_item div {
        width: 70%;
        text-align: center;
    }

    #teasers .contain {
        padding-right: 0%;
        padding-left: 0%;
    }

    #itin_teaser {
        background-image: linear-gradient(rgba(255,255,255,.6), rgba(255,255,255,.6)), url("/widgets/weddinglanding/assets/concert-at-shadowland-pavilion.jpg");
        justify-content: flex-end;
    }
  
}



@media screen and (max-width:600px){
	
	#sticky_cc_nav_wrap {
		display: inline-flex;
		flex-direction: row;
		flex-wrap: wrap;
		max-width: none;
		width: 100%;
		left: auto;
		right: auto;
		box-shadow: 0 0 10px #000;
	}


    .cc_hero_wrap_img{
        object-fit: cover;
        height: 150px;
        object-position: 80% 50%;
    }

    .imgcredit{
        right: auto;
        bottom: auto;
        margin: 1em;
    }

    #mt{
        position: absolute;
        left: -24px;
    }
   

    .cc_nav h2 {
		font-size: 1rem;
	}
	
    .readable {
        max-width: 100%;
    }

	a.cc_nav {
		align-items: center;
		width: 33%;
		height: auto;
		display: inline-flex;
		flex-direction: row;
		flex-wrap: wrap;
		margin: auto;
		outline: 1px solid #FFF;
	}

    .tag_filter_section ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0;
    }

    .tag_filter_section ul li {
        font-size: 16px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .destination_content h3 {
        font-size: .9rem;
    }

    .destination_content_wrap {
        padding: .4rem;
    }

    .destination_header {
        padding-bottom: 8px;
    }

    .destination_wrap {
        box-shadow: 0 1rem 1rem rgba(0,0,0,0.4);
    }

    :is(button, [type=submit], [type=button], [type=reset], a.btn, a.button) {
        font-size: .8rem;
    }
	
    .plx_header {
        margin-top: 2rem;
    }

    .swiper-scrollbar-horizontal {
        margin-top: 2rem;
    }

/* 	.grand_prize_image_and_tags #bed {
		max-width: 90%;
		display: block;
		margin-left: 0;
	}
	.grand_prize_image_and_tags .coupon {
		width: 30%;
		right: -10px; */
	}	
	
    
	
	/**************************/
	
	.destination_image {
		max-width: 60%;
	}
	
	/**************************/
	
	.rule_wrap{display:block; align-items:center;}
	.rule_number, .rule_title{display:inline-block; width:auto;}
	
	p.rule_description{
		clear: both!important;
		display: block;
		width: 100%!important;
		float: none!important;
		max-width: 100%;
		min-width: 100%;
		font-size: initial;
		line-height: normal;
	}
	
	/**************************/
	.faq {
		display: flex;
		align-items: baseline;
		margin-bottom: 2rem;
		flex-direction: column;
		flex-wrap: nowrap;
        align-items: center;
	}
	.faq h2 {
		min-width: auto;
		text-align: center;
		margin: 0 4% 10px 4%;
	}
	
	
	/**************************/
	
	/* #mt_teaser .msg{margin-left:5%;} */
	
	/**************************/
	
	#footer p.phone{padding:0 0 15px 0;}
	
	#footer ul.nav.menu{
		display: flex;
		padding: 15px 0;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		border-top:1px solid rgb(255 255 255 / 25%);
		border-bottom:1px solid rgb(255 255 255 / 25%);
	}
	#footer ul.nav li{
		padding:10px 15px;
	}
	#footer ul.nav li a{
		font-size:12px;
	}	
	
	#footer .customsoc {
		padding: 5px 0 0 0;
		display: block;
		clear: both;
		overflow: hidden;
	}
	
}



@media screen and (max-width:500px){
	.destination_wrap{width:80%;margin: auto;height: 400px;}
	.destination_content_wrap p{font-size:1.1rem;}
}



@media screen and (max-width:400px){
	#sticky_cc_nav_wrap{
		flex-wrap:nowrap;
	}
	
    .sticky_cc_nav{
        padding-top: 80px;
    }

	a.cc_nav{
		width:100%;
		flex-wrap:nowrap;
		flex-direction:column;
	}
	
	/**************************/
	
	.prizes_wrap.flex {
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		align-content: center;
		justify-content: center;
		align-items: center;
	}
	.prize {
		width: auto;
		margin: 10%;
	}
	h2.prize_level{
		font-size:3.2em;
	}
	.prize_description {
		font-size: initial;
	}
	
	/**************************/
	
	
	
	
}