/**
 * Default styles used site-wide
 *
 * Site Colours
 * ---
 * 
 */

/** Font import  */


/** General */
	body, select, input, textarea {
		font: 16px/1.4em 'Source Serif Pro', serif;
		color: #444;
	}
	.container {
		max-width: 1600px;
		margin: 0px auto;
		padding: 0 2%;
	}
	section {
		padding: 4em 0;
	}


/** Fonts */
	h1 {
		font-size: 2em;
	}
	h2 {
		font-size: 1.8em;
	}
	h3 {
		font-size: 1.6em;
	}
	h4 {
		font-size: 1.4em;
	}
	h5 {
		font-size: 1.2em;
	}
	h6 {
		font-size: 1em;
	}
	h1, h2, h3, h4, h5, h6 {
		margin: .6em 0 .3em;
		line-height: 1.214;
		color: #222222;
	}
	h1 + p, h2 + p, h3 + p, h4 + p {
		margin-top: 0;
	}
	p {
		font-size: 1em;
		line-height: 1.8;
		margin: 1em 0;
	}
	a {
		position: relative;
		color: #222222;
		text-decoration: none;
	}
	a:hover {
		color: #222222;
		text-decoration: none;
	}
	p a::after{
		content: '';
		position: absolute;
		bottom: 0px;
		left: 0;
		width: 100%;
		height: 2px;
		background: #aaa;
		-webkit-transition: all .25s;
		-moz-transition: all .25s;
		-ms-transition: all .25s;
		-o-transition: all .25s;
		transition: all .25s;
	}
	p a:hover::after {
		background: transparent;
	}
	pre {
		font-size: 1em;
		margin: 2.5rem 0;
		padding: 1.5em;
		background: #000;
		color: #008000;
		border-radius: 5px;
	}
	blockquote {
		border-color: #222222;
		border-style: solid;
		border-width: 0 0 0 0.2rem;
		border-radius: 5px 0 0 5px;
		color: inherit;
		font-size: 1em;
		margin: 2em 0;
		padding: .1em 0 .1em 1em;
	}
	hr {
		width: 100%;
		margin: 3em 0;
		background: #CCCCCC;
		border: none;
		height: 5px;
		position: relative;
		border-radius: 5px;
	}
	acronym[title],
	abbr[title] {
		text-decoration: none;
		cursor: help;
		border-bottom: 2px dotted #222222;
	}


/** Forms */
	button, input, textarea, select {
		vertical-align: middle;
	}
	section input[type=email], 
	section input[type=password], 
	section input[type=search], 
	section input[type=tel], 
	section input[type=text], 
	section input[type=url], 
	section textarea, 
	section textarea.input-text, 
	section select {
		padding: 0;
		border: none;
	}
	section textarea,
	section textarea.input-text {
		height: 150px;
		line-height: 1.5em;
		padding: 0;
	}
	input:hover, textarea:hover, select:hover {
		border: 1px solid #999;
	}
	input:focus, textarea:focus, select:focus {
		border: 1px solid #999;
	}
	.input-text:focus, input[type=email]:focus, input[type=password]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=url]:focus, textarea:focus {
		outline: none;
		background: #F6F6F6;
	}
	button:hover, button:focus, button:active {

	}
	input.checkbox, input.radio {
		width: auto !important;
		background: transparent; /* ie6 */
		border: none !important; /* ie6 */
		margin: 0 10px 0 0;
	}
	button, 
	input[type="button"], 
	input[type="reset"], 
	input[type="submit"], 
	.button {
		color: #222;
		font-size: 1em;
		box-shadow: none;
		text-decoration: none;
		cursor: pointer;
		text-shadow: none;
		display: inline-block;
	}
	.buttons a{
		position: relative;
	}
	.buttons a::after {
		content: '';
		position: absolute;
		bottom: 0px;
		left: 0;
		width: 100%;
		height: 2px;
		background: #aaa;
		-webkit-transition: all .25s;
		-moz-transition: all .25s;
		-ms-transition: all .25s;
		-o-transition: all .25s;
		transition: all .25s;
	}
	.buttons a:hover::after {
		background: transparent;
	}
	button, 
	input[type="button"]:last-child, 
	input[type="reset"]:last-child, 
	input[type="submit"]:last-child, 
	.button:last-child {
		margin-right: 0;
	}
	button.outline,
	.button.outline {
		background: transparent;
		color: #F16529;
	}

	button:hover, 
	input[type="button"]:hover, 
	input[type="reset"]:hover, 
	input[type="submit"]:hover, 
	.button:hover {
		color: #222;
	}
	.button.button-blank {
		border: 2px solid #FFF;
		background: transparent;
	}
	.button.button-blank:hover {
		border-color: #FFF;
		background: #FFF;
		color: #333333;
	}
	a:focus, button:focus, .button.alt:focus, input:focus, textarea:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus {
		outline: none;
	}


/** Table */
	table {
		width: 100%;
		margin: 1em 0;
		border-color: #e6e6e6;
		border-style: solid;
		border-width: 1px;
	}
		table th, 
		table td {
			text-align: left;
			vertical-align: top;
			border-color: #e6e6e6;
			border-style: solid;
			border-width: 1px;
			padding: 1em;
		}
		table th {
			background-color: #f2f2f2;
		}
			table.woocommerce-product-attributes p {
				margin: 0;
			}


/** Image */
	.alignleft {
		margin: 1em 1em 1em -15%;
		max-width: 50%;
	}

	.alignright {
		margin: 1em -15% 1em 1em ;
		max-width: 50%;
	}

	.wp-caption {
		width: auto !important;
		position: relative;
		padding: 0;
	}

		.wp-caption .wp-caption-text {
			position: absolute;
			bottom: 0;
			left: 0;
			padding: .5em 1em;
			margin: 0;
			background: rgba(19, 42, 55, .7);
			color: #FFF;
		}

/** Owl Carousel Nav */
	.owl-carousel.include-nav {
		padding: 0 40px;
	}
	.owl-carousel .owl-nav {
		display: none;
	}
	.owl-carousel.include-nav .owl-nav {
		display: block;
		margin: 0;
		width: 100%;
		z-index: 100;
	}
	.owl-carousel.include-nav .owl-prev, 
	.owl-carousel.include-nav .owl-next {
		text-indent: -999em;
		width: 40px;
		height: 40px;
		position: absolute;
		top: calc(50% - 20px);
		z-index: 250;
		transition: all 0.5s;
		background-size: cover;
		background-repeat: no-repeat;
		opacity: .1;
	}
	.owl-carousel.include-nav:hover .owl-prev, 
	.owl-carousel.include-nav:hover .owl-next {
		opacity: .7;
	}

	.owl-carousel.include-nav .owl-prev {
		background-image: url('/images/icons/prev.svg');
		background-position: center;
		background-size: 30px auto;
		left: 0;
	}
	.owl-carousel.include-nav .owl-next {
		background-image: url('/images/icons/next.svg');
		background-position: center;
		background-size: 30px auto;
		right: 0;
	}
	.owl-carousel.include-nav .owl-prev:hover, 
	.owl-carousel.include-nav .owl-next:hover {
		opacity: 1;
	}


/** Owl Carousel Pagination */
	.owl-carousel.include-pagination .owl-dots {
		text-align: center;
		height: 16px;
		margin: 1em 0;
	}
	.owl-carousel.include-pagination .owl-dot {
		border: 4px solid #333;
		background-color: transparent;
		width: 15px;
		height: 15px;
		border-radius: 50%;
		display: inline-block;
		margin: 0 5px;
		opacity: .1;
		transition: all 0.5s;
	}
	.owl-carousel.include-pagination:hover .owl-dot {
		opacity: .7;
	}
	.owl-carousel.include-pagination .owl-dot:hover {
		opacity: 1;
	}
	.owl-carousel.include-pagination .owl-dot.active {
		border-color: #333;
		background: #333;
	}
	

/** Cookie Policy */
	#cookie-overlay {
		display: none;
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		height: 100%;
		background: rgba(33,41,52,.85);
		z-index: 999;
	}
	#cookie-overlay.ppp {
		top: inherit;
		height: auto;
	}

	#cookie-message {
		position: absolute;
		bottom: 0;
		padding: 4em 5em;
		background-color: #fff;
		width: 100%;
		margin: 0;
		z-index: 100;
		box-sizing: border-box;
	}

		#cookie-message .cookie-wrapper {
			display: flex;
		}

			#cookie-message .statement {
				width: 66.0%;
			}
				
				#cookie-message h2 {
					margin-top: 0;
				}
				
				#cookie-message p:last-of-type {
					margin-bottom: 0;
				}
			
			#cookie-message .accept {
				width: 32.0%;
				margin: 1em 0 0;
				text-align: right;
			}
		
	@media only screen and (max-width: 768px) {

		#cookie-message {
			text-align: center;
		}

			#cookie-message .cookie-wrapper {
				flex-flow: column nowrap;
			}

				#cookie-message .statement,
				#cookie-message .accept {
					width: 100%;
					text-align: center;
				}

	}

	@media only screen and (max-width: 560px) {

		#cookie-message {
			padding: 1em 2em;
		}

	}

	@media only screen and (max-width: 479px) {

		#cookie-message .accept .button {
			width: 100%;
		}

	}
