/*
Theme Name: Garden of Wales
Theme URI: http://properdesign.rs
Description: Garden of Wales custom theme
Author: Proper Design
Author URI: http://properdesign.rs
Version: 1.0
Tags:

Based on HTML5 Reset Theme by Monkey Do! + @ckhicks http://monkeydo.biz
*/
/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,400italic");
@import url("https://fonts.googleapis.com/css?family=Merriweather:400,300,300italic,400italic");
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* Fixes */
.chromeframe {
  position: absolute;
  top: 0;
}

/* Mozilla dosen't style place holders by default */
input:-moz-placeholder {
  color: #a9a9a9;
}

textarea:-moz-placeholder {
  color: #a9a9a9;
}

.icon-youtube, .icon-wheelchair, .icon-welsh-gov, .icon-web, .icon-visible, .icon-twitter, .icon-tree, .icon-tie, .icon-tickets, .icon-tick, .icon-teacher, .icon-star, .icon-speech, .icon-shopping, .icon-search, .icon-scouts, .icon-science, .icon-school-university, .icon-school-primary, .icon-save, .icon-play, .icon-phone, .icon-paperclip, .icon-notice, .icon-mushrooms, .icon-menu, .icon-map-pin, .icon-map, .icon-logo-landscape-en-colour, .icon-logo-landscape-en, .icon-logo-landscape-cy, .icon-logo, .icon-learning, .icon-lab, .icon-instagram, .icon-hotel, .icon-history, .icon-hand-leaf, .icon-gtf, .icon-group, .icon-flower, .icon-filter, .icon-facebook, .icon-email, .icon-dragon, .icon-download, .icon-doc-pdf, .icon-doc-doc, .icon-diary, .icon-cross, .icon-corn, .icon-clock, .icon-checklist, .icon-calendar, .icon-bus, .icon-books, .icon-book, .icon-biophillic, .icon-biology, .icon-bifocals, .icon-bee, .icon-bed, .icon-barcode, .icon-art, .icon-arrow-up, .icon-arrow-right, ul.is-filter-dropdown .current_page_item:before, .icon-arrow-left, .icon-arrow-down, .drop-down-menu-toggle, .icon-aim {
  background: url("svg/sprite.css.svg") no-repeat;
}

.icon-aim {
  background-position: 0 0;
}

.icon-aim-dims {
  width: 100px;
  height: 100px;
}

.icon-aim {
  background-position: 0.7365397363% 0;
}

.icon-aim-dims {
  width: 100px;
  height: 100px;
}

.icon-arrow-down, .drop-down-menu-toggle {
  background-position: 1.4730794726% 0;
}

.icon-arrow-down-dims {
  width: 100px;
  height: 63.26px;
}

.icon-arrow-down, .drop-down-menu-toggle {
  background-position: 2.209619209% 0;
}

.icon-arrow-down-dims {
  width: 100px;
  height: 63.26px;
}

.icon-arrow-left {
  background-position: 2.9382080163% 0;
}

.icon-arrow-left-dims {
  width: 63.26px;
  height: 100px;
}

.icon-arrow-left {
  background-position: 3.4083212989% 0;
}

.icon-arrow-left-dims {
  width: 63.26px;
  height: 100px;
}

.icon-arrow-right, ul.is-filter-dropdown .current_page_item:before {
  background-position: 3.8784345815% 0;
}

.icon-arrow-right-dims {
  width: 63.26px;
  height: 100px;
}

.icon-arrow-right, ul.is-filter-dropdown .current_page_item:before {
  background-position: 4.3485478641% 0;
}

.icon-arrow-right-dims {
  width: 63.26px;
  height: 100px;
}

.icon-arrow-up {
  background-position: 4.8317006703% 0;
}

.icon-arrow-up-dims {
  width: 100px;
  height: 63.26px;
}

.icon-arrow-up {
  background-position: 5.5682404066% 0;
}

.icon-arrow-up-dims {
  width: 100px;
  height: 63.26px;
}

.icon-art {
  background-position: 6.3047801429% 0;
}

.icon-art-dims {
  width: 100px;
  height: 100px;
}

.icon-art {
  background-position: 7.0413198792% 0;
}

.icon-art-dims {
  width: 100px;
  height: 100px;
}

.icon-barcode {
  background-position: 7.7778596155% 0;
}

.icon-barcode-dims {
  width: 100px;
  height: 72.2px;
}

.icon-barcode {
  background-position: 8.5143993518% 0;
}

.icon-barcode-dims {
  width: 100px;
  height: 72.2px;
}

.icon-bed {
  background-position: 9.2509390882% 0;
}

.icon-bed-dims {
  width: 100px;
  height: 60.9px;
}

.icon-bed {
  background-position: 9.9874788245% 0;
}

.icon-bed-dims {
  width: 100px;
  height: 60.9px;
}

.icon-bee {
  background-position: 10.7240185608% 0;
}

.icon-bee-dims {
  width: 100px;
  height: 98.49px;
}

.icon-bee {
  background-position: 11.4605582971% 0;
}

.icon-bee-dims {
  width: 100px;
  height: 98.49px;
}

.icon-bifocals {
  background-position: 12.1970980334% 0;
}

.icon-bifocals-dims {
  width: 100px;
  height: 50.9px;
}

.icon-bifocals {
  background-position: 12.9336377698% 0;
}

.icon-bifocals-dims {
  width: 100px;
  height: 50.9px;
}

.icon-biology {
  background-position: 13.6701775061% 0;
}

.icon-biology-dims {
  width: 100px;
  height: 89.24px;
}

.icon-biology {
  background-position: 14.4067172424% 0;
}

.icon-biology-dims {
  width: 100px;
  height: 89.24px;
}

.icon-biophillic {
  background-position: 15.1432569787% 0;
}

.icon-biophillic-dims {
  width: 100px;
  height: 103.45px;
}

.icon-biophillic {
  background-position: 15.879796715% 0;
}

.icon-biophillic-dims {
  width: 100px;
  height: 103.45px;
}

.icon-book {
  background-position: 16.6163364514% 0;
}

.icon-book-dims {
  width: 100px;
  height: 78.7px;
}

.icon-book {
  background-position: 17.3528761877% 0;
}

.icon-book-dims {
  width: 100px;
  height: 78.7px;
}

.icon-books {
  background-position: 18.089415924% 0;
}

.icon-books-dims {
  width: 100px;
  height: 78.06px;
}

.icon-books {
  background-position: 18.8259556603% 0;
}

.icon-books-dims {
  width: 100px;
  height: 78.06px;
}

.icon-bus {
  background-position: 19.4841969665% 0;
}

.icon-bus-dims {
  width: 45.44px;
  height: 45.44px;
}

.icon-bus {
  background-position: 19.8216491729% 0;
}

.icon-bus-dims {
  width: 45.44px;
  height: 45.44px;
}

.icon-calendar {
  background-position: 20.240111954% 0;
}

.icon-calendar-dims {
  width: 100px;
  height: 98.2px;
}

.icon-calendar {
  background-position: 20.9766516904% 0;
}

.icon-calendar-dims {
  width: 100px;
  height: 98.2px;
}

.icon-checklist {
  background-position: 21.6743987707% 0;
}

.icon-checklist-dims {
  width: 75.7px;
  height: 100px;
}

.icon-checklist {
  background-position: 22.2331688883% 0;
}

.icon-checklist-dims {
  width: 75.7px;
  height: 100px;
}

.icon-clock {
  background-position: 22.8327318259% 0;
}

.icon-clock-dims {
  width: 100px;
  height: 100px;
}

.icon-clock {
  background-position: 23.5692715622% 0;
}

.icon-clock-dims {
  width: 100px;
  height: 100px;
}

.icon-corn {
  background-position: 24.2025622446% 0;
}

.icon-corn-dims {
  width: 42.08px;
  height: 100px;
}

.icon-corn {
  background-position: 24.5179289647% 0;
}

.icon-corn-dims {
  width: 42.08px;
  height: 100px;
}

.icon-cross {
  background-position: 24.9392354718% 0;
}

.icon-cross-dims {
  width: 100px;
  height: 100px;
}

.icon-cross {
  background-position: 25.6757752081% 0;
}

.icon-cross-dims {
  width: 100px;
  height: 100px;
}

.icon-diary {
  background-position: 26.4123149444% 0;
}

.icon-diary-dims {
  width: 100px;
  height: 93.49px;
}

.icon-diary {
  background-position: 27.1488546807% 0;
}

.icon-diary-dims {
  width: 100px;
  height: 93.49px;
}

.icon-doc-doc {
  background-position: 27.8597446558% 0;
}

.icon-doc-doc-dims {
  width: 87.5px;
  height: 100px;
}

.icon-doc-doc {
  background-position: 28.5073034328% 0;
}

.icon-doc-doc-dims {
  width: 87.5px;
  height: 100px;
}

.icon-doc-pdf {
  background-position: 29.1548622098% 0;
}

.icon-doc-pdf-dims {
  width: 87.5px;
  height: 100px;
}

.icon-doc-pdf {
  background-position: 29.8024209868% 0;
}

.icon-doc-pdf-dims {
  width: 87.5px;
  height: 100px;
}

.icon-download {
  background-position: 30.4384445352% 0;
}

.icon-download-dims {
  width: 82.35px;
  height: 100px;
}

.icon-download {
  background-position: 31.0489788262% 0;
}

.icon-download-dims {
  width: 82.35px;
  height: 100px;
}

.icon-dragon {
  background-position: 31.7006702512% 0;
}

.icon-dragon-dims {
  width: 100px;
  height: 64.42px;
}

.icon-dragon {
  background-position: 32.4372099875% 0;
}

.icon-dragon-dims {
  width: 100px;
  height: 64.42px;
}

.icon-email {
  background-position: 33.1737497238% 0;
}

.icon-email-dims {
  width: 100px;
  height: 71.43px;
}

.icon-email {
  background-position: 33.9102894601% 0;
}

.icon-email-dims {
  width: 100px;
  height: 71.43px;
}

.icon-facebook {
  background-position: 34.6468291964% 0;
}

.icon-facebook-dims {
  width: 100px;
  height: 100px;
}

.icon-facebook {
  background-position: 35.3833689328% 0;
}

.icon-facebook-dims {
  width: 100px;
  height: 100px;
}

.icon-filter {
  background-position: 36.1199086691% 0;
}

.icon-filter-dims {
  width: 100px;
  height: 95.23px;
}

.icon-filter {
  background-position: 36.8564484054% 0;
}

.icon-filter-dims {
  width: 100px;
  height: 95.23px;
}

.icon-flower {
  background-position: 37.5929881417% 0;
}

.icon-flower-dims {
  width: 100px;
  height: 100px;
}

.icon-flower {
  background-position: 38.329527878% 0;
}

.icon-flower-dims {
  width: 100px;
  height: 100px;
}

.icon-group {
  background-position: 39.0660676143% 0;
}

.icon-group-dims {
  width: 100px;
  height: 84.2px;
}

.icon-group {
  background-position: 39.8026073507% 0;
}

.icon-group-dims {
  width: 100px;
  height: 84.2px;
}

.icon-gtf {
  background-position: 40.539147087% 0;
}

.icon-gtf-dims {
  width: 100px;
  height: 89.7px;
}

.icon-gtf {
  background-position: 41.2756868233% 0;
}

.icon-gtf-dims {
  width: 100px;
  height: 89.7px;
}

.icon-hand-leaf {
  background-position: 42.0122265596% 0;
}

.icon-hand-leaf-dims {
  width: 100px;
  height: 98.7px;
}

.icon-hand-leaf {
  background-position: 42.7487662959% 0;
}

.icon-hand-leaf-dims {
  width: 100px;
  height: 98.7px;
}

.icon-history {
  background-position: 43.4853060323% 0;
}

.icon-history-dims {
  width: 100px;
  height: 100px;
}

.icon-history {
  background-position: 44.2218457686% 0;
}

.icon-history-dims {
  width: 100px;
  height: 100px;
}

.icon-hotel {
  background-position: 44.9583855049% 0;
}

.icon-hotel-dims {
  width: 100px;
  height: 60.94px;
}

.icon-hotel {
  background-position: 45.6949252412% 0;
}

.icon-hotel-dims {
  width: 100px;
  height: 60.94px;
}

.icon-instagram {
  background-position: 46.4314649775% 0;
}

.icon-instagram-dims {
  width: 100px;
  height: 100px;
}

.icon-instagram {
  background-position: 47.1680047139% 0;
}

.icon-instagram-dims {
  width: 100px;
  height: 100px;
}

.icon-lab {
  background-position: 47.9045444502% 0;
}

.icon-lab-dims {
  width: 100px;
  height: 76.66px;
}

.icon-lab {
  background-position: 48.6410841865% 0;
}

.icon-lab-dims {
  width: 100px;
  height: 76.66px;
}

.icon-learning {
  background-position: 49.3240384792% 0;
}

.icon-learning-dims {
  width: 85.25px;
  height: 100px;
}

.icon-learning {
  background-position: 49.9567752497% 0;
}

.icon-learning-dims {
  width: 85.25px;
  height: 100px;
}

.icon-logo {
  background-position: 50.6444722693% 0;
}

.icon-logo-dims {
  width: 100px;
  height: 100px;
}

.icon-logo-landscape-cy {
  background-position: 52.2468544038% 0;
}

.icon-logo-landscape-cy-dims {
  width: 325px;
  height: 100px;
}

.icon-logo-landscape-cy {
  background-position: 54.6809466747% 0;
}

.icon-logo-landscape-cy-dims {
  width: 325px;
  height: 100px;
}

.icon-logo-landscape-en {
  background-position: 57.1150389455% 0;
}

.icon-logo-landscape-en-dims {
  width: 325px;
  height: 100px;
}

.icon-logo-landscape-en {
  background-position: 59.5491312163% 0;
}

.icon-logo-landscape-en-dims {
  width: 325px;
  height: 100px;
}

.icon-logo-landscape-en-colour {
  background-position: 61.8812621504% 0;
}

.icon-logo-landscape-en-colour-dims {
  width: 303px;
  height: 100.6px;
}

.icon-map {
  background-position: 63.1877439788% 0;
}

.icon-map-dims {
  width: 100px;
  height: 87.5px;
}

.icon-map {
  background-position: 63.9242837151% 0;
}

.icon-map-dims {
  width: 100px;
  height: 87.5px;
}

.icon-map-pin {
  background-position: 64.5130473762% 0;
}

.icon-map-pin-dims {
  width: 68.9px;
  height: 100px;
}

.icon-map-pin {
  background-position: 65.0200983238% 0;
}

.icon-map-pin-dims {
  width: 68.9px;
  height: 100px;
}

.icon-menu {
  background-position: 65.6772482875% 0;
}

.icon-menu-dims {
  width: 100px;
  height: 100px;
}

.icon-menu {
  background-position: 66.4137880239% 0;
}

.icon-menu-dims {
  width: 100px;
  height: 100px;
}

.icon-mushrooms {
  background-position: 67.1513169524% 0;
}

.icon-mushrooms-dims {
  width: 100.2px;
  height: 98.3px;
}

.icon-mushrooms {
  background-position: 67.8952330446% 0;
}

.icon-mushrooms-dims {
  width: 100.2px;
  height: 98.3px;
}

.icon-notice {
  background-position: 68.6381380275% 0;
}

.icon-notice-dims {
  width: 100px;
  height: 91.5px;
}

.icon-notice {
  background-position: 69.3746777639% 0;
}

.icon-notice-dims {
  width: 100px;
  height: 91.5px;
}

.icon-paperclip {
  background-position: 70.1112175002% 0;
}

.icon-paperclip-dims {
  width: 100px;
  height: 91.11px;
}

.icon-paperclip {
  background-position: 70.8477572365% 0;
}

.icon-paperclip-dims {
  width: 100px;
  height: 91.11px;
}

.icon-phone {
  background-position: 71.5842969728% 0;
}

.icon-phone-dims {
  width: 100px;
  height: 99.93px;
}

.icon-phone {
  background-position: 72.3208367091% 0;
}

.icon-phone-dims {
  width: 100px;
  height: 100px;
}

.icon-play {
  background-position: 73.0573764455% 0;
}

.icon-play-dims {
  width: 100px;
  height: 100px;
}

.icon-play {
  background-position: 73.7939161818% 0;
}

.icon-play-dims {
  width: 100px;
  height: 100px;
}

.icon-save {
  background-position: 74.5304559181% 0;
}

.icon-save-dims {
  width: 100px;
  height: 91.63px;
}

.icon-save {
  background-position: 75.2669956544% 0;
}

.icon-save-dims {
  width: 100px;
  height: 91.63px;
}

.icon-school-primary {
  background-position: 76.0035353907% 0;
}

.icon-school-primary-dims {
  width: 100px;
  height: 83.2px;
}

.icon-school-primary {
  background-position: 76.7400751271% 0;
}

.icon-school-primary-dims {
  width: 100px;
  height: 83.2px;
}

.icon-school-university {
  background-position: 77.380864806% 0;
}

.icon-school-university-dims {
  width: 83.2px;
  height: 100px;
}

.icon-school-university {
  background-position: 77.9987935677% 0;
}

.icon-school-university-dims {
  width: 83.2px;
  height: 100px;
}

.icon-science {
  background-position: 78.7140016204% 0;
}

.icon-science-dims {
  width: 100px;
  height: 100px;
}

.icon-science {
  background-position: 79.4505413567% 0;
}

.icon-science-dims {
  width: 100px;
  height: 100px;
}

.icon-scouts {
  background-position: 80.187081093% 0;
}

.icon-scouts-dims {
  width: 100px;
  height: 93.9px;
}

.icon-scouts {
  background-position: 80.9236208293% 0;
}

.icon-scouts-dims {
  width: 100px;
  height: 93.9px;
}

.icon-search {
  background-position: 81.6601605657% 0;
}

.icon-search-dims {
  width: 100px;
  height: 100px;
}

.icon-search {
  background-position: 82.396700302% 0;
}

.icon-search-dims {
  width: 100px;
  height: 100px;
}

.icon-shopping {
  background-position: 83.1332400383% 0;
}

.icon-shopping-dims {
  width: 100px;
  height: 94.12px;
}

.icon-shopping {
  background-position: 83.8697797746% 0;
}

.icon-shopping-dims {
  width: 100px;
  height: 94.12px;
}

.icon-speech {
  background-position: 84.6063195109% 0;
}

.icon-speech-dims {
  width: 100px;
  height: 95.99px;
}

.icon-speech {
  background-position: 85.3428592473% 0;
}

.icon-speech-dims {
  width: 100px;
  height: 95.99px;
}

.icon-star {
  background-position: 86.0793989836% 0;
}

.icon-star-dims {
  width: 100px;
  height: 95.01px;
}

.icon-teacher {
  background-position: 86.8159387199% 0;
}

.icon-teacher-dims {
  width: 100px;
  height: 100px;
}

.icon-teacher {
  background-position: 87.5524784562% 0;
}

.icon-teacher-dims {
  width: 100px;
  height: 100px;
}

.icon-tick {
  background-position: 88.2890181925% 0;
}

.icon-tick-dims {
  width: 100px;
  height: 77.87px;
}

.icon-tick {
  background-position: 89.0255579289% 0;
}

.icon-tick-dims {
  width: 100px;
  height: 77.87px;
}

.icon-tickets {
  background-position: 89.7620976652% 0;
}

.icon-tickets-dims {
  width: 100px;
  height: 100px;
}

.icon-tickets {
  background-position: 90.4986374015% 0;
}

.icon-tickets-dims {
  width: 100px;
  height: 100px;
}

.icon-tie {
  background-position: 90.7771792899% 0;
}

.icon-tie-dims {
  width: 31.5px;
  height: 100px;
}

.icon-tie {
  background-position: 91.0116888351% 0;
}

.icon-tie-dims {
  width: 31.5px;
  height: 100px;
}

.icon-tree {
  background-position: 91.4587341218% 0;
}

.icon-tree-dims {
  width: 63.21px;
  height: 100px;
}

.icon-tree {
  background-position: 91.9288456778% 0;
}

.icon-tree-dims {
  width: 63.21px;
  height: 100px;
}

.icon-twitter {
  background-position: 92.6493334315% 0;
}

.icon-twitter-dims {
  width: 100px;
  height: 81.2px;
}

.icon-twitter {
  background-position: 93.3858731679% 0;
}

.icon-twitter-dims {
  width: 100px;
  height: 81.2px;
}

.icon-visible {
  background-position: 94.1224129042% 0;
}

.icon-visible-dims {
  width: 100px;
  height: 62.5px;
}

.icon-visible {
  background-position: 94.8589526405% 0;
}

.icon-visible-dims {
  width: 100px;
  height: 62.5px;
}

.icon-web {
  background-position: 95.5954923768% 0;
}

.icon-web-dims {
  width: 100px;
  height: 100px;
}

.icon-web {
  background-position: 96.3320321131% 0;
}

.icon-web-dims {
  width: 100px;
  height: 100px;
}

.icon-welsh-gov {
  background-position: 97.1343917216% 0;
}

.icon-welsh-gov-dims {
  width: 109.2px;
  height: 35.9px;
}

.icon-wheelchair {
  background-position: 97.8310641788% 0;
}

.icon-wheelchair-dims {
  width: 93.38px;
  height: 100px;
}

.icon-wheelchair {
  background-position: 98.5230741143% 0;
}

.icon-wheelchair-dims {
  width: 93.38px;
  height: 100px;
}

.icon-youtube {
  background-position: 99.2634602637% 0;
}

.icon-youtube-dims {
  width: 100px;
  height: 100px;
}

.icon-youtube {
  background-position: 100% 0;
}

.icon-youtube-dims {
  width: 100px;
  height: 100px;
}

@-webkit-viewport {
  width: device-width;
}
@-moz-viewport {
  width: device-width;
}
@-ms-viewport {
  width: device-width;
}
@-o-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}
html {
  min-width: 320px;
  box-sizing: border-box;
}

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

.breadcrumbs {
  font-family: "Georgia", serif;
  font-weight: 300;
  font-style: italic;
  font-size: 0.9em;
  margin-bottom: 0.5em;
}

.group:after, .what-to-see-list:after, .listing-links:after, .listings:after, .admissions-pricing-table tr:after, .team-member-content:after, .key-contact-content:after, .eo-booking-field-row:after, .further-reading-list:after, .further-reading-wrapper:after, .module:after, .module-small:after, .next-prev-post-list:after, .visitor-information-footer:after, #visitor-information-footer-wrapper:after, .site-header:after, form:after {
  content: "";
  display: table;
  clear: both;
}

.visually-hidden,
.screen-reader-only,
.screen-reader-text {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

svg {
  fill: currentColor;
}

/* A Linux- and Windows-friendly sans-serif font stack: http://prospects.mhurrell.co.uk/post/updating-the-helvetica-font-stack */
html, body {
  color: #333;
}

body {
  background-color: #fafafa;
}

a {
  color: #21778a;
  cursor: pointer;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

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

/*	j.mp/webkit-tap-highlight-color */
a:link {
  -webkit-tap-highlight-color: #21778a;
}

svg {
  fill: currentColor;
}

.no-pointer {
  pointer-events: none;
}

html {
  font-family: "Source Sans Pro", Freesans, sans-serif;
  font-weight: 500;
  line-height: 1.85;
  font-size: 1.1em;
}

h1 {
  font-family: "Georgia", serif;
  font-size: 1.5em;
  font-weight: 300;
}
@media screen and (min-width: 769px) {
  h1 {
    font-size: 2em;
  }
}

h2 {
  font-size: 1.25em;
}
@media screen and (min-width: 769px) {
  h2 {
    font-size: 1.5em;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: black;
  margin: 0;
  line-height: 1.5em;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  color: currentColor;
  text-decoration: none;
  cursor: pointer;
}

p {
  margin: 0.75em 0 1.5em 0;
}

.small-excerpt {
  font-size: 0.8em;
  margin: 0.5em 0;
}

blockquote {
  color: black;
  font-weight: 300;
  font-style: italic;
  font-size: 1.2em;
  margin: 2.5em 0 2.5em -0.9em;
  font-family: "Georgia", serif;
  border-style: solid;
  border-width: 0px 0px 0px 0.25em;
  padding: 0px 0px 0px 1em;
  border-color: #830000;
}

em {
  font-family: "Georgia", serif;
}

table {
  table-layout: auto;
  width: 100%;
  color: #333;
  font-size: 0.9em;
  margin: 0.5em 0 1em;
  border-collapse: collapse;
}
@media screen and (min-width: 769px) {
  table {
    font-size: 1em;
  }
}

th,
td {
  text-align: left;
  padding: 0.75em 0.5em;
  vertical-align: top;
  line-height: 1.2;
}

th {
  line-height: 1;
}

thead th,
thead td,
tfoot td {
  background: #565565;
  color: white;
}

tbody tr {
  background-color: #f7f7f8;
}

tbody tr:nth-child(odd) {
  background-color: #dbdbe2;
}

fieldset {
  padding: 0;
  border: none;
  margin: 0 0 1.5rem 0;
}

legend {
  font-size: 1.5rem;
  font-weight: 600;
}

label {
  display: block;
  line-height: 2;
  font-size: 1em;
}

select {
  height: 2.6em;
}

input[type=text],
input[type=email],
input[type=password],
input[type=search],
input[type=url],
input[type=tel],
textarea,
input[type=number],
input[type=date],
input[type=month],
input[type=week],
input[type=datetime],
input[type=datetime-local] {
  cursor: pointer;
  -webkit-appearance: none;
  /* remove the strong OSX influence from Webkit */
  position: relative;
  overflow: hidden;
  border-radius: 0.15em;
  border: solid thin #d2d2d2;
  color: #333;
  padding: 0 1em;
  width: 100%;
  height: 3em;
  font-size: 1em;
}
input[type=text].is-valid,
input[type=email].is-valid,
input[type=password].is-valid,
input[type=search].is-valid,
input[type=url].is-valid,
input[type=tel].is-valid,
textarea.is-valid,
input[type=number].is-valid,
input[type=date].is-valid,
input[type=month].is-valid,
input[type=week].is-valid,
input[type=datetime].is-valid,
input[type=datetime-local].is-valid {
  border: solid thin;
}
input[type=text].is-error,
input[type=email].is-error,
input[type=password].is-error,
input[type=search].is-error,
input[type=url].is-error,
input[type=tel].is-error,
textarea.is-error,
input[type=number].is-error,
input[type=date].is-error,
input[type=month].is-error,
input[type=week].is-error,
input[type=datetime].is-error,
input[type=datetime-local].is-error {
  border: solid thin;
}
input[type=text]:focus, input[type=text]:active,
input[type=email]:focus,
input[type=email]:active,
input[type=password]:focus,
input[type=password]:active,
input[type=search]:focus,
input[type=search]:active,
input[type=url]:focus,
input[type=url]:active,
input[type=tel]:focus,
input[type=tel]:active,
textarea:focus,
textarea:active,
input[type=number]:focus,
input[type=number]:active,
input[type=date]:focus,
input[type=date]:active,
input[type=month]:focus,
input[type=month]:active,
input[type=week]:focus,
input[type=week]:active,
input[type=datetime]:focus,
input[type=datetime]:active,
input[type=datetime-local]:focus,
input[type=datetime-local]:active {
  border-radius: 0.15em;
  outline: none;
  border: solid thin #21778a;
}
input[type=text]:disabled,
input[type=email]:disabled,
input[type=password]:disabled,
input[type=search]:disabled,
input[type=url]:disabled,
input[type=tel]:disabled,
textarea:disabled,
input[type=number]:disabled,
input[type=date]:disabled,
input[type=month]:disabled,
input[type=week]:disabled,
input[type=datetime]:disabled,
input[type=datetime-local]:disabled {
  outline: none;
  cursor: not-allowed;
}

select {
  background-color: white;
  border-radius: 0.15em;
  border: solid thin #d2d2d2;
  color: #333;
  padding: 0 1em;
  width: 100%;
  height: 3em;
  font-size: 1em;
}

input[type=checkbox] {
  cursor: pointer;
}

textarea {
  min-height: 15em;
}

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

.select-wrapper {
  position: relative;
  min-width: 12em;
}
.select-wrapper:after {
  width: 2em;
  height: 3em;
  border-radius: 0 0.15em 0.15em 0;
  border: 1px solid #eea600;
  pointer-events: none;
  content: "";
  position: absolute;
  background: url("_/svg/src/black/arrow-down.svg") no-repeat #f1b708;
  background-size: 12px;
  background-position: 50%;
  padding: 0 1em;
  top: 0;
  bottom: 0;
  right: 0;
}
.select-wrapper select {
  -webkit-appearance: none;
  /* remove the strong OSX influence from Webkit */
}

.input-wrapper {
  display: flex;
  flex-wrap: nowrap;
}
.input-wrapper input {
  flex-grow: 1;
  border: none;
  border-radius: 0.15em;
}
.input-wrapper input:focus, .input-wrapper input:active {
  border: none;
}
.input-wrapper input[type=submit],
.input-wrapper .button,
.input-wrapper .woocommerce #respond input#submit.alt,
.woocommerce #respond .input-wrapper input#submit.alt,
.input-wrapper .woocommerce a.button.alt,
.woocommerce .input-wrapper a.button.alt,
.input-wrapper .woocommerce button.button.alt,
.woocommerce .input-wrapper button.button.alt,
.input-wrapper .woocommerce input.button.alt,
.woocommerce .input-wrapper input.button.alt {
  margin: 0;
  flex-grow: 0;
}

.collapsing-menu {
  max-height: 50em;
  overflow: hidden;
  transition: 1s;
  margin: 0;
}

.collapsing-menu-wrapper.is-closed {
  max-height: 0;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .collapsing-menu-wrapper.is-closed {
    max-height: 100em;
    overflow: auto;
  }
}

.filter-bar {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

.filters {
  background-color: #efefef;
  padding: 0.4em 1em;
  border: 1px solid #DADADA;
  margin-bottom: 1em;
}

.filter-title {
  color: #333;
  font-weight: 600;
  display: inline-block;
  margin-right: 1em;
}

.filter-option-wrapper {
  margin-right: 1em;
  display: inline-block;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .filter-option-wrapper {
    width: auto;
  }
}

.filter-extras-title {
  cursor: pointer;
  display: inline;
  background: #fafafa;
  border-radius: 0.15em;
  padding: 0.25em 0.5em;
}

.filter-button {
  text-align: center;
  display: block;
  border: 3px solid #efefef;
  background-color: white;
  padding: 1em;
  cursor: pointer;
}
.filter-button:hover {
  background-color: #fafafa;
}
@media screen and (min-width: 769px) {
  .filter-button {
    display: none;
  }
}

.filter-button-title {
  margin: 0;
}

.filter-icon {
  width: 1em;
  height: 1em;
  margin-left: 1em;
}

.contact-us input,
select {
  margin-bottom: 1em;
}

.contact-details-wrapper {
  color: white;
  display: inline-block;
  width: 100%;
  padding-top: 1em;
}
@media screen and (min-width: 769px) {
  .contact-details-wrapper {
    float: right;
    width: 33.3%;
    padding-top: 0;
    padding-left: 2em;
  }
}

.contact-details {
  padding-left: 2em;
  margin-bottom: 0.5em;
  line-height: 1.6;
}

.contact-details-title {
  margin-bottom: 0.5em;
  color: inherit;
}

.contact-address-telephone-title {
  display: block;
}

.contact-link {
  display: block;
  margin-bottom: 1em;
  color: white;
}
.contact-link a {
  color: white;
}

.contact-link-icon {
  width: 1em;
  height: 1em;
  float: left;
  margin-left: -2em;
  margin-top: 0.5em;
}

.view-on-map {
  display: block;
}

.google-map {
  border: 0.5em solid #e9e9e9;
  margin: 0.5em 0;
}

.visible-now, .featured-flag {
  background-color: #B6CDA4;
  color: #31452b;
  font-size: 0.75em;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 0.28em 0.6em;
  font-weight: 600;
  margin: 0;
}

.visible-now-tick {
  color: #437833;
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
}

.featured-flag {
  background-color: #830000;
  color: white;
}

.page-not-found-wrapper {
  display: block;
  margin: 0 auto;
  text-align: center;
  max-width: 34em;
  padding: 2em;
}

body {
  height: 100vh;
}

.site-wrapper {
  margin: 0 auto;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.site-content-wrapper {
  width: 100%;
}

.site-content {
  padding: 1em;
  width: 100%;
  max-width: 70em;
  margin: 0 auto;
}

.site-content.feature {
  max-width: 100%;
  padding: 0;
}

.entry {
  width: 100%;
  padding: 0 0 2em 0;
  display: inline-block;
  float: left;
}
@media screen and (min-width: 769px) {
  .entry {
    width: 66.6%;
    padding: 0 2em 2em 0;
  }
}

.entry.feature {
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .entry.feature {
    width: 100%;
    padding-right: 0;
  }
}

.sidebar {
  margin-top: -1em;
  margin-bottom: 2em;
  width: 100%;
  display: inline-block;
  float: right;
}
@media screen and (min-width: 769px) {
  .sidebar {
    margin-top: 0;
    margin-bottom: 0;
    width: 33.3%;
    background-color: transparent;
  }
}

.site-header-wrapper {
  width: 100%;
  background-color: #ba060c;
  z-index: 10;
}

.site-header {
  padding: 1em;
  max-width: 70em;
  margin: 0 auto;
  display: grid;
  grid-template-columns: min-content 1fr min-content;
}
@media screen and (min-width: 769px) {
  .site-header {
    padding: 1em;
  }
}
.site-header a {
  color: white;
  text-decoration: none;
}

.site-header-branding-wrapper {
  display: block;
  grid-column: 1;
}

.site-header-logo {
  width: 10.5em;
  height: 3em;
  margin: 0 1em 0 0;
}
@media screen and (min-width: 34em) {
  .site-header-logo {
    width: 12.95em;
    height: 3.7em;
  }
}

.site-header-title {
  font-family: "Source Sans Pro", Freesans, sans-serif;
  padding-left: 1em;
  width: 6em;
  display: block;
  margin: 0;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  color: white;
  float: left;
}
@media screen and (min-width: 34em) {
  .site-header-title {
    font-size: 1.1rem;
  }
}

.site-header-title-translated {
  display: block;
  float: left;
  font-size: 0.8em;
  font-weight: 300;
  margin-top: 0.6em;
}

.accesibility-btn {
  color: black;
  background: white;
  padding: 0.1em 1em;
  margin-left: 1em;
  float: right;
  border-radius: 5px;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 0.6em;
  letter-spacing: 2px;
}
@media screen and (min-width: 769px) {
  .accesibility-btn {
    position: relative;
  }
}

.site-notice {
  background-color: #830000;
  padding: 0.5em;
  color: #fdbaba;
  text-align: center;
  font-size: 1em;
  font-size: 0.8em;
}

.site-notice-icon {
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
  vertical-align: middle;
}

.cookie-law {
  margin-right: 0.5em;
}

.masthead-wrapper {
  width: 100%;
  display: inline-block;
  background-color: #a90006;
  border-bottom: 1px solid #830000;
}

.masthead-bar {
  padding: 0 1em;
  margin: 0 auto;
  max-width: 70em;
  text-align: right;
}

.masthead-link-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.masthead-link-item {
  display: inline-block;
  padding: 0 0.5em;
  border-left: 1px solid #830000;
}

.masthead-link-item:last-of-type {
  padding: 0 0.5em 0 1.5em;
  border-right: 1px solid #830000;
}

.masthead-social-link {
  color: white;
}
.masthead-social-link:hover {
  color: #ffc83c;
}

.social-masthead-icon {
  width: 0.7em;
  height: 0.7em;
}

.search-mobile-button {
  position: relative;
  padding: 0 1em;
  color: white;
  font-size: 0.8em;
}
.search-mobile-button:before {
  content: "";
  position: absolute;
  left: -0.5em;
  top: 0.2em;
  background-size: 0.8em;
  background-image: url("_/svg/src/white/search.svg");
  background-repeat: no-repeat;
  width: 0.9em;
  height: 0.9em;
}

.search-mobile-button.is-closed:before {
  background-image: url("_/svg/src/white/cross.svg");
}

.search-bar-wrapper {
  position: relative;
  display: block;
  top: 0;
  padding: 0.5em;
  background-color: #a90006;
  border-bottom: 1px solid #830000;
  overflow: hidden;
  width: 100%;
  transition: 0.5s;
}

.search-bar-wrapper.is-closed {
  display: none;
}

.search-bar {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  padding: 0.5em;
}
@media screen and (min-width: 769px) {
  .search-bar {
    padding: 1em;
    max-width: 40em;
  }
}

.search-bar-title {
  display: inline-block;
  margin: 0;
  color: white;
  padding-right: 0.5em;
}

.search-bar .select-wrapper {
  position: relative;
  text-align: right;
}
.search-bar .select-wrapper:after {
  border-radius: 0 0.2em 0.2em 0;
  position: absolute;
  background-size: 0.4em;
  background-image: url("_/svg/src/arrow-right.svg");
  height: 2.5em;
}

#search-bar-input {
  display: inline-block;
  font-size: 1em;
  height: 2.5em;
  padding: 0.5em;
  width: 100%;
  padding-right: 0.5em;
  border: 1px solid white;
}

#search-bar-submit {
  width: 5em;
}

#visitor-information-footer-wrapper {
  background: #212a34;
  display: inline-block;
  width: 100%;
  position: relative;
}

.visitor-information-opening-pricing {
  width: 100%;
  display: inline-block;
}
@media screen and (min-width: 769px) {
  .visitor-information-opening-pricing {
    width: 66.6%;
  }
}

.visitor-information-footer {
  display: block;
  max-width: 70em;
  margin: 0 auto;
  width: 100%;
  padding: 1em;
}

.opening-admissions-pricing-title {
  margin-bottom: 0;
  font-weight: 300;
  color: white;
  font-family: "Georgia", serif;
  font-size: 1.5em;
}

.opening-admissions-pricing-sub-title {
  margin-top: 0;
  margin-bottom: 1em;
  color: #90becc;
}

.opening-admissions-pricing-table-wrapper {
  width: 100%;
  display: block;
}

.contact-details-wrapper.no-table {
  width: 100%;
  padding-left: 0;
}
.contact-details-wrapper.no-table .contact-details {
  display: inline-block;
  float: left;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .contact-details-wrapper.no-table .contact-details {
    width: 50%;
  }
}
.contact-details-wrapper.no-table .sponsors-wrapper {
  display: inline-block;
  float: left;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .contact-details-wrapper.no-table .sponsors-wrapper {
    width: 50%;
  }
}
.contact-details-wrapper.no-table .contact-address-telephone {
  display: block;
}
.contact-details-wrapper.no-table .button, .contact-details-wrapper.no-table .woocommerce #respond input#submit.alt, .woocommerce #respond .contact-details-wrapper.no-table input#submit.alt,
.contact-details-wrapper.no-table .woocommerce a.button.alt,
.woocommerce .contact-details-wrapper.no-table a.button.alt,
.contact-details-wrapper.no-table .woocommerce button.button.alt,
.woocommerce .contact-details-wrapper.no-table button.button.alt,
.contact-details-wrapper.no-table .woocommerce input.button.alt,
.woocommerce .contact-details-wrapper.no-table input.button.alt {
  margin-left: 0;
}

.sponsors-wrapper {
  display: inline-block;
  float: right;
}
@media screen and (min-width: 769px) {
  .sponsors-wrapper {
    padding-left: 2em;
  }
}

.sponsors-title {
  color: white;
}

.sponsors-wrapper p {
  font-size: 0.7em;
  color: #90becc;
}

.sponsors-logos {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(14em, 1fr));
}

.sponsors-logo {
  display: block;
}

.site-footer-wrapper {
  display: inline-block;
  width: 100%;
  background: #171e25;
  color: white;
}

.site-footer {
  max-width: 70em;
  margin: 0 auto;
  padding: 1em 1em 3em 1em;
  color: white;
}
@media screen and (min-width: 769px) {
  .site-footer {
    padding: 1em;
  }
}

.site-footer ul {
  padding: 0;
  margin: 0;
  color: white;
}

.site-footer ul li {
  display: block;
  margin: 2em 0;
}

.site-footer ul li a {
  color: white;
  font-weight: 600;
  font-size: 1.25em;
}

.site-footer ul li li {
  display: inline-block;
  float: none;
  margin: 0;
}

.site-footer ul li li a {
  color: #90becc;
  font-weight: 400;
  font-size: 1em;
  padding-right: 0.5em;
}

.site-footer-list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-bottom: 2em;
}
.site-footer-list li {
  margin: 0.5em 0;
}

.footer-list-item-heading {
  font-size: 1.2em;
  font-weight: 600;
}

.site-footer-bar {
  background: #212a34;
  width: 100%;
  display: inline-block;
  padding: 1em;
  font-size: 0.9em;
}

input[type=submit],
button,
.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  cursor: pointer;
  display: inline-block;
  line-height: 1.4;
  border: none;
  padding: 0.8em;
  font-size: 0.9em;
  font-weight: 600;
  color: #6c4a00;
  background-color: #ffc83c;
  border-radius: 0.15em;
  border: 1px solid #eea600;
  margin: 0.5em 0 0.5em 0;
  text-decoration: none;
}
input[type=submit].disabled,
button.disabled,
.button.disabled,
.woocommerce #respond input.disabled#submit.alt,
.woocommerce a.disabled.button.alt,
.woocommerce button.disabled.button.alt,
.woocommerce input.disabled.button.alt {
  opacity: 0.5;
  cursor: not-allowed;
}
input[type=submit]:hover,
button:hover,
.button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background: #ffce53;
  text-decoration: none;
}
@media screen and (min-width: 769px) {
  input[type=submit],
button,
.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    width: auto;
  }
}

.button, .woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  cursor: pointer;
  display: inline-block;
  line-height: 1.4;
  border: none;
  padding: 0.8em;
  font-size: 0.9em;
  font-weight: 600;
  color: #6c4a00;
  background-color: #ffc83c;
  border-radius: 0.15em;
  border: 1px solid #eea600;
  margin: 0.5em 0 0.5em 0;
  text-decoration: none;
}
.button.disabled, .woocommerce #respond input.disabled#submit.alt,
.woocommerce a.disabled.button.alt,
.woocommerce button.disabled.button.alt,
.woocommerce input.disabled.button.alt {
  opacity: 0.5;
  cursor: not-allowed;
}
.button:hover, .woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background: #ffce53;
  text-decoration: none;
}
@media screen and (min-width: 769px) {
  .button, .woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    width: auto;
  }
}

.button.medium, .woocommerce #respond input.medium#submit.alt,
.woocommerce a.medium.button.alt,
.woocommerce button.medium.button.alt,
.woocommerce input.medium.button.alt {
  display: inline-block;
  width: auto;
  font-size: 0.8em;
  margin-top: 0.15em 0;
}

.button.small, .woocommerce #respond input.small#submit.alt,
.woocommerce a.small.button.alt,
.woocommerce button.small.button.alt,
.woocommerce input.small.button.alt {
  display: inline-block;
  width: auto;
  padding: 0.5em;
  font-size: 0.7em;
  margin: 0;
}

.button.large, .woocommerce #respond input.large#submit.alt,
.woocommerce a.large.button.alt,
.woocommerce button.large.button.alt,
.woocommerce input.large.button.alt {
  width: 100%;
  display: inline-block;
  text-align: center;
}

.button.alt, .woocommerce #respond input.alt#submit,
.woocommerce a.alt.button,
.woocommerce button.alt.button,
.woocommerce input.alt.button {
  display: inline-block;
  width: auto;
}

.button.mobile-only, .woocommerce #respond input.mobile-only#submit.alt,
.woocommerce a.mobile-only.button.alt,
.woocommerce button.mobile-only.button.alt,
.woocommerce input.mobile-only.button.alt {
  display: block;
}
@media screen and (min-width: 769px) {
  .button.mobile-only, .woocommerce #respond input.mobile-only#submit.alt,
.woocommerce a.mobile-only.button.alt,
.woocommerce button.mobile-only.button.alt,
.woocommerce input.mobile-only.button.alt {
    display: none;
  }
}

.read-more-link {
  padding: 0.8em 0;
}
.read-more-link:hover {
  text-decoration: underline;
}
.read-more-link svg {
  width: 0.5em;
  height: 0.7em;
  margin-right: 0.5em;
}

img {
  max-width: 100%;
}

img[class*=wp-image-], .wp-post-image, .wp-caption {
  display: block;
  max-width: 100%;
  height: auto;
}

.wp-caption-text {
  padding: 0.5em 0.75em;
  margin: 0;
  background-color: #2a3744;
  color: white;
}

.alignleft {
  float: left;
  margin: 0 1em 0.5em 0;
}

.alignright {
  float: right;
  margin: 0 0 0.5em 1em;
}

.featured-image-wrapper {
  position: relative;
  overflow: hidden;
  margin-left: -1em;
  margin-right: -1em;
  margin-bottom: 1em;
}
@media screen and (min-width: 769px) {
  .featured-image-wrapper {
    margin-right: 0;
  }
}
.featured-image-wrapper img {
  width: 100%;
  height: auto;
}

.media-gallery-wrapper {
  position: relative;
  overflow: hidden;
  background-color: #F0F0F0;
  margin-left: -1em;
  margin-right: -0.5em;
  margin-bottom: 1em;
}
@media screen and (min-width: 769px) {
  .media-gallery-wrapper {
    margin-right: 0;
    margin-bottom: 0;
  }
}

.single-hero-details-wrapper .featured-image-wrapper {
  margin-right: -1em;
  margin-bottom: 0;
}

.single-hero-details-wrapper .media-gallery-wrapper {
  margin-right: -1em;
}

.image-caption, .fotorama__caption__wrap {
  padding: 1em;
  margin: 0;
  background-color: #efefef;
  color: black;
  font-family: "Source Sans Pro", Freesans, sans-serif;
  font-weight: 400;
  font-size: 1em;
}

.image-credit {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.5em;
  font-size: small;
  background: rgba(255, 255, 255, 0.5);
}

.fotorama__stage__frame {
  background: #F0F0F0;
}

.fotorama__caption__wrap .image-credit {
  position: relative;
  display: inline;
  background: transparent;
  padding: 0;
  color: #004411;
}

.fotorama {
  max-width: 100%;
  margin-bottom: 1em;
}

.fotorama__video {
  top: 0;
}

.fotorama__video-play {
  width: 1.5em;
}
.fotorama__video-play:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top: solid 1.5em transparent;
  border-right: solid 2em transparent;
  border-bottom: solid 1.5em transparent;
  border-left: solid 2em rgba(255, 255, 255, 0.7);
  margin-top: 2em;
  margin-left: 2em;
}

.fotorama__video-close {
  position: absolute;
  top: 0.25em;
  right: 0.25em;
  z-index: 10;
  width: 0;
  height: 0;
  border: solid 1em white;
  border-bottom: solid 1em transparent;
  border-left: solid 1em transparent;
}

.fotorama__nav-wrap {
  margin-top: 1em;
  margin-bottom: 1em;
}

.masthead {
  display: block;
  position: relative;
  line-height: 1.3;
  margin: 0.5em 0 1.5em 0;
}
@media screen and (min-width: 769px) {
  .masthead {
    margin-bottom: 2em;
  }
}

.parent-page-title {
  font-size: 1.5em;
  margin-bottom: 0;
}
@media screen and (min-width: 34em) {
  .parent-page-title {
    font-size: 2em;
  }
}

.parent-page-sub-title {
  display: block;
  color: #555;
  font-size: 0.9em;
}

.parent-page-icon {
  opacity: 0.05;
  width: 25em;
  right: -1em;
  height: 19em;
  z-index: -1;
  position: absolute;
}

.language-chooser {
  display: inline-block;
  float: left;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.8em;
}

.language-chooser .active {
  display: none;
}

.language-chooser a {
  padding: 0.1em 0;
  line-height: 2.4;
  color: #fdbaba;
}
.language-chooser a:hover {
  text-decoration: underline;
}

#share-root {
  float: right;
  padding: 0;
}

.share-buttons button {
  margin: 0 0 0 0.2em;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  overflow: hidden;
  outline: none;
}
.share-buttons svg {
  width: 2em;
  height: 2em;
}

.icon-aim a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/aim.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-aim-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/aim.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-arrow-right a:after, ul.is-filter-dropdown .current_page_item:before a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/arrow-right.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-arrow-right-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/arrow-right.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-menu a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/menu.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-menu-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/menu.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-arrow-down a:after, .drop-down-menu-toggle a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/arrow-down.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-arrow-down-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/arrow-down.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-arrow-up a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/arrow-up.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-arrow-up-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/arrow-up.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bed a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/bed.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bed-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/bed.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bifocals a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/bifocals.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bifocals-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/bifocals.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-biophillic a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/biophillic.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-biophillic-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/biophillic.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-book a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/book.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-book-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/book.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-calendar a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/calendar.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-calendar-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/calendar.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-checklist a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/checklist.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-checklist-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/checklist.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-clock a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/clock.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-clock-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/clock.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-flower a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/flower.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-flower-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/flower.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-group a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/group.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-group-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/group.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-gtf a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/gtf.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-gtf-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/gtf.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-hand-leaf a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/hand-leaf.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-hand-leaf-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/hand-leaf.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-map a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/map.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-map-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/map.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-map-pin a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/map-pin.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-map-pin-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/map-pin.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-mushrooms a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/mushrooms.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-mushrooms-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/mushrooms.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-phone a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/phone.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-phone-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/phone.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-paperclip a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/paperclip.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-paperclip-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/paperclip.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-tickets a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/tickets.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-tickets-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/tickets.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-school-primary a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/school-primary.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-school-primary-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/school-primary.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-school-university a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/school-university.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-school-university-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/school-university.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-scouts a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/scouts.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-scouts-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/scouts.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-tie a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/tie.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-tie-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/tie.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-web a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/web.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-web-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/web.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-welsh-gov a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/welsh-gov.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-welsh-gov-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/welsh-gov.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-instagram a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/instagram.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-instagram-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/instagram.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-email a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/email.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-email-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/email.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-download a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/download.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-download-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/download.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-play a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/play.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-play-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/play.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-cross a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/cross.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-cross-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/cross.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-filter a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/filter.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-filter-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/filter.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-visible a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/visible.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-visible-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/visible.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-tick a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/tick.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-tick-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/tick.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-biology a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/biology.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-biology-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/biology.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-books a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/books.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-books-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/books.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-save a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/save.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-save-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/save.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-corn a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/corn.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-corn-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/corn.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-history a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/history.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-history-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/history.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-learning a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/learning.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-learning-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/learning.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-teacher a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/teacher.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-teacher-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/teacher.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-star a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/star.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-star-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/star.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-notice a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/notice.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-notice-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/notice.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bee a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/bee.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bee-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/bee.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bus a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/bus.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-bus-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/bus.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-lab a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/lab.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-lab-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/lab.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-shopping a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/shopping.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-shopping-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/shopping.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-hotel a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/hotel.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-hotel-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/hotel.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-wheelchair a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/wheelchair.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-wheelchair-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/wheelchair.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-art a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/art.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-art-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/art.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-science a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/science.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-science-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/science.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-dragon a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/dragon.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-dragon-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/dragon.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-diary a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/black/diary.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

.icon-diary-white a:after {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
  background-image: url("_/svg/src/white/diary.svg");
  content: "";
  width: 1em;
  height: 1em;
  display: block;
  float: right;
  margin-top: 0.3em;
  margin-left: 1em;
  opacity: 0.5;
}

@media screen and (min-width: 769px) {
  .site-nav-wrapper {
    background-color: white;
    border-bottom: 2px solid #efefef;
  }
}

.site-nav-wrapper.no-border {
  border-bottom: 0;
}

.site-nav-inner-wrapper {
  background-color: white;
  position: relative;
  max-width: 70em;
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .dim-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 5;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s;
  }
}

.site-nav ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: none;
}
@media screen and (min-width: 769px) {
  .site-nav ul {
    display: block;
  }
}

.site-nav.is-open ul {
  display: block;
}

.site-nav .menu-item {
  display: inline-block;
  width: 100%;
}
.site-nav .menu-item:hover > a {
  background-color: #fafafa;
}
@media screen and (min-width: 769px) {
  .site-nav .menu-item:hover > a {
    background-color: #f1f1f2;
    position: relative;
    z-index: 10;
  }
}
@media screen and (min-width: 769px) {
  .site-nav .menu-item {
    width: 25%;
    float: left;
  }
}
.site-nav .menu-item a {
  width: 100%;
  font-weight: 600;
  display: inline-block;
  text-decoration: none;
  color: #ba060c;
  line-height: 1.5;
  font-size: 1.1em;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  .site-nav .menu-item a {
    background-color: transparent;
  }
  .site-nav .menu-item a:before {
    content: "";
    background: url("_/svg/src/black/arrow-down.svg") no-repeat;
    padding: 0.5em;
    margin: 0.5em;
    background-size: 10px;
    background-position: 50% 70%;
    float: right;
    display: inline;
    opacity: 0.3;
  }
}

.site-nav.menu-item {
  position: relative;
}
.site-nav.menu-item a {
  padding: 1em;
}

.site-nav .menu-item:last-of-type {
  border-bottom: 2px solid #efefef;
}
@media screen and (min-width: 769px) {
  .site-nav .menu-item:last-of-type {
    border-bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .menu-item-has-children {
    position: relative;
  }
  .menu-item-has-children a {
    min-height: 3.5em;
  }
}

.site-nav .top-level-visit {
  display: inline-block;
  width: 100%;
}
.site-nav .top-level-visit:hover > a {
  background-color: #fafafa;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-visit:hover > a {
    background-color: #f1f1f2;
    position: relative;
    z-index: 10;
  }
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-visit {
    width: 25%;
    float: left;
  }
}
.site-nav .top-level-visit a {
  width: 100%;
  font-weight: 600;
  display: inline-block;
  text-decoration: none;
  color: #ba060c;
  line-height: 1.5;
  font-size: 1.1em;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-visit a {
    background-color: transparent;
  }
  .site-nav .top-level-visit a:before {
    content: "";
    background: url("_/svg/src/black/arrow-down.svg") no-repeat;
    padding: 0.5em;
    margin: 0.5em;
    background-size: 10px;
    background-position: 50% 70%;
    float: right;
    display: inline;
    opacity: 0.3;
  }
}

.site-nav .top-level-learning {
  display: inline-block;
  width: 100%;
}
.site-nav .top-level-learning:hover > a {
  background-color: #fafafa;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-learning:hover > a {
    background-color: #f1f1f2;
    position: relative;
    z-index: 10;
  }
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-learning {
    width: 25%;
    float: left;
  }
}
.site-nav .top-level-learning a {
  width: 100%;
  font-weight: 600;
  display: inline-block;
  text-decoration: none;
  color: #21778a;
  line-height: 1.5;
  font-size: 1.1em;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-learning a {
    background-color: transparent;
  }
  .site-nav .top-level-learning a:before {
    content: "";
    background: url("_/svg/src/black/arrow-down.svg") no-repeat;
    padding: 0.5em;
    margin: 0.5em;
    background-size: 10px;
    background-position: 50% 70%;
    float: right;
    display: inline;
    opacity: 0.3;
  }
}

.site-nav .top-level-science {
  display: inline-block;
  width: 100%;
}
.site-nav .top-level-science:hover > a {
  background-color: #fafafa;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-science:hover > a {
    background-color: #f1f1f2;
    position: relative;
    z-index: 10;
  }
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-science {
    width: 25%;
    float: left;
  }
}
.site-nav .top-level-science a {
  width: 100%;
  font-weight: 600;
  display: inline-block;
  text-decoration: none;
  color: #357302;
  line-height: 1.5;
  font-size: 1.1em;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-science a {
    background-color: transparent;
  }
  .site-nav .top-level-science a:before {
    content: "";
    background: url("_/svg/src/black/arrow-down.svg") no-repeat;
    padding: 0.5em;
    margin: 0.5em;
    background-size: 10px;
    background-position: 50% 70%;
    float: right;
    display: inline;
    opacity: 0.3;
  }
}

.site-nav .top-level-blogs {
  display: inline-block;
  width: 100%;
}
.site-nav .top-level-blogs:hover > a {
  background-color: #fafafa;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-blogs:hover > a {
    background-color: #f1f1f2;
    position: relative;
    z-index: 10;
  }
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-blogs {
    width: 25%;
    float: left;
  }
}
.site-nav .top-level-blogs a {
  width: 100%;
  font-weight: 600;
  display: inline-block;
  text-decoration: none;
  color: #ba060c;
  line-height: 1.5;
  font-size: 1.1em;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  .site-nav .top-level-blogs a {
    background-color: transparent;
  }
  .site-nav .top-level-blogs a:before {
    content: "";
    background: url("_/svg/src/black/arrow-down.svg") no-repeat;
    padding: 0.5em;
    margin: 0.5em;
    background-size: 10px;
    background-position: 50% 70%;
    float: right;
    display: inline;
    opacity: 0.3;
  }
}

.menu-item-description {
  display: none;
  font-weight: 300;
  color: #555;
  font-size: 0.7em;
}
@media screen and (min-width: 769px) {
  .menu-item-description {
    display: block;
  }
}

.site-nav .sub-menu-toggle {
  position: absolute;
  right: 0;
  top: 0;
  background-color: #efefef;
  border-left: 1px solid #e9e9e9;
  cursor: pointer;
  transition: 0.5s;
  padding: 1em;
}
@media screen and (min-width: 769px) {
  .site-nav .sub-menu-toggle {
    display: none;
  }
}

.sub-menu-toggle-icon {
  transition: 0.5s;
  width: 0.5em;
  height: 0.5em;
  overflow: hidden;
  color: #919b9e;
}
@media screen and (min-width: 769px) {
  .sub-menu-toggle-icon {
    display: none;
  }
}

.sub-menu-toggle-icon.desktop {
  display: none;
}
@media screen and (min-width: 769px) {
  .sub-menu-toggle-icon.desktop {
    display: inline;
    margin-left: 0.5em;
    color: #919b9e;
    width: 0.5em;
    height: 0.6em;
  }
}

.site-nav .menu-item-has-children ul {
  background-color: #f1f1f2;
  padding: 1em;
  width: 100%;
  position: absolute;
  right: 0;
  left: 0;
  display: none;
}

.site-nav .menu-item-has-children:hover ul {
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .site-nav .menu-item-has-children:hover ul {
    position: absolute;
    display: block;
  }
}

.site-nav .menu-item-has-children ul li {
  display: block;
  border-right: 0;
}
@media screen and (min-width: 769px) {
  .site-nav .menu-item-has-children ul li {
    padding: 0.25em;
    width: 33.3%;
  }
}

.site-nav .menu-item-has-children ul a {
  background: white;
  color: #333;
  font-weight: 600;
  font-size: 1em;
}
@media screen and (min-width: 900px) {
  .site-nav .menu-item-has-children ul a {
    padding: 1.5em 2em;
  }
}
@media screen and (max-width: 768px) {
  .site-nav .menu-item-has-children ul a {
    margin-bottom: 0.5em;
  }
}
.site-nav .menu-item-has-children ul a:before {
  display: none;
}

.site-nav .menu-item-has-children ul a:hover {
  background: #fafafa;
}

.touch .site-nav .menu-item-has-children:hover ul:before {
  display: none;
}

.site-nav .menu-item-has-children.in-focus ul {
  display: block;
}

.site-nav .menu-item-has-children.in-focus ul {
  transition-delay: 0s;
}
@media screen and (min-width: 769px) {
  .site-nav .menu-item-has-children.in-focus ul {
    transition-delay: 0.5s;
  }
}

.menu-toggle {
  grid-column: 3;
  width: max-content;
  background-color: #a90006;
  border: 1px solid #830000;
  border-radius: 0.15em;
  cursor: pointer;
  font-weight: 600;
  color: white;
  font-size: 1em;
  padding: 0.5em;
}
.menu-toggle:hover {
  background-color: #830000;
}
@media screen and (min-width: 769px) {
  .menu-toggle {
    display: none;
  }
}

.garden-slugs {
  display: block;
  margin: 0;
  font-size: 0.75em;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 0.5em;
}

.garden-slugs a {
  display: inline-block;
  padding: 0.28em 0.6em;
  font-weight: 600;
  margin: 0;
}

.slug-type {
  background-color: #873232;
  color: white;
}

.term-slugs {
  display: inline-block;
}

.term-slugs a {
  background-color: #efefef;
  color: #333;
}

.term-slugs a + a {
  border-left: 1px solid #ddd;
}

.next-prev-post-list {
  margin-top: 1em;
  display: inline-block;
  width: 100%;
  padding: 0;
  border-bottom: 0.5em solid #e9e9e9;
}

.next-prev-post-list li {
  display: inline-block;
}

.next-post-list-item {
  float: right;
}

.prev-post-list-item {
  float: left;
}

.next-prev-post-list li a {
  display: block;
  overflow-x: hidden;
  white-space: nowrap;
  font-family: "Georgia", serif;
  font-weight: 300;
  font-style: italic;
  font-size: 1em;
  width: auto;
  background-color: #f1f1f2;
  border: 1px solid #e9e9e9;
  padding: 0.5em;
}
.next-prev-post-list li a:hover {
  background-color: white;
}

.prev-post-of-type {
  float: left;
  border-radius: 0.25em 1em 0 0;
}

.next-post-of-type {
  text-align: right;
  float: right;
  border-radius: 1em 0.25em 0 0;
}

.next-prev-post-title {
  display: none;
}
@media screen and (min-width: 769px) {
  .next-prev-post-title {
    display: inline;
  }
}

.next-prev-post-list li img {
  display: none;
}
@media screen and (min-width: 769px) {
  .next-prev-post-list li img {
    width: 2em;
    height: 2em;
    vertical-align: middle;
    display: inline-block;
    border-radius: 5em;
    margin-right: 0.5em;
  }
}

.prev-post-icon,
.next-post-icon {
  background: url("_/svg/src/black/arrow-down.svg") no-repeat;
  opacity: 0.5;
  background-size: 10px;
  width: 1em;
  height: 1em;
  display: inline-block;
}

.prev-post-icon {
  transform: rotate(90deg);
  background-position: 100% 50%;
  margin-right: 0.5em;
}

.next-post-icon {
  transform: rotate(-90deg);
  background-position: 0% 50%;
  margin-left: 0.5em;
}

.drop-down-menu-toggle a:after {
  opacity: 0.5;
  margin-left: 1em;
  padding: 0.5em;
  display: inline-block;
}

ul.is-filter-dropdown {
  width: 100%;
  list-style: none;
  background-color: white;
  position: absolute;
  padding: 0;
  display: inline-block;
  margin: 0;
  margin-top: 3em;
  right: 0;
  z-index: 5;
  border-radius: 0 0 0.25em 0.25em;
  overflow: hidden;
}
ul.is-filter-dropdown li {
  padding: 0.5em 1em;
}
ul.is-filter-dropdown .current_page_item {
  font-weight: 600;
  color: #919b9e;
}
ul.is-dropdown {
  position: absolute;
  width: 100%;
  background-color: white;
  border-radius: 0 0.25em 0.25em 0;
}

.list-navigation {
  position: relative;
  font-size: 1em;
  padding: 0;
}
.list-navigation ul {
  list-style: none;
  display: inline-block;
  margin: 0;
}
.list-navigation li {
  display: block;
  color: #21778a;
  padding: 0.5em 0 0.5em 0;
}
.list-navigation li .current_page_item {
  font-weight: 600;
}
.list-navigation li:hover {
  background-color: #efefef;
}

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

.list-navigation.inline {
  line-height: 1.5;
}
.list-navigation.inline li {
  display: inline-block;
  float: left;
  margin-bottom: 0.5em;
  margin-right: 0.5em;
  background-color: white;
  color: #333;
  border: 1px solid #e9e9e9;
  padding: 0.4em 0.5em;
}

.list-navigation.modular {
  padding: 0;
  margin: 0;
  display: flex;
  list-style: none;
  flex-direction: row;
  flex-wrap: wrap;
}
.list-navigation.modular li {
  float: left;
  color: #333;
  flex-basis: 100%;
  padding-right: 0.5em;
  border: 0;
}
@media screen and (min-width: 769px) {
  .list-navigation.modular li {
    flex-basis: 50%;
  }
}
@media screen and (min-width: 900px) {
  .list-navigation.modular li {
    flex-basis: 33.3%;
  }
}
.list-navigation.modular li img {
  float: left;
  width: 100%;
  height: auto;
  margin-right: 1em;
  margin-bottom: 1em;
}

.pagination {
  padding: 1em 0;
  text-align: center;
}

a.page-numbers,
span.page-numbers {
  text-decoration: none;
  display: inline-block;
  padding: 0 0.5em;
  background-color: #ba060c;
  color: white;
  border-radius: 0.25em;
}

.page-numbers.current {
  background-color: #830000;
}

.page-numbers.prev, .page-numbers.next {
  color: #21778a;
  background-color: white;
  border-radius: 0.25em;
  border: 1px solid #e9e9e9;
}

.page-numbers.dots {
  color: black;
  background-color: transparent;
}

.screen-reader-text {
  margin-bottom: 0.5em;
}

.category-select {
  margin-bottom: 1em;
}

.category-select-list {
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  border: 1px solid #e9e9e9;
  list-style: none;
}

.category-select-item {
  background-color: white;
  font-weight: 600;
  text-align: center;
  flex-grow: 1;
  flex-shrink: 0;
  border-right: 1px solid #e9e9e9;
  cursor: pointer;
}
.category-select-item:last-of-type {
  border: 0;
}

.category-select-item.is-selected {
  box-shadow: none;
  background-color: #fafafa;
}

.category-select-item-link {
  display: block;
  color: #830000;
  padding: 1em 0;
}
.category-select-item-link:hover {
  background-color: #fafafa;
  box-shadow: none;
}
.category-select-item-link svg {
  display: block;
  margin: 0 auto;
  width: 1.5em;
  height: 1.5em;
}

.category-select-item-link:before {
  width: 2em;
  height: 1em;
  padding: 0.5em;
  display: inline-block;
  content: " ";
  background-repeat: no-repeat;
  background-size: 20px;
}

.category-select-item-link.General:before {
  background-image: url("../../svg/src/black/speech.svg");
}

.category-select-item-link.Heritage:before {
  background-image: url("../../svg/src/black/history.svg");
}

.category-select-item-link.Conservation:before {
  background-image: url("../../svg/src/black/save.svg");
}

.category-select-item-link.Learning:before {
  background-image: url("../../svg/src/black/learning.svg");
}

.category-select-item-link.Horticulture:before {
  background-image: url("../../svg/src/black/corn.svg");
}

.header-links-wrapper {
  position: fixed;
  display: none;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #2a3744;
  border-top: 5px solid #f1b708;
  z-index: 20;
}
@media screen and (min-width: 769px) {
  .header-links-wrapper {
    grid-column: 3;
    display: block;
    position: relative;
    margin: 0;
    width: auto;
    border: none;
  }
}
.header-links-wrapper.is-open {
  display: block;
}

.header-links {
  font-size: 0.9em;
  list-style-type: none;
  display: flex;
  align-items: stretch;
  padding: 0;
  margin: 0;
}
@media screen and (min-width: 769px) {
  .header-links {
    border-left: solid 1px #830000;
    background-color: #a90006;
    float: right;
    margin: -1rem 0;
  }
}

.header-links .menu-item {
  flex-basis: 33.3333333333%;
  display: flex;
  justify-content: center;
  align-items: stretch;
}
.header-links .menu-item:first-of-type {
  border-left: 0;
}
.header-links .menu-item a {
  display: block;
  padding: 1em 0.5em;
  text-align: center;
  color: white;
  font-weight: 600;
  background-color: #2a3744;
  border-right: 1px solid #212a34;
  flex-grow: 1;
}
.header-links .menu-item a:hover {
  background-color: #212a34;
}
@media screen and (min-width: 769px) {
  .header-links .menu-item a {
    flex-grow: 0;
    background-color: #a90006;
    border-color: #830000;
    padding: 2.4em 2em;
  }
  .header-links .menu-item a:hover {
    background-color: #830000;
  }
}

.featured-opportunity-item {
  margin-bottom: 1em;
}

.related-module-title {
  margin: 0 0 0.5em 0;
}

.module, .module-small {
  background-color: white;
  padding: 1em;
  margin-bottom: 1em;
  border: 1px solid #e9e9e9;
}
.module p, .module-small p {
  font-size: 0.9em;
  margin: 0.25em 0;
}

.module-small {
  padding: 1em 1em 1em 6em;
}

.module-small-title {
  margin: 0;
}

.module-thumbnail-link {
  display: block;
  margin: -1em -1em 1em -1em;
}
.module-thumbnail-link img {
  width: 100%;
}

.module-thumbnail-link.small img {
  display: block;
  width: 4em;
  height: 4em;
  float: left;
  margin: 1em 0 0 -4em;
}

.module-page-item {
  position: relative;
  display: block;
  padding: 1em;
  font-weight: 400;
  border-bottom: 2px solid #e9e9e9;
  overflow: hidden;
}
.module-page-item:after {
  position: absolute;
  height: 4em;
  width: 2em;
  right: 0;
  top: 0;
  content: "";
  background-size: 0.3em;
  background-position: 50%;
  background-image: url("_/svg/src/arrow-right.svg");
  background-repeat: no-repeat;
}
.module-page-item:first-of-type {
  border-top: 2px solid #e9e9e9;
}

.module-link {
  color: white;
  text-decoration: none;
}
.module-link:hover {
  text-decoration: none;
}

.module-title {
  font-family: "Source Sans Pro", Freesans, sans-serif;
  font-size: 1.25em;
  color: white;
}

.module-excerpt {
  color: white;
}

.calendar-flag-wrapper {
  position: absolute;
  right: 3em;
  top: -1.1em;
}
@media screen and (min-width: 769px) {
  .calendar-flag-wrapper {
    right: 0;
  }
}

.calendar-flag-fold {
  top: 0;
  position: absolute;
  background-color: #830000;
  transform: skew(-50deg);
  height: 0.5em;
  width: 1em;
  left: -0.26em;
  z-index: 0;
}

.calendar-flag {
  position: absolute;
  background-color: #ba060c;
  font-family: "Georgia", serif;
  font-style: italic;
  color: white;
  padding: 1em;
  z-index: 1;
}

.related-areas-attractions-wrapper {
  display: block;
  width: 100%;
  float: left;
  background-color: #f1f1f2;
  border-top: 1px solid #e9e9e9;
  border-bottom: 1px solid #e9e9e9;
  padding: 1em 0;
}

.related-areas-attractions {
  max-width: 70em;
  margin: 0 auto;
  padding: 0 1em;
}

.related-areas-attractions-button {
  cursor: pointer;
}

.related-areas-attractions-collapsing-wrapper {
  max-height: 0;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .related-areas-attractions-collapsing-wrapper {
    max-height: 30em;
  }
}

.related-areas-attractions-collapsing-wrapper.is-closed {
  max-height: 0;
  overflow: hidden;
}

.featured-related-areas-attraction {
  width: 33.3%;
  float: left;
  display: inline-block;
  padding-right: 1em;
}

.related-areas-attractions-list {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  list-style: none;
}

.related-areas-attractions-list-item {
  display: flex;
  flex-basis: 100%;
  padding: 0.25em;
}
@media screen and (min-width: 769px) {
  .related-areas-attractions-list-item {
    flex-basis: 50%;
  }
}
@media screen and (min-width: 900px) {
  .related-areas-attractions-list-item {
    flex-basis: 33.3%;
  }
}

.related-areas-attractions-content {
  border: 1px solid #efefef;
  background-color: white;
  padding: 1em 2em;
  flex-grow: 1;
}
.related-areas-attractions-content:hover {
  background-color: #FCFCFC;
}

.related-areas-attractions-details {
  float: left;
}
.related-areas-attractions-details h3 {
  margin-bottom: 0;
}
.related-areas-attractions-details p {
  margin-top: 0;
}

.related-areas-attractions-image {
  float: left;
  width: 3em;
  height: 3em;
  margin-right: 1em;
  border-radius: 50%;
}

.further-reading-wrapper {
  background-color: #efefef;
  width: 100%;
  display: block;
  clear: both;
}

.further-reading {
  display: block;
  max-width: 70em;
  margin: 0 auto;
  padding: 2em 1em;
}

.further-reading-title {
  text-align: center;
  display: block;
  padding-bottom: 1em;
}

.further-reading-list {
  padding: 0;
  margin: 0 -0.5em;
}
.further-reading-list a {
  text-decoration: none;
}

.further-reading-item {
  float: left;
  display: inline-block;
  width: 100%;
  padding: 0.5em;
}
@media screen and (min-width: 40em) {
  .further-reading-item {
    width: 33.3%;
  }
}

.further-reading-item-img {
  max-width: 100%;
  height: auto;
}

.further-reading-item-content, .qa-list-item {
  display: block;
  background-color: white;
  padding: 0.5em 1em;
}
.further-reading-item-content p, .qa-list-item p {
  font-size: 0.8em;
  color: #333;
}
@media screen and (min-width: 769px) {
  .further-reading-item-content p, .qa-list-item p {
    font-size: 0.9em;
  }
}

.further-reading-category .post-category {
  position: absolute;
}

.booking {
  padding: 1em;
  background-color: #212a34;
  margin-bottom: 1.5em;
  border-top: 0.5em solid #ffc83c;
  color: white;
}

.booking h2, .booking h3 {
  color: white;
  font-size: 1.35rem;
  color: white;
  margin: 0 0 0.5em 0;
}

.booking-ref {
  color: #90becc;
  display: block;
}

.booking p {
  margin: 0.5em 0;
  font-size: 0.9em;
}

.booking .button, .booking .woocommerce #respond input#submit.alt, .woocommerce #respond .booking input#submit.alt,
.booking .woocommerce a.button.alt,
.woocommerce .booking a.button.alt,
.booking .woocommerce button.button.alt,
.woocommerce .booking button.button.alt,
.booking .woocommerce input.button.alt,
.woocommerce .booking input.button.alt,
button.eo-booking-button {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1em;
  margin: 1em 0 0 0;
}

.booking-price-label {
  border-bottom: 5px solid #565565;
  padding-bottom: 0.5em;
}

.booking-price {
  font-weight: 600;
  font-size: 1.5em;
  margin: 0.5em 0;
}

#eo-bookings {
  margin: 0;
  padding: 0;
}

.eo-booking-field-row {
  margin: 0 -0.5em;
}
.eo-booking-field-row label {
  padding: 0.5em;
  float: left;
}

.eo-booking-field-checkbox-list {
  list-style: none;
  padding: 0;
}
.eo-booking-field-checkbox-list [type=checkbox] {
  margin-right: 0.5em;
}

.eo-gateway-stripe-cc-label {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .eo-gateway-stripe-cc-label {
    width: 70%;
    padding-right: 1em;
  }
}

.eo-gateway-stripe-cvc-label {
  width: 30%;
}

.eo-booking-notice {
  border-top: solid thick;
  background-color: white;
  color: #333;
  padding: 0.75em;
}
.eo-booking-notice a {
  color: currentColor;
  text-decoration: underline;
}
.eo-booking-notice p {
  line-height: 1.2;
  margin: 0;
}

.eo-booking-notice-prior-booking {
  border-color: #ba060c;
}

.eo-booking-notice-logged-in {
  border-color: #688648;
}

.eo-booking-notice-booking-complete {
  border-color: #ffc83c;
}

.post-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.post-list-item {
  display: block;
}

.partner-contact-details {
  margin: 0;
}

.partner-profile-image {
  float: left;
  max-width: 20em;
  height: auto;
  display: block;
  border: 5px solid #efefef;
  margin: 1em 2em 2em 0;
}

.partners-wrapper {
  border-top: 1px solid #efefef;
  display: inline-block;
  float: left;
  width: 100%;
  background-color: white;
  padding-bottom: 2em;
}

.partners {
  max-width: 70em;
  margin: 0 auto;
  padding: 1em;
}

.partners-list-title {
  display: block;
  text-align: center;
  border-bottom: 5px solid #efefef;
  padding-bottom: 1em;
  margin: 1em;
}

.partners-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.partners-list-item {
  display: inline-block;
  vertical-align: top;
  padding: 0 1.25em 0.5em 1.25em;
  width: 100%;
  margin-bottom: 0;
}
@media screen and (min-width: 769px) {
  .partners-list-item {
    width: 49%;
  }
}
@media screen and (min-width: 900px) {
  .partners-list-item {
    width: 33%;
  }
}

.partners-list-item-link {
  display: block;
  padding: 1em;
  text-align: center;
}

.team-member-content, .key-contact-content {
  overflow: hidden;
  color: #565565;
  font-weight: 400;
  line-height: 1;
}

.key-contact-name {
  color: #357302;
  font-size: 0.9em;
  margin: 0 0 0.2em;
}

.key-contact-title, .team-member-title {
  font-size: 1em;
  line-height: 1.4;
  font-weight: 400;
}

.key-contact-phone a {
  text-decoration: none;
}
.key-contact-phone a:before {
  width: 0.8em;
  height: 0.8em;
  opacity: 0.4;
}

.profile-image, .team-member-image, .key-contact-image {
  display: block;
  width: 5em;
  height: 5em;
  border-radius: 0.5em;
  margin-right: 0;
  margin-bottom: 1em;
  border: 5px solid white;
}
@media screen and (min-width: 34em) {
  .profile-image, .team-member-image, .key-contact-image {
    margin-right: 2em;
    display: inline-block;
    float: left;
  }
}
@media screen and (min-width: 769px) {
  .profile-image, .team-member-image, .key-contact-image {
    width: 9em;
    height: 9em;
  }
}

.person .biog {
  border-top: solid 5px #efefef;
  margin: 2em 0;
}

.person-contact-details, .partner-contact-details {
  display: inline-block;
  margin-top: 0.25em;
  padding: 0;
  font-size: 0.8em;
}
@media screen and (min-width: 769px) {
  .person-contact-details, .partner-contact-details {
    font-size: 1em;
  }
}

.person-contact-details li, .partner-contact-details li {
  margin-right: 0.5em;
  padding: 0.8em;
  background-color: white;
  border: 1px solid #efefef;
  display: inline-block;
  float: left;
  margin-bottom: 0.25em;
}

.person-contact-details li svg, .partner-contact-details li svg {
  width: 1em;
  height: 1em;
  float: left;
  margin: 0.4em 0.5em 0 0.5em;
}

.team {
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.team-member, .key-contact {
  display: flex;
  flex-direction: column;
  padding: 0.25em;
  flex-basis: 100%;
}
@media screen and (min-width: 769px) {
  .team-member, .key-contact {
    flex-basis: 50%;
  }
}

.team-member-content, .key-contact-content {
  background-color: white;
  border: 1px solid #efefef;
  padding: 1em;
  flex-grow: 1;
  transition: 0.5s;
}
@media screen and (max-width: 34em) {
  .team-member-content, .key-contact-content {
    text-align: center;
  }
}

.team-member-image, .key-contact-image {
  width: 5em;
  height: 5em;
}
@media screen and (max-width: 34em) {
  .team-member-image, .key-contact-image {
    margin: 0 auto;
  }
}

.team-member-name {
  font-family: "Georgia", serif;
  font-weight: 300;
  margin-top: 0;
  margin-bottom: 0;
}

.team-member-title {
  margin-bottom: 0.5em;
}

.key-contacts {
  position: relative;
  width: 100%;
  display: inline-block;
  margin-bottom: 1.5em;
}

.key-contact-group-icon {
  float: left;
  width: 1em;
  height: 1.8em;
  margin-right: 1em;
}

.key-contacts-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  transition: 0.5s;
}

.key-contact {
  flex-basis: 100%;
  padding: 0 0 0.25em 0;
}
@media screen and (min-width: 769px) {
  .key-contact {
    flex-basis: 100%;
  }
}
@media screen and (min-width: 900px) {
  .key-contact {
    flex-basis: 50%;
    padding: 0.25em;
  }
}

.key-contact-content {
  text-align: left;
}

.key-contact-image {
  width: 3em;
  height: 3em;
  float: left;
  margin-right: 1em;
}

.key-contact-text {
  display: inline-block;
  padding-left: 0.7em;
}

.key-contact-title {
  font-size: 0.8em;
  margin-bottom: 0.5em;
}

.attachment-list-wrapper {
  display: inline-block;
  float: left;
  width: 100%;
  background-color: #efefef;
  padding: 1em 0;
}

.attachment-list {
  padding: 1em;
  margin: 0 auto;
  max-width: 70em;
  list-style: none;
}

.attachment-item {
  width: 100%;
  display: inline-block;
  vertical-align: top;
  padding: 0.25em;
}
@media screen and (min-width: 769px) {
  .attachment-item {
    width: 49%;
  }
}

.attachment-link {
  background-color: white;
  display: block;
  padding: 1em;
}

.attachment-title {
  font-family: "Georgia", serif;
  text-align: center;
  font-weight: 300;
  display: block;
  color: black;
}

.attachment-icon {
  background: url("_/svg/src/paperclip.svg") no-repeat;
  background-size: 20px;
  background-position: 50% 50%;
  padding: 3em;
  float: left;
  margin: -1em;
}

.qa-list {
  list-style: none;
  padding: 0;
}

.qa-list-item {
  border: 1px solid #efefef;
  cursor: pointer;
  margin-bottom: 0.5em;
}

.qa-question {
  margin: 0.25em 0;
}

.qa-question-icon {
  width: 0.5em;
  height: 0.7em;
  margin-right: 0.5em;
  margin-top: 0.4em;
  color: #919b9e;
  float: right;
}

.qa-answer {
  padding: 1em 0;
  transition: 0.5s;
  max-height: 40em;
  padding-bottom: 0.7em;
  overflow: hidden;
}

.qa-list-item.is-closed .qa-answer {
  max-height: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.qa-answer p:first-child {
  margin-top: 0;
}

.qa-answer p:last-child {
  margin-bottom: 0;
}

.blog-module-item {
  display: block;
  padding: 1em;
  background-color: white;
  border: 5px solid #efefef;
  margin-bottom: 1em;
}

.blog-module-title {
  margin: 0;
}

.blog-module-content {
  vertical-align: middle;
  display: inline-block;
}

.site-newsletter-wrapper {
  display: inline-block;
  width: 100%;
  background: #253547;
}

.site-newsletter {
  max-width: 70em;
  margin: 0 auto;
  position: relative;
  padding: 2em 1em;
}
.site-newsletter input {
  max-width: 20em;
  margin-right: 0.5em;
}

.newsletter-sign-up-title {
  color: white;
  margin: 0 0 0.5em 0;
}

#mc_embed_signup div.mce_inline_error, .response {
  position: absolute;
  top: 100%;
  left: 0;
  padding: 1em;
  color: white;
  transform: translateY(0.25em);
  border-radius: 0.15em;
  z-index: 10;
  text-align: left;
  max-width: 75%;
}

div.mce_inline_error:after, .response:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: solid 1em transparent;
  position: absolute;
  top: -1.75em;
}

.response {
  background: #357302;
}
.response a {
  color: currentColor;
  text-decoration: underline;
}
.response:after {
  border-bottom: solid 1em #357302;
}

#mc_embed_signup div.mce_inline_error {
  background-color: #ba060c !important;
}

div.mce_inline_error:after {
  border-bottom: solid 1em #ba060c;
}

.admissions-pricing-table thead {
  display: none;
}
.admissions-pricing-table td.data-label:before {
  content: attr(data-title);
  display: block;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.admissions-pricing-table tr {
  display: block;
}
.admissions-pricing-table td:first-child {
  background: #565565;
  color: white;
  display: block;
  clear: both;
}
.admissions-pricing-table tfoot td:nth-child(2) {
  display: none;
}
.admissions-pricing-table .product-price {
  float: left;
}
.admissions-pricing-table .product-qty,
.admissions-pricing-table .admissions-total,
.admissions-pricing-table .extras-total {
  float: right;
}
@media screen and (min-width: 769px) {
  .admissions-pricing-table thead {
    display: table-row-group;
  }
  .admissions-pricing-table tr {
    display: table-row;
  }
  .admissions-pricing-table td:first-child {
    display: table-cell;
    background: transparent;
    color: inherit;
  }
  .admissions-pricing-table .product-price,
.admissions-pricing-table .product-qty,
.admissions-pricing-table .admissions-total,
.admissions-pricing-table .extras-total,
.admissions-pricing-table tfoot td:nth-child(2) {
    display: table-cell;
    float: none;
  }
  .admissions-pricing-table td.data-label:before {
    content: none;
  }
}

.admissions-submit,
.add-gift-aid-box {
  padding: 1rem;
  border: solid 3px #565565;
  margin: 1em 0;
  border-radius: 5px;
  background: white;
}

.add-gift-aid-options {
  list-style: none;
  padding: 0;
  margin: 0;
}

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

.add-gift-aid-option {
  margin: 0.25rem 0;
}

.add-gift-aid-option label {
  font-weight: 600;
}

.add-gift-aid-option input {
  margin-right: 0.25rem;
}

/* Product page */
@media (max-width: 65rem) {
  .woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
    width: 100%;
    float: none;
  }
}

.woocommerce .variations tr {
  background-color: transparent;
  border-top: solid #919b9e;
}

.woocommerce #wc-stripe-payment-request-wrapper,
.woocommerce #wc-stripe-payment-request-button-separator {
  padding: 0 !important;
  margin: 0 !important;
}
.woocommerce .single_add_to_cart_button,
.woocommerce .button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce .alt {
  margin: 0 !important;
}

.summary .woocommerce-variation-add-to-cart,
.summary .variations_button,
.summary .cart,
.entry-summary .woocommerce-variation-add-to-cart,
.entry-summary .variations_button,
.entry-summary .cart {
  display: grid;
  gap: 1em;
}
@media (min-width: 1040px) {
  .summary .woocommerce-variation-add-to-cart,
.summary .variations_button,
.summary .cart,
.entry-summary .woocommerce-variation-add-to-cart,
.entry-summary .variations_button,
.entry-summary .cart {
    max-width: 20em;
  }
}

@media (max-width: 65rem) {
  .woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
    width: 100%;
    float: none;
  }
}

/* one column checkout page */
.woocommerce #customer_details.col2-set .col-1,
.woocommerce-page #customer_details.col2-set .col-1,
.woocommerce #customer_details.col2-set .col-2,
.woocommerce-page #customer_details.col2-set .col-2 {
  clear: both;
  float: none !important;
  width: 100% !important;
  margin-right: 0 !important;
  text-align: left;
  padding-bottom: 20px;
}

.woocommerce table.shop_table {
  border-radius: 0;
  border: none;
}
.woocommerce table.shop_table td {
  border: none;
}

#add_payment_method #payment,
.woocommerce-checkout #payment {
  background: #dbdbe2;
  border-radius: 0;
}

#add_payment_method #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
  background: #f7f7f8;
}
#add_payment_method #payment div.payment_box:before,
.woocommerce-checkout #payment div.payment_box:before {
  border-bottom-color: #f7f7f8;
}

.checkout-back-to-cart {
  margin-bottom: 1em;
  text-align: right;
}

.woocommerce-checkout #payment ul.payment_methods li img {
  display: inline-block;
}

.wc_payment_methods {
  background-color: #dbdbe2;
}

.woocommerce-SavedPaymentMethods {
  list-style: none;
  padding: 0;
}
.woocommerce-SavedPaymentMethods label {
  display: inline;
}

.woocommerce #content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon,
.woocommerce-page #content table.cart td.actions .coupon,
.woocommerce-page table.cart td.actions .coupon {
  display: flex;
}

#add_payment_method table.cart td.actions .coupon .input-text,
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-checkout table.cart td.actions .coupon .input-text {
  min-width: 12em;
}

.woocommerce-additional-fields {
  display: none;
}

.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover {
  color: #6c4a00;
}

.woocommerce-shipping-totals.shipping {
  background-color: transparent;
}

.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: #830000;
  color: white;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  margin: 0;
  text-decoration: none;
  padding: 0.5em;
  line-height: 1;
  font-size: 1em;
  font-weight: 400;
  min-width: 1em;
  display: block;
  margin: 0 0.1rem;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: none;
}

.woocommerce nav.woocommerce-pagination ul {
  display: inline-block;
  white-space: nowrap;
  padding: 0;
  clear: both;
  border: none;
  border-right: 0;
  margin: 1px;
}

h2.woocommerce-loop-category__title mark {
  background-color: transparent;
}

.woocommerce ul#shipping_method li input {
  margin: 3px 0.4375em 0 0;
  vertical-align: baseline;
}

.listings {
  list-style: none;
  padding: 0;
  margin: 0 -0.5em;
  display: inline-block;
  display: flex;
  flex-wrap: wrap;
}

.listings-item {
  width: 100%;
  padding: 0.5em;
}
@media screen and (min-width: 769px) {
  .listings-item {
    display: inline-block;
    float: left;
    width: 50%;
    display: flex;
    flex-basis: 50%;
  }
}
@media screen and (min-width: 900px) {
  .listings-item {
    width: 33.3333333333%;
  }
}

.listings-item-content {
  padding: 1em;
  background-color: white;
  border: 1px solid #efefef;
  flex-grow: 1;
}

ul.tick-list {
  list-style: none;
  list-style-image: url(../svg/src/tick.svg);
  font-weight: 400;
}

.sortable-list {
  list-style: none;
  padding: 0;
  margin: 0 -1em;
}

.listing-item.featured-inline {
  background-color: transparent;
  width: 33.3%;
  float: left;
  padding-right: 1em;
  margin: 0;
}

.listing-item.full {
  width: 50%;
}

.listing-sub {
  display: block;
  font-weight: 600;
}

.listing-offer {
  font-size: 0.9em;
  display: inline;
}

.listing-links {
  border-radius: 0.25em;
  list-style: none;
  background-color: #efefef;
  padding: 0.5em 1em;
  font-size: 0.9em;
}
.listing-links li {
  display: inline-block;
  margin-right: 1em;
}
.listing-links a {
  text-decoration: none;
  color: #21778a;
  display: flex;
}
.listing-links .button, .listing-links .woocommerce #respond input#submit.alt, .woocommerce #respond .listing-links input#submit.alt,
.listing-links .woocommerce a.button.alt,
.woocommerce .listing-links a.button.alt,
.listing-links .woocommerce button.button.alt,
.woocommerce .listing-links button.button.alt,
.listing-links .woocommerce input.button.alt,
.woocommerce .listing-links input.button.alt {
  font-size: 1em;
}
@media screen and (min-width: 769px) {
  .listing-links .button, .listing-links .woocommerce #respond input#submit.alt, .woocommerce #respond .listing-links input#submit.alt,
.listing-links .woocommerce a.button.alt,
.woocommerce .listing-links a.button.alt,
.listing-links .woocommerce button.button.alt,
.woocommerce .listing-links button.button.alt,
.listing-links .woocommerce input.button.alt,
.woocommerce .listing-links input.button.alt {
    float: right;
    margin: 0;
    padding: 0.5em 1em;
  }
}

.extras-title {
  display: inline;
}

.listings-alert {
  background-color: #90becc;
  padding: 1em;
  font-size: 0.8em;
  margin-bottom: 2em;
  margin-left: -2em;
  font-weight: 600;
}

.filtered-list-links {
  padding: 0;
  list-style: none;
  margin: 1em 0 0 0;
}

.filtered-list-link-item {
  display: block;
  margin-bottom: 0.25em;
}

.filtered-list-link {
  font-size: 0.9em;
  padding: 0.25em 0.25em 0.25em 2.5em;
  background-color: #fafafa;
  border: 1px solid #efefef;
  display: block;
  border-radius: 0.25em;
}
.filtered-list-link:before {
  content: "";
  margin-left: -1.5em;
  background-size: 16px;
  padding: 1em;
  background-repeat: no-repeat;
  background-position: 0 50%;
}

.filtered-list-link.icon-phone:before {
  background-image: url("../garden/_/svg/src/black/map.svg");
}

.filtered-list-link.icon-map:before {
  background-image: url("../garden/_/svg/src/black/map.svg");
}

.filtered-list-link.icon-web:before {
  background-image: url("../garden/_/svg/src/black/web.svg");
}

.living-attraction-sub-title {
  margin-bottom: 0.5em;
}

.attractor-type {
  display: block;
  margin-bottom: 1em;
  margin-top: 1em;
}

.attractor-description-title {
  padding: 0.5em;
  background-color: #565565;
  margin: 0;
  color: white;
  text-align: center;
}

.living-attractions-months-nav.flex ul {
  display: flex;
}
.living-attractions-months-nav.flex ul li {
  flex-grow: 1;
}

.living-attractions-months-nav {
  display: block;
}
@media screen and (min-width: 769px) {
  .living-attractions-months-nav {
    margin-top: 1em;
  }
}
.living-attractions-months-nav ul {
  border-radius: 0.15em;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  background-color: white;
}

.living-attractions-months-nav.sidebar-months {
  margin-top: 0;
}
.living-attractions-months-nav.sidebar-months ul {
  border-radius: 0;
}
.living-attractions-months-nav.sidebar-months ul li {
  padding: 0.25em;
}

.living-attractions-month-item {
  padding: 1em 0.5em;
  cursor: pointer;
  float: left;
  width: 16.66%;
  text-align: center;
  font-weight: 600;
  color: black;
}
@media screen and (min-width: 769px) {
  .living-attractions-month-item {
    width: 8.33%;
    padding: 1em;
  }
}

.living-attractions-month-item.dec,
.living-attractions-month-item.jan,
.living-attractions-month-item.feb {
  background-color: #c6f6ff;
}
.living-attractions-month-item.dec:hover,
.living-attractions-month-item.jan:hover,
.living-attractions-month-item.feb:hover {
  background-color: #93eeff;
}

.living-attractions-month-item.mar,
.living-attractions-month-item.nov {
  background-color: #cef0e9;
}
.living-attractions-month-item.mar:hover,
.living-attractions-month-item.nov:hover {
  background-color: #a7e4d7;
}

.living-attractions-month-item.oct,
.living-attractions-month-item.apr {
  background-color: #d4ecd9;
}
.living-attractions-month-item.oct:hover,
.living-attractions-month-item.apr:hover {
  background-color: #b1dcba;
}

.living-attractions-month-item.may,
.living-attractions-month-item.sep {
  background-color: #e3e1b3;
}
.living-attractions-month-item.may:hover,
.living-attractions-month-item.sep:hover {
  background-color: #d5d28e;
}

.living-attractions-month-item.jun,
.living-attractions-month-item.aug {
  background-color: #f1d78c;
}
.living-attractions-month-item.jun:hover,
.living-attractions-month-item.aug:hover {
  background-color: #ebc75f;
}

.living-attractions-month-item.jul {
  background-color: #ffcc66;
}
.living-attractions-month-item.jul:hover {
  background-color: #ffbb33;
}

.living-attractions-wrapper {
  width: 100%;
  display: inline-block;
}

.living-attractions-list {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  list-style: none;
}

.living-attractions-list li {
  display: flex;
  flex-basis: 100%;
  flex-wrap: wrap;
  padding: 0.5em;
}
@media screen and (min-width: 34em) {
  .living-attractions-list li {
    flex-basis: 50%;
  }
}
@media screen and (min-width: 900px) {
  .living-attractions-list li {
    flex-basis: 33.3%;
  }
}

.living-attractions-month-item.is-selected {
  background-color: #ba060c;
  color: white;
}
.living-attractions-month-item.is-selected:hover {
  background-color: #ba060c;
}

.living-attractions-menu-item.disabled {
  background-color: #efefef;
  color: #919b9e;
  pointer-events: none;
}

.living-attraction-type {
  color: white;
  font-weight: 600;
  background-color: #919b9e;
  font-size: 0.9em;
  padding: 0.1em 0.5em;
}

.living-attraction-title {
  margin: 0.15em 0 0.5em 0;
}

.living-attraction-module-react {
  background-color: white;
  border: 1px solid #f1f1f2;
  margin-bottom: 1em;
}

.living-attraction-module-react img {
  width: 100%;
  height: auto;
}

.living-attraction-module-title {
  margin-top: 0;
  margin-bottom: 0.25em;
}

.living-attraction-module-content {
  padding: 1em;
}

.project-aims,
.project-method,
.project-impact {
  background-color: white;
  padding: 1.5em;
  margin-bottom: 1em;
}
@media screen and (min-width: 769px) {
  .project-aims,
.project-method,
.project-impact {
    margin-right: 0;
  }
}
.project-aims h2,
.project-method h2,
.project-impact h2 {
  margin: 0;
}
.project-aims:before,
.project-method:before,
.project-impact:before {
  content: "";
  float: right;
  background-repeat: no-repeat;
  background-position: 50%;
  padding: 2em;
  opacity: 0.1;
}

.project-aims {
  border-left: 0.5em solid #357302;
}

.project-method {
  border-left: 0.5em solid #ba060c;
}

.project-impact {
  border-left: 0.5em solid #21778a;
}

.project-child-image {
  width: 100%;
}

.map-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 15;
}

.map-modal.is-closed {
  display: none;
}

.ol-map {
  width: 100vw;
  height: 100vh;
  background: #b9c478;
}

.close-map-modal,
.close-map-pin-modal {
  position: absolute;
  cursor: pointer;
  background: url("./_/svg/src/cross.svg") no-repeat #463D3D;
  background-size: 1em;
  background-position: 50%;
  width: 3em;
  height: 3em;
  right: 0;
  top: 0;
  z-index: 20;
}

.close-map-modal {
  z-index: 19;
}

@keyframes darken {
  0% {
    background-color: rgba(0, 0, 0, 0);
  }
  100% {
    background-color: rgba(0, 0, 0, 0.5);
  }
}
.map-pin-modal-wrapper {
  width: 100vw;
  height: 100vh;
  position: absolute;
  z-index: 20;
  animation: darken 1s forwards;
  cursor: pointer;
}

.map-pin-modal-wrapper.is-closed {
  display: none;
}

.map-pin-modal {
  background: white;
  color: #333;
  padding: 1em;
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 1em;
  right: 1em;
  bottom: 1em;
  left: 1em;
}
@media screen and (min-width: 769px) {
  .map-pin-modal {
    left: 50%;
    top: 50%;
    bottom: auto;
    transform: translateX(-50%) translateY(-50%);
  }
}

.modal-title,
.modal-button {
  flex-grow: 0;
  flex-shrink: 0;
}

.modal-image {
  overflow: hidden;
  flex-shrink: 1;
  flex-grow: 0;
}

.modal-content {
  font-size: 0.9em;
  flex-grow: 1;
  flex-shrink: 1;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 769px) {
  .modal-content {
    flex-grow: 0;
  }
}
.modal-content:after {
  content: " ";
  background-image: linear-gradient(rgba(255, 255, 255, 0), white);
  height: 5em;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
@media screen and (min-width: 769px) {
  .modal-content:after {
    display: none;
  }
}

.modal-button {
  margin-bottom: 0;
}

.open-map-modal {
  display: block;
  background-image: url("_/images/garden-map.png");
  background-position: 50% 30%;
  padding: 1em;
  margin-bottom: 1em;
  border: 1px solid #efefef;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .open-map-modal {
    padding: 1.5em;
  }
}

.svg-x1 {
  width: 1em;
  height: 1em;
}

.garden-area-child-areas-title {
  margin-bottom: 1em;
}

.related-courses li {
  background-color: white;
  border: 5px solid #efefef;
  padding: 1em;
  margin-bottom: 0.5em;
}
.related-courses li h2 {
  margin-top: 0;
}

.event-list-item:first-child {
  width: 100%;
  flex-basis: 100%;
}
.event-list-item:first-child .event-list-item-content {
  border: 3px solid #efefef;
}

.event-list-item {
  position: relative;
  width: 100%;
  flex-basis: 100%;
}

.event-list-item-content {
  position: relative;
  overflow: hidden;
  padding: 2em;
}

.main-hero-image.event-image {
  margin-top: -2em;
}
@media screen and (min-width: 769px) {
  .main-hero-image.event-image {
    margin-left: 2em;
  }
}

.event-hero-list-wrapper {
  display: inline-block;
  background-color: #fafafa;
  margin-bottom: 0.25em;
  font-weight: 500;
  width: 100%;
  border-top: 3px solid #efefef;
  border-bottom: 3px solid #efefef;
}

.event-hero-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.event-hero-list-item {
  position: relative;
  padding: 0;
  display: inline-block;
  font-weight: 600;
  margin-right: 0.75em;
}
.event-hero-list-item:before {
  content: "";
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 50% 50%;
  width: 0.7em;
  height: 0.7em;
  margin-right: 0.25em;
  opacity: 0.5;
}

.event-hero-list-item.venue:before {
  background-image: url("_/svg/src/black/map-pin.svg");
}

.event-hero-list-item.date:before {
  background-image: url("_/svg/src/black/calendar.svg");
}

.event-hero-list-item.clock:before {
  background-image: url("_/svg/src/black/clock.svg");
}

.event-hero-list-item.price:before {
  background-image: url("_/svg/src/black/tickets.svg");
}

.module-small .event-hero-list-item {
  display: block;
}

.main-hero .event-hero-list-wrapper {
  background-color: transparent;
  border: 0;
}

.single-header-hero .event-hero-list-wrapper,
.event-list-item .event-hero-list-wrapper {
  padding: 0.5em 0;
}

.module .event-hero-list-wrapper, .module-small .event-hero-list-wrapper {
  background-color: transparent;
  border: 0;
}
.module .event-hero-list-wrapper .event-hero-list-item, .module-small .event-hero-list-wrapper .event-hero-list-item {
  font-size: 0.9em;
}

.module-small .event-hero-list-wrapper {
  background-color: transparent;
  border: 0;
  margin: 0.5em 0 0 0;
}
.module-small .event-hero-list-wrapper .event-hero-list-item {
  font-size: 0.8em;
}

.event-list-item.single {
  width: 100%;
}

.event-list-item-content.single {
  margin-left: -1em;
  margin-bottom: 1em;
}

.event-list-item-details {
  width: 100%;
  display: inline-block;
}
@media screen and (min-width: 769px) {
  .event-list-item-details {
    width: 66.6%;
    padding-right: 4em;
  }
}

.event-list-item-details p {
  margin: 0;
}

.event-list-item-header {
  margin-bottom: 0.5em;
}

.event-list-item-main-title {
  font-size: 2em;
  margin: 0.25em 0;
}

.event-list-item-title {
  font-family: "Georgia", serif;
  font-weight: 300;
  color: black;
  margin: 0.5em 0;
}

.event-list-item-title.featured {
  font-size: 2em;
}

.opportunity-list {
  margin: 0 -0.5em;
}

.opportunity-list-item {
  width: 100%;
  flex-basis: 100%;
}

.opportunity-list-item-content {
  display: block;
  background-color: white;
  width: 100%;
  padding: 1em;
  border: 1px solid #efefef;
}

.opportunity-list-item-title {
  margin: 0;
}

.opportunity-image {
  margin-bottom: 0.5em;
}

.opportunity-info-list-wrapper {
  display: inline-block;
  background-color: white;
  width: 100%;
  border: 1px solid #e9e9e9;
}

.opportunity-info-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.opportunity-info-list-item {
  float: left;
  padding: 1em 3em 1em 1em;
}

.opportunity-info-list-item-label {
  line-height: 1.3;
  padding-bottom: 0.25em;
  font-family: "Georgia", serif;
  font-style: italic;
}

.opportunity-info-list-item-value {
  font-weight: 600;
  font-size: 1em;
  color: #ba060c;
}
@media screen and (min-width: 769px) {
  .opportunity-info-list-item-value {
    font-size: 1.2em;
  }
}

.deadline-byline {
  color: #ba060c;
  font-weight: 600;
  font-style: normal;
}

.listings-item .main-hero-image-wrapper {
  margin-bottom: 1em;
}
@media screen and (min-width: 769px) {
  .listings-item .main-hero-image-wrapper {
    margin-bottom: 0;
  }
}

.parent-page-items-wrapper {
  display: block;
}

.parent-page-items-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.parent-page-item, .post-list-item.featured {
  position: relative;
  overflow: hidden;
  background-color: white;
  width: 100%;
  border: 1px solid #e9e9e9;
  margin-bottom: 1em;
}

.parent-page-item-link, .event-item-link {
  text-decoration: none;
  color: #333;
}
.parent-page-item-link:hover, .event-item-link:hover {
  text-decoration: none;
}

.parent-page-item-content {
  display: block;
  text-decoration: none;
  padding: 1em;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .parent-page-item-content {
    width: 60%;
    padding: 2em;
  }
}

.parent-page-item-title {
  font-family: "Georgia", serif;
  font-weight: 300;
  color: black;
  font-size: 1.5em;
  margin-top: 0;
}
.parent-page-item-title:hover {
  text-decoration: underline;
}

.parent-nav-tree-menu-toggle {
  font-weight: 300;
  padding: 0.5em 0;
  margin-top: -1em;
  font-family: "Georgia", serif;
  cursor: pointer;
  transition: 0.5s;
}
.parent-nav-tree-menu-toggle:hover {
  padding: 0.5em;
}

.parent-nav-tree-menu-toggle.is-closed {
  padding: 1em 0;
}

.parent-nav-tree-chevron-icon, .key-contact-chevron-icon {
  width: 0.8em;
  height: 2em;
  margin-right: 1em;
  float: right;
}

.parent-nav-tree {
  margin-bottom: 1em;
  list-style: none;
  border-bottom: 3px solid #efefef;
}

.parent-nav-tree.is-closed {
  background-color: transparent;
}

.parent-nav-tree ul {
  padding: 0;
}

.parent-nav-tree-list {
  padding: 0;
  margin: 0;
  list-style: none;
  max-height: 20em;
  overflow: hidden;
  transition: 0.5s;
  margin-bottom: 1em;
}

.parent-nav-tree-list.is-closed {
  max-height: 0;
  margin-bottom: 0;
}

.parent-nav-tree ul li ul li {
  display: inline-block;
  float: left;
  padding: 0.25em 1em;
  margin-bottom: 0.25em;
  margin-right: 0.25em;
  border-radius: 0.25em;
  background-color: white;
  border: 1px solid #efefef;
  list-style: none;
  box-shadow: 1px 1px 0px #F6F5F5;
}

.admissions-masthead {
  width: 100%;
  display: inline-block;
  float: left;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 0 1em;
}
@media screen and (min-width: 769px) {
  .admissions-masthead {
    display: none;
  }
}

.admissions-masthead-item {
  width: 50%;
  padding: 0.5em 0;
  font-size: 0.9em;
  line-height: 1.5;
  float: left;
  font-weight: 600;
}

.admissions-masthead-item-title {
  margin: 0;
}

.admissions-masthead .button, .admissions-masthead .woocommerce #respond input#submit.alt, .woocommerce #respond .admissions-masthead input#submit.alt,
.admissions-masthead .woocommerce a.button.alt,
.woocommerce .admissions-masthead a.button.alt,
.admissions-masthead .woocommerce button.button.alt,
.woocommerce .admissions-masthead button.button.alt,
.admissions-masthead .woocommerce input.button.alt,
.woocommerce .admissions-masthead input.button.alt {
  float: right;
  font-size: 0.7em;
}

@media screen and (max-width: 768px) {
  .mobile-hero-image {
    width: 100%;
    height: 10em;
    background-size: cover;
    background-position: 50%;
  }
}
.homepage-banner {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .homepage-banner-image {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: -3;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50%;
  }
}
.main-hero-wrapper {
  display: block;
  max-width: 70em;
  margin: 0 auto;
  padding: 0;
}
@media screen and (min-width: 769px) {
  .main-hero-wrapper {
    padding: 2.5em 1em;
  }
}

.main-hero {
  width: 100%;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .main-hero {
    max-width: 34em;
  }
}

.main-hero-content-wrapper {
  position: relative;
  overflow: hidden;
}

.main-hero-content {
  position: relative;
  display: inline-block;
  background-color: white;
  padding: 1em 3.5em 1em 1em;
  float: left;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .main-hero-content {
    padding: 2em 4em 2em 2em;
  }
}

.main-hero-link {
  display: inline-block;
  float: left;
}
.main-hero-link:after {
  content: "";
  background-image: url("_/svg/src/black/arrow-right.svg");
  background-color: #ffc83c;
  background-repeat: no-repeat;
  background-size: 0.5em;
  background-position: 50%;
  position: absolute;
  top: 0;
  right: 0;
  width: 2.5em;
  height: 100%;
}

.main-hero-title {
  display: block;
  font-size: 1.8em;
  margin: 0.4em 0;
  line-height: 1.2;
}
@media screen and (min-width: 769px) {
  .main-hero-title {
    font-size: 2em;
  }
}

.main-hero-content p {
  display: none;
}
@media screen and (min-width: 500px) {
  .main-hero-content p {
    display: block;
    margin: 0 0 0.5em 0;
  }
}

.main-hero-image-wrapper {
  margin-left: -1em;
  margin-right: -1em;
}

.main-hero-image {
  background-size: cover;
  background-position: 50%;
  width: 100%;
  height: 10em;
}
@media screen and (min-width: 769px) {
  .main-hero-image {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 66.6%;
    width: auto;
    height: auto;
  }
}

.main-hero .main-hero-image-wrapper {
  display: none;
}
@media screen and (min-width: 769px) {
  .main-hero .main-hero-image-wrapper {
    display: block;
  }
}

.main-hero .button, .main-hero .woocommerce #respond input#submit.alt, .woocommerce #respond .main-hero input#submit.alt,
.main-hero .woocommerce a.button.alt,
.woocommerce .main-hero a.button.alt,
.main-hero .woocommerce button.button.alt,
.woocommerce .main-hero button.button.alt,
.main-hero .woocommerce input.button.alt,
.woocommerce .main-hero input.button.alt {
  display: none;
}
@media screen and (min-width: 769px) {
  .main-hero .button, .main-hero .woocommerce #respond input#submit.alt, .woocommerce #respond .main-hero input#submit.alt,
.main-hero .woocommerce a.button.alt,
.woocommerce .main-hero a.button.alt,
.main-hero .woocommerce button.button.alt,
.woocommerce .main-hero button.button.alt,
.main-hero .woocommerce input.button.alt,
.woocommerce .main-hero input.button.alt {
    display: inline-block;
    width: auto;
  }
}

.homepage-hero-links-wrapper {
  float: left;
  background-color: rgba(38, 46, 40, 0.95);
  width: 100%;
}

.homepage-hero-links-nav {
  margin: 0 auto;
  max-width: 70em;
}

.homepage-hero-links-list {
  margin: 0;
  color: white;
  padding: 0;
}

.homepage-hero-links-list li {
  display: block;
  width: 100%;
  border-bottom: 1px solid #292d2a;
}
@media screen and (min-width: 500px) {
  .homepage-hero-links-list li {
    width: 50%;
    float: left;
    border-left: 1px solid #292d2a;
  }
}
@media screen and (min-width: 980px) {
  .homepage-hero-links-list li {
    display: inline-block;
    width: 25%;
    border-bottom: 0;
  }
}

.homepage-hero-links-list li a {
  position: relative;
  display: block;
  font-size: 1em;
  text-decoration: none;
  padding: 1em;
  color: white;
  transition: 0.5s;
}
.homepage-hero-links-list li a:hover {
  background-color: #2d342f;
}
.homepage-hero-links-list li a:after {
  position: absolute;
  top: 50%;
  transform: translate(50%, -100%);
  left: 0;
  margin-left: 1em;
}
@media screen and (max-width: 500px) {
  .homepage-hero-links-list li a:after {
    background-image: url("_/svg/src/arrow-right.svg");
    right: 1em;
    left: auto;
    background-size: 0.5em;
    background-position: 0 100%;
  }
}
@media screen and (min-width: 500px) {
  .homepage-hero-links-list li a {
    text-align: center;
    padding: 1em 1em 1em 2em;
  }
}
@media screen and (min-width: 769px) {
  .homepage-hero-links-list li a {
    padding: 1.5em 1em 1.5em 3em;
  }
}

.about-us-wrapper {
  background-color: white;
  float: left;
  width: 100%;
  padding: 1em 0 0 0;
}
@media screen and (min-width: 769px) {
  .about-us-wrapper {
    padding: 3em 0;
  }
}

.about-us-module {
  max-width: 70em;
  padding: 1em 1em 0 1em;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .about-us-module {
    padding: 0 1em;
  }
}

.about-us-module-content {
  float: left;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .about-us-module-content {
    width: 50%;
    display: inline-block;
  }
}

.about-us-module-title {
  font-family: "Georgia", serif;
  font-weight: 300;
  font-size: 1.4em;
  margin-top: 0;
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 3px solid #efefef;
}

.about-us-module-content p {
  margin: 0.5em 0;
}

.about-us-module-video-wrapper {
  float: left;
  padding: 2em 0 0 0;
  width: 100%;
  max-width: 100%;
}
@media screen and (min-width: 769px) {
  .about-us-module-video-wrapper {
    max-width: 50%;
    float: right;
    padding: 0 0 0 4em;
    margin: 0;
  }
}

.about-us-video {
  position: relative;
  padding-bottom: 56.25%;
  margin-left: -1em;
  margin-right: -1em;
}
@media screen and (min-width: 769px) {
  .about-us-video {
    margin-left: 0;
    margin-right: 0;
  }
}

.about-us-video iframe,
.about-us-video object,
.about-us-video embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.what-to-see-wrapper {
  padding: 1em 0.5em;
  float: left;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .what-to-see-wrapper {
    padding: 2em 0;
  }
}

.what-to-see-masthead-wrapper {
  display: block;
}

.what-to-see-masthead {
  max-width: 70em;
  margin: 0 auto;
  margin-bottom: 1.5em;
}

.what-to-see-sub-title {
  display: block;
  font-size: 0.9em;
}

.what-to-see {
  max-width: 70em;
  margin: 0 auto;
  padding: 0 1em;
}

.what-to-see-list {
  padding: 0;
  list-style: none;
}
@media screen and (min-width: 769px) {
  .what-to-see-list {
    margin: 0 -1em;
  }
}

.what-to-see-list > li {
  float: left;
  width: 100%;
}
@media screen and (min-width: 40em) {
  .what-to-see-list > li {
    width: 50%;
    padding: 0 1em 1em 1em;
  }
}
@media screen and (min-width: 900px) {
  .what-to-see-list > li {
    width: 66.6%;
  }
}

.what-to-see-list > li:nth-child(2n) {
  width: 100%;
}
@media screen and (min-width: 40em) {
  .what-to-see-list > li:nth-child(2n) {
    float: right;
    width: 50%;
  }
}
@media screen and (min-width: 900px) {
  .what-to-see-list > li:nth-child(2n) {
    width: 33.3%;
  }
  .what-to-see-list > li:nth-child(2n) .module, .what-to-see-list > li:nth-child(2n) .module-small {
    border: 0;
    background-color: transparent;
    padding: 0;
  }
  .what-to-see-list > li:nth-child(2n) .module-thumbnail-link {
    margin: 0 0 1em;
  }
}

.what-to-see-list li > .module, .what-to-see-list li > .module-small {
  padding: 1em;
}
.what-to-see-list li > .module p, .what-to-see-list li > .module-small p {
  font-size: 0.9em;
  margin: 1em 0;
}

@supports (-webkit-transition-property: all) or (transition-property: all) {
  .animatein {
    opacity: 0;
    animation: reveal 2s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
    animation-delay: 1s;
  }
}
@keyframes reveal {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20%);
    -moz-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}
.content-header {
  position: relative;
  margin-bottom: 1em;
  border-bottom: 3px solid #efefef;
  padding-bottom: 0.5em;
}
.content-header h1 {
  margin: 0.2em 0;
}

.content-title, .screen-reader-text, .further-reading-item-title, .qa-question, .opportunity-list-item-title {
  font-family: "Georgia", serif;
  font-weight: 300;
  color: black;
}

.content-sub-title {
  font-family: "Georgia", serif;
  font-weight: 300;
  font-style: italic;
  margin-top: 0;
  color: #31452b;
}

.content-sub-title.scientific-name {
  margin: 0 0 1em 0;
}

.content-sub-title.description {
  margin-bottom: 1em;
}

.single-header-hero-wrapper {
  position: relative;
  width: 100%;
  display: inline-block;
  background-size: cover;
  margin-bottom: 1em;
}

.single-header-hero {
  background-color: white;
  border: 1px solid #efefef;
  max-width: 70em;
  display: block;
  margin: 0 auto;
  margin-left: -1em;
  margin-right: -1em;
  padding: 2em 1em;
}
@media screen and (min-width: 769px) {
  .single-header-hero {
    padding: 2em;
    margin: 0;
  }
}

.single-header-hero-title {
  margin: 0.5em 0;
}

.attraction-hero-title {
  margin: 0.5em 0 0 0;
}

.single-hero-details-wrapper {
  max-width: 50em;
  padding: 0 1em;
  border: 3px solid #efefef;
  background-color: #fafafa;
  margin-top: 1em;
  margin-left: -1em;
  margin-right: -1em;
}
@media screen and (min-width: 769px) {
  .single-hero-details-wrapper {
    margin-left: -3em;
    margin-right: -3em;
  }
}

.single-header-hero p {
  font-weight: 300;
  font-style: italic;
  font-size: 0.9em;
  font-family: "Georgia", serif;
}
@media screen and (min-width: 769px) {
  .single-header-hero p {
    font-size: 1em;
    padding: 1em 1em 1em 1.5em;
  }
}

.accommodation-list-item-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 1em;
  background-color: white;
  border: 1px solid #efefef;
}

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