/*
Theme Name: NVV NapaVintners.com
Template: twentytwentyfive
Version: 1.0.0
Text Domain: nvvcom
*/

/*
 * Napa Valley Vintners
 * Custom styles for the NapaVintners.com WordPress rebuild.
 */

footer .contact-form br,
footer .wp-block-jetpack-contact-form br,
footer .wp-block-jetpack-contact-form-container br {
    display: none !important;
}
img.mainphoto {
    width: 100%;
}


/* ==========================================================
   NapaVintners.com Header
   Clean WordPress recreation of legacy NVV presentation.
   ========================================================== */

.nvv-site-header {
	background: #201d17;
	color: #e2dbc8;
	margin-block-start: 0 !important;
	position: relative;
	z-index: 100;
	width: 100%;
}

.nvv-header-inner {
	box-sizing: border-box;
	max-width: 1170px;
	min-height: 78px;
	margin: 0 auto;
	padding: 12px 20px;
	gap: 32px;
}

.nvv-header-logo {
	flex: 0 0 auto;
	margin: 0 !important;
}

.nvv-header-logo a {
	display: block;
}

.nvv-header-logo img {
	display: block;
	width: auto;
	height: auto;
	max-height: 50px;
	max-width: 210px;
}

/* Primary navigation */

.nvv-primary-nav {
	margin-left: auto;
}

.nvv-primary-nav .wp-block-navigation__container {
	align-items: center;
	gap: 0;
}

.nvv-primary-nav
.wp-block-navigation-item__content {
	box-sizing: border-box;
	color: #e2dbc8;
	font-family: "ProximaNova", Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	padding: 11px 0 9px 18px;
	text-decoration: none;
	text-transform: uppercase;
	border-bottom: 2px solid transparent;
}

.nvv-primary-nav
.wp-block-navigation-item__content:hover,
.nvv-primary-nav
.wp-block-navigation-item__content:focus {
	color: #687819;
	border-bottom-color: #687819;
	text-decoration: none;
}

/* WordPress submenu arrow */

.nvv-primary-nav
.wp-block-navigation__submenu-icon {
	color: #687819;
	margin-left: 4px;
}

/* Dropdown menus */

.nvv-primary-nav
.wp-block-navigation__submenu-container {
	background: #faf8f4 !important;
	border: 0 !important;
	border-top: 2px solid #687819 !important;
	border-bottom: 2px solid #6d6961 !important;
	border-radius: 0 !important;
	min-width: 220px !important;
	padding: 0 !important;
	box-shadow: 0 4px 12px rgba(0,0,0,.16);
}

.nvv-primary-nav
.wp-block-navigation__submenu-container
.wp-block-navigation-item {
	background: #faf8f4;
	width: 100%;
}

.nvv-primary-nav
.wp-block-navigation__submenu-container
.wp-block-navigation-item__content {
	box-sizing: border-box;
	color: #201d17 !important;
	display: block;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
	padding: 7px 15px !important;
	text-transform: none;
	width: 100%;
	border-bottom: 1px solid #eee;
}

.nvv-primary-nav
.wp-block-navigation__submenu-container
.wp-block-navigation-item__content:hover,
.nvv-primary-nav
.wp-block-navigation__submenu-container
.wp-block-navigation-item__content:focus {
	background: #faf8f4;
	color: #687819 !important;
	border-bottom-color: #eee;
}

/* Hamburger */

.nvv-primary-nav
.wp-block-navigation__responsive-container-open,
.nvv-primary-nav
.wp-block-navigation__responsive-container-close {
	color: #e2dbc8;
}

/* Mobile navigation overlay */

.nvv-primary-nav
.wp-block-navigation__responsive-container.is-menu-open {
	background: #201d17 !important;
	color: #e2dbc8 !important;
	padding: 28px;
}

.nvv-primary-nav
.wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation-item__content {
	color: #e2dbc8;
	font-size: 15px;
	padding: 8px 0;
}

@media (max-width: 1100px) {
	.nvv-header-inner {
		gap: 18px;
	}

	.nvv-primary-nav
	.wp-block-navigation-item__content {
		font-size: 11px;
		padding-left: 11px;
	}
}

@media (max-width: 767px) {
	.nvv-header-inner {
		min-height: 74px;
		padding: 12px 18px;
	}

	.nvv-header-logo img {
		max-height: 48px;
		max-width: 190px;
	}
}


/* ==========================================================
   NapaVintners.com Mobile Header
   ========================================================== */

@media (max-width: 900px) {

	.nvv-site-header {
		background: #201d17;
		width: 100%;
	}

	.nvv-header-inner {
		min-height: 74px;
		padding: 12px 18px;
		gap: 15px;
		flex-wrap: nowrap !important;
	}

	.nvv-header-logo {
		flex: 0 1 auto;
		margin: 0 !important;
	}

	.nvv-header-logo img {
		display: block;
		width: auto;
		height: auto;
		max-height: 50px;
		max-width: 190px;
	}

	.nvv-primary-nav {
		margin-left: auto;
		flex: 0 0 auto;
	}

	/*
	 * Force WordPress Navigation into mobile mode earlier.
	 */
	.nvv-primary-nav
	.wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}

	.nvv-primary-nav
	.wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center;
		justify-content: center;
		background: #687819;
		color: #fff;
		border: 0;
		padding: 9px 10px;
		margin: 0;
	}

	.nvv-primary-nav
	.wp-block-navigation__responsive-container-open svg {
		width: 28px;
		height: 28px;
		fill: currentColor;
	}

	/*
	 * Full-screen mobile menu.
	 */
	.nvv-primary-nav
	.wp-block-navigation__responsive-container.is-menu-open {
		display: flex !important;
		position: fixed;
		inset: 0;
		z-index: 999999;
		background: #201d17 !important;
		color: #e2dbc8 !important;
		padding: 75px 28px 35px;
		overflow-y: auto;
	}

	.nvv-primary-nav
	.wp-block-navigation__responsive-container-close {
		display: block;
		position: absolute;
		top: 20px;
		right: 20px;
		color: #fff;
		background: transparent;
		padding: 8px;
	}

	.nvv-primary-nav
	.wp-block-navigation__responsive-container-close svg {
		width: 28px;
		height: 28px;
		fill: currentColor;
	}

	.nvv-primary-nav
	.wp-block-navigation__responsive-container-content {
		width: 100%;
		align-items: stretch !important;
	}

	.nvv-primary-nav
	.wp-block-navigation__container {
		width: 100%;
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0 !important;
	}

	.nvv-primary-nav
	.wp-block-navigation-item {
		width: 100%;
	}

	.nvv-primary-nav
	.wp-block-navigation-item__content {
		box-sizing: border-box;
		display: block;
		width: 100%;
		color: #e2dbc8 !important;
		font-family: "ProximaNova", Arial, Helvetica, sans-serif;
		font-size: 15px !important;
		font-weight: 700;
		line-height: 1.3;
		padding: 12px 0 !important;
		text-transform: uppercase;
		border-bottom: 1px solid #39352d !important;
	}

	.nvv-primary-nav
	.wp-block-navigation-item__content:hover,
	.nvv-primary-nav
	.wp-block-navigation-item__content:focus {
		color: #8d9e32 !important;
		border-bottom-color: #687819 !important;
	}

	/*
	 * Mobile submenu treatment.
	 */
	.nvv-primary-nav
	.wp-block-navigation__submenu-container {
		position: static !important;
		width: 100% !important;
		min-width: 0 !important;
		background: #29261f !important;
		border: 0 !important;
		box-shadow: none !important;
		padding: 0 0 0 18px !important;
	}

	.nvv-primary-nav
	.wp-block-navigation__submenu-container
	.wp-block-navigation-item {
		background: transparent !important;
	}

	.nvv-primary-nav
	.wp-block-navigation__submenu-container
	.wp-block-navigation-item__content {
		color: #e2dbc8 !important;
		background: transparent !important;
		font-size: 13px !important;
		font-weight: 400;
		text-transform: none;
		padding: 9px 0 !important;
		border-bottom: 1px solid #39352d !important;
	}

	.nvv-primary-nav
	.wp-block-navigation__submenu-icon {
		color: #687819;
		margin-left: 8px;
	}

}


/*
 * Restore normal desktop Navigation block behavior.
 */
@media (min-width: 901px) {

	.nvv-primary-nav
	.wp-block-navigation__responsive-container {
		display: block !important;
		position: static;
	}

	.nvv-primary-nav
	.wp-block-navigation__responsive-container-open {
		display: none !important;
	}

}


/* ==========================================================
   NVV Page Featured Image / Hero
   ========================================================== */

.nvv-featured-image {
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	background: #201d17;
}

.nvv-featured-image img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 360px;
	object-fit: cover;
	object-position: center;
	margin: 0;
}

@media (max-width: 767px) {

	.nvv-featured-image img {
		max-height: 260px;
	}

}


/* ==========================================================
   NVV Legacy Interior Page Typography
   ========================================================== */

.nvv-page-main {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif;
	color: #111;
	font-size: 14px;
	line-height: 1.45;
}

.nvv-page-main .wp-block-post-content {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif;
	color: #111;
}

/* Main page heading */
.nvv-page-main h1 {
	font-family: "Bodoni", Georgia, "Times New Roman", Times, serif !important;
	font-size: 30px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #687819 !important;
	margin: 0 0 14px !important;
	letter-spacing: 0 !important;
}

/* Interior headings */
.nvv-page-main h2 {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #687819;
	margin: 22px 0 10px !important;
}

.nvv-page-main h3 {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #222;
	margin: 20px 0 10px !important;
}

.nvv-page-main h4 {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: #222;
}

/* Body copy */
.nvv-page-main p,
.nvv-page-main li {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
	color: #111;
}

.nvv-page-main p {
	margin: 0 0 15px !important;
}

/* Keep content reasonably similar to old site */
.nvv-page-main .wp-block-post-content > * {
	max-width: none;
}



/* ==========================================================
   NVV Full Width Page Template
   ========================================================== */

.nvv-page-full-width {
	box-sizing: border-box;
	max-width: 1170px;
	margin: 0 auto !important;
	padding: 38px 20px 50px;
	color: #111;
	font-family: "ProximaNova", Helvetica, Arial, sans-serif;
}

.nvv-page-full-width .wp-block-post-content {
	max-width: none;
}

.nvv-page-full-width h1 {
	font-family: "Bodoni", Georgia, "Times New Roman", Times, serif !important;
	font-size: 30px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #687819 !important;
	margin: 0 0 14px !important;
}

.nvv-page-full-width h2 {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #687819;
}

.nvv-page-full-width h3 {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #222;
}

.nvv-page-full-width p,
.nvv-page-full-width li {
	font-family: "ProximaNova", Helvetica, Arial, sans-serif !important;
	font-size: 14px !important;
	line-height: 1.45 !important;
	color: #111;
}

@media (max-width: 767px) {

	.nvv-page-full-width {
		padding: 28px 20px 40px;
	}

}

.home .nvv-home-section .feature ul {
font-size: inherit;
line-height: inherit;
}

.home .nvv-home-section .feature li {
font-size: inherit;
line-height: inherit;
}
