/*
Customizations to r3417 theme

Colors:

Green 1:	#056f3a
Green 2:	#429644
Green 3:	#93c643
Green 4:	#edf4d4
Gray:		#e0e2dc
Purple 1:	#651f5d
Purple 2:	#9967ac
Purple 3:	#e3dce9
Orange 1:	#f15f23
Orange 2:	#fcbe57

*/

/* IMPORTS */

@import url('cafe-social.css');


/* STANDARD HTML */

body * {
	font-family: 'proxima-nova', sans-serif;
	letter-spacing: 0.025em;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'proxima-nova', sans-serif;
	font-weight: 600;
	margin-bottom: 0.25em;
}

mark {
	background: transparent;
	font-weight: bold;
}


/* CUSTOM CSS CLASSES */

.button, a.button, .label-tab, button, input[type=submit], th {
	font-family: 'proxima-nova', sans-serif;
}

section.columns.columns-2.full_bleed .column {
	padding-right: 5rem;
	padding-left: 5rem;
}

.columns.infographics img.alignleft {
	margin-bottom: 3rem !important;
}

.columns.infographics h3 {
	color: #93c643;
	margin: 0;
}
.columns.infographics p {
	color: #93c643;
	font-size: 80%;
	line-height: 1.333em;
	margin: 0;
}

.columns .location_map_embed_code iframe {
	height: 250px !important;
	margin: 1rem 0 !important;
}

.hotbar-calendar-grid * {
	font-size: 12px !important;
}

	.hotbar-calendar-grid li span[class][title] {
		font-size: 10px !important;
	}

#header_underlay + .entry-header {
	padding-top: 4rem;
}

.slides .caption { font-size: 90% !important; }

	.slides .caption p { font-size: 135% !important; }

.tiles header h2 {
	font-size: 166.667%;
	font-weight: 600;
	text-align: center;
}

.tiles.overlay .tile .text { text-align: center; }

.tiles.overlay.tiles_per_row_2 .tile .text { font-size: 120%; }

.tiles.overlay .tile .title { font-size: 125%; font-weight: 600; margin: 0 !important; }

.tiles.overlay .tile .description { font-size: 100%; }

.tiles.stacked { font-size: 100% !important; }

.tiles.stacked.tiles_per_row_1 { font-size: 120% !important; }


/* DOM ELEMENTS */

#header {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: 100% auto !important;
	border-bottom: 1px solid rgba(0,0,0,0.075);
}

#header * {
	font-family: 'proxima-nova', sans-serif;
}

	#header .widget * {
		color: #056f3a !important;
	}

	#page p, #page ul, #page ol, #page dl {
		font-size: 1.2rem;
	}
	#page ul ul, #page ol ol {
		font-size: 1rem;
	}

#modular_with_sidebar {
	width: 66.666%;
}

#modular_sidebar {
	width: 33.333%;
}

#footer * {
	font-family: 'proxima-nova', sans-serif;
}

#footer .footer {
	font-size: 90% !important;
}


/* PLUGINS */

/* The Events Calendar */

.tribe-events-calendar * {
	font-family: 'proxima-nova', sans-serif !important;
}

.tribe-mini-calendar thead {
	background: #056f3a !important;
	border-color: #056f3a !important;
}

/* GTranslate */

#gtranslate_wrapper {
	bottom: 1rem !important;
	right: 1rem !important;
}
body.page-template-empty #gtranslate_wrapper, body.page-template-empty-node-modular #gtranslate_wrapper { display: none !important; }

select#gtranslate_selector, select#gtranslate_selector:focus {
	background: #f7f7f7;
	border: 1px solid rgba(0,0,0,0.5) !important;
	border-radius: 4px !important;
	color: #58595b;
	font-size: 100%;
	padding: 0.2em 0.5em !important;
	width: 4.5em !important;
}

/* WooCommerce */

#reuse_limited-selection-message * { font-size: 0.8rem !important; }

.woocommerce-error li, .woocommerce-info li, .woocommerce-message li { padding-left: 1.5em !important; }

.woocommerce .product { position: relative; }

.product_input_fields_toggle {
	cursor: pointer;
	float: right;
	display: block;
	height: 32px;
	margin: 0.25em 0.5em;
	width: 32px;
}

.product_input_fields > * {
	display: block;
}

.product_input_fields > * > * {
	display: inline-block;
	font-size: 0.8rem;
	vertical-align: middle !important;
}

.product_input_fields > * > input {
	margin: 0 0.5em 0 0 !important;
}

.product_input_fields > * > label {
	margin: 0 1em 0 0 !important;
}

.woocommerce .product h2 { font-size: 100%; }

.woocommerce .product .onsale { display: none !important; }

.woocommerce .product .added_to_cart { display: block; }

.woocommerce-loop-category__title mark { background: transparent; font-weight: normal; }

.woocommerce form .form-row {
	padding-left: 0;
}

.woocommerce form .form-row label {
	font-size: 85%;
	font-weight: 600;
	line-height: 1.5em;
}

.woocommerce form fieldset legend {
	font-size: 116.667%;
	font-weight: bold;
	padding-top: 1.5rem;
}

.woocommerce form .form-row.short input { max-width: 120px; }

/* Don't show the Display Name explanation "This will be how your name will be displayed in the account section and in reviews" */
.woocommerce form input[name='account_display_name'] + span { display: none !important; }

.r3417_tweaks_sale_ends {
	color: #f15f23;
	display: block;
	font-size: 11px;
	font-weight: 600;
	line-height: 14px;
	white-space: nowrap;
}

/* Subcategory toggles */
.r3417_tweaks_wc_categories > li .toggle {
	background: transparent url('/wp-content/themes/r3417/images/ui/toggle_closed.svg') left center no-repeat;
	background-size: 16px 16px;
	cursor: s-resize;
	display: inline-block;
	height: 16px;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
	width: 24px;
}

.r3417_tweaks_wc_categories > li.open .toggle {
	background-image: url('/wp-content/themes/r3417/images/ui/toggle_open.svg');
	cursor: n-resize;
}

.r3417_tweaks_wc_categories > li .toggle.inactive {
	opacity: 0 !important;
}

	.r3417_tweaks_wc_categories > li > ul.children {
		list-style: none;
		padding-left: 3em;
	}

/* Price info tooltip */

.r3417-wc-price-tooltip {
	background: #93c643;
	border-radius: 1.5em;
	cursor: help;
	display: inline-block;
	font-size: 13px;
	height: 18px;
	margin: 0 0.5em;
	position: relative;
	vertical-align: middle;
	width: 18px;
}
.r3417-wc-price-tooltip:after {
	color: #ffffff;
	content: '?';
	display: block;
	font-size: 13px;
	font-weight: bold;
	height: 18px;
	line-height: 18px;
	position: absolute; top: 0; left: 0;
	text-align: center;
	width: 18px;
}

	.r3417-wc-price-tooltip-content {
		background: #ffffff;
		border: 1px solid rgba(0,0,0,0.1);
		display: none;
		font-size: 11px;
		height: auto;
		line-height: 14px;
		padding: 0.5em 0.75em;
		position: absolute; top: 50%; left: 50%;
		width: 200px;
		z-index: 2;
	}
	.r3417-wc-price-tooltip:hover .r3417-wc-price-tooltip-content { display: block; }

.rm34-woocommerce-header {
	background: transparent !important;
	display: inline-block;
	height: 80px;
	margin-top: 0.5rem;
	margin-bottom: 1.5rem;
	position: relative;
	width: 100%;
	z-index: 3;
}
.woocommerce-account .rm34-woocommerce-header {
	top: -5rem; right: -5rem;
}

.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content {
	margin-top: -5rem;
}

.woocommerce-MyAccount-navigation {
	position: -webkit-sticky;
	position: sticky;
	top: 160px;
}

	.woocommerce-MyAccount-navigation ul {
		border-top: 1px solid rgba(64,64,64,0.25);
		border-bottom: 1px solid rgba(64,64,64,0.25);
		display: inline-block;
		list-style: none;
		padding: 1rem 0;
		width: auto;
	}
	
	.woocommerce-MyAccount-navigation a {
		font-weight: bold;
		text-transform: capitalize;
	}
	
	.woocommerce-MyAccount-navigation li.is-active a {
		color: #191919 !important;
	}

.rm34-woocommerce-header > * {
	display: inline-block;
	margin: 0 1em 0 0;
	padding: 0;
	text-align: left;
	vertical-align: top;
}

.rm34-woocommerce-header + * {
	padding-top: 0;
}

	.rm34-woocommerce-header svg path {
		fill: #056f3a;
	}
	.rm34-woocommerce-header a:hover svg path {
		fill: #93c643;
	}

	.rm34-woocommerce-header select {
		max-width: calc(100% - 200px) !important;
		min-width: 100px !important;
	}
	
	.rm34-woocommerce-pickup-window-overview { height: 44px; position: absolute; top: 2.5rem; right: calc(7.5% + 105px); width: 100px; }
	
		.rm34-woocommerce-pickup-window-overview-icon { cursor: help; height: 32px; position: absolute; top: 4px; right: 0; width: 32px; }
		
		.rm34-woocommerce-pickup-window-overview-bug {
			background: #ffffff;
			border: 2px solid #f15f23;
			border-radius: 0.5em;
			color: #f15f23;
			display: none;
			font-size: 85%;
			font-weight: bold;
			line-height: 1.3em;
			padding: 0.75em;
			position: absolute; top: calc(100% + 5px); right: -7px; bottom: auto; left: auto;
			text-align: center;
		}
		
			.rm34-woocommerce-pickup-window-overview-bug-wedge {
				border-bottom: 10px solid #f15f23;
				border-left: 10px solid transparent;
				border-right: 10px solid transparent;
				height: 0;
				position: absolute; top: -10px; right: 10px; bottom: auto; left: auto;
				width: 0; 
			}
	
		.rm34-woocommerce-pickup-window-overview-content { display: none; }
		
		.rm34-woocommerce-pickup-window-overview:hover .rm34-woocommerce-pickup-window-overview-content,
		.rm34-woocommerce-pickup-window-overview.hover .rm34-woocommerce-pickup-window-overview-content
		{
			background: #ffffff;
			border: none;
			border-radius: 5px;
			box-shadow: 0 0 1px rgba(0,0,0,0.25), 2px 2px 8px rgba(0,0,0,0.125);
			display: block;
			font-size: 75%;
			line-height: 1.5em;
			max-width: 680px; min-width: 680px; width: 680px;
			min-height: 400px;
			padding: 1rem;
			position: absolute; top: 100%; right: 0;
			z-index: 2;
		}
		
		.rm34-woocommerce-pickup-window-overview:hover .rm34-woocommerce-pickup-window-overview-content p,
		.rm34-woocommerce-pickup-window-overview.hover .rm34-woocommerce-pickup-window-overview-content p
		{
			font-size: 100% !important;
		}
		
			.rm34-woocommerce-pickup-window-overview-content table.grid tr > * {
				padding: 2px 0.5em 0 0.5em;
			}
			
			.rm34-woocommerce-pickup-window-overview-content table[data-location-shipping-method] td div:not(:last-child) {
				border: 0;
				margin-bottom: 0;
				padding-bottom: 0;
			}

	.rm34-woocommerce-account-link { height: 44px; margin: 0; position: absolute; top: 2.5rem; right: calc(7.5% + 60px); width: 40px; }
	.rm34-woocommerce-account-link a { display: block; height: 100%; width: 100%; text-decoration: none; }
	.rm34-woocommerce-account-link a .account_icon, .rm34-woocommerce-account-link a .account_icon svg
	{ display: block; height: 100%; width: 100%; }

	.rm34-woocommerce-cart-link { height: 44px; margin: 0; position: absolute; top: 2.5rem; right: 7.5%; width: 44px; }
	.rm34-woocommerce-cart-link a { display: block; height: 100%; width: 100%; text-decoration: none; }
	.rm34-woocommerce-cart-link a .cart_icon, .rm34-woocommerce-cart-link a .cart_icon svg
	{ display: block; height: 100%; width: 100%; }

	.rm34-woocommerce-cart-link a .cart_count {
		color: white !important;
		display: inline-block;
		font-size: 12px;
		font-weight: bold;
		position: absolute; top: 40%; left: 60%;
		transform: translate(-50%, -50%);
	}
	
	.rm34-woocommerce-hover-bubble {
		background: #ffffff;
		border: 2px solid #f15f23;
		border-radius: 0.5em;
		display: block;
		font-size: 85%;
		line-height: 1.3em;
		opacity: 0;
		padding: 0.75em;
		position: absolute; top: calc(100% + 32px); right: -2px; bottom: auto; left: auto;
		white-space: nowrap;
		transition: all 0.3s ease;
	}

		.rm34-woocommerce-hover-bubble-wedge {
			border-bottom: 10px solid #f15f23;
			border-left: 10px solid transparent;
			border-right: 10px solid transparent;
			height: 0;
			position: absolute; top: -10px; right: 10px; bottom: auto; left: auto;
			width: 0; 
		}

	*:hover > .rm34-woocommerce-hover-bubble {
		opacity: 1;
		top: calc(100% + 12px);
	}

	.rm34-woocommerce-sidebar, .rm34-woocommerce-main {
		transition: width 0.3s ease, padding 0.3s ease;
	}
	
	.rm34-woocommerce-sidebar-hr { border-top-width: 1px; margin: 0.5em 0; }

	.rm34-woocommerce-sidebar-block {
		display: block;
		font-size: 85%;
		margin: 0 0 0.75em 0;
	}
	hr + .rm34-woocommerce-sidebar-block { margin: 0.25em 0 0 0; }
	.rm34-woocommerce-sidebar-block:last-of-type { margin-bottom: 0; }
	
	.rm34-woocommerce-sidebar-block label {
		display: block;
		margin: 0 0.5em;
	}
		
	.rm34-woocommerce-sidebar-block input[type=radio], .rm34-woocommerce-sidebar-block input[type=checkbox] {
		margin-right: 0.5em;
		position: relative; top: 0.25em;
	}
	
	.rm34-woocommerce-sidebar-block select { margin-top: 0.5em; }
	
	/* This convolution is to make the counts smaller */
	.rm34-woocommerce-sidebar-block ul.r3417_tweaks_wc_categories { font-size: 85% !important; }
	.rm34-woocommerce-sidebar-block ul.r3417_tweaks_wc_categories a { font-size: 120% !important; }

/* Categories list */
article ul.r3417_tweaks_wc_categories {
	font-size: 100% !important;
	list-style: none;
	padding-left: 0;
}
article ul.r3417_tweaks_wc_categories.subdepartments {
	font-size: 80% !important;
}

	article ul.r3417_tweaks_wc_categories a {
		font-size: 140% !important;
		font-weight: bold;
	}

/* Products table */
.woocommerce table.r3417_tweaks_wc_products.grid { position: relative; }

.woocommerce table.r3417_tweaks_wc_products.grid .r3417-tweaks-search-category-header th {
	background: #056f3a;
	color: #ffffff !important;
}

.woocommerce table.r3417_tweaks_wc_products.grid .r3417-tweaks-search-category-header th a:not(:hover) {
	color: #ffffff !important;
}

.woocommerce table.r3417_tweaks_wc_products.grid tr > * {
	padding: 0.5em;
}

.woocommerce table.r3417_tweaks_wc_products.grid td {
	vertical-align: middle;
}

.woocommerce table.r3417_tweaks_wc_products.grid.non_sale_hidden .product:not(.sale) { display: none !important; }
.woocommerce table.r3417_tweaks_wc_products.grid .product.category_hidden { display: none !important; }

.woocommerce .rm34-woocommerce-thumbnail {
	display: table-cell;
	height: 100px;
	margin: 0 !important;
	text-align: center !important;
	vertical-align: middle;
	width: 100px;
}

	.woocommerce .rm34-woocommerce-thumbnail img {
		display: block;
		height: auto;
		max-height: 100px;
		max-width: 100px;
		mix-blend-mode: multiply;
		text-align: center !important;
		vertical-align: middle;
		width: auto;
	}

.woocommerce .product_tag_badge {
	border-radius: 3px;
	cursor: help;
	display: inline-block;
	font-size: 10px;
	font-weight: bold;
	line-height: 10px;
	margin: 0 5px 0 0;
	padding: 3px 4px 2px 4px;
	text-align: center;
	text-transform: uppercase;
	width: 25px;
	vertical-align: middle;
}

.woocommerce table.r3417_tweaks_wc_products.grid .quantity, .woocommerce table.r3417_tweaks_wc_products.grid .quantity * { display: inline-block; vertical-align: baseline !important; }

.woocommerce tr.product.in-cart { background-color: #edf4d4; }
	
/* Use regular button colors for WooCommerce 'alt' color */
.woocommerce .button.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce #respond input#submit.alt, .woocommerce input.button.alt:not([type=reset]), .wc-proceed-to-checkout a.button.alt {
	background: #056f3a !important;
	color: #ffffff !important;
}
/* And put some decent margin on it! */
.woocommerce .woocommerce-error .button, .woocommerce .woocommerce-info .button, .woocommerce .woocommerce-message .button, .woocommerce-page .woocommerce-error .button, .woocommerce-page .woocommerce-info .button, .woocommerce-page .woocommerce-message .button {
	margin: 0 0 0.5rem 1.5rem;
}

/* Cart */
.cart-item-short-description, .cart-item-allow-substitutions, .cart-item-notes { font-size: 70%; }
.cart-item-short-description:after { clear: both; content: ''; display: table; }
.cart-item-allow-substitutions, .cart-item-notes { display: block; }

.cart-item-notes:not(.active) .cart-item-notes-label { color: #429644; display: inline !important; }
.cart-item-notes:not(.active) .cart-item-notes-label:hover { color: #93c643; cursor: text; }
.cart-item-notes.active .cart-item-notes-label { display: inline !important; }

.cart-item-notes:not(.active) .cart-item-notes-field { visibility: hidden; }
.cart-item-notes.active .cart-item-notes-field { visibility: visible; }

/* Checkout and after */
.cart_item dl.variation, .cart_item dl.variation *, ul.wc-item-meta, ul.wc-item-meta * {
	font-size: 11px !important;
	margin: 0 0.5em 0 0 !important;
	padding: 0 !important;
}
.cart_item dl.variation dt, .cart_item dl.variation dd, ul.wc-item-meta li {
	clear: none !important;
	display: inline-block !important;
	float: none !important;
	line-height: 1.5em !important;
	padding: 0 !important;
	white-space: nowrap !important;
	width: auto !important;
}
ul.wc-item-meta li { display: block !important; }
.cart_item dl.variation dd, ul.wc-item-meta li { margin: 0 1em 0 0 !important; }

/* Pickup window selections */
table[data-location-shipping-method] td div:not(:last-child) { border-bottom: 1px solid #eeeeee; margin-bottom: 5px; padding-bottom: 5px; }
table[data-location-shipping-method] td div.unavailable { opacity: 0.5; cursor: not-allowed; }
table[data-location-shipping-method] td div .pickup_window_times { display: inline-block; width: 9em; }
table[data-location-shipping-method] td div .availability_notes { display: inline-block; padding-left: 1.75em; }

.woocommerce-shipping-methods input[checked] + label { font-weight: bold; }

/* This will do */
.woocommerce-cart .breadcrumb, .woocommerce-checkout .breadcrumb { display: none; }
.shop_table tr.order-total, .woocommerce-table--order-details tfoot > tr:first-child { display: none; }
.woocommerce-table--order-details .wc-item-meta { font-size: 80%; }
.woocommerce-table--order-details .wc-item-meta .wc-item-meta-label { display: none; } /* Hiding "short_description" but may need to change if we add more fields */

/* Change size of notes box */
.woocommerce-checkout textarea#order_comments {
	display: block;
	height: 10em;
	margin: 0.5em 0;
	width: 100%;
}

/* Fix size issues */
.woocommerce-customer-details p { font-size: 100% !important; margin: 0.5em 0; }
.woocommerce button.button[name="woocommerce_checkout_place_order"] { font-size: 133.333%; }


/* CSS3 MEDIA QUERIES */


/* NON-PHONE NAVIGATION (content area over 783 pixels) */
@media screen and (min-width: 783px) {

	#header_sidebar {
		position: absolute; top: 0.5rem; right: 1.5rem;
	}

		#header_sidebar * {
			color: #056f3a !important;
		}
	
		#header_sidebar .widget, #header_sidebar .widget * {
			margin: 0 !important;
		}
	
	#nav_wrapper { background-color: transparent !important; }
	
	#primary_navigation, #primary_navigation * {
		font-size: 18px !important;
		font-weight: 600 !important;
		position: static !important;
	}

		/* #primary_navigation added to override !important in customizer.css that only affects non-logged-in users */
		#header #primary_navigation .menu > li:hover > a,
		#header #primary_navigation .menu:not(:hover) > li.current-menu-ancestor > a
		{
			background: transparent !important;
			color: #93c643 !important;
			position: relative !important;
		}
		#header #primary_navigation .menu > li:hover > a:after,
		#header #primary_navigation .menu:not(:hover) > li.current-menu-ancestor > a:after
		{
			color: #93c643;
			content: '\25be';
			display: block;
			font-size: 16px;
			position: absolute !important; left: 50%; top: 40%;
			transform: translateX(-50%);
		}
	
		#header .menu { margin-top: 38px; }
		#header .menu > li { margin-top: 0; }
		
		#header .menu > li > a { padding-bottom: 1em; }

		#header .menu > li:hover > ul, #header .menu > li.current-menu-item > ul, #header .menu > li.current-menu-ancestor > ul {
			box-shadow: inset 0 -1px rgba(0,0,0,0.1) !important;
			display: block;
			font-size: 90%;
			line-height: 40px;
			margin-top: 0;
			min-width: 100%;
			padding: 0 59px 0 0;
			position: absolute !important; top: 100%; right: 0; bottom: auto; left: 0;
			text-align: right !important;
			width: 100% !important;
			z-index: 1;
		}
		#header .menu > li:hover > ul {
			background-clip: padding-box;
			border-bottom: 50px solid transparent;
			z-index: 2;
			
		}
		#header .menu:hover > li.current-menu-ancestor:not(:hover) > ul { display: none; }
	
		#header .menu > li:hover > ul > li, #header .menu > li.current-menu-item > ul > li, #header .menu > li.current-menu-ancestor > ul > li {
			display: inline-block !important;
		}
		body.cart_empty #header .menu > li:hover > ul > li.cart, body.cart_empty #header .menu > li.current-menu-item > ul > li.cart, body.cart_empty #header .menu > li.current-menu-ancestor > ul > li.cart { display: none !important; }
	
		#header .menu li.current-menu-ancestor > a, #header .menu li.current-menu-item > a { color: #056f3a !important; }
	
		#header .menu ul li:hover { background: transparent !important; }
	
		#header .menu ul a { padding-top: 0; padding-bottom: 0; }

	/* Override theme's standard handling of search box */
	#header .search_open > div {
		opacity: 1;
		z-index: 1;
	}
	#header .search_open .menu > li > ul > li {
		visibility: hidden !important;
	}

	#header .search {
		margin-right: 15px;
		position: relative !important;
	}
	
	/* .search_fields_wrapper is necessary to override Customizer in Firefox */
	#header .search .search_fields_wrapper .svg_wrapper:hover { background: transparent !important; }
	
	#header .search_open .search { width: 44px; }
	
	#header .search .floating_search_form { display: none; }
	
	#header .search_open .search .floating_search_form {
		background: transparent;
		display: block;
		padding: 10px;
		position: absolute !important; top: calc(100% - 1px); right: 0;
		width: 240px;
	}
	
	#header .search_open .search .floating_search_form input[type=text] {
		background: #ffffff;
	}

	body.has_subnav #page {
		padding-top: 120px !important;
	}

	.rm34-woocommerce-wrapper {
		clear: both;
		display: flex;
		justify-content: space-between;
		/* Don't put an overflow here or position: sticky won't work! */
		position: relative;
		width: 100%;
	}

		.rm34-woocommerce-sidebar {
			display: flex;
			flex-direction: column;
			height: auto;
			overflow: hidden;
			padding: 0.5rem 0 2.5rem 6rem;
			width: 25%;
		}
	
			.rm34-woocommerce-sidebar form {
				margin-bottom: 0.75rem;
				width: 100%;
			}

			.rm34-woocommerce-sidebar input[type=text] {
				float: left;
				font-size: 80%;
				width: calc(100% - 70px);
			}
		
			.rm34-woocommerce-sidebar input[type=submit] {
				float: right;
				font-size: 80%;
				margin: 0 0 0 5px;
				padding: 0;
				width: 60px;
			}
		
			.rm34-woocommerce-sidebar select {
				font-size: 80%;
				max-width: 100% !important;
				min-width: 100% !important;
				width: 100% !important;
			}
			.rm34-woocommerce-sidebar-block select { font-size: 100%; }
					
		.rm34-woocommerce-main {
			display: flex;
			flex-direction: column;
			overflow: hidden;
			padding: 0.5rem 6rem 2.5rem 2rem;
			width: 75%;
		}
	
			.rm34-woocommerce-main > * {
				padding: 0 !important;
			}

			.rm34-woocommerce-main > .entry-header {
				margin-top: 0 !important;
				padding-bottom: 1em !important;
			}

}


/* VERY LARGE SCREENS (content area over 1800 pixels) */
@media screen and (min-width: 1800px) {

	#page { font-size: 80% !important; }

	#modular_with_sidebar {
		width: 75% !important;
	}

	#modular_sidebar {
		width: 25% !important;
	}

}


/* LARGE SCREENS (content area over 1600 pixels) */
@media screen and (min-width: 1600px) {

	section.columns.columns-2.full_bleed .column {
		padding-right: 7.5rem;
		padding-left: 7.5rem;
	}
	
	.woocommerce-account .rm34-woocommerce-header {
		right: -15rem;
	}

	#header .menu { margin-top: 35px; }

	#header .search_open .search .floating_search_form { top: calc(100% - 2px); }

	#primary_navigation, #primary_navigation * {
		font-size: 20px !important;
	}
	
	#page { font-size: 85%; }

	#modular_with_sidebar {
		width: 70%;
	}

	#modular_sidebar {
		width: 30%;
	}

	#footer .footer {
		font-size: 100% !important;
	}

}


/* SMALLER COMPUTERS (content area under 1200 pixels) */
@media screen and (max-width: 1200px) {

	.rm34-woocommerce-sidebar {
		padding: 0.5rem 0 2.5rem 4rem;
		width: 30%;
	}

	.rm34-woocommerce-main {
		padding: 0.5rem 4rem 2.5rem 1.5rem;
		width: 70%;
	}

	#footer .footer {
		font-size: 80% !important;
	}

}
@media screen and (max-width: 1200px) and (min-width: 783px) {

}


/* TABLETS (content area under 1024 pixels) */
@media screen and (max-width: 1024px) {

	section.columns.columns-2.full_bleed .column {
		padding-right: 3rem;
		padding-left: 3rem;
	}

	.rm34-woocommerce-sidebar {
		padding: 0.5rem 0 2.5rem 3rem;
		width: 33.333%;
	}

	.rm34-woocommerce-main {
		padding: 0.5rem 3rem 2.5rem 1rem;
		width: 66.667%;
	}

	#primary_navigation, #primary_navigation * {
		font-size: 16px !important;
	}
	
	#header .menu > li > a {
		padding-right: 10px; padding-left: 10px;
	}

	#header .menu > li:hover > ul, #header .menu > li.current-menu-item > ul, #header .menu > li.current-menu-ancestor > ul {
		padding-right: 54px;
	}

	#header .menu { margin-top: 43px; }

	#header .search_open .search .floating_search_form { top: calc(100% - 3px); }
	
	#footer .footer {
		font-size: 110% !important;
	}

}


/* PHONES (content area under 782 pixels) */
@media screen and (max-width: 782px) {

	h3 { font-size: 160%; }
	h4 { font-size: 140%; }

	#header {
		background-color: #fbf9fa !important;
		background-image: none !important;
	}
	
	#header .menu { margin-top: 0; }
	
	#logo.background_image {
		height: 40px !important;
		max-height: 40px !important;
		min-height: 40px !important;
	}

	body.nav_open #primary_navigation { top: 1.5em; }

	#header_sidebar { display: none; }
	
	#primary_navigation, #primary_navigation *, body.nav_open #header .menu * {
		font-size: 20px !important;
	}
	
	body.nav_open #header .menu li.menu-item-has-children:before { height: 1.5em; }

	#modular_with_sidebar, #modular_sidebar {
		width: 100%;
	}

	.rm34-woocommerce-account-link { height: 32px; width: 32px; top: 0; right: calc(1rem + 50px); }
	.rm34-woocommerce-cart-link { height: 36px; width: 36px; top: 0; right: 1rem; }

	/* Remove unwanted extra formatting Events Calendar adds on mobile layouts */
	.tribe-events-sub-nav li a,
	.tribe-events-loop .tribe-events-event-meta,
	.tribe-events-list .tribe-events-venue-details,
	.tribe-events-list .tribe-event-schedule-details, .tribe-events-list .time-details
	{
		background: transparent !important;
		border: none !important;
		padding: 0 !important;
	}
	
	.rm34-woocommerce-header {
		float: right;
		height: 150px;
		margin-bottom: 0.5rem;
		padding-top: 1rem;
		position: relative;
		width: 65px;
	}
	.woocommerce-account .rm34-woocommerce-header {
		top: 0; right: 0;
	}
	
	.rm34-woocommerce-header input { margin: 0 0.25em 0.25em 0; }

	.rm34-woocommerce-pickup-window-overview { top: calc(1.5rem + 40px); right: 0; }

	.rm34-woocommerce-pickup-window-overview:hover .rm34-woocommerce-pickup-window-overview-content,
	.rm34-woocommerce-pickup-window-overview.hover .rm34-woocommerce-pickup-window-overview-content
	{
		font-size: 70%;
		max-width: 280px; min-width: 280px; width: 280px;
	}
	
	.rm34-woocommerce-pickup-window-overview .pickup_window_times_remaining { display: none; }
	
	.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content {
		margin-top: 0;
	}

	.rm34-woocommerce-wrapper {
		clear: none !important;
		display: block;
		position: relative;
		width: 100%;
	}
	
		.rm34-woocommerce-wrapper form { clear: none !important; }
	
		.rm34-woocomerce-sidebar-toggle {
			background: transparent url('/wp-content/themes/r3417/images/ui/toggle_closed.svg') left center no-repeat;
			background-size: 16px 16px;
			color: #056f3a;
			cursor: s-resize;
			font-weight: bold;
			margin: 1.5rem 80px 1.5rem 1.5rem;
			padding: 0 0 0 26px;
			-moz-user-select: none;
			-webkit-user-select: none;
			user-select: none;
		}
		.rm34-woocomerce-sidebar-toggle.open {
			background-image: url('/wp-content/themes/r3417/images/ui/toggle_open.svg');
			cursor: n-resize;
		}

		.rm34-woocommerce-sidebar {
			clear: none !important;
			display: block;
			margin-right: 80px;
			padding: 0 0 1.5rem 1.5rem;
			width: 100%;
		}
		
		.rm34-woocomerce-sidebar-toggle:not(.open) ~ .rm34-woocommerce-sidebar { display: none; }
		
			.rm34-woocommerce-sidebar select { max-width: 240px; }
	
		.rm34-woocommerce-main {
			clear: none !important;
			display: block;
			padding: 0 1.5rem 1.5rem 1.5rem;
			width: 100%;
		}
		
			.rm34-woocommerce-main > * {
				padding: 0 !important;
			}

			.rm34-woocommerce-main > .entry-header {
				margin-top: 0 !important;
				padding-bottom: 1em !important;
			}
			
			.rm34-woocommerce-main .entry-content, .rm34-woocommerce-main .entry-content *, .rm34-woocommerce-main .woocommerce-breadcrumb:after { clear: none !important; }
	
	.woocommerce table.r3417_tweaks_wc_products.grid { font-size: 90%; }

	.woocommerce table.r3417_tweaks_wc_products.grid thead { display: none; }
	.woocommerce table.r3417_tweaks_wc_products.grid tr {
		background: #ffffff;
		border: 1px solid rgba(0,0,0,0.1);
	}
	.woocommerce table.r3417_tweaks_wc_products.grid tr:nth-of-type(2n) {
		background: rgba(0,0,0,0.05);
	}
	.woocommerce table.r3417_tweaks_wc_products.grid td {
		background: transparent !important;
		border: none;
		display: inline-block;
		line-height: 1.3em;
		vertical-align: middle;
		width: 20% !important;
	}
	.woocommerce table.r3417_tweaks_wc_products.grid td:first-child {
		white-space: normal !important;
		width: 85px !important;
	}
	.woocommerce table.r3417_tweaks_wc_products.grid td:nth-of-type(2) {
		white-space: normal !important;
		width: calc(73% - 85px) !important;
	}
	.woocommerce table.r3417_tweaks_wc_products.grid td:last-child {
		text-align: right;
		width: 48% !important;
	}

	.woocommerce .rm34-woocommerce-thumbnail {
		height: 80px;
		width: 80px;
	}

		.woocommerce .rm34-woocommerce-thumbnail img {
			max-height: 80px;
			max-width: 80px;
		}


}
