/*
Theme Name:		Archibalds WC
Author:			CMS Web Solutions
Author URI:		http://cmswebsolutions.com
*/

* {
	box-sizing: border-box;
}

a img {
	border: none;
	outline: none;
}

h1,h2,h3,h4 {
	line-height: 1.25;
	color: #333;
	font-weight: 400;
}

h1 {
	padding: 1.5em 0 0;
	margin: 0 0 1em;
}

.home h1 {
	font-size: 250%;
}

h1:before {
	content: url(img/leaf-left.png);
	vertical-align: -20%;
	padding: 0 .25em 0 0;
}

h1:after {
	content: url(img/leaf-right.png);
	vertical-align: -20%;
	padding: 0 0 0 .25em;
}

h2,h3,h4 {
	margin: 1.75em 0 .5em;
}

p,ul,ol {
	margin: 1em 0;
}

ul,ol {
	padding-left: 1.5em;
}

ul li,ol li {
	margin-bottom: .5em;
}

blockquote {
    background: #fcfbfa;
    border-left: 10px solid #eae4de;
    margin: 0 0 1.5em;
    padding: 1em;
}

img {
	max-width: 100%;
	height: auto;
	border-style: none;
}

a {
	color: #333;
	transition: color .1s;
}

a:hover,a:focus {
	color: #333;
}

a:active {
	transition: color 2s;
	color: blue;
}

iframe,embed {
	max-width: 100%;
	display: block;
	margin: 0 auto;
}

article,aside,details,figcaption,figure,footer,header,main,nav,section,summary {
	display: block;
}

button,input,select,textarea {
	font: inherit;
	margin: 0;
}

table {
	border-collapse: collapse;
	margin: 1em auto 2em;
	padding: 0;
	width: 100%;
	max-width: 100%;
	overflow-x: scroll;
}

table caption {
	font-weight: 700;
	text-align: left;
	font-size: 125%;
	padding-bottom: .25em 0;
}

table thead,table tbody {
	max-width: 100%;
}

table thead {
	text-align: left;
}

table th {
	font-weight: 700;
	font-size: 110%;
}

table tr {
	border-bottom: 1px solid #eae4de;
}

table tr:hover,table tr:focus {
	background: #F2F3F3;
}

table tr td,table tr th {
	padding: .25em;
	text-align: left;
}

body {
	margin: 0 auto;
	font-family: 'Quattrocento', serif;
	font-weight: 400;
	font-size: 110%;
	position: relative;
	color: #333;
	background: #fff;
}

.hidden {
	position: absolute;
	left: -1000em;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
	margin: -1px;
	padding: 0;
	clip: rect(0,0,0,0);
	border: 0;
}

.clearfix {
	overflow: hidden;
	content: "";
	visibility: hidden;
	display: block;
	height: 1px;
	width: 1px;
	clear: both;
}

.inner {
	display: block;
	max-width: 1140px;
	margin: 0 auto;
	position: relative;
}

@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

header {
	width: 100%;
	display: block;
	position: relative;
}

a.skip {
	position: absolute;
	top: 0;
	left: -1000em;
	background: #354c65;
	color: #fff;
	text-decoration: none;
	border-radius: 0 0 3px 3px;
}

a.skip:focus,a.skip:hover {
	left: 1em;
	top: 0;
	padding: .5em 1em;
}

header .inner {
	display: flex;
	justify-content: space-between;
}

.logo,
.woocommerce img.logo, .woocommerce-page img.logo {
	width: 100%;
	height: auto;
	max-width: 260px;
	margin: 1em 0 0;
	display: inline-block;
}

.utilities {
	text-align: right;
}

.vcard .tel,
.vcard .address {
	display: block;
	font-size: 125%;
}

.vcard .tel {
	margin: .5em 0 0;
}

.vcard .address {
	margin: 0 0 .25em;
}

.vcard a {
	color: #010101;
	text-decoration: none;
}

.vcard a:hover,.vcard a:focus {
	color: #333;
}

.open_closed {
	vertical-align: top;
	position: relative;
	font-size: 125%;
	display: inline-block;
}

h3.hours {
	margin: 0;
	padding: 0;
	background: transparent;
	color: black;
	position: relative;
	vertical-align: top;
	font-weight: 700;
}

table.hours {
	margin: 0;
	padding: .5em;
	display: block;
	border-radius: 6px;
	position: absolute;
	top: 2em;
	right: 0;
	z-index: 12;
	background: white;
	border: 1px solid #ccc;
	overflow-x: auto;
	text-align: left;
	font-size: 80%;
	min-width: 13em;
}

button.hours {
	margin-top: 0;
	padding: 0;
	border: none;
	background: transparent;
	color: black;
	position: relative;
	top: .5em;
	vertical-align: top;
}
	
button.hours:after {
	content: '\25BC';
	padding-left: .25em;
	font-size: 80%;
}
	
button.hours:hover, 
button.hours:focus {
	color: #98010f;
}

button.hours span {
	font-weight: 700;
	color: #98010f;
}

table.hours.hide {
	display: none;
}
	
table.hours.hide tr {
	border:  none;
}

table.hours tr {
  border: none;
}

table.hours tr td {
  padding: 0.1em;
}

table.hours tr.current td {
  font-weight: 700;
}

nav {
	display: inline-block;
	background: white;
	width: 100%;
	position: relative;
	z-index: 10;
	margin-top: 1em;
}

nav button {
	display: none;
}

nav ul {
	display: flex;
	margin: 0;
	padding: 0;
	width: 100%;
	border-top: 2px solid #98010f;
	border-bottom: 2px solid #98010f;
}

.ie9 nav ul {
	display: inline-block;
}

nav ul.sub-menu {
	display: none;
}

nav ul li {
	list-style: none;
	margin: 0 .5em;
	position: relative;
	flex: 1 1 auto;
}

.ie9 nav ul li {
	display: inline-block;
}

nav ul a {
	display: block;
	text-decoration: none;
	text-align: center;
	color: black;
	padding: .5em 0;
}

nav ul a:hover,
nav ul a:focus,
nav ul .current_page_item a,
nav ul .current-page-ancestor a{
	color: #98010f;
}

nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] {
	margin-top: 0;
	display: block;
	position: absolute;
	top: 2.25em;
	min-width: 10em;
	background: white;
	z-index: 10;
}

nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] li {
	margin: 0;
}

nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] a {
	padding: .5em;
	text-align: left;
	transition: background 0.2s;
}

nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] a:hover, 
nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] a:focus {
}

nav ul [aria-haspopup="true"] + ul li {
	display: block;
	position: relative;
}

#main {
	width: 100%;
	display: inline-block;
	position: relative;
	opacity: 0;
	-webkit-animation: fadeIn ease-in 1;
	animation: fadeIn ease-in 1;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: .4s;
	animation-duration: .4s;
	-webkit-animation-delay: .1s;
	animation-delay: .1s;
	line-height: 150%;
}

.ie9 #main {
	opacity: 1;
}

#main .inner,
.home.page #main .inner {
	display: block;
}

.page #main .inner,
.blog #main .inner,
.single #main .inner {
	display: flex;
}

.ie9 .page #main .inner,
.ie9 .blog #main .inner,
.ie9 .single #main .inner {
	display: inline-block;
}

.notice {
	padding: .1em 1em;
	background-color: #58585a;
	text-align: center;
}

.notice * {
	color: #fff;
}

.notice a:hover,
.notice a:focus {
	color: #edeee8;
}

/* Home Page styles */

.hero {
	margin: 1em 0 0;
	display: inline-block;
}

.hero img {
	outline: 2px solid white;
	outline-offset: -1em;
}

.callouts ul {
	margin: 2em 0 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	text-align: left;
}

.ie9 .callouts ul {
	display: inline-block;
}

.callouts li {
	margin: 0 0 1em;
	padding: 0;
	list-style: none;
	text-align: center;
}

.ie9 .callouts li {
	float: left;
	margin-right: .5em;
}

.callouts.landscape li {
	width: 30%;
}

.callouts.portrait li {
	width: 22%;
}

.landscape h1 {
	padding: 0;
	margin: 1em 0;
	text-align: center;
}

.portrait h2 {
	padding: 0;
	margin: 1em 0;
	font-size: 250%;
	text-align: center;
}

.portrait h2:before {
	content: url(img/leaf-left.png);
	vertical-align: -20%;
	padding: 0 .25em 0 0;
}

.portrait h2:after {
	content: url(img/leaf-right.png);
	vertical-align: -20%;
	padding: 0 0 0 .25em;
}

.landscape h2,
.portrait h3 {
	margin: .5em 0;
	padding-bottom: .5em;
	text-align: center;
	text-transform: uppercase;
	font-size: 140%;
	font-weight: 700;
	background: url(img/divider.png) center bottom no-repeat;
}


.callouts li a {
	text-decoration: none;
}

.callouts li a:hover,.callouts li a:focus {
	color: #98010f;
}

.callouts img {
	outline: 2px solid white;
	outline-offset: -1em;
	width: 100%;
}

.callouts a:hover img,
.callouts a:focus img {
	outline: 2px solid #98010f;
}

.callouts.landscape img {
	max-width: 340px;
	height: auto;
}

.callouts.portrait img {
	max-width: 254px;
	height: auto;
}

.feature {
	margin: 1em auto;
	padding: 0 2.5em;
	display: block;
	font-size: 125%;
	background: url(img/barnboard.jpg) center center;
	background-size: cover;
	border: 1px solid #989898;
	text-align: center;
}

.feature h2 {
	padding: 0;
	margin: 1em 0 0;
	color: #98010f;
	font-size: 200%;
	text-align: center;
}

.feature h2:before {
	content: url(img/leaf-left-red.png);
	vertical-align: -20%;
	padding: 0 .25em 0 0;
}

.feature h2:after {
	content: url(img/leaf-right-red.png);
	vertical-align: -20%;
	padding: 0 0 0 .25em;
}

.general {
	margin: 2em 0;
	padding: 0 2.5em;
	font-size: 110%;
	text-align: center;
}

/* End Home Page styles */

.content {
	padding: 0 0 2em;
	width: 70%;
	flex: 1 1 auto;
}

.ie9 .content {
	display: inline-block;
	vertical-align: top;
}

.sidebar {
	width: 20%;
	margin: 0 4em 0 0;
	flex: 1 1 auto;
}

.ie9 .sidebar {
	display: inline-block;
	vertical-align: top;
}

.sectionnav {
	background: #f6f6f6;
}

.sectionnav a {
	text-decoration: none;
}

.sectionnav h2 {
	color: white;
	background: #98010f;
	padding: 0 .25em;
	border-right: 1px solid white;
	border-left: 1px solid white;
	position: relative;
}

.sectionnav h2:before{
    border: 1px solid white;
    content: "";
    position: absolute;
    top: .25em;
    bottom: .25em;
    left: -1px;
    right: -1px;
}

.sectionnav .h2wrapper {
	display: block;
	padding: 1em;
	border-right: 1px solid white;
	border-left: 1px solid white;
	position: relative;
}

.sectionnav h2 a {
	color: white;
}

.sectionnav h2 a:hover,
.sectionnav h2 a:focus {
	color: white;
	text-decoration: underline;
}

.sectionnav ul {
	margin: 0;
	padding: .5em 1em .5em 0;
}

.sectionnav li {
	padding-left: 2em;
	list-style: none;
}

.sectionnav li:hover,
.sectionnav li:focus,
.sectionnav li.current_page_item {
	background: url(img/arrowhead.png) left .25em no-repeat;
}

.sectionnav a:hover,
.sectionnav a:focus {
	color: #98010f;
}

/*
.blog .sidebar,
.single .sidebar {
	width: 15%;
	margin: 2em 0 2em 2em;
}
*/

.sidebar .marketing {
	border-top: none;
	border-bottom: none;
	margin: 2em 0;
	padding: 12em 0 1em;
	font-size: 100%;
	text-align: center;
	background: #98010f url(img/hot-off-the-press_lg.png) center top no-repeat;
}

.sidebar .marketing:before {
	content: none;
}

.sidebar .latest {
	margin: 1em auto;
	padding: 1em .25em;
	border-top: 1px solid #d66c7c;
	border-bottom: 1px solid #d66c7c;
}

.sidebar .latest a {
	display: block;
	color: white;
	text-decoration: none;
	margin: 0 1em;
	padding: .25em .5em;
	font-size: 110%;
	border: 2px solid white;
	border-radius: 4px;
}

.sidebar .latest a:hover,
.sidebar .latest a:focus {
	color: #98010f;
	background: white;
	
}

.sidebar .signup {
	padding: 0 1em;
	text-align: left;
}

.sidebar .signup p {
	font-size: 110%;
}

.sidebar form {
	width: 100%;
}

.sidebar .signup ul,
.sidebar .signup li {
	display: block;
	width: 100%;
}

.sidebar input[type='text'],
.sidebar input[type='email'] {
	margin-bottom: .5em;
	width: 100%;
}

.sidebar .social {
	margin-top: 1em;
	border-top: 1px solid #d66c7c;
}

.hilite {
	padding: .25em 0;
	font-size: 1.25em;
	text-align: center;
	border-top: 2px solid #98010f;
	border-bottom: 2px solid #98010f;
}

/* WooCommerce */
.cartinfo {
	margin: 0;
	padding: 0 .5em;
	display: inline-block;
	color: white;
	background: #98010f	url(img/bottles.png) 1.5em .25em no-repeat;
	position: relative;
}

.cartinfo:before{
    border: 1px solid white;
    content: "";
    position: absolute;
    top: -1px;
    bottom: .5em;
    left: -1px;
    right: -1px;
}

.cartwrapper {
	display: block;
	padding: 0 .25em;
	border-right: 1px solid white;
	border-left: 1px solid white;
	position: relative;
}

.cartinfo li {
	list-style: none;
	display: inline-block;
	padding: 1em .5em;
}

.cartinfo li:first-of-type a {
	border-right: 1px solid white;
	padding-right: 1em;
}

.cartinfo a {
	color: white;
	text-decoration: none;
}

.cartinfo a:hover,
.cartinfo a:focus {
	text-decoration: underline;
}

.basket {
	padding-left: 2.25em;
}

.woocommerce div.product {
	margin-top: 2em;
}

.woocommerce #content div.product div.images, 
.woocommerce div.product div.images, 
.woocommerce-page #content div.product div.images, 
.woocommerce-page div.product div.images {
	width: 30%;
}

.woocommerce div.summary .woocommerce #content div.product div.summary, 
.woocommerce div.product div.summary, 
.woocommerce-page #content div.product div.summary, 
.woocommerce-page div.product div.summary {
	width: 65%;
}

.woocommerce div.product .product_title {
	clear: none;
	padding: 0;
	margin-top: inherit;
}

.woocommerce ul.products li.product a {
	display: block;
	text-align: center;
}

.woocommerce #main div.product div.images img,
.woocommerce ul.products li.product a img {
	width: auto;
	margin: 0 auto 1em;
}

.related {
	clear: both;
}

/*

.woocommerce #main img {
	outline: 2px solid white;
	outline-offset: -1em;
}
*/

.woocommerce div.product p.price, .woocommerce div.product span.price, .woocommerce ul.products li.product .price {
	color: #181818;
}

.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {
	color: white;
	background: #181818;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	display: block;
	margin: 0;
	padding: .35em .75em;
	border: 1px solid #333;
	border-radius: 0;
}

.woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #respond input#submit:focus, .woocommerce a.button:focus, .woocommerce button.button:focus, .woocommerce input.button:focus,
.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:focus, .woocommerce a.button.alt:focus, .woocommerce button.button.alt:focus, .woocommerce input.button.alt:focus {
	color: #181818;
	background: white;
}

.woocommerce #respond input#submit.disabled, .woocommerce #respond input#submit:disabled, .woocommerce #respond input#submit:disabled[disabled], .woocommerce a.button.disabled, .woocommerce a.button:disabled, .woocommerce a.button:disabled[disabled], 
.woocommerce button.button.disabled, .woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled], .woocommerce input.button.disabled, .woocommerce input.button:disabled, .woocommerce input.button:disabled[disabled] {
	padding: .35em .75em;
}

.woocommerce-message {
	width: 100%;
	border-top-color: #181818;
}

/* End WooCommerce */


/* Default gallery */
.gallery {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
}

.ie9 .gallery {
	display: inline-block;
}

.gallery-item {
	margin-right: .5em;
}

.gallery br {
	display: none;
}

#lightbox {
	opacity: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 0;
	overflow: hidden;
	background: #000;
	background: rgba(0,0,0,0.85);
	z-index: 10;
}

#lightbox .loading {
	position: fixed;
	top: 40%;
	left: 0;
	color: #fff;
	z-index: 3;
	font-size: 2.5em;
	padding: .5em;
	width: 100%;
	opacity: 0;
	transition: opacity .1s;
	pointer-events: none;
}

#lightbox.changing #img-box,#lightbox.changing #prev,#lightbox.changing #next {
	opacity: 0 !important;
}

#lightbox.changing .loading {
	opacity: 1;
}

#lightbox button {
	pointer-events: none;
}

#lightbox.active {
	height: 100%;
	opacity: 1;
	pointer-events: auto;
}

#lightbox.active button {
	pointer-events: auto;
}

#lightbox .image {
	text-align: center;
	height: 100%;
}

#lightbox .image #img-box {
	display: inline-block;
	max-width: 98%;
	max-height: 80%;
	width: auto;
	height: auto;
	vertical-align: middle;
	position: relative;
	opacity: 1;
	transition: opacity .2s;
}

#lightbox .image #img-box #photo {
	display: block;
	height: auto;
	max-height: 100%;
	width: auto;
	box-shadow: 0 0 1em rgba(0,0,0,0.8);
	pointer-events: none;
	margin: 0 auto;
	text-align: center;
}

#lightbox .image #img-box .caption {
	text-align: left;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: .5em;
	background: #000;
	background: rgba(0,0,0,0.8);
	color: #fff;
}

#lightbox .image #next,#lightbox .image #prev {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 50%;
	background: none;
	text-align: left;
	border: none;
	outline: none;
	opacity: 0;
	transition: opacity .2s;
	cursor: pointer;
}

#lightbox .image #next:hover,#lightbox .image #prev:hover,#lightbox .image #next:focus,#lightbox .image #prev:focus {
	opacity: 1;
}

#lightbox .image #next img,#lightbox .image #prev img {
	width: 5em;
	height: auto;
}

#lightbox .image #next {
	left: 50%;
	text-align: right;
}

#lightbox .image #close {
	padding: .25em 1em;
	font-size: 100%;
	position: absolute;
	top: 1.5em;
	right: 1em;
	background: #000;
	background: transparent;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 2px;
	cursor: pointer;
}

#lightbox .image #close:hover,#lightbox .image #close:focus {
	background: #fff;
	color: #000;
}

#lightbox .image .height {
	vertical-align: middle;
	display: inline-block;
	height: 100%;
	width: .001%;
}


.ios #lightbox .image #close {
	top: .5rem;
	right: .5rem;
}

.ios #lightbox .image #next,
.ios #lightbox .image #prev {
	opacity: 1;
}

.ios #lightbox .image #next img,
.ios #lightbox .image #prev img {
	display: none;
}

.ios #lightbox .image #next span.hidden,
.ios #lightbox .image #prev span.hidden {
	position: static;
	left: 0;
	width: auto;
	height: auto;
	overflow: auto;
	margin: 0;
	padding: 0;
	clip: none;
	border: 0;
}

.post {
	margin-bottom: 1.5em;
	padding: 1.5em 0 .5em;
	background: url(img/divider_blog.png) left top no-repeat;
}

.post img,
.post .details {
	display: inline-block;
	vertical-align: top;
} 

.post img {
	margin-right: 2em;
	outline: 2px solid white;
	outline-offset: -1em;
}

.post .details {
	width: 60%;
}

.post h2 {
	margin-top: 0;
}

.post h2 a {
	text-decoration: underline;
	-webkit-text-decoration-color: #aaa;
	text-decoration-color: #aaa;
}

.post h2 a:hover,
.post h2 a:focus {
	color: #98010f;
	-webkit-text-decoration-color: #98010f;
	text-decoration-color: #98010f;
}

.post:last-of-type {
	border: none;
}

.post a.read-more {
	display: block;
}

.alignleft,img.alignleft {
	display: inline;
	float: left;
	margin: 1.5em 1.5em 1.5em 0;
}

.alignright,img.alignright {
	display: inline;
	float: right;
	margin: 1.5em 0 1.5em 1.5em;
}

.aligncenter,img.aligncenter {
	display: block;
	clear: both;
	margin: 1.5em auto;
}

.wp-caption {
	max-width: 100%;
	position: relative;
	display: inline-block;
}

.wp-caption img {
	display: block;
	max-width: 100%;
	height: auto;
}

.wp-caption p.wp-caption-text {
	display: block;
	position: absolute;
	width: 100%;
	margin: 0;
	padding: .5em;
	left: 0;
	bottom: 0;
	color: white;
	background: rgba(0,0,0,.8);
}

ul.navigation {
	margin: 0;
	padding: 0 !important;
	list-style-type: none;
}

ul.navigation li {
	float: right;
}

ul.navigation li.newer {
	float: left;
}

footer {
	position: relative;
	bottom: 0;
	width: 100%;
	padding: 0;
}

.marketing {
	position: relative;
	width: 100%;
	color: #fff;
	font-size: 125%;
	background: #98010f;
	border-top: 10px solid white;
	border-bottom: 1px solid white;
	padding: 0 1em;
}

.marketing:before {
	content: " ";
	position: absolute;
	z-index: -1;
	top: -15px;
	left: -1px;
	right: -1px;
	bottom: 0;
	border: 1px solid #98010f;
}

.marketing .inner {
	padding: 3em 0 3em 12em;
	background:  url(img/hot-off-the-press.png) left center no-repeat;
}

.social {
	flex: 1 1 auto;
}

.newsletter h3 {
	color: white;
}

.newsletter ul {
	margin: 0;
	padding: 0;
	display: inline-block;
}

.newsletter li {
	margin: 0;
	padding: 0;
	display: inline-block;
	list-style: none;
	font-size: 90%;
}

.newsletter input[type='text'],
.newsletter input[type='email'] {
	border: 2px solid #8e7d7e;
}

.newsletter button {
	color: white;
	background: #181818;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: .05em;
	display: inline-block;
	margin: 0;
	padding: .15em 1em;
	border: 1px solid #333;
	font-size: 90%;
}

.newsletter button:hover,
.newsletter button:focus {
	color: #181818;
	background: white;
}

#mce-responses.clear {
	display: inline-block;
}

.social h3 {
	color: white;
}

.social ul {
	margin: 1em 0 0;
	padding: 0;
	display: flex;
	justify-content: center;
}

.ie9 .social ul {
	display: inline-block;
}

.social li {
	list-style: none;
	margin: .25em;
}

.ie9 .social li {
	float: left;
}

.social li a {
	display: block;
}

.social li a:hover,.social li a:focus {
	transform: scale(1.1);
}

.social img {
	border-radius: 1em;
	max-width: 32px;
	height: auto;
}

.logos {
	position: relative;
	margin-top: -1px;
	border-top: 8px solid #98010f;
	padding-top: 10px;
}

.logos:before {
	content: " ";
	position: absolute;
	z-index: -1;
	top: 10px;
	left: -1px;
	right: -1px;
	bottom: -1px;
	border: 1px solid #98010f;
}

.logos .inner {
	text-align: center;
	padding: 2em 0;
}

.logos img {
	margin: 0 2em;
	max-height: 70px;
	width: auto;
}

footer .cols {
	width: 100%;
	color: #1d1d1d;
	background: #f2f3f3;
	padding: 0 1em;
}

footer .cols .inner {
	position: relative;
	display: flex;
	width: 100%;
	padding: 2em 0;
	justify-content: space-between;
}

.ie9 footer .cols .inner {
	display: inline-block;
}

footer .col {
	width: 30%;
}

.ie9 footer .col {
	display: inline;
	max-width: 30%;
}

footer .col h3 {
	margin: 0 0 .5em;
	padding-bottom: .5em;
	border-bottom: 2px solid #1d1d1d;
}

footer .col p {
	line-height: 140%;
}

footer .col ul {
	margin: 1em 0 0;
	padding: 0;
}

footer .col li {
	margin: 0 0 .5em;
	padding: 0;
	list-style: none;
}

footer .col a {
	color: #1d1d1d;
	text-decoration: none;
}

footer .col a:hover,
footer .col a:focus {
	color: #98010f;
	text-decoration: underline;
}

@media screen and (max-width: 72.5em) {
	header,#main, footer .inner {
		padding-left: 1em;
		padding-right: 1em;
	}
}

@media screen and (max-width: 50em) {
	body {
		font-size: 100%;	
	}
	
	header .inner {
		display: block;
	}
	
	.logo,
	.woocommerce img.logo, .woocommerce-page img.logo {
		margin: 1em auto;
		display: block;
	}

	.utilities {
		width: 100%;
	}

	.vcard {
		display: block;
		text-align: center;
		position: static;
	}
	
	.callouts li {
		width: 48%;
	}
	
	.utilities {
		display: block;
		position: static;
		text-align: center;
	}

	nav button {
		transition: none;
		cursor: pointer;
		text-transform: uppercase;
		display: block;
		background: transparent;
		padding: .25em 0;
		width: 100%;
		font-size: 125%;
		font-weight: 700;
		text-align: center;
		margin: 0 auto;
		border: none;
		border-top: 2px solid #98010f;
	}

	nav ul {
		width: 100%;
		margin: 0;
		display: block;
		border-top: none;
	}
	
	nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] {
		display: block;
		position: static;
		top: auto;
	}

	nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] li {
		flex: unset;
        display: block;
        width: 100%;
	}
	
	nav ul [aria-haspopup="true"] + ul[aria-hidden="false"] a {
        text-align: center;
	}

	.mainnav ul {
		height: 0;
		overflow: hidden;
	}

	nav ul li {
		display: block;
		width: 100%;
		max-width: none;
		margin: 0;
		border-bottom: 1px solid white;
	}
	
	#main .inner,
	.page #main .inner, 
	.blog #main .inner, 
	.single #main .inner {
		display: block;
	}

	.sidebar {
		margin: .5em 0 0;
		width: 100%;
		flex: 0;
	}	
	
	.content {
		width: 100%;
		flex: 0;
	}
	
	.post .details {
		width: 100%;
	}
	
	.post img {
		margin: 0 auto 2em;
		display: block;
		text-align: center;
	}
	
	h1:before,
	h1:after,
	.portrait h2:before,
	.portrait h2:after,
	.feature h2:before,
	.feature h2:after {
		content: '';
		vertical-align: inherit;
		padding: 0;
	}
	
	.woocommerce #content div.product div.images, 
	.woocommerce div.product div.images, 
	.woocommerce-page #content div.product div.images, 
	.woocommerce-page div.product div.images {
		text-align: center;
		width: 100%;
	}
	
	.woocommerce #main div.product div.images img {
		margin: 0 auto;
	}
	
	.woocommerce div.summary .woocommerce #content div.product div.summary, 
	.woocommerce div.product div.summary, 
	.woocommerce-page #content div.product div.summary, 
	.woocommerce-page div.product div.summary {
		width: 100%;
	}
	
	table th {
		font-size: 100%;
		font-weight: 700;
	}
	
	table td {
		font-size: 95%;
	}

	.gallery .gallery-item {
		max-width: 44%;
	}	
	
	footer .cols {
		padding: 0;
	}
	
	footer .cols .inner {
		padding-top: 0;
	}
	
	footer .col {
		display: block;
		width: 100%;
		padding: 1em 2em;
	}
	
	footer .col:nth-of-type(2) {
		background: white;
	}
	
	footer .inner,
	footer .cols .inner  {
		display: block;
	}
	
	.marketing {
		display: block;
		font-size: 110%;
	}
	
	.marketing .inner {
/* 		background-size: 200px; */
		background: none;
		padding: 3em;
	}
	
	.newsletter,
	.social {
		width: 100%;
		margin: 0 auto;
		flex: unset;
	}
	
	.newsletter a.button {
		float: none;
		margin-bottom: .5em;
	}
	
	.social ul {
		justify-content: center;
	}
	
	.logos img {
		margin: 0 0 1em;
	}
	
	#lightbox {
		font-size: 2vw;
	}

	#lightbox .image #close {
		top: .5em;
		right: .5em;
	}

	#lightbox .image #next,#lightbox .image #prev {
		opacity: .8;
	}

	#lightbox .image #next img,#lightbox .image #prev img {
		width: 3em;
	}
}

@media screen and (max-width: 40em) {
	.logo {
		margin: .5em auto;
		display: block;
	}
	
	.callouts ul {
		display: block;
	}
	
	.callouts.landscape li,
	.callouts.portrait li {
		width: 100%;
	}
	
	#lightbox {
		font-size: 3.5vw;
	}

	#lightbox .image #img-box .caption {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		font-size: 150%;
	}
}