/*!
Theme Name: Jenny Dawn Cellars
Theme URI: http://jennydawncellars.com/
Author: Captain Coder
Author URI: http://captcoder.com/
Description: This is a Bootstrap 5 theme base custom built for Jenny Dawn Cellars
Version: 2.0.0
License: GNU General Public License v2 or later
Text Domain: captcoder

captcoder is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
*/

@import url("inc/normalize.css");
@import url("inc/xl.css");

@import url('//fonts.googleapis.com/css2?family=Playfair+Display&family=Raleway:wght@400;600&display=swap');

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# HTML
# Body
# Navigation
# Links & Buttons
# Overall
# Home
# Bottom Includes
# Footer
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Colors
--------------------------------------------------------------*/
:root{
	--dkpurple: #412b46;
	--mdpurple: #654689;
	--ltpurple: #d1c1e2;
	--wtpurple: #e6e4f1;
	--black: #000;
 	--white: #fff;
} 

/*--------------------------------------------------------------
# HTML
--------------------------------------------------------------*/
/* Make jump links scroll smoothly down the page */
html {scroll-behavior: smooth;}

/*--------------------------------------------------------------
# Body
--------------------------------------------------------------*/
/* Set the base font family and font size for ems here. Check with designer on desired paragraph font size */
body {font-size:16px;font-family:"Raleway",Helvetica,Arial,sans-serif;overflow-x: hidden;line-height: 1.6;background: var(--white);color:var(--black);}


/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
nav.navbar {background: var(--white);z-index: 99;}
	.home nav.navbar {background: transparent;position: absolute;top: 0;right: 0;left: 0;}
	.navbar-light .navbar-toggler {background: var(--wtpurple);border-radius: 0;border-color: var(--wtpurple);}
	.navbar-brand img {max-height: 75px;}

	.navbar-collapse {background: var(--white);margin-left: -15px;margin-right: -15px;padding-left: 15px;}
		.navbar-dark .navbar-nav .nav-link {color: var(--black);}

	.spiral {position: absolute;top: 0;right: 0;left: 60%;width: 100%;z-index: -9;}
		.spiral img {max-width: 40%;}

@media only screen and (min-width:768px) {
	.spiral img {max-width: 30%;}
}
@media only screen and (min-width:992px) {
	.navbar-brand img {max-height: 90px;}
	
	.spiral img {max-width: 20%;}
}
@media only screen and (min-width:1200px) {
	.navbar-brand img {max-height: 100px;}
	
	div#navbarSupportedContent {margin-left: -15%;}
	.navbar-collapse {margin-right: 0;margin-left: 0;padding-left: 0;background: transparent;}
		.navbar-light .navbar-nav .nav-link, .navbar-light .navbar-nav .nav-link:visited {color: var(--black);font-weight: 600;padding-right: 1rem;padding-left: 1rem;}
			.home .navbar-light .navbar-nav .nav-link, .home .navbar-light .navbar-nav .nav-link:visited {color:var(--white);}
			.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:active {color: var(--mdpurple);}
	
	.spiral {left: 75%;}
}
@media only screen and (min-width:1600px) {
	.navbar-brand img {max-height: 116px;}
}


/*--------------------------------------------------------------
# Buttons & Links
--------------------------------------------------------------*/
a, a:visited {color:var(--dkpurple);}
	a:hover, a:active {color:var(--mdpurple);text-decoration: none;}
.btn,.gform_wrapper .gform_footer input[type=submit], .btn:visited,.gform_wrapper .gform_footer input[type=submit]:visited, a.more-link, a.more-link:visited, .leads .gform_wrapper .gform_footer input[type=submit]:hover, .nav-previous a, .nav-next a, button#tribe-tickets__buy, .rtb-form-submit button {border-radius: 0;border: 2px solid var(--black);background: transparent;color: var(--black);padding:10px 15px;transition: all 0.2s;font-size:1em;}
	.btn:hover, .btn:active, .gform_wrapper .gform_footer input[type=submit]:hover, .gform_wrapper .gform_footer input[type=submit]:active, a.more-link:hover, a.more-link:active, .leads .gform_wrapper .gform_footer input[type=submit], .nav-previous a:hover, .nav-next a:hover, button#tribe-tickets__buy:hover,.rtb-form-submit button:hover {color:var(--white);background:var(--mdpurple);}
	span.showhover {display: none;transition: all 0.2s ease;}
		.btn:hover span.showhover, .btn:active span.showhover {display: inline-block;}
	a.more-link {display: block;width: 100%;text-align: center;margin-top: 1em;}
		.nav-previous a, .nav-next a {border: none;}
			.nav-previous a:hover, .nav-next a:hover {color: var(--mdpurple);background: transparent;}

@media only screen and (min-width:992px) {
	a.more-link {width: 45%;}
}


/*--------------------------------------------------------------
# Headings
--------------------------------------------------------------*/
h1,h2,h3,h4,h5,h6 {font-family: "Playfair Display", sans-serif;font-weight: normal;}
	h1 {color: var(--white);text-align: center;}
	h2 {text-transform: uppercase;}

@media only screen and (min-width:1200px) {
	h1 {font-size: 2.75em;}
}
@media only screen and (min-width:1600px) {
	h1 {font-size: 3em;}
}


/*--------------------------------------------------------------
# Overall
--------------------------------------------------------------*/
header {padding-bottom: 2em;position: relative;}
	.home header {padding-top: 0;padding-bottom: 4em;z-index: 9;}
	.video-wrap {position: relative;overflow: hidden;}
		header .title {position: relative;z-index: 99;padding-top:2rem;}
			header p{color: var(--white);}
		#header-video {position: absolute;right: -50%;top: 0%;min-width: 100%;width:200%;}
		.video-overlay {background: rgba(0,0,0,.35);position: absolute;top: 0%;left: -1%;height: 103%;width: 103%;}
	header p {padding-bottom: 3rem;}
	.social-bar, .social {background: var(--mdpurple);padding: 1rem;}
		.social-bar {position: absolute;right: 0;margin-top: -3rem;}
			.home .social-bar {margin-top: -1rem;}
		.social-bar ul, .social ul {list-style: none;-webkit-padding-start: 0;margin-bottom: 0;}
			.social-bar ul > li, .social ul > li {padding-bottom: 8px;}
				.social-bar ul > li a, .social ul > li a {color: var(--ltpurple);}
					.social-bar ul > li a:hover, .social ul > li a:hover {color: var(--white);}


.two-column h2, .half-image h2 {margin-top: 1em;}

.half-image .image img {width: 100vw;max-width: inherit;margin-left: -15px;}

.gs_reveal {opacity: 0;visibility: hidden;will-change: transform, opacity;}

#policy .container {text-align: left!important;}

@media only screen and (max-width:767px) {
	.half-image {margin-top: 7rem!important}
}
@media only screen and (min-width:768px) and (max-width:991px) {
	.half-image .image img {margin-left: calc((100vw - 100%) / -2) !important;margin-right: calc((100vw - 100%) / -2) !important;}
	.half-image h2 {margin-top:1em;}
}
@media only screen and (min-width:992px) {
	.half-image {overflow: hidden;}
		.half-image .image img {height: 100%;width: 80vw;}
		.half-image .image.left {min-height: 400px;}
			article.half-image .image.left {min-height: 680px;}
			.half-image .image.left img {width: 60.8vw;margin-left: -10rem;right: auto;height: auto;}

}
@media only screen and (min-width:1200px) {
	.home header {padding-top: 6rem;padding-bottom: 9rem;}
		.social-bar {margin-top: 3rem;}
			.home .social-bar {margin-top:4rem;}
	
	.half-image .image.left img {margin-left: -20rem;}
}
@media only screen and (min-width:1400px) {
	.half-image .image.left img {width: 50vw;margin-left: -10rem;}
}
@media only screen and (min-width:1600px) {
	header {padding-top: 3em;padding-bottom: 4em;}
	
	.half-image .image img {width: 50vw;max-width: inherit;height: auto;}
}


/*--------------------------------------------------------------
# Home
--------------------------------------------------------------*/
/* funnels */
.funnels h2 {color: var(--dkpurple);}
.headline-box {padding:2rem;}
.desc-box {background: var(--white);padding: 0.5rem 1rem;margin: -4rem 0 0 2rem;z-index: 999;    position: relative;}

/* about setion */
.about-section {background: var(--dkpurple);color: var(--white)!important;}

.about-videos .wrap img {opacity: 0.7;transition: all 0.2s ease;}
	.about-videos .wrap:hover img {opacity: 1;}
.play .far {font-size: 4rem;}
	
	.modal-dialog {max-width: 900px;}
		.modal-content {background-color: transparent;border: none;}
			.modal-header {border-bottom: none;}
				.video .modal-header button.btn-close {background-color: rgba(255,255,255,0.8);opacity: 1;}

@media only screen and (min-width:768px) {
	.desc-box {margin: -11rem 0 0 15rem;padding: 1rem 2rem;}
}
@media only screen and (min-width:992px) {
	.headline-box {padding: 0 2rem;display: table;height: 70%;width:100%;}
		.headline-box h3 {display: table-cell;vertical-align: middle;}
	
	.leads .gform_body.gform-body {width: 80%;float: left;display: inline-block;}
	.leads .gform_footer.top_label {width: 18%;float: left;clear: none;margin: 0 0 0 10px!important;padding-top: 0!important;}
		.leads .gform_footer.top_label input[type=submit] {width: 100%;padding: 8px!important;}
}
@media only screen and (min-width:1200px) {
	.headline-box h3 {font-size: 2em;}
	.funnels .img img {width: 100%;height: auto;}
	
	.video {margin-bottom: 15rem;}
		.about-video {margin-bottom: -12em;margin-top: -5em;}
}


/*--------------------------------------------------------------
# Shop
--------------------------------------------------------------*/
.wine-basket a.button, .wine-basket button {color: #000!important;background: transparent!important;border: 2px solid!important;border-radius: 0!important;transition: all 0.2s ease;}
	.wine-basket a.button:hover, .wine-basket button:hover {background: #654689!important;    color: #fff!important;border: 2px solid #000!important;}


/*--------------------------------------------------------------
# Plan Your Visit
--------------------------------------------------------------*/
/* funnels boxes */
.bg-box {width: 200px;height: 200px;content: "";background: var(--dkpurple);transition: 0.2s all ease;}
	.funnel:nth-of-type(2) .bg-box, .member:nth-of-type(2) .bg-box {background: var(--mdpurple);}
	.funnel:nth-of-type(3) .bg-box, .member:nth-of-type(3) .bg-box {background: var(--ltpurple);}
	.funnel:nth-of-type(4) .bg-box, .member:nth-of-type(4) .bg-box {background: var(--wtpurple);}
		.inner-funnels .funnel:hover .bg-box, .collections .funnel:hover .bg-box {background: var(--wtpurple);}
.box {margin-top: -180px;}
	.box img {max-width: 90%;}

/* hours section */
.hours .headline-box {background: var(--mdpurple);color: var(--white);}
.hours img {width: 100%;}

/* neighbors section */
.neighbors {background:var(--wtpurple);}


@media only screen and (min-width:768px) {
	.logo {border-right: 2px solid var(--dkpurple);}
		.logo:nth-last-of-type(1) {border-right: none;}
}
@media only screen and (min-width:992px) {
	.box img {margin-left: 6%;max-width: 94%;}
	
	.hours .headline-box {height: 40%;}
	.hours .phone-address {padding-left: 2rem;border-left: 2px solid var(--mdpurple);}
	.hours .desc-box {margin: -18rem 0 0 12rem;}
}
@media only screen and (min-width:1200px) {
	.box img {max-width: 90%;}
}
@media only screen and (min-width:1400px) {
	.hours .desc-box {margin-left: 20rem;}
	
	.box img {width: 85%;}
}
@media only screen and (min-width:1600px) {
	.bg-box {width: 250px;height: 250px;}
	.box {margin-top: -220px;}
		.box img {width: 90%;}
	
	.half-image .image.left img {margin-left: -20rem;}
}


/*--------------------------------------------------------------
# Reservations
--------------------------------------------------------------*/
.rtb-booking-form {
    text-align: left!important;
}

.rtb-booking-form fieldset {
    border: none;
}

.rtb-booking-form .rtb-modification-form input[type="email"] {
    margin-top: 1.25rem;
}
.rtb-booking-form .rtb-message {
    color: var(--mdpurple);
    font-weight: bold;
    text-align: center;
    font-size: 1.5rem;
}
/* change label from party to group size */
.reservation .rtb-select label {color: #fff;}
	.reservation .rtb-select label:after {content: "Group Size";color: #000;margin-left: -2.6rem;}


@media only screen and (min-width:992px) {
	.events .bg-box {height: 150px;}
	.events .box {margin-top: -135px;}
}


/*--------------------------------------------------------------
# Menu
--------------------------------------------------------------*/
.food .section, .wine .section {border-bottom: 1px solid var(--wtpurple);}
	.food .section:nth-last-of-type(1), .wine .section:nth-last-of-type(1) {border-bottom: none;}
	.food .headline-box, .wine .headline-box, .values .headline-box, .video .headline-box {background: var(--dkpurple);height: 100%;color: var(--white);}
		.food .section:nth-of-type(2) .headline-box, .wine .section:nth-of-type(2) .headline-box, .values .value:nth-of-type(2) .headline-box {background: var(--mdpurple);}
		.food .section:nth-of-type(3) .headline-box, .wine .section:nth-of-type(3) .headline-box, .values .value:nth-of-type(3) .headline-box {background: var(--ltpurple);color: var(--black);}
		.food .section:nth-of-type(4) .headline-box, .wine .section:nth-of-type(4) .headline-box, .values .value:nth-of-type(4) .headline-box {background: var(--wtpurple);color: var(--black);}
	.headline-box.img h3 {display: block;margin-top: 2rem;}
	.headline-box.img img {max-width: 125%;margin: 1rem -1rem -2rem 0;}


/*--------------------------------------------------------------
# Venue Rental
--------------------------------------------------------------*/
#rental .copy {text-align: center;}
#rent.contact {background: var(--mdpurple);}
	#rent.contact a, #rent.contact h2, #rent.contact p, #rent.contact label, #rent.contact legend, div#gform_confirmation_message_6 {color: var(--white);}
	#rent.contact .gform_wrapper .gfield_required {color: var(--wtpurple);}
	#rent.contact input[type=submit] {color: var(--white)!important;border-color: var(--white)!important;}

@media only screen and (min-width:992px) {
	#venue.half-image .image img {width: 120vw;}
}
@media only screen and (min-width:1200px) {
	#venue.half-image .image img {width: 95vw;}
}
@media only screen and (min-width:1600px) {
	#venue.half-image .image img {width: 70vw;}
}
@media only screen and (min-width:1800px) {
	#rental.half-image .image img {width: 50vw;}
	#venue.half-image .image img {width: 60vw;}
	
}


/*--------------------------------------------------------------
# Events - Single
--------------------------------------------------------------*/
h1.tribe-events-single-event-title, div#tribe-events-footer {display: none;}
span.tribe-events-cost {color: var(--mdpurple);font-weight: bold;font-size: 1.4rem;}
button.tribe-tickets__item__quantity__remove, button.tribe-tickets__item__quantity__add {border: 0;color: var(--black)!important;}
.tribe-common svg:not(:root) {
    overflow: hidden;
    max-width: 30px;
}

/*--------------------------------------------------------------
# About
--------------------------------------------------------------*/
.right .bg-box, .feature .bg-box {float: right;}
.team img, .article img, .feature img {margin-top: -180px;max-width: 97%;}
	.team .left img, .article .left img {margin-left: 20px;}

@media only screen and (min-width:1600px) {
	.team img, .article img, .feature img {margin-top:-230px;}
}

/*--------------------------------------------------------------
# Vision & Values
--------------------------------------------------------------*/
.values .headline-box {padding: 2rem;}
	.values .headline-box p {font-size:2em;font-family: "Playfair Display", sans-serif;text-align: center;}

@media only screen and (min-width:992px) {
	#timing.half-image .image img {width: 50vw;}
}


/*--------------------------------------------------------------
# Research
--------------------------------------------------------------*/
#results {padding-top: 0!important;margin-top: -7rem!important;}


/*--------------------------------------------------------------
# Services
--------------------------------------------------------------*/
#book {background-color: var(--wtpurple);}


/*--------------------------------------------------------------
# Investment
--------------------------------------------------------------*/
#growth .container {padding-top: 2rem;padding-bottom: 2rem;}

@media only screen and (min-width:992px) {
	#growth p {margin-left: 200px;margin-right: 200px;}
}

/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.top-contact .purple-box {padding: 2em 1em;background: #71147e;}

@media only screen and (min-width:992px) {
	.top-contact .purple-box {margin-top: -6em;}
}



/*--------------------------------------------------------------
# Blog
--------------------------------------------------------------*/
input#searchsubmit {font-family: "Font Awesome 5 Pro";background: var(--mdpurple);padding: 5px 7px;border: 0;color:var(--white);}
input#s {width: 80%;padding: 3px;}
h2.widget-title {margin-top: 1em;}

.nav-links {text-align: center;}
	.nav-previous, .nav-next {margin: 2rem 1rem;display: inline-block;}
		.nav-previous a:before {content: "\f104";font-family: 'Font Awesome 5 Pro';padding-right: 10px;}
		.nav-next a:after {content: "\f105";font-family: 'Font Awesome 5 Pro';padding-left: 10px;}


/*--------------------------------------------------------------
# Bottom Includes
--------------------------------------------------------------*/
/* hours block */
#hours {background: var(--dkpurple); color:var(--white);}
	#hours a {color: var(--white);}
	#hours hr {background-color: var(--wtpurple);width: 20%;height:3px;}

/* Call to Action */
#cta {margin:0;padding:2em 0;background:var(--dkpurple);transition: all 0.2s ease-in;}
	#cta:hover {background:var(--ltpurple);}
	#cta h6 {color: var(--white);font-family: "Raleway", sans-serif; font-size: 1.8em;font-weight: bold;margin:0;}
		#cta:hover h6 {color:var(--black);}
		#cta h6 p {margin-bottom: 0;}

@media only screen and (min-width:992px) {
	#hours .outside {overflow: hidden;}
		#hours img {max-width: 200%;height:auto;width:200%;margin-left:-100%;}
}
@media only screen and (min-width:1200px) {
	#hours img {max-width: 138%;margin-left: -30%;}
}
@media only screen and (min-width:1600px) {
	#hours img {max-width: 107%;margin-left: 0;}
}


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer.footer {background: var(--white);color:var(--black);}
	.main-foot {position: relative;}
	.org-logo:nth-of-type(1) {border-right: 2px solid var(--wtpurple);}
	footer.footer a {color: var(--black);}
		footer.footer a:hover {color: var(--mdpurple);}
	.foot-nav ul {list-style: none;-webkit-padding-start: 0;}
		.foot-nav li.header > a {font-weight: 600;color: var(--dkpurple);}
	.social {position: absolute;bottom: 0;}

	#siteinfo {font-size: 0.8em;background: var(--mdpurple);color: var(--white);padding-top: 2rem;position: relative;}
		#siteinfo .container {position: relative;z-index: 99;}
			#siteinfo a {color: var(--white);}
			.disclaimer {text-transform: uppercase;text-align: center;}
		#siteinfo .spiral {z-index: 1;top: auto;position: absolute;bottom: 0;}

@media only screen and (min-width:768px) {
	.social {right: 0;}
}
@media only screen and (min-width:1200px) {
	.social ul > li {padding-bottom: 1.5rem;}
		.social ul > li a .fab {font-size: 1.5rem;}
}