  /*
Theme Name: Derwen 2021
Author: Design by Country
Author URI: https://designbycountry.com
Description: Bespoke theme
Version: 9999.9.9
*/

@import 'css/slick.css?v=2021022502';

/* Accessibility */

*:not(input):not(textarea):focus {
	outline: 3px solid rgba(249, 192, 64, 0.5) !important;
	outline-offset: 0;
}

/* */

:root {
	--window-inner-height: 100vh;
}

*,
*:before,
*:after {
	box-sizing: border-box; 
}

.cart_totals h2,
.sr-only,
.screen-reader-text,
.screen-reader-response {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0,0,0,0);
	border: 0;
}

@media (max-width: 567px), (prefers-reduced-motion: reduce) {
	.parallax {
		transform: none !important;
	}
}

body {
	margin: 0;
	/*padding: 4vh;
	padding-bottom: 0;*/

	/*padding-top: calc(20px + (30px * 3));*/

	font-size: 16px;
	font-family: 'Archivo', sans-serif;
	/*transition: 0.4s;*/
	line-height: 1.5;

	background: #001c35;
	color: #fff;

	padding-top: 140px;
}

@media (max-width: 567px) {
	body {
		padding-top: 130px;
	}
}

.grid-square {
	padding-top: 10%;
	position: relative;

	transition: transform 0.5s;

	background-size: cover;
	background-position: center;
}

/*.col-33 .grid-square {
	padding-top: 50%;
}*/

@media (min-width: 1200px) {

	.grid-square.half-height {
		padding-top: 25%;
	}

}

.grid-square-content {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 30px;

	display: flex;
	align-items: center;
}

@media (min-width: 568px) {

	.grid-square-content {
		padding: 10%;
	}

}

/* */

.d-image {
	width: 83.333333333%;
	margin: 0 auto;

	background-size: cover;
	background-position: center;

	border-radius: 0 60% 60% 0 / 0 50% 50% 0;
}

.d-image:before {
	content: "";
	display: block;
	padding-top: 120%;
}

/* */

.home-banner {
	position: relative;
}

.home-banner .grid-square.half-height {
	padding-top: 50%;
}

.home-banner h1,
.home-banner h2 {
	font-size: calc(32px + 3vw); 
	line-height: 0.9; 
	margin: 0;
}

@media (max-width: 767px) {

	.home-banner .col-33 {
		flex-basis: 33%; /*100%;*/
	}

	.home-banner .grid-square-content {
		padding-top: 12.5%;
		padding-bottom: 0;
	}

	.home-banner h1,
	.home-banner h2 {
		text-shadow: 0 0.1666em 0.3333em rgba(0,0,0,0.333);
	}

	.home-banner .row:nth-child(2) > .col:nth-child(2),
	.home-banner .row:nth-child(2) > .col:nth-child(4) {
		opacity: 0.5;
	}

	.home-banner .row:nth-child(3) > .col:nth-child(1),
	.home-banner .row:nth-child(3) > .col:nth-child(3),
	.home-banner .row:nth-child(3) > .col:nth-child(4),
	.home-banner .row:nth-child(3) > .col:nth-child(6) {
		opacity: 0.5;
	}

	.home-banner .row:nth-child(3) > .col:nth-child(2) {
		order: -1;
	}

	.home-banner .row:nth-child(3) > .col:nth-child(5) {
		order: 1;
	}

}

@media (min-width: 768px) {
		
	.home-banner .col-33 {
		flex-basis: 33.333%;
	}

}

.banner {
	position: relative;
}

.banner-title {
	line-height: 0.9;
	max-width: 9em; /*8.5em;*/
	margin: 0;
}

.page-logo {
	max-height: 25vw; 
	object-fit: contain;
}

.page-intro {
	margin-top: 20px;
}

@media (min-width: 1600px) {
	
	.page-intro {
		max-width: 34em;
	}
	
}

.page-intro b {
	font-weight: 600;
}

.page-intro a {
	color: inherit;
	border-bottom: 1px solid;
}

.page-intro a:hover,
.page-intro a:focus {
	border-bottom: 2px solid;
}

.page-intro-jump-to {
	font-size: 16px;
	margin-top: 15px;
}

.banner-makaton {
	display: block; 
	height: 80px;
	width: auto; 
	vertical-align: top;
	/*filter: invert(1); */
	mix-blend-mode: multiply; 
	margin-bottom: 20px;
}

@media (max-width: 767px) {

	.banner-title span {
		font-size: 1em !important;
	}

	.banner-makaton {
		height: 60px;
	}

	.banner .grid-square-content {
		padding: 30px;
	}

	.banner > .row > .col:last-child {
		order: -1;
	}

	.banner > .row > .col:last-child > .grid-square {
		padding-top: 50%;
	}

	.banner > .row > .col:last-child .grid-square-content:before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		-webkit-backdrop-filter: blur(10px);
	} 

	.banner > .row > .col:last-child .d-image {
		margin-left: 0;
		width: 33.333%;
		position: relative;
	}

	.banner > .row > .col:last-child .row:nth-child(1),
	.banner > .row > .col:last-child .row:nth-child(2),
	.banner > .row > .col:last-child .row:nth-child(3),
	.banner > .row > .col:last-child .row:nth-child(4) {
		display: none;
	}

	.banner > .row > .col:first-child .grid-square {
		padding-top: 0;
	}

	.banner > .row > .col:first-child .grid-square-content {
		position: static;
		padding-top: 50px;
		padding-bottom: 50px;
		position: relative;
	}

}

@media (min-width: 568px) {

	.page-intro {
		font-size: 18px;
	}

	.section-intro .pre-heading,
	.entry-content .pre-heading {
		margin-bottom: 40px;
	}

}

.section-intro .pre-heading,
.entry-content .pre-heading {
	color: var(--secondary);
	/*font-size: calc(1em - 2px);*/
}

@media (min-width: 768px) {

	.banner > .row > .col:last-child > .grid-square > .grid-square-content {
		background: none !important;
	}

	.banner-title {
		font-size: 48px;
	}

}

@media (min-width: 768px) and (max-width: 1023px) {
	.page-intro-jump-to {
		display: none;
	}
}

@media (min-width: 1024px) {

	

}

@media (min-width: 1200px) {

	.site-main {
		padding-right: 7.5%;
	}

	.banner .col:first-child .grid-square-content {
		padding-left: 7.5%;
	}

	.container.entry-content-container {
		width: 60%;
		max-width: 60em;
	}

	.entry-content .pre-heading.date {
		margin: 30px 0;
	}

	.banner-makaton {
		margin-bottom: 30px;
	}

}

@media (min-width: 1600px) {
	
	.banner-title {
		font-size: 60px;
	}
	
	.page-intro {
		font-size: 20px;
	}
	
	.entry-content {
		font-size: 18px;
	}

	.site-main {
		padding-left: 5%;
	}

	.site-main {
		padding-right: 15%;
	}

}

@media (min-width: 1800px) {
	.banner-title {
		font-size: 50px;
	}
}

body.page-template-full-width .site-main {
	padding-left: 0;
	padding-right: 0;
}

body.page-template-full-width .section.section-content {
	padding-top: 0;
}

.section.section-content {
	background: #fff;
	color: #001c35;

	padding: 0; 
	padding-bottom: 30px;

	/*overflow: hidden;*/
}

.section-white {
	background: #fff;
	color: #001c35;
}

.section-2col {
	padding-top: 50px;
	padding-bottom: 30px;
}

@media (max-width: 1023px) {

	.section.section-content .container > .row > .col {
		flex-basis: 100%;
	}

	.section.section-content .row > .col + .col {
		order: -1;
	}

	.section-content + .section-accreds {
		margin-top: -30px;
	}

}

@media (min-width: 1024px) {
	.section.section-content {
		padding-top: 5%;
		padding-bottom: 7.5%;
	}

	.section-2col {
		padding-top: 7.5%;
		padding-bottom: calc(7.5% - 20px);
	}

}

.entry-content .pre-heading.date {
	color: var(--secondary);
	opacity: 0.5;
	text-align: center;
}

/*.entry-content > p:first-of-type:not(.pre-heading),
.entry-content .flower-icon + p:not(.pre-heading),
.entry-content .pre-heading.date + p {
	font-size: 1.25em;
	margin-bottom: 30px;
}*/

.entry-content iframe {
	display: block;
	margin: 40px 0;
	max-width: 100%;
	width: 100%;
	border: none !important;
}

.entry-content > p:first-child iframe {
	margin-top: 0;
}

.entry-content > p:last-child iframe {
	margin-bottom: 20px;
}

.entry-content iframe[src*="map"] {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;

	margin-top: 40px;
}

.entry-content .wp-video {
	margin: 40px 0;
}

.iframe-container {
	display: block;
	margin: 50px 0;
	padding-top: 56.25%;
	position: relative;

	background: #eff2f5;
	padding: 30px;
	

	clear: both;
}

.iframe-container + br {
	display: none;
}

.iframe-container:before {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.iframe-container iframe {
	position: absolute;
	top: 30px;
	left: 30px;
	width: calc(100% - 60px);
	height: calc(100% - 60px);
	margin: 0;
	border-radius: 8px;

	box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.entry-content blockquote {
	/*font-family: 'Crimson Pro';*/

	/*clear: both;*/
	font-size: 1.25em;
	font-style: italic;
	color: var(--secondary);
	/*color: var(--secondary); /* dark mode */
	
	line-height: 1.333333333;
	margin: 60px 0;

	border-left: 4px solid #ef405f;
	/*border-left: 0.2em solid var(--primary); /* dark mode */

	padding-left: 30px;	
}

.entry-content blockquote p:last-child {
	margin: 0;
}

/*.entry-content .handwriting {
	color: var(--primary);
	font-size: 2.5em;

	margin-top: 30px;
}*/

.entry-content hr {
	height: 0;
	margin: 60px 0;
	border: none;
	border-top: 2px solid hsl(210, 23%, 92%);
	clear: both;
}

.entry-content a:not(.btn) {
	border-bottom: 1px solid;
	/*color: #ef405f;*/
}

.entry-content a:not(.btn):hover,
.entry-content a:not(.btn):focus {
	border-bottom: 2px solid;
}

.entry-content a:not(.btn):focus {
	background: rgba(249, 192, 64, 0.5) !important
}

.entry-content ul {
	margin: 30px 0;
}

.entry-content li {
	padding-left: 30px;
	margin-bottom: 15px;
	position: relative;
}

.entry-content ul li:before {
	content: "•";
	position: absolute;
	left: 0;
	color: #ef405f;
}


/*.entry-content .btn {
	background-image: url('/wp-content/themes/derwen2021/img/pattern-bg.jpg');
}*/

/*.entry-content h2,
.entry-content h3,
.entry-content h4 {
	clear: both;
}*/



.entry-content h2,
.entry-content h3 {
	margin-bottom: 30px;
}

.entry-content h2,
.entry-content h3,
.section-intro h2,
.section-intro h3 {
	scroll-margin-top: 160px;
}

/*.entry-content p:first-child img {
	margin-bottom: 30px;
}*/

.entry-content *:not(hr) + h2,
.entry-content *:not(hr):not(h2) + h3,
.entry-content *:not(hr) + h4,
.entry-content *:not(hr) + h5 {
	margin-top: 40px;
}

.entry-content img {
	display: block;
	/*width: 100%;*/
	/*box-shadow: 0 20px 30px -10px rgba(0,0,0,0.3);*/
	/*margin: 1.5em 0;*/
	/*mix-blend-mode: lighten;*/
	/*border: 3px solid var(--secondary);*/
	border-radius: 10px;

	margin: 40px 0;
}

.entry-content p:last-child img {
	margin-bottom: 0;
}

.entry-content figure {
	width: 100% !important;
	font-size: 16px;
	margin: 30px 0;
	padding: 30px;
	background: #eff2f5;
	border-radius: 16px;
}

.entry-content figure img {
	width: 100%;
	margin-top: 0;
	margin-bottom: 20px;
	border-radius: 6px;
}

/*.entry-content .alignleft,
.entry-content .alignright {
	border-radius: 16px;
}*/

.entry-content .aligncenter {
	margin-left: auto;
	margin-right: auto;

	margin-top: 50px;
	margin-bottom: 50px;
	display: block;
	width: 100%;
}

@media (max-width: 567px) {

	.iframe-container {
		margin-left: -30px;
		margin-right: -30px;
	}

	.entry-content figure {
		padding: 20px;
	}

	.entry-content figure + p img {
		margin-top: 0;
	}

	/*.entry-content figure.alignright {
		padding-right: 0;
	}

	.entry-content figure.alignright img {
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}

	.entry-content figure.alignleft {
		padding-left: 0;
	}

	.entry-content figure.alignleft img {
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}*/

	/*.entry-content .alignleft {
		margin-left: -30px;
		margin-right: 30px;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}

	.entry-content .alignright {
		margin-right: -30px;
		margin-left: 30px;
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}*/

}

@media (min-width: 568px) {

	.iframe-container {
		padding: 40px;
		border-radius: 16px;
	}

	.iframe-container iframe {
		top: 40px;
		left: 40px;
		width: calc(100% - 80px);
		height: calc(100% - 80px);
	}

	/*.entry-content ul {
		font-size: 18px;
	}*/

	.entry-content .alignleft {
		float: left;
		width: 50% !important;
		
		margin-right: 40px;

		margin-top: 30px;
		margin-bottom: 30px;
	}

	.entry-content .alignright {
		float: right;
		width: 50% !important;

		margin-left: 40px;

		margin-top: 10px;
		margin-bottom: 30px;
	}

}

@media (min-width: 1024px) {

	.entry-content blockquote {
		padding-left: 40px;
		font-size: 1.5em;
	}

	.entry-content iframe[src*="map"] {
		border-top-left-radius: 16px;
		border-top-right-radius: 16px;
	}

	.entry-content img {
		border-radius: 16px;
	}
	
	.entry-content .alignleft {
		width: 33.333% !important;
	}

	.entry-content .alignright {
		width: 33.333% !important;
	}

}

.entry-content table {
	width: 100% !important;
	margin: 40px 0;
}

.entry-content table h2,
.entry-content table h3 {
	margin: 20px 0;
}

.entry-content table p:last-child {
	margin-bottom: 0;
}

.entry-content table img {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.entry-content td {
	padding: 15px 20px;
}

.entry-content tr:nth-child(even) td {
	background: #eff2f5;
}

.entry-content tr:nth-child(even) td:first-child {
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
}

.entry-content tr:nth-child(even) td:last-child {
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
}

.icon {
	text-align: center;
	color: #009ce0;
	height: 24px;
	margin-bottom: 10px;
}

.icon svg {
	vertical-align: top;
}

/* Sidebar */

.sidebar-cta-1 {
	background: #001c35;
	color: #fff;
	margin-bottom: 20px;
}

@media (min-width: 1600px) {
	.sidebar-cta-1 {
		font-size: 18px;
	}
}

.sidebar-cta-1 p {
	margin-bottom: 15px;
}

.sidebar .sticky {
	position: sticky;
	top: 160px;
}

.sidebar-cta-1 *:last-child {
	margin-bottom: 0;
}

.sidebar-cta-1 a:not(.btn):not(.button) {
	color: inherit;
	border-bottom: 1px solid;
}

.sidebar-cta-1 a:not(.btn):not(.button):hover,
.sidebar-cta-1 a:not(.btn):not(.button):focus {
	border-bottom: 2px solid;
}

.sidebar-cta-1 .btn,
.sidebar-cta-1 .button {
	margin-top: 5px;
	width: 100%;
}

.sidebar-cta-1 h3 + .btn,
.sidebar-cta-1 h3 + .button,
.sidebar-cta-1 h3 + p .btn,
.sidebar-cta-1 h3 + p .button {
	margin-top: 10px;
}

/* */

.sidebar-menu {
	border: 2px solid hsl(210, 23%, 92%);
}

.sidebar-menu hr {
	margin: 30px -30px;
	border: none;
	border-top: 2px solid hsl(210, 23%, 92%);
}

.sidebar-menu ul {
	margin-bottom: 0;
}

.sidebar-menu li + li {
	margin-top: 0.5em;
}

.sidebar-menu a {
	/*color: inherit;*/
	border-bottom: 1px solid;
}

.sidebar-menu a:hover,
.sidebar-menu a:focus {
	border-bottom: 2px solid;
}

.sidebar-menu a:focus {
	background: rgba(249, 192, 64, 0.5) !important
}

.sidebar-menu .current-menu-item > a {
	font-size: calc(1em + 2px);
	border: none;
	color: inherit;
	font-weight: 700;
}

/*.sidebar-menu a:hover,
.sidebar-menu .current-menu-item > a {
	color: #ef405f;
}*/

/* */

.site-main .sidebar {
	margin-bottom: 50px;
}

.sidebar > div {
	padding: 30px;
	border-radius: 16px;
}

.sidebar > div + div {
	margin-top: 30px;
}

/* */

.sidebar-page-nav h3 {
	font-size: 24px;
	margin-bottom: 1em;
}

.sidebar-page-nav .active {
	/*font-weight: 600;*/
	background: #eff2f5;

	border-left: 8px solid #ef405f;
	
	padding-top: 1em;
	padding-bottom: 1em;

	padding-right: 30px;
	margin-right: -30px;

	padding-left: calc(32px - 8px);
	margin-left: -32px;
	
}

.sidebar-page-nav .active a {
	/*border-color: transparent;*/
}

.sidebar-page-nav li + li {
	margin-top: 1em;
}

/* */

@media (min-width: 1600px) {

	.sidebar > div {
		padding: 40px;
		font-size: 18px;
	}

	.sidebar-menu hr {
		margin: 40px -40px;
	}

	.sidebar > div + div {
		margin-top: 40px;
	}

	.sidebar-page-nav .active {
		padding-right: 40px;
		margin-right: -40px;

		padding-left: calc(42px - 8px);
		margin-left: -42px;
	}

}

@media (max-width: 1699px) {
	.up-level-link .pre-heading-blocks {
		display: none;
	}
}

@media (min-width: 1700px) {

	.sidebar-menu .pre-heading-blocks,
	.sidebar-cta-1 .pre-heading-blocks {
		float: right;
		margin-left: 30px;
	}

}

/* General */

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

figure {
	margin: 0;
	padding: 0;
}

small {
	display: block;
	font-size: 14px;
}

small a {
	border-bottom: 1px solid;
}

h1, h2, h3 {
	line-height: 1.2; /*calc(1em + 8px);*/
	font-weight: 700;
}

h1 {
	font-size: 32px;
}

h2 {
	font-size: 30px;
}

h3,
.section-grid h2 {
	font-size: 24px;
}

@media (min-width: 1600px) {
	
	h1 {
		font-size: 36px;
	}

	h2 {
		font-size: 32px;
	}

	h3,
	.section-grid h2 {
		font-size: 26px;
	}
	
}

h4, h5 {
	font-size: 1.1em;
}

h5 {
	clear: both;
}

h1, h2, h3, h4, h5, p, ul, table {
	margin: 0 0 20px;
}

/*p {
	margin-bottom: 1.5em;
}*/

table {
	margin-bottom: 30px;
	border-collapse: collapse;
}

/**:last-child {
	margin-bottom: 0;
}*/

/*p:last-child {
	margin-bottom: 0;
}*/

*:not(hr) + .btn,
*:not(hr) + p .btn {
	margin-top: 20px;
}

/*h3 {	
	max-width: 10em;
}*/

a {
	color: hsl(208, 100%, 30%); /*#ef405f;*/
	text-decoration: none;	
}

ul {
	list-style: none;
	padding: 0;
}

fieldset {
	background: transparent;
	border: none;

	padding: 0;
	margin: 3em 0 2em;
}

fieldset legend {
	font-size: 1.5em;
}

address {
	margin-top: 0.5em;
}

/*.handwriting {
	font-family: 'Crimson Pro';
	font-weight: normal;
}*/

.pre-heading-blocks {
	width: 72px; 
	margin-bottom: 20px;
}

@media (min-width: 568px) {

	.pre-heading-blocks {
		width: 90px;
	}

}

.pre-heading {
	font-size: 17px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	position: relative;
}

h3.pre-heading {
	font-weight: 600;
}

@media (min-width: 640px) {

	.pre-heading:before,
	.pre-heading:after {
		content: "";
	    display: inline-block;
	    width: 4em;
	    height: 0;
	    border-top: 1px solid;
	    opacity: 1; 
	    vertical-align: middle;
	    margin-top: -0.2em;
	}

	.pre-heading:before {
		margin-right: 2em;
	}

	.pre-heading:after {
		margin-left: 2em;
	}

}

/* Breadcrumbs */

.breadcrumbs {
	border-bottom: 2px solid hsl(210, 23%, 92%);
	padding-top: 30px;
	padding-bottom: 22px;
	margin-bottom: 50px;
	font-size: 15px;

	line-height: 20px;
}

@media (max-width: 1023px) {

	.breadcrumbs {
		margin-left: -30px;
		margin-right: -30px;
		padding-left: 30px;
		padding-right: 30px;
		white-space: nowrap;
		overflow-x: auto;
	}

}

@media (min-width: 1024px) {

	.breadcrumbs {
		padding-top: 40px;
	}

	.breadcrumbs a,
	.breadcrumbs .breadcrumb_last {
		white-space: nowrap;
	}

}

.breadcrumbs a {
	display: inline-block;
	background: #eff2f5;
	padding: 7px 16px 7px 12px;
	border-radius: 0 20px 20px 0;

	margin-bottom: 10px;
}

.breadcrumbs a:hover {
	text-decoration: underline;
}

.breadcrumbs span + span {
	padding-left: 40px;
	background-image: url('/wp-content/themes/derwen2021/img/breadcrumb-chevron.svg');
	background-repeat: no-repeat; 
	background-size: 16px;
	background-position: 10px center;
}

.breadcrumb_last {
	font-weight: 600;
}

/* */

.breadcrumbs-dark {
	border-bottom: none;
	margin-bottom: -10px;
	padding-bottom: 0;
}

.breadcrumbs-dark a {
	background: rgba(0,0,0,0.3);
	color: inherit;
}

/* Forms */

.input-btn-container {
	display: inline-block;
	position: relative;
	max-width: 400px;
	width: 100%;
}

.input-btn-container button {
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 2;

	height: 100%;

	transform: translateY(-50%);

	border: none;
	background: transparent;

	padding: 0 1.5em;
	margin: 0;
	cursor: pointer;
}

.input-btn-container button svg {
	vertical-align: top;
}

label {
	margin-top: 30px; /*2em;*/
	margin-bottom: 20px; /*0.75em;*/
	display: block;
	font-weight: 600;
}

.entry-content label input {
	margin-top: 15px !important;
}

.form-group label {
	margin-top: 0;
}

.form-group {
	padding-bottom: 30px;
}

table label {
	margin: 0;
}

input[type="radio"] {
	margin-left: 0.5em;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
	display: inline;
	margin: 0;
}


/* Nicer checkboxes */

.woocommerce-shipping-methods input[type="radio"],
input[type="checkbox"] {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0,0,0,0);
	border: 0;
}

.woocommerce-shipping-methods input[type="radio"] + label,
input[type="checkbox"] + label span,
input[type="checkbox"] + span {
	display: flex;
	align-items: center;
	position: relative;

	font-weight: 400;

	white-space: pre-wrap;
}


.woocommerce-shipping-methods input[type="radio"] + label:before,
input[type="checkbox"] + label span:before,
input[type="checkbox"] + span:before {
	content: "";
	display: inline-block;

	flex-shrink: 0;
	width: 30px;
	height: 30px;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 0 0 1px rgba(0,0,0,0.075), 0 1px 2px rgba(0,0,0,0.1); /*0 1px 2px rgba(0,0,0,0.075);*/

	margin-right: 20px;

	transition: 0.2s;
}

.woocommerce-shipping-methods input[type="radio"] + label:before {
	border-radius: 50%;
}

input[type="checkbox"]:focus + label span:before,
input[type="checkbox"]:focus + span:before { 
	box-shadow: 0 0 0 4px #ef405f;
}

.woocommerce-shipping-methods input[type="radio"] + label:after,
input[type="checkbox"] + label span:after,
input[type="checkbox"] + span:after {
	content: ""; 
	position: absolute;

	left: 12px;
    top: 8px; /*calc(50% - 7px);*/
    width: 7px;
    height: 12px;
    border: solid #ef405f;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg) scale(0);

    opacity: 0; 
	transition: 0.1s;
}

.woocommerce-shipping-methods input[type="radio"]:checked + label:after,
input[type="checkbox"]:checked + label span:after,
input[type="checkbox"]:checked + span:after {
	transform: rotate(45deg);
	opacity: 1;
}

/* */

.form-row input:not(input[type="checkbox"]) + span {
	display: block;
	margin-top: 20px;
}

input[type="password"],
input[type="submit"],
.wpcf7-submit,
select,
.input-text,
.wpcf7-text,
.wc-stripe-elements-field,
textarea,
.button,
.btn {
	min-height: 56px;
	margin: 0;
	padding: 10px 0;
	font-family: inherit;
	font-size: 16px;
	line-height: 1.5;
	border-radius: 5px;
	border: 1px solid transparent;
}

@media (max-width: 567px) {
	input[type="password"],
	input[type="submit"],
	.input-text,
	.wpcf7-text,
	.wc-stripe-elements-field,
	textarea,
	select,
	.button,
	.btn {
		min-height: 50px;
	}
}

/*@media (min-width: 568px) {
	input,
	textarea,
	select,
	.button,
	.btn {
		font-size: 19px;
	}
}*/

input[type="password"],
select,
.wpcf7-text,
.input-text,
.wc-stripe-elements-field,
textarea {
	display: block;
	width: 100%;

	/*border: 1px solid hsl(23, 16%, 87%);*/
	
	box-shadow: inset 0 5px 3px -3px rgba(0,0,0,0.025);
	box-shadow: 0 0 0 1px rgba(0,0,0,0.075), 0 1px 2px rgba(0,0,0,0.1);

	background: #fff;
	/*background: rgba(0,0,0,0.1); /* dark mode */
	/*color: var(--white);*/

	padding-left: 1em;
	padding-right: 1em;

	color: #001c35; /*var(--black);*/
	/*border-radius: 5px;*/
	-webkit-appearance: none;

	transition: 0.2s;
}

::placeholder {
	color: inherit;
	opacity: 0.5;
}

.select2-container {
	color: var(--primary);
}

/**/

select:focus,
input:focus,
textarea:focus {
	outline: none;
	box-shadow: 0 0 0 4px #ef405f;
}

select {
	background-image: url('/wp-content/themes/derwen2021/img/chevron-down.svg');
	background-size: 24px;
	background-position: calc(100% - 16px) center;
	background-repeat: no-repeat;
}

textarea,
textarea.input-text {
	min-height: 8em;
	padding-top: 1em;
	padding-bottom: 1em;
}

/* Contact Form 7 */

.wpcf7 {
	font-size: 16px;
}

.wpcf7-not-valid {
	/*border: 1px solid rgb(220, 53, 69);*/
	box-shadow: 0 0 0 4px rgb(220, 53, 69);
}

.wpcf7-not-valid-tip {
	color: rgb(220, 53, 69);
	font-size: 15px;
	display: block;
	margin-top: 15px;
	font-style: italic;
	text-align: left;
}

.wpcf7-response-output:empty {
	display: none;
}

.wpcf7-response-output {
	display: inline-block;


	text-align: left;
	color: #fff;
	border: 1px solid rgb(220, 53, 69);

	background-color: rgba(220, 53, 69, 0.25);
	background-image: url('/wp-content/themes/derwen2021/img/alert.svg');
	background-repeat: no-repeat;

	background-size: 24px;
	background-position: 20px 50%;

	padding: 20px;
	padding-right: 30px;
	padding-left: 60px;

	line-height: 20px;
	font-size: 16px;

	border-radius: 30px;

	transition: background-color 0.4s, color 0.4s;
}

@media (max-width: 567px) {

	.wpcf7-response-output {
		border-radius: 5px;
		font-size: 15px;
	}

}

.wpcf7-form.sent .wpcf7-response-output {
	color: #28a745;
	background-color: rgba(40, 167, 69, 0.1);
	background-image: url('/wp-content/themes/derwen2021/img/check.svg');
}

.wpcf7 .btn-lg {
	width: 100%;
	max-width: 100%;
	margin-top: 0;
}

/*.wpcf7 {
	text-align: center;
	padding-top: 30px;
}*/

.wpcf7 .row {
	margin-bottom: 0;
}

.wpcf7 .row > .col {
	/*padding-bottom: 0;*/
	flex-grow: 1;
}

.wpcf7 p {
	margin-bottom: 30px;
}

.wpcf7-form-control label {
	text-align: left;
	margin-bottom: 30px;
}

.wpcf7-acceptance {
	font-size: 15px;
}

.wpcf7-acceptance input[type="checkbox"] + label span,
.wpcf7-acceptance input[type="checkbox"] + span {
	align-items: flex-start;
}

/* */

.grecaptcha-badge {
	visibility: hidden;
}

/* Buttons */

input[type="submit"],
.wpcf7-submit,
.btn,
.button {
	/*height: 50px;*/
	display: inline-flex;
	align-items: center;
	justify-content: center;

	padding-left: 20px;
	padding-right: 20px;
	
	background: #5abd78; /*#ef405f;*/
	color: #001c35; /*#ffffff;*/

	text-decoration: none;

	font-weight: 400;

	text-align: center;

	flex-shrink: 0;
	cursor: pointer;
	/*text-transform: capitalize;*/
}

@media (min-width: 1600px) {

	input[type="submit"],
	.wpcf7-submit,
	.btn,
	.button {
		font-size: 18px;
	}

}

input[type="submit"]:hover,
.wpcf7-submit:hover,
.btn:hover,
.button:hover,
input[type="submit"]:focus,
.wpcf7-submit:focus,
.btn:focus,
.button:focus {
	text-decoration: underline;
}

input[type="submit"]:focus,
.wpcf7-submit:focus,
.btn:focus,
.button:focus {
	outline: none !important;
	box-shadow: 
		0 0 0 4px rgba(0, 234, 122, 0.5),
		0 20px 20px -10px rgba(0, 234, 122, 0.1);
}

/*.btn:hover,
.button:hover {
	background: hsl(319, 29%, 32%);
}*/

@media (min-width: 568px) {
	input[type="submit"],
	.wpcf7-submit,
	.button,
	.btn {
		padding-left: 30px;
		padding-right: 30px;
	}
}

.wpcf7-submit,
.btn-lg {
	width: 100%;
	height: 60px;
	max-width: 260px;
}

.button + .button {
	margin-left: 0.5em;
	margin-top: 0.5em;
}

table .button {
	height: 44px;
	padding-left: 1.5em;
	padding-right: 1.5em;
}

.btn-outline:hover,
.btn-outline:focus {
	background: #fff;
	border-color: transparent;
	color: var(--primary);
}

button[disabled],
button.disabled {
	opacity: 0.25;
	cursor: not-allowed;
}

/* Layout/Grid */

@media (max-width: 567px) {

	.hidden-mobile {
		display: none !important;
	}

}

@media (min-width: 568px) {

	.visible-mobile {
		display: none !important;
	}

}

.full-width {
	width: 100%;
}

.container {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

.row {
	display: flex;
	margin-left: calc(30px / -2);
	margin-right: calc(30px / -2);
	margin-bottom: calc(30px * -1);

	flex-wrap: wrap;
}

.col {
	padding-left: calc(30px / 2);
	padding-right: calc(30px / 2);
	padding-bottom: 30px;

	/*flex-basis: 0;*/
	flex-grow: 1;
	max-width: 100%;
}

@media (max-width: 1023px) {

	.container {
		padding-left: 30px;
		padding-right: 30px;
	}

}

@media (min-width: 1024px) {

	.row.wide-gutter {
		margin-left: calc(50px / -2);
		margin-right: calc(50px / -2);
		margin-bottom: calc(50px * -1);
	}

	.row.wide-gutter > .col {
		padding-left: calc(50px / 2);
		padding-right: calc(50px / 2);
		padding-bottom: 50px;
	}

}

@media (min-width: 1400px) {

	.row.wide-gutter {
		margin-left: calc(80px / -2);
		margin-right: calc(80px / -2);
		margin-bottom: calc(80px * -1);
	}

	.row.wide-gutter > .col {
		padding-left: calc(80px / 2);
		padding-right: calc(80px / 2);
		padding-bottom: 80px;
	}

}

.col-auto {
	flex: 0 0 auto;
	width: auto;
	max-width: 100%;
}
/*
.row.no-gutter {
	margin: 0;
}
*/
.row.no-gutter > .col {
	padding: 0;
}

/*.flex-wrap {
	flex-wrap: wrap;
}*/

.flex-align-center {
	align-items: center;
}

.col-12,
.col-16,
.col-25,
.col-33,
.col-50,
.col-66,
.col-75,
.col-100 {
	flex-basis: 100%;
	flex-grow: 0;
}

@media (min-width: 768px) {
	.col-12,
	.col-16,
	.col-25,
	.col-33,
	.col-50,
	.col-66,
	.col-75 {
		flex-basis: 33.3%;
	}

}

@media (min-width: 1024px) {
	
	.col-12,
	.col-16 {
		flex-basis: 20%;
	}
	
	.col-25 {
		flex-basis: 33.333%;
	}

	.col-75 {
		flex-basis: 66.666%;
	}

	.container {
		width: 90%;
	}

}

@media (min-width: 1200px) {
	
	.col-12,
	.col-16 {
		flex-basis: 16.666%;
	}

	.col-25,
	.col-33 {
		flex-basis: 33.333%;
	}

	.col-75,
	.col-66 {
		flex-basis: 66.666%;
	}

}

@media (min-width: 1700px) {


	.col-25 {
		flex-basis: 25%;
	}

	.col-75 {
		flex-basis: 75%;
	}

}

/*@media (min-width: 568px) and (max-width: 1023px) {

	.col-sm {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%;
	}

	.col-sm-auto {
		flex: 0 0 auto;
		width: auto;
		max-width: 100%;
	}
}*/

/*@media (min-width: 1024px) and (max-width: 1199px) {

	.col-md {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%;
	}

	.col-md-auto {
		flex: 0 0 auto;
		width: auto;
		max-width: 100%;
	}
}*/

/* Header/Menu */

.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 30;
	
	transition-property: transform, background;
	transition-duration: 0.2s, 0.2s;

	background: #001c35;
}

.header-bar {
	display: flex;
	justify-content: flex-end;
	background: rgba(0,0,0,0.3);
}

.header-bar a {
	padding: 8px 0;
	margin-left: 20px;
}

.header-bar svg {
	vertical-align: top;
	height: 24px;
	fill: #009ce0;
	margin-right: 10px;
}

.header-bar-btn svg {
	margin-right: 0;
	margin-left: 10px;
}

@media (max-width: 767px) {

	/*.header-bar a:nth-child(1) {
		display: none;
	}*/

}

@media (max-width: 567px) {

	.header-bar {
		justify-content: space-between;
	}

	/*.header-bar a:nth-child(1),*/
	.header-bar a:nth-child(2) {
		display: none;
	}

	/*.header-bar a:nth-child(4) {
		margin-right: auto;
	}*/

	.header-bar  a.header-bar-btn {
		padding-right: 20px;
	}

}

@media (min-width: 568px) {

	.header-bar a {
		text-decoration: underline;
	}

	.header-bar  a.header-bar-btn {
		margin-left: auto;
	}

	.header-bar  a.header-bar-btn {
		background: #009ce0;
		padding-left: 30px;
		padding-right: 30px;
		color: #001c35 !important;
		font-weight: 600;
		text-decoration: none;
	}

	.header-bar-btn svg {
		fill: #001c35;
		display: none;
	}

}

.header-main {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 0 20px;
}

body.header-fixed:not(.menu-toggled-on) .site-header {	
	transition-property: transform, background;
	transition-duration: 0.4s, 0s;
	transition-delay: 0s, 0.4s;
}

body.header-fixed.scrolled-up .site-header {
	transition: transform 0.4s;
	/*background: var(--white);*/
	transform: none;
}

/* */

.site-header a:not(.sub-menu a) {
	color: inherit;
}

.site-header .logo {
	font-size: 30px;
	font-weight: 700;
	line-height: 0.9;

	transition: 0.4s;

	flex-shrink: 0;

	padding-top: 15px;
	padding-bottom: 25px;
}

.site-header .logo img {
	height: 50px; 
	width: auto; 
	vertical-align: top;
}

body.header-fixed:not(.scrolled-up) .site-header {
	transform: translateY(-40px);
}

body.header-fixed .site-header .logo {

}

/*@media (max-width: 567px) {

	.site-header .logo {
		padding-top: 15px;
		padding-bottom: 25px;
	}

}*/

@media (min-width: 1024px) {

	.site-header .logo img {
		height: 60px;
	}

}

/* Menu */

.menu-bar {
	text-align: center;
}

.menu-bar ul.menu {
	display: flex;
	margin: 0;
	padding: 0;
	/*white-space: nowrap;*/
	font-size: 17px;
}

/*.menu-bar a:hover {
	background: #ef405f;
}*/



.menu-bar .sub-menu {
	background: #fff;
	color: #001c35;
	margin: 0;
	border-radius: 16px;
}

/*.menu-bar li.menu-item-has-children:hover > a {
	clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
}

.menu-bar li:hover > a {
	background: #ef405f;
}*/

.menu-bar .cart {
	display: none;
}

/*.current-menu-ancestor > a,*/
.current-menu-item > a {
	font-weight: 500;
	color: inherit;
}



.sub-menu .current-menu-item > a {
	font-weight: 600;
}

@media (min-width: 1024px) {

	.menu-bar > div,
	.menu-bar > div > ul {
		height: 100%;
	}

	.menu-bar li:hover .sub-menu,
	.menu-bar li:focus-within .sub-menu {
		visibility: visible;
	}

	.menu-bar a:hover {
		text-decoration: underline;
	}

	/*.sub-menu a {
		transition: background-color 0.2s;
	}*/

	.sub-menu a:hover {
		background-color: #eff2f5;
		/*transition: 0s;*/
		/*color: #fff;*/
		
	}

	.sub-menu .current-menu-item {
		color: inherit;
	}

	.menu-bar a {
		display: flex;
		align-items: center;
		padding-left: 1em;
		padding-right: 1em;
	}

	/*.menu-bar ul.menu > li:last-child a {
		padding-right: 30px;
	}*/

	.site-header .menu-toggle,
	.site-header-menu {
		display: none;
	}

	/*.menu-bar .menu > li + li {
		margin-left: 20px;
	}*/

	.menu-bar .menu > li {
		position: relative;
		display: flex;
	}

	.menu-bar .sub-menu {
		visibility: hidden;

		position: absolute;
		top: calc(100% - 16px);
		left: calc(50% - 9.5em);
		z-index: 100;

		width: 19em;

		font-size: calc(1em - 3px);

		box-shadow: 0 15px 20px rgba(0,0,0,0.15);

		padding: 24px;
	}

	.menu-bar .sub-menu:before {
		content: "";
		position: absolute;

		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 10px 10px 10px;
		border-color: transparent transparent #fff transparent;

		top: -10px;
		left: calc(50% - 10px);

	}

	.menu-bar li:last-child .sub-menu {
		left: unset;
		right: 20px;
	}

	.menu-bar li:last-child .sub-menu:before {
		left: unset;
		right: 40px;	
	}

	.menu-bar .sub-menu a {
		display: block;
		padding: 0.9em 1.5em;
		border-radius: 8px;
	}

	.site-header .menu > .current-menu-item > a:after,
	.site-header .menu > .current-menu-ancestor > a:after {
		content: "";
		position: absolute;
		width: 6px;
		height: 6px;
		left: calc(50% - 3px);
		bottom: calc(25% - 6px);
		background: #ef405f;
		border-radius: 50%;
	}

	.site-header .menu > .current-menu-item.menu-item-has-children:hover > a:after,
	.site-header .menu > .current-menu-ancestor.menu-item-has-children:hover > a:after {
		display: none;
	}

}

@media (min-width: 1400px) {

	.menu-bar {
		margin-left: auto;
	}

	.menu-bar ul.menu {
		font-size: 20px;	
	}

	/*.menu-bar a {
		padding-left: 30px;
		padding-right: 30px;
	}*/

	/*.menu-bar ul.menu > li:last-child a {
		padding-right: 40px;
	}*/

}

@media (min-width: 1600px) {
	
	
	
}

@media (max-width: 1023px) {

	body.menu-toggled-on {
		overflow: hidden;
	}

	body.menu-toggled-on:before {
		content: "";
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: hsla(209, 77%, 12%, 0.75);
		z-index: 10;
	}

	.header-main {
		flex-wrap: wrap;
	}

	.menu-bar {
		display: none;
		order: 2;
		width: 100%;
		border-top-left-radius: 16px;
		border-top-right-radius: 16px;

		max-height: calc(var(--window-inner-height) - 140px);
		overflow-y: auto;
	}

	body.header-fixed:not(.scrolled-up) .menu-bar {
		max-height: calc(var(--window-inner-height) - 100px);
	}

	.menu-bar a {
		display: block;
		line-height: 24px;
		padding: 10px 20px;
	}

	.menu-bar ul.menu {
		display: flex;
		flex-direction: column;
		text-align: center;
		margin-bottom: 30px;
	}

	.menu-bar .sub-menu {
		font-size: 16px;
	}

	body.menu-toggled-on .menu-bar {
		display: block;
	}

	.menu-item-has-children {
		order: 2;

		background: #fff;
		color: #001c35;
		border-radius: 16px;

		padding-top: 1em;
		padding-bottom: 1em;
	}

	.menu-item-has-children + .menu-item-has-children {
		margin-top: 20px;
	}

	/*.sub-menu .current-menu-item,
	.menu-item-has-children.current-menu-item > a {
		color: #ef405f;
	}*/

	.menu-item-has-children > a {
		color: inherit;
	}

	.menu-toggle {
		background: #fff;
		display: flex;
		cursor: pointer;
		border: none;
		color: #001c35;
		height: 48px;
		align-items: center;
		padding-left: 14px;
		padding-right: 14px;
		align-self: center;

		margin: 0;
		font-size: 15px;

		border-radius: 8px;
	}

	/*.menu-toggle > span + span {
		margin-left: 10px;
	}*/

	.burger-bar {
		display: block;
		width: 20px;
		border-top: 2px solid #ef405f;
	}

	.burger-bar-1 {
		margin-bottom: 4px;
	}

	.burger-bar-3 {
		margin-top: -2px;
		margin-bottom: 4px;
	}

	body.menu-toggled-on .burger-bar {
		transition: transform 0.2s;
	}

	body.menu-toggled-on .burger-bar-1,
	body.menu-toggled-on .burger-bar-4 {
		opacity: 0;
	}

	body.menu-toggled-on .burger-bar-2 {
		transform: rotate(45deg);
	}

	body.menu-toggled-on .burger-bar-3 {
		transform: rotate(-45deg);
	}

	.site-header-menu ul {
		list-style: none;
		margin: 0;
		padding: 0;
		line-height: 2;
	}

	.site-header-menu a {
		font-size: 21px;
		color: inherit;
	}

}

@media (max-width: 567px) {


	.menu-bar {
		max-height: calc(var(--window-inner-height) - 130px);
	}

	body.header-fixed:not(.scrolled-up) .menu-bar {
		max-height: calc(var(--window-inner-height) - 90px);
	}

}

/* */

.search-form {
	position: relative; 
	align-self: center; 
}

.search-form .input-text {
	border-radius: 28px;
	padding-left: 24px; 
	padding-right: 50px; 
	width: 240px;
}

@media (max-width: 567px), (min-width: 1024px) and (max-width: 1199px) {
	.search-form .input-text {
		width: 160px;
	}
}

.search-form button {
	padding: 9px; 
	min-height: 44px; 
	border-radius: 50%; 
	position: absolute; 
	top: 6px; 
	right: 6px;
}

@media (max-width: 1023px) {

	.search-form {
		margin-left: auto;
		margin-right: 20px;
	}

}

@media (max-width: 567px) {

	.search-form {
		/*position: absolute;
		top: calc(50% - 25px);
		right: 116px;*/
		margin-right: 10px;
	}

	.search-form .input-text {
		padding-right: 47px;
	}

	.search-form button {
		top: 3px;
		right: 3px;
	}

}

@media (max-width: 374px) {

	.search-form .input-text {
		width: 110px;
		padding-right: 0;
		padding-left: 10px;
		font-size: 16px;
	}

}

@media (min-width: 1400px) {

	.search-form {
		margin-left: 30px;
	}

	.search-form .input-text {
		
	}

}

/* Blog */

/*.post-title,
.post p:not(.post-image) {
	margin-bottom: 1em;
}*/

.post .pre-heading.date {
	color: #aaa;
}

.post .pre-heading.date:before,
.post .pre-heading.date:after {
	display: none;
}

.post-image-container {
	padding: 5%;
	/*padding-bottom: 20%;
	box-shadow: 0 1px 2px rgba(0,0,0,0.1);*/

	background-color: var(--secondary);
	/*background-image: url('/wp-content/uploads/2021/03/olive-wood-slab-texture-background-4.jpg');*/
	position: relative;
}

.post-image {
	padding-bottom: 66.666%;

	background-size: cover;
	background-position: center;

	position: relative;

	/*clip-path: polygon(5% 0%, 95% 0%, 100% 5%, 100% 95%, 95% 100%, 5% 100%, 0% 95%, 0% 5%);*/

	overflow: hidden;

	box-shadow: 0 1px 2px rgba(0,0,0,0.25);
}

/*.post-image .gloss {
	position: absolute;
	top: 0;
	left: 0;
	width: 300%;
	height: 100%;
	background-image: linear-gradient(120deg, rgba(255,255,255,0) 33.333%, rgba(255,255,255,0.5), rgba(255,255,255,0) 66.666%);
	background-repeat: no-repeat;

	mix-blend-mode: overlay;
}*/

.post-image a:before {
	display: none;
}

/*.post-image-container:before,
.post-image-container:after {
	content: "";
	position: absolute;
	left: -1px;
	right: -1px;
	height: 5px;
	background-image: url('/wp-content/themes/derwen2021/img/ripped-edge-green-dark.png');
	background-size: 3000px 5px;

	transform: scaleY(-1) translateZ(1px);
}*/

.post-image-container:before {
	top: -1px;
}

.post-image-container:after {
	bottom: -1px;
	transform: translateZ(1px);
}

.post-read-more {
	font-size: 15px;
	text-transform: uppercase;

	letter-spacing: 0.05em;
	margin-left: 0.5em;
	color: var(--primary);

	white-space: nowrap;
}

.post-read-more:hover {
	border-bottom: 1px solid;
}

.post-image-container + .post-title {
	margin-top: -1em;
}

.post-title span {
	background-color: var(--primary);
	/*background-image: url('/wp-content/themes/derwen2021/img/pattern-bg.jpg');*/
	color: #fff;
}

.post-excerpt p:last-child {
	margin-bottom: 0;
}

.post a {
	color: inherit;
}

/* */

.nav-links {
	text-align: center;
	display: flex;
	justify-content: center;
}

.nav-links a,
.nav-links span {
	min-width: 50px;
	line-height: 50px;
	padding: 0px 15px;

	color: inherit;
}

@media (hover: hover) {

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

}

.nav-links .current {
	font-weight: 500;
	color: #001c35;
	background: #009ce0;
	cursor: default;
	margin: 0 10px;
	border-radius: 25px;

	box-shadow: 
		0 1px 1px rgba(0, 0, 0, 0.02), 
		0 2px 2px rgba(0, 0, 0, 0.02),
		0 4px 4px rgba(0, 0, 0, 0.02), 
		0 8px 8px rgba(0, 0, 0, 0.02),
		0 16px 16px rgba(0, 0, 0, 0.02);
}

@media (max-width: 480px) {
	.nav-links .prev,
	.nav-links .next {
		display: none;
	}
}

/* Sections */

.section-wrapper {
	position: relative;
}

/* */

.section {
	/*margin-bottom: 30px;*/
	padding: 30px;

	display: flex;
	align-items: center;
	justify-content: space-between;

	position: relative;

	/*scroll-snap-align: start;
	scroll-margin-top: 4vh;*/

	/*background-color: #eff2f5;*/
	background-size: cover;
	background-position: center;
	/*overflow: hidden;*/
}

.section.full-height {
	min-height: calc(100vh - (30px * 2)));
}

.section-image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;

	background-position: center;
	background-size: cover;

	/*background-color: var(--primary); /* dark mode */
	/*background-blend-mode: lighten; /* dark mode */
	/*border: 3px solid var(--secondary);*/

	/*opacity: 0.9;*/
}

.section-title {
	/*font-family: 'Crimson Pro'; /*'PF Din Stencil';*/
	font-weight: normal;
	line-height: 1; /*0.8;*/
	
	/*text-transform: uppercase;
	letter-spacing: 0.05em;*/
	position: relative;

	/*margin-top: 1.25em;*/
	/*margin-bottom: 0.75em;*/


	
	/*color: var(--main-border);*/
	text-align: center;

	transition: color 0.4s;

	font-weight: 400;

}

.section-intro {
	text-align: center;
	font-size: 18px; /* 19px; /*calc(1em + 0.5vw); /*1.5em;*/

	padding: 60px 0;
	padding: clamp(60px, 7.5vw, 120px) 0;
	
}

.section-intro .wpcf7 {
	margin-top: 60px;
}

.section-intro a:not(.btn) {
	color: inherit;
	border-bottom: 1px solid;
	font-weight: 500;
}

.section-intro p:last-child {
	margin-bottom: 0;
}

@media (min-width: 568px) {

	.section-intro {
		/*padding-top: 10vw;
		padding-bottom: 10vw;*/
		font-weight: 300;
		font-size: 20px;
	}


	body.woocommerce.archive .section-intro {
		padding-top: calc(30px * 3);
		padding-bottom: calc(30px * 3);
	}

	.section-intro .container {
		max-width: 34em;
	}

}

/*@media (min-width: 1200px) {
	
	.section-intro {
		font-size: 22px;	
	}
	
}*/

@media (min-width: 1600px) {

	.section-intro h2,
	.section-intro h3:first-child {
		font-size: 45px; /*48px;*/
	}

	.section-intro {
		font-size: 22px;
	}

}

/* */

.section-grid {
	padding-top: 55px;
	padding-bottom: 50px;
}

.section-grid + .section-intro {
	padding-top: 5px; /* + 50px = 80px */
}

@media (min-width: 568px) {

	.section-grid + .section-intro {
		padding-top: 2.5vw; /* + 7.5vw = 10vw */
	}

	.section-grid {
		padding-top: 7.5vw;
		padding-bottom: 7.5vw;
	}

}

.section-grid .col > a {
	display: block;
	height: 100%;
}

.section-intro + .section-grid {
	padding-top: 0 !important;
}

.section-grid .item {
	background: #fff; 
	color: #001c35; 
	height: 100%; 
	
	border-bottom-width: 12px; 
	border-bottom-style: solid; 

	display: flex;
	flex-direction: column; 
	justify-content: space-between; 
	overflow: hidden;
}

@media (min-width: 1600px) {
	.section-grid .item {
		font-size: 18px;
	}
}

@media (max-width: 767px) {
	
	.section-content + .section-grid .col:first-child .item {
		border-top-left-radius: 16px;
		border-top-right-radius: 16px;
	}

}

.section-grid .item-image {
	padding-top: 50%;
	background-size: cover;
	background-position: center;

	box-shadow: inset 0 -50px 50px -50px rgba(0,0,0,0.05);
}

.section-grid .item-image:first-child:last-child {
	height: 100%;
}

.section-grid .item-content {
	padding: 30px; 
	padding-bottom: 25px; 
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.section-grid .team-member {
	padding: 30px;
}

@media (min-width: 1024px) {
	
	.section-grid .item {
		border-top-right-radius: 36px; 
	}
	
}

@media (min-width: 1600px) {

	.section-grid .item-content {
		padding: 50px;
		padding-bottom: 40px;
	}

	.section-grid .team-member {
		padding: 50px;
	}

}

.section-grid .item-content p:last-child {
	margin-bottom: 0;
}

.section-grid .item-link {
	display: flex; 
	justify-content: space-between; 
	font-weight: 500;
	margin-top: 20px;
}

.section-grid .item-link span {
	border-bottom: 1px solid transparent;
}

.section-grid a:hover .item-link span,
.section-grid a:focus .item-link span {
	border-bottom: 1px solid;
}

.section-grid .team-member {
	flex-direction: row;
	align-items: center;
}

.section-grid .team-member .item-image {
	width: 25%;
	padding-top: 0;
	flex-shrink: 0;
	align-self: flex-start;
}

.section-grid .team-member .item-image:before {
	content: "";
	display: block;
	padding-top: 133.333%;
}

.section-grid .team-member .item-content {
	padding-top: 0;
	padding-bottom: 0;
	padding-right: 0;
}

@media (prefers-reduced-motion: no-preference) {

	.section-grid .item-link svg {
		transition: 0.3s;
	}

	.section-grid .item:hover .item-link svg {
		transform: translateX(8px);
	}

}

/* */

@media (max-width: 567px) {

	.section-home-bottom .row:nth-child(5),
	.section-home-bottom .row:nth-child(6) {
		display: none;
	}

}

/* */

.scroll-down-arrow {
	position: absolute;
	bottom: 32px;
	left: 50%;
	z-index: 5;
	transform: translate(-50%, 0);
	border: none !important;

	/*background: var(--white);*/
	color: var(--white); /*var(--secondary);*/
	/*padding: 24px;*/
	border-radius: 50%;
}

.scroll-down-arrow svg {
	vertical-align: top;
}

/*@media (max-width: 767px) {
	body.home .scroll-down-arrow {
		bottom: 32vh;
	}
}*/

/* */

.section-newsletter {
	text-align: center;
}

body.woocommerce-account .main-content,
body.woocommerce-cart .main-content,
body.woocommerce-checkout .main-content {
	padding-top: calc(30px * 3);
	padding-bottom: calc(30px * 3);
	background: #eff2f5;
	color: #001c35;

	margin-left: calc(30px * -1);
	margin-right: calc(30px * -1);
}

/*@media (max-width: 567px) {
	body.woocommerce-account .main-content,
	body.woocommerce-cart .main-content,
	body.woocommerce-checkout .main-content {
		padding: 0;
		background: transparent;
	}
}*/

.section-newsletter h3 {
	margin-bottom: 30px;
}

.section-newsletter button svg {
	color: var(--secondary);
}

/* */

.social-icons {
	display: inline-flex;
	/*white-space: nowrap;*/
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.social-icons a {
	color: inherit;
	text-decoration: none;
	width: 50px;
	height: 50px;
	background: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none !important;

	margin-right: 10px;
	margin-bottom: 10px;
}

.social-icons a:last-child {
	margin-right: 0;
}

.social-icons a:hover {
	color: var(--main-border);
}

.social-icons svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

/* Animation */

@media (prefers-reduced-motion: no-preference) {

	.animate {
		transition: opacity 0.8s, transform 0.8s;
	}

	body.intersection-observer .animate.animate-hidden {
		opacity: 0;
		transform: scaleX(1.015); /*translateY(20px);*/
	}

	.animate + .animate {
		transition-delay: 0.1s;
	}

	.animate + .animate + .animate {
		transition-delay: 0.2s;
	}

	.animate + .animate + .animate + .animate {
		transition-delay: 0.3s;
	}

	.animate + .animate + .animate + .animate + .animate {
		transition-delay: 0.4s;
	}

	.animate + .animate + .animate + .animate + .animate + .animate {
		transition-delay: 0.5s;
	}

}

/* */

.site-footer h3 {
	font-size: 1.1em;
}

.site-footer a:not(.btn) {
	color: inherit;
	border-bottom: 1px solid;
}

.site-footer a:not(.btn):hover {
	border-bottom: 2px solid;
}

.site-footer .pre-heading {
	margin-bottom: 1em;
	font-size: 15px;
}

.site-footer .logo {
	font-size: 30px;
	font-weight: 700;
	line-height: 0.9;
}

.footer-main {
	padding: calc(30px + 4%) 0 calc(30px + 4% - 1.5em);
}

@media (min-width: 1600px) {
	.footer-main {
		font-size: 18px;	
	}
}

.footer-main p,
.footer-main ul {
	margin-bottom: 1.5em;
}

.footer-newsletter {
	font-size: 18px;
	padding: 50px 0;
	color: #001c35;
}

.footer-newsletter .button {
	background: #001c35;
	color: #fff;
}

@media (min-width: 1024px) {

	.footer-newsletter {
		font-size: 20px;
		/*padding: 50px 0;*/
	}

}

.footer-bottom {
	padding: 30px 0;
	color: #001c35;
}

.menu-footer-bottom-menu-new-container,
.menu-footer-bottom-menu-new-container * {
	display: inline;
}

.footer-bottom li + li:before {
	content: "| ";
	margin-left: 20px;
	margin-right: 20px;
}

.footer-legal {
	padding: 40px 0;
	font-size: 15px;
}

/*.footer-legal .container {
	display: flex;
	justify-content: space-between;
}*/
@media (max-width: 567px) {
	.footer-legal br {
		display: none;
	}
}

.footer-legal a.button {
	background: #009ce0;
	color: #001c35;
	margin-left: 10%;
}

.site-footer .pre-heading:before,
.site-footer .pre-heading:after {
	display: none;
}	

.footer-lower {
	display: block;

	padding: 0;
	padding-bottom: env(safe-area-inset-bottom);

	margin-top: 30px;

	text-align: center;
	font-size: 14px;
	line-height: 20px;

	position: relative;

	/*color: var(--secondary); /* dark mode */
}

.footer-lower .row {
	justify-content: space-between;
}

@media (max-width: 567px) {

	.footer-lower .col {
		width: 100%;
	}

}

@media (min-width: 568px) {
	.footer-lower-middle {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
	}
}

.footer-lower a {
	color: inherit;
}

.footer-lower a:hover {
	border-bottom: 1px solid;
}

/* */

.menu-footer-bottom-menu-container,
.menu-footer-bottom-menu-container ul,
.menu-footer-bottom-menu-container li {
	display: inline;
}

.menu-footer-bottom-menu-container li:before {
	content: "   ";
	white-space: pre;
}

/* Colour Helpers */

.text-darkblue {
	color: #001c35;
}

.yellow {
	background-color: #f7bd49;
}

.text-yellow {
	color: #f7bd49;
}

.fill-yellow {
	fill: #f7bd49;
}

.border-yellow {
	border-color: #f7bd49 !important;
}

.blue {
	background-color: #009ce0;
}

.text-blue {
	color: #009ce0;
}

.fill-blue {
	fill: #009ce0;
}

.border-blue {
	border-color: #009ce0 !important;
}

.red {
	background-color: #ef405f;
}

.text-red {
	color: #ef405f;
}

.fill-red {
	fill: #ef405f;
}

.border-red {
	border-color: #ef405f !important;
}

.green {
	background-color: #5abd78;
}

.text-green {
	color: #5abd78;
}

.fill-green {
	fill: #5abd78;
}

.border-green {
	border-color: #5abd78 !important;
}

/* */

.cool-timeline-wrapper {
	margin-top: 0 !important;
}

























/* * */
/* Woocommerce */
/* * */

/* Layout */

body.woocommerce .site-content {
	overflow: visible;
}

body.woocommerce-page .page-title {
	text-align: center;
	margin-top: 4vh;
	margin-bottom: 4vh;

	display: none;

}

body.woocommerce-checkout .main-content .container {
	max-width: 40em;
}

/* Shop */

.woocommerce-result-count,
.woocommerce-ordering {
	display: none;
}

body.woocommerce.archive .page-title + .page-description {
	display: none;
}

body.single-product .section-woocommerce,
body.woocommerce.archive .section-woocommerce {
	background: #eff2f5;
	color: #001c35;
	padding: 0;
}

body.single-product .section-woocommerce {
	padding-top: 30px;
}

@media (min-width: 568px) {

	body.single-product .section-woocommerce,
	body.woocommerce.archive .section-woocommerce {
		padding-top: 7.5vw;
		padding-bottom: 7.5vw;
	}

}

@media (max-width: 567px) {

	/*body.woocommerce.archive .section-intro:first-child {
		padding-left: 0;
		padding-right: 0;
	}*/

	body.woocommerce.archive .section-woocommerce .container {
		padding-left: 0;
		padding-right: 0;
	}

}

.products {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 2px;
	margin-bottom: 2px; /*50px;*/
}

@media (min-width: 768px) {

	.products {
		grid-template-columns: 1fr 1fr;
	}

}

@media (min-width: 1200px) {

	.products {
		grid-template-columns: 1fr 1fr 1fr;
	}

}

@media (min-width: 1400px) {

	.products {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

}

.products h2 {
	font-size: 1.25em;
	font-weight: 500;
}

.products h2 + p {
	display: none;
}

.products h3 {
	font-size: 1em;
}

.products li {
	display: flex;
	flex-direction: column;

	background: #fff;
	color: #001c35;
	padding: 30px;
}

.products li > *:first-child {
	margin-bottom: auto;
}

.products li .button {
	display: flex;
	margin-top: 4vh;
	order: 2;
}

.products a:not(.button) {
	color: inherit;
	text-decoration: none;
}

.images a:before,
.products a:before {
	display: none;
}
 
.products img {
	display: block;
	width: 100%;
	margin-bottom: 30px;

	/*box-shadow: 0 20px 30px -10px rgba(0,0,0,0.15);*/
}

.added_to_cart {
	display: block;
	margin-top: 4vh;
	text-align: center;
	order: 1;
}

/* Shop categories */

.product-cats {
	background: #fff;
	margin-bottom: 2px;
}

.product-cats h3 {
	font-size: 1.5em;
	padding: 30px;
	padding-bottom: 0;
	margin: 0;
	flex-shrink: 0;
}

@media (min-width: 568px) {

	.product-cats h3 {
		width: 25%;
		padding: 30px;
	}

	.product-cats {
		display: flex;
	}
}

.product-cats ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 30px;
	padding-bottom: 20px;
	padding-right: 10%;
}

.product-cats li {
	white-space: nowrap;
}

.product-cats a {
	display: block;
	padding-right: 25px;
	padding-bottom: 10px;
}

.product-cats a:hover {
	color: var(--primary);
}

.product-cats a.active {
	font-weight: 600;
	color: var(--primary);
	position: relative;
}

@media (min-width: 1700px) {

	.product-cats {
		font-size: 17px;
	}

}

/* Delivery CTA */

.delivery-cta {
	background: var(--primary);
	color: #fff;
	padding: 15px 20px;
	font-size: 14px;
	margin-bottom: calc(30px * 1.5);
	text-align: center;
}

@media (min-width: 568px) {

	.delivery-cta { 
		padding-left: 10%;
		padding-right: 10%;
	}

}

.delivery-cta p:last-child {
	margin-bottom: 0;
}

.delivery-cta a {
	border-bottom: 1px solid;
}

/* Product */

.product img {
	display: block;
	width: 100%;

	/*border: 3px solid var(--secondary);*/
}

.flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	list-style: none;
	margin: 0;
	margin-left: -10px;
	margin-right: -10px;
}

.flex-control-thumbs li {
	max-width: 33.333%;
	padding: 20px 10px 0;
}

/*.woocommerce-product-gallery__image + .woocommerce-product-gallery__image {
	margin-top: 30px;
}*/

body.single-product .product {
	display: flex;
	flex-wrap: wrap;
}

.product_title {
	color: var(--secondary);
}

.woocommerce-variation > *:empty {
	display: none;
}

.woocommerce-variation-price,
.woocommerce-variation-availability {
	margin-bottom: 30px;
}

.woocommerce-variation-price {
	font-size: 20px;
	/*display: none;*/
}

.single_add_to_cart_button {
	flex-grow: 1;
	margin-left: 30px;

	/*background-image: url('/wp-content/themes/derwen2021/img/pattern-bg.jpg');*/
}

@media (max-width: 1023px) {

	.product .summary {
		width: 100%;

		/*position: sticky;*/

		background: var(--main-border);
		transition: 0.4s;

		bottom: 4vh;
		padding-top: 4vh;
	}

}

@media (min-width: 1024px) {

	.woocommerce-product-gallery {
		width: 50%;
		padding-right: 3vh;
	}

	.product .summary {
		width: 50%;

		padding-left: calc(30px * 0.75); /*3vh;*/
		padding-top: 30px;

		position: sticky;
		top: calc(40px + (30px * 2.5)); /*calc(40px + 6vh + 4vh);*/
		align-self: flex-start;

	}

	.product .summary p:last-child {
		margin-bottom: 0;
	}

}

.woocommerce-variation-add-to-cart,
form.cart:not(.variations_form) {
	display: flex;
	margin-bottom: 4vh;
}

.reset_variations {
	display: none !important;
}

.pswp__bg {
	opacity: 0.8 !important;
}

.pswp__caption,
.related,
.product_meta,
.woocommerce-tabs {
	display: none;
}

.summary table {
	width: 100%;
}

.summary table .label {
	width: calc(5em + 30px);
}


.summary table.variations {
	margin-bottom: calc(30px - 15px);
}

.summary table.variations td {
	padding-bottom: 15px;
}

.summary ul.cols-2 {
	columns: 2;
}

.summary ul li {
	/*background-image: url('/wp-content/themes/derwen2021/img/flower-primary.svg');*/
	background-repeat: no-repeat;
	background-position: 0 3px;
	background-size: 16px;
	padding-left: 32px;
	margin-bottom: 8px;
}

/* Messages */

.woocommerce-notices-wrapper:empty {
	display: none;
}

.summary blockquote {
	margin: 0;
}

.cart-shipping-message {
	text-align: center;
}

.calculated_shipping .cart-shipping-message {
	display: none;
}

body.woocommerce-cart .cart-shipping-message,
.summary blockquote,
.woocommerce-info,
.woocommerce-error,
.woocommerce-message {
	padding: 1em 1.5em;
    margin-bottom: 30px;
    border: 1px solid rgba(0,0,0,0.05);
    background: rgba(0,0,0,0.05);
    border-radius: 5px;

    overflow: hidden;
}

/*.woocommerce-form-coupon-toggle .woocommerce-info {
	border: 1px solid rgba(255,255,255,0.05);
    background: rgba(255,255,255,0.025);
}*/

body.woocommerce-account.logged-in .woocommerce-message,
body.woocommerce-cart .woocommerce-message {
	display: flex;
	align-items: center;
	justify-content: space-between;
	
	/*padding-right: 1em;
	padding-left: 2em;*/
}

body.single-product .woocommerce-error,
body.archive.woocommerce .woocommerce-error {
	/*background: var(--primary);*/
	border: none;
}

body.archive.woocommerce .woocommerce-message,
body.archive.woocommerce .woocommerce-info,
body.single-product .woocommerce-message,
body.single-product .woocommerce-info {
	display: flex;

	padding-top: 0.75em;
	padding-left: 0.75em;
	padding-right: 0.75em;
	padding-bottom: 0.75em;

	border-radius: 10px;
	margin-bottom: 30px;

	/*background: var(--secondary); /*var(--primary);*/
	color: var(--primary);

	border: none;
}

@media (max-width: 567px) {

	body.archive.woocommerce .woocommerce-message,
	body.archive.woocommerce .woocommerce-info,
	body.single-product .woocommerce-message,
	body.single-product .woocommerce-info {
		flex-direction: column;
		text-align: center;
	}

	body.archive.woocommerce .woocommerce-message .button,
	body.archive.woocommerce .woocommerce-info .button,
	body.single-product .woocommerce-message .button,
	body.single-product .woocommerce-info .button {
		margin-left: 0;
		margin-top: 0.75em;
	}

}

@media (min-width: 568px) {

	body.archive.woocommerce .woocommerce-message,
	body.archive.woocommerce .woocommerce-info,
	body.single-product .woocommerce-message,
	body.single-product .woocommerce-info {
		
		align-items: center;
		justify-content: space-between;
		padding-left: 2em;
	}

}

.woocommerce-form-login-toggle .woocommerce-info {
	text-align: center;
}

/*.woocommerce-error {
	border-bottom: 1px solid var(--red);
}*/

.woocommerce-message .button {
	order: 2;
	margin-left: 2em;
	float: right;
}

/* Cart Empty */

.woocommerce-info.cart-empty {
	text-align: center;
}

p.return-to-shop {
	text-align: center;
	margin-bottom: 0;
}

/* Cart */

.remove {
	font-size: 1.5em;
	color: #dc3545; 
}

.shop_table {
	text-align: left;
}

body.woocommerce-cart .shop_table {
	border-collapse: initial;
}

.shop_table img {
	max-width: calc(30px * 2);
}



.shop_table dl,
.shop_table dl p,
.shop_table dt,
.shop_table dd {
	margin: 0;
}

.shop_table dl {
	display: flex; 
	flex-wrap: wrap;
}

.shop_table dt {
	font-weight: bold;
}

.shop_table dt,
.shop_table dd {
	width: 50%;
}

@media (min-width: 768px) {

	.shop_table {
		width: 100%;
	}

	.shop_table td.actions {
		padding-right: 0;
	}

	/*.shop_table tr:nth-child(even) td {
		background: rgba(0,0,0,0.025);
	}*/

	.shop_table td {
		border-top: 1px solid rgba(0,0,0,0.05);
	}

	.shop_table td, 
	.shop_table th {
		padding: 1em;

		padding-left: 0;
		padding-right: 1.5em;
	}

}

@media (max-width: 767px) {

	.shop_table {
		margin-top: calc(30px * -1);
		margin-left: calc(30px * -1);
		margin-right: calc(30px * -1);
	}

	.shop_table td.actions {
		width: 100%;
	}

	.shop_table thead {
		display: none;
	}

	.shop_table,
	.shop_table tbody,
	.shop_table tfoot,
	.shop_table td,
	.shop_table th {
	 	border: none;
		display: block;
	}

	.shop_table .product-thumbnail {
		order: -1;
	}

	.shop_table .product-name {
		margin-top: 30px;
		margin-bottom: 30px;
	}

	.shop_table tr {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;

		padding: 30px;
		padding-right: 0;
	}

	.shop_table td,
	.shop_table th {
		padding: 0;
		padding-right: 30px;
	}

	td.product-name {
		width: 100%;
	}

	.shop_table tr:nth-child(even) {
		background: rgba(0,0,0,0.025);
	}

}

table.cart {
	margin-bottom: 6vh;
}

.woocommerce-checkout-review-order .order-total {
	font-size: 1.5em;
}

.woocommerce-cart-form {
	margin-bottom: 4vh;
}

.required {
	color: var(--red);
	text-decoration: none;
}

label[for="coupon_code"] {
	display: none;
}

.woocommerce-form-login__submit,
.checkout-button,
#place_order {
	width: 100%;
	/*background-image: url('/wp-content/themes/derwen2021/img/pattern-bg.jpg');*/
}

@media (min-width: 375px) {
	.checkout-button,
	#place_order {
		font-size: 18px;
		height: 72px;
	}
}

.actions {
	text-align: right;
}

.coupon {
	display: flex;
}

@media (max-width: 1023px) {

	.actions .button[name="update_cart"] {
		width: 100%;
		margin-top: 1em;
	}

}

@media (min-width: 1024px) {
	.coupon {
		float: left;
	}
}

.coupon input {
	margin-right: 1em;
	height: 44px;
}

.cross-sells > h2 {
	text-align: center;
	margin-bottom: 50px;
}

.cross-sells .products {
	grid-gap: 30px;
	margin-bottom: 30px;
}

.cross-sells .products li {
	padding: 0;
}

/* Loading Spinner */

@keyframes spin {
	0% {
		transform: none;
	}
	100% {
		transform: rotate(360deg);
	}
}

.blockOverlay {
    opacity: 1 !important;
    background: rgba(239, 242, 245,0.9) !important;
    z-index: 20 !important;

    top: unset !important;
    bottom: 0 !important;
    
    height: 100% !important;   
    max-height: 100vh !important;
}


.blockOverlay:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -20px;

    vertical-align: top;
    color: #001c35; /*#ef405f;*/

    border: 5px solid transparent;
    border-left: 5px solid;
    animation: spin 1s infinite linear;

    border-radius: 50%;

    width: 40px;
    height: 40px;
}

/* Cart / Checkout / My Account */

body.single-product .summary a:not(.button),
body.woocommerce-checkout .woocommerce a:not(.button),
body.woocommerce-cart .shop_table a:not(.button) {
	border-bottom: 1px solid;
}

.woocommerce-MyAccount-content,

body.woocommerce-order-received .main-content .woocommerce,
body.woocommerce-order-pay .main-content .woocommerce,
body.woocommerce-cart .main-content .woocommerce,
/*body.woocommerce-checkout .main-content .woocommerce,*/
.woocommerce-form-coupon,
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields,
.woocommerce-checkout-review-order,
.woocommerce-form-login,
.woocommerce-account-fields {
	background: #fff;
	color: #001c35;
	border-radius: 10px;
	padding: 30px;
}

@media (min-width: 568px) {

	.woocommerce-MyAccount-content,
	body.woocommerce-order-received .main-content .woocommerce,
	body.woocommerce-order-pay .main-content .woocommerce,
	body.woocommerce-cart .main-content .woocommerce,
	/*body.woocommerce-checkout .main-content .woocommerce,*/
	.woocommerce-form-coupon,
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields,
	.woocommerce-checkout-review-order,
	.woocommerce-form-login,
	.woocommerce-account-fields {
		box-shadow: 0 20px 30px -30px rgba(0,0,0,0.2);
	}

}

.woocommerce-form-coupon,
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields,
.woocommerce-form-login,
.woocommerce-account-fields {
	margin-bottom: 50px;

}

.woocommerce-form-coupon,
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields,
.woocommerce-account-fields {
	padding-bottom: calc(30px - 20px);
}

/*.woocommerce-MyAccount-content a:not(.button),
body.woocommerce-cart .main-content .woocommerce a:not(.button):not(.remove),
body.woocommerce-checkout .main-content .woocommerce a:not(.button) {
	color: var(--primary);
}*/

@media (min-width: 1200px) {
	.woocommerce-MyAccount-content,

	body.woocommerce-order-received .main-content .woocommerce,
	body.woocommerce-order-pay .main-content .woocommerce,
	body.woocommerce-cart .main-content .woocommerce,
	/*body.woocommerce-checkout .main-content .woocommerce,*/
	.woocommerce-form-coupon,
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields,
	.woocommerce-checkout-review-order,
	.woocommerce-form-login,
	.woocommerce-account-fields {
		padding: 50px;
	}

	.woocommerce-form-coupon,
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields,
	.woocommerce-account-fields {
		padding-bottom: calc(50px - 20px);
	}

}

body.woocommerce-account:not(.logged-in) .main-content .woocommerce > h2,
body.woocommerce-cart .main-content > .container > h2,
body.woocommerce-checkout .main-content > .container > h2,
#order_review_heading {
	text-align: center;
	margin-bottom: 50px;
	color: var(--primary);
	font-weight: 600;
	/*text-transform: capitalize;*/
}

body.woocommerce.archive .section-intro h2,
body.woocommerce-cart .main-content > .container > h2,
body.woocommerce-checkout .main-content > .container > h2 {
	font-size: calc(24px + 1.25vw);
}

#order_review_heading {
	margin-top: calc(30px * 1.5);
	/*font-size: 1.5em;
	font-weight: 600;*/

	text-transform: capitalize;
}

/* Checkout */

/*label[for="order_comments"],
label[for="recipient_message"] {
	margin-top: 40px;
}*/

#ship-to-different-address label,
/*label[for="order_comments"],*/
label[for="e_deliverydate"] {
	margin-top: 0;
}

.create-account label {
	margin-top: 10px;
}

.create-account label.checkbox {
	margin-top: 0;
	margin-bottom: 0;
}

label[for="payment_method_sumup"],
/*form.woocommerce-checkout h3,*/
.shop_table .recurring-totals,
.form-row.mailchimp-newsletter {
	margin-top: 40px;
}

#account_password_field {
	/*margin-top: 20px;*/
}

.woocommerce-billing-fields > h3 {
	margin-top: 0 !important;
}

/*#sumup-card {
	margin-left: -24px;
	margin-right: -24px;
}*/

.form-row.mailchimp-newsletter,
.form-row.create-account,
#ship-to-different-address {
	font-size: 23px;
	line-height: 1.2;
}

#ship-to-different-address + .shipping_address {
	padding-top: calc(30px - 20px);
}

input.qty {
	max-width: 5em;
}

.cart_totals th,
.cart-subtotal th,
.order-total th,
.shipping th {
	text-align: right;
	vertical-align: top;
}

/*.orddd_lite_field_note,*/
#billing_company_field,
#shipping_company_field,
#billing_country_field,
#shipping_country_field,
#shipping_gazchaps_getaddress_io_postcode_lookup_button_field br,
#billing_gazchaps_getaddress_io_postcode_lookup_button_field br {
	display: none;
}

.orddd_lite_field_note {
	font-size: 13px !important;
	display: block;
	margin-top: 10px;
}

body.woocommerce-checkout .woocommerce-form-login {
	padding-bottom: 1em;
}

/*body.woocommerce-checkout .create-account,
body.woocommerce-checkout .shipping_address {
	overflow: hidden;
}*/

/*body.woocommerce-checkout .create-account label[for="account_password"],
.form-row-first label {
	margin-top: 0;
}*/

body.woocommerce-checkout .shipping_address .form-row-first label {
	margin-top: 10px;
}

.woocommerce-terms-and-conditions-wrapper label .required {
	display: none;
}

@media (max-width: 567px) {
	.woocommerce-form-coupon-toggle {
		padding-left: 30px;
		padding-right: 30px;
	}
}

/* Shipping methods */

.woocommerce-shipping-methods li + li {
	margin-top: 10px;
}

@media (max-width: 567px) {
	.woocommerce-shipping-methods {
		margin-top: 10px;
	}
}

/* Login */

body.woocommerce-account:not(.logged-in) .woocommerce-form-login > p:first-child > label {
	margin-top: 0;
}

body.woocommerce-account:not(.logged-in) .main-content .container {
	max-width: 400px;
}

body.woocommerce-account:not(.logged-in) .main-content .container > h2 {
	display: none;
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword:last-child {
	margin-bottom: 0;
	text-align: center;
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a {
	color: var(--primary);
}

label.woocommerce-form-login__rememberme {
	margin-bottom: 2em;
}

/* Account */

body.woocommerce-account.logged-in .main-content .woocommerce {
	display: flex;
	flex-wrap: wrap;
}


body.woocommerce-account.logged-in .main-content > .container > h2 {
	display: none;
}

.woocommerce-MyAccount-navigation {
	white-space: nowrap;
}

@media (max-width: 567px) {

	.woocommerce-MyAccount-navigation {
		text-align: center;
		line-height: 2;
		font-size: 18px;
	}

	body.woocommerce-account.logged-in .main-content .woocommerce {
		flex-direction: column;
	}

}

@media (min-width: 568px) {

	.woocommerce-MyAccount-navigation {
		line-height: 1.75;
		margin-right: 30px;
	}

}

@media (min-width: 1025px) {

	.woocommerce-MyAccount-navigation {
		font-size: 20px;
		margin-right: 7.5vw;
	}

	body.woocommerce-account.logged-in .main-content .woocommerce {
		justify-content: center;
	}

}

.woocommerce-MyAccount-navigation a {
	color: inherit;
}

.woocommerce-MyAccount-navigation a:hover,
.woocommerce-MyAccount-navigation .is-active a {
	color: var(--secondary);
}

.woocommerce-MyAccount-navigation .is-active {
	font-weight: bold;
}

.woocommerce-MyAccount-content {
	flex-basis: 0;
	flex-grow: 1;
}

body.woocommerce-payment-methods .woocommerce-MyAccount-content,
body.woocommerce-add-payment-method .woocommerce-MyAccount-content,
body.woocommerce-edit-address .woocommerce-MyAccount-content,
body.woocommerce-edit-account .woocommerce-MyAccount-content {
	max-width: 40em;
}

.woocommerce-MyAccount-content a.edit {
	border-bottom: 1px solid;
}

.u-columns {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px -30px;
}

.u-columns > div {
	flex-basis: 50%;
	flex-grow: 1;
	min-width: 200px;
	padding-bottom: 30px;
	padding-left: 15px;
	padding-right: 15px;
}

/* Stripe */

/*label[for="wc-stripe-new-payment-method"]:before {
	vertical-align: -9px;
}*/

label[for="wc-stripe-new-payment-method"] {
	display: flex !important;
}

.wc-stripe-elements-field {
	padding-top: 19px;
}

@media (max-width: 567px) {
	.wc-stripe-elements-field {
		padding-top: 16px;
	}
}

.stripe-source-errors {
	margin-top: 20px;
}

.stripe-source-errors:empty {
	display: none;
}

/*Document Download Button*/

.download-btn {
	display: inline-flex;
	align-items: center;
	background-color: #001f30;
	color: #ffffff;
	font-weight: bold;
	font-size: 1.25rem;
	padding:0px;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	text-decoration: none;
	gap: 10px;
	transition: background-color 0.3s ease;
}

/* Wrap the text in a span */
.download-btn .btn-text {
	border-bottom: 2px solid transparent;
	transition: border-color 0.3s ease;
}

/* Underline on hover */
.download-btn:hover .btn-text {
	border-color: #ffffff;
}

.download-btn img {
	height: 30px;
	width: auto;
	transition: transform 0.3s ease;
}

.download-btn:hover img {
	transform: translateY(5px);
}

.grid-square:empty {
	display: none;
}

.e-search-form {
	position: relative;

	.e-search-label {
		position: absolute;
		right: 10px;
		top: 0;
		bottom: 0;
		background-color: #59BD78;
		border-radius: 50%;
		aspect-ratio: 1;
		max-height: 44px;
		margin: auto;
		display: grid;
		align-content: center;
		justify-content: center;

		.e-font-icon-svg {
			position: static;
			transform: scale(1.1);
		}
	}

	.e-search-input-wrapper, input {
		max-width: 100% !important;
	}

	input {
		padding: 20px !important;
		padding-right: 44px !important;
	}
}

.new-banner {
	display: grid;
	grid-template-columns: 2fr 1fr;
	grid-template-areas: "text img";
}

.new-banner > div {
	color: black;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	justify-content: center;
	padding: 4rem;
	grid-area: text;
}

.new-banner img {
	height: 100%;
	object-fit: cover;
	aspect-ratio: 2;
	grid-area: img;
}

@media (max-width: 500px) {
	.new-banner {
		grid-template-columns: 1fr;
		grid-template-areas: "img" "text";
	}
}