@charset "UTF-8";
/*!
Theme Name: Gay Outdoor Club 2020
Theme URI: http://underscores.me/
Author: KCS
Author URI: http://www.kcsweb.co.uk
Description: Description
Version: 2.0.17
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: goc
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Gay Outdoor Club is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=Muli:400,500,600&display=swap");
:root {
  --colour-red: #ea2226;
  --colour-orange: #f48a2b;
  --colour-yellow: #f9ec39;
  --colour-green: #168642;
  --colour-blue: #2e61ab;
  --colour-purple: #6e2b8a;
  --colour-white: #ffffff;
  --colour-black: #000000;
  --colour-primary: #168642;
  --colour-primary-light: #aaf1c6;
  --colour-primary-dark: #082e17;
}

.has-red-background-color {
  background-color: var(--colour-red);
}

.has-red-color {
  color: var(--colour-red);
}

.has-orange-background-color {
  background-color: var(--colour-orange);
}

.has-orange-color {
  color: var(--colour-orange);
}

.has-yellow-background-color {
  background-color: var(--colour-yellow);
}

.has-yellow-color {
  color: var(--colour-yellow);
}

.has-green-background-color {
  background-color: var(--colour-green);
}

.has-green-color {
  color: var(--colour-green);
}

.has-blue-background-color {
  background-color: var(--colour-blue);
}

.has-blue-color {
  color: var(--colour-blue);
}

.has-purple-background-color {
  background-color: var(--colour-purple);
}

.has-purple-color {
  color: var(--colour-purple);
}

.has-white-background-color {
  background-color: var(--colour-white);
}

.has-white-color {
  color: var(--colour-white);
}

.has-black-background-color {
  background-color: var(--colour-black);
}

.has-black-color {
  color: var(--colour-black);
}

/*@heightimport url('https://fonts.googleapis.com/css?family=Roboto');*/
/*@import url('https://fonts.googleapis.com/css?family=Anton:400,500,600&display=swap');*/
/*@import url('https://fonts.googleapis.com/css?family=Montserrat');*/
:root {
  --main-column-width: 1fr;
}
@media screen and (min-width: 87.6875em) {
  :root {
    --main-column-width: 5.5rem;
  }
}

/*
 Kingfisher Computer Services
 www.kingfishercs.co.uk
*/
/*
    Created on : 14 Feb 2020, 00:10:02
    Author     : owen
*/
:root {
  --icon-downarrow:url("data:image/svg+xml,%3Csvg%20version='1.1'%20viewBox='0%200%2016%2028'%3E%3Cpath%20d='M16%2011c0%200.266-0.109%200.516-0.297%200.703l-7%207c-0.187%200.187-0.438%200.297-0.703%200.297s-0.516-0.109-0.703-0.297l-7-7c-0.187-0.187-0.297-0.438-0.297-0.703%200-0.547%200.453-1%201-1h14c0.547%200%201%200.453%201%201z'%3E%3C/path%3E%3C/svg%3E");
  --icon-cross:url("data:image/svg+xml,%3Csvg%20version='1.1'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%20%3Cpath%20d='M18.984%206.422l-5.578%205.578%205.578%205.578-1.406%201.406-5.578-5.578-5.578%205.578-1.406-1.406%205.578-5.578-5.578-5.578%201.406-1.406%205.578%205.578%205.578-5.578z'%20/%3E%3C/svg%3E");
}

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
* {
  /*position: relative;*/
  /*z-index: 1;*/
}

/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: Muli, sans-serif;
  font-size: 14px;
  font-size: calc((1 * 0.8rem) + 0.2vw);
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
  clear: both;
}

h1 {
  font-size: 16.8px;
  font-size: calc((1.2 * 0.8rem) + 0.2vw);
}

h2 {
  font-size: 16.8px;
  font-size: calc((1.2 * 0.8rem) + 0.2vw);
}

h3, h4, h5, h6 {
  font-size: 14px;
  font-size: calc((1 * 0.8rem) + 0.2vw);
  border-bottom: 1px solid #168642;
}

p {
  margin-bottom: 1.5em;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 13.125px;
  font-size: calc((0.9375 * 0.8rem) + 0.2vw);
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 13.125px;
  font-size: calc((0.9375 * 0.8rem) + 0.2vw);
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

.welsh {
  font-style: italic;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #e1eaf7;
}
body.post-type-archive-goc_article, body.single-goc_article {
  background: #fffaf7;
}
body.post-type-archive-goc_report, body.single-goc_report {
  background: #faf5fc;
}
body.post-type-archive-event, body.single-event {
  background: #ecfcf2;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

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

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

img {
  height: auto; /* Make sure images are scaled correctly. */
  max-width: 100%; /* Adhere to container width. */
}

figure {
  margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

summary {
  cursor: pointer;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
#page button,
#page input[type=button],
#page input[type=reset],
#page input[type=submit] {
  border: 1px solid;
  border-color: #234a83;
  border-radius: 3px;
  background: #2e61ab;
  color: #ffffff;
  font-size: 14px;
  font-size: calc((1 * 0.8rem) + 0.2vw);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
  font-weight: 600;
  cursor: pointer;
}
#page button:hover,
#page input[type=button]:hover,
#page input[type=reset]:hover,
#page input[type=submit]:hover {
  border-color: #6895d7;
}
#page button:active, #page button:focus,
#page input[type=button]:active,
#page input[type=button]:focus,
#page input[type=reset]:active,
#page input[type=reset]:focus,
#page input[type=submit]:active,
#page input[type=submit]:focus {
  border-color: #6e2b8a;
}
#page .button, #page .post-edit-link {
  display: inline-block;
  padding: 0.5em;
  border-radius: 0.2em;
  background-color: #2e61ab;
  color: #ffffff;
  border: 1px solid #234a83;
  cursor: pointer;
}
#page .button.disabled, #page .post-edit-link.disabled {
  color: #cccccc;
  cursor: not-allowed;
}
#page .button.delete, #page .button.cancel, #page .post-edit-link.delete, #page .post-edit-link.cancel {
  background-color: #ea2226;
}
#page .button:hover, #page .post-edit-link:hover {
  color: #ffffff;
  border-color: #6895d7;
}
#page .mce-btn button {
  background: #a1a1a1;
  color: #e6e6e6;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
  width: 100%;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

#page .eo-event-search-form {
  background: #aaf1c6;
  color: #21759b;
  /*margin: -1.9vh -6vw auto;*/
  padding: 1vh 2vw;
}
#page .eo-event-search-form li {
  display: grid;
  grid-template-columns: minmax(20vw, auto) 1fr;
  grid-column-gap: 0.2vw;
}
#page .eo-event-search-form li input, #page .eo-event-search-form li select {
  width: 100%;
  height: 100%;
  border: none;
}
#page .eo-event-search-form li.eo-search-form-event-date {
  grid-template-columns: minmax(20vw, auto) 1fr 1fr;
}
#page .eo-event-search-form li.eo-search-form-event-submit {
  grid-template-columns: minmax(20vw, auto) 1fr auto;
}
#page .eo-event-search-form label {
  grid-row: 1;
  grid-column: 1;
}
#page .eo-event-search-form select {
  border: 1px solid #ccc;
  padding: 3px;
  padding-right: 2em;
  border-radius: 3px;
  color: #666;
  appearance: none;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right 0.7em top 50%;
  background-size: 0.65em auto;
  cursor: pointer;
}
#page .eo-event-search-form ul {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
  grid-row-gap: 0.2em;
  grid-auto-rows: 1fr;
  margin: auto;
}
#page .eo-event-search-form .eo-search-form-event-submit button {
  padding: 0.8em;
  margin-left: -0.2vw;
  border-radius: 0 3px 3px 0;
  color: #2e61ab;
  /*background: darken($color__blue, 10%);*/
  background: #ffffff;
  font-weight: 600;
  /*border: 1px solid $color__blue;*/
  border: none;
  cursor: pointer;
}
#page .eo-event-search-form .eo-search-form-event-submit button:hover svg {
  fill: #234a83;
}
#page .eo-event-search-form .eo-search-form-event-submit button svg {
  width: 1em;
  height: 1em;
  margin: 0;
  fill: #2e61ab;
}
#page .eo-event-search-form .eo-search-form-event-submit input {
  border-radius: 3px 0 0 3px;
}

.home #page .eo-event-search-form ul {
  justify-content: initial;
}
.home #page .eo-event-search-form li.eo-search-form-event-submit {
  /*grid-template-rows: 1fr;*/
  grid-template-columns: 1fr auto;
  grid-template-areas: "label label" "input search";
  align-items: center;
}
@media screen and (min-width: 55em) {
  .home #page .eo-event-search-form li.eo-search-form-event-submit {
    grid-template-columns: auto 1fr auto;
    grid-template-areas: "label input search";
  }
}
.home #page .eo-event-search-form label {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: label;
  padding-right: 0.5rem;
}
.home #page .eo-event-search-form input {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: input;
}
.home #page .eo-event-search-form button {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
  grid-area: search;
}
@media screen and (min-width: 55em){
  .home #page .eo-event-search-form label {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .home #page .eo-event-search-form input {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .home #page .eo-event-search-form button {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}
.home #page .eo-event-search-form label {
  font-size: 16.8px;
  font-size: calc((1.2 * 0.8rem) + 0.2vw);
  font-weight: 600;
}

.eo-search-form-event-date, .eo-fes-form-element {
  z-index: 20;
  position: relative;
}

.eo-fes-form-element label {
  display: block;
  font-weight: bold;
  margin: 0 0 3px;
  padding: 0;
}
.eo-fes-form-element > label, .eo-fes-form-element > span {
  position: relative;
  margin: 0;
  padding: 15px 12px;
  border-top: #EEEEEE solid 1px;
}
.eo-fes-form-element span[role=group] {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.eo-fes-element-required-asterix {
  color: #f00;
}

.ui-datepicker {
  background: #aaf1c6;
  border: 1px solid #168642;
  width: unset;
}
.ui-datepicker td.ui-datepicker-today {
  border: 1px solid #ea2226;
}
.ui-datepicker td.ui-datepicker-days-cell-over {
  background-color: #f48a2b;
}

.ui-datepicker-next, .ui-datepicker-prev {
  cursor: pointer;
}
.ui-datepicker-next .ui-icon, .ui-datepicker-prev .ui-icon {
  background: #168642;
  width: 1em;
  height: 1em;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}

.ui-datepicker-prev .ui-icon {
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
}

.ui-datepicker-current-day {
  background-color: #f48a2b;
}

.ui-datepicker-calendar td:not(.ui-datepicker-unselectable):hover {
  background-color: #f9ec39;
}

.ui-datepicker-unselectable {
  color: fade(#168642, 80%);
}

.acf-ui-datepicker {
  position: absolute;
  top: 0;
}

.inline {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  gap: 1em;
}
.inline.draft {
  border-left: 0.5em solid var(--colour-yellow);
}
.inline.pending {
  border-left: 0.5em solid var(--colour-blue);
}

.actions {
  display: flex;
  margin-left: auto;
  gap: 0.5em;
}

.contact-form .acf-required {
  display: none;
}

.comment-form-comment {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-column-gap: 1em;
}
.comment-form-comment textarea {
  height: 5vh;
  max-width: 30em;
}
@media screen and (min-width: 55em) {
  .comment-form-comment textarea {
    height: 10vh;
  }
}

.comment-form [type=checkbox] {
  appearance: none;
  margin-left: 0.5rem;
  border: 1px solid;
  height: 1rem;
  width: 1rem;
  position: relative;
}
.comment-form [type=checkbox]:before {
  content: "✓";
  font-size: 1.4em;
  font-weight: bold;
  line-height: 0.4em;
  color: #ea2226;
  display: block;
  position: absolute;
  opacity: 0;
  visibility: hidden;
}
.comment-form [type=checkbox]:checked:before {
  opacity: 1;
  visibility: visible;
}

.acf-fields > .acf-field.gift-aid-declaration {
  border: 1px solid #168642;
  margin: 1vh 1vw;
  border-radius: 0.2em;
  padding: 1vh 1vw;
}
.acf-fields > .acf-field.gift-aid-declaration .acf-input {
  background-color: #aaf1c6;
  padding: 1vh 1vw;
  border-radius: 0.2em;
}
.acf-fields > .acf-field.gift-aid-declaration .message {
  font-weight: 600;
}

dialog {
  animation: dialog_fadein 0.5s;
}
dialog.search {
  background: var(--colour-blue);
  border-radius: 0.5em;
  border: none;
  box-shadow: 0.1em 0.1em 0.1em var(--colour-purple);
  padding: 0.8em;
}
dialog.search::backdrop {
  background-color: #a1a1a1;
  opacity: 0.6;
}
dialog.search form {
  display: flex;
  flex-flow: row wrap;
}
dialog.search label {
  font-size: 1.2em;
  font-weight: bold;
  width: 100%;
  color: var(--colour-white);
}
dialog.search input {
  width: unset;
  flex: 1 1 50%;
}
dialog.search button {
  background-color: var(--colour-green);
  border: none;
  background-size: contain;
  background-position: center;
  text-indent: 2em;
  padding: 0;
  overflow: hidden;
  aspect-ratio: 1/1;
  width: 2em;
  fill: #919191;
  border-radius: 0.2em;
  margin-left: 0.5em;
  cursor: pointer;
  transition: scale 0.5s ease-in-out;
}
dialog.search button:before {
  content: "";
  display: block;
  width: 2em;
  aspect-ratio: 1/1;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
dialog.search button.search {
  background-color: var(--colour-green);
}
dialog.search button.search:before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='icon-search1' viewBox='0 0 24 24'%3E %3Cpath d='M9.516 14.016q1.875 0 3.188-1.313t1.313-3.188-1.313-3.188-3.188-1.313-3.188 1.313-1.313 3.188 1.313 3.188 3.188 1.313zM15.516 14.016l4.969 4.969-1.5 1.5-4.969-4.969v-0.797l-0.281-0.281q-1.781 1.547-4.219 1.547-2.719 0-4.617-1.875t-1.898-4.594 1.898-4.617 4.617-1.898 4.594 1.898 1.875 4.617q0 0.984-0.469 2.227t-1.078 1.992l0.281 0.281h0.797z'%3E%3C/path%3E %3C/svg%3E ");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='icon-search1' viewBox='0 0 24 24'%3E %3Cpath d='M9.516 14.016q1.875 0 3.188-1.313t1.313-3.188-1.313-3.188-3.188-1.313-3.188 1.313-1.313 3.188 1.313 3.188 3.188 1.313zM15.516 14.016l4.969 4.969-1.5 1.5-4.969-4.969v-0.797l-0.281-0.281q-1.781 1.547-4.219 1.547-2.719 0-4.617-1.875t-1.898-4.594 1.898-4.617 4.617-1.898 4.594 1.898 1.875 4.617q0 0.984-0.469 2.227t-1.078 1.992l0.281 0.281h0.797z'%3E%3C/path%3E %3C/svg%3E ");
  background-color: var(--colour-white);
}
dialog.search button.close {
  background-color: var(--colour-red);
}
dialog.search button.close:before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='icon-clear' viewBox='0 0 24 24'%3E %3Cpath d='M18.984 6.422l-5.578 5.578 5.578 5.578-1.406 1.406-5.578-5.578-5.578 5.578-1.406-1.406 5.578-5.578-5.578-5.578 1.406-1.406 5.578 5.578 5.578-5.578z'%3E%3C/path%3E %3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='icon-clear' viewBox='0 0 24 24'%3E %3Cpath d='M18.984 6.422l-5.578 5.578 5.578 5.578-1.406 1.406-5.578-5.578-5.578 5.578-1.406-1.406 5.578-5.578-5.578-5.578 1.406-1.406 5.578 5.578 5.578-5.578z'%3E%3C/path%3E %3C/svg%3E");
  background-color: #ff857a;
}
dialog.search button:hover {
  scale: 1.1;
}

@keyframes dialog_fadein {
  0% {
    opacity: 0;
    scale: 0;
  }
  100% {
    opacity: 1;
    scale: 100%;
  }
}
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #168642;
  text-decoration: none;
}
a:hover, a:focus, a:active {
  color: #0f5a2c;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

.links {
  display: grid;
  margin: 5vw 2vw;
  grid-template-columns: repeat(auto-fit, minmax(100px, auto));
  grid-gap: 1vw;
  text-align: center;
}
.links a {
  background: #6895d7;
  color: #ffffff;
  border: 1px solid #2e61ab;
  border-radius: 0.2em;
  padding: 1em;
  display: grid;
  align-content: center;
  justify-content: center;
}
.links a:hover {
  background: #2e61ab;
  border-color: #4079cc;
}

.socials .icon {
  fill: var(--colour-black);
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  display: block;
  width: 100%;
  grid-column: full;
  grid-row: 2;
  align-self: center;
  z-index: 200;
  /* Small menu. */
}
@media screen and (min-width: 55em) {
  .main-navigation {
    grid-column: menu;
    grid-row: 1;
  }
}
.main-navigation ul {
  overflow: hidden;
  display: grid;
  list-style: none;
  padding: 0.5rem;
  background-color: #0f5a2c;
  max-height: 0;
  opacity: 0;
  margin: 0;
  padding: 0;
  transition-property: opacity, max-height;
  transition-timing-function: ease-in-out;
  /*transition-delay: 0s, 0.2s;*/
  transition-duration: 0.4s;
}
@media screen and (min-width: 55em) {
  .main-navigation ul {
    padding: 0;
    max-height: unset;
    opacity: unset;
    grid-template-rows: none;
    grid-template-columns: repeat(auto-fit, minmax(3em, auto));
    background-color: transparent;
  }
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}
.toggled + .main-navigation ul {
  max-height: 90vh;
  opacity: 1;
}
.main-navigation li {
  position: relative;
  display: inline-block;
  padding: 0;
  /*border-top: 1px solid $color__white;*/
  text-align: right;
}
@media screen and (min-width: 55em) {
  .main-navigation li {
    padding: 0 0.3em;
    border-top: none;
    text-align: center;
  }
}
.main-navigation a {
  display: block;
  text-decoration: none;
  text-shadow: 1px 1px #000000;
  color: #e6e6e6;
  font-weight: 500;
  font-size: 1.3em;
  height: 100%;
  border-bottom: 1px solid transparent;
  transition: border 0.1s ease;
}
.main-navigation a:hover {
  color: #ffffff;
  border-bottom: 1px solid #ffffff;
}
.main-navigation a:not(.menu-toggle) {
  padding: 0.5em 0.5em;
  border-color: transparent;
  border-width: 0 0 0 0.2em;
  border-style: solid;
}
@media screen and (min-width: 59.6875em) {
  .main-navigation a:not(.menu-toggle) {
    border-width: 0 0 1px 0;
    padding: 0 0.2em;
  }
}
.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a {
  color: #ffffff;
  border-color: #ffffff;
}
@media screen and (min-width: 55em) {
  .main-navigation .current_page_item > a,
  .main-navigation .current-menu-item > a,
  .main-navigation .current_page_ancestor > a,
  .main-navigation .current-menu-ancestor > a {
    background-color: rgba(255, 255, 255, 0.3);
  }
}

ul.goc-toc {
  list-style: none;
  text-align: center;
  margin: 0;
  padding: 0;
}
ul.goc-toc li {
  white-space: nowrap;
  display: inline-block;
}
ul.goc-toc li:not(:last-of-type):after {
  display: inline-block;
  content: "/";
  padding: 0 0.2em;
}

#masthead .menu-toggle {
  grid-column: menu;
  grid-row: 1;
  align-self: center;
  justify-self: flex-end;
  z-index: 1;
}
@media screen and (min-width: 55em) {
  #masthead .menu-toggle {
    display: none;
  }
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links,
.eo-events-nav .nav-links {
  display: grid;
  grid-template-columns: [next-start] 10em [next-end] 1fr [previous-start] 10em [previous-end];
  grid-gap: 1rem;
  grid-auto-flow: dense;
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation,
.site-main .eo-events-nav {
  margin: 0 0 1.5em;
  overflow: hidden;
}
.comment-navigation .nav-previous, .comment-navigation .nav-next,
.posts-navigation .nav-previous,
.posts-navigation .nav-next,
.post-navigation .nav-previous,
.post-navigation .nav-next,
.eo-events-nav .nav-previous,
.eo-events-nav .nav-next {
  background: #168642;
  font-size: 0.75rem;
}
.comment-navigation .nav-previous a, .comment-navigation .nav-next a,
.posts-navigation .nav-previous a,
.posts-navigation .nav-next a,
.post-navigation .nav-previous a,
.post-navigation .nav-next a,
.eo-events-nav .nav-previous a,
.eo-events-nav .nav-next a {
  color: #ffffff;
  font-weight: 600;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous,
.eo-events-nav .nav-previous {
  grid-column: previous;
  clip-path: polygon(0 0, calc(100% - 1rem) 0, 100% 50%, calc(100% - 1rem) 100%, 0 100%);
  padding: 0.5em 1rem 0.5em 1em;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next,
.eo-events-nav .nav-next {
  grid-column: next;
  padding: 0.5em 1em 0.5em 1rem;
  clip-path: polygon(1rem 0, 100% 0, 100% 100%, 1rem 100%, 0 50%);
}

.menu-toggle .toggled-open {
  display: none;
}
.menu-toggle .toggled-close {
  display: block;
}
.menu-toggle.toggled .toggled-open {
  display: block;
}
.menu-toggle.toggled .toggled-close {
  display: none;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.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;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 12.25px;
  font-size: calc((0.875 * 0.8rem) + 0.2vw);
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
/*@import "modules/clearings";*/
/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}
.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Slides/gallery
--------------------------------------------------------------*/
#featured {
  height: 100%;
}

.slides {
  position: relative;
  margin: 0;
  padding: 0;
  height: 100%;
}
.slides > li {
  margin: 0;
  padding: 0;
  list-style: none;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.slides li {
  z-index: -1;
  opacity: 0;
  transition: opacity 0.8s ease-in-out;
}
.slides li.show {
  z-index: 1;
  opacity: 1;
  transition: opacity 0.8s ease-in-out;
}
.slides li.show span .post-thumbnail {
  animation-name: slideleft;
  animation-duration: 15s;
  animation-iteration-count: 1;
  animation-fill-mode: both;
}
.slides li.show span h2 {
  animation-name: fadein;
  animation-duration: 2s;
  animation-delay: 1s;
  animation-iteration-count: 1;
  animation-fill-mode: both;
}
.slides span {
  width: 100%;
  height: 100%;
  max-height: 100%;
  display: grid;
  grid-template-columns: 5vw 1fr 5vw;
}
.slides span .post-thumbnail {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 120% !important;
  grid-row: 1;
  grid-column-start: 1;
  grid-column-end: -1;
}
.slides span h2 {
  grid-row: 1;
  grid-column: 2;
  justify-self: center;
  align-self: flex-end;
  margin-bottom: 5vh;
  margin-right: 5vh;
  border-bottom: 0.2em solid transparent;
  /*background: rgba($color__primary, 0.8);*/
  /*clip-path: polygon(0 0, calc(100% - 2vw) 0, 100% 100%, 2vw 100%);*/
  transition: clip-path 0.4s ease-in-out;
  padding: 0.2vw 1vw;
  font-size: 16.8px;
  font-size: calc((1.2 * 0.8rem) + 0.2vw);
  text-align: center;
  text-shadow: 1px 1px #000000;
  color: #f2f2f2;
}
@media screen and (min-width: 55em) {
  .slides span h2 {
    justify-self: flex-end;
  }
}
.slides span:hover h2 {
  border-color: #168642;
  /*clip-path: polygon(2vw 0, 100% 0, calc(100% - 2vw) 100%, 0 100%);*/
  color: #ffffff;
  transition: clip-path 0.4s ease-in-out;
}

/*--------------------------------------------------------------
# EU cookie law
--------------------------------------------------------------*/
.widget_eu_cookie_law_widget.widget {
  border: none;
  bottom: 1em;
  display: none;
  left: 1em;
  margin: 0;
  padding: 0;
  position: fixed;
  right: 1em;
  width: auto;
  z-index: 50001;
}

#eu-cookie-law {
  background-color: #fff;
  border: 1px solid #dedede;
  color: #2e4467;
  font-size: 12px;
  line-height: 1.5;
  overflow: hidden;
  padding: 1em 1em 6em 1em;
  position: relative;
  /**
   * Using a highly-specific rule to make sure that all button styles
   * will be reset
   */
}
@media screen and (min-width: 55em) {
  #eu-cookie-law {
    padding-right: 15em;
    padding-bottom: 1em;
  }
}
#eu-cookie-law form {
  position: absolute;
  bottom: 1em;
  right: 1em;
}
#eu-cookie-law a,
#eu-cookie-law a:active,
#eu-cookie-law a:visited {
  color: inherit;
  cursor: inherit;
  text-decoration: underline;
}
#eu-cookie-law a:hover {
  cursor: pointer;
  text-decoration: none;
}
#eu-cookie-law input,
#eu-cookie-law input:hover,
#eu-cookie-law input:focus {
  background: #f3f3f3;
  border: 1px solid #dedede;
  border-radius: 4px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  color: #2e4453;
  cursor: pointer;
  display: inline;
  float: right;
  font-family: inherit;
  font-size: 14px;
  font-weight: inherit;
  line-height: inherit;
  margin: 0 0 0 5%;
  padding: 8px 12px;
  position: static;
  text-transform: none;
}
#eu-cookie-law.negative {
  background-color: #000;
  border: none;
  color: #fff;
}
#eu-cookie-law.negative input,
#eu-cookie-law.negative input:hover,
#eu-cookie-law.negative input:focus {
  background: #282828;
  border-color: #535353;
  color: #fff;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.woocommerce-account #page {
  grid-template-rows: 0 2em auto auto auto minmax(10vh, auto);
}
@media screen and (min-width: 55em) {
  .woocommerce-account #page {
    grid-template-rows: auto 0 auto auto minmax(10vh, auto);
  }
}
.woocommerce-account #page #feature-image {
  display: none;
}

#masthead {
  display: grid;
  grid-gap: 0.1rem;
  grid-template-columns: [full-start]1fr [branding-start] repeat(2,var(--main-column-width))  [branding-end menu-start] repeat(10, var(--main-column-width)) [menu-end] 1fr [full-end];
  position: sticky;
  top: 0;
  z-index: 100;
}
#masthead:after {
  display: block;
  content: "";
  grid-column: full;
  grid-row: 1;
  background-color: var(--colour-blue);
}
@media screen and (min-width: 55em) {
  #masthead {
    grid-gap: 1rem;
  }
}

.site-branding {
  background-color: var(--colour-white);
  width: 4.5rem;
  height: 3rem;
  margin: 0.5em 0;
  grid-column: branding;
  grid-row: 1;
  z-index: 1;
}
@media screen and (min-width: 55em) {
  .site-branding {
    width: 8.5rem;
    height: 6rem;
  }
}
.site-branding img {
  padding: 0;
  height: 100%;
  object-fit: contain;
  display: block;
}

.content-area {
  display: grid;
  grid-template-columns: 1fr [main-start] auto [main-end] 1fr;
  margin-bottom: 4vh;
}

.site-main {
  background-color: var(--colour-white);
  grid-column: main;
  padding: 0.5rem;
  display: grid;
  grid-gap: 1rem;
  grid-template-columns: [body-start breadcrumb-start] var(--main-column-width) [hero-start gallery-start] repeat(10, var(--main-column-width)) [gallery-end hero-end] var(--main-column-width) [breadcrumb-end body-end];
}
.site-main > * {
  grid-column: body;
}

#content, #primary {
  grid-column: body;
}

#colophon {
  grid-column: footer;
}

#secondary {
  display: grid;
  grid-auto-flow: dense;
  grid-template-columns: 1fr [body-start breadcrumb-start] var(--main-column-width) [hero-start gallery-start] repeat(10, var(--main-column-width)) [gallery-end hero-end] var(--main-column-width) [breadcrumb-end body-end] 1fr;
  grid-gap: 1rem;
  padding: 0;
}
#secondary section {
  grid-column: body;
}
@media screen and (min-width: 55em) {
  #secondary section {
    grid-column-start: auto;
    grid-column-end: span 4;
  }
  #secondary section:first-child {
    grid-column-start: 2;
  }
}
#secondary ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer {
  grid-column: footer;
  padding: 2em 1vw 4em 1vw;
}

#secondary, .site-footer {
  font-size: 11.2px;
  font-size: calc((0.8 * 0.8rem) + 0.2vw);
  background-color: var(--colour-primary-dark);
  color: vaR(--colour-white);
}
#secondary h2, .site-footer h2 {
  font-size: 11.2px;
  font-size: calc((0.8 * 0.8rem) + 0.2vw);
  font-weight: 500;
  font-variant: small-caps;
}
#secondary a, .site-footer a {
  color: #f2f2f2;
  text-decoration: none;
}
#secondary a:hover, .site-footer a:hover {
  color: #d9d9d9;
}

.single-goc_group #main > article {
  display: grid;
  grid-template-areas: "content" "contact" "members";
}
@media screen and (min-width: 55em) {
  .single-goc_group #main > article {
    grid-template-columns: repeat(3, 1fr);
    grid-template-areas: "content content content" "contact members members";
  }
}
.single-goc_group #main > article > * {
  grid-column: content;
}
.single-goc_group #main > article .contact-form {
  grid-column: contact;
}
.single-goc_group #main > article .members {
  grid-row: -1;
  grid-column: members;
}
@media screen and (min-width: 55em) {
  .single-goc_group #main > article .members {
    grid-row: unset;
  }
}

.feature-header, main > article > .entry-header, main > article > .page-header, main > header {
  border-bottom: 0.1em solid var(--colour-primary);
  color: #fff;
  margin: 2em 0;
  z-index: 5;
}
.feature-header h1, main > article > .entry-header h1, main > article > .page-header h1, main > header h1 {
  color: var(--colour-primary);
  font-size: 1.6em;
  font-weight: 900;
  margin: 0;
  padding: 0;
}

ul.goc-list-columns {
  column-width: 20rem;
  max-width: 100%;
  list-style: none;
  margin: 0 auto;
  padding: 0;
}
ul.goc-list-columns > li {
  margin-bottom: 0.4em;
}

.sharedaddy {
  grid-column-start: 1;
  grid-column-end: -1;
}

.event-search {
  color: var(--colour-white);
  padding: 0.3vw;
}

@media screen and (min-width: 55em) {
  .site-info {
    margin-right: 25em;
  }
}

.join-now {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  font-size: 1.7rem;
  text-align: right;
  z-index: 1000;
  background: var(--colour-blue);
}
@media screen and (min-width: 55em) {
  .join-now {
    font-size: 2.2rem;
  }
}
.join-now a {
  padding: 0 5vw;
  color: var(--colour-white);
  display: block;
}

#user_switching_switch_on {
  position: fixed;
  background: rgba(255, 255, 255, 0.8);
  bottom: 0;
  left: 0;
  z-index: 9999;
}

.featured {
  display: grid;
  margin: 0.5em auto;
  width: 100%;
}
@media screen and (min-width: 46.25em) {
  .featured {
    grid-template-columns: repeat(auto-fit, minmax(25%, 1fr));
  }
}
.featured a {
  display: grid;
  grid-template-columns: 1fr 1.618fr;
}
@media screen and (min-width: 55em) {
  .featured a {
    grid-template-columns: unset;
    grid-template-rows: 1.618fr 1fr;
  }
}
.featured a .post-text {
  display: grid;
  align-content: center;
  justify-content: center;
  color: var(--colour-white);
  padding: 1vw;
  text-align: center;
  position: relative;
}
.featured a .post-text::after {
  display: block;
  content: "…";
  position: absolute;
  bottom: 0.2em;
  right: 0.5em;
  font-size: 1.2em;
  font-style: italic;
  font-weight: 900;
}
.featured a .post-thumbnail {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  position: relative;
}
.featured a img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  position: absolute;
}
.featured a:nth-of-type(n+1) {
  background: var(--colour-purple);
}
.featured a:nth-of-type(n+2) {
  background: var(--colour-orange);
}
.featured a:nth-of-type(n+3) {
  background: var(--colour-blue);
}
.featured a:only-child {
  background: none;
  grid-template-rows: unset;
  grid-template-columns: 1fr 1.618fr;
}
.featured a:only-child .post-text {
  position: relative;
  color: var(--colour-primary);
  font-size: 1.5rem;
  font-weight: bold;
  padding: 2vw;
  grid-row: 1;
  grid-column-end: -1;
}
.featured a:only-child .post-thumbnail {
  grid-column-start: 1;
  grid-row: 1;
}

#breadcrumbs {
  display: grid;
  grid-template-columns: [full-start]1fr [body-start] repeat(12,var(--main-column-width)) [body-end] 1fr [full-end];
  grid-gap: 1rem;
  margin: 0;
  padding-top: 0.2em;
  color: var(--colour-primary-light);
}
#breadcrumbs .breadcrumb_last {
  color: var(--colour-primary);
}
#breadcrumbs span {
  grid-column: body;
}

.no-sidebar .content-area {
  grid-area: body;
}
.no-sidebar .site-main {
  margin-right: 0;
}

@media screen and (max-width: 782px) {
  #wpadminbar {
    top: -46px;
  }
}

.event-notice {
  margin: 2rem 2rem;
  grid-column: body;
  font-size: 1.2rem;
  border: 1px solid;
  padding: 2em;
}
@media screen and (min-width: 77.5em) {
  .event-notice {
    margin: 2rem 5rem;
  }
}
.event-notice.critical {
  border-color: var(--colour-red);
}
.event-notice.info {
  border-color: var(--colour-blue);
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.hentry {
  margin: 0 0 1.5em;
}

#message.updated {
  display: block;
  margin: 2vw 1vw;
  border: 1px solid #2e61ab;
  background: #6895d7;
  color: #ffffff;
  padding: 1vw;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

section.featured {
  grid-area: thumbnail;
}
section.featured div {
  position: relative;
}
section.featured a {
  display: block;
  width: 100%;
  height: 100%;
}
section.featured img {
  display: block;
  object-fit: cover;
}
section.featured h2 {
  border-radius: 0.5em;
  padding: 0.2em;
  background: #168642;
  position: absolute;
  top: 50%;
  left: 50%;
}

.archive-description {
  margin: 1vw 0;
}

.entry-meta > span {
  display: block;
  text-align: left;
}

/*
.single-goc_article, .single-goc_report {
	.entry-content{
		display: grid;


		grid-template-columns: [gallery-start content-start] 1fr [content-end gallery-end];
		grid-column-gap: 1vw;
		grid-row-gap: 1vh;

		grid-auto-flow: column dense;
		@media screen and (min-width: 55em) {
			grid-template-columns: [content-start] 1fr [gallery-start] 1fr [gallery-end] 1fr [content-end];
		}
		.text {
			grid-column: content;
		}
		.gallery-wrap {
			grid-column: gallery;
		}
		.links {
			grid-column: content;
		}
	}
}
*/
.text.feature_1, .text.feature_2, .text.notice {
  padding: 1em;
  margin: 1em 0;
  border-radius: 0.2em;
  background-color: #aaf1c6;
}
.text.feature_2 {
  background_color: #e1eaf7;
}
.text.notice {
  background_color: #f37f81;
}

.search .site-main > article {
  grid-column: span 6;
}
@media screen and (min-width: 55em) {
  .search .site-main > article {
    grid-column: span 2;
  }
}

.grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: 1vw;
  grid-row-gap: 1vw;
  padding: 1vw;
}
.grid article {
  grid-column: span 6;
  display: grid;
  grid-auto-flow: row;
  grid-template-rows: [full-start image-start] auto [image-end title-start] 1fr [title-end meta-start] auto [meta-end full-end];
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 0.2rem;
  overflow: hidden;
  text-align: center;
  align-items: flex-start;
}
@media screen and (min-width: 38.75em) {
  .grid article {
    grid-column: span 4;
  }
}
@media screen and (min-width: 55em) {
  .grid article {
    grid-column: span 3;
  }
}
@media screen and (min-width: 68.75em) {
  .grid article {
    grid-column: span 2;
  }
}
.grid article > * {
  grid-column: 1;
}
.grid article > a {
  grid-row: full;
  height: 100%;
  z-index: 10;
  opacity: 0;
}
.grid article .entry-title {
  /*background-color: $color__primary;*/
  margin: 0;
  padding: 0 0.5em;
  /*@include font-size-standard;*/
  font-weight: 400;
  max-width: 100%;
  overflow: hidden;
  grid-row: title;
}
.grid article .entry-title a {
  color: #ffffff;
  text-decoration: none;
}
.grid article .entry-meta {
  align-self: flex-end;
  grid-row: meta;
  color: #404040;
}
.grid article .entry-meta > span {
  text-align: center;
}
.grid article.type-topic {
  grid-column-start: 1;
  grid-column-end: -1;
}
.grid .event-thumbnail, .grid .wp-post-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.grid > h2, .grid > h3, .grid > h4 {
  grid-column-start: 1;
  grid-column-end: -1;
}

/*
main {
	> header {
		.post-type-archive-goc_article &, .single-goc_article & {
			border-color: $color__article;
		}	
		.post-type-archive-goc_report &, .single-goc_report & {
			border-color: $color__reports;
		}
	}
	.nav-next, .nav-previous {
		.post-type-archive-goc_article &, .single-goc_article & {
			background-color: $color__article;
		}	
		.post-type-archive-goc_report &, .single-goc_report & {
			background-color: $color__reports;
		}

	}
}
.post-type-archive-goc_article, .single-goc_article {
	main {
		> header{
			background-color: $color__article;
		}
	}
	.nav-next, .nav-previous {
		background-color: $color__article;
	}
}

.post-type-archive-goc_report, .single-goc_report {
	main {
		> header{
			background-color: $color__reports;
		}
	}
	.nav-next, .nav-previous {
		background-color: $color__reports;
	}
}
*/
#jp-related-posts {
  grid-column: meta;
}

.single-event .entry-content {
  display: grid;
  grid-template-columns: [map-start gallery-start] 1fr [meta-start general-start restricted-start attending-start contact-start body-start] 90vw [body-end contact-end attending-end restricted-end general-end meta-end] 1fr [gallery-end map-end];
  grid-row-gap: 0.5em;
  grid-auto-flow: dense;
  overflow-wrap: break-word;
}
@media screen and (min-width: 55em) {
  .single-event .entry-content {
    grid-template-columns: [meta-start general-start restricted-start gallery-start contact-start body-start] repeat(4, 1fr) [contact-end attending-start] repeat(2, 1fr) [gallery-end map-start] repeat(6, 1fr) [body-end map-end attending-end restricted-end general-end meta-end];
    grid-column-gap: 0.5em;
  }
}

.event-meta {
  color: #404040;
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left;
  grid-column: meta;
}
.event-meta .icon {
  width: 1em;
  height: 1em;
  align-self: center;
}

.eo-event-meta {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left;
}
@media screen and (min-width: 55em) {
  .eo-event-meta {
    column-count: 2;
  }
}
.eo-event-meta time + time::before {
  display: inline;
  content: " – ";
}

.eo-event-venue-map {
  grid-column: map;
}

.entry-general {
  grid-column: general;
}

.entry-restricted, .join {
  grid-column: restricted;
  overflow: hidden;
}

.entry-restricted {
  background-color: #ecfcf2;
}

.entry-general, .entry-restricted {
  padding: 1em;
  display: grid;
  grid-gap: 1vw;
  grid-template-columns: [full-start left-start right-start] 1fr [right-end left-end full-end];
}
@media screen and (min-width: 55em) {
  .entry-general, .entry-restricted {
    grid-template-columns: [full-start left-start] 1fr [left-end right-start] 1fr [right-end full-end];
  }
}
.entry-general h2,
.entry-general .entry-general-description, .entry-restricted h2,
.entry-restricted .entry-general-description {
  grid-column: full;
}

.event-contact {
  grid-column: contact;
  border: 1px solid #168642;
  padding: 1vw;
  border-radius: 0.2em;
  overflow: hidden;
}
.event-contact h2 {
  color: #ffffff;
  background-color: #168642;
  margin: -1vw -1vw 0 -1vw;
  padding: 0 1vw;
}

.event-booking-attendance {
  grid-column: attending;
}

.eo-venue-map {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
}

.userlist.grid {
  list-style: none;
  margin: 0 -1vw;
  padding: 1vw;
  grid-template-columns: repeat(auto-fill, minmax(9em, 1fr));
}
.userlist a {
  display: grid;
  grid-template-rows: auto auto;
}
.userlist .image {
  position: relative;
}
.userlist .image > img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.userlist .image.trial::after, .userlist .image.hidden::after {
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
}
.userlist .image.trial::after {
  content: "";
  border-left: 2.5em solid #FFD700;
  border-bottom: 2.5em solid transparent;
}
.userlist .image.hidden {
  opacity: 0.4;
}
.userlist .name {
  text-align: center;
  overflow: hidden;
  font-size: 11.2px;
  font-size: calc((0.8 * 0.8rem) + 0.2vw);
  margin-top: 0.05em;
  border-top: 1px solid #168642;
  color: #168642;
}
.userlist li:hover .name {
  color: ligthen(#168642, 10%);
}

.grid > article .entry-header {
  grid-row: title;
  /*color: $color__white;*/
  display: grid;
  align-content: center;
  justify-content: center;
  margin-bottom: 0.5rem;
}
.grid > article .entry-header h2 {
  font-size: 0.8rem;
}
.grid > article .post-thumbnail {
  grid-row: image;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  position: relative;
}
.grid > article .post-thumbnail img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
}
.grid > article .event-date {
  grid-row: image;
  margin: auto 1vw 1vw auto;
  background: #ffffff;
  font-weight: bold;
  color: #168642;
  border-radius: 0.2em;
  padding: 0.2em;
  z-index: 2;
}
.grid > article .event-entry-meta, .grid > article .entry-meta {
  grid-row: meta;
  text-align: center;
  font-size: 0.7rem;
}
.grid > article.more {
  grid-column-start: 1;
  grid-column-end: -1;
  border: 0;
  justify-self: flex-end;
  align-self: flex-end;
  padding: 0.2em 1em;
}
.grid > article.more a {
  color: #168642;
  display: grid;
  grid-auto-flow: column;
  grid-column-gap: 0.2em;
  opacity: 1;
}
.grid > article.more a::after {
  content: "…";
  display: block;
  width: 1em;
}

.woocommerce-MyAccount-content .events ul {
  list-style: none;
  margin: 0;
}
.woocommerce-MyAccount-content .events ul.attending, .woocommerce-MyAccount-content .events ul.bookings {
  padding: 0;
}
.woocommerce-MyAccount-content .events ul.tickets {
  grid-column: tickets;
  padding: 0.2em 0.2em 0.2em 1em;
}
.woocommerce-MyAccount-content .events .event-booking-ref, .woocommerce-MyAccount-content .events .event-date {
  grid-column: info;
}
.woocommerce-MyAccount-content .events .event-title {
  font-weight: 600;
}
.woocommerce-MyAccount-content .events li {
  margin-bottom: 0.2em;
  padding: 0.2em;
  display: grid;
  grid-auto-flow: dense;
  grid-template-areas: "title" "info" "tickets";
}
@media screen and (min-width: 46.25em) {
  .woocommerce-MyAccount-content .events li {
    grid-template-areas: "title info" "tickets tickets";
    grid-template-columns: 1fr auto;
  }
}
.woocommerce-MyAccount-content .events li.events {
  background-color: #fcf69c;
}
.woocommerce-MyAccount-content .events li.events > span {
  grid-column: info;
}
.woocommerce-MyAccount-content .events li.booking {
  background-color: #aaf1c6;
}
.woocommerce-MyAccount-content .events li.booking.cancelled {
  background-color: #f37f81;
}
.woocommerce-MyAccount-content .events li.booking.cancelled .event-title:after {
  content: " (Booking cancelled)";
}
.woocommerce-MyAccount-content .events .cancel {
  grid-column-end: tickets-end;
  align-self: flex-end;
  justify-self: flex-end;
}
.woocommerce-MyAccount-content .events .ticket-price {
  text-align: right;
}
.woocommerce-MyAccount-content .events .ticket-price:before {
  content: "£";
}

.event-end-date::before {
  content: " - ";
}

#eo-booking-form {
  max-width: 600px;
  padding: 0.5em;
  border: 1px solid #168642;
  border-radius: 0.2em;
  margin: auto;
}
#eo-booking-form #eo-booking-form-stripe-payment-fields {
  padding: 0.46em;
  background-color: #aaf1c6;
}
#eo-booking-form .eo-booking-field-row {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: 1fr 10em;
  justify-content: stretch;
  align-items: flex-end;
  grid-gap: 0.5rem;
}
#eo-booking-form .eo-booking-field-row label {
  display: grid;
  grid-auto-flow: row;
}
#eo-booking-form .eo-booking-field-row .eo-gateway-stripe-expire-month::before {
  display: block;
  content: "Card expiry date";
}
#eo-booking-form .eo-booking-field-row select {
  width: 100%;
}
#eo-booking-form .eo-booking-field-row span > span {
  display: none;
}
#eo-booking-form .eo-booking-notice, #eo-booking-form .eo-booking-form-notice {
  color: #ffffff;
  background-color: #168642;
  border-radius: 0.2em;
}
#eo-booking-form .eo-booking-field-attendee-questions {
  border: none;
  padding: 0;
}

.featured-events ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-flow: row wrap;
}
.featured-events li {
  flex: 0 0 20rem;
}

.eo-booking-ticket-picker tr {
  display: grid;
  grid-template-columns: [name-start price-start]1fr [price-end quantity-start] 1fr [quantity-end name-end];
  grid-column-gap: 1vw;
}
@media screen and (min-width: 55em) {
  .eo-booking-ticket-picker tr {
    grid-template-columns: [name-start] 2fr [name-end price-start] 1fr [price-end quantity-start] 1fr [quantity-end];
  }
}
.eo-booking-ticket-picker thead {
  background-color: #168642;
  color: #ffffff;
}
.eo-booking-ticket-picker .eo-booking-ticket-name {
  grid-column: name;
  font-weight: 500;
}
.eo-booking-ticket-picker .eo-booking-ticket-price {
  grid-column: price;
}
.eo-booking-ticket-picker .eo-booking-ticket-quantity {
  grid-column: quantity;
}
.eo-booking-ticket-picker .eo-booking-field-ticketpicker {
  width: 100% !important;
}
.eo-booking-ticket-picker .eo-booking-ticket-availability {
  grid-column: quantity;
}

.eo-events li {
  margin-bottom: 0.5rem;
}
.eo-events .date {
  display: block;
}
.eo-events .event {
  display: block;
  margin-left: 1.5rem;
}

.eo-booking-field-attendee-questions ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.eo-booking-field-attendee-questions input[type=radio] {
  margin-right: 0.5em;
}

/* Inline #31 | https://wpdev.gayoutdoors.org.uk/event/all-wales-weekend-at-lawrenny-pembrokeshire/ */
.eo-booking-form-payment-gateway {
  list-style: none;
}

.eo-booking-form-payment-gateway img {
  height: 1.5rem;
}

.event-tag-cancelled::before, .event-tag-provisional::before, .event-tag-changed-date::before, .event-tag-new-location::before {
  display: block;
  text-transform: uppercase;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  border-bottom-style: solid;
  border-bottom-width: 1px;
}
.archive .event-tag-cancelled::before, .woocommerce-account .event-tag-cancelled::before, .single-goc_group .event-tag-cancelled::before, .archive .event-tag-provisional::before, .woocommerce-account .event-tag-provisional::before, .single-goc_group .event-tag-provisional::before, .archive .event-tag-changed-date::before, .woocommerce-account .event-tag-changed-date::before, .single-goc_group .event-tag-changed-date::before, .archive .event-tag-new-location::before, .woocommerce-account .event-tag-new-location::before, .single-goc_group .event-tag-new-location::before {
  font-size: 1.2rem;
  grid-row: image;
  grid-column: 1;
  background: #ffffff;
  z-index: 10;
}

.eo-event-tag-cancelled::before, .eo-event-tag-provisional::before, .eo-event-tag-changed-date::before, .eo-event-tag-new-location::before {
  display: block;
  text-transform: uppercase;
  text-align: left;
  font-weight: bold;
  border-bottom-style: solid;
  border-bottom-width: 1px;
}

.eo-event-tag-cancelled::before, .event-tag-cancelled::before {
  content: "Cancelled";
  color: #ea2226;
  border-color: #ea2226;
}

.eo-event-tag-changed-date::before,
.event-tag-changed-date::before {
  content: "New Date";
  color: #168642;
  border-color: solid #168642;
}

.eo-event-tag-provisional::before,
.event-tag-provisional::before {
  content: "Provisional";
  color: #f48a2b;
  border-color: #f48a2b;
}

.eo-event-tag-new-location::before,
.event-tag-new-location::before {
  content: "New Location";
  color: #2e61ab;
  border-color: #2e61ab;
}

.entry-content .woocommerce:not(.woocommerce-info) {
  display: grid;
  grid-template-columns: [notice-start login-start content-start menu-start] 1fr [menu-end content-end login-end notice-end];
}
@media screen and (min-width: 55em) {
  .entry-content .woocommerce:not(.woocommerce-info) {
    grid-gap: 0.5rem;
    grid-template-columns: [notice-start login-start menu-start] 1fr [menu-end content-start] 5fr [content-end login-end notice-end];
  }
}
.entry-content .woocommerce:not(.woocommerce-info) h1, .entry-content .woocommerce:not(.woocommerce-info) h2, .entry-content .woocommerce:not(.woocommerce-info) h3, .entry-content .woocommerce:not(.woocommerce-info) h4 {
  grid-column: notice;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-MyAccount-navigation {
  grid-column: menu;
  background: #168642;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-MyAccount-navigation ul {
  text-decoration: none;
  border: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: row;
  grid-row-gap: 0.2vh;
  list-style: none;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-MyAccount-navigation li {
  color: #ffffff;
  background: #168642;
  margin: 0;
  padding: 0.6vw 1vw;
  text-align: left;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-MyAccount-navigation a {
  color: #ffffff;
  display: block;
}
.entry-content .woocommerce:not(.woocommerce-info) > p, .entry-content .woocommerce:not(.woocommerce-info) form {
  grid-column: content;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-MyAccount-content {
  grid-column: content;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-ResetPassword {
  grid-column: content;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-notices-wrapper {
  grid-column: notice;
}
.entry-content .woocommerce:not(.woocommerce-info) .woocommerce-login-form {
  grid-column: login;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/*@import "modules/infinite-scroll";*/
/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

#feature-image {
  grid-column: body;
  /*padding: 0.5em;*/
  padding: 0;
  margin: 0;
  position: relative;
  background: var(--colour-white);
}
#feature-image > .post-thumbnail {
  height: 100%;
}
#feature-image .post-thumbnail {
  position: relative;
  overflow: hidden;
  display: block;
  aspect-ratio: 10/4;
}
#feature-image .post-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.attachment-info .thumbnail .image-wrap-mobile, .attachment-info .thumbnail .image-wrap-desktop {
  display: none;
}

.media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-mobile, .media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-desktop, .media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-square {
  display: block;
  position: relative;
  aspect-ratio: 1.618/1;
  margin-bottom: 0.2em;
}
.media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-mobile img, .media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-desktop img, .media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-square img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-desktop {
  aspect-ratio: 1.618/2;
}
.media-modal.acf-expanded .media-sidebar .attachment-info .thumbnail .image-wrap-square {
  aspect-ratio: 1/1;
}

.icon {
  width: 1.2em;
  height: 1.2em;
  fill: var(--colour-white);
  margin-right: 0.2em;
  vertical-align: middle;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery-wrap {
  grid-column: gallery;
}
.event .gallery-wrap, .product .gallery-wrap {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
  grid-area: gallery;
}

body:not(.single-event) .gallery {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 1rem;
}
body:not(.single-event) .gallery .gallery-item {
  flex: 0 0 20rem;
  height: 20rem;
}
body:not(.single-event) .gallery.large .gallery-item {
  flex: 0 0 min(90%, 40rem);
  height: auto;
}

.event .gallery {
  width: 100%;
  overflow: hidden;
  height: 0;
  padding: 0 0 100% 0;
  position: relative;
  margin: 0;
}
.event .gallery-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 0;
  transition: opacity 0.2s ease-in-out;
}
.event .gallery-item.show {
  opacity: 1;
  z-index: 1;
  transition: opacity 0.2s ease-in-out;
}
.event .gallery-item.hide {
  opacity: 0;
  z-index: -1;
}
.event .gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.gallery-caption {
  display: block;
}

.gallery .image-wrap {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
}
.gallery .image-wrap img {
  position: absolute;
  top: 0;
  left: 0;
}

.gallery-item > .alt {
  position: absolute;
  left: 0;
  right: 0;
  display: none;
  margin: 0;
  padding: 0.2em;
  background-color: rgba(255, 255, 255, 0.7);
  opacity: 0;
  transition: all 0.2s ease-in-out;
}
.gallery-item:hover > .alt {
  display: block;
  opacity: 1;
  transition: all 0.6s ease-in-out;
  bottom: 0;
}

/*--------------------------------------------------------------
# Animations
--------------------------------------------------------------*/
@keyframes slideleft {
  from {
    transform: translateX(-5%);
  }
  to {
    transform: translateX(0%);
  }
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*
Shop layouts
*/
/*
Theme Name: Gay Outdoor Club

WooCommerce styles override
*/
/**
 * Imports
 */
/**
 * WooCommerce color variables
 */
/**
 * Shop tables
 */
/**
 * Shop tables
 */
table.shop_table_responsive thead {
  display: none;
}
table.shop_table_responsive tbody th {
  display: none;
}
table.shop_table_responsive tr td {
  display: block;
  text-align: right;
  clear: both;
}
table.shop_table_responsive tr td:before {
  content: attr(data-title) ": ";
  float: left;
}
table.shop_table_responsive tr td.product-remove a {
  text-align: left;
}
table.shop_table_responsive tr td.product-remove:before {
  display: none;
}
table.shop_table_responsive tr td.actions:before, table.shop_table_responsive tr td.download-actions:before {
  display: none;
}
table.shop_table_responsive tr td.download-actions .button {
  display: block;
  text-align: center;
}

.woocommerce-table thead, .woocommerce-table tfoot {
  text-align: left;
}

@media screen and (min-width: 48em) {
  table.shop_table_responsive thead {
    display: table-header-group;
  }
  table.shop_table_responsive tbody th {
    display: table-cell;
  }
  table.shop_table_responsive tr th, table.shop_table_responsive tr td {
    text-align: left;
  }
  table.shop_table_responsive tr td {
    display: table-cell;
  }
  table.shop_table_responsive tr td:before {
    display: none;
  }
}
.shop_table th {
  text-align: left;
}

.default-payment-method .payment-method-method, .default-payment-method .payment-method-expires {
  font-weight: 600;
}

/**
 * Products
 */
/**
 * Products
 */
ul.products {
  margin: 0;
  padding: 0;
}
ul.products li.product {
  list-style: none;
  position: relative;
  grid-column-end: span 6;
}
@media screen and (min-width: 55em) {
  ul.products li.product {
    grid-column-end: span 4;
  }
}
@media screen and (min-width: 68.75em) {
  ul.products li.product {
    grid-column-end: span 3;
  }
}
ul.products li.product .woocommerce-loop-product__title {
  font-size: 14px;
  font-size: calc((1 * 0.8rem) + 0.2vw);
}
ul.products li.product .woocommerce-LoopProduct-link {
  display: grid;
  background-color: #ffffff;
}
ul.products li.product .add_to_cart_button {
  position: absolute;
  top: 1vw;
  left: 1vw;
  border: 1px solid #168642;
  background: #27db6e;
  color: #ffffff;
  padding: 0.2em 1.2em;
}
ul.products li.product img {
  display: block;
}
ul.products li.product .button {
  display: block;
}

/**
 * Single product
 */
/**
 * Single Product
 */
.single-product div.product {
  display: grid;
  grid-template-columns: 5vw 1fr 5vw;
  grid-template-areas: "notice notice notice" ". gallery ." "summary summary summary" "tabs tabs tabs" "related related related";
}
@media screen and (min-width: 55em) {
  .single-product div.product {
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 1vw;
    grid-template-areas: "notice notice notice" "summary summary gallery" "tabs tabs tabs" "related related related";
  }
  .event .gallery-wrap, .product .gallery-wrap {
    -ms-grid-row: 2;
    -ms-grid-column: 5;
  }
}
.single-product div.product .woocommerce-product-gallery {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
  grid-area: gallery;
  position: relative;
}
.single-product div.product .entry-summary {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: summary;
}
.single-product div.product .woocommerce-tabs {
  -ms-grid-row: 4;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: tabs;
}
.single-product div.product .related.products {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: related;
}
.single-product div.product .variations {
  padding: 0.5em;
  border-radius: 0.2em;
  background-color: #aaf1c6;
}
.single-product div.product .variations .label {
  font-weight: 600;
}
.single-product div.product .variations .value {
  display: grid;
  grid-auto-flow: column;
  grid-gap: 1em;
  justify-content: flex-start;
  align-items: center;
}
.single-product div.product .variations .value .reset_variations {
  font-size: 0.8em;
}

.stock:empty:before {
  display: none;
}
.stock.in-stock {
  color: #2e61ab;
}
.stock.out-of-stock {
  color: #ea2226;
}

.woocommerce-variation-add-to-cart {
  margin-top: 1.5em;
}

/**
 * Checkout
 */
/**
 * Checkout
 */
@media screen and (min-width: 55em) {
  .col2-set {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 1vw;
  }
  .col2-set .form-row-first {
    grid-column: 1;
  }
  .col2-set .form-row-last {
    grid-column: 2;
  }
}
.woocommerce-checkout-review-order {
  background: #aaf1c6;
  border: 1px solid #168642;
  border-radius: 0.2em;
  padding: 1vw;
}
.woocommerce-checkout-review-order .recurring-totals th {
  padding-top: 1em;
  border-bottom: 1px solid #168642;
}
.woocommerce-checkout-review-order .order-total {
  color: #ffffff;
  background: #168642;
}

dl.variation {
  display: flex;
  flex-flow: row nowrap;
}

.payment_methods {
  list-style: none;
  margin: 0;
  padding: 0;
}
.payment_methods li {
  display: grid;
  grid-template-columns: 0.7em 1fr;
  grid-auto-flow: column;
  grid-column-gap: 1vw;
  grid-template-areas: "select title" "content content";
  align-content: flex-start;
  margin-bottom: 0.2vh;
}
.payment_methods li > label {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  font-weight: 600;
  display: grid;
  justify-content: unset;
  grid-auto-flow: column;
  align-content: flex-start;
  grid-template-columns: 1fr auto;
  width: 100%;
  height: 1.6em;
  grid-column-gap: 1vw;
  color: #ffffff;
  background: #168642;
  grid-area: title;
}
.payment_methods li > label img {
  height: 100%;
  justify-self: flex-end;
  width: auto;
  margin: 0;
  padding: 0;
  object-fit: contain;
  min-width: 2em;
}
.payment_methods li .payment_box {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: content;
}
@media screen and (min-width: 55em){
  .payment_methods li .payment_box {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
}

.woocommerce-checkout #payment input#payment_method_stripe, #add_payment_method #payment input#payment_method_stripe {
  position: unset;
  top: unset;
}
.woocommerce-checkout #payment .payment_method_stripe label[for=payment_method_stripe], #add_payment_method #payment .payment_method_stripe label[for=payment_method_stripe] {
  display: unset;
  padding-left: unset;
}

.wc-saved-payment-methods {
  list-style: none;
}
.wc-saved-payment-methods li > label {
  background: none;
  color: #21759b;
}

.woocommerce-cart-form, .cart-collaterals {
  grid-column: content-start;
  grid-column-end: content-end;
}

.wc-stripe-elements-field {
  border: 1px solid #ddd;
  margin: 5px 0;
  padding: 5px;
  background-color: #fff;
  outline: 0;
}

#add_payment_method .woocommerce-PaymentMethod label {
  margin-left: 10px;
}
#add_payment_method li {
  clear: right;
}
#add_payment_method #wc-stripe_sepa-form {
  padding: 10px;
}

form#order_review #payment_method_stripe_sepa {
  margin: 25px 0 25px 25px;
}
form#order_review .payment_methods label {
  margin-left: 10px;
}
form#order_review li {
  clear: right;
}
form#order_review #wc-stripe_sepa-form {
  padding: 10px;
}

.wc_payment_method .payment_box label {
  display: inline;
}

.woocommerce-checkout #payment .payment_method_stripe, #add_payment_method #payment .payment_method_stripe {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_bancontact, #add_payment_method #payment .payment_method_stripe_bancontact {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_alipay, #add_payment_method #payment .payment_method_stripe_alipay {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_eps, #add_payment_method #payment .payment_method_stripe_eps {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_giropay, #add_payment_method #payment .payment_method_stripe_giropay {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_ideal, #add_payment_method #payment .payment_method_stripe_ideal {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_multibanco, #add_payment_method #payment .payment_method_stripe_multibanco {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_p24, #add_payment_method #payment .payment_method_stripe_p24 {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_sepa, #add_payment_method #payment .payment_method_stripe_sepa {
  position: relative;
}
.woocommerce-checkout #payment .payment_method_stripe_sofort, #add_payment_method #payment .payment_method_stripe_sofort {
  position: relative;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-icon, #add_payment_method #payment ul.payment_methods li img.stripe-icon {
  float: right;
  max-width: 40px;
  padding-left: 3px;
  margin: 0;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-bancontact-icon, #add_payment_method #payment ul.payment_methods li img.stripe-bancontact-icon {
  max-height: 65px;
  max-width: 45px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-ideal-icon, #add_payment_method #payment ul.payment_methods li img.stripe-ideal-icon {
  max-height: 35px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-p24-icon, #add_payment_method #payment ul.payment_methods li img.stripe-p24-icon {
  max-width: 65px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-alipay-icon, #add_payment_method #payment ul.payment_methods li img.stripe-alipay-icon {
  max-width: 50px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-sofort-icon, #add_payment_method #payment ul.payment_methods li img.stripe-sofort-icon {
  max-width: 55px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-sepa-icon, #add_payment_method #payment ul.payment_methods li img.stripe-sepa-icon {
  max-width: 50px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-multibanco-icon, #add_payment_method #payment ul.payment_methods li img.stripe-multibanco-icon {
  max-height: 30px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-eps-icon, #add_payment_method #payment ul.payment_methods li img.stripe-eps-icon {
  max-height: 30px;
}
.woocommerce-checkout #payment ul.payment_methods li img.stripe-giropay-icon, #add_payment_method #payment ul.payment_methods li img.stripe-giropay-icon {
  max-width: 50px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-credit-card-brand, #add_payment_method #payment ul.payment_methods li .stripe-credit-card-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/credit-card.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-visa-brand, #add_payment_method #payment ul.payment_methods li .stripe-visa-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/visa.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-amex-brand, #add_payment_method #payment ul.payment_methods li .stripe-amex-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/amex.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-diners-brand, #add_payment_method #payment ul.payment_methods li .stripe-diners-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/diners.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-discover-brand, #add_payment_method #payment ul.payment_methods li .stripe-discover-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/discover.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-jcb-brand, #add_payment_method #payment ul.payment_methods li .stripe-jcb-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/jcb.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-maestro-brand, #add_payment_method #payment ul.payment_methods li .stripe-maestro-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/maestro.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods li .stripe-mastercard-brand, #add_payment_method #payment ul.payment_methods li .stripe-mastercard-brand {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  right: 10px;
  background: no-repeat url("img/mastercard.svg");
  display: block;
  width: 30px;
  height: 24px;
}
.woocommerce-checkout #payment ul.payment_methods .stripe-card-group, #add_payment_method #payment ul.payment_methods .stripe-card-group {
  position: relative;
}

#add_payment_method #payment .payment_method_stripe label[for=payment_method_stripe] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_bancontact label[for=payment_method_stripe_bancontact] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_alipay label[for=payment_method_stripe_alipay] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_eps label[for=payment_method_stripe_eps] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_giropay label[for=payment_method_stripe_giropay] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_ideal label[for=payment_method_stripe_ideal] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_multibanco label[for=payment_method_stripe_multibanco] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_p24 label[for=payment_method_stripe_p24] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_sepa label[for=payment_method_stripe_sepa] {
  display: block;
  padding-left: 20px;
}
#add_payment_method #payment .payment_method_stripe_sofort label[for=payment_method_stripe_sofort] {
  display: block;
  padding-left: 32px;
}

/**
 * General WooCommerce components
 */
/**
 * Header cart
 */
.site-header-cart {
  position: relative;
  margin: 0;
  padding: 0;
  content: "";
  display: table;
  table-layout: fixed;
}
.site-header-cart .cart-contents {
  text-decoration: none;
}
.site-header-cart .widget_shopping_cart {
  display: none;
}
.site-header-cart .product_list_widget {
  margin: 0;
  padding: 0;
}

/**
 * Star rating
 */
.star-rating {
  overflow: hidden;
  position: relative;
  height: 1.618em;
  line-height: 1.618;
  font-size: 14px;
  font-size: calc((1 * 0.8rem) + 0.2vw);
  width: 5.3em;
  font-family: "star";
  font-weight: 400;
}
.star-rating:before {
  content: "SSSSS";
  opacity: 0.25;
  float: left;
  top: 0;
  left: 0;
  position: absolute;
}
.star-rating span {
  overflow: hidden;
  float: left;
  top: 0;
  left: 0;
  position: absolute;
  padding-top: 1.5em;
}
.star-rating span:before {
  content: "SSSSS";
  top: 0;
  position: absolute;
  left: 0;
  color: royalblue;
}

p.stars a {
  position: relative;
  height: 1em;
  width: 1em;
  text-indent: -999em;
  display: inline-block;
  text-decoration: none;
  margin-right: 1px;
  font-weight: 400;
}
p.stars a:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  line-height: 1;
  font-family: "star";
  content: "S";
  color: #404040;
  text-indent: 0;
  opacity: 0.25;
}
p.stars a:hover ~ a:before {
  content: "S";
  color: #404040;
  opacity: 0.25;
}
p.stars:hover a:before {
  content: "S";
  color: royalblue;
  opacity: 1;
}
p.stars.selected a.active:before {
  content: "S";
  color: royalblue;
  opacity: 1;
}
p.stars.selected a.active ~ a:before {
  content: "S";
  color: #404040;
  opacity: 0.25;
}
p.stars.selected a:not(.active):before {
  content: "S";
  color: royalblue;
  opacity: 1;
}

/**
 * Tabs
 */
.woocommerce-tabs ul.tabs {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, auto));
  grid-column-gap: 0.2vw;
}
.woocommerce-tabs ul.tabs li {
  display: block;
  margin: 0;
  position: relative;
  background: #27db6e;
  border: 1px solid #168642;
  border-radius: 0.2vw 0.2vw 0 0;
  border-bottom: none;
  text-align: center;
}
.woocommerce-tabs ul.tabs li.active {
  background: #168642;
}
.woocommerce-tabs ul.tabs li a {
  padding: 1em 0;
  display: block;
  color: #e6e6e6;
}
.woocommerce-tabs ul.tabs li a:hover {
  color: #ffffff;
}
.woocommerce-tabs .panel {
  border: 1px solid #168642;
  margin: 0;
  padding: 0.5vw;
}
@media screen and (min-width: 55em) {
  .woocommerce-tabs .panel {
    padding: 1vw;
  }
}
.woocommerce-tabs .panel h2:first-of-type {
  margin-bottom: 1em;
}

/**
 * Password strength meter
 */
.woocommerce-password-strength {
  text-align: right;
}
.woocommerce-password-strength.strong {
  color: #2e61ab;
}
.woocommerce-password-strength.short {
  color: #ea2226;
}
.woocommerce-password-strength.bad {
  color: #2e61ab;
}
.woocommerce-password-strength.good {
  color: #2e61ab;
}

/**
 * Forms
 */
.form-row.woocommerce-validated input.input-text {
  box-shadow: inset 2px 0 0 #2e61ab;
}
.form-row.woocommerce-invalid input.input-text {
  box-shadow: inset 2px 0 0 #ea2226;
}

.required {
  color: red;
}

/**
 * Notices
 */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.eo-booking-error,
.woocommerce-noreviews,
p.no-comments {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: notice;
  background-color: #2e61ab;
  color: #ffffff;
  margin: 1vh 0;
  padding: 1vh 2vw;
  clear: both;
}
@media screen and (min-width: 55em){
  .single-product div.product .woocommerce-product-gallery {
    -ms-grid-row: 2;
    -ms-grid-column: 5;
  }
  .single-product div.product .entry-summary {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .single-product div.product .woocommerce-tabs {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
  }
  .single-product div.product .related.products {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
  }
  .woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.eo-booking-error,
.woocommerce-noreviews,
p.no-comments {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
  }
}

.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
  color: #ffffff;
  background-color: #168642;
}
.woocommerce-info a,
.woocommerce-noreviews a,
p.no-comments a {
  color: #e6e6e6;
}
.woocommerce-info a:hover,
.woocommerce-noreviews a:hover,
p.no-comments a:hover {
  color: #ffffff;
}

.eo-booking-error,
.woocommerce-error {
  background-color: #ea2226;
  list-style: none;
  margin: 0;
  padding: 0.2vw;
  color: #ffffff;
}

.woocommerce-form-login-toggle {
  grid-column: notice;
}

.woocommerce-order {
  grid-column: content;
}
.woocommerce-order .woocommerce-thankyou-order-details {
  list-style: none;
  margin: 1vw;
  padding: 0.5vw;
  background: #aaf1c6;
  border: 1px solid #168642;
  border-radius: 0.2em;
}

.woocommerce-order-details {
  background-color: #aaf1c6;
  padding: 1vw;
}

.demo_store {
  position: fixed;
  left: 0;
  bottom: 0;
  right: 0;
  margin: 0;
  padding: 1em;
  background-color: #2e61ab;
  z-index: 9999;
}

@media screen and (min-width: 48em) {
  /**
   * Header cart
   */
  .site-header-cart .widget_shopping_cart {
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 999999;
    left: -999em;
    display: block;
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  }
  .site-header-cart:hover .widget_shopping_cart, .site-header-cart.focus .widget_shopping_cart {
    left: 0;
    display: block;
  }
}
.woocommerce-form-login {
  display: grid;
  padding: 0.5rem;
  /*background: $color__primary_vlight;*/
  grid-column: login !important;
  grid-gap: 0.5rem;
  grid-template-columns: [full-start left-start right-start] 1fr [left-end right-end full-end];
}
@media screen and (min-width: 55em) {
  .woocommerce-form-login {
    grid-template-columns: [full-start left-start] 1fr [left-end right-start] 1fr [right-end full-end];
  }
}
.woocommerce-form-login input {
  font-size: 1.5rem;
}
.woocommerce-form-login .form-row {
  grid-template-columns: unset;
  margin: 0;
}
.woocommerce-form-login .form-row:nth-of-type(n) {
  grid-column: left;
}
.woocommerce-form-login .form-row:nth-of-type(2n) {
  grid-column: right;
}
.woocommerce-form-login p:not(.form-row) {
  grid-column: full;
}
.woocommerce-form-login label {
  text-align: left;
}

.woocommerce-terms-and-conditions {
  margin: 1vw;
  background-color: #e6e6e6;
  border-radius: 0.2em;
  border: 1px solid #168642;
  font-size: 11.2px;
  font-size: calc((0.8 * 0.8rem) + 0.2vw);
  padding: 1vw;
}
.woocommerce-terms-and-conditions h1, .woocommerce-terms-and-conditions h2, .woocommerce-terms-and-conditions h3 {
  color: #168642;
  font-size: 11.2px;
  font-size: calc((0.8 * 0.8rem) + 0.2vw);
  margin: 0 0 0.2em 0;
}

.form-row {
  display: grid;
  align-content: flex-end;
}
@media screen and (min-width: 55em) {
  .form-row {
    grid-template-columns: minmax(10vw, auto) 1fr;
  }
}
@media screen and (min-width: 55em) {
  .form-row .woocommerce-input-wrapper {
    grid-column: 2;
  }
}
.form-row .woocommerce-input-wrapper > input, .form-row .woocommerce-input-wrapper > textarea, .form-row .woocommerce-input-wrapper > select {
  width: 100%;
}
@media screen and (min-width: 55em) {
  .form-row.place-order {
    grid-template-columns: 1fr minmax(20vw, auto);
  }
}
.form-row.place-order button {
  font-size: 16.8px;
  font-size: calc((1.2 * 0.8rem) + 0.2vw);
  font-weight: 600;
  cursor: pointer;
  align-self: flex-end;
  justify-self: flex-end;
}

.onsale {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: #ea2226;
  padding: 0.5rem;
  border-radius: 0.25rem;
  color: #fff;
  font-weight: bold;
  transform: rotate(10deg);
}

/**
 * WooCommerce widgets
 */
/**
 * WooCommerce Price Filter
 */
.widget_price_filter .price_slider {
  margin-bottom: 1.5em;
}
.widget_price_filter .price_slider_amount {
  text-align: right;
  line-height: 2.4em;
}
.widget_price_filter .price_slider_amount .button {
  float: left;
}
.widget_price_filter .ui-slider {
  position: relative;
  text-align: left;
}
.widget_price_filter .ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1em;
  height: 1em;
  cursor: ew-resize;
  outline: none;
  background: royalblue;
  box-sizing: border-box;
  margin-top: -0.25em;
  opacity: 1;
}
.widget_price_filter .ui-slider .ui-slider-handle:last-child {
  margin-left: -1em;
}
.widget_price_filter .ui-slider .ui-slider-handle:hover, .widget_price_filter .ui-slider .ui-slider-handle.ui-state-active {
  box-shadow: 0 0 0 0.25em rgba(0, 0, 0, 0.1);
}
.widget_price_filter .ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  display: block;
  border: 0;
  background: royalblue;
}
.widget_price_filter .price_slider_wrapper .ui-widget-content {
  background: rgba(0, 0, 0, 0.1);
}
.widget_price_filter .ui-slider-horizontal {
  height: 0.5em;
}
.widget_price_filter .ui-slider-horizontal .ui-slider-range {
  height: 100%;
}

/**
  Dialog
*/
.ui-dialog {
  position: relative;
  padding: 0.2em;
  width: 300px;
  background: #ffffff;
  box-shadow: 0.2em 0.2em #e6e6e6;
  border-radius: 0.2em;
  border: 1px solid #168642;
}
.ui-dialog .ui-dialog-titlebar {
  background: #2e61ab;
  color: #ffffff;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "title close";
}
.ui-dialog .ui-dialog-title {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: title;
  margin: 0.1em 0 0.2em;
}
@media screen and (min-width: 46.25em){
  .payment_methods li > label {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .ui-dialog .ui-dialog-title {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
.ui-dialog .ui-dialog-titlebar-close {
  display: none;
}

.ui-dialog-content {
  border: 0;
  padding: 0.5em 1em;
  background: none;
  overflow: auto;
  zoom: 1;
}

.ui-dialog-buttonpane {
  text-align: left;
  border-width: 1px 0 0 0;
  background-image: none;
  margin: 0.5em 0 0 0;
  padding: 0.3em 1em 0.5em 0.4em;
}
.ui-dialog-buttonpane button {
  float: right;
  margin: 0.5em 0.4em 0.5em 0;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  line-height: 1.4em;
  width: auto;
  overflow: visible;
}

.ui-resizable-se {
  width: 14px;
  height: 14px;
  right: 3px;
  bottom: 3px;
}

.ui-draggable .ui-dialog-titlebar {
  cursor: move;
}

.ui-widget-overlay {
  background: rgba(255, 255, 255, 0.8);
}

.acf-media-modal .media-modal-content .media-frame .media-toolbar-secondary select.attachment-filters {
  margin: 32px 5% auto auto !important;
}

/**
Print styling - load last
 */
@media print {
  #wpadminbar {
    display: none;
  }
  body {
    background: none;
  }
  .content-area {
    display: block;
  }
  p {
    page-break-inside: avoid;
    break-inside: avoid;
    orphans: 3;
    widows: 3;
  }
  h1, h2, h3 {
    page-break-after: avoid;
    break-after: avoid;
  }
  #masthead {
    position: static;
  }
  .menu-toggle {
    display: none;
  }
  #site-navigation {
    display: none;
  }
  #breadcrumbs {
    display: none;
  }
  .page #feature-image {
    display: none;
  }
  #secondary {
    display: none;
  }
  a:any-link {
    color: var(--colour-black);
    text-decoration: underline;
  }
  a::after {
    content: " (" attr(href) ") ";
    font-size: 90%;
    color: #333333;
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
  }
  header a::after, footer a::after {
    content: "";
  }
  .entry-footer {
    display: none;
  }
  .site-footer {
    background: none;
    color: var(--colour-black);
  }
  .contact-form {
    display: none;
  }
  .comment-form {
    display: none;
  }
  .entry-meta {
    display: none;
  }
  .eo-event-venue-map {
    width: 50vw;
    aspect-ratio: 1/1;
    justify-self: center;
  }
  #page .button {
    display: none;
  }
  .single-event .gallery {
    display: flex;
    flex-flow: row wrap;
    height: auto;
    justify-content: center;
    grid-gap: 1em;
    padding-bottom: 0;
    margin-bottom: 1em;
  }
  .single-event .gallery-item {
    position: relative;
    transition: none;
    width: 15vw;
    aspect-ratio: 1/1;
    opacity: 1;
    list-style: none;
  }
}