/*!
Theme Name: ace
Theme URI: http://underscores.me/
Author: Chad Rossouw for HdK
Author URI: https://wearehdk.com/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: ace
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

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

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

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
/*Font Weights*/
.has-medium-font-size {
  font-size: 1.25rem;
}

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

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

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

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

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

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

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

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
/* assistant-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Assistant";
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/assistant-v24-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* assistant-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Assistant";
  font-style: normal;
  font-weight: 600;
  src: url("../assets/fonts/assistant-v24-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* assistant-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Assistant";
  font-style: normal;
  font-weight: 700;
  src: url("../assets/fonts/assistant-v24-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
body,
button,
input,
select,
optgroup,
textarea {
  color: #1a1a1a;
  font-family: "Assistant", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 500;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #c5580f;
  font-weight: 400;
  line-height: 110%;
  margin: 0 0 1rem;
}
h1 + h1,
h1 + h2,
h1 + h3,
h1 + h4,
h2 + h1,
h2 + h2,
h2 + h3,
h2 + h4,
h3 + h1,
h3 + h2,
h3 + h3,
h3 + h4,
h4 + h1,
h4 + h2,
h4 + h3,
h4 + h4,
h5 + h1,
h5 + h2,
h5 + h3,
h5 + h4,
h6 + h1,
h6 + h2,
h6 + h3,
h6 + h4 {
  margin-top: -1rem;
}

h1 {
  font-size: 2.4rem;
  font-weight: 700;
}

h2 {
  font-size: 1.8rem;
  font-weight: 700;
}

h3 {
  font-size: 1.25rem;
  font-weight: 700;
}
h3.lc {
  text-transform: uppercase;
}

h4 {
  font-size: 1.1rem;
  font-weight: 700;
}

h5 {
  font-size: 1rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 1rem;
  line-height: 1.625rem;
  font-weight: 500;
}

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

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #E8E8E8;
  font-family: mono, sans-serif;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: mono, sans-serif;
}

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

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

big {
  font-size: 125%;
}

/*Typography Utilities*/
.weight-bold {
  font-weight: 700;
}

.lc {
  text-transform: initial;
}

.uc {
  text-transform: uppercase;
}

.large {
  font-size: 1.2rem;
  line-height: 125%;
}

@media screen and (min-width: 1000px) {
  .large {
    line-height: 125%;
  }
}
.small {
  font-size: 80%;
}

::-moz-selection {
  color: var(--color-white-to-black);
  background: var(--color-secondary);
}

::selection {
  color: var(--color-white-to-black);
  background: var(--color-secondary);
}

.bold {
  font-weight: 700;
}

.center {
  text-align: center;
}

a.arrow_link {
  position: relative;
  padding-right: 2rem;
  width: fit-content;
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
}
a.arrow_link::after {
  content: "";
  height: 0.8rem;
  width: 1.2rem;
  display: block;
  top: calc(50% - 0.4rem);
  right: 0;
  background-image: url(../assets/arrow.svg);
  background-size: contain;
  position: absolute;
  background-repeat: no-repeat;
  transition: transform var(--transition) ease;
}
a.arrow_link:hover::after {
  transform: translateX(0.2rem);
}
@media (prefers-reduced-motion: reduce) {
  a.arrow_link:hover::after {
    transform: none;
  }
}

a:focus {
  outline: 2px solid;
  outline-offset: 0.2rem;
}

/* Elements
--------------------------------------------- */
html {
  --header-height: 8rem;
  --header-height-min: 4.5rem;
  --margin: 8vw;
  --transition: 400ms;
}

@media (prefers-reduced-motion) {
  html {
    --transition:0ms;
  }
}
@media screen and (min-width: 700px) {
  html {
    --margin: 10vw;
  }
}
@media screen and (min-width: 1000px) {
  html {
    --margin: 10vw;
  }
}
@media screen and (min-width: 1200px) {
  html {
    --margin: 6vw;
    --header-height: clamp(5rem,10vw,11rem);
    --nav-padding: 6vw;
  }
}
@media screen and (min-width: 1600px) {
  html {
    --margin: calc((100vw - 1240px) / 2);
  }
}
.grecaptcha-badge {
  display: none !important;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-height);
}

html,
body {
  width: 100vw;
  overflow-x: hidden;
}

body {
  background-color: #f7f7f7;
  color: #1a1a1a;
}

.scroll_lock,
.scrolly_lock,
.scroll-lock {
  overflow: hidden;
}

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

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

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

figure {
  margin: 1em 0;
}

/*Lists*/
ul,
ol {
  margin: 0 0 1.5em 0;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

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

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/*Links*/
a {
  color: #1b2f41;
  text-decoration-thickness: 0.05em;
  transition: text-decoration-thickness var(--transition) ease, color var(--transition) ease;
  text-underline-offset: 0.25em;
}
a:visited {
  color: #1b2f41;
}
a:hover, a:focus, a:active {
  color: #0f151b;
  text-decoration-thickness: 0.1em;
}
a:hover, a:active {
  outline: 0;
}
a:focus {
  outline: 2px solid;
}

/*Input Fields*/
input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #1a1a1a;
  border: 1px solid #E8E8E8;
  border-radius: 0;
  padding: 0.5rem 1rem;
  transition: border var(--transition) ease;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  outline: 1px solid #1b2f41;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=url]::placeholder,
input[type=password]::placeholder,
input[type=search]::placeholder,
input[type=number]::placeholder,
input[type=tel]::placeholder,
input[type=range]::placeholder,
input[type=date]::placeholder,
input[type=month]::placeholder,
input[type=week]::placeholder,
input[type=time]::placeholder,
input[type=datetime]::placeholder,
input[type=datetime-local]::placeholder,
input[type=color]::placeholder,
textarea::placeholder {
  color: #1a1a1a;
}

select {
  color: #1a1a1a;
  border: 1px solid #E8E8E8;
  border-radius: 5px;
  padding: 10px;
  max-width: 100%;
}

/* For IE (thanks to @SaiManoj) */
textarea {
  width: 100%;
}

/*Buttons*/
button,
input[type=button],
input[type=reset],
input[type=submit],
.button,
.decorative {
  background: #1b2f41;
  color: #fff;
  display: block;
  text-align: left;
  padding: 0.6rem 1rem;
  line-height: 1;
  text-decoration: none;
  border: none;
  border-radius: 0;
  text-transform: none;
  font-weight: 600;
  letter-spacing: 0.05em;
  transition: text-decoration 400ms ease;
  cursor: pointer;
}
button .unset-button,
input[type=button] .unset-button,
input[type=reset] .unset-button,
input[type=submit] .unset-button,
.button .unset-button,
.decorative .unset-button {
  background: none;
  color: currentColor;
  display: inline;
  padding: 0;
}

.decorative {
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: background-color 400ms ease, color 400ms ease;
  color: var(--color-white-to-black);
  background-color: var(--color-secondary-to-white);
}
.decorative:hover, .decorative:focus {
  text-decoration: none;
}

p .decorative {
  display: inline-block;
}

.buttons {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 0.5rem;
}

.no-flexbox-gap .buttons {
  gap: 0;
}
.no-flexbox-gap .buttons > * {
  margin-right: 1rem;
}
.no-flexbox-gap .buttons > *:last-child {
  margin-right: 0;
}

button[disabled] {
  opacity: 0.3;
  cursor: default;
}

/*Details*/
details {
  padding: 1rem 0;
  border-top: 1px solid #c5580f;
  -webkit-user-select: none;
  user-select: none;
  /*This is to stop margins overflowing and messing up the calculations on the animation */
}
details > summary {
  list-style: none;
  position: relative;
  color: #c5580f;
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 1rem;
}
details > summary:hover {
  cursor: pointer;
}
details > summary::after {
  content: "";
  position: absolute;
  top: 0.2rem;
  right: 0;
  width: 22px;
  height: 22px;
  transition: transform var(--transition) ease-in;
  transform-origin: center center;
  line-height: 0;
  background-image: url(../assets/down_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}
details > summary h4 {
  margin-bottom: 0;
  margin-right: 2rem;
}
details .panel {
  padding: 1px 0;
}

summary::-webkit-details-marker {
  display: none;
}

details.open {
  /*  .content {
     filter:opacity(1) blur(0);
   } */
}
details.open > summary::after {
  transform: rotate(180deg);
}

h3 ~ details {
  margin-bottom: 0.5rem;
}

@media screen and (min-width: 1200px) {
  .mobile-only {
    display: none;
  }
}
@media screen and (min-width: 1200px) {
  .mobile_only {
    display: none !important;
  }
}

@media screen and (max-width: 1200px) {
  .desktop_only {
    display: none !important;
  }
}
/*Borders*/
.border_bottom {
  border-bottom: 2px solid var(--color-secondary);
}

p.caption {
  font-size: 0.875rem;
}

figure {
  margin-bottom: 0;
}

/*HoneyPot*/
input#hp {
  display: none;
}

.hide {
  display: none;
}

/*Colors & bgs*/
#page {
  background: #f7f7f7;
}

.black {
  color: #1a1a1a;
}

.body {
  color: #1a1a1a;
}

.white {
  color: #f7f7f7;
}

.primary {
  color: #1b2f41;
}

.secondary {
  color: #c5580f;
}

.bg-black,
.bg_black {
  background-color: #1a1a1a;
}
.bg-bg,
.bg_bg {
  background-color: #f7f7f7;
}
.bg-white,
.bg_white {
  background-color: #f7f7f7;
}
.bg-grey,
.bg_grey {
  background-color: #E8E8E8;
}
.bg-primary,
.bg_primary {
  background-color: #1b2f41;
}
.bg-secondary,
.bg_secondary {
  background-color: #c5580f;
}
.bg-secondary_sub,
.bg_secondary_sub {
  background-color: var(--color-secondary-lighter);
}

.error {
  color: #a01313;
}

/*Proportional Images*/
.container.container--square {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--square {
    aspect-ratio: 1;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--square {
    padding-top: 100%;
    height: 0;
  }
}
.container.container--round {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 50%;
}
@supports (aspect-ratio: 16/9) {
  .container.container--round {
    aspect-ratio: 1;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--round {
    padding-top: 100%;
    height: 0;
  }
}
.container.container--sixteennine {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--sixteennine {
    aspect-ratio: 1.7777777778;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--sixteennine {
    padding-top: 56.25%;
    height: 0;
  }
}
.container.container--fourthree {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--fourthree {
    aspect-ratio: 1.3333333333;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--fourthree {
    padding-top: 75%;
    height: 0;
  }
}
.container.container--twentyonenine {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--twentyonenine {
    aspect-ratio: 2.3333333333;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--twentyonenine {
    padding-top: 42.85%;
    height: 0;
  }
}
.container.container--fivefour {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--fivefour {
    aspect-ratio: 1.25;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--fivefour {
    padding-top: 80%;
    height: 0;
  }
}
.container.container--fourfive {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--fourfive {
    aspect-ratio: 0.8;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--fourfive {
    padding-top: 125%;
    height: 0;
  }
}
.container.container--twothree {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--twothree {
    aspect-ratio: 0.6666666667;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--twothree {
    padding-top: 150%;
    height: 0;
  }
}
.container.container--threetwo {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@supports (aspect-ratio: 16/9) {
  .container.container--threetwo {
    aspect-ratio: 1.5;
  }
}
@supports not (aspect-ratio: 16/9) {
  .container.container--threetwo {
    padding-top: 66%;
    height: 0;
  }
}
.container.container--video {
  overflow: visible;
}
.container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 35%;
}
.container.container--max-height {
  height: 375px;
  width: fit-content;
  position: static;
}
.container.container--max-height img {
  height: 100%;
  width: auto;
  position: static;
  max-width: calc(100vw - 2 * var(--margin));
  object-fit: contain;
}

.cover img {
  width: 100%;
  height: auto;
}

/*responsive padding and margins*/
.margins {
  margin: 1rem var(--margin);
}
@media screen and (min-width: 1200px) {
  .margins {
    margin: 2rem var(--margin) 3rem;
  }
}

.padding {
  padding: 1rem var(--margin) 2rem;
}
@media screen and (min-width: 1200px) {
  .padding {
    padding: 2rem var(--margin) 3rem;
  }
}

.double_padding {
  padding-left: var(--margin);
  padding-right: var(--margin);
}
@media screen and (min-width: 1000px) {
  .double_padding {
    padding-left: calc(var(--margin) * 2);
    padding-right: calc(var(--margin) * 2);
  }
}

.padding.padding--half {
  padding: 4rem var(--margin);
}
@media screen and (min-width: 1200px) {
  .padding.padding--half {
    padding: 4rem calc(var(--margin) / 2);
  }
}

.margin-left {
  margin-left: var(--margin);
}

.margin-right {
  margin-right: var(--margin);
}

.padding-left {
  padding-left: var(--margin);
}

.padding-right {
  padding-right: var(--margin);
}

/*Grid and Flex*/
.grid {
  display: grid;
}

.grid--two-column.margins .padding {
  padding-left: 0;
  padding-right: 0;
}
.grid--two-column.margins .margins {
  margin-left: 0;
  margin-right: 0;
}

.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flex.flex_50 > .flex_item, .flex.flex_50 > .flex--item {
  flex-basis: 100%;
}
.flex.flex_66-33 > .flex_item, .flex.flex_33 > .flex_item {
  flex-basis: 100%;
}
.flex.flex_25 > .flex_item {
  flex-basis: 100%;
}
.flex.flex_20 {
  justify-content: start;
  gap: 2%;
}
.flex.flex_20 > .flex_item {
  flex-basis: 48%;
}
.flex.flex_25-75 > .flex_item {
  flex-basis: 100%;
}

@media screen and (min-width: 700px) {
  .flex.flex_50 > .flex_item, .flex.flex_50 > .flex--item {
    flex-basis: calc(50% - 2rem);
  }
  .flex.flex_33 {
    flex-wrap: wrap;
  }
  .flex.flex_33 > .flex_item {
    flex-basis: calc(33% - 1.66rem);
  }
  .flex.flex_33::after {
    content: "";
    flex-basis: calc(33% - 1.66rem);
  }
  .flex.flex_25 > .flex_item {
    flex-basis: 48%;
  }
  .flex.flex_20 > .flex_item {
    flex-basis: 18%;
  }
}
@media screen and (min-width: 1000px) {
  .flex.flex_66-33 > .flex_item {
    flex-basis: 67%;
  }
  .flex.flex_66-33 > .flex_item:nth-child(2n) {
    flex-basis: 33%;
  }
  .flex.flex_25 {
    gap: 2.5%;
  }
  .flex.flex_25::after {
    content: "";
    flex-grow: 1;
  }
  .flex.flex_25 > .flex_item {
    flex-basis: 23%;
  }
  .flex.flex_25-75 .flex_item:nth-child(1) {
    flex-basis: 25%;
    margin-right: 2rem;
  }
  .flex.flex_25-75 .flex_item:nth-child(2) {
    flex-basis: calc(75% - 2rem);
  }
}
@media screen and (min-width: 1200px) {
  .flex.flex_66-33 > .flex_item {
    flex-basis: 55%;
  }
  .flex.flex_66-33 > .flex_item:nth-child(2n) {
    flex-basis: 33%;
  }
}
.inner-padding {
  padding: 2rem;
}

.fixed {
  position: fixed;
  top: 0;
}

/*--------------------------------------------------------------

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
/*Header*/
header#masthead {
  height: var(--header-height);
  position: fixed;
  width: 100%;
  max-width: 100vw;
  top: 0;
  padding: 0;
  z-index: 999;
  transition: padding var(--transition) ease, margin var(--transition) ease;
}
@media screen and (min-width: 1200px) {
  header#masthead {
    display: grid;
    grid-template-rows: minmax(3rem auto) calc(var(--header-height) - 3rem);
    padding-top: 0;
  }
}

/* @include media1200 {
	header#masthead {
		/* padding: 2.1875rem calc(var(--margin) / 2) 0;
		height: var(--header-height);
		width: 100vw;
		align-items: center;
		justify-content: center; */
/* 	}
} */
.header.indent {
  width: 100vw;
  position: relative;
  display: block;
  padding-left: var(--margin);
  padding-right: var(--margin);
}

.header.bg_secondary {
  display: grid;
  grid-template-columns: 1fr 64px 1fr;
  grid-template-rows: 1.5rem 64px;
  max-height: calc(var(--header-height) + 8px);
  position: relative;
  padding-left: var(--nav-padding);
  padding-right: var(--nav-padding);
}
@media screen and (min-width: 1200px) {
  .header.bg_secondary {
    grid-template-columns: max-content auto max-content max-content;
    grid-template-rows: 1rem calc(var(--header-height) - 4rem);
    max-height: calc(var(--header-height) - 3rem + 8px);
    grid-row: 2/3;
    height: 100%;
  }
}
.header.bg_secondary .utilities {
  color: #fff;
  display: flex;
  flex-direction: column;
  text-align: center;
}

/* .header.bg_secondary.indent::after {
	top: calc(var(--header-height) + 7px);
	@include media1200 {
		top: unset;
	}
} */
/* .header:has(.toggled),
.muted .header {
	border-bottom: 1px solid $color-secondary-light;
	&.indent::after {
		filter: drop-shadow(0 1px 0 $color-secondary-light);
	}
} */
.header.indent {
  border-bottom: 1px solid #c5580f;
}
.header.indent::after {
  filter: drop-shadow(0 1px 0 #c5580f);
}
.header.indent:has(.toggled) {
  border-bottom: 1px solid #db6f27;
}
.header.indent:has(.toggled)::after {
  filter: drop-shadow(0 1px 0 #db6f27);
}

.muted .header.indent {
  border-bottom: 1px solid #db6f27;
}
.muted .header.indent::after {
  filter: drop-shadow(0 1px 0 #db6f27);
}

/*This sets padding on everypage to account for the absolute positioned header*/
#primary {
  transition: padding var(--transition) ease;
  padding-top: var(--header-height);
  background: #f7f7f7;
}

/*and this to stop the white space forming when admin bar is on*/
#wpadminbar + #page {
  margin-top: -32px;
}

.main-navigation {
  display: flex;
  justify-content: center;
  width: 100vw;
  position: absolute;
  top: 100%;
  left: 0;
  background: #c5580f;
  padding-top: clamp(2rem, 3vw, 4rem);
  padding-bottom: 7.2rem;
  height: auto;
  color: #fff;
  text-align: center;
  transform: translateY(-150%);
  transition: transform var(--move-transition) ease-in;
  z-index: -1;
  max-height: calc(var(--vh) * 100 - (var(--header-height)) + 1px);
  min-height: calc(var(--vh) * 100 - (var(--header-height)) + 1px);
}
@supports (height: 100dvh) {
  .main-navigation {
    max-height: calc(100dvh - (var(--header-height)) + 1px);
    min-height: calc(100dvh - (var(--header-height)) + 1px);
    overflow: auto;
  }
}
@media screen and (min-width: 1200px) {
  .main-navigation {
    height: calc(var(--vh) * 100 - var(--header-height) + 1px);
    max-height: calc(var(--vh) * 100 - var(--header-height) + 1px);
    min-height: calc(var(--vh) * 100 - var(--header-height) + 1px);
  }
  @supports (height: 100dvh) {
    .main-navigation {
      max-height: calc(100dvh - (var(--header-height)) + 1px);
      min-height: calc(100dvh - (var(--header-height)) + 1px);
      height: calc(100dvh - (var(--header-height)) + 1px);
    }
  }
}
.main-navigation.toggled {
  transform: translate(0, 0);
}
.main-navigation ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.main-navigation li {
  position: relative;
}
.main-navigation a {
  display: block;
  text-decoration: none;
}
.main-navigation .switch {
  border: 1px solid white;
}

.main-navigation-inner {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: fit-content;
}
.main-navigation-inner > .text_sizer {
  margin-bottom: 1rem;
}
.main-navigation-inner > .social_media_wrapper {
  margin: 4rem 0;
}

#primary-menu, #featured-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 0.5rem;
  max-width: 95vw;
  margin: 0 auto;
}
#primary-menu li a, #featured-menu li a {
  color: #fff;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 125%;
  transition: color var(--transition) ease-in;
  position: relative;
  margin-bottom: 0.5rem;
}
#primary-menu li a::after, #featured-menu li a::after {
  content: "";
  position: absolute;
  height: 2px;
  width: 100%;
  background-color: #1b2f41;
  bottom: 0;
  left: 0;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--transition) ease-in;
}
#primary-menu li a:hover::after, #featured-menu li a:hover::after {
  transform: scaleX(1);
}
@media screen and (min-width: 1200px) {
  #primary-menu li a, #featured-menu li a {
    font-size: 2rem;
  }
}
@media (forced-colors: active) {
  #primary-menu li a, #featured-menu li a {
    text-decoration: underline;
  }
  #primary-menu li a:hover, #featured-menu li a:hover {
    text-decoration-thickness: 0.3em;
  }
}

/* #featured-menu {
	margin-top: 1rem;
	@include media1000 {
		margin-top: unset;
	}
	li a {
		margin-bottom: 1rem;
		color: white;
		text-align: center;
		font-weight: bold;

		font-size: 1.5rem;
		position: relative;
		width: fit-content;
		margin: 0 auto;
		margin-bottom: clamp(0.5rem, 1vw, 2rem);
		&::after {
			content: "";
			position: absolute;
			height: 2px;
			width: 100%;
			max-width: 2rem;
			background-color: $color_primary;
			bottom: 0;
			left: 50%;
			transform: translate(-50%);
			transform-origin: center;
			transition: max-width var(--transition) ease-in;
		}
		&:hover {
			color: $color_primary;
			&::after {
				max-width: 100%;
			}
		}
		@include media1200 {
			font-size: 2rem;
		}
		@media (forced-colors: active){
			text-decoration: underline;
			&:hover{
				text-decoration-thickness: .3em;
			}
		}
	}
} */
#site-registration {
  grid-row: 1/2;
  grid-column: 1/4;
  display: none;
}
#site-registration a {
  color: #fff;
  text-decoration: none;
  height: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 0.5rem;
}
#site-registration a:hover {
  text-decoration: underline;
}
@media screen and (min-width: 1200px) {
  #site-registration {
    display: flex;
    grid-row: 2/3;
    justify-content: flex-start;
    align-items: center;
    grid-column: auto;
    width: fit-content;
  }
}

a.home_link {
  color: #fff;
  text-decoration: none;
  grid-row: 1/3;
  grid-column: 1/2;
}
@media screen and (min-width: 1200px) {
  a.home_link {
    grid-column: 3/4;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 0.2rem;
    position: relative;
    column-gap: 0.5rem;
    width: fit-content;
    align-self: center;
    justify-self: end;
  }
}
@media screen and (min-width: 1200px) {
  a.home_link::after {
    content: "";
    right: -18px;
    display: block;
    position: absolute;
    font-size: 1rem;
    background-color: #fff;
    width: 1px;
    height: 2.5rem;
  }
}
a.home_link:hover {
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-thickness: 2px;
}

a.home_link.mobile_only {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
  height: fit-content;
  margin: auto 0;
}

/*Pre-header*/
.pre-header {
  padding: 0.4rem var(--margin);
  border-bottom: 1px solid #db6f27;
  width: 100vw;
}
@media screen and (max-width: 320px) {
  .pre-header {
    flex-wrap: nowrap;
  }
}
@media screen and (min-width: 1200px) {
  .pre-header {
    grid-row: 1/2;
    padding: 0 var(--nav-padding);
    justify-content: space-between;
    align-items: center;
    height: 100%;
  }
}
.pre-header .utilities {
  color: #fff;
  margin-left: -0.5rem;
}
@media screen and (min-width: 1200px) {
  .pre-header .utilities {
    align-items: center;
    column-gap: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .pre-header .utilities .flex_item {
    padding-right: 2rem;
    height: 100%;
    position: relative;
  }
  .pre-header .utilities .flex_item.translate {
    padding-top: 3px;
    padding-bottom: 3px;
  }
  .pre-header .utilities .flex_item::after {
    content: "";
    display: block;
    position: absolute;
    height: 1.75rem;
    width: 1px;
    background-color: #fff;
    right: 0;
    top: calc(50% - 0.875rem);
  }
}
@media screen and (min-width: 1200px) {
  .pre-header .utilities .flex_item:last-of-type {
    border-right: none;
  }
  .pre-header .utilities .flex_item:last-of-type::after {
    display: none;
  }
}

.pre-header .utilities .mode {
  display: none;
}
@media screen and (min-width: 1200px) {
  .pre-header .utilities .mode {
    display: flex;
  }
}

.header .bsl {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
}
.header .bsl a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(0.8rem, 3vw, 1rem);
}
.header .bsl a svg {
  width: clamp(10px, 3vw, 25px);
}
.header .bsl a:focus {
  outline: 2px solid #fff;
}

.pre-header .utilities .text_sizer {
  display: none;
}
@media screen and (min-width: 1200px) {
  .pre-header .utilities .text_sizer {
    display: flex;
  }
}

@media screen and (max-width: 400px) {
  #primary-menu li a {
    font-size: 1.5rem;
    line-height: 2.25rem;
    text-align: center;
  }
}
@media screen and (min-width: 1200px) {
  #primary-menu, #featured-menu {
    width: 100%;
  }
  #primary-menu li a, #featured-menu li a {
    text-transform: none;
    padding-bottom: 0.5rem;
    font-size: 2.2rem;
    margin-bottom: 1rem;
  }
  #primary-menu {
    margin-bottom: 1.2rem;
  }
}
.hamburger_container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: fit-content;
  margin: auto 0;
  grid-row: 1/3;
  grid-column: 3/4;
}
@media screen and (min-width: 1200px) {
  .hamburger_container {
    grid-column: auto;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
    width: fit-content;
    margin-left: 2rem;
  }
}
.hamburger_container label {
  color: #fff;
}

#hamburger {
  position: relative;
  background: transparent;
  transition: top var(--transition) ease;
  z-index: 10;
  width: fit-content;
  height: 40px;
  display: grid;
  justify-content: center;
  align-items: center;
  grid-template-columns: 20px auto;
  gap: 0.5rem;
  padding-top: 4px;
}
@media screen and (min-width: 1200px) {
  #hamburger {
    align-content: center;
  }
}
#hamburger .menu_open {
  display: none;
}
#hamburger.is-active {
  outline: #fff 3px solid;
}
#hamburger.is-active .menu_open {
  display: inline;
}
#hamburger.is-active .menu_closed {
  display: none;
}

@media screen and (min-width: 1200px) {
  #primary-menu li a, #featured-menu li a {
    color: #fff;
  }
}

.hamburger.close-modal {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: var(--header-height);
  background: transparent;
}

.hamburger {
  padding: 5px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: calc(var(--transition) / 2);
  transition-timing-function: linear;
  font: inherit;
  color: #fff;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  /*   &.is-active::before {
     color: $color_white;
     content: "Close";
   } */
}

@media screen and (min-width: 1200px) {
  .hamburger:hover .hamburger-inner,
  .hamburger:hover .hamburger-inner::before,
  .hamburger:hover .hamburger-inner::after {
    background-color: #1b2f41;
  }
  .hamburger:hover span {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    text-decoration-thickness: 2px;
    color: #1b2f41;
  }
  .hamburger.is-active:hover .hamburger-inner,
  .hamburger.is-active:hover .hamburger-inner::before,
  .hamburger.is-active:hover .hamburger-inner::after {
    background-color: #1b2f41;
  }
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #fff;
}

.hamburger-box {
  width: 20px;
  height: 15px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: calc(var(--transition) / 2);
  transition-timing-function: ease;
}

.hamburger-inner::before,
.hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -6px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/* .hamburger.hamburger--collapse {
	.hamburger-inner,
	.hamburger-inner::before,
	.hamburger-inner::after {
		background-color: $color_white;
	}
	span {
		text-decoration: underline;
		text-underline-offset: 0.2em;
		text-decoration-thickness: 2px;
		color: $color_white;
	}
}

.hamburger.hamburger--collapse.is-active,
.hamburger.hamburger--collapse:hover {
	.hamburger-inner,
	.hamburger-inner::before,
	.hamburger-inner::after {
		background-color: $color_primary;
	}
	span {
		text-decoration: underline;
		text-underline-offset: 0.2em;
		text-decoration-thickness: 2px;
		color: $color_primary;
	}
} */
/*

* Hamburger Collapse

*/
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: calc(var(--transition) / 2.2);
  transition-duration: calc(var(--transition) / 2.2);
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse .hamburger-inner::after {
  top: -12px;
  transition: top calc(var(--transition) / 2) calc(var(--transition) / 2) cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity calc(var(--transition) / 4) linear;
}

.hamburger--collapse .hamburger-inner::before {
  transition: top calc(var(--transition) / 3) calc(var(--transition) / 2) cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform calc(var(--transition) / 3) cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -7px, 0) rotate(-45deg);
  transition-duration: calc(var(--transition) / 1.8);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top calc(var(--transition) / 2) cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity calc(var(--transition) / 4) calc(var(--transition) / 2) linear;
}

.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top calc(var(--transition) / 4) calc(var(--transition) / 3) cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform calc(var(--transition) / 3) calc(var(--transition) / 2) cubic-bezier(0.215, 0.61, 0.355, 1);
}

.site-branding .desktop_logo {
  display: none;
}
@media screen and (min-width: 1200px) {
  .site-branding .desktop_logo {
    display: block;
  }
}
@media screen and (min-width: 1200px) {
  .site-branding .mobile_logo {
    display: none;
  }
}
.site-branding a {
  margin: 0 auto;
  display: block;
  width: fit-content;
  color: #fff;
  height: 100%;
}
.site-branding a svg {
  width: 65px;
  height: 64px;
}
@media screen and (min-width: 1200px) {
  .site-branding a svg {
    width: auto;
    height: 100%;
  }
}

/*Mobile Menu*/
.menu-menu-1-container {
  /* 	//background-color: $color_white;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: vh(98);
  box-shadow: 4px 0 4px rgba(0, 0, 0, 0.15);
  transform: translate(0, -110%);
  transition: transform var(--transition) ease-in;
  padding: 1rem 2rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: center;
  flex-direction: column;
  */
  /* 	&::after {
  	content: "";
  	//position: absolute;
  	height: 100%;
  	width: 100vw;
  	//background: $color_black;
  	top: 0;
  	left: 0;
  	z-index: -1;
  	/* 	-webkit-backdrop-filter: blur(15px);
  	backdrop-filter: blur(15px); */
  /* @include media1200 {
  		display: none;
  	} */
  /*} */
}
.menu-menu-1-container .flex.so-me {
  justify-content: center;
  gap: 1rem;
}
@media screen and (min-width: 1200px) {
  .menu-menu-1-container .flex.so-me {
    display: none;
    grid-column: 4/5;
    grid-row: 1/2;
  }
}
.menu-menu-1-container .flex.so-me svg {
  width: 40px;
  height: 40px;
}
.menu-menu-1-container .flex.so-me svg path {
  transition: fill var(--transition) ease-in;
  fill: #fff;
}
.menu-menu-1-container .flex.so-me svg path:hover {
  fill: #1b2f41;
}

.no-flexbox-gap .menu-menu-1-container .flex.so-me {
  gap: 0;
}
.no-flexbox-gap .menu-menu-1-container .flex.so-me > * {
  margin-right: 1rem;
}
.no-flexbox-gap .menu-menu-1-container .flex.so-me > *:last-child {
  margin-right: 0;
}

.toggled #primary-menu {
  background-color: #c5580f;
}

.toggled .menu-menu-1-container {
  transform: translate(0, 0);
  z-index: 5;
}

.menu-item-has-children:hover .sub-menu,
.menu-item-has-children a:focus + .sub-menu {
  transform: translate(0, 0);
}

.mobile_nav_home svg {
  height: 40px;
  width: auto;
  display: block;
}

.mobile_nav_home {
  padding-bottom: 1rem;
  width: 100%;
}
@media screen and (min-width: 1200px) {
  .mobile_nav_home {
    display: none;
  }
}

.small_menu_heading {
  margin-bottom: 0.5rem;
}

.mode,
.text_sizer {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  column-gap: 1rem;
}
.mode p,
.text_sizer p {
  margin: 0;
}

.no-flexbox-gap .mode,
.no-flexbox-gap .text_sizer {
  gap: 0;
}
.no-flexbox-gap .mode > *,
.no-flexbox-gap .text_sizer > * {
  margin-right: 1rem;
}
.no-flexbox-gap .mode > *:last-child,
.no-flexbox-gap .text_sizer > *:last-child {
  margin-right: 0;
}

@media screen and (min-width: 1200px) {
  .main-navigation-inner .text_sizer {
    display: none;
  }
}
@media screen and (min-width: 1200px) {
  .main-navigation-inner .mode {
    display: none;
  }
}

/*Desktop Menu*/
@media screen and (min-width: 1200px) {
  .mobile_nav_home svg {
    display: none;
  }
  .main-navigation ul ul {
    z-index: -1;
  }
  .sub-menu {
    height: auto;
    width: max-content;
    justify-content: space-between;
    flex-direction: column;
    transform: translate(0, -vh(100));
    transition: border-top 600ms ease-in 1200ms;
    top: 0;
    left: -2rem !important;
  }
  .menu-menu-1-container #primary-menu .sub-menu li a::after {
    right: 1rem;
    left: 20rem;
    top: 0.4rem;
    height: 0.8rem;
    background-color: transparent;
    transition: none;
    transform: none;
  }
  .menu-menu-1-container #primary-menu .sub-menu li:hover::before {
    transform: scaleX(70%);
  }
  .menu-item-has-children:hover a::after {
    content: "";
    width: 100%;
    height: 3rem;
    background-color: transparent;
    display: block;
    position: absolute;
  }
  .menu-item-has-children:hover .sub-menu {
    transform: translate(0, 0);
  }
  .menu-item-has-children > *:hover .sub-menu, .menu-item-has-children::before:hover .sub-menu, .menu-item-has-children::after:hover .sub-menu {
    transform: translate(0, 0);
  }
  .menu-item-has-children .sub-menu:hover {
    transform: translate(0, 0);
  }
  .menu-item-has-children.open-sub .sub-menu {
    transform: translate(0, 4.7vh);
  }
  .sub-menu li {
    flex-basis: 33.3%;
    opacity: 1;
    transition: opacity 0.3s ease-in;
  }
  ul.sub-menu::after {
    content: "";
    flex-grow: 1;
  }
  ul.sub-menu {
    padding: var(--header-height) 2rem 3rem;
    padding-right: 4rem;
    z-index: -1;
  }
  .home ul.sub-menu {
    padding: calc(var(--header-height) + 1rem) 2rem 2rem;
  }
  ul.sub-menu li {
    opacity: 0;
    transition: opacity 600ms ease-in 600ms;
  }
  .menu-item-has-children:hover .sub-menu li,
  .menu-item-has-children .sub-menu:hover li {
    opacity: 1;
  }
  .menu-item-has-children:hover ul.sub-menu::before,
  .menu-item-has-children ul.sub-menu:hover::before {
    opacity: 1;
  }
}
/*Branding*/
.site-branding {
  height: calc(var(--header-height) - 3.2rem);
  position: absolute;
  top: 1rem;
  right: 50%;
  transform: translate(50%);
  z-index: 11;
}

.search_toggle {
  background-color: transparent;
  display: inline;
}
.search_toggle svg {
  width: 1.2rem;
  height: 1.2rem;
}

@media screen and (min-width: 1200px) {
  #masthead {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
/*Language Select*/
.header .wpml-ls-legacy-dropdown-click a {
  background-color: #481e02;
  border: transparent;
  color: #fff;
  width: fit-content;
  padding-left: 0;
}
.header .wpml-ls-legacy-dropdown-click {
  width: 15.5em;
  max-width: 45vw;
}
.header .wpml-ls-legacy-dropdown-click .wpml-ls-item a:not(.wpml-ls-item-toggle) {
  padding: 1rem;
}
.header .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
  background-color: #481e02;
}
.header .wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover > a,
.header .wpml-ls-legacy-dropdown-click a:focus,
.header .wpml-ls-legacy-dropdown-click a:hover {
  background: #481e02;
  color: #fff;
  width: fit-content;
  padding-left: 0;
}
.header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
  padding-right: calc(15px + 1.4em);
}
@media screen and (min-width: 1000px) {
  .header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
    padding-right: calc(25px + 1.4em);
  }
}
.header .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a img {
  margin-right: 5px;
}
.header .wpml-ls-link {
  width: 100%;
}
.header .wpml-ls-item-toggle:focus,
.header .wpml-ls-link:focus {
  outline: 2px solid #fff;
  outline-offset: 0.5rem;
}
.header .wpml-ls-item-toggle:hover,
.header .wpml-ls-link:hover {
  text-decoration: underline;
}
@media screen and (min-width: 1200px) {
  .header .wpml-ls-legacy-dropdown-click {
    width: fit-content;
    max-width: 100%;
    padding-right: 2rem;
  }
}
.header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle::after {
  display: block;
  content: " ";
  background-image: url("../assets/down-arrow.svg");
  background-size: 1rem 1rem;
  height: 1rem;
  width: 1rem;
  background-repeat: no-repeat;
  border-top: none;
  border: none;
  top: calc(50% - 0.5rem);
  right: 0;
  transition: transform var(--transition) ease;
}
@media screen and (min-width: 1200px) {
  .header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle::after {
    top: 0;
  }
}
.header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle[aria-expanded=true]::after {
  transform: rotate(180deg);
}
@media screen and (min-width: 1200px) {
  .header .wpml-ls-legacy-dropdown-click {
    width: fit-content;
    max-width: 100%;
    padding-right: 2rem;
  }
  .header .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
    background-color: #481e02;
  }
  .header .wpml-ls-legacy-dropdown-click .wpml-ls-item {
    padding: 0.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}

/*Breadcrumbs*/
.breadcrumbs {
  display: none;
}
@media screen and (min-width: 1200px) {
  .breadcrumbs {
    display: block;
  }
}

.breadcrumbs .crumb svg {
  height: 0.85rem;
  width: auto;
  margin-right: 0.25rem;
  margin-bottom: 0.15rem;
}
.breadcrumbs .crumb svg path {
  fill: #c5580f;
}

.breadcrumb_container {
  margin-bottom: 1rem;
}

.breadcrumbs ol {
  list-style: none;
  display: flex;
  flex-direction: row;
  column-gap: 1rem;
  margin-left: 0;
  padding-left: 0;
  margin-bottom: 0;
}
.breadcrumbs ol a {
  text-decoration: none;
  color: #c5580f;
  display: flex;
  align-items: center;
}
.breadcrumbs ol .crumb {
  font-weight: 700;
  font-size: 0.85rem;
  display: flex;
  align-items: center;
}
.breadcrumbs ol .crumb--current {
  font-weight: 500;
  color: #1a1a1a;
  font-size: 0.85rem;
  display: flex;
  align-items: center;
}

li.crumb::before {
  content: " > ";
  color: #9a9a9a;
  font-size: 1.5rem;
  position: relative;
  margin-right: 1rem;
  font-weight: 400;
}

li.crumb:first-of-type::before {
  content: "";
  margin-right: 0;
}

li.crumb--current::before {
  content: " > ";
  color: #9a9a9a;
  font-size: 1.5rem;
  position: relative;
  margin-right: 1rem;
  font-weight: 400;
}

@media screen and (min-width: 1200px) {
  a.home_link.desktop_only {
    grid-column: auto;
  }
}

.wpml-ls-flag {
  outline: 1px solid white;
}

/* Posts and pages
--------------------------------------------- */
.big_text {
  padding: 4rem 0;
  width: 1080px;
  max-width: calc(100vw - 2 * var(--margin));
  margin: 0 auto;
  font-size: clamp(1.2rem, 3vw, 1.8rem);
  line-height: 175%;
  text-align: left;
}
.big_text strong {
  display: block;
  margin-bottom: 1rem;
}
.big_text p,
.big_text a {
  font-size: clamp(1.2rem, 3vw, 1.8rem);
  line-height: 175%;
}
.big_text a {
  font-weight: 700;
  text-align: center;
  display: block;
}
.big_text a:empty {
  display: none;
}

.text_image .block,
.bsl-video .block {
  padding: 4rem 0;
}
.text_image .block.grid--two-column,
.bsl-video .block.grid--two-column {
  padding: 0;
  grid-template-rows: 1fr 1fr;
}
.text_image .block.grid--two-column .block-text,
.bsl-video .block.grid--two-column .block-text {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.text_image .block.grid--two-column .padding-right,
.bsl-video .block.grid--two-column .padding-right {
  padding-left: var(--margin);
}
.text_image .block.grid--two-column .padding-left,
.bsl-video .block.grid--two-column .padding-left {
  padding-right: var(--margin);
  grid-row: 2/3;
}
@media screen and (min-width: 700px) {
  .text_image .block.grid--two-column,
  .bsl-video .block.grid--two-column {
    grid-template-columns: 1fr 1fr;
    gap: 0;
    grid-template-rows: minmax(420px, min-content);
  }
  .text_image .block.grid--two-column .padding-right,
  .bsl-video .block.grid--two-column .padding-right {
    padding-left: 4rem;
  }
  .text_image .block.grid--two-column .padding-left,
  .bsl-video .block.grid--two-column .padding-left {
    padding-right: 4rem;
    grid-row: 1/2;
  }
  .text_image .block.grid--two-column .padding-left + .alt-block .alt_block,
  .bsl-video .block.grid--two-column .padding-left + .alt-block .alt_block {
    right: 15px;
  }
}
.text_image .bg-primary .single,
.bsl-video .bg-primary .single {
  width: 680px;
  max-width: calc(100vw - 2 * var(--margin));
}
.text_image .bg-primary .single h3,
.bsl-video .bg-primary .single h3 {
  font-size: 2.2rem;
  color: #c5580f;
}
.text_image .single,
.bsl-video .single {
  width: 1020px;
  max-width: calc(100vw - 2 * var(--margin));
  margin: 0 auto;
}
.text_image h3,
.bsl-video h3 {
  color: #1a1a1a;
  font-size: 1.6rem;
  line-height: 145%;
}
.text_image .cover.block-image.alt-block img,
.bsl-video .cover.block-image.alt-block img {
  height: 100%;
  object-fit: cover;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
.text_image .block-text,
.bsl-video .block-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.bsl-video .block.grid--two-column {
  grid-template-rows: auto auto;
}
@media screen and (min-width: 700px) {
  .bsl-video .block.grid--two-column {
    grid-template-rows: auto;
    grid-template-columns: auto;
  }
  .bsl-video .block.grid--two-column .padding-right {
    padding-left: var(--margin);
  }
  .bsl-video .block.grid--two-column .padding-left {
    padding-right: var(--margin);
  }
}
@media screen and (min-width: 1000px) {
  .bsl-video .block.grid--two-column {
    grid-template-rows: 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 0;
  }
  .bsl-video .block.grid--two-column .padding-right {
    padding-left: 4rem;
  }
  .bsl-video .block.grid--two-column .padding-left {
    padding-right: 4rem;
  }
  .bsl-video .block.grid--two-column .padding-left + .alt-block .alt_block {
    right: 15px;
  }
  .bsl-video .block.grid--two-column .block-text {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
.bsl-video h3 {
  font-size: 2.4rem;
  color: #c5580f;
}

/*So the two anchors aren't hidden by the header*/
#bsl,
#express_your_interest,
#response {
  scroll-margin-top: calc(var(--header-height) + 50px);
}

.muted .text_image:has(.bg-primary_sub, .bg-secondary_sub) ~ .text_image:has(.bg-primary_sub, .bg-secondary_sub) {
  border-top: 1px solid #c5580f;
}

.block_quote {
  position: relative;
  width: 1020px;
  max-width: calc(100vw - 2 * var(--margin));
  margin: 0 auto;
  padding: 4rem 0 4rem;
}
@media screen and (min-width: 1000px) {
  .block_quote {
    padding: 4rem 0;
  }
}
.block_quote::before {
  content: "";
  position: absolute;
  top: 3rem;
  left: 0;
  width: 3rem;
  height: 3.4rem;
  background-image: url(../assets/quotes.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 1000px) {
  .block_quote::before {
    left: -5rem;
    top: 4rem;
    width: 4rem;
  }
}
.block_quote p,
.block_quote footer {
  font-size: 1.4rem;
  line-height: 150%;
  font-weight: 700;
}
.block_quote p {
  color: #c5580f;
}

.content_wrapper .block_quote,
.wp-block-ace-content-blocks .block_quote {
  width: 100%;
}
.content_wrapper .block_quote::before,
.wp-block-ace-content-blocks .block_quote::before {
  top: 0rem;
  left: 0;
}

.blog_list {
  padding-top: 4rem;
  padding-bottom: 4rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.blog_list > a {
  margin-bottom: 2rem;
}
.blog_list > a.mobile_only {
  margin-top: 2rem;
}

.blog_list h2 {
  margin-bottom: 3rem;
}

.blog_list > .flex {
  flex-basis: 100%;
}

.cat-list.flex {
  list-style-type: none;
  padding: 0;
  margin: 0 0 1rem;
  justify-content: flex-start;
  column-gap: 1rem;
}

.no-flexbox-gap .cat-list.flex {
  gap: 0;
}
.no-flexbox-gap .cat-list.flex > * {
  margin-right: 1rem;
}
.no-flexbox-gap .cat-list.flex > *:last-child {
  margin-right: 0;
}

@media screen and (min-width: 1000px) {
  .org_list .two_column {
    flex-direction: row-reverse;
  }
  .org_list .two_column > :last-child {
    flex-basis: 73%;
  }
  .org_list .two_column > :first-child {
    flex-basis: 22%;
  }
}
.org_list h2 {
  margin-bottom: 3rem;
}

/* #filter_list {
	max-height: 0;
	overflow: hidden;
	visibility: hidden;
	transition: max-height var(--move-transition) ease;
	&.open {
		visibility: visible;
		max-height: 1000px;
	}
} */
#open_filters {
  background-color: #c5580f;
  margin: 0 auto 2rem;
  padding: 1rem;
  border-radius: 5px;
}

@media screen and (min-width: 1000px) {
  #filter_list {
    max-height: unset;
    visibility: visible;
  }
  #open_filters {
    display: none;
  }
}
.support_organisation_item {
  margin-bottom: 1rem;
  display: grid;
  grid-template-rows: min-content auto;
}
.support_organisation_item svg {
  display: none;
}
@media screen and (min-width: 1000px) {
  .support_organisation_item svg {
    display: block;
    justify-self: end;
    margin-right: 1rem;
    transition: transform calc(1.5 * var(--transition)) ease;
  }
}
.support_organisation_item a {
  padding: 1rem;
  display: grid;
  grid-template-rows: min-content 1fr;
  gap: 1rem;
  text-decoration: none;
}
@media screen and (min-width: 1000px) {
  .support_organisation_item a {
    grid-template-rows: min-content 1fr min-content;
  }
}
.support_organisation_item a h3 {
  text-decoration: underline;
  text-decoration-thickness: 0.05em;
  line-height: 130%;
}
.support_organisation_item a p {
  text-decoration: none;
  color: #1a1a1a;
}
.support_organisation_item a:hover h3 {
  text-decoration-thickness: 0.1em;
}
.support_organisation_item a:hover svg {
  transform: translateX(0.2rem);
}
@media (prefers-reduced-motion: reduce) {
  .support_organisation_item a:hover svg {
    transform: none;
  }
}

.bg-primary-primary_sub .block-text p {
  color: var(--color-black-to-white);
}
.bg-primary-primary_sub .block-text h3 {
  color: var(--color-secondary-to-white);
}

.support_organisation_item picture.featured-img.alt-block {
  margin: 1rem 1rem 0;
  position: relative;
  height: 0;
  padding-top: 51%;
}
.support_organisation_item picture.featured-img.alt-block img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#response,
#signupform {
  position: relative;
}
#response::before,
#signupform::before {
  z-index: 10;
  content: "";
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 25px);
  border-radius: 25px;
  width: 50px;
  height: 50px;
  border: 5px solid #c5580f;
  border-bottom-color: transparent;
  animation: spin 1s ease-in-out infinite;
  display: none;
}
#response .flex_item,
#signupform .flex_item {
  opacity: 1;
  transition: opacity var(--transition) ease;
}
#response.loading::before,
#signupform.loading::before {
  display: block;
}
#response.loading .flex_item,
#signupform.loading .flex_item {
  opacity: 0.1;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.sidebar.filter_list {
  display: block;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--move-transition) ease;
}
@media screen and (min-width: 1000px) {
  .sidebar.filter_list {
    max-height: unset;
    overflow: initial;
  }
}

.open.sidebar.filter_list {
  max-height: 2000px;
}

#current_filters,
#blog_filters {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  column-gap: 2rem;
  font-weight: 700;
  flex-wrap: wrap;
}

.no-flexbox-gap #current_filters,
.no-flexbox-gap #blog_filters {
  gap: 0;
}
.no-flexbox-gap #current_filters > *,
.no-flexbox-gap #blog_filters > * {
  margin-right: 2rem;
}
.no-flexbox-gap #current_filters > *:last-child,
.no-flexbox-gap #blog_filters > *:last-child {
  margin-right: 0;
}

.current_filters {
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 2rem;
  flex-direction: column;
}
@media screen and (min-width: 1000px) {
  .current_filters {
    gap: 2rem;
    display: grid;
    grid-template-rows: 1fr;
    grid-template-columns: max-content auto max-content;
    align-items: center;
  }
}
.current_filters p {
  margin: 0;
}
.current_filters.hide {
  display: none;
}

.filter input[type=reset].hide {
  display: none;
}

.filter input[type=reset].hide {
  display: none;
}

@media screen and (min-width: 700px) {
  .content-directory .flex.flex_33 > .flex_item {
    flex-basis: calc(33% - 0.5rem);
  }
}
button#clear {
  width: fit-content;
  justify-self: end;
  color: #c5580f;
  background: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  border-left: 1px solid #db6f27;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  font-weight: 700;
}
button#clear svg {
  margin-right: 0.5rem;
}
button#clear svg path {
  fill: #c5580f;
}
button#clear:hover {
  text-decoration-thickness: 0.2em;
}

input.button.decorative.reset {
  border-radius: 0.25rem;
  width: 100%;
  background-color: #c5580f;
  color: #fff;
  padding: 1.2rem;
  text-align: center;
  transition: background-color var(--transition) ease, color var(--transition) ease;
}
input.button.decorative.reset:hover {
  background-color: #1a1a1a;
}

#filter ul, #express_your_interest ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
#filter li, #express_your_interest li {
  margin-bottom: 1rem;
}
#filter input[type=checkbox], #express_your_interest input[type=checkbox] {
  opacity: 0;
  position: absolute;
}
#filter input[type=checkbox] + label, #express_your_interest input[type=checkbox] + label {
  padding-left: 1.2rem;
  position: relative;
  display: block;
  line-height: 105%;
  cursor: pointer;
}
#filter input[type=checkbox] + label::before, #filter input[type=checkbox] + label::after, #express_your_interest input[type=checkbox] + label::before, #express_your_interest input[type=checkbox] + label::after {
  content: "";
  left: 0;
  top: calc(50% - 0.5rem);
  position: absolute;
}
#filter input[type=checkbox] + label::before, #express_your_interest input[type=checkbox] + label::before {
  width: 1rem;
  height: 1rem;
  border: 1px solid #343434;
  background: #fff;
  transition: background-color var(--transition) ease;
}
#filter input[type=checkbox] + label::after, #express_your_interest input[type=checkbox] + label::after {
  width: 0.7rem;
  height: 0.3rem;
  border: 1px solid #343434;
  border-top-color: transparent;
  border-right-color: transparent;
  transform: rotate(-52deg) translate(-2px, 4px);
  opacity: 0;
  transition: opacity var(--transition) ease;
}
#filter input[type=checkbox] + label:hover, #express_your_interest input[type=checkbox] + label:hover {
  text-decoration: underline;
}
#filter input[type=checkbox] + label:hover::before, #express_your_interest input[type=checkbox] + label:hover::before {
  background-color: #5d84a7;
}
#filter input[type=checkbox]:hover + label::before, #express_your_interest input[type=checkbox]:hover + label::before {
  background-color: #5d84a7;
}
#filter input[type=checkbox]:checked + label::before, #express_your_interest input[type=checkbox]:checked + label::before {
  background-color: #1b2f41;
}
#filter input[type=checkbox]:checked + label::after, #express_your_interest input[type=checkbox]:checked + label::after {
  opacity: 1;
}
#filter input[type=checkbox]:focus + label, #express_your_interest input[type=checkbox]:focus + label {
  outline: 2px solid;
  outline-offset: 2px;
}

#express_your_interest input[type=checkbox] + label::after {
  border: 1px solid #fff;
  border-top-color: transparent;
  border-right-color: transparent;
}
#express_your_interest input[type=checkbox]:checked + label::before {
  background-color: #c5580f;
}

.muted #express_your_interest input[type=checkbox] + label::after {
  border: 1px solid #1a1a1a;
  border-top-color: transparent;
  border-right-color: transparent;
}
.muted #express_your_interest input[type=checkbox]:checked + label::before {
  background-color: #1b2f41;
}

.pagination {
  list-style: none;
  display: flex;
  gap: 0.1rem;
  margin-left: 0;
  padding: 0;
  justify-content: center;
}

.no-flexbox-gap .pagination {
  gap: 0;
}
.no-flexbox-gap .pagination > * {
  margin-right: 0.1rem;
}
.no-flexbox-gap .pagination > *:last-child {
  margin-right: 0;
}

.page-numbers {
  width: 2rem;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-primary);
  color: var(--color-black-to-white);
  text-decoration: none;
  transition: background-color var(--transition) ease, color var(--transition) ease;
}
.page-numbers.current {
  background-color: var(--color-secondary);
  color: var(--color-white-to-black);
}
.page-numbers.current:visited {
  color: var(--color-white-to-black);
}
.page-numbers:hover {
  text-decoration: none;
  background-color: var(--color-secondary);
  color: var(--color-white-to-black);
}
.page-numbers:visited {
  color: var(--color-black-to-white);
}

#response nav {
  flex-basis: 100%;
}

.title_with_logo {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 2rem;
}

.link_blocks {
  justify-content: center;
  gap: 2rem;
}

.link-block {
  width: 650px;
  max-width: 100%;
  padding: 2rem;
  display: grid;
  grid-template-rows: min-content 1fr;
  gap: 1rem;
  text-decoration: none;
  position: relative;
}
@media screen and (min-width: 1000px) {
  .link-block {
    grid-template-rows: min-content 1fr min-content;
  }
}
.link-block h3 {
  text-decoration: underline;
  text-decoration-thickness: 0.05em;
  padding-right: 2rem;
}
.link-block p {
  text-decoration: none;
  color: #1a1a1a;
}
.link-block:hover h3 {
  text-decoration-thickness: 0.1em;
}
.link-block:hover svg {
  transform: translateX(1rem);
}
.link-block svg {
  position: absolute;
  top: 2rem;
  right: 2rem;
}
@media screen and (min-width: 1000px) {
  .link-block svg {
    position: static;
    display: block;
    justify-self: end;
    margin-right: 1rem;
    transition: transform var(--move-transition) ease;
  }
}

.wp-block-ace-columns, .wp-block-ace-partners-block {
  padding-top: 4rem;
}
.wp-block-ace-columns > h2, .wp-block-ace-partners-block > h2 {
  text-align: center;
  margin-bottom: 1rem;
}
.wp-block-ace-columns > h2:empty, .wp-block-ace-partners-block > h2:empty {
  display: none;
}
.wp-block-ace-columns .wp-block-columns, .wp-block-ace-partners-block .wp-block-columns {
  gap: 3rem;
}
.wp-block-ace-columns + .wp-block-ace-columns, .wp-block-ace-partners-block + .wp-block-ace-columns {
  padding-top: 0;
}
.wp-block-ace-columns h2,
.wp-block-ace-columns h3,
.wp-block-ace-columns h4,
.wp-block-ace-columns h5, .wp-block-ace-partners-block h2,
.wp-block-ace-partners-block h3,
.wp-block-ace-partners-block h4,
.wp-block-ace-partners-block h5 {
  color: var(--color-secondary-to-secondary-lighter);
}
.wp-block-ace-columns p,
.wp-block-ace-columns ul,
.wp-block-ace-columns li,
.wp-block-ace-columns ol, .wp-block-ace-partners-block p,
.wp-block-ace-partners-block ul,
.wp-block-ace-partners-block li,
.wp-block-ace-partners-block ol {
  color: var(--color-black-to-white);
}
.wp-block-ace-columns .wp-block-ace-column-block img, .wp-block-ace-partners-block .wp-block-ace-column-block img {
  width: auto;
  max-height: 80px;
}

.muted .wp-block-ace-columns .wp-block-ace-column-block img, .muted .wp-block-ace-partners-block img {
  filter: invert(1);
}

.wp-block-ace-partners-block .grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 3rem 0;
  justify-content: center;
}
.wp-block-ace-partners-block .grid img {
  height: 7rem;
  width: auto;
  max-width: 300px;
  object-fit: contain;
}

.border-top h3 {
  border-top: 2px solid var(--color-secondary-to-secondary-lighter);
  margin-top: 2rem;
  padding-top: 1rem;
}

/* .breadcrumb_container+.blog_list {
    padding-top: 0;
}
 */
.content.content-blog .flex_item {
  margin-bottom: 1rem;
}

#blog_filters {
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 2rem;
  gap: 0;
}
#blog_filters p {
  margin: 0;
}
#blog_filters button {
  color: black;
  background-color: transparent;
  text-underline-offset: 0.2em;
}
#blog_filters button.active, #blog_filters button:hover {
  text-decoration: underline;
}

.content-blog .flex_33 {
  gap: 2rem;
}

.back_to a {
  width: fit-content;
}

@media screen and (min-width: 1200px) {
  .column--one {
    grid-column: 1/2;
  }
  .column--one.content {
    grid-row: 1/3;
  }
  .column--one .wysiwyg_container {
    padding-bottom: 0;
  }
  .column--two {
    grid-column: 2/3;
  }
  .column--two.side_bar, .column--two.quicklinks_container, .column--two.in_this_section {
    margin-left: 4rem;
  }
  .grid--two-column {
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto 1fr;
    grid-auto-flow: dense;
    column-gap: 2rem;
  }
  .grid--two-column > * {
    min-width: 0px;
  }
  .grid--two-column .padding {
    padding-left: 0;
    padding-right: 0;
  }
  .grid--two-column.has_crumb {
    grid-template-rows: 4rem auto;
  }
  .grid--two-column.grid--two-column-equal {
    grid-template-columns: 1fr 1fr;
  }
  .grid--two-column.grid--45_55 {
    grid-template-columns: 9fr 11fr;
    column-gap: 4rem;
  }
  .grid--two-column.grid--45_55 .column--two {
    padding-right: 4rem;
  }
}
.column--one .wysiwyg_container.bg-white {
  margin-top: 2rem;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
@media screen and (min-width: 1200px) {
  .column--one .wysiwyg_container.bg-white {
    margin-top: -2rem;
  }
}

.page-template-user-account .column--one .bg-white {
  margin-top: unset;
}

.grid--two_five {
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
}
@media screen and (min-width: 1000px) {
  .grid--two_five {
    grid-template-columns: 3fr 10fr;
    grid-template-rows: 1fr;
  }
}

.single-show .content h1 {
  font-size: 1.375rem;
  line-height: 2.25rem;
}
@media screen and (min-width: 1200px) {
  .single-show .content h1 {
    font-size: 2.625rem;
  }
}

header.content-header * {
  text-align: center;
}

/*Single Page Headers */
.content-header {
  padding-top: 3rem;
  padding-bottom: 2rem;
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .content-header {
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .content-header h1.content-title {
    font-size: 4rem;
  }
}
.content-header .secondary_sub {
  font-weight: bold;
  width: fit-content;
  margin: 0 auto 2rem;
  text-transform: none;
}
@media screen and (min-width: 1200px) {
  .content-header .secondary_sub {
    font-size: 1.25rem;
  }
}
.content-header .secondary_sub a {
  color: var(--color-secondary-to-white);
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.3em;
}
.content-header .secondary_sub a:hover {
  text-decoration-thickness: 0.15em;
}
.content-header .flex.cats {
  list-style: none;
  justify-content: flex-start;
  gap: 1rem;
  padding: 0;
  margin: 1rem 0;
}

.switch {
  border: none;
  border-radius: 1rem;
  height: 2rem;
  width: 6.4rem;
  background-color: #db6f27;
  position: relative;
  padding: 0;
  transition: background-color var(--transition) ease;
}
.switch .vivid_text {
  padding-left: calc(2rem + 3px);
  padding-right: 6px;
  text-align: right;
}
.switch .muted_text {
  padding-right: calc(2rem + 3px);
  padding-left: 6px;
}
.switch span {
  font-size: 0.9rem;
  display: inline-block;
  width: 5.5rem;
}
.switch span:nth-of-type(2) {
  display: none;
}
.switch[aria-pressed] {
  background-color: #c5580f;
}
.switch[aria-pressed] .toggle {
  transform: translateX(4.4rem);
  background-color: #c5580f;
}
.switch[aria-pressed] .toggle svg g {
  fill: #c5580f;
  stroke: #fff;
  stroke-width: 1px;
}
.switch[aria-pressed] span:nth-of-type(1) {
  display: none;
}
.switch[aria-pressed] span:nth-of-type(2) {
  display: inline;
}
.switch:hover .toggle {
  background-color: var(--color-secondary-lighter-to-primary-lighter);
}
.switch:hover .toggle svg g {
  fill: #1a1a1a;
  stroke: #1a1a1a;
}
.switch:focus {
  outline: 2px solid;
  outline-offset: 2px;
}

.toggle {
  position: absolute;
  height: calc(2rem - 6px);
  width: calc(2rem - 6px);
  top: 3px;
  left: 3px;
  border-radius: 1rem;
  border: 1px solid #fff;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateX(0);
  transition: transform var(--move-transition) ease, background-color var(--transition) ease;
}
.toggle svg g {
  fill: #481e02;
  stroke: #481e02;
  stroke-width: 0;
  transition: all var(--transition) ease;
}

.text_sizer_button {
  padding: 0;
  background: transparent;
  transition: all var(--transition) ease;
  width: 25px;
  height: 25px;
  display: inline-block;
}
.text_sizer_button path {
  transition: fill var(--transition) ease;
}
.text_sizer_button:not([disabled]):hover {
  background-color: #e89157;
}
.text_sizer_button:not([disabled]):hover path {
  fill: #1a1a1a;
}
.text_sizer_button:focus {
  outline: 2px solid;
  outline-offset: 2px;
}

/**
 * Swiper 11.0.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 22, 2023
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
/* Review Carousel*/
.carousel--reviews {
  padding-bottom: 4rem;
  position: relative;
  margin-right: 0;
  overflow: hidden;
}
@media screen and (min-width: 1000px) {
  .carousel--reviews {
    padding-bottom: 1rem;
    overflow: visible;
    margin-left: 0;
  }
}
.carousel--reviews .swiper-slide {
  width: auto;
  height: auto;
}
@media screen and (min-width: 1200px) {
  .carousel--reviews .swiper-slide {
    flex-basis: 20%;
  }
}
.carousel--reviews .button--prev,
.carousel--reviews .button--next {
  top: unset;
  bottom: 0;
}
.carousel--reviews .button--prev svg,
.carousel--reviews .button--next svg {
  width: 32px;
  height: 32px;
}
.carousel--reviews .button--prev svg path,
.carousel--reviews .button--next svg path {
  transition: fill var(--transition) ease-in;
}
.carousel--reviews .button--prev:hover svg path,
.carousel--reviews .button--prev :active svg path,
.carousel--reviews .button--next:hover svg path,
.carousel--reviews .button--next :active svg path {
  fill: #1b2f41;
}
.carousel--reviews .button--prev {
  right: calc(var(--margin) + 3rem);
}
@media screen and (min-width: 1000px) {
  .carousel--reviews .button--prev {
    left: calc(var(--margin) - 4rem);
    z-index: 9;
    top: 50%;
    bottom: unset;
    right: unset;
  }
}
@media screen and (min-width: 1000px) {
  .carousel--reviews .button--next {
    right: calc(var(--margin) - 4rem);
    z-index: 9;
    top: 50%;
    bottom: unset;
  }
}
@media screen and (min-width: 1000px) {
  .carousel--reviews::before {
    content: "";
    background: #f7f7f7;
    width: var(--margin);
    height: calc(100% + 1rem);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    margin-top: -1rem;
    margin-bottom: -1rem;
  }
}
.carousel--reviews::after {
  content: "";
  background: #f7f7f7;
  width: var(--margin);
  height: calc(100% + 1rem);
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  margin-top: -1rem;
  margin-bottom: -1rem;
}

/*Gallery Carousel*/
.block--carousel {
  position: relative;
  margin-bottom: 2rem;
  margin-top: 2rem;
}
@media screen and (min-width: 1200px) {
  .block--carousel {
    margin-top: 0;
  }
}
.block--carousel h3 {
  color: #1a1a1a;
  font-size: 1.375rem;
  line-height: 1.75rem;
  max-width: calc(100% - var(--margin) - 85px);
}
@media screen and (min-width: 1200px) {
  .block--carousel h3 {
    font-size: 1.75rem;
    line-height: 3rem;
  }
}
.block--carousel .button--prev,
.block--carousel .button--next {
  top: 0;
  z-index: 9;
}
@media screen and (min-width: 1200px) {
  .block--carousel .button--prev,
  .block--carousel .button--next {
    top: 231.5px;
  }
}
@media screen and (min-width: 1200px) {
  .block--carousel .button--prev::before,
  .block--carousel .button--next::before {
    content: "";
    background: none;
    width: 44px;
    height: 44px;
    position: absolute;
    display: block;
    bottom: 0;
    right: 0;
    z-index: -1;
    border-radius: 50%;
    box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.25);
  }
}
.block--carousel .button--prev svg,
.block--carousel .button--next svg {
  height: 33px;
  width: 33px;
}
@media screen and (min-width: 1200px) {
  .block--carousel .button--prev svg,
  .block--carousel .button--next svg {
    height: 44px;
    width: 44px;
  }
}
.block--carousel .button--prev svg path,
.block--carousel .button--next svg path {
  transition: fill var(--transition) ease-in;
  fill: #9f9f9f;
}
@media screen and (min-width: 1200px) {
  .block--carousel .button--prev svg path,
  .block--carousel .button--next svg path {
    fill: #fff;
  }
}
.block--carousel .button--prev svg #Path_2130,
.block--carousel .button--next svg #Path_2130 {
  fill: transparent;
}
@media screen and (min-width: 1200px) {
  .block--carousel .button--prev svg #Path_2130,
  .block--carousel .button--next svg #Path_2130 {
    fill: #1a1a1a;
  }
}
.block--carousel .button--prev svg:hover path,
.block--carousel .button--next svg:hover path {
  fill: #1b2f41;
}
.block--carousel .button--prev {
  right: calc(var(--margin) + 1rem + 33px);
}
@media screen and (min-width: 1200px) {
  .block--carousel .button--prev {
    right: unset;
    left: 2rem;
  }
}
.block--carousel .button--next {
  right: var(--margin);
}
@media screen and (min-width: 1200px) {
  .block--carousel .button--next {
    right: calc(var(--margin) + 2rem);
  }
}

.carousel--gallery .swiper-slide {
  width: min-content;
}
.carousel--gallery::before {
  content: "";
  background: #f7f7f7;
  display: block;
  height: 104%;
  width: var(--margin);
  position: absolute;
  z-index: 9;
  left: calc(var(--margin) * -1);
  top: -2px;
}
.carousel--gallery::after {
  content: "";
  background: #f7f7f7;
  display: block;
  height: 104%;
  width: var(--margin);
  position: absolute;
  z-index: 9;
  right: 0;
  top: -2px;
}

.carousel--zoomer .swiper-slide {
  max-width: calc(100vw - 2 * var(--margin));
  width: calc(100vw - 2 * var(--margin));
  margin-left: var(--margin);
  margin-right: var(--margin);
  display: flex;
  justify-content: center;
  align-items: center;
}
.carousel--zoomer .button--prev {
  top: 50vh;
  left: calc(var(--margin) - 16.5px);
}
@media screen and (min-width: 1200px) {
  .carousel--zoomer .button--prev {
    top: 50vh;
  }
}
.carousel--zoomer .button--next {
  top: 50vh;
  right: calc(var(--margin) - 16.5px);
}
@media screen and (min-width: 1200px) {
  .carousel--zoomer .button--next {
    top: 50vh;
    left: unset;
    right: var(--margin);
  }
}
.carousel--zoomer .slide_index {
  top: calc(var(--vh) * 5);
  left: var(--margin);
}
@media screen and (min-width: 1200px) {
  .carousel--zoomer .slide_index {
    top: calc(var(--vh) * 4);
    right: unset;
    left: var(--margin);
  }
}
.carousel--zoomer .close_zoomer {
  padding-right: 0;
}

/* Associate Carousels*/
.associate_carousel_block {
  position: relative;
}

.carousel--associates {
  position: relative;
}
.carousel--associates::before {
  content: "";
  position: absolute;
  background: #fff;
  display: block;
  height: 100%;
  top: 0;
  right: 100%;
  width: calc(var(--margin) * 2);
  z-index: 9;
}
.carousel--associates::after {
  content: "";
  position: absolute;
  background: #fff;
  display: block;
  height: 100%;
  top: 0;
  left: 100%;
  width: calc(var(--margin) * 2);
  z-index: 9;
}
.carousel--associates .swiper-wrapper {
  align-items: center;
}

.carousel--associates .button--prev,
.button--next {
  top: 0;
  z-index: 99;
}

.carousel--associates .button--prev {
  left: -1rem;
  top: 50%;
  width: fit-content;
}
@media screen and (min-width: 700px) {
  .carousel--associates .button--prev {
    left: -2rem;
  }
}
@media screen and (min-width: 1000px) {
  .carousel--associates .button--prev {
    left: -3rem;
  }
}
@media screen and (min-width: 1200px) {
  .carousel--associates .button--prev {
    left: -3rem;
  }
}
@media screen and (min-width: 1600px) {
  .carousel--associates .button--prev {
    left: -6rem;
  }
}

.carousel--associates .button--next {
  right: -1rem;
  top: 50%;
  width: fit-content;
}
@media screen and (min-width: 700px) {
  .carousel--associates .button--next {
    right: -2rem;
  }
}
@media screen and (min-width: 1000px) {
  .carousel--associates .button--next {
    right: -3rem;
  }
}
@media screen and (min-width: 1200px) {
  .carousel--associates .button--next {
    right: -3rem;
  }
}
@media screen and (min-width: 1600px) {
  .carousel--associates .button--next {
    right: -6rem;
  }
}

.associate_carousel_title {
  margin-bottom: 0;
}

.current_filters p:has(~ div:empty) {
  display: none;
}

.current_filters div:empty ~ #clear {
  display: none;
}

.banner_image--muted {
  display: none !important;
}
.banner_image--muted.desktop_only {
  display: none !important;
}
@media screen and (min-width: 1000px) {
  .banner_image--muted.mobile_only {
    display: none !important;
  }
}

.logo_muted {
  display: none;
}

.banner_image--vivid {
  display: block !important;
}
.banner_image--vivid.desktop_only {
  display: none !important;
}
@media screen and (min-width: 1000px) {
  .banner_image--vivid.mobile_only {
    display: none !important;
  }
  .banner_image--vivid.desktop_only {
    display: block !important;
  }
}

.muted .banner_image--vivid {
  display: none !important;
}
.muted .banner_image--vivid.desktop_only {
  display: none !important;
}
@media screen and (min-width: 1000px) {
  .muted .banner_image--vivid.mobile_only {
    display: none !important;
  }
}
.muted .banner_image--muted {
  display: block !important;
}
.muted .banner_image--muted.desktop_only {
  display: none !important;
}
@media screen and (min-width: 1000px) {
  .muted .banner_image--muted.mobile_only {
    display: none !important;
  }
  .muted .banner_image--muted.desktop_only {
    display: block !important;
  }
}
@media screen and (min-width: 1000px) {
  .muted .banner.full_width svg.logo_muted {
    display: block;
  }
  .muted .banner.full_width svg.logo_vivid {
    display: none;
  }
}

.banner.full_width {
  height: calc(var(--vh) * 90 - var(--header-height));
  width: 100vw;
  position: relative;
}
@media (max-height: 580px) {
  .banner.full_width {
    height: calc(var(--vh) * 120 - var(--header-height));
  }
}
@media screen and (max-height: 580px) and (orientation: landscape) {
  .banner.full_width {
    height: calc(var(--vh) * 220);
  }
}
@media screen and (min-width: 700px) {
  .banner.full_width {
    height: calc(130vw - var(--header-height));
  }
}
@media screen and (min-width: 1000px) {
  .banner.full_width {
    height: calc(var(--vh) * 100 - var(--header-height));
  }
}
.banner.full_width > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: bottom;
}
@media screen and (min-width: 1000px) {
  .banner.full_width > img {
    object-position: center;
  }
}
.banner.full_width h2 {
  position: absolute;
  top: 4rem;
  margin: 0 var(--margin);
  font-size: clamp(24px, 4vw, 64px);
  width: fit-content;
  text-align: center;
  width: calc(100% - 2 * var(--margin));
  text-align: center;
}
@media screen and (min-width: 1000px) {
  .banner.full_width h2 {
    /* text-align: left;
    top: 50%;
    width: fit-content;
    max-width: clamp(15ch, 40vw, 500px);
    transform: translateY(-50%); */
    opacity: 0;
    position: static;
  }
}
.banner.full_width svg {
  position: absolute;
  width: clamp(10rem, 20vw, 21rem);
  top: 50%;
  left: var(--margin);
  transform: translateY(-50%);
  display: none;
}
@media screen and (min-width: 1000px) {
  .banner.full_width svg.logo_vivid {
    display: block;
  }
}
.banner.full_width p.caption {
  position: absolute;
  top: calc(100% + 0.5rem);
  left: var(--margin);
  z-index: 10;
}
.banner.full_width:has(> .caption) {
  margin-bottom: 2rem;
}

.register-form {
  flex-basis: 100%;
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.register-form h2, .register-form h3 {
  color: var(--color-secondary-to-white);
}
.register-form h3 {
  text-align: left;
}
.register-form p,
.register-form label {
  color: var(--color-black-to-white);
}
.register-form .button {
  width: 100%;
  background-color: var(--color-secondary-to-white);
  color: var(--color-white-to-black);
  padding: 1.2rem;
  text-align: center;
  transition: background-color var(--transition) ease, color var(--transition) ease;
}
.register-form .button:hover {
  background-color: var(--color-secondary-lighter-to-primary-lighter);
  color: #1a1a1a;
}
.register-form > * {
  width: 720px;
  max-width: calc(100vw - 2 * var(--margin));
  margin: 0 auto;
}
.register-form input {
  border-radius: 0.25rem;
  width: 100%;
  margin-bottom: 1rem;
}
.register-form input::placeholder {
  color: #6a6a6a;
}
.register-form form {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.register-form form .label_group {
  width: 100%;
}
.register-form form .label_group label {
  display: block;
  text-align: left;
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 1000px) {
  .register-form form {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
  }
  .register-form form .label_group {
    flex-basis: 100%;
  }
  .register-form form .label_group.compressed {
    flex-basis: calc(50% - 0.5rem);
  }
  .register-form form .label_group label {
    display: block;
    text-align: left;
    margin-bottom: 0.5rem;
  }
}
.register-form form .checkbox_container {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}
.register-form label {
  margin-bottom: 0.2rem;
}

div#express_your_interest p {
  text-align: left;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

#express_your_interest #form_response p {
  margin-top: 0;
  margin-bottom: 0;
}
#express_your_interest #form_response.error {
  padding: 0.5rem;
  border: 2px solid var(--color-error);
  margin-bottom: 1rem;
}
#express_your_interest #form_response.success {
  border: 2px solid var(--color-secondary);
  padding: 1rem;
  margin-bottom: 1rem;
}
#express_your_interest #form_response ul {
  text-align: left;
}

.error_message {
  padding: 0.5rem;
  border: 2px solid var(--color-error);
  display: block;
  color: var(--color-black-to-white);
}

#express_your_interest #form_response.success h3 {
  text-align: left;
}

/* Contact Forms */
.wpcf7 {
  padding-left: var(--margin);
  padding-right: var(--margin);
  padding-top: 2rem;
  padding-bottom: 3rem;
  background-color: var(--color_bg);
}
.wpcf7 h2 {
  color: #c5580f;
}
.wpcf7 p,
.wpcf7 label {
  color: #1a1a1a;
}
.wpcf7 > * {
  width: 720px;
  max-width: calc(100vw - 2 * var(--margin));
  margin: 0 auto;
}
.wpcf7 input {
  border-radius: 0.25rem;
  width: 100%;
  margin-bottom: 1rem;
}
.wpcf7 input::placeholder {
  color: #6a6a6a;
}
@media screen and (min-width: 1000px) {
  .wpcf7 .form_name_fields {
    display: flex;
    column-gap: 1rem;
  }
}
.wpcf7 .wpcf7-list-item label {
  display: flex;
  flex-direction: row;
  column-gap: 1rem;
  margin-bottom: 1rem;
}
@media screen and (min-width: 700px) {
  .wpcf7 .wpcf7-list-item label {
    align-items: center;
  }
}
.wpcf7 .wpcf7-list-item label input {
  height: 13px;
  width: fit-content;
  margin-bottom: 0;
}

input.wpcf7-submit {
  width: 100%;
  background: var(--color-primary);
  color: var(--color-black-to-white);
  padding: 1.2rem;
  text-align: center;
  transition: background-color var(--transition) ease, color var(--transition) ease;
}
input.wpcf7-submit:hover {
  background: var(--color-secondary-to-secondary-lighter);
  color: var(--color-white-to-black);
}

/*General rules for cards*/
.cards {
  margin: 4rem 0;
}
.cards .flex_item {
  margin-bottom: 2rem;
}
.cards a {
  text-decoration: none;
  color: #1a1a1a;
}
.cards .container {
  margin-bottom: 2rem;
}
.cards .decorative {
  padding-left: 0;
}

.card {
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1607843137);
  border-radius: 8px;
  text-decoration: none;
  color: #1a1a1a;
}
.card img {
  transition: opacity var(--transition) ease;
  opacity: 1;
}
.card:hover, .card:focus, .card:active, .card:visited {
  color: #1a1a1a;
}
.card:hover img, .card:focus img, .card:active img, .card:visited img {
  opacity: 0.85;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: translateX(-110%);
  transition: opacity 400ms eae-in;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.7);
}
.modal.open {
  opacity: 1;
  transform: translateX(0);
}
.modal .close {
  position: absolute;
  top: 1rem;
  right: var(--margin);
}
@media screen and (min-width: 1000px) {
  .modal .close {
    top: var(--header-height);
  }
}
.modal .modal_inner {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: var(--margin);
  width: calc(100vw - 2 * var(--margin));
  height: 80vh;
  display: block;
  overflow: auto;
}
.modal .modal_inner .column--two.inner-padding {
  padding: 0;
}
@media screen and (min-width: 1000px) {
  .modal .modal_inner {
    width: 50vw;
    display: grid;
    min-width: 320px;
    left: 25vw;
    height: fit-content;
    overflow: visible;
  }
  .modal .modal_inner .column--two.inner-padding {
    padding: 2rem;
  }
}

@media screen and (min-width: 1000px) {
  #people_modal .container--round {
    left: -6rem;
    top: 4rem;
    width: 260px;
    height: 260px;
    position: absolute;
  }
  #people_modal .container--round img {
    width: 260px;
    height: 260px;
  }
  #people_modal .card:hover img {
    filter: none;
  }
}

#membership_modal .modal-content {
  top: var(--header-height);
  position: absolute;
  left: calc(50vw - 160px);
  width: 320px;
  padding: 2rem;
  background-color: #ffffff;
  border-radius: 1rem;
  max-height: calc(100vh - 2 * var(--header-height));
}
#membership_modal .modal-content .modal-inner {
  height: 100%;
  max-height: calc(100vh - 2 * var(--header-height) - 4rem);
  padding-right: 15px;
  overflow: hidden auto;
  scrollbar-color: #fff #1b2f41;
}
#membership_modal .modal-content .modal-inner::-webkit-scrollbar {
  width: 10px; /* Mostly for vertical scrollbars */
}
#membership_modal .modal-content .modal-inner::-webkit-scrollbar-thumb {
  /* Foreground */
  background: #1b2f41;
}
#membership_modal .modal-content .modal-inner::-webkit-scrollbar-track {
  /* Background */
  background: #fff;
}
#membership_modal .modal-content h6 {
  margin-top: 0.5rem;
}
#membership_modal .register-message p {
  color: #1a1a1a;
}
#membership_modal form.register-form {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

button#membership_close {
  right: calc(50vw - 190px);
  top: calc(var(--header-height) - 2rem);
  background-color: #1a1a1a;
  border-radius: 50%;
  width: 50px;
  height: 50px;
}

form.loading + #spinner {
  display: block;
}

form + #spinner {
  display: none;
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 25px);
  width: 50px;
  height: 50px;
  border: 10px solid #1a1a1a;
  border-bottom: 10px solid transparent;
  border-radius: 50%;
  animation: spin 800ms ease-in-out 0ms infinite;
}

#associate_modal #modal_content {
  top: var(--header-height);
  position: absolute;
  left: calc(50vw - 160px);
  width: 320px;
  padding: 2rem;
  background-color: #ffffff;
  border-radius: 1rem;
  max-height: calc(100vh - 2 * var(--header-height));
}
@media screen and (min-width: 700px) {
  #associate_modal #modal_content {
    left: calc(50vw - 240px);
    width: 480px;
  }
}
@media screen and (min-width: 1000px) {
  #associate_modal #modal_content {
    left: calc(50vw - 320px);
    width: 640px;
  }
}
@media screen and (min-width: 1200px) {
  #associate_modal #modal_content {
    left: calc(50vw - 480px);
    width: 960px;
  }
}
#associate_modal #modal_content .modal-inner {
  height: 100%;
  max-height: calc(100vh - 2 * var(--header-height) - 4rem);
  padding-right: 15px;
  overflow: hidden auto;
  scrollbar-color: #fff #1b2f41;
}
#associate_modal #modal_content .modal-inner::-webkit-scrollbar {
  width: 10px; /* Mostly for vertical scrollbars */
}
#associate_modal #modal_content .modal-inner::-webkit-scrollbar-thumb {
  /* Foreground */
  background: #1b2f41;
}
#associate_modal #modal_content .modal-inner::-webkit-scrollbar-track {
  /* Background */
  background: #fff;
}
#associate_modal #modal_content h6 {
  margin-top: 0.5rem;
}
#associate_modal .register-message p {
  color: #1a1a1a;
}
#associate_modal form.register-form {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

button#associates_close {
  right: calc(50vw - 190px);
  top: calc(var(--header-height) - 2rem);
  background-color: #1a1a1a;
  border-radius: 50%;
  width: 50px;
  height: 50px;
}
@media screen and (min-width: 700px) {
  button#associates_close {
    right: calc(50vw - 260px);
  }
}
@media screen and (min-width: 1000px) {
  button#associates_close {
    right: calc(50vw - 350px);
  }
}
@media screen and (min-width: 1200px) {
  button#associates_close {
    right: calc(50vw - 510px);
  }
}

@media screen and (min-width: 700px) {
  .associate_modal_content_container.modal-inner.grid {
    grid-template-columns: 1fr 1fr;
  }
}

.associate_modal_column_left a {
  margin-bottom: 1rem;
}
.associate_modal_column_left .associate_modal_detail {
  margin-bottom: 1rem;
}
@media screen and (min-width: 700px) {
  .associate_modal_column_left {
    padding-right: 4rem;
    border-right: #1a1a1a 1px solid;
  }
}

@media screen and (min-width: 700px) {
  .associate_modal_column_right {
    padding-left: 4rem;
  }
}

.play {
  background-color: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
  padding: 0;
  opacity: 0;
  z-index: 10;
}
.play svg path {
  transition: fill var(--transition) ease;
}

.ready .play {
  opacity: 1;
}

.block-video img {
  transition: opacity var(--transition) ease;
  z-index: 10;
}
.block-video.playing img,
.block-video.playing .play {
  opacity: 0;
  transform: translateX(-200vw);
  visibility: hidden;
}
.block-video.playing iframe {
  visibility: visible;
}
.block-video iframe {
  visibility: hidden;
}

.container iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.alt_block {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
}
.alt_block.open {
  width: 100%;
  max-width: 320px;
}

:has(> .alt_block) {
  position: relative;
  display: block;
}

.block-image,
.alt-block {
  position: relative;
  display: block;
}

.alt_trigger {
  background-color: white;
  color: black;
  text-transform: uppercase;
  font-size: 0.8rem;
  padding: 0.1rem;
  min-width: 2rem;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #E8E8E8;
  position: absolute;
  top: 0;
  right: 0;
}

.alt_modal {
  position: absolute;
  background-color: white;
  top: 0;
  right: 0;
  max-width: 90vw;
  padding: 2rem 1rem;
  opacity: 0;
  transform: scale(0);
  transition: opacity calc(var(--transition) / 2) ease, transform var(--move-transition) ease;
  transform-origin: 100% 0;
  visibility: hidden;
}

.open .alt_modal {
  opacity: 1;
  transform: scale(1);
  border: 1px solid #E8E8E8;
  visibility: visible;
}

.open .alt_trigger {
  border-bottom: none;
  border-left: none;
}

.banner .alt_block {
  top: unset;
  bottom: var(--margin);
  right: var(--margin);
}
@media screen and (min-width: 1200px) {
  .banner .alt_block {
    top: unset;
    bottom: 8rem;
    right: 8rem;
  }
}

button.close {
  color: var(--color-black-to-white);
  background-color: var(--color-primary);
}

.play svg path {
  fill: #1a1a1a;
  transition: fill var(--transition) ease;
}
.play svg:hover path {
  fill: #fff;
}
.play svg:hover circle {
  fill: #1a1a1a;
}
.play svg circle {
  fill: #fff;
  opacity: 1;
}

/* .muted {
	.play {
		svg {
			path {
				fill: $color_white;
				transition: fill var(--transition) ease;
			}
			&:hover {
				path {
					fill: $color_secondary;
				}
				circle {
					fill: $color_white;
				}
			}
			circle {
				fill: $color_secondary;
				opacity: 1;
				transition: fill var(--transition) ease;
			}
		}
	}
} */
.block-image p.caption, .block-image + figcaption p.caption {
  position: absolute;
  bottom: 0;
  margin: 0;
  display: block;
  padding: 0.2rem 0.75rem;
  background: #1a1a1a;
  color: #fff;
}

figure {
  line-height: 0;
}

/*If content is added to a page outside of the PLINTH blocks*/
.type-page > ul, .type-page > ol, .type-page > p, .type-page > h2, .type-page > h3, .type-page > h4, .type-page > h5 {
  width: 680px;
  max-width: 90vw;
  margin-left: auto;
  margin-right: auto;
}

/*Sidebar*/
.content_wrapper {
  max-width: 800px;
  width: 100%;
  order: 2;
}
@media screen and (min-width: 1000px) {
  .content_wrapper {
    order: unset;
  }
}

#nav_select {
  margin-bottom: 2rem;
  width: calc(100vw - 2 * var(--margin));
  padding: 1rem;
}

.sidebar {
  display: none;
}
@media screen and (min-width: 1200px) {
  .sidebar {
    order: unset;
    display: flex;
    flex-direction: column;
    grid-column: 2/3;
    grid-row: 1/4;
    width: max-content;
  }
  .sidebar nav.sub-nav {
    display: initial;
  }
  .sidebar .mobile_only {
    display: none !important;
  }
}
.sidebar h3 {
  padding-bottom: 1rem;
  margin-bottom: 0;
  font-size: 1rem;
}
.sidebar .sub-nav ul {
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}
.sidebar .sub-nav ul li {
  padding-bottom: 1rem;
  padding-top: 1rem;
  font-weight: bold;
}
.sidebar .sub-nav ul li a {
  text-decoration: none;
  font-weight: bold;
  width: 100%;
}

.nav-item a {
  position: relative;
  padding-right: 2rem;
  width: fit-content;
  display: block;
  font-size: 1rem;
  font-weight: bold;
}
.nav-item a::after {
  content: "";
  height: 0.8rem;
  width: 1.2rem;
  display: block;
  top: calc(50% - 0.4rem);
  right: 0;
  background-image: url(../assets/arrow.svg);
  background-size: contain;
  position: absolute;
  background-repeat: no-repeat;
  transition: transform var(--transition) ease;
}
.nav-item a:hover::after {
  transform: translateX(0.2rem);
}
@media (prefers-reduced-motion: reduce) {
  .nav-item a:hover::after {
    transform: none;
  }
}
.nav-item.active a::after {
  content: none;
}

.wp-block-ace-content {
  padding-top: 2rem;
}
.wp-block-ace-content p {
  font-size: 1rem;
}
@media screen and (min-width: 1200px) {
  .wp-block-ace-content p {
    margin-bottom: 2rem;
  }
}
.wp-block-ace-content p.has-medium-font-size {
  font-size: 1.25rem;
}
.wp-block-ace-content .content-intro p {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 2rem;
  color: #1a1a1a;
}

.content-directory {
  order: 2;
}
@media screen and (min-width: 1000px) {
  .content-directory {
    order: unset;
  }
}

@media screen and (min-width: 1000px) {
  .wp-block-ace-content.two-column {
    display: grid;
    grid-template-columns: 2fr 1fr;
    column-gap: clamp(2rem, 15vw, 12rem);
  }
}

/*Support Organisation*/
.single-support_organisation .content-header {
  padding-top: 4rem;
  padding-bottom: 0;
}
.single-support_organisation .content-header .content-title {
  text-align: left;
  text-transform: none;
  font-size: 1.5rem;
}
@media screen and (min-width: 1200px) {
  .single-support_organisation .content-header .content-title {
    font-size: 2.5rem;
  }
}
.single-support_organisation .margins .logo--org img {
  height: 6.25rem;
  width: auto;
}

.type-post .content-header {
  padding-bottom: 1rem;
}
.type-post .content-header .content-title {
  font-size: 1.5rem;
  text-align: left;
  line-height: 2rem;
  text-transform: none;
}
.type-post .content-header .flex.cats {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
  justify-content: flex-start;
}
.type-post .content-header .flex.cats .post-header-date {
  color: #585858;
  font-weight: 600;
  margin-bottom: 0;
}
.type-post .content-header .flex.cats .post-header-date::after {
  content: "|";
  font-size: 1.5rem;
  font-weight: 100;
  margin-left: 1rem;
  margin-right: 1rem;
  position: relative;
  color: #a3a3a3;
}
.type-post .content-header .flex.cats li a {
  font-weight: 600;
  font-size: 0.875rem;
  margin-right: 1rem;
}

.wp-block-ace-content-blog .wp-block-ace-content-blocks h3.wp-block-heading {
  font-size: 1.5rem;
}
.wp-block-ace-content-blog .wp-block-ace-content-blocks .wp-block-ace-block-quote {
  padding-left: 0;
  padding-right: 0;
}
.wp-block-ace-content-blog .wp-block-ace-content-blocks .wp-block-ace-block-quote p {
  font-size: 1.25rem;
  font-weight: 600;
}
.wp-block-ace-content-blog .wp-block-ace-content-blocks .wp-block-ace-block-quote footer {
  font-size: 1.25rem;
  line-height: 2rem;
  font-weight: 600;
}

.wp-block-ace-image {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.wp-block-ace-video {
  margin-bottom: 2rem;
}
.wp-block-ace-video .block-video {
  margin-bottom: 1rem;
}
.wp-block-ace-video .video a {
  font-weight: bold;
  display: flex;
}
.wp-block-ace-video .video a svg {
  margin-right: 1rem;
}

#footer {
  padding: 2rem var(--margin) 4rem;
}
@media screen and (min-width: 1200px) {
  #footer {
    padding: 2rem 12rem 4rem;
  }
}

@media screen and (min-width: 1200px) {
  .footer_grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 2fr;
  }
}

.footer_grid--item.logo_so-me {
  border-bottom: 1px #fff solid;
  display: flex;
  padding-bottom: 2rem;
}
@media screen and (min-width: 1200px) {
  .footer_grid--item.logo_so-me {
    padding-bottom: 2rem;
    grid-column: 1/3;
  }
}

.footer_grid--item.logo_so-me .social_media_wrapper {
  color: #fff;
}
.footer_grid--item.logo_so-me .social_media_wrapper p {
  text-align: center;
}

.footer_grid--item.nav_menus {
  padding-top: 2rem;
  padding-bottom: 4rem;
  border-bottom: 1px #fff solid;
  color: #fff;
  display: flex;
  column-gap: 2rem;
}
@media screen and (min-width: 700px) {
  .footer_grid--item.nav_menus {
    justify-content: space-between;
    column-gap: unset;
  }
}
@media screen and (min-width: 1200px) {
  .footer_grid--item.nav_menus {
    column-gap: 4rem;
    padding-bottom: 2rem;
  }
}
.footer_grid--item.nav_menus a {
  color: #fff;
  text-decoration: none;
  display: block;
  margin-bottom: 0.5rem;
}
.footer_grid--item.nav_menus ul {
  list-style: none;
}

.primary_links_footer {
  flex-basis: 50%;
}
@media screen and (min-width: 700px) {
  .primary_links_footer {
    flex-basis: unset;
  }
}
.primary_links_footer a {
  font-weight: 700;
}

.secondary_links_footer {
  flex-basis: 50%;
}
@media screen and (min-width: 700px) {
  .secondary_links_footer {
    flex-basis: unset;
  }
}
.secondary_links_footer a {
  font-weight: 500;
}

#footer-menu {
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 0;
}

#footer-secondary-menu {
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 0;
}

.footer_grid--item {
  padding-top: 2rem;
  padding-bottom: 2rem;
  color: #fff;
  border-bottom: 1px #fff solid;
}
@media screen and (min-width: 1200px) {
  .footer_grid--item {
    padding-bottom: 2rem;
  }
}

.footer_grid--item:last-of-type {
  padding-top: 2rem;
  padding-bottom: 0;
  color: #fff;
  border-bottom: none;
}

@media screen and (min-width: 1200px) {
  .footer_grid--item.supporters {
    padding-left: 6rem;
  }
}
.footer_grid--item.supporters strong {
  margin-bottom: 2rem;
  display: block;
}

.supporters_block {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 1rem;
}

.no-flexbox-gap .supporters_block {
  gap: 0;
}
.no-flexbox-gap .supporters_block > * {
  margin-right: 1rem;
}
.no-flexbox-gap .supporters_block > *:last-child {
  margin-right: 0;
}

.supporters_block .supporter_icon img {
  max-height: 3rem;
  width: auto;
}

.supporters_block a:nth-child(3) img {
  object-fit: cover;
  width: 54px;
  height: 54px;
  object-position: left;
}

@media screen and (min-width: 700px) {
  .supporters_block a:nth-child(3) img {
    object-fit: unset;
    width: auto;
  }
}
.footer_grid--item.copyright_hdk {
  display: flex;
  flex-direction: column;
  row-gap: 3rem;
  align-items: center;
  font-size: 1rem;
}
.footer_grid--item.copyright_hdk a svg {
  height: 2rem;
}
@media screen and (min-width: 1200px) {
  .footer_grid--item.copyright_hdk {
    flex-direction: row;
    justify-content: space-between;
    grid-column: 1/3;
  }
}

.site-branding--footer svg {
  width: 5rem;
  height: fit-content;
}
@media screen and (min-width: 1200px) {
  .site-branding--footer svg {
    width: 10rem;
  }
}

.footer_grid--item.logo_so-me {
  justify-content: space-between;
  align-items: flex-start;
  column-gap: 2rem;
}

.copyright_text {
  font-weight: 500;
}

.footer_grid--item.nav_menus {
  border-bottom: 1px solid #fff;
  padding-bottom: 2rem;
  padding-top: 2rem;
}
.footer_grid--item.nav_menus ul {
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 0;
}
@media screen and (min-width: 1200px) {
  .footer_grid--item.nav_menus {
    padding-bottom: 2rem;
    padding-top: 2rem;
  }
}

footer#footer a {
  color: #fff;
}
footer#footer a:hover {
  color: #1b2f41;
}
footer#footer a:hover img {
  filter: brightness(0) saturate(100%) invert(87%) sepia(99%) saturate(6250%) hue-rotate(316deg) brightness(96%) contrast(112%);
}
footer#footer a:hover svg * {
  fill: #1b2f41;
}

nav#site-navigation a {
  color: #fff;
}

.so-me a svg *, #footer .so-me a svg * {
  transition: all var(--transition) ease;
}
.so-me a:hover svg *, #footer .so-me a:hover svg * {
  stroke: #1b2f41;
  fill: none;
}
.so-me a:hover svg path, #footer .so-me a:hover svg path {
  fill: #1b2f41;
}

a.back-to-top {
  color: var(--color-white-to-black);
}
a.back-to-top:visited {
  color: var(--color-white-to-black);
}
a.back-to-top:hover {
  text-decoration: underline;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #E8E8E8;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #1a1a1a;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

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

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

@media screen and (max-width: 700px) {
  .alignright, .alignleft {
    margin: 0 auto 1.5rem;
    float: none;
    display: block;
  }
}
.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}
/*# sourceMappingURL=style.css.map */
