@charset "UTF-8";
/*
Theme Name: Cotswold Electric Bike Tours - Simeon Rowsell
Theme URI: http://www.simeonrowsell.co.uk
Description: A responsive theme based on the Bootstrap framework by freelance web designer and developer Simeon Rowsell.
Version: 0.1
Author: Simeon Rowsell
Author URI: http://www.simeonrowsell.co.uk
Tags: black, white, one-column, two-columns, flexible-width, custom-background, custom-colors, custom-menu, full-width-template, theme-options
License: GNU General Public License v2.0 & Apache License 2.0
License URI: http://www.gnu.org/licenses/gpl-2.0.html http://www.apache.org/licenses/LICENSE-2.0
*/
/*pushes content down to allow for 30px high WP admin bar when logged in. Uses body_class() PHP in HTML  */
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: currentColor;
  /* 2 */
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
*/
html {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  tab-size: 4;
  /* 3 */
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  /* 4 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}

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

/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: theme("fontFamily.mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", 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;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

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

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

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}

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

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-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.
*/
::-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 */
}

/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: var(--grey-400);
  /* 2 */
}

/*
Set the default cursor for buttons.
*/
button,
[role=button] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  vertical-align: middle;
  margin: 0 auto;
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}

:root {
  --grey-50: #fafafa;
  --grey-100: #f5f5f5;
  --grey-200: #e5e5e5;
  --grey-300: #d4d4d4;
  --grey-400: #a3a3a3;
  --grey-500: #737373;
  --grey-600: #525252;
  --grey-700: #404040;
  --grey-800: #262626;
  --grey-900: #171717;
  --text-primary: var(--grey-900);
  --text-secondary: var(--grey-800);
  --text-body: var(--grey-600);
  --easing: cubic-bezier(0.76, 0, 0.24, 1);
  --section-vertical-space: 4rem;
  --tec-color-accent-primary: #70c1b3;
  --tec-color-background-month-grid: white;
  --tec-color-background-messages: #ededed;
}

.prose {
  --prose-body: var(--base-700);
  --prose-headings: var(--base-900);
  --prose-lead: var(--base-600);
  --prose-links: var(--base-900);
  --prose-bold: var(--base-900);
  --prose-counters: var(--base-500);
  --prose-bullets: var(--base-300);
  --prose-hr: var(--base-200);
  --prose-quotes: var(--base-900);
  --prose-quote-borders: var(--base-200);
  --prose-captions: var(--base-500);
  --prose-code: var(--base-900);
  --prose-pre-code: var(--base-200);
  --prose-pre-bg: var(--base-800);
  --prose-th-borders: var(--base-300);
  --prose-td-borders: var(--base-200);
  --prose-invert-body: var(--base-200);
  --prose-invert-headings: var(--white);
  --prose-invert-lead: var(--base-400);
  --prose-invert-links: var(--white);
  --prose-invert-bold: var(--white);
  --prose-invert-counters: var(--base-400);
  --prose-invert-bullets: var(--base-600);
  --prose-invert-hr: var(--base-700);
  --prose-invert-quotes: var(--base-200);
  --prose-invert-quote-borders: var(--base-700);
  --prose-invert-captions: var(--base-400);
  --prose-invert-code: var(--white);
  --prose-invert-pre-code: var(--base-300);
  --prose-invert-pre-bg: rgb(0 0 0 / 50%);
  --prose-invert-th-borders: var(--base-600);
  --prose-invert-td-borders: var(--base-700);
  color: var(--text-body);
  line-height: 1.7;
}
.prose img {
  max-width: 100%;
  height: auto;
}
.prose :where([class~="lead"]):not(:where([class~="not-prose"] *)) {
  color: var(--prose-lead);
  font-size: 1.25em;
  line-height: 1.6;
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}
.prose :where(a):not(:where([class~="not-prose"] *, [class~="link"] *)) {
  color: var(--prose-links);
  text-decoration: var(--prose-links-text-decoration, underline);
  font-weight: var(--prose-links-font-weight, 500);
}
.prose :where(strong):not(:where([class~="not-prose"] *)) {
  color: var(--prose-bold);
  font-weight: 600;
}
.prose :where(a strong):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(blockquote strong):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(thead th strong):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(ol):not(:where([class~="not-prose"] *)) {
  list-style-type: decimal;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-left: 1.625em;
}
.prose :where(ol[type="A"]):not(:where([class~="not-prose"] *)) {
  list-style-type: upper-alpha;
}
.prose :where(ol[type="a"]):not(:where([class~="not-prose"] *)) {
  list-style-type: lower-alpha;
}
.prose :where(ol[type="A" s]):not(:where([class~="not-prose"] *)) {
  list-style-type: upper-alpha;
}
.prose :where(ol[type="a" s]):not(:where([class~="not-prose"] *)) {
  list-style-type: lower-alpha;
}
.prose :where(ol[type="I"]):not(:where([class~="not-prose"] *)) {
  list-style-type: upper-roman;
}
.prose :where(ol[type="i"]):not(:where([class~="not-prose"] *)) {
  list-style-type: lower-roman;
}
.prose :where(ol[type="I" s]):not(:where([class~="not-prose"] *)) {
  list-style-type: upper-roman;
}
.prose :where(ol[type="i" s]):not(:where([class~="not-prose"] *)) {
  list-style-type: lower-roman;
}
.prose :where(ol[type="1"]):not(:where([class~="not-prose"] *)) {
  list-style-type: decimal;
}
.prose :where(ul):not(:where([class~="not-prose"] *)) {
  list-style-type: disc;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-left: 1.625em;
}
.prose :where(ol > li):not(:where([class~="not-prose"] *))::marker {
  font-weight: 400;
  color: var(--prose-counters);
}
.prose :where(ul > li):not(:where([class~="not-prose"] *))::marker {
  color: var(--prose-bullets);
}
.prose :where(hr):not(:where([class~="not-prose"] *)) {
  border-color: var(--prose-hr);
  border-top-width: 1px;
  margin-top: 3em;
  margin-bottom: 3em;
}
.prose :where(blockquote):not(:where([class~="not-prose"] *)) {
  margin: 0;
  border-width: 0;
  border-style: solid;
  font-weight: 500;
  font-style: italic;
  color: var(--prose-quotes);
  border-left-width: 0.25rem;
  border-left-color: var(--prose-quote-borders);
  quotes: "“" "”" "‘" "’";
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  padding: 0.5em 0 0.5em 1em;
}
.prose :where(blockquote):not(:where([class~="not-prose"] *))::before {
  content: open-quote;
}
.prose :where(blockquote):not(:where([class~="not-prose"] *))::after {
  content: close-quote;
}
.prose :where(blockquote p):not(:where([class~="not-prose"] *)) {
  display: inline;
}
.prose :where(blockquote):not(:where([class~="not-prose"] *)) {
  font-weight: bold;
  font-style: normal;
}
.prose :where(h1):not(:where([class~="not-prose"] *)) {
  color: var(--prose-headings);
  font-weight: 800;
  font-size: 2.25em;
  margin-top: 0;
  margin-bottom: 0.8888889em;
  line-height: 1.1111111;
}
.prose :where(h1 strong):not(:where([class~="not-prose"] *)) {
  font-weight: 900;
  color: inherit;
}
.prose :where(h2):not(:where([class~="not-prose"] *)) {
  color: var(--prose-headings);
  font-weight: 700;
  font-size: 1.5em;
  margin-top: 1em;
  margin-bottom: 1em;
  line-height: 1.3333333;
}
.prose :where(h2 strong):not(:where([class~="not-prose"] *)) {
  font-weight: 800;
  color: inherit;
}
.prose :where(h3):not(:where([class~="not-prose"] *)) {
  color: var(--prose-headings);
  font-weight: 600;
  font-size: 1.25em;
  margin-top: 1.6em;
  margin-bottom: 0.6em;
  line-height: 1.6;
}
.prose :where(h3 strong):not(:where([class~="not-prose"] *)) {
  font-weight: 700;
  color: inherit;
}
.prose :where(h4):not(:where([class~="not-prose"] *)) {
  color: var(--prose-headings);
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  line-height: 1.5;
}
.prose :where(h4 strong):not(:where([class~="not-prose"] *)) {
  font-weight: 700;
  color: inherit;
}
.prose :where(img):not(:where([class~="not-prose"] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.prose :where(figure > *):not(:where([class~="not-prose"] *)) {
  margin-top: 0;
  margin-bottom: 0;
}
.prose :where(figcaption):not(:where([class~="not-prose"] *)) {
  color: var(--prose-captions);
  font-size: 0.875em;
  line-height: 1.4285714;
  margin-top: 0.8571429em;
}
.prose :where(code):not(:where([class~="not-prose"] *)) {
  color: var(--prose-code);
  font-weight: 600;
  font-size: 0.875em;
}
.prose :where(code):not(:where([class~="not-prose"] *))::before {
  content: "`";
}
.prose :where(code):not(:where([class~="not-prose"] *))::after {
  content: "`";
}
.prose :where(a code):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(h1 code):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(h2 code):not(:where([class~="not-prose"] *)) {
  color: inherit;
  font-size: 0.875em;
}
.prose :where(h3 code):not(:where([class~="not-prose"] *)) {
  color: inherit;
  font-size: 0.9em;
}
.prose :where(h4 code):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(blockquote code):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(thead th code):not(:where([class~="not-prose"] *)) {
  color: inherit;
}
.prose :where(pre):not(:where([class~="not-prose"] *)) {
  color: var(--prose-pre-code);
  background-color: var(--prose-pre-bg);
  overflow-x: auto;
  font-weight: 400;
  font-size: 0.875em;
  line-height: 1.7142857;
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
  border-radius: 0.375rem;
  padding-top: 0.8571429em;
  padding-right: 1.1428571em;
  padding-bottom: 0.8571429em;
  padding-left: 1.1428571em;
}
.prose :where(pre code):not(:where([class~="not-prose"] *)) {
  background-color: transparent;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-weight: inherit;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
}
.prose :where(pre code):not(:where([class~="not-prose"] *))::before {
  content: none;
}
.prose :where(pre code):not(:where([class~="not-prose"] *))::after {
  content: none;
}
.prose :where(table):not(:where([class~="not-prose"] *)) {
  border-collapse: collapse;
  border-width: 0;
  border-color: inherit;
  width: 100%;
  table-layout: auto;
  text-align: left;
  margin-top: 2em;
  margin-bottom: 2em;
  font-size: 0.875em;
  line-height: 1.7142857;
}
.prose :where(thead):not(:where([class~="not-prose"] *)) {
  border-width: 0;
  border-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: var(--prose-th-borders);
}
.prose :where(thead th):not(:where([class~="not-prose"] *)) {
  color: var(--prose-headings);
  font-weight: 600;
  vertical-align: bottom;
  padding-right: 0.5714286em;
  padding-bottom: 0.5714286em;
  padding-left: 0.5714286em;
}
.prose :where(tbody tr):not(:where([class~="not-prose"] *)) {
  border-width: 0;
  border-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: var(--prose-td-borders);
}
.prose :where(tbody tr:last-child):not(:where([class~="not-prose"] *)) {
  border-bottom-width: 0;
}
.prose :where(tbody td):not(:where([class~="not-prose"] *)) {
  vertical-align: baseline;
}
.prose :where(tfoot):not(:where([class~="not-prose"] *)) {
  border-top-width: 1px;
  border-top-color: var(--prose-th-borders);
}
.prose :where(tfoot td):not(:where([class~="not-prose"] *)) {
  vertical-align: top;
}
.prose :where(p):not(:where([class~="not-prose"] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}
.prose :where(video):not(:where([class~="not-prose"] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.prose :where(figure):not(:where([class~="not-prose"] *)) {
  margin-left: 0;
  margin-right: 0;
  margin-top: 2em;
  margin-bottom: 2em;
}
.prose :where(li):not(:where([class~="not-prose"] *)) {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
.prose :where(ol > li):not(:where([class~="not-prose"] *)) {
  padding-left: 0.375em;
}
.prose :where(ul > li):not(:where([class~="not-prose"] *)) {
  padding-left: 0.375em;
}
.prose :where(ul > li p):not(:where([class~="not-prose"] *)) {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}
.prose :where(ul > li > *:first-child):not(:where([class~="not-prose"] *)) {
  margin-top: 1.25em;
}
.prose :where(ul > li > *:last-child):not(:where([class~="not-prose"] *)) {
  margin-bottom: 1.25em;
}
.prose :where(ol > li > *:first-child):not(:where([class~="not-prose"] *)) {
  margin-top: 1.25em;
}
.prose :where(ol > li > *:last-child):not(:where([class~="not-prose"] *)) {
  margin-bottom: 1.25em;
}
.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"] *)) {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}
.prose :where(hr + *):not(:where([class~="not-prose"] *)) {
  margin-top: 0;
}
.prose :where(h2 + *):not(:where([class~="not-prose"] *)) {
  margin-top: 0;
}
.prose :where(h3 + *):not(:where([class~="not-prose"] *)) {
  margin-top: 0;
}
.prose :where(h4 + *):not(:where([class~="not-prose"] *)) {
  margin-top: 0;
}
.prose :where(thead th:first-child):not(:where([class~="not-prose"] *)) {
  padding-left: 0;
}
.prose :where(thead th:last-child):not(:where([class~="not-prose"] *)) {
  padding-right: 0;
}
.prose :where(tbody td, tfoot td):not(:where([class~="not-prose"] *)) {
  padding-top: 0.5714286em;
  padding-right: 0.5714286em;
  padding-bottom: 0.5714286em;
  padding-left: 0.5714286em;
}
.prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"] *)) {
  padding-left: 0;
}
.prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"] *)) {
  padding-right: 0;
}
.prose :where(*:first-child):not(:where([class~="not-prose"] *)) {
  margin-top: 0;
}
.prose :where(*:last-child):not(:where([class~="not-prose"] *)) {
  margin-bottom: 0;
}

@media (max-width: 1024px) {
  #wpadminbar {
    display: none !important;
  }

  html[lang=en-GB] {
    margin-top: 0 !important;
  }
}
html,
body {
  height: 100%;
  width: 100%;
  font-family: "Lato", sans-serif;
  font-size: 1rem;
}

h1 {
  font-family: "Amatic SC", cursive;
  text-decoration: bold;
}

h2 {
  font-family: "Amatic SC", cursive;
  text-decoration: bold;
}

p {
  font-family: "Lato", sans-serif;
}

ul {
  list-style: none;
}

section {
  padding: 3rem 0;
}

a {
  color: #464646;
  transition: all 0.3s var(--easing);
}

a:hover {
  color: #b1b1b1;
  text-decoration: none;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
  /* ie 6/7 */
}

.no-padding {
  padding: 0;
}

.flex-on {
  display: block;
}
@media screen and (min-width: 992px) {
  .flex-on {
    display: flex;
  }
}

/* Main site containers */
#site-wrapper {
  height: 100%;
  width: 100%;
}
@media screen and (min-width: 992px) {
  #site-wrapper {
    position: relative;
  }
}

#site-canvas {
  height: 100%;
  width: 100%;
  position: relative;
  z-index: 1;
}

#site-canvas.mobile-nav-open {
  transform: translateX(-250px);
}

.content-404 {
  text-align: center;
  margin: 0 auto;
}

.header-slant {
  margin-top: 4.5rem;
  padding: 5rem 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .header-slant {
    margin-top: 0;
    padding: 8rem 0;
  }
}

[data-ribbon] {
  --d: 6px;
  /* folded part */
  --f: 16px;
  /* ribbon font-size */
  width: 100%;
  position: relative;
  display: inline-block;
  background: lightblue;
}
[data-ribbon]::before {
  content: attr(data-ribbon);
  position: absolute;
  font-size: var(--f);
  top: 0;
  right: 0;
  transform: translate(29.29%, -100%) rotate(45deg);
  color: #fff;
  text-align: center;
  border: 1px solid transparent;
  border-bottom: 0;
  font-weight: bold;
  font-family: "Amatic SC", cursive;
  transform-origin: bottom left;
  padding: 5px 35px calc(var(--d) + 5px);
  background: linear-gradient(rgba(0, 0, 0, 0.5) 0 0) bottom/100% var(--d) no-repeat var(--c, #f1bb6c);
  background-clip: padding-box;
  clip-path: polygon(0 0, 100% 0, 100% 100%, calc(100% - var(--d)) calc(100% - var(--d)), var(--d) calc(100% - var(--d)), 0 100%);
  -webkit-mask: linear-gradient(135deg, transparent calc(50% - var(--d) * 0.707), #fff 0) bottom left, linear-gradient(-135deg, transparent calc(50% - var(--d) * 0.707), #fff 0) bottom right;
  -webkit-mask-size: 300vmax 300vmax;
  -webkit-mask-composite: destination-in;
  mask-composite: intersect;
  z-index: 1;
  padding: 0 55px;
}

/* Nav */
.navbar-wrapper,
.navbar-wrapper-on-scroll {
  position: absolute;
  display: none;
  padding: 20px 0px;
  z-index: 9998;
  top: 0;
  left: 0;
  right: 0;
}
body.admin-bar .navbar-wrapper,
body.admin-bar .navbar-wrapper-on-scroll {
  top: 32px;
}
@media screen and (min-width: 992px) {
  .navbar-wrapper,
.navbar-wrapper-on-scroll {
    display: block;
  }
}

.navbar-wrapper .logo,
.navbar-wrapper-on-scroll .logo {
  float: left;
}

.navbar-wrapper .logo img {
  height: 45px;
}
@media screen and (min-width: 1200px) {
  .navbar-wrapper .logo img {
    height: 60px;
    margin-top: 0px;
  }
}

nav.navbar {
  float: right;
  margin-top: 1rem;
  margin-bottom: 0px;
}

ul#menu-header-nav-1 {
  padding-left: 0;
}

.header-nav li,
.header-nav-on-scroll li {
  float: left;
  padding: 0 0.5rem;
  border-right: 1px solid rgba(255, 255, 255, 0.5);
}
@media screen and (min-width: 1200px) {
  .header-nav li,
.header-nav-on-scroll li {
    padding: 0 1rem;
  }
}

.header-nav li:last-of-type,
.header-nav-on-scroll li:last-of-type {
  border: none;
}

.header-nav a {
  color: white;
  text-decoration: none;
  font-size: 1rem;
  line-height: 1.25rem;
  border-bottom: 0px solid white;
  transition: border-bottom 0.1s;
}

.header-nav a:hover {
  border-bottom: 4px solid white;
  transition: border-bottom 0.1s;
}

/* Nav on scroll */
.nav-on-scroll {
  display: none;
  position: fixed;
  width: 100%;
  top: -80px;
  right: 0;
  z-index: 5000;
  transition: all 0.2s ease-out;
}
@media screen and (min-width: 992px) {
  .nav-on-scroll {
    display: block;
  }
}

.nav-on-scroll-on {
  display: none;
  opacity: 1;
  top: 0px;
  z-index: 200;
}
@media screen and (min-width: 992px) {
  .nav-on-scroll-on {
    display: block;
  }
}

nav.navbar-on-scroll {
  min-height: 0px;
  margin-bottom: 0px;
  margin-top: 0;
  float: right;
}

.navbar-wrapper-on-scroll {
  position: absolute;
  height: 80px;
  background-color: #70c1b3;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo-on-scroll img {
  width: 60px;
  margin: 5px 1em;
  z-index: 50000;
  transition: all 0.2s ease;
}

.header-nav-on-scroll a {
  color: white;
  text-decoration: none;
  font-size: 1rem;
  line-height: 1.25rem;
  border-bottom: 0px solid white;
  transition: border-bottom 0.1s;
}

.header-nav-on-scroll a:hover {
  border-bottom: 4px solid white;
  transition: border-bottom 0.1s;
}

/* responsive nav */
.responsive-nav {
  position: fixed;
  top: 0;
  padding: 1rem;
  width: 100%;
  background-color: white;
  z-index: 5000;
  transition: 0.3s ease all;
}
@media screen and (min-width: 992px) {
  .responsive-nav {
    display: none;
  }
}

.responsive-nav .responsive-logo {
  float: left;
}

.responsive-nav .responsive-logo img {
  height: 40px;
}

.hamburger-toggle {
  width: 45px;
  height: 30px;
  float: right;
  right: 0px;
  z-index: 50000;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
}

.hamburger-toggle span {
  display: block;
  position: absolute;
  height: 5px;
  width: 100%;
  background: #70c1b3;
  opacity: 1;
  left: 0;
  border-radius: 5px;
  transform: rotate(0deg);
  transition: 0.5s ease-in-out;
}

.hamburger-toggle span.top {
  top: 0px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.hamburger-toggle.open span.top {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: -3px;
  left: 8px;
}

.hamburger-toggle span.middle {
  top: 15px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.hamburger-toggle.open span.middle {
  width: 0%;
  opacity: 0;
}

.hamburger-toggle span.bottom {
  top: 30px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.hamburger-toggle.open span.bottom {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 29px;
  left: 8px;
}

/* Mobile nav */
#off-canvas-menu {
  right: -250px;
  width: 250px;
  background-color: #70c1b3;
  border-left: 1px solid rgba(255, 255, 255, 0.5);
  bottom: 0;
  overflow: auto;
  position: fixed;
  top: 0;
  padding: 0px 0px;
  z-index: 1;
  height: 100%;
}

#off-canvas-menu ul {
  -webkit-padding-start: 0;
}

#off-canvas-menu li {
  width: 100%;
  text-align: center;
  font-size: 1.333rem;
  line-height: 2.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

#off-canvas-menu li:hover {
  background-color: white;
}

#off-canvas-menu li a {
  color: white;
  text-decoration: none;
  padding: 20px;
  display: block;
}

#off-canvas-menu li:hover > a {
  color: #70c1b3;
}

.responsive-nav {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 992px) {
  .responsive-nav {
    display: none;
  }
}
.responsive-nav .toggle-open {
  width: 40px;
  height: 40px;
  cursor: pointer;
  transition: 0.3s ease;
  display: flex;
  align-items: center;
  z-index: 9999;
  margin: 0;
}
.responsive-nav label span,
.responsive-nav label span::before,
.responsive-nav label span::after {
  transition: background 0.3s, transform 0.3s;
}
.responsive-nav label span,
.responsive-nav label span::before,
.responsive-nav label span::after {
  content: "";
  position: absolute;
  height: 4px;
  width: 40px;
  background: #70c1b3;
}
.responsive-nav label span::before {
  transform: translateY(-12px);
}
.responsive-nav label span::after {
  transform: translateY(12px);
}
.responsive-nav nav {
  position: fixed;
  top: 0;
  height: 100%;
  width: 320px;
  right: -320px;
  overflow: hidden;
  background: #70c1b3;
  transition: 0.3s ease;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.responsive-nav nav > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.responsive-nav nav > div a {
  color: white;
}
.responsive-nav nav > div label {
  width: 30px;
  height: 30px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: 0.3s ease;
}
.responsive-nav nav > div label span,
.responsive-nav nav > div label span:before,
.responsive-nav nav > div label span:after {
  background: #f3faf8;
}
.responsive-nav nav > ul {
  margin-top: 30px;
  counter-reset: nav-link-count;
}
.responsive-nav nav > ul li {
  cursor: pointer;
  padding: 10px 0;
  transform: translateX(-30px);
  opacity: 0;
  transition: 0.4s ease;
  counter-increment: nav-link-count;
}
.responsive-nav nav > ul li a {
  font-size: 2.5rem;
  line-height: 1.5;
  font-weight: 400;
  color: #d7f0ea;
  display: block;
}
.responsive-nav nav > ul li a:hover {
  color: #f3faf8;
}
.responsive-nav nav > ul li a::after {
  content: " : " counter(nav-link-count);
}
.responsive-nav nav > ul li:hover {
  animation: hover 0.5s;
}
.responsive-nav input[type=checkbox] {
  display: none;
}
.responsive-nav input[type=checkbox]:checked ~ label {
  opacity: 0;
  pointer-events: none;
}
.responsive-nav input[type=checkbox]:checked ~ nav {
  right: 0;
}
.responsive-nav input[type=checkbox]:checked ~ nav label span {
  background: transparent;
}
.responsive-nav input[type=checkbox]:checked ~ nav label span:before {
  transform: rotate(-45deg);
}
.responsive-nav input[type=checkbox]:checked ~ nav label span:after {
  transform: rotate(45deg);
}
.responsive-nav input[type=checkbox]:checked ~ nav label span:before,
.responsive-nav input[type=checkbox]:checked ~ nav label span:after {
  transition-delay: 0.2s;
}

.offcanvas-nav {
  overflow: scroll;
}
.offcanvas-nav--logo {
  width: 55px;
  height: auto;
}
.offcanvas-nav--header {
  padding: 1em;
}

#menu-mobile-menu {
  margin: 0;
  padding: 0;
  width: 100%;
}
#menu-mobile-menu li {
  padding: 1em;
  text-align: center;
  font-size: 1.333rem;
  line-height: 2.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.menu-item--basket a {
  display: flex;
  align-items: center;
}

.menu-item--basket-quantity {
  margin-left: 0.5em;
  background: white;
  color: #464646;
  padding: 4px;
  border-radius: 2rem;
  line-height: 1;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8em;
  font-weight: bold;
}

footer {
  background-color: #ededed;
  position: relative;
  padding-bottom: 1em;
}

.back-to-top {
  text-align: center;
  color: #464646;
  margin-top: 1em;
}
@media screen and (min-width: 768px) {
  .back-to-top {
    margin-top: -1em;
  }
}

.back-to-top img {
  width: 20px;
  transform: rotate(270deg);
}

.back-to-top p {
  font-weight: bold;
}

.footer-top {
  padding-top: 2rem;
}

.footer-socials {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer-socials {
    float: left;
  }
}

.footer-socials a {
  margin: 10px;
}
@media screen and (min-width: 768px) {
  .footer-socials a {
    float: left;
  }
}

.footer-socials a:first-of-type {
  margin-left: 0;
}

.footer-socials a img {
  height: 30px;
}

.footer-menu a:hover {
  text-decoration: none;
}

.footer-extras {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 2px solid #b1b1b1;
  color: #b1b1b1;
}

.footer-extras p {
  font-size: 0.75rem;
  line-height: 1.25rem;
}

.footer-extras .copyright {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer-extras .copyright {
    text-align: left;
  }
}

.footer-extras .address {
  text-align: center;
}

.footer-extras .website-by {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer-extras .website-by {
    text-align: right;
  }
}

.footer-top__inner {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .footer-top__inner {
    flex-direction: row;
    justify-content: space-between;
  }
}

.footer-top__menu-wrapper {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer-top__menu-wrapper {
    display: flex;
    text-align: left;
  }
}

.footer-menu + .footer-menu {
  margin-top: 0.5em;
}
@media screen and (min-width: 768px) {
  .footer-menu + .footer-menu {
    margin-top: 0;
    margin-left: 6em;
  }
}
.footer-menu ul {
  padding: 0;
  margin: 0;
}
.footer-menu li + li {
  margin-top: 0.5em;
}

a.cta-animate {
  padding: 1rem 2rem;
  font-size: 1rem;
  line-height: 1.25rem;
  font-family: "Lato", sans-serif;
  font-weight: bold;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  display: inline-block;
  margin: 0.5rem 0;
  text-align: center;
}

a.cta-animate:hover,
a.cta-animate:focus {
  text-decoration: none;
}

a.cta-animate.outline {
  border: 4px solid;
  background-color: transparent;
}

a.cta-animate.outline.green {
  border-color: #70c1b3;
  color: #70c1b3;
  transition: all 0.2s;
}

a.cta-animate.outline.green:hover {
  background-color: #70c1b3;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.outline.orange {
  border-color: #f1bb6c;
  color: #f1bb6c;
  transition: all 0.2s;
}

a.cta-animate.outline.orange:hover {
  background-color: #f1bb6c;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.outline.blue {
  border-color: #0892d0;
  color: #0892d0;
  transition: all 0.2s;
}

a.cta-animate.outline.blue:hover {
  background-color: #0892d0;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.outline.white-on-green {
  border-color: white;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.outline.white-on-green:hover {
  background-color: white;
  color: #70c1b3;
  transition: all 0.2s;
}

a.cta-animate.outline.white-on-blue {
  border-color: white;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.outline.white-on-blue:hover {
  background-color: white;
  color: #0892d0;
  transition: all 0.2s;
}

a.cta-animate.outline.white-on-orange {
  border-color: white;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.outline.white-on-orange:hover {
  background-color: white;
  color: #f1bb6c;
  transition: all 0.2s;
}

a.cta-animate.filled.green-to-white {
  background-color: #70c1b3;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.filled.green-to-white:hover {
  background-color: white;
  color: #70c1b3;
  transition: all 0.2s;
}

a.cta-animate.filled.white-to-green {
  background-color: white;
  color: #70c1b3;
  transition: all 0.2s;
}

a.cta-animate.filled.white-to-green:hover {
  background-color: #70c1b3;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.filled.blue-to-white {
  background-color: #0892d0;
  color: white;
  transition: all 0.2s;
}

a.cta-animate.filled.blue-to-white:hover {
  background-color: white;
  color: #0892d0;
  transition: all 0.2s;
}

a.cta-animate.filled.orange-to-outline {
  background-color: #f1bb6c;
  color: white;
  border: 4px solid #f1bb6c;
  transition: all 0.2s;
}

a.cta-animate.filled.orange-to-outline:hover {
  background-color: white;
  color: #f1bb6c;
  transition: all 0.2s;
}

a.cta-animate.filled.white-on-green {
  background-color: white;
  color: #70c1b3;
  border: 4px solid white;
  transition: all 0.2s;
}

a.cta-animate.filled.white-on-green:hover {
  background-color: transparent;
  color: white;
  transition: all 0.2s;
}

.home-header-content-wrapper {
  position: absolute;
  top: 120px;
  left: 0;
  right: 0;
  z-index: 6000;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}

.home-header-content-container {
  padding-top: 0rem;
  color: white;
}
@media screen and (min-width: 480px) {
  .home-header-content-container {
    padding-top: 3rem;
  }
}

.home-header-content-container h1 {
  font-size: 4.171rem;
  line-height: 1.1;
  font-weight: bold;
  margin: 0 0 2rem;
  text-shadow: #464646 2px 2px 12px;
}
@media screen and (min-width: 992px) {
  .home-header-content-container h1 {
    font-size: 5.548rem;
    line-height: 1.1;
  }
}

#main-cta {
  padding: 1rem 1rem;
  margin: 2rem 0 0;
}
@media screen and (min-width: 480px) {
  #main-cta {
    padding: 1rem 3rem;
  }
}

.home-intro-wrapper {
  position: relative;
  padding-bottom: 4rem;
}
@media screen and (min-width: 992px) {
  .home-intro-wrapper {
    padding-bottom: 7rem;
  }
}

.home-intro-wrapper svg {
  fill: #0892d0;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .home-intro-wrapper svg {
    height: 90px;
  }
}

.home-intro__row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.home-intro__item {
  display: flex;
  flex-direction: column;
}

.intro-option {
  width: 100%;
  margin: 0 auto;
  flex-grow: 1;
}
.intro-option a,
.intro-option a:hover {
  text-decoration: none;
  color: #464646;
}

.intro-option h3 {
  font-family: "Amatic SC", cursive;
  font-size: 4rem;
  font-weight: bold;
  color: white;
  margin: 0;
  transition: all 0.5s ease;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  padding: 1rem;
  transform: translateX(-50%) translateY(-50%);
}

.intro-option-image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s ease;
}

.intro-option-image-overlay:hover {
  background-color: rgba(0, 0, 0, 0.4);
  transition: background-color 0.3s ease;
}

.calendar-title,
.journal-title,
.tour-title {
  position: relative;
}

.intro-option h2 {
  font-family: "Amatic SC", cursive;
  font-size: 2.353rem;
  line-height: 1.1;
  font-weight: bold;
  padding-bottom: 0.5rem;
}
.intro-option p {
  margin: 1em 0 0.5em;
}

.intro-option .calendar-title:after {
  position: absolute;
  bottom: 0px;
  left: 0;
  content: "";
  height: 4px;
  width: 25%;
  background-color: #0892d0;
}

.intro-option .journal-title:after {
  position: absolute;
  bottom: 0px;
  left: 0;
  content: "";
  height: 4px;
  width: 25%;
  background-color: #f1bb6c;
}

.intro-option .tour-title:after {
  position: absolute;
  bottom: 0px;
  left: 0;
  content: "";
  height: 4px;
  width: 25%;
  background-color: #70c1b3;
}

.intro-option-image {
  position: relative;
  text-align: center;
  padding-top: 100%;
  background: #f1bb6c;
  margin-bottom: 0.5em;
}
.intro-option-image > * {
  position: absolute;
}
.intro-option-image img {
  top: 0;
  left: 0;
}

.intro-option img {
  width: 100%;
}

.intro-option .calendar-title {
  color: #0892d0;
}

.intro-option .journal-title {
  color: #f1bb6c;
}

.intro-option .tour-title {
  color: #70c1b3;
}

.intro-cta {
  width: 100%;
  text-align: center;
}

.intro-cta a.cta-animate {
  width: 100%;
  text-align: center;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 992px) {
  .intro-cta a.cta-animate {
    margin-bottom: 0rem;
  }
}
.home-electric-wrapper {
  background-color: #0892d0;
  color: white;
  position: relative;
  padding: 1rem 0 2rem;
}
@media screen and (min-width: 992px) {
  .home-electric-wrapper {
    padding: 3rem 0;
  }
}

.home-electric-wrapper svg:first-of-type {
  fill: #0892d0;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  top: 0;
}
@media screen and (min-width: 992px) {
  .home-electric-wrapper svg:first-of-type {
    height: 90px;
  }
}

.electric-container {
  margin: 0 auto;
  width: 100%;
}
@media screen and (min-width: 992px) {
  .electric-container {
    width: 70%;
  }
}

.electric-title {
  float: left;
  text-align: right;
  padding-right: 0rem;
  margin: 0;
}
@media screen and (min-width: 992px) {
  .electric-title {
    padding-right: 1rem;
  }
}

.electric-title h2 {
  font-size: 3.129rem;
  line-height: 1.1;
  font-weight: bold;
}

.electric-content {
  float: right;
  width: 100%;
  text-align: left;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .electric-content {
    width: 70%;
  }
}

.home-testimonial {
  position: relative;
  padding: 0;
}

.testimonial-image {
  min-height: 400px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  flex: 1;
}
@media screen and (min-width: 992px) {
  .testimonial-image {
    min-height: 600px;
  }
}

.testimonial-container {
  width: 100%;
  padding: 3rem 2rem 6rem;
}
@media screen and (min-width: 992px) {
  .testimonial-container {
    padding: 10rem 2rem;
    width: 100%;
    max-width: 585px;
  }
}

.testimonial-container p {
  position: relative;
}

.testimonial-container p:before {
  content: "";
  height: 4px;
  background-color: #f1bb6c;
  width: 15%;
  position: absolute;
  top: -24px;
  left: 0;
}

.testimonial-container span.name {
  display: block;
  font-family: "Lato", sans-serif;
  font-size: 1.333rem;
  line-height: 2.5rem;
  color: #f1bb6c;
}

.testimonial-container a {
  text-align: center;
  margin-top: 1rem;
}
@media screen and (min-width: 992px) {
  .testimonial-container a {
    margin-top: 3rem;
  }
}

.home-testimonial svg:first-of-type {
  fill: #0892d0;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  top: 0;
}
@media screen and (min-width: 992px) {
  .home-testimonial svg:first-of-type {
    height: 90px;
  }
}

.home-testimonial svg:last-of-type {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .home-testimonial svg:last-of-type {
    height: 90px;
  }
}

.tours-header-slant {
  background-color: #70c1b3;
}

.tours-header-slant .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .tours-header-slant .slant {
    height: 90px;
  }
}

section.tours-container {
  padding-top: 0;
  background-image: url("images/dotted_route.svg");
  background-repeat: repeat-y;
  background-size: 100% auto;
  position: relative;
}

.tours-intro h1 {
  text-align: center;
  font-size: 7.395rem;
  line-height: 1.1;
  color: #70c1b3;
  font-weight: bold;
  margin-bottom: 1rem;
}

.tours-intro p.intro {
  width: 75ch;
  margin: 0 auto;
  text-align: left;
}

.tours-loop-container {
  padding-top: 3rem;
  padding-bottom: 1rem;
}
@media screen and (min-width: 992px) {
  .tours-loop-container {
    padding: 3rem 0;
  }
}

.tours-loop-container .container-fluid {
  padding: 0 5rem;
}

.tour {
  padding: 0;
  position: relative;
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 992px) {
  .tour {
    padding: 0 1rem;
    margin-bottom: 8rem;
  }
}

.tour img {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .tour img {
    width: 85%;
  }
}

.tour .tour-image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background-color: rgba(255, 255, 255, 0);
  transition: background-color 0.3s ease;
  width: 100%;
}
@media screen and (min-width: 992px) {
  .tour .tour-image-overlay {
    width: 85%;
  }
}

.tour:hover .tour-image-overlay {
  background-color: rgba(255, 255, 255, 0.2);
  transition: background-color 0.3s ease;
}

.tour .tour-contents {
  bottom: -90px;
  color: white;
  right: 0;
  width: 100%;
}
@media screen and (min-width: 992px) {
  .tour .tour-contents {
    width: 80%;
    position: absolute;
  }
}

.tour .tour-contents .title {
  background-color: #4f9589;
  padding-right: 3em;
  position: relative;
}

.tour .tour-contents .title h2 {
  padding: 10px;
  margin: 0;
  font-size: 2.353rem;
  line-height: 1.1;
  font-weight: bold;
}
@media screen and (min-width: 992px) {
  .tour .tour-contents .title h2 {
    font-size: 3.129rem;
    line-height: 1.1;
  }
}

.tour .tour-contents img.arrow {
  height: 50px;
  width: 20px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  transition: right 0.5s ease;
  display: none;
}
@media screen and (min-width: 992px) {
  .tour .tour-contents img.arrow {
    display: block;
  }
}

.tour:hover .tour-contents img.arrow {
  right: 35px;
  transition: right 0.5s ease;
}

.tour .tour-contents .excerpt {
  background-color: #70c1b3;
}

.tour .tour-contents .excerpt p {
  padding: 20px;
  margin: 0;
}

section.tours-container .slant {
  fill: #f1bb6c;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.tours-container .slant {
    height: 90px;
  }
}

section.vouchers-wrapper {
  padding-top: 2rem;
  padding-bottom: 5rem;
  background-color: #f1bb6c;
  position: relative;
}
@media screen and (min-width: 992px) {
  section.vouchers-wrapper {
    padding-top: 6rem;
    padding-bottom: 10rem;
  }
}

section.vouchers-wrapper .slant {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.vouchers-wrapper .slant {
    height: 90px;
  }
}

.vouchers-container {
  text-align: center;
  color: white;
}

.vouchers-container img {
  width: 50%;
  transition: 0.5s all ease;
}
@media screen and (min-width: 480px) {
  .vouchers-container img {
    width: 25%;
  }
}
@media screen and (min-width: 992px) {
  .vouchers-container img {
    width: 70%;
  }
}

.vouchers-container:hover img {
  transform: rotate(10deg);
  transition: 0.5s all ease;
}

.vouchers-content {
  width: 80%;
  margin: 0 auto;
}

.vouchers-content h3 {
  font-size: 3.129rem;
  line-height: 1.1;
  font-weight: bold;
  font-family: "Amatic SC", cursive;
  padding-bottom: 1rem;
}

.vouchers-content .buy {
  padding-top: 1rem;
}

.vouchers-content .buy .price {
  font-size: 3.129rem;
  line-height: 1.1;
  font-weight: bold;
  font-family: "Amatic SC", cursive;
  display: inline-block;
  transform: translateY(15px);
  margin-right: 30px;
}

.vouchers-content .buy a {
  display: inline-block;
  width: 250px;
}

.tour-header-slant {
  background-color: #70c1b3;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.tour-header-slant::after {
  content: "";
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.tour-header-slant .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .tour-header-slant .slant {
    height: 90px;
  }
}

section.tour-container,
section.tour-dates {
  padding-top: 1rem;
  position: relative;
}

section.tour-container {
  padding-bottom: 6rem;
}

.tour-container a.tour-breadcrumb {
  color: #b1b1b1;
  font-size: 1rem;
  line-height: 1.25rem;
  transition: all 0.2s;
}

.tour-container a.tour-breadcrumb:hover,
.tour-container a.tour-breadcrumb:focus {
  color: #ededed;
  text-decoration: none;
  transition: all 0.2s;
}

.tour-container .flexslider-container {
  padding-top: 1rem;
  opacity: 0;
  transition: 0.2s opacity;
}

.tour-container .flexslider-container #carousel {
  display: none;
}
@media screen and (min-width: 992px) {
  .tour-container .flexslider-container #carousel {
    display: block;
  }
}

.tour-container .flexslider-container #carousel li {
  margin: 10px 5px;
  opacity: 0.5;
  transition: 0.5s all ease;
  cursor: pointer;
}

.tour-container .flexslider-container #carousel li.flex-active-slide {
  opacity: 1;
  transition: 0.5s all ease;
}

.tour-container .flexslider-container #carousel li:first-of-type {
  margin-left: 0;
}

.tour-container .flexslider-container #carousel li:last-of-type {
  margin-right: 0;
}

#carousel.flexslider .slides img {
  width: 160px;
  height: 120px;
}

.tour-container h1 {
  font-size: 5.548rem;
  line-height: 1.1;
  color: #70c1b3;
  font-weight: bold;
  margin: 1rem 0;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .tour-container h1 {
    text-align: left;
  }
}

.tour-container :not(.prose) h2 {
  font-size: 3.129rem;
  line-height: 1.1;
  color: #70c1b3;
  font-weight: bold;
  position: relative;
  margin-bottom: 0.5em;
}
.tour-container :not(.prose) h2::after {
  content: "";
  width: 10%;
  height: 4px;
  background-color: #70c1b3;
  position: absolute;
  bottom: -10px;
  left: 0;
}

.mobile-key-information {
  width: 100%;
  padding: 1rem;
  margin: 1rem 0;
  background-color: #f1bb6c;
  color: white;
  display: block;
}
@media screen and (min-width: 992px) {
  .mobile-key-information {
    display: none;
  }
}

.mobile-key-information h3 {
  text-align: center;
  font-size: 2.353rem;
  line-height: 1.1;
  font-family: "Amatic SC", cursive;
  font-weight: bold;
  margin-top: 0;
  position: relative;
  line-height: 1.5;
}

.mobile-key-information h3:after {
  content: "";
  position: absolute;
  width: 20%;
  height: 4px;
  background-color: white;
  bottom: 0;
  left: 40%;
}

.tour-dates div.table {
  display: table;
  padding: 1rem 0;
  border-collapse: collapse;
  margin-top: 2rem;
}
@media screen and (min-width: 992px) {
  .tour-dates div.table {
    margin-top: 0;
  }
}

.tour-dates div.trow {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 4px solid #ededed;
  transition: 0.2s all ease;
}
@media screen and (min-width: 992px) {
  .tour-dates div.trow {
    display: table-row;
  }
}

.tour-dates div.trow.headings {
  display: none;
}
@media screen and (min-width: 992px) {
  .tour-dates div.trow.headings {
    display: table-row;
  }
}

.tour-dates div.trow:hover:not(:first-of-type) {
  transition: 0.2s all ease;
}
@media screen and (min-width: 992px) {
  .tour-dates div.trow:hover:not(:first-of-type) {
    background-color: #ededed;
  }
}

.tour-dates div.trow.headings > .cell {
  text-align: center;
  color: #70c1b3;
  font-weight: bold;
  padding: 1rem;
}

.tour-dates div.trow.headings i {
  display: block;
  padding: 5px;
}

.tour-dates div.trow:nth-of-type(even) {
  background-color: #f8f8f8;
}
@media screen and (min-width: 992px) {
  .tour-dates div.trow:nth-of-type(even) {
    background-color: white;
  }
}

.tour-dates div.cell {
  display: block;
  text-align: left;
  padding: 0.5rem 1rem;
  width: 50%;
}
@media screen and (min-width: 992px) {
  .tour-dates div.cell {
    display: table-cell;
    text-align: center;
    padding: 0.85rem 5px;
    width: auto;
  }
}
.tour-dates div.cell.cell__buy {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .tour-dates div.cell.cell__buy {
    width: auto;
  }
}

.cell .quantity input {
  border: 1px solid #ededed;
}

.tour-dates div.cell span.mobile-date-heading {
  color: #70c1b3;
  font-weight: bold;
  display: block;
  margin-bottom: 0.25rem;
}
@media screen and (min-width: 992px) {
  .tour-dates div.cell span.mobile-date-heading {
    display: none;
  }
}

.tour-dates div.cell:first-of-type {
  text-align: left;
}

.tour-dates .cell button.add-to-basket {
  padding: 10px 0px;
  width: 100%;
  background-color: #0892d0;
  border: none;
  color: white;
}
@media screen and (min-width: 992px) {
  .tour-dates .cell button.add-to-basket {
    width: 180px;
  }
}

.tour-dates .cell button.add-to-basket:hover {
  background-color: #136388;
  transition: all 0.2s;
}

.tour-dates .cell .sold-out {
  background-color: #b1b1b1;
  color: white;
  padding: 10px 0px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .tour-dates .cell .sold-out {
    width: 180px;
  }
}

.key-information .table,
.mobile-key-information .table {
  display: table;
  border-collapse: collapse;
}

.key-information .trow,
.mobile-key-information .trow {
  display: table-row;
}

.key-information .cell,
.mobile-key-information .cell {
  display: table-cell;
  padding: 10px;
}

.key-information .trow .cell:first-of-type,
.mobile-key-information .trow .cell:first-of-type {
  text-align: center;
}

.key-information .trow .cell:last-of-type,
.mobile-key-information .trow .cell:last-of-type {
  vertical-align: middle;
}

.key-information .cell a,
.mobile-key-information .cell a {
  color: white;
  text-decoration: none;
  transition: all 0.2s;
}
.key-information .cell a:hover, .key-information .cell a:focus,
.mobile-key-information .cell a:hover,
.mobile-key-information .cell a:focus {
  color: rgba(255, 255, 255, 0.8);
}

.key-information .map-link,
.mobile-key-information .map-link {
  font-size: 14px;
  margin-top: 1em;
  display: block;
  text-decoration: underline;
}
.key-information .map-link:hover,
.mobile-key-information .map-link:hover {
  text-decoration: none;
}

section.tour-container .slant {
  fill: #70c1b3;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.tour-container .slant {
    height: 90px;
  }
}

section.testimonials {
  background-color: #70c1b3;
  color: white;
  position: relative;
  padding-bottom: 12rem;
}

section.testimonials h1 {
  text-align: center;
  font-size: 4.171rem;
  line-height: 1.1;
  font-weight: bold;
  position: relative;
  margin: 0;
}

section.testimonials h1:after {
  content: "";
  height: 4px;
  width: 150px;
  background-color: white;
  position: absolute;
  bottom: -20px;
  left: 43%;
  display: none;
}
@media screen and (min-width: 992px) {
  section.testimonials h1:after {
    display: block;
  }
}

.testimonial {
  padding: 1rem 0;
  border-bottom: 1px solid white;
  font-family: "Lato", sans-serif;
}

.testimonial:first-of-type {
  padding-top: 3rem;
}

.testimonial img {
  width: 100%;
  border: 4px white solid;
  margin-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .testimonial img {
    margin-bottom: 0;
  }
}

.testimonial .name {
  font-size: 1.2rem;
  margin-bottom: 0;
  font-weight: bold;
}

.testimonial .date {
  margin-top: 0;
}

.testimonials-form {
  width: 90%;
  margin: 0 auto;
  padding-top: 3rem;
}
@media screen and (min-width: 992px) {
  .testimonials-form {
    width: 60%;
  }
}

.testimonials-form input,
.testimonials-form textarea {
  width: 100%;
  padding: 10px 5px;
  margin: 5px;
  color: #464646;
  transition: all 0.2s;
  border-color: white;
  border-style: solid;
  border-width: 4px;
}

.testimonials-form textarea {
  height: 150px;
}

.testimonials-form input:active,
.testimonials-form input:focus,
.testimonials-form textarea:active,
.testimonials-form textarea:focus {
  border-color: #f1bb6c;
  border-style: solid;
  border-width: 4px;
  outline: none;
  transition: all 0.2s;
}

.testimonials-form input[type=submit] {
  background-color: #f1bb6c;
  border-color: #f1bb6c;
  color: white;
}

.testimonials-form input[type=submit]:hover {
  background-color: #0892d0;
  border-color: #0892d0;
}

.testimonials-form input[type=file] {
  color: white;
}

.testimonials-form .wpcf7-not-valid-tip,
.testimonials-form .wpcf7-validation-errors {
  color: white;
  background-color: #0892d0;
  width: 100%;
  margin: 5px;
  padding: 5px;
  border: none;
}

.testimonials-form .wpcf7-mail-sent-ok {
  color: white;
  background-color: #f1bb6c;
  width: 100%;
  margin: 5px;
  padding: 5px;
  border: none;
}

section.testimonials .slant {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.testimonials .slant {
    height: 90px;
  }
}

.selected-dates-container {
  margin-top: 2em;
}

header.about-header {
  height: 12rem;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  background-position: center center;
}

.about-header .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .about-header .slant {
    height: 90px;
  }
}

section.about-intro {
  padding-top: 2rem;
  padding-bottom: 4rem;
  position: relative;
}
@media screen and (min-width: 992px) {
  section.about-intro {
    padding-bottom: 8rem;
  }
}

.about-intro h1 {
  font-size: 5.548rem;
  line-height: 1.1;
  font-weight: bold;
  color: #0892d0;
  position: relative;
  margin: 0;
}

.about-intro h1:after {
  content: "";
  background-color: #0892d0;
  position: absolute;
  bottom: -12px;
  left: 0;
  height: 4px;
  width: 110px;
}

p.about-intro-content {
  padding-top: 3rem;
}

.about-intro .slant {
  fill: #0892d0;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .about-intro .slant {
    height: 90px;
  }
}

section.about-peter {
  background-color: #0892d0;
  color: white;
  position: relative;
  padding-bottom: 6rem;
}

.about-peter h2 {
  font-size: 4.171rem;
  line-height: 1.1;
  font-weight: bold;
  margin: 0;
}

.about-peter h3 {
  font-weight: bold;
  font-size: 2.353rem;
  line-height: 1.1;
  font-family: "Amatic SC", cursive;
  opacity: 0.5;
  margin: 0;
}

.about-peter .image-content {
  text-align: center;
}

.about-peter .profile {
  margin-top: 1rem;
  width: 95%;
  border: white solid 4px;
}
@media screen and (min-width: 992px) {
  .about-peter .profile {
    width: 80%;
    margin-top: 0;
  }
}

.about-peter .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .about-peter .slant {
    height: 90px;
  }
}

section.faqs {
  text-align: center;
  position: relative;
  padding-bottom: 6rem;
}

section.faqs h2 {
  font-size: 4.171rem;
  line-height: 1.1;
  font-weight: bold;
  color: #0892d0;
  margin: 0;
}

section.faqs p.intro {
  width: 90%;
  margin: 0 auto;
  padding-top: 1rem;
}
@media screen and (min-width: 768px) {
  section.faqs p.intro {
    width: 60%;
  }
}

.faq-container {
  width: 95%;
  margin: 0 auto;
  text-align: left;
  padding: 2rem 0;
}
@media screen and (min-width: 992px) {
  .faq-container {
    width: 80%;
  }
}

.faq-container .faq .question {
  padding: 3px;
  border-bottom: #ededed solid 4px;
  position: relative;
}

.faq a .question:after {
  position: absolute;
  right: 0;
  top: 20px;
  content: "";
  font-size: 30px;
  font-family: FontAwesome;
  transition: 0.2s all ease;
  color: #0892d0;
}

.faq a.collapsed .question:after {
  transform: rotate(180deg);
  transition: 0.2s all ease;
}

.faq-container .faq .question h4 {
  color: #0892d0;
  width: 95%;
  font-size: 1.333rem;
  line-height: 2.5rem;
}

.faq-container .faq .answer p {
  margin: 3px;
  margin-top: 15px;
}

section.faqs .slant {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.faqs .slant {
    height: 90px;
  }
}

.bikes-header-content-wrapper {
  position: absolute;
  top: 120px;
  left: 0;
  right: 0;
  z-index: 6000;
  width: 80%;
  margin: 0 auto;
  overflow: hidden;
}

.bikes-header-content-container {
  color: white;
  margin: 0 auto;
  width: 65%;
}
@media screen and (min-width: 992px) {
  .bikes-header-content-container {
    width: 30%;
  }
}

.bikes-header-content-container h1 {
  font-size: 5.548rem;
  line-height: 1.1;
  font-weight: bold;
  text-align: center;
  color: white;
  background-color: #0892d0;
  padding: 10px;
}

section.bike {
  position: relative;
  padding-bottom: 4rem;
}
@media screen and (min-width: 992px) {
  section.bike {
    padding-bottom: 9rem;
  }
}

section.bike .bike-image {
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  section.bike .bike-image {
    width: 70%;
  }
}

section.bike .bike-image img {
  width: 100%;
}

section.bike .bike-details h2 {
  font-size: 4.171rem;
  line-height: 1.1;
  font-weight: bold;
  color: #0892d0;
  position: relative;
  margin-bottom: 2rem;
}

section.bike .bike-details h2:after {
  content: "";
  height: 4px;
  width: 15%;
  background-color: #0892d0;
  position: absolute;
  bottom: -8px;
  left: 0;
}

section.bike .bike-details a {
  color: #0892d0;
  transition: all 0.2s;
  font-weight: bold;
}

section.bike .bike-details a:hover,
section.bike .bike-details a:focus {
  color: #136388;
  transition: all 0.2s;
  text-decoration: none;
}

section.bike .slant {
  fill: #0892d0;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.bike .slant {
    height: 90px;
  }
}

section.taster-sessions {
  background-color: #0892d0;
  color: white;
}

.taster-sessions h2 {
  font-size: 4.171rem;
  line-height: 1.1;
  font-weight: bold;
  margin: 0;
}

.taster-sessions h3 {
  font-size: 2.353rem;
  line-height: 1.1;
  font-family: "Amatic SC", cursive;
  font-weight: bold;
  opacity: 0.5;
  margin: 0;
}

.taster-sessions .taster-content {
  column-count: 1;
  padding: 1rem 0;
}
@media screen and (min-width: 768px) {
  .taster-sessions .taster-content {
    column-count: 2;
  }
}

section.bike-footer-image {
  position: relative;
  height: 30rem;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

section.bike-footer-image .slant:first-of-type {
  fill: #0892d0;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  top: 0;
}
@media screen and (min-width: 992px) {
  section.bike-footer-image .slant:first-of-type {
    height: 90px;
  }
}

section.bike-footer-image .slant:last-of-type {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.bike-footer-image .slant:last-of-type {
    height: 90px;
  }
}

section.contact-header-slant {
  background-color: #f1bb6c;
}

.contact-header-slant .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .contact-header-slant .slant {
    height: 90px;
  }
}

section.contact-wrapper {
  background-image: url("images/dotted_route.svg");
  background-repeat: repeat-y;
  background-size: 100% auto;
  position: relative;
  padding-bottom: 4rem;
}
@media screen and (min-width: 992px) {
  section.contact-wrapper {
    padding-bottom: 8rem;
  }
}

.contact-intro-container {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 3rem;
}
@media screen and (min-width: 768px) {
  .contact-intro-container {
    width: 80%;
  }
}
@media screen and (min-width: 992px) {
  .contact-intro-container {
    width: 60%;
  }
}

.contact-intro-container h1 {
  font-size: 5.548rem;
  line-height: 1.1;
  font-weight: bold;
  color: #f1bb6c;
  margin: 0;
  position: relative;
  margin-bottom: 2rem;
}

.contact-intro-container h1:after {
  content: "";
  height: 4px;
  width: 15%;
  background-color: #f1bb6c;
  position: absolute;
  bottom: -12px;
  left: 43%;
}

.contact-wrapper .contact-container h2 {
  font-size: 2.353rem;
  line-height: 1.1;
  font-weight: bold;
  color: #f1bb6c;
  margin: 0;
}

.contact-form input,
.contact-form textarea,
.contact-form select {
  width: 100%;
  padding: 10px 5px;
  margin: 5px;
  color: #464646;
  transition: all 0.2s;
  border-color: #ededed;
  border-style: solid;
  border-width: 4px;
}

.contact-form input:active,
.contact-form textarea:active,
.contact-form select:active,
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus {
  border-color: #f1bb6c;
  border-style: solid;
  border-width: 4px;
  outline: none;
  transition: all 0.2s;
}

input#contactpage-phone {
  width: 100%;
  margin-left: 5px;
}
@media screen and (min-width: 992px) {
  input#contactpage-phone {
    width: 97%;
    margin-left: 14px;
  }
}

.contact-form input[type=submit] {
  background-color: #f1bb6c;
  border-color: #f1bb6c;
  color: white;
}

.contact-form input[type=submit]:hover {
  background-color: transparent;
  border-color: #f1bb6c;
  color: #f1bb6c;
}

.contact-form span.wpcf7-not-valid-tip {
  color: white;
  background-color: #0892d0;
  width: 100%;
  margin: 5px;
  padding: 5px;
}

.contact-form .wpcf7-response-output.wpcf7-display-none.wpcf7-mail-sent-ok {
  border: 0;
  color: white;
  width: 100%;
  background-color: #70c1b3;
  margin-top: 1rem;
}

.contact-form .wpcf7-response-output.wpcf7-display-none.wpcf7-validation-errors {
  border: 0;
  color: white;
  width: 100%;
  background-color: #0892d0;
  margin-top: 1rem;
}

.other-methods .table {
  display: table;
  width: 100%;
}

.other-methods .trow {
  display: table-row;
}

.other-methods .cell {
  display: table-cell;
  padding: 10px;
}

.contact-wrapper .contact-container .other-methods img {
  width: 30px;
  height: 21px;
}

.contact-wrapper .contact-container .other-methods i {
  color: #f1bb6c;
}

.contact-wrapper .slant {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .contact-wrapper .slant {
    height: 90px;
  }
}

header.standard-header {
  padding: 6rem 0;
  position: relative;
  background-color: #70c1b3;
}

header.standard-header .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  header.standard-header .slant {
    height: 90px;
  }
}

section.standard-content {
  padding-top: 1rem;
  padding-bottom: 6rem;
  position: relative;
}

section.standard-content h1 {
  font-size: 3.129rem;
  line-height: 1.1;
  font-weight: bold;
  color: #70c1b3;
  text-align: center;
  margin: 0;
  margin-bottom: 3rem;
  position: relative;
}
@media screen and (min-width: 480px) {
  section.standard-content h1 {
    font-size: 4.171rem;
    line-height: 1.1;
  }
}
@media screen and (min-width: 768px) {
  section.standard-content h1 {
    font-size: 5.548rem;
    line-height: 1.1;
  }
}

section.standard-content h1:after {
  content: "";
  height: 4px;
  width: 10%;
  position: absolute;
  background-color: #70c1b3;
  bottom: -15px;
  left: 45%;
}

section.standard-content .slant {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.standard-content .slant {
    height: 90px;
  }
}

header.events-header {
  padding: 5rem 0;
  position: relative;
  background-color: #70c1b3;
}

header.events-header .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  header.events-header .slant {
    height: 90px;
  }
}

section.events-content {
  padding-top: 0;
  padding-bottom: 6rem;
  position: relative;
  background-image: url("images/dotted_route.svg");
  background-repeat: repeat-y;
  background-size: 100% auto;
}
section.events-content h1 {
  font-size: 5.548rem;
  line-height: 1.1;
  font-weight: bold;
  color: #70c1b3;
  text-align: center;
  margin: 0;
  margin-bottom: 3rem;
  position: relative;
}
section.events-content h1::after {
  content: "";
  height: 4px;
  width: 10%;
  position: absolute;
  background-color: #70c1b3;
  bottom: -15px;
  left: 45%;
}
section.events-content .slant {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.events-content .slant {
    height: 90px;
  }
}
section.events-content p.calendar-intro {
  text-align: center;
}

.tribe-events-notices {
  background: #f1bb6c;
  -webkit-border-radius: 4px;
  border-radius: 0;
  color: white;
  margin: 10px 0 18px;
  padding: 8px 35px 8px 14px;
  text-shadow: none;
  border: none;
}

h2.tribe-events-page-title {
  color: #70c1b3;
  font-size: 3.129rem;
  line-height: 1.1;
  margin: 0;
}

.tribe-events-nav-next a,
.tribe-events-nav-previous a {
  color: #70c1b3;
  font-weight: bold;
}

.tribe-events-calendar th {
  background-color: #70c1b3;
  color: white;
  padding: 16px 0;
  text-align: center;
  width: 14.28%;
  font-family: "Lato", sans-serif;
  text-transform: none;
  letter-spacing: 0px;
  font-size: 16px;
  font-weight: normal;
}

#tribe-events-content table.tribe-events-calendar,
#tribe-events-content .tribe-events-calendar td {
  border: 2px solid #ededed;
}

#tribe-events-content .tribe-events-calendar td {
  background-color: white;
}

.tribe-events-calendar td div[id*=tribe-events-daynum-] {
  padding: 9px 9px;
  color: white;
  font-size: 14px;
  background-color: #e0e0e0;
}

.tribe-events-calendar td.tribe-events-present div[id*=tribe-events-daynum-],
.tribe-events-calendar td.tribe-events-present div[id*=tribe-events-daynum-] > a {
  background-color: #70c1b3;
}

.events-archive.events-gridview #tribe-events-content table .type-tribe_events {
  background-color: #f1bb6c;
  margin: 5%;
  padding: 0;
  color: white;
  transition: 0.2s all;
}

.events-archive.events-gridview #tribe-events-content table .type-tribe_events:hover {
  background-color: #F1CB93;
  transition: 0.2s all;
}

.events-archive.events-gridview #tribe-events-content table .type-tribe_events.sold-out {
  background-color: #b1b1b1;
}

#tribe-events-content .tribe-events-calendar div[id*=tribe-events-event-] h3.tribe-events-month-event-title {
  padding: 10px;
  font-family: "Lato", sans-serif;
  text-transform: none;
  letter-spacing: 0px;
  font-size: 16px;
  font-weight: normal;
}

.tribe-events-sub-nav li a {
  background-color: #b1b1b1;
}
@media screen and (min-width: 768px) {
  .tribe-events-sub-nav li a {
    background-color: transparent;
  }
}

section.events-content {
  padding-top: 0;
  padding-bottom: 6rem;
  position: relative;
  background-image: url("images/dotted_route.svg");
  background-repeat: repeat-y;
  background-size: 100% auto;
}
section.events-content h1 {
  font-size: 5.548rem;
  line-height: 1.1;
  font-weight: bold;
  color: #70c1b3;
  text-align: center;
  margin: 0;
  margin-bottom: 3rem;
  position: relative;
}
section.events-content h1::after {
  content: "";
  height: 4px;
  width: 10%;
  position: absolute;
  background-color: #70c1b3;
  bottom: -15px;
  left: 45%;
}
section.events-content .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.events-content .slant {
    height: 90px;
  }
}
section.events-content p.calendar-intro {
  text-align: center;
}

.tour-dates--empty {
  background: #edf7f6;
  text-align: center;
  margin-top: 2rem;
  padding: 2rem;
}
.tour-dates--empty a {
  margin-top: 2rem;
}

.tribe-common .tribe-events-calendar-month__calendar-event {
  padding: 0 var(--tec-spacer-1);
}
.tribe-common .tribe-events-calendar-month__calendar-event-details {
  border-radius: 2px;
  background: #f1bb6c;
}
.tribe-common .tribe-events-calendar-month__calendar-event-details:hover {
  background: #eda14a;
}
.tribe-common .tribe-events-calendar-month__calendar-event-title-link {
  padding: 4px 6px;
  display: block;
}
.tribe-common .tribe-events-calendar-month__calendar-event-title-link:hover {
  border-color: #e88627;
}
.tribe-common .tribe-events-calendar-month__calendar-event-datetime {
  padding: 0 6px;
  color: #74381a;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day-date {
  padding: var(--tec-spacer-1) var(--tec-spacer-1);
}

section.journal-header-slant {
  background-color: #f1bb6c;
}

.journal-header-slant .slant {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  .journal-header-slant .slant {
    height: 90px;
  }
}

section.journal-wrapper {
  position: relative;
}

article.archive-post:first-of-type {
  padding-top: 0;
}

article.archive-post {
  padding: 1.5rem 0;
}

article.archive-post .article-image-wrapper {
  position: relative;
}

article.archive-post img {
  width: 100%;
}

article.archive-post .image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0);
  transition: 0.2s all ease;
}

article.archive-post:hover .image-overlay {
  background-color: rgba(255, 255, 255, 0.2);
  transition: 0.2s all ease;
}

article.archive-post h1 {
  color: #f1bb6c;
  font-size: 3.129rem;
  line-height: 1.1;
  font-weight: bold;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 992px) {
  article.archive-post h1 {
    font-size: 4.171rem;
    line-height: 1.1;
  }
}

article.archive-post p.meta {
  color: #f1bb6c;
  margin-bottom: 1rem;
}

article.archive-post a {
  color: #f1bb6c;
  margin-top: 1rem;
  transition: 0.2s;
}

article.archive-post a:hover {
  color: #F1CB93;
  transition: 0.2s;
}

section.journal-wrapper .pagination {
  width: 100%;
}

section.journal-wrapper .pagination .pagination-previous {
  float: left;
}

section.journal-wrapper .pagination .pagination-next {
  float: right;
}

section.journal-wrapper .pagination,
section.journal-wrapper .pagination .pagination-previous a,
section.journal-wrapper .pagination .pagination-next a {
  color: #f1bb6c;
  font-family: "Amatic SC", cursive;
  font-size: 1.778rem;
  line-height: 1.1;
  margin: 0;
  font-weight: bold;
  transition: 0.2s all;
}

section.journal-wrapper .pagination .pagination-previous a {
  padding-right: 2rem;
}

section.journal-wrapper .pagination .pagination-previous a:hover {
  color: #F1CB93;
  margin-left: 0rem;
  transition: 0.2s all;
}
@media screen and (min-width: 992px) {
  section.journal-wrapper .pagination .pagination-previous a:hover {
    margin-left: 1rem;
  }
}

section.journal-wrapper .pagination .pagination-next a:hover {
  color: #F1CB93;
  margin-right: 1rem;
  transition: 0.2s all;
}

section.journal-wrapper .slant {
  fill: #ededed;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  section.journal-wrapper .slant {
    height: 90px;
  }
}

section.journal-wrapper {
  padding-top: 20px;
}

.journal-wrapper a.breadcrumbs {
  color: #b1b1b1;
  transition: 0.2s all ease;
  line-height: 2.5rem;
}

.journal-wrapper a.breadcrumbs:hover,
.journal-wrapper a.breadcrumbs:active,
.journal-wrapper a.breadcrumbs:focus {
  color: #ededed;
  transition: 0.2s all ease;
  text-decoration: none;
}

article.post {
  padding-bottom: 2rem;
}

article.post h1 {
  color: #f1bb6c;
  font-size: 3.129rem;
  line-height: 1.1;
  font-weight: bold;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 992px) {
  article.post h1 {
    font-size: 4.171rem;
    line-height: 1.1;
  }
}

article.post p.meta {
  color: #f1bb6c;
  margin-bottom: 1rem;
}

article.post a {
  color: #f1bb6c;
  margin-top: 1rem;
  transition: 0.2s;
}

article.post a:hover {
  color: #F1CB93;
  transition: 0.2s;
}

article.post img {
  width: 100%;
  height: 100%;
}

article.post h2 {
  color: #f1bb6c;
  font-weight: bold;
  font-size: 3.129rem;
  line-height: 1.1;
}

article.post ul li {
  list-style-type: circle;
}

article.post .share {
  text-align: center;
}
@media screen and (min-width: 768px) {
  article.post .share {
    text-align: left;
  }
}

article.post .share h3 {
  color: #f1bb6c;
  font-weight: bold;
  font-family: "Amatic SC", cursive;
  font-size: 2.353rem;
  line-height: 1.1;
}

article.post .share a {
  margin-top: 0;
}

article.post .share img {
  float: initial;
  height: 30px;
  width: 30px;
  margin: 15px;
}
@media screen and (min-width: 768px) {
  article.post .share img {
    float: left;
    margin: 0;
    margin-right: 25px;
  }
}

.flexslider {
  width: 100%;
  margin: 0;
  border: 0;
}

.flex-direction-nav a {
  width: 30px;
  height: 74px;
}

.flex-direction-nav .flex-prev {
  opacity: 0.7;
  left: 10px;
}

.flex-direction-nav .flex-next {
  opacity: 0.7;
  right: 10px;
}

.flex-direction-nav a.flex-prev:before {
  width: 22px;
  content: url("images/arrow_white.svg");
  transform: scaleX(-1);
}

.flex-direction-nav a.flex-next:before {
  width: 22px;
  content: url("images/arrow_white.svg");
}

.flexslider ul {
  width: 100%;
}

.slides li {
  width: 100%;
}

.flexslider .slides > li:first-child {
  display: block;
  -webkit-backface-visibility: visible;
}

.home-header-slider-content {
  height: 38rem;
  width: 100%;
  background-size: cover;
  background-position: 50% 50%;
}
@media screen and (min-width: 480px) {
  .home-header-slider-content {
    height: 36rem;
  }
}
@media screen and (min-width: 1200px) {
  .home-header-slider-content {
    height: 30rem;
  }
}

#header-slider {
  position: relative;
}
#header-slider::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 99;
}
#header-slider svg {
  fill: white;
  display: block;
  width: 100%;
  height: 45px;
  position: absolute;
  z-index: 2000;
  bottom: -1px;
}
@media screen and (min-width: 992px) {
  #header-slider svg {
    height: 90px;
  }
}

.bikes-header-slider-content {
  height: 30rem;
  width: 100%;
  background-size: cover;
  background-position: 50% 50%;
}

ul.comment-list {
  padding-left: 0;
}

article.comment {
  border-top: 1px solid white;
  padding: 2rem 0;
}

article.comment img {
  width: 100%;
  height: auto;
  border: 4px white solid;
}

article.comment h4.author-name {
  font-weight: bold;
  font-family: "Lato", sans-serif;
  margin: 0;
}

article.comment span.date {
  font-size: 0.75rem;
  line-height: 1.25rem;
}

article.comment .comment-text {
  padding-top: 0.5rem;
}

article.comment .comment-footer {
  margin-top: 2rem;
  background: none;
}

article.comment a {
  color: #0892d0;
}

section.testimonials #reply-title {
  font-size: 2.353rem;
  line-height: 1.1;
  font-weight: bold;
}

form#commentform {
  position: relative;
}

form#commentform textarea {
  width: 50%;
  height: 100px;
}

form#commentform textarea,
form#commentform input#author,
form#commentform input#email {
  display: block;
  color: #464646;
  padding: 10px 5px;
  border-color: white;
  border-style: solid;
  border-width: 4px;
  transition: all 0.2s;
}

form#commentform textarea:focus,
form#commentform input#author:focus,
form#commentform input#email:focus {
  border: #f1bb6c 4px solid;
  transition: all 0.2s;
  outline: none;
}

form#commentform .form-submit {
  position: absolute;
  bottom: -70px;
}

form#commentform input[type=file] {
  padding: 10px 0;
  cursor: pointer;
}

form#commentform input[type=submit] {
  padding: 10px 60px;
  background-color: #0892d0;
  color: white;
  border: none;
  transition: 0.2s all;
}

form#commentform input[type=submit]:hover {
  background-color: #136388;
  transition: 0.2s all;
}

section.tour-container .sidebar {
  padding-top: 0rem;
}
@media screen and (min-width: 992px) {
  section.tour-container .sidebar {
    padding-top: 4rem;
  }
}

.sidebar .book-now-sidebar,
.sidebar #book-now-sidebar {
  display: none;
  width: 100%;
  margin-bottom: 1rem;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .sidebar .book-now-sidebar,
.sidebar #book-now-sidebar {
    display: block;
  }
}

.sidebar .coded-widget {
  width: 100%;
  padding: 1rem;
  margin-bottom: 1rem;
}

.sidebar .coded-widget.key-information {
  background-color: #f1bb6c;
  color: white;
  display: none;
}
@media screen and (min-width: 992px) {
  .sidebar .coded-widget.key-information {
    display: block;
  }
}

.sidebar .coded-widget h3 {
  text-align: center;
  font-size: 2.353rem;
  line-height: 1.1;
  font-family: "Amatic SC", cursive;
  font-weight: bold;
  margin-top: 0;
  margin-bottom: 1em;
  position: relative;
}

.sidebar .coded-widget h3:after {
  content: "";
  position: absolute;
  width: 20%;
  height: 4px;
  background-color: white;
  bottom: -0.35em;
  left: 40%;
}

.sidebar .coded-widget.questions {
  background-color: #70c1b3;
  color: white;
  text-align: center;
}

.sidebar .coded-widget.questions a {
  width: 90%;
  text-align: center;
}

.sidebar .coded-widget.vouchers {
  color: #f1bb6c;
  text-align: center;
  border: 4px solid #f1bb6c;
}

.sidebar .coded-widget.vouchers img {
  width: 60%;
  margin: 0 auto;
  transition: 0.5s all ease;
}

.sidebar .coded-widget.vouchers:hover img {
  transform: rotate(10deg);
  transition: 0.5s all ease;
}

.sidebar .coded-widget.vouchers h3:after {
  background-color: #f1bb6c;
}

.sidebar .coded-widget.vouchers p {
  padding-top: 1rem;
}

.sidebar .coded-widget.vouchers h4.price {
  font-size: 3.129rem;
  line-height: 1.1;
  font-family: "Amatic SC", cursive;
  font-weight: bold;
}

.sidebar .coded-widget.vouchers a {
  width: 90%;
  text-align: center;
  padding: 1rem 0;
}

.sidebar .coded-widget.another-tour {
  padding: 0;
  position: relative;
}

.sidebar .coded-widget.another-tour img {
  width: 100%;
  position: relative;
}

.sidebar .coded-widget.another-tour .tour-image-overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0);
  transition: background-color 0.3s ease;
}

.sidebar .coded-widget.another-tour:hover .tour-image-overlay {
  background-color: rgba(255, 255, 255, 0.2);
  transition: background-color 0.3s ease;
}

.sidebar .coded-widget.another-tour .heading {
  background-color: #70c1b3;
  color: white;
  padding: 0.5rem;
}

.sidebar .coded-widget.another-tour .heading h4 {
  text-align: center;
  font-size: 2.353rem;
  line-height: 1.1;
  font-family: "Amatic SC", cursive;
  font-weight: bold;
  margin-top: 0;
  position: relative;
  line-height: 1.1;
}

.sidebar .coded-widget.categories {
  border: 4px #f1bb6c solid;
  text-align: center;
  color: #f1bb6c;
}

.sidebar .coded-widget.categories h2 {
  font-size: 2.353rem;
  line-height: 1.1;
  font-weight: bold;
  margin: 0;
  position: relative;
  margin-bottom: 1.5rem;
  line-height: 3rem;
}

.sidebar .coded-widget.categories h2:after {
  content: "";
  height: 4px;
  background-color: #f1bb6c;
  width: 80px;
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
}

.sidebar .coded-widget.categories li {
  list-style-type: none;
}

.sidebar .coded-widget.categories li a {
  color: #f1bb6c;
  transition: 0.2s all;
}

.sidebar .coded-widget.categories li a:hover {
  color: #F1CB93;
  transition: 0.2s all;
}

.woocommerce a.remove {
  color: #0892d0 !important;
}

.woocommerce a.remove:hover {
  background: #0892d0;
}

.woocommerce .woocommerce-message {
  border-top-color: #f1bb6c;
  border-top: 4px solid #f1bb6c;
  color: #464646;
  background-color: #F9F9F9;
}

.woocommerce .woocommerce-message:before {
  color: #f1bb6c;
}

.woocommerce table.shop_table.cart {
  border: 0;
}

.woocommerce table.shop_table.cart tr {
  transition: 0.2s all ease;
}

.woocommerce table.shop_table.cart tr:hover:not(:last-child) {
  background-color: #ededed;
  transition: 0.2s all ease;
}

.woocommerce table.shop_table.cart td {
  border-top: 3px solid #ededed;
  padding: 12px 10px;
}

.woocommerce p.product-description {
  font-size: 16px;
  color: #b1b1b1;
  margin-bottom: 0;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
  box-sizing: border-box;
  border: 4px solid #f1bb6c;
  padding: 10px 10px;
  outline: 0;
  width: 160px;
}

.woocommerce .coupon input,
.woocommerce .actions input {
  width: 100% !important;
}
@media screen and (min-width: 480px) {
  .woocommerce .coupon input,
.woocommerce .actions input {
    width: initial !important;
  }
}

.woocommerce a.button,
.woocommerce .coupon input.button,
.woocommerce input[type=submit] {
  padding: 16px 23px;
  background-color: #f1bb6c;
  color: white;
  border-radius: 0;
  font-weight: normal;
  transition: all 0.2s;
}

.woocommerce a.button:hover,
.woocommerce .coupon input.button:hover,
.woocommerce input[type=submit]:hover {
  background-color: #FFD596;
  color: white;
  transition: all 0.2s;
}

.woocommerce-cart p.refund-policy {
  text-align: right;
}

.woocommerce .cart-collaterals h2 {
  color: #70c1b3;
  font-size: 3.129rem;
  line-height: 1.1;
  font-weight: bold;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background-color: #0892d0;
  border-radius: 0;
  transition: all 0.2s;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background-color: #136388;
  transition: all 0.2s;
}

.woocommerce-cart-form .button {
  height: 47px;
}

.return-to-shop {
  text-align: center;
}

.woocommerce .woocommerce-info {
  border-top-color: #f1bb6c;
}

.woocommerce .woocommerce-info:before {
  color: #f1bb6c;
}

.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {
  border-radius: 0;
}

.woocommerce #customer_details input,
.woocommerce #customer_details textarea {
  padding: 10px;
  border: 2px solid #ededed;
  transition: 0.2s all;
}

.woocommerce #customer_details input:focus,
.woocommerce #customer_details textarea:focus {
  border: 2px solid #f1bb6c;
  transition: 0.2s all;
}

.woocommerce table.shop_table {
  border: 0;
  border-collapse: collapse;
}

.woocommerce table.woocommerce-checkout-review-order-table tr.cart_item {
  border-top: 3px solid #ededed;
  padding: 12px 10px;
}

.woocommerce table.woocommerce-checkout-review-order-table tr.cart_item:last-of-type {
  border-bottom: 3px solid #ededed;
}

.woocommerce table.woocommerce-checkout-review-order-table tr.cart_item:hover {
  background-color: #ededed;
  transition: 0.2s all ease;
}

.woocommerce table.woocommerce-checkout-review-order-table tr.cart-subtotal:hover {
  background-color: #ededed;
}

.woocommerce table.woocommerce-checkout-review-order-table tfoot {
  background-color: #ededed;
}

.woocommerce-checkout #payment {
  background: #ededed;
  border-radius: 0px;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
  background-color: #0892d0;
  color: white;
  width: 266px;
  font-size: 1.4rem;
  padding: 1rem;
  transition: 0.2s all;
}

.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover {
  background-color: #136388;
  transition: 0.2s all;
}

.woocommerce form .form-row {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .woocommerce form .form-row {
    width: initial;
  }
}

@media screen and (min-width: 480px) {
  #billing_first_name_field,
#billing_last_name_field {
    width: 50%;
  }
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  padding: 10px;
  border-color: gainsboro;
  border-width: 2px;
}

.select2-container {
  --height: 43px;
}
.select2-container .select2-selection--single {
  height: var(--height);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: var(--height);
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: var(--height);
}

.showcoupon {
  text-decoration: underline;
}
.showcoupon:hover {
  text-decoration: none;
}

.woocommerce h2 {
  color: #70c1b3;
  font-size: 2.353rem;
  line-height: 1.1;
  font-weight: bold;
}

.woocommerce-thankyou-order-details {
  padding: 2rem;
}

.woocommerce {
  overflow: hidden;
}

@media screen and (min-width: 1200px) {
  .wp-block-table.is-narrow {
    max-width: 600px;
  }
}
.wp-block-table td, .wp-block-table th {
  border: 0;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}

.splide__arrow:disabled {
  opacity: 0.3;
}

.splide__arrow:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__arrow--prev {
  left: 1em;
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 1em;
}

.splide.is-focus-in .splide__arrow:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  transition: transform 0.2s linear;
  width: 8px;
}

.splide__pagination__page.is-active {
  background: #70c1b3;
  transform: scale(1.4);
  z-index: 1;
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
  outline: 0;
}

@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset: -3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }

  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}

.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide__pagination--ttb {
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

.splide__slide {
  height: 350px;
}
@media screen and (min-width: 768px) {
  .splide__slide {
    height: 500px;
  }
}

.wp-block .splide {
  visibility: visible;
}
.wp-block .splide__slide {
  height: 500px;
  margin-right: 1em;
}

/*# sourceMappingURL=style.css.map */
