/* -------------------------------------------------------------------------------- */
/*	X. CSS Reset
/* -------------------------------------------------------------------------------- */
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img, table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
	border-radius: 6px;
}
.wc-block-components-product-badge {
	border-radius: 2px;
}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image>img {
	border-radius: 2px;
}

html, body { 
    margin: 0; 
    padding: 0; 
    height: 100%; 
    min-height: 100%; 
}

h1, h2, h3, h4, h5, h6, p, blockquote, address, big, cite, code, em, font, img, small, strike, sub, sup, li, ol, ul, fieldset, form, label, legend, button, table, caption, tr, th, td, figure, figcaption {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: normal;
	font-style: normal;
	font-size: 100%;
	line-height: 1;
	text-align: left;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

ol, ul { list-style:none; }

blockquote:before, 
blockquote:after { content:""; }

a { outline:none; }

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

/* Screen Reader Text ------------------------ */

.screen-reader-text {
	clip: rect( 1px, 1px, 1px, 1px );
	height: 1px;
	overflow: hidden;
    position: absolute !important;
    width: 1px;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Skip Link --------------------------------- */

.skip-link {
	position: absolute;
		left: -9999rem;
		top: 2.5rem;
	z-index: 999999999;
}

.skip-link:focus {
	left: 2.5rem;
	text-decoration: none;
}


/* -------------------------------------------------------------------------------- */
/*	X. Document Setup
/* -------------------------------------------------------------------------------- */


body {
    background: #111;
	border: none;
    color: #111; 
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    font-size: 18px;
}

body.customizer-preview {
	transition: color .15s ease-in-out, background-color .15s ease-in-out;
}

body.lock-scroll {
	height: 100%;
	position: fixed;
	width: 100%;
}

body * {
        -webkit-box-sizing: border-box; 
        -moz-box-sizing: border-box; 
	box-sizing: border-box; 
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	word-break: break-word;
}

body a {
	color: inherit;
	text-decoration: none;
}

body a:hover { 
	text-decoration: underline; 
}

.group:after,
.pagination:after,
.gallery:after {
	clear: both; 
	content: "";
	display: block;
}

::selection {
	background: var(--primary);
	color: #FFF;
}

input::-webkit-input-placeholder { color: var(--gray-500); }
input:-ms-input-placeholder { color: var(--gray-500); }
input::-moz-placeholder { color: var(--gray-500); }


/* -------------------------------------------------------------------------------- */
/*	X.	Structure
/* -------------------------------------------------------------------------------- */


#site-content {
	background: #fff;
	display: block;
	padding: 40px 0;
}

.section-inner {
	margin: 0 auto;
	max-width: 1280px;
	width: 90%;
}

.section-inner + .section-inner {
	margin-top: 80px;
}

.section-inner.medium { max-width: 870px; }
.section-inner.thin { max-width: 600px; }

.section-inner.max-percentage {
	width: 100%;
}


/* Split Section ----------------------------- */


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

.split .content {
	width: calc( 75% + -50px );
}

.split .sidebar {
	flex-shrink: 0;
	align-self: flex-start;
	margin-left: 80px;
	padding-top: 6px;
    width: calc( 25% - 30px );
}


/* Item Grid ----------------------------- */


ul.item-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 0 -60px -40px;
}

.item-grid li {
    margin: 0 0 60px 40px;
    position: relative;
    width: calc( 25% - 40px );
}


/* Default Transitions ----------------------------- */

a {
	transition: all .15s ease-in-out;
}


/* -------------------------------------------------------------------------------- */
/*	X.	Element Base
/* -------------------------------------------------------------------------------- */


/* Base Typography ----------------------------- */

/* HELPERS */

.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }

.text-uppercase { text-transform: uppercase; }

/* TITLES */

h1, h2, h3, h4, h5, h6 {
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	font-weight: 600;
	letter-spacing: -0.01em;
	line-height: 1.15;
	margin: .75em 0 .4em;
}

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
	margin-top: 0;
}

h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
	margin-bottom: 0;
}

h1 {
	font-size: 48px;
}
h2 { font-size: 40px; }
h3 { font-size: 28px; }
h4 { font-size: 24px; }
h5 { font-size: 18px; }
h6 { font-size: 16px; }

.subheading {
	color: #767676;
	font-family: Archivo, 'Helvetica Neue', Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	margin-bottom: 10px;
}

/* EXCERPTS */

.excerpt {
	font-family: Newsreader, Georgia, serif;
	font-size: 28px;
	letter-spacing: -0.01em;
	line-height: 1.4;
}

.sans-excerpt {
	font-size: 22px;
	line-height: 1.41;
}


/* Base Colors ----------------------------- */


.bg-white {
	background-color: #fff;
}

.bg-gray {
	background-color: #F5F5F7;
}

.bg-black {
	background-color: #111;
	color: #fff;
}


/* Base Media ----------------------------- */


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

.bg-image {
	background: no-repeat center;
	background-size: cover;
}

.bg-attach {
	background-attachment: fixed;
}

.dark-overlay {
	position: relative;
}

.dark-overlay:before {
	background: rgba( 17, 17, 17, 0.5 );
	content: "";
	display: block;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
}


/* -------------------------------------------------------------------------------- */
/*	X.	Site Header
/* -------------------------------------------------------------------------------- */


.woocommerce-store-notice {
	color: #fff;
	font-family: Newsreader, Georgia, serif;
	font-size: 14px;
	font-style: italic;
	line-height: 1.25;
	margin: 0 auto;
	max-width: 1280px;
	padding: 13px 44px 14px;
	position: relative;
	text-align: center;
	width: 90%;
}

.woocommerce-store-notice__dismiss-link {
	background: url( ../svg/cross-white.svg ) no-repeat center;
	background-size: 16px;
	display: block;
	height: 44px;
	position: absolute;
		right: 0;
		top: calc( 50% - 22px );
	text-indent: -99999px;
	width: 44px;
}

.site-header { 
	background: #fff;
	border-bottom: 1px solid var(--gray-200);
    margin: 0 auto;
	position: relative;
}

.site-header .section-inner {
	padding: 30px 0;
	position: relative;
	transition: padding .15s linear;
}

.site-header .header-titles {
	margin: 0 auto;
	max-width: calc( 100% - 600px );
	text-align: center;
}

.site-header .site-title,
.site-header .site-description {
	text-align: inherit;
}

.site-header .site-title {
	font-size: 40px;
	margin: 0;
}

.site-header .site-description {
	margin-top: 18px;
}

.site-header .custom-logo-link {
	display: block;
}

.site-header .custom-logo-link img {
	margin: 0 auto;
	object-fit: contain;
	display: block;
	width: auto;
	max-height: 60px;
	max-width: 100%;
}

.site-header .site-title a:hover {
	color: rgba( 0, 0, 0, .35 );
	text-decoration: none;
}


