@charset "UTF-8";
/* `XHTML, HTML4, HTML5 Reset
----------------------------------------------------------------------------------------------------*/
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
dialog,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
font,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
hr,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
main,
mark,
menu,
meter,
nav,
object,
ol,
output,
p,
pre,
progress,
q,
rp,
rt,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video,
xmp {
  border: 0;
  margin: 0;
  padding: 0;
}

img {
  color: transparent;
  font-size: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

ol,
ul {
  list-style: none;
}

li {
  display: list-item;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td,
caption {
  font-weight: normal;
  vertical-align: top;
  text-align: left;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

sub,
sup,
small {
  font-size: 75%;
}

sub,
sup {
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

svg {
  overflow: hidden;
}

:root {
  --mb:.5rem;
  --outer:20px;
  --max-width: 1700px;
  --rec: 56.25%;
  --rat: 177.2%;
  --rw: calc(100% - 40px);
  --rw2: 100%;
  --nav-height:50px;
  --min-width:inherit;
  --bw:70px;
  --b-line-width: 28px;
  --b-line-height: 2px;
  --b-line-offest: 26px;
  --border-radius: 4px;
  --aspect:1.57;
  --form-line-height:45px;
  --form-input-color:$text;
  --form-input-bg:white;
  --border-radius-belonging:min(4vw,2rem);
  --ml: max(0px, calc(50vw - 830px));
}

@media (min-width: 850px) {
  :root {
    --nav-height:80px;
  }
}
@media (min-width: 532px) {
  :root {
    --rw: clamp(320px, 100%, 490px);
    --rw2:clamp(340px,100%, 520px);
    --mb:10px;
    --outer:10vw;
    --ml: max(0px, calc(40vw - 850px));
    --ml:0;
  }
}
@media (min-width: 850px) {
  :root {
    --outer:40px;
    --rw: clamp(550px, 60vw, 680px);
    --rw2:clamp(630px,100%, 760px);
    --mb:.625rem;
    --max-width: 1700px;
    --ml: max(0px, calc(50vw - 810px));
    --ml:0;
  }
}
@media (min-width: 1024px) {
  :root {
    --outer:4vw;
    --ml: max(0px, calc(46vw - 850px));
    --ml:0;
  }
}
@media (min-width: 1180px) {
  :root {
    --outer:5.6vw;
    --rw: clamp(680px, 50vw, 830px);
    --rw2:clamp(760px, 100%, 1050px);
    --ml: max(0px, calc(44.4vw - 850px));
  }
  :root .single-post {
    --ml: 0;
  }
}
@media (min-width: 1600px) {
  :root {
    --mb: 1rem;
  }
}
@media (min-width: 1920px) {
  :root {
    --rw: 830px;
    --rw2:1050px;
  }
}
/*--------------------------------
	Media Queries
	used for outputting content either between media query tags
	example: basic usage
	.element {
		width: 50%;
		@include mq('tablet-small') {
			width: 20%;
		}
	}
	example: using max-width
	.element {
		width: 50%;
		@include mq('tablet-small', 'max') {
			width: 20%;
		}
	}
*/
/*--------------------------------
	Margin / Padding Quick Resets
	example: top & bottom margin set to $mb
	.element {
		@include push--ends;
	}
	example: left & right padding set to $mb--small
	.element {
		@include soft--sides($mb--small);
	}
*/
/*--------------------------------
	Helper mixins
*/
/*--------------------------------
	Form input placeholder text
	example:
	input,
	textarea {
		@include input-placeholder {
			color: $grey;
		}
	}
*/
/*--------------------------------
	Retina images
	example:
	.element {
		@include retina {
			background-image: url(../img/background@2x.png);
		}
	}
*/
/*--------------------------------
	Content margins
	fore removing first/last child margins
	example: default
	.element {
		@include content-margins;
	}
	output:
	.element > *:first-child {
		margin-top: 0;
	}
	.element > *:last-child {
		margin-bottom: 0;
	}
	example: empty selector
	.element {
		@include content-margins('false');
	}
	output:
	.element:first-child {
		margin-top: 0;
	}
	.element:last-child {
		margin-bottom: 0;
	}
*/
/*--------------------------------
	CSS Triangle
	used for creating CSS only triangles
	example:
	.element {
		&::before {
			@include css-triangle(blue, down);
		}
	}
*/
/*--------------------------------
	Hide text
	example:
	.element {
		@include hide-text;
	}
*/
/*--------------------------------
Font size
*/
.animated.infinite {
  animation-iteration-count: infinite;
}

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

							Fade In   

--------------------------------------------------------------------------------------------------------------------------*/
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-10px);
  }
  60% {
    transform: translateY(-5px);
  }
}
@keyframes fade-in-ks {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in-scale-ks {
  0% {
    opacity: 0;
    transform-origin: top center;
    transform: scale(1) translate3d(0, 2rem, 0);
  }
  100% {
    opacity: 1;
    transform-origin: top center;
    transform: scale(1) translate3d(0, 0, 0);
  }
}
@keyframes fade-in-up-ks {
  0% {
    opacity: 0;
    transform: translate3d(0, 30px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-in-up-centrex-ks {
  0% {
    opacity: 0;
    transform: translate3d(-50%, 100px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(-50%, 0, 0);
  }
}
@keyframes fade-in-down-ks {
  0% {
    opacity: 1;
    transform: translate3d(0, -100%, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-out-ks {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOutLeftKs {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-30px);
  }
}
@keyframes fadeOutRightKS {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(30px);
  }
}
@keyframes fadeInLeftKs {
  0% {
    opacity: 0;
    transform: translateX(-50vw);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes rotateKs {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(90deg);
  }
}
.bounce {
  animation: bounce2 2s ease;
}

.fade-in {
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}

.touch .fade-in {
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-delay: 0.1s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}

.fade-in-up {
  animation-duration: 1s;
  animation-fill-mode: both;
  animation-delay: 0.1s;
  animation-timing-function: ease;
  animation-name: fade-in-up-ks;
}

.fade-out {
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-name: fadeOutKs;
}

p {
  margin-bottom: 1rem;
}

p.largefont,
.has-small-font-size {
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 849px) {
  p.largefont,
  .has-small-font-size {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}

.has-large-font-size {
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .has-large-font-size {
    font-size: 1.625rem;
    line-height: 1.3;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .has-large-font-size {
    font-size: 1.25rem;
    line-height: 1.3;
  }
}

.has-x-large-font-size {
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .has-x-large-font-size {
    font-size: 1.625rem;
    line-height: 1.3;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .has-x-large-font-size {
    font-size: 1.25rem;
    line-height: 1.3;
  }
}

.smallfont, .has-small-font-size {
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 849px) {
  .smallfont, .has-small-font-size {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}

.kicker {
  font-size: 0.75rem;
  line-height: 1.4;
}

h1 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.875rem, 5.8333333333vw + 0rem, 7.5rem);
  line-height: 1;
  letter-spacing: -1px;
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 1920px) {
  h1 {
    font-size: calc(84 / 1440 * 1920px);
  }
}
h2 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(2rem, 3.2638888889vw + 0rem, 6.5rem);
  line-height: 1.1;
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 1920px) {
  h2 {
    font-size: calc(47 / 1440 * 1920px);
  }
}

h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.625rem, 2.3611111111vw + 0rem, 4.625rem);
  line-height: 1.3;
}
@media (min-width: 1920px) {
  h3 {
    font-size: calc(34 / 1440 * 1920px);
  }
}
h4 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
}
@media (min-width: 1920px) {
  h4 {
    font-size: calc(24 / 1440 * 1920px);
  }
}

h5 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
}

.h1-404 {
  font-size: clamp(7.5rem, 20.8333333333vw + 0rem, 18.75rem);
  letter-spacing: -0.05ch;
}
@media (min-width: 1920px) {
  .h1-404 {
    font-size: calc(300 / 1440 * 1920px);
  }
}

p.has-large-font-size {
  line-height: 1.1;
}

.is-layout-flex {
  display: flex;
  gap: var(--mb);
  row-gap: 0;
}
.is-layout-flex > .wp-block-group {
  flex: 1;
}
.is-layout-flex .is-vertical {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.is-layout-flex .is-vertical * {
  margin: 0;
}
.is-layout-flex h4 {
  margin-bottom: 0;
}
.is-layout-flex .is-content-justification-right {
  justify-content: flex-end;
}

#wpadminbar {
  opacity: 0;
  transition: opacity 0.5s;
}
#wpadminbar:hover {
  opacity: 1;
}

a, button {
  color: #231B29;
  text-decoration: none;
  transition: background-color 0.5s, color 0.5s, opacity 0.3s, transform 0.3s;
}

a:hover {
  color: #231B29;
}

.btn--primary {
  color: #231B29;
  background-color: #84F0C9;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
}
.btn--primary svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
.btn--primary:hover:not(:disabled), .btn--primary:active:not(:disabled) {
  color: #231B29;
  background-color: #EAD2FA;
  border-color: #231B29;
}
.btn--primary:hover:not(:disabled) svg *, .btn--primary:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  .btn--primary {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}

.button {
  color: #FFFFFF;
  background-color: #231B29;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
}
.button svg * {
  fill: #FFFFFF;
  stroke: #FFFFFF;
  transition: fill 0.3s, stroke 0.3s;
}
.button:hover:not(:disabled), .button:active:not(:disabled) {
  color: #231B29;
  background-color: #FFFFFF;
  border-color: #231B29;
}
.button:hover:not(:disabled) svg *, .button:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  .button {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}

.btn--secondary {
  color: #EAD2FA;
  background-color: transparent;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #EAD2FA;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #EAD2FA);
}
.btn--secondary svg * {
  fill: #EAD2FA;
  stroke: #EAD2FA;
  transition: fill 0.3s, stroke 0.3s;
}
.btn--secondary:hover:not(:disabled), .btn--secondary:active:not(:disabled) {
  color: #EAD2FA;
  background-color: transparent;
  border-color: #EAD2FA;
}
.btn--secondary:hover:not(:disabled) svg *, .btn--secondary:active:not(:disabled) svg * {
  fill: #EAD2FA;
  stroke: #EAD2FA;
}
@media (max-width: 531px) {
  .btn--secondary {
    filter: drop-shadow(0px 0px 0px #EAD2FA);
  }
}

.btn--tertiary {
  color: #EAD2FA;
  background-color: rgba(234, 210, 250, 0.15);
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
}
.btn--tertiary svg * {
  fill: #EAD2FA;
  stroke: #EAD2FA;
  transition: fill 0.3s, stroke 0.3s;
}
.btn--tertiary:hover:not(:disabled), .btn--tertiary:active:not(:disabled) {
  color: #231B29;
  background-color: #EAD8F6;
  border-color: #231B29;
}
.btn--tertiary:hover:not(:disabled) svg *, .btn--tertiary:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  .btn--tertiary {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}

.load-more a {
  color: #F1EFF2;
  background-color: #EAD2FA;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
}
.load-more a svg * {
  fill: #F1EFF2;
  stroke: #F1EFF2;
  transition: fill 0.3s, stroke 0.3s;
}
.load-more a:hover:not(:disabled), .load-more a:active:not(:disabled) {
  color: #F1EFF2;
  background-color: #EAD2FA;
  border-color: #231B29;
}
.load-more a:hover:not(:disabled) svg *, .load-more a:active:not(:disabled) svg * {
  fill: #F1EFF2;
  stroke: #F1EFF2;
}
@media (max-width: 531px) {
  .load-more a {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}

.cta {
  color: #231B29;
  background-color: #84F0C9;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
}
.cta svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
.cta:hover:not(:disabled), .cta:active:not(:disabled) {
  color: #231B29;
  background-color: #EAD2FA;
  border-color: #231B29;
}
.cta:hover:not(:disabled) svg *, .cta:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  .cta {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}

.back {
  color: #231B29;
  background-color: #EAD8F6;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
  font-size: 0.9375rem;
  line-height: 1.4;
  line-height: 1;
  padding: 0.5rem clamp(10px, 1vw, 20px);
  min-width: clamp(100px, 10vw, 200px);
}
.back svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
.back:hover:not(:disabled), .back:active:not(:disabled) {
  color: #231B29;
  background-color: #84F0C9;
  border-color: #231B29;
}
.back:hover:not(:disabled) svg *, .back:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  .back {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}
@media (max-width: 849px) {
  .back {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}

.pill {
  font-size: 0.9375rem;
  line-height: 1.4;
  background-color: #F1EFF2;
  color: #4D1F6E;
  border-radius: 20px;
  padding: 0 0.6rem;
  line-height: 1.6;
  white-space: nowrap;
}
@media (max-width: 849px) {
  .pill {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}

.pill-nav {
  font-size: 0.9375rem;
  line-height: 1.4;
  display: inline-block;
  background-color: #4D1F6E;
  color: #FFFFFF;
  border-radius: 20px;
  padding: 0 1.2rem;
  line-height: 1.8;
}
.pill-nav:hover {
  background-color: #FFFFFF;
  color: #4D1F6E;
}

.header-site {
  z-index: 302;
  position: fixed;
  top: 0;
  width: 100%;
  padding-left: var(--outer);
  padding-right: var(--outer);
  font-size: 0.9375rem;
  line-height: 1.4;
  /* mobile    
  content -> nav--main + nav--right-nav -> ul--main
  */
  /* DESKTOP */
}
.header-site .content {
  display: flex;
}
.header-site li {
  position: relative;
}
.header-site .logo {
  width: 80px;
  height: auto;
  position: relative;
  font-size: 0;
}
.header-site .logo a {
  display: block;
  position: absolute;
  inset: 0 0 0 0;
  background-color: transparent;
  z-index: 1;
}
.header-site .logo svg, .header-site .logo img {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.header-site .logo svg *, .header-site .logo img * {
  fill: #FFFFFF;
}
@media (max-width: 849px) {
  .header-site {
    padding: 0;
    width: 100dvw;
  }
  .header-site .logged-in-text {
    font-size: 0.9375rem;
    line-height: 1.4;
    color: #FFFFFF;
  }
}
@media (max-width: 849px) and (max-width: 849px) {
  .header-site .logged-in-text {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
@media (max-width: 849px) {
  .header-site .logged-in-text .logout {
    color: #EAD2FA;
  }
  .header-site .content {
    max-width: inherit;
  }
  .header-site .logo {
    font-size: 0;
    width: 58px;
    height: 26px;
  }
  .header-site .content {
    padding: 0 var(--outer);
    width: 100%;
    align-items: center;
    justify-content: space-between;
    z-index: 3;
    background-color: #4D1F6E;
    height: var(--nav-height);
  }
  .header-site .menu-button {
    position: absolute;
    right: 0;
  }
  .header-site .menus {
    background-color: #4D1F6E;
    flex-direction: column;
    align-items: flex-start;
    position: absolute;
    width: 100%;
    min-height: 100dvh;
    top: 0;
    left: 0;
    padding-top: 100px;
    z-index: 2;
    overflow-y: scroll;
    padding-bottom: 50px;
  }
  .header-site .menus .logo {
    display: none;
  }
  .header-site .menus .login {
    display: none !important;
  }
  .header-site .nav--main-menu {
    font-size: 1.125rem;
    line-height: 2.4;
    width: 100%;
  }
  .header-site .nav--main-menu li a:not(.cta) {
    color: #FFFFFF;
    display: block;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .header-site .nav--main-menu > li:last-of-type a {
    border-bottom: none;
  }
  .header-site .nav--main-menu li .sub-menu {
    height: 0;
    overflow: hidden;
  }
  .header-site .login {
    right: var(--bw);
    position: absolute;
  }
  .header-site .menus {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s;
  }
}
@media (min-width: 850px) {
  .header-site {
    background-color: #4D1F6E;
    /* Dtrop downs */
  }
  .header-site .logout {
    background-color: rgba(234, 210, 250, 0.3);
    color: #FFFFFF;
  }
  .header-site .logout:hover, .header-site .logout:active {
    background-color: rgba(234, 210, 250, 0.5);
  }
  .header-site .logged-in-text {
    font-size: 0.75rem;
    line-height: 1.4;
    position: absolute;
    color: #FFFFFF;
    top: 5px;
    right: 0;
  }
  .header-site .mobile {
    display: none;
  }
  .header-site .content {
    height: var(--nav-height);
  }
  .header-site .menus {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
  }
  .header-site .nav--main-menu {
    display: flex;
    align-items: center;
    gap: clamp(5px, 2vw, 1.6rem);
  }
  .header-site .ul--main-nav {
    display: flex;
    width: 100%;
    align-items: center;
  }
  .header-site .ul--main-nav li {
    display: flex;
    white-space: nowrap;
  }
  .header-site .ul--main-nav a:not(.cta) {
    color: #FFFFFF;
    padding: 0.5rem clamp(2px, 1.3vw, 1.5 * var(--mb));
  }
  .header-site .ul--main-nav a:not(.cta):hover,
  .header-site .ul--main-nav .current-menu-item a,
  .header-site .ul--main-nav .current-page-ancestor a {
    color: #EAD2FA;
    text-shadow: 0px 0px 1px #EAD2FA;
  }
  .header-site li > .sub-menu {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    left: 50%;
    transform: translateZ(0) translate(-50%, -10px);
    transition: opacity 0.2s, transform 0.2s 0.2s;
    filter: drop-shadow(0 -1px 6px rgba(35, 27, 41, 0.3));
    padding-top: 14px;
    top: 4ch;
    overflow: hidden;
  }
  .header-site li > .sub-menu::before {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -5px;
    top: 10px;
    height: 10px;
    width: 10px;
    transform: rotate(45deg);
    background-color: #FFFFFF;
  }
  .header-site li > .sub-menu li {
    padding: 0 calc(2 * var(--mb));
    background-color: #FFFFFF;
  }
  .header-site li > .sub-menu li a:not(.cta) {
    color: #231B29;
    padding: 1ch 0;
  }
  .header-site li > .sub-menu li a:not(.cta):hover {
    color: #4D1F6E;
  }
  .header-site li > .sub-menu li .sub-menu {
    display: none;
  }
  .header-site li > .sub-menu li.current-menu-item a {
    text-shadow: none;
  }
  .header-site li > .sub-menu li:first-of-type {
    padding-top: 1ch;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
  }
  .header-site li > .sub-menu li:last-of-type {
    padding-bottom: 1ch;
    border-radius: 0 0 var(--border-radius) var(--border-radius);
  }
  .header-site li > .sub-menu li:last-of-type:first-of-type {
    border-radius: var(--border-radius);
  }
  .header-site li.current-menu-item > .sub-menu a {
    text-shadow: none;
  }
  .header-site li:has(.sub-menu):hover .sub-menu {
    opacity: 1;
    transition: opacity 0.2s 0.2s, transform 0.2s 0.2s;
    pointer-events: all;
    transform: translate(-50%, 0ch);
  }
}

.subnav {
  width: 100%;
  background-color: white;
  position: fixed;
  top: var(--nav-height);
  padding-left: var(--outer);
  padding-right: var(--outer);
  z-index: 20;
  font-size: 0.9375rem;
  line-height: 1.4;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}
.subnav::-webkit-scrollbar {
  display: none; /* For Chrome, Safari, and Opera */
}
.subnav li {
  white-space: nowrap;
}
.subnav ul {
  height: 40px;
  display: flex;
  align-items: center;
  gap: clamp(15px, 2%, 30px);
}
.subnav a:hover, .subnav a.active {
  color: #4D1F6E;
  text-shadow: 0px 0px 1px #4D1F6E;
}

.menu-visible {
  overflow: hidden;
}
@media (max-width: 850px) {
  .menu-visible .menus {
    opacity: 1;
    pointer-events: all;
    transition: opacity 0.5s;
  }
}

.menu-button {
  position: relative;
  margin: 0;
  padding: 0;
  width: var(--bw);
  height: var(--bw);
  text-indent: 200%;
  text-align: left;
  font-size: 0;
  white-space: nowrap;
  overflow: hidden;
  font-weight: bold;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  border: none;
  overflow: visible;
  transform-origin: center;
  transition: transform 0.4s ease-in-out;
}
.menu-button:focus {
  outline: none;
  border: none;
}
.menu-button span {
  display: block;
  position: absolute;
  height: var(--b-line-height);
  width: var(--b-line-width);
  background-color: #EAD2FA;
  transform-origin: center;
  left: calc(50% - var(--b-line-width) * 0.5);
  border-radius: 50px;
}
.menu-button span:nth-of-type(1) {
  top: var(--b-line-offest);
  transition: top 0.2s linear 0s, transform 0.2s linear 0s, background-color 0.3s linear 0.3s;
}
.menu-button span:nth-of-type(2) {
  top: calc(50% - 0.5 * var(--b-line-height));
  transition: bottom 0.2s linear 0s, transform 0.2s linear 0s, background-color 0.3s linear 0.3s;
}
.menu-button span:nth-of-type(3) {
  bottom: var(--b-line-offest);
  transition: bottom 0.2s linear 0s, transform 0.2s linear 0s, background-color 0.3s linear 0.3s;
}
.menu-button:hover span:nth-of-type(1) {
  transform: translateX(0px);
}
.menu-button:hover span:nth-of-type(2) {
  transform: translateX(0px);
}

.menu-visible .menu-button {
  transform: rotate(90deg);
}
.menu-visible .menu-button span {
  background-color: #FFFFFF;
  width: var(--b-line-width);
}
.menu-visible .menu-button span:nth-of-type(1) {
  top: calc(var(--bw) / 2 - 1px);
  transform: rotate(45deg);
  transition: top 0.2s linear 0s, transform 0.2s linear 0s, background-color 0.3s 0s;
}
.menu-visible .menu-button span:nth-of-type(2) {
  opacity: 0;
  transform: scaleX(0);
}
.menu-visible .menu-button span:nth-of-type(3) {
  bottom: calc(var(--bw) / 2 - 1px);
  transform: rotate(-45deg);
  transition: bottom 0.2s linear 0s, transform 0.2s linear 0s, background-color 0.3s 0s;
}

/*----------------------------------------------------------------------------------------------------------------
                                    Forms
---------------------------------------------------------------------------------------------------------------*/
@media (max-width: 532px) {
  :root {
    --form-line-height:45px;
  }
}
form.wpcf7-form p,
.section--login form p {
  margin-bottom: 0;
}
form.wpcf7-form input,
.section--login form input {
  border: none;
  padding: 0;
  margin: 0;
}
form.wpcf7-form input[type=submit], form.wpcf7-form input[type=button], form.wpcf7-form button,
.section--login form input[type=submit],
.section--login form input[type=button],
.section--login form button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  color: #231B29;
  background-color: #84F0C9;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
  margin-bottom: 1px;
  width: 100%;
}
@media (min-width: 1024px) {
  form.wpcf7-form input[type=submit], form.wpcf7-form input[type=button], form.wpcf7-form button,
  .section--login form input[type=submit],
  .section--login form input[type=button],
  .section--login form button {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  form.wpcf7-form input[type=submit], form.wpcf7-form input[type=button], form.wpcf7-form button,
  .section--login form input[type=submit],
  .section--login form input[type=button],
  .section--login form button {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
form.wpcf7-form input[type=submit] svg *, form.wpcf7-form input[type=button] svg *, form.wpcf7-form button svg *,
.section--login form input[type=submit] svg *,
.section--login form input[type=button] svg *,
.section--login form button svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
form.wpcf7-form input[type=submit]:hover:not(:disabled), form.wpcf7-form input[type=submit]:active:not(:disabled), form.wpcf7-form input[type=button]:hover:not(:disabled), form.wpcf7-form input[type=button]:active:not(:disabled), form.wpcf7-form button:hover:not(:disabled), form.wpcf7-form button:active:not(:disabled),
.section--login form input[type=submit]:hover:not(:disabled),
.section--login form input[type=submit]:active:not(:disabled),
.section--login form input[type=button]:hover:not(:disabled),
.section--login form input[type=button]:active:not(:disabled),
.section--login form button:hover:not(:disabled),
.section--login form button:active:not(:disabled) {
  color: #231B29;
  background-color: #EAD8F6;
  border-color: #231B29;
}
form.wpcf7-form input[type=submit]:hover:not(:disabled) svg *, form.wpcf7-form input[type=submit]:active:not(:disabled) svg *, form.wpcf7-form input[type=button]:hover:not(:disabled) svg *, form.wpcf7-form input[type=button]:active:not(:disabled) svg *, form.wpcf7-form button:hover:not(:disabled) svg *, form.wpcf7-form button:active:not(:disabled) svg *,
.section--login form input[type=submit]:hover:not(:disabled) svg *,
.section--login form input[type=submit]:active:not(:disabled) svg *,
.section--login form input[type=button]:hover:not(:disabled) svg *,
.section--login form input[type=button]:active:not(:disabled) svg *,
.section--login form button:hover:not(:disabled) svg *,
.section--login form button:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  form.wpcf7-form input[type=submit], form.wpcf7-form input[type=button], form.wpcf7-form button,
  .section--login form input[type=submit],
  .section--login form input[type=button],
  .section--login form button {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}
form.wpcf7-form input[type=submit]:hover, form.wpcf7-form input[type=button]:hover, form.wpcf7-form button:hover,
.section--login form input[type=submit]:hover,
.section--login form input[type=button]:hover,
.section--login form button:hover {
  cursor: pointer;
}
@media (max-width: 532px) {
  form.wpcf7-form input[type=submit], form.wpcf7-form input[type=button], form.wpcf7-form button,
  .section--login form input[type=submit],
  .section--login form input[type=button],
  .section--login form button {
    width: 100%;
  }
}
form.wpcf7-form input[type=submit]:disabled, form.wpcf7-form input[type=button]:disabled, form.wpcf7-form button:disabled,
.section--login form input[type=submit]:disabled,
.section--login form input[type=button]:disabled,
.section--login form button:disabled {
  opacity: 0.6;
}
form.wpcf7-form textarea,
.section--login form textarea {
  font-size: 0.9375rem;
  line-height: 1.4;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: var(--form-input-color);
  background-color: var(--form-input-bg);
  padding: 10px 15px;
  border: 1px solid #D9D9D9;
  width: 100%;
  color: var(--form-input-color);
  border-radius: 3px;
  height: var(--form-line-height);
}
@media (max-width: 1023px) {
  form.wpcf7-form textarea,
  .section--login form textarea {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
form.wpcf7-form textarea:focus,
.section--login form textarea:focus {
  border-color: #EAD2FA !important;
}
form.wpcf7-form textarea:focus::placeholder,
.section--login form textarea:focus::placeholder {
  color: rgba(35, 27, 41, 0.2);
  opacity: 1; /* Firefox */
}
form.wpcf7-form textarea::placeholder,
.section--login form textarea::placeholder {
  color: rgba(35, 27, 41, 0);
  opacity: 1; /* Firefox */
}
form.wpcf7-form input[type=tel], form.wpcf7-form input[type=text], form.wpcf7-form input[type=search], form.wpcf7-form input[type=password], form.wpcf7-form input[type=email], form.wpcf7-form input[type=number], form.wpcf7-form input[type=url],
.section--login form input[type=tel],
.section--login form input[type=text],
.section--login form input[type=search],
.section--login form input[type=password],
.section--login form input[type=email],
.section--login form input[type=number],
.section--login form input[type=url] {
  border-radius: 3px;
  color: var(--form-input-color);
  height: var(--form-line-height);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  border: 1px solid #D9D9D9;
  background-color: var(--form-input-bg);
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media (min-width: 1024px) {
  form.wpcf7-form input[type=tel], form.wpcf7-form input[type=text], form.wpcf7-form input[type=search], form.wpcf7-form input[type=password], form.wpcf7-form input[type=email], form.wpcf7-form input[type=number], form.wpcf7-form input[type=url],
  .section--login form input[type=tel],
  .section--login form input[type=text],
  .section--login form input[type=search],
  .section--login form input[type=password],
  .section--login form input[type=email],
  .section--login form input[type=number],
  .section--login form input[type=url] {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  form.wpcf7-form input[type=tel], form.wpcf7-form input[type=text], form.wpcf7-form input[type=search], form.wpcf7-form input[type=password], form.wpcf7-form input[type=email], form.wpcf7-form input[type=number], form.wpcf7-form input[type=url],
  .section--login form input[type=tel],
  .section--login form input[type=text],
  .section--login form input[type=search],
  .section--login form input[type=password],
  .section--login form input[type=email],
  .section--login form input[type=number],
  .section--login form input[type=url] {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
form.wpcf7-form input[type=tel]:focus, form.wpcf7-form input[type=text]:focus, form.wpcf7-form input[type=search]:focus, form.wpcf7-form input[type=password]:focus, form.wpcf7-form input[type=email]:focus, form.wpcf7-form input[type=number]:focus, form.wpcf7-form input[type=url]:focus,
.section--login form input[type=tel]:focus,
.section--login form input[type=text]:focus,
.section--login form input[type=search]:focus,
.section--login form input[type=password]:focus,
.section--login form input[type=email]:focus,
.section--login form input[type=number]:focus,
.section--login form input[type=url]:focus {
  border-color: #4D1F6E;
}
form.wpcf7-form input[type=tel]:focus::placeholder, form.wpcf7-form input[type=text]:focus::placeholder, form.wpcf7-form input[type=search]:focus::placeholder, form.wpcf7-form input[type=password]:focus::placeholder, form.wpcf7-form input[type=email]:focus::placeholder, form.wpcf7-form input[type=number]:focus::placeholder, form.wpcf7-form input[type=url]:focus::placeholder,
.section--login form input[type=tel]:focus::placeholder,
.section--login form input[type=text]:focus::placeholder,
.section--login form input[type=search]:focus::placeholder,
.section--login form input[type=password]:focus::placeholder,
.section--login form input[type=email]:focus::placeholder,
.section--login form input[type=number]:focus::placeholder,
.section--login form input[type=url]:focus::placeholder {
  color: rgba(35, 27, 41, 0.2);
  opacity: 1; /* Firefox */
}
form.wpcf7-form input[type=tel]::placeholder, form.wpcf7-form input[type=text]::placeholder, form.wpcf7-form input[type=search]::placeholder, form.wpcf7-form input[type=password]::placeholder, form.wpcf7-form input[type=email]::placeholder, form.wpcf7-form input[type=number]::placeholder, form.wpcf7-form input[type=url]::placeholder,
.section--login form input[type=tel]::placeholder,
.section--login form input[type=text]::placeholder,
.section--login form input[type=search]::placeholder,
.section--login form input[type=password]::placeholder,
.section--login form input[type=email]::placeholder,
.section--login form input[type=number]::placeholder,
.section--login form input[type=url]::placeholder {
  color: rgba(35, 27, 41, 0.5);
  opacity: 1; /* Firefox */
}
form.wpcf7-form input[type=number],
.section--login form input[type=number] {
  min-width: inherit;
  padding-right: 5px;
  background-color: var(--form-input-bg);
}
form.wpcf7-form .list-multiselect-wrap select,
.section--login form .list-multiselect-wrap select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: var(--form-input-color);
  border-radius: 3px;
  border: 1px solid #D9D9D9;
  background-color: var(--form-input-bg);
}
form.wpcf7-form select,
.section--login form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: var(--form-input-color);
  border-radius: 3px;
  border: 1px solid #D9D9D9;
  height: var(--form-line-height);
  line-height: var(--form-line-height);
  width: 100%;
  padding: 0 40px 0 15px;
  background: url(../images/svg/arrow-down.svg) no-repeat right 25px center;
  background-size: auto 20%;
  background-color: var(--form-input-bg);
}
form.wpcf7-form textarea:focus, form.wpcf7-form input:focus, form.wpcf7-form select:focus,
.section--login form textarea:focus,
.section--login form input:focus,
.section--login form select:focus {
  outline: none;
  border-color: #231B29;
}
form.wpcf7-form label,
.section--login form label {
  color: var(--form-input-color);
  font-size: 0.9375rem;
  line-height: 1.4;
  line-height: 2;
  margin-bottom: 0.2rem;
  display: block;
}
@media (max-width: 1023px) {
  form.wpcf7-form label,
  .section--login form label {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}

.wpcf7 p {
  margin-top: max(var(--mb), 10px);
}

.section--login .feedback {
  font-size: 0.9375rem;
  line-height: 1.4;
  padding: var(--mb) 0;
}
@media (max-width: 849px) {
  .section--login .feedback {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--login .feedback.feedback-invalid {
  color: rgb(187, 54, 5);
}
.section--login .feedback.feedback-vallid {
  color: #359A45;
}

.wpcf7-list-item {
  margin-bottom: var(--mb);
  margin-top: var(--mb);
}

.wpcf7-list-item:first-child {
  margin-left: 0;
}

.wpcf7-list-item label {
  margin-bottom: 0;
}

.wpcf7-checkbox, .wpcf7-radio {
  display: block;
  padding-top: var(--mb);
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb);
  row-gap: 0;
}
.wpcf7-checkbox .wpcf7-list-item, .wpcf7-radio .wpcf7-list-item {
  margin-left: 0;
}

.wpcf7 form.spam .wpcf7-response-output,
.wpcf7-response-output {
  background-color: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font-weight: normal;
}

.wpcf7-acceptance label {
  font-weight: normal;
  text-transform: none;
  letter-spacing: 0;
}

/* Checkboxes*/
.wpcf7-list-item:has(input[type=checkbox]) input[type=checkbox], .wpcf7-list-item:has(input[type=checkbox]) input[type=radio], .wpcf7-list-item:has(input[type=radio]) input[type=checkbox], .wpcf7-list-item:has(input[type=radio]) input[type=radio] {
  display: none;
}
.wpcf7-list-item:has(input[type=checkbox]) input[type=checkbox]:checked + .wpcf7-list-item-label::before,
.wpcf7-list-item:has(input[type=checkbox]) input[type=radio]:checked + .wpcf7-list-item-label::before, .wpcf7-list-item:has(input[type=radio]) input[type=checkbox]:checked + .wpcf7-list-item-label::before,
.wpcf7-list-item:has(input[type=radio]) input[type=radio]:checked + .wpcf7-list-item-label::before {
  color: #231B29;
  border-color: #EAD2FA;
  background-color: #EAD2FA;
}
.wpcf7-list-item:has(input[type=checkbox]) input[type=radio]:checked + .wpcf7-list-item-label::before, .wpcf7-list-item:has(input[type=radio]) input[type=radio]:checked + .wpcf7-list-item-label::before {
  color: #231B29;
  background-color: #7E8696;
}
.wpcf7-list-item:has(input[type=checkbox]) input[type=checkbox] + .wpcf7-list-item-label,
.wpcf7-list-item:has(input[type=checkbox]) input[type=radio] + .wpcf7-list-item-label, .wpcf7-list-item:has(input[type=radio]) input[type=checkbox] + .wpcf7-list-item-label,
.wpcf7-list-item:has(input[type=radio]) input[type=radio] + .wpcf7-list-item-label {
  display: inline-flex;
  align-items: center;
}
.wpcf7-list-item:has(input[type=checkbox]) input[type=checkbox] + .wpcf7-list-item-label::before,
.wpcf7-list-item:has(input[type=checkbox]) input[type=radio] + .wpcf7-list-item-label::before, .wpcf7-list-item:has(input[type=radio]) input[type=checkbox] + .wpcf7-list-item-label::before,
.wpcf7-list-item:has(input[type=radio]) input[type=radio] + .wpcf7-list-item-label::before {
  content: "✔";
  color: transparent;
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background-color: #FFFFFF;
  border: 1px solid #EAD2FA;
  border-radius: 5px;
  margin-right: 10px;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
}
.wpcf7-list-item:has(input[type=checkbox]) input[type=radio] + .wpcf7-list-item-label::before, .wpcf7-list-item:has(input[type=radio]) input[type=radio] + .wpcf7-list-item-label::before {
  content: "";
  border-width: 5px;
  border-radius: 10px;
  width: 10px;
  background-color: #EAD2FA;
  height: 10px;
}

.inline-inputs {
  display: flex;
  gap: var(--mb);
}
.inline-inputs > div {
  flex: 1;
}

/* submitted */
.wpcf7 form.sent > * :not(.wpcf7-response-output) {
  opacity: 0;
  display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
  border: none;
  padding-left: 0;
  padding-right: 0;
  margin: 0;
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(10px, 2vw, 60px);
}

.section--login {
  /* The search field */
  /* The container <div> - needed to position the dropdown content */
  /* Links inside the dropdown */
  /* Change color of dropdown links on hover */
}
.section--login .form-flex {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--mb);
}
.section--login input:focus:invalid,
.section--login input.invalid,
.section--login input:not(:placeholder-shown):invalid {
  border-color: rgb(187, 54, 5) !important;
}
.section--login .error {
  color: rgb(187, 54, 5);
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 849px) {
  .section--login .error {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--login .checkbox-wrapper.wpcf7-list-item {
  margin: 0 0 var(--mb) 0;
}
.section--login .required {
  font-size: 0.75rem;
  line-height: 1.4;
}
.section--login input + label, .section--login div + label, .section--login select + label {
  margin-top: max(var(--mb), 10px);
}
.section--login #register.success {
  opacity: 0.3;
}
.section--login .checkbox-wrapper:has(input[type=checkbox]) + input {
  pointer-events: none;
  opacity: 0.8;
  border-color: #7E8696;
  color: #7E8696;
}
.section--login .checkbox-wrapper:has(input[type=checkbox]:checked) + input {
  pointer-events: all;
  border-color: #231B29;
  color: #231B29;
}
.section--login .checkbox-wrapper:has(input[type=checkbox]:checked) + input:hover, .section--login .checkbox-wrapper:has(input[type=checkbox]:checked) + input:active {
  color: #FFFFFF;
}
.section--login .select-dropdown {
  box-sizing: border-box;
  background-image: url("../images/svg/mag.svg");
  background-position: 14px 12px;
  background-repeat: no-repeat;
  position: relative;
}
.section--login .select-dropdown-results {
  background-color: white;
  position: absolute;
  border-radius: var(--bor);
  color: var(--form-input-color);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 0.9375rem;
  line-height: 1.4;
  border-radius: 3px;
  background-color: var(--form-input-bg);
  padding: 0;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.2);
  width: 100%;
  max-height: 7rem;
  overflow: hidden;
  transition: height 1s, opacity 0.2s;
  height: 0;
  opacity: 0;
  overflow: hidden;
}
@media (max-width: 849px) {
  .section--login .select-dropdown-results {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--login .select-dropdown-results::before {
  content: "No results";
  position: absolute;
  padding: 0.5rem 1rem;
  z-index: 0;
}
.section--login .select-dropdown-results li {
  position: relative;
}
.section--login .select-dropdown-results a {
  display: block;
  padding: 0.2rem 1rem;
  background-color: white;
}
.section--login .select-dropdown-results a:hover, .section--login .select-dropdown-results a:active {
  background-color: #F1EFF2;
  cursor: pointer;
}
.section--login .select-dropdown-results li:first-of-type a {
  padding-top: 0.7rem;
}
.section--login .select-dropdown-results li:last-of-type a {
  padding-bottom: 0.7rem;
}
.section--login .select-dropdown-results.show-results {
  height: auto;
  min-height: 2rem;
  overflow: scroll;
  opacity: 1;
  transition: height 0s, opacity 0.2s;
}
.section--login .dropdown {
  position: relative;
  display: inline-block;
}
.section--login .dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}
.section--login .dropdown-content a:hover {
  background-color: #f1f1f1;
}

.register-feedback-message {
  padding-top: var(--mb);
}

@keyframes rotateLoaderKf {
  0% {
    transform: rotate(0deg);
  }
  8.2% {
    transform: rotate(0deg);
  }
  8.3% {
    transform: rotate(30deg);
  }
  16.5% {
    transform: rotate(30deg);
  }
  16.6% {
    transform: rotate(60deg);
  }
  24.9% {
    transform: rotate(60deg);
  }
  25% {
    transform: rotate(90deg);
  }
  33.2% {
    transform: rotate(90deg);
  }
  33.3% {
    transform: rotate(120deg);
  }
  41.5% {
    transform: rotate(120deg);
  }
  41.6% {
    transform: rotate(150deg);
  }
  49.9% {
    transform: rotate(150deg);
  }
  50% {
    transform: rotate(180deg);
  }
  58.2% {
    transform: rotate(180deg);
  }
  58.3% {
    transform: rotate(210deg);
  }
  66.5% {
    transform: rotate(210deg);
  }
  66.6% {
    transform: rotate(240deg);
  }
  74.9% {
    transform: rotate(240deg);
  }
  75% {
    transform: rotate(270deg);
  }
  83.2% {
    transform: rotate(270deg);
  }
  83.3% {
    transform: rotate(300deg);
  }
  91.5% {
    transform: rotate(300deg);
  }
  91.6% {
    transform: rotate(330deg);
  }
  99.9% {
    transform: rotate(330deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#modal--video .video {
  width: 100%;
  background-color: black;
  z-index: 2;
  overflow: hidden;
  position: relative;
  filter: drop-shadow(0px 0px 34px rgba(0, 0, 0, 0.5));
}
#modal--video .video:after {
  content: "";
  display: block;
  padding-top: var(--rec);
  width: 0;
  float: left;
  position: relative;
}
#modal--video iframe {
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
#modal--video .video.video-ready iframe {
  opacity: 1;
  transition: opacity 1s;
}
@media (min-width: 532px) {
  #modal--video .video {
    width: 90%;
  }
}
@media (min-width: 850px) {
  #modal--video .video {
    width: 80%;
  }
}

.modal > span.close-modal {
  display: flex;
  position: absolute;
  top: calc(3 * var(--mb));
  right: calc(3 * var(--mb));
  z-index: 20;
  align-items: center;
  justify-content: center;
  color: transparent;
  width: calc(2 * var(--mb));
  height: calc(2 * var(--mb));
  background-image: url(../images/svg/cross.svg);
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 50%;
  background-size: min(18px, 1.5 * var(--mb));
}
.modal > span.close-modal:hover, .modal > span.close-modal:active {
  opacity: 0.6;
  cursor: pointer;
}

.modal {
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  z-index: 9999;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow-y: scroll;
}
.modal .modal-content {
  position: relative;
  background-color: #F1EFF2;
  padding: clamp(30px, 4.1vw, 120px);
  z-index: 2;
}
.shadow {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  opacity: 0.9;
  z-index: 0;
}
.shadow:hover {
  cursor: pointer;
}

.show-modal {
  overflow: hidden;
}
.show-modal #maincontent {
  pointer-events: none;
}

.show-video {
  overflow: hidden;
}
.show-video #modal--video {
  display: flex;
  position: fixed;
  pointer-events: all;
  animation-duration: 0.2s;
  animation-fill-mode: both;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}

.show-modal-person {
  overflow: hidden;
}
.show-modal-person #modal--person {
  padding: clamp(30px, 4.1vw, 120px) 0;
  display: grid;
  position: fixed;
  pointer-events: all;
  animation-duration: 0.2s;
  animation-fill-mode: both;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
  justify-items: center;
  align-items: center;
}

.show-modal-members {
  overflow: hidden;
}
.show-modal-members #modal--members {
  padding: clamp(30px, 4.1vw, 120px) 0;
  display: grid;
  position: fixed;
  pointer-events: all;
  animation-duration: 0.2s;
  animation-fill-mode: both;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
  justify-items: center;
  align-items: center;
}

.vimeo-video {
  overflow: hidden;
  position: relative;
}
.vimeo-video img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  top: 0%;
  left: 0%;
}
.vimeo-video:after {
  content: "";
  display: block;
  padding-top: var(--rec);
  width: 0;
  float: left;
  position: relative;
}
.vimeo-video.video-ready iframe, .vimeo-video.video-ready .poster {
  opacity: 1;
  transition: opacity 1s;
}
.vimeo-video .show-cursor::before {
  content: "";
  background-image: url(../images/svg/play.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 160px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transition: background-color 0.3s;
}
.vimeo-video .show-cursor:hover {
  cursor: pointer;
}
.vimeo-video .show-cursor:hover::before {
  background-color: rgba(35, 27, 41, 0.3);
}
.vimeo-video a, .vimeo-video span {
  position: absolute;
  width: 99.8%;
  height: 99.6%;
  top: 0.2%;
  left: 0.1%;
}
.vimeo-video img {
  width: 100%;
  height: 100%;
}
.vimeo-video .poster {
  opacity: 0;
  transition: opacity 1s;
}
.vimeo-video iframe {
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  pointer-events: none;
  top: 0;
  left: 0;
}

.on-screen .poster {
  opacity: 1;
}

#modal--video .video {
  aspect-ratio: 16/9;
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}
#modal--video .video video {
  width: 100%;
}

.footer--site {
  padding-left: var(--outer);
  padding-right: var(--outer);
  z-index: 1;
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
  background-color: #231B29;
  color: #FFFFFF;
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 1023px) {
  .footer--site {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.footer--site .logo {
  width: 17%;
  display: flex;
  position: relative;
  margin-bottom: calc(2 * var(--mb));
  font-size: 0;
}
.footer--site .logo a {
  display: block;
  position: absolute;
  inset: 0 0 0 0;
  background-color: transparent;
  z-index: 1;
}
.footer--site .logo svg {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.footer--site .logo svg * {
  fill: #FFFFFF;
}
.footer--site ul a:hover {
  color: #EAD2FA;
}
.footer--site a {
  color: #FFFFFF;
}
.footer--site ul a {
  color: #FFFFFF;
}
.footer--site ul li {
  padding-bottom: calc(0.5 * var(--mb));
}
.footer--site .copyright {
  width: 100%;
}
.footer--site .footer--contact address {
  margin-bottom: var(--mb);
}
.footer--site .footer--contact a {
  color: #FFFFFF;
  display: block;
}
.footer--site .footer--contact a:hover {
  color: #EAD2FA;
}
@media (max-width: 849px) {
  .footer--site ul a {
    font-size: 0.75rem;
    line-height: 1.4;
  }
  .footer--site .content {
    display: flex;
    flex-wrap: wrap;
  }
  .footer--site .copyright {
    width: 100%;
    margin-top: calc(2 * var(--mb));
  }
  .footer--site .footer--logo {
    width: 100%;
  }
  .footer--site .footer--logo .logo {
    width: 58px;
    margin-bottom: var(--mb);
  }
  .footer--site .footer--menus {
    width: 49%;
  }
  .footer--site .footer--contact {
    width: 49%;
  }
}
@media (min-width: 850px) {
  .footer--site .content {
    display: grid;
    grid-template-columns: 4fr 5fr 3fr;
  }
  .footer--site .logo {
    width: 17%;
  }
  .footer--site .ul--footer-nav {
    column-count: 3;
    width: 74%;
  }
}

.is-layout-flex {
  display: flex;
  gap: var(--mb);
  row-gap: 0;
}
.is-layout-flex > .wp-block-group {
  flex: 1;
}
.is-layout-flex .is-vertical {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.is-layout-flex .is-vertical * {
  margin: 0;
}
.is-layout-flex h4 {
  margin-bottom: 0;
}
.is-layout-flex .is-content-justification-right {
  justify-content: flex-end;
}

#wpadminbar {
  opacity: 0;
  transition: opacity 0.5s;
}
#wpadminbar:hover {
  opacity: 1;
}

* {
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box; /* Firefox, other Gecko */
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: antialiased;
}

* {
  font-synthesis: none !important;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape while allowing user zoom */
}

.screen-reader-text {
  display: none;
}

body {
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  width: 100%;
  height: 100%;
  background-color: #F1EFF2;
  color: #231B29;
  background-color: #231B29;
}
@media (min-width: 1024px) {
  body {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  body {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}

#maincontent {
  width: 100vw;
  padding-top: var(--nav-height);
  overflow-x: clip;
  background-color: #F1EFF2;
}

.header-site + .subnav + #maincontent {
  padding-top: calc(var(--nav-height) + 30px);
}

section, header, footer {
  position: relative;
  z-index: 1;
}

.content {
  width: 100%;
  position: relative;
  max-width: var(--max-width);
  min-width: var(--min-width);
  margin-left: auto;
  margin-right: auto;
}

hr {
  border-bottom: 1px solid #231B29;
  margin-bottom: clamp(30px, 4.1vw, 120px);
  margin-top: clamp(30px, 4.1vw, 120px);
}

.image, figure {
  display: block;
}
.image img, figure img {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}
.image svg, figure svg {
  width: 100%;
  height: auto;
}

.column-size-2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  column-gap: 5%;
}

.noscroll {
  overflow: hidden !important;
}

figure {
  overflow: visible;
  position: relative;
}
figure .image {
  width: 100%;
}
figure.nocaption .image {
  margin-bottom: 0;
}
figure figcaption {
  font-size: 0.9375rem;
  line-height: 1.4;
  white-space: normal;
  margin-top: var(--mb);
  margin-bottom: var(--mb);
}
@media (max-width: 849px) {
  figure figcaption {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
figure figcaption em {
  font-style: normal;
}

.header {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-bottom: clamp(30px, 4.1vw, 120px);
  padding-top: clamp(20px, 5vw, 80px);
  overflow-x: clip;
}
.header .copy > :last-child {
  margin-bottom: 0;
}
.header .copy a:not(.cta):not(.btn):not(.link) {
  color: #672e90;
  text-decoration: underline;
  text-underline-offset: 0.5ch;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s;
}
.header .copy a:not(.cta):not(.btn):not(.link):hover, .header .copy a:not(.cta):not(.btn):not(.link):active {
  color: #672e90;
  text-decoration-color: #672e90;
}
.header .content {
  position: relative;
  z-index: 1;
}
.header video {
  width: 100%;
  height: auto;
}
.header .vimeo-video {
  filter: drop-shadow(0px 0px 34px rgba(0, 0, 0, 0.5));
}
.header .image.covered, .header .image.contained, .header video.covered, .header video.contained, .header .vimeo-video.covered, .header .vimeo-video.contained {
  aspect-ratio: 1.68;
}
.header .section--login-links {
  padding: 0;
}
.header .section--login-links .content {
  padding: 0;
}
.header .section--login-links .pane-nav {
  border: none;
}
.header .section--columns {
  padding: 0;
}
.header .section--columns .columns {
  width: 100%;
}
.header .section--columns .content {
  padding: 0;
}
.header .section--columns .divider {
  display: none;
}
@media (max-width: 849px) {
  .header .image, .header video, .header .vimeo-video, .header .masthead-form {
    margin-top: clamp(30px, 4.1vw, 120px);
  }
  .header .back {
    margin-bottom: 10px;
  }
  .header .section--login-links {
    border-top: 1px solid #4D1F6E;
    border-bottom: 1px solid #4D1F6E;
    padding: calc(1.5 * var(--mb)) 0;
  }
}
@media (min-width: 850px) {
  .header .content {
    display: flex;
    justify-content: space-between;
    gap: 2%;
    flex-wrap: wrap;
  }
  .header .title {
    width: 42%;
  }
  .header .image, .header video, .header .vimeo-video {
    width: 49%;
  }
  .header p {
    width: 80%;
  }
}

.header.media-none .title {
  width: 100%;
}
@media (min-width: 850px) {
  .header.media-none .content {
    display: block;
  }
  .header.media-none .title {
    width: 74.5%;
  }
  .header.media-none .image, .header.media-none video, .header.media-none .vimeo-video {
    display: none;
  }
  .header.media-none .copy {
    width: 100%;
  }
}

@media (min-width: 532px) {
  .header.media-illustration .image {
    margin-top: -3rem;
  }
}
@media (min-width: 850px) {
  .header.media-illustration .title {
    width: 59%;
  }
  .header.media-illustration p {
    width: 68%;
  }
  .header.media-illustration .image {
    width: 62%;
    margin-left: -40%;
    margin-top: calc(2 * var(--mb));
    margin-right: calc(-1 * var(--outer));
    right: 0;
  }
}

@media (min-width: 850px) {
  .header.media-form .masthead-form {
    width: 49%;
    z-index: 1;
  }
}
.header.media-form .wp-block-columns {
  margin-top: calc(2 * var(--mb));
  margin-bottom: calc(2 * var(--mb));
}

.header.media-image.type-standard .image.covered, .header.media-image.type-standard .image.contained, .header.media-image.type-standard video.covered, .header.media-image.type-standard video.contained, .header.media-image.type-standard .vimeo-video.covered, .header.media-image.type-standard .vimeo-video.contained {
  aspect-ratio: 1.68;
}
@media (min-width: 850px) {
  .header.media-image.type-standard .content {
    align-items: flex-start;
  }
}

@media (min-width: 850px) {
  .header.type-deep .image, .header.type-deep video, .header.type-deep .vimeo-video {
    width: 45%;
  }
  .header.type-deep p {
    width: 75%;
  }
}

.header--post .pill {
  background-color: #E5E5E5;
}
.header--post a.pill:hover {
  background-color: #4D1F6E;
  color: #FFFFFF;
}
.header--post .article--meta {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  row-gap: 1.5rem;
}
.header--post .title {
  width: 62%;
}
@media (max-width: 849px) {
  .header--post .article--meta {
    flex-direction: column;
    row-gap: 10px;
  }
}

.header-404 {
  text-align: center;
  padding-bottom: calc(6 * var(--mb));
  min-height: 60vh;
}
.header-404 .content {
  text-align: center;
  display: flex;
  flex-direction: column;
}
.header-404 .content p {
  margin-left: auto;
  margin-right: auto;
}
.header-404 h1 {
  margin-bottom: 0;
  margin-top: calc(2 * var(--mb));
}
.header-404 h3 {
  margin-bottom: calc(0.5 * var(--mb));
}

.header--case {
  padding-bottom: 0;
}

.section--text-image {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--text-image .copy {
  font-weight: normal;
  max-width: var(--rw);
}
.section--text-image .copy a:not(.cta):not(.btn):not(.link) {
  color: #672e90;
  text-decoration: underline;
  text-underline-offset: 0.5ch;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s;
}
.section--text-image .copy a:not(.cta):not(.btn):not(.link):hover, .section--text-image .copy a:not(.cta):not(.btn):not(.link):active {
  color: #672e90;
  text-decoration-color: #672e90;
}
.section--text-image h2 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.625rem, 2.3611111111vw + 0rem, 4.625rem);
  line-height: 1.3;
  margin-bottom: calc(1.5 * var(--mb));
}
@media (min-width: 1920px) {
  .section--text-image h2 {
    font-size: calc(34 / 1440 * 1920px);
  }
}
.section--text-image h2 strong {
  color: #4D1F6E;
}
.section--text-image.bg-card {
  padding-top: clamp(10px, 2vw, 60px);
  padding-bottom: clamp(10px, 2vw, 60px);
}
.section--text-image.bg-card .content {
  filter: drop-shadow(0px 4px 67px rgba(0, 0, 0, 0.5));
  position: relative;
  padding: calc(3 * var(--mb)) calc(3 * var(--mb));
  width: 100%;
  left: 0px;
}
.section--text-image.bg-card .content::after {
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  height: 100%;
  z-index: -1;
  top: 0;
  background-color: #7E8696;
  transition: background-color 0.3s;
  filter: drop-shadow(0px 4px 67px rgba(0, 0, 0, 0.5));
}
.section--text-image .buttons-list {
  padding-top: var(--mb);
}
.section--text-image .image, .section--text-image video, .section--text-image .vimeo-video {
  width: 100%;
}
.section--text-image .image.covered, .section--text-image .image.contained, .section--text-image video.covered, .section--text-image video.contained, .section--text-image .vimeo-video.covered, .section--text-image .vimeo-video.contained {
  aspect-ratio: 1.5;
}
.section--text-image .image.covered img, .section--text-image .image.contained img, .section--text-image video.covered img, .section--text-image video.contained img, .section--text-image .vimeo-video.covered img, .section--text-image .vimeo-video.contained img {
  width: 100%;
  height: 100%;
}
.section--text-image ul {
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.8ch;
  list-style: none;
  text-align: left;
}
.section--text-image ul li {
  display: list-item;
}
.section--text-image ul li::before {
  content: "•";
  position: absolute;
  color: #4D1F6E;
  left: -1.8ch;
}
.section--text-image ul > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
@media (max-width: 849px) {
  .section--text-image .copy {
    padding-bottom: clamp(10px, 2vw, 60px);
  }
}
@media (max-width: 531px) {
  .section--text-image.bg-card .content {
    width: 100%;
    left: -10px;
  }
  .section--text-image.bg-card .content::after {
    width: calc(100% + 20px);
  }
}
@media (min-width: 850px) {
  .section--text-image .content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    left: 0;
    width: 100%;
  }
  .section--text-image .image, .section--text-image video, .section--text-image .vimeo-video {
    width: 45%;
  }
  .section--text-image .copy {
    width: 41%;
  }
  .section--text-image.align-left .content {
    flex-direction: row-reverse;
  }
}
@media (min-width: 850px) {
  .section--text-image.media-none .copy {
    width: 66%;
  }
}

.bg-card + .bg-card {
  padding-top: 0;
}

.section--documents {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(10px, 2vw, 60px);
  padding-bottom: clamp(10px, 2vw, 60px);
}
.section--documents > .content {
  display: flex;
  justify-content: space-between;
}

.document-list-holder {
  position: relative;
}
.document-list-holder.loading {
  pointer-events: none;
}
.document-list-holder.loaded {
  pointer-events: all;
}
.document-list-holder.loaded .library-list {
  animation-duration: 0.3s;
  animation-fill-mode: both;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}
.document-list-holder .library-list {
  display: flex;
  flex-direction: column;
  row-gap: calc(0.5 * var(--mb));
}
.document-list-holder .library-header {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  justify-content: space-between;
  border-bottom: 1px solid #231B29;
  margin-bottom: calc(2 * var(--mb));
  padding-bottom: calc(2 * var(--mb));
}
.document-list-holder .results-text {
  font-size: 0.9375rem;
  line-height: 1.4;
  width: 100%;
}
@media (max-width: 1023px) {
  .document-list-holder .results-text {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.document-list-holder .reset-all {
  font-size: 0.9375rem;
  line-height: 1.4;
  background-color: #FFFFFF;
  color: #4D1F6E;
  border-radius: 20px;
  padding: 0 0.6rem;
  line-height: 1.6;
  display: inline-flex;
  align-items: center;
  line-height: 1.6;
  gap: 0.5ch;
  margin-left: 1ch;
  transition: background-color 0.3s, color 0.3s;
}
@media (max-width: 849px) {
  .document-list-holder .reset-all {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.document-list-holder .reset-all:hover {
  cursor: pointer;
  background-color: #4D1F6E;
  color: #FFFFFF;
}
.document-list-holder .library-footer {
  display: flex;
  justify-content: flex-end;
  border-top: 1px solid #231B29;
  margin-top: calc(2 * var(--mb));
  padding-top: calc(2 * var(--mb));
}
@media (min-width: 850px) {
  .document-list-holder {
    width: 66%;
  }
}
@media (min-width: 1180px) {
  .document-list-holder {
    width: 66%;
  }
}
@media (max-width: 849px) {
  .document-list-holder {
    width: 100%;
  }
}

/*  Filters */
@media (min-width: 850px) {
  .document-filter {
    width: 32%;
    max-width: 350px;
  }
}
@media (min-width: 1500px) {
  .document-filter {
    width: 25.4%;
  }
}

.document-filter .inputs-dates {
  margin-bottom: var(--mb);
}
.document-filter .inputs-dates span {
  display: flex;
  gap: 5px;
}
.document-filter .inputs-dates input[type=radio] {
  display: none;
}
.document-filter .inputs-dates input[type=radio] + label {
  background-color: rgba(241, 239, 242, 0.5);
  text-align: center;
  border-radius: var(--border-radius);
  width: 100%;
  justify-self: stretch;
  line-height: 2;
  transition: background-color 0.3s;
}
.document-filter .inputs-dates input[type=radio] + label:hover {
  background-color: #EAD2FA;
}
.document-filter .inputs-dates input[type=radio]:checked + label {
  background-color: #4D1F6E;
  color: white;
}
.document-filter .inputs-dates input[type=radio]:disabled + label {
  opacity: 0.4;
}
.document-filter .inputs-dates .months {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
}

.document-filter .inputs-categories ul {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.document-filter .inputs-categories li {
  display: flex;
  position: relative;
  gap: 10px;
  align-items: flex-start;
}
.document-filter .inputs-categories label {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  width: 100%;
  padding-left: 3ch;
}
.document-filter .inputs-categories label::before {
  content: "";
  position: absolute;
  left: 0;
  width: 2ch;
  height: 2ch;
  border: 1px solid #E4E2E2;
  background-color: #FFFFFF;
}
.document-filter .inputs-categories label:hover {
  cursor: pointer;
  color: #4D1F6E;
}
.document-filter .inputs-categories label:hover::before {
  border-color: rgba(77, 31, 110, 0.4);
}
.document-filter .inputs-categories input {
  display: none;
}
.document-filter .inputs-categories input:checked + label::before {
  background-image: url(../images/svg/tick-white.svg);
  background-color: #4D1F6E;
  border-color: #4D1F6E;
  background-position: center;
  background-repeat: no-repeat;
}
.document-filter .inputs-categories .document-count {
  font-size: 0.75rem;
  line-height: 1.4;
  align-self: flex-end;
}

.document-filter .inputs-sources ul {
  display: flex;
  flex-direction: column;
  padding-bottom: calc(0.5 * var(--mb));
}
.document-filter .inputs-sources li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.document-filter .inputs-sources input {
  display: none;
}
.document-filter .inputs-sources input + label {
  width: 100%;
  padding: 0.4rem var(--mb);
  background-position: top 0.2rem left calc(0.5 * var(--mb));
  background-repeat: no-repeat;
  background-size: 2.5ch;
}
.document-filter .inputs-sources input + label:hover {
  cursor: pointer;
  background-color: rgba(234, 210, 250, 0.4);
}
.document-filter .inputs-sources input:checked + label {
  color: #4D1F6E;
  background-image: url(../images/svg/tick.svg);
  text-indent: calc(2 * var(--mb));
}

.document-pagination .page-numbers:not(.next, .prev) {
  border-bottom: 1px solid transparent;
  color: #4D1F6E;
  padding: 0 0.3rem;
}
.document-pagination .page-numbers:not(.next, .prev).current {
  color: #231B29;
  border-color: #231B29;
}
.document-pagination .page-numbers:not(.next, .prev) .dots {
  pointer-events: none;
}

.filter-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  border-top: 1px solid #231B29;
  padding: var(--mb) 0;
  margin-top: calc(2 * var(--mb));
}
.filter-title a {
  font-size: 0.9375rem;
  line-height: 1.4;
  color: #4D1F6E;
}
@media (max-width: 849px) {
  .filter-title a {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.filter-title a:hover {
  text-decoration: underline;
  cursor: pointer;
}

.filter-dropdown {
  position: relative;
}
.filter-dropdown .dropdown-toggle {
  position: relative;
  background-color: white;
  padding: 0 var(--mb);
  line-height: var(--form-line-height);
}
.filter-dropdown .dropdown-toggle::after {
  content: "";
  pointer-events: none;
  aspect-ratio: 1;
  height: 100%;
  position: absolute;
  transform-origin: center;
  background-image: url(../images/svg/arrow-down.svg);
  background-repeat: no-repeat;
  background-position: center;
  right: 0;
  top: 0;
}
.filter-dropdown .dropdown-toggle:hover {
  cursor: pointer;
  color: #4D1F6E;
}
.filter-dropdown .dropdown-toggle.visible::after {
  transform: rotate(180deg);
}
.filter-dropdown .dropdown-toggle.visible + .dropdown-menu {
  opacity: 1;
  pointer-events: all;
  transform: translateY(0px);
  transition: opacity 0.2s, transform 0.2s;
}
.filter-dropdown .dropdown-menu {
  position: absolute;
  background-color: white;
  z-index: 10;
  width: 100%;
  border-top: 1px solid #F1EFF2;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-10px);
}
.filter-dropdown .cross {
  color: #4D1F6E;
  font-weight: bold;
}

.selected-filter {
  display: none;
  position: absolute;
  background-color: #F1EFF2;
  border-radius: calc(2 * var(--mb));
  padding: calc(0.5 * var(--mb)) var(--mb);
  top: 50%;
  transform: translateY(-50%);
  left: calc(0.5 * var(--mb));
  z-index: 2;
}
.selected-filter.selected {
  display: flex;
  align-items: center;
  gap: calc(0.5 * var(--mb));
  transition: background-color 0.3s;
  font-size: 0.9375rem;
  line-height: 1.4;
  z-index: 4;
}
@media (max-width: 849px) {
  .selected-filter.selected {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.selected-filter.selected:hover {
  cursor: pointer;
  background-color: #EAD2FA;
}
.selected-filter.selected + .dropdown-toggle {
  color: white;
}
.selected-filter.selected + .dropdown-toggle span {
  visibility: hidden;
}

.filter-dates .dropdown-toggle {
  display: flex;
  align-items: center;
  text-indent: 2.8ch;
}
.filter-dates .dropdown-toggle svg {
  width: 2ch;
  position: absolute;
  margin-bottom: 0.3ch;
  height: auto;
}
.filter-dates .dropdown-menu {
  padding: calc(0.5 * var(--mb));
}
.filter-dates .year-holder {
  display: none;
  flex-direction: column;
  row-gap: 5px;
}
.filter-dates .year-active {
  display: flex;
}
.filter-dates .year {
  display: flex;
}
.filter-dates .year button {
  appearance: none;
  border: none;
  width: 17%;
  background-color: rgba(241, 239, 242, 0.5);
}
.filter-dates .year button:disabled {
  opacity: 0.6;
}
.filter-dates .year button:hover:not(:disabled) {
  background-color: #EAD2FA;
  cursor: pointer;
}

.document-search {
  padding-bottom: calc(2 * var(--mb));
  display: flex;
  align-items: flex-end;
}
.document-search .search-inputs {
  position: relative;
  width: 100%;
}
.document-search .selected-search.selected + input {
  pointer-events: none;
  background-color: white;
}
.document-search .search-submit {
  position: absolute;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  aspect-ratio: 1;
  height: 100%;
  background-color: #FFFFFF;
  font-size: 0;
  color: transparent;
  background-image: url(../images/svg/mag.svg);
  background-repeat: no-repeat;
  background-position: center;
  right: 0;
}
.document-search .search-submit:hover {
  cursor: pointer;
  background-color: #EAD2FA;
}
.document-search .search-field {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  width: calc(100% - 45px);
  padding: 0 var(--mb);
  z-index: 2;
  position: relative;
  line-height: var(--form-line-height);
  background-color: #FFFFFF;
  border-radius: 0;
}
@media (max-width: 849px) {
  .document-search {
    padding-bottom: var(--mb);
  }
}

.document-search, .library-header {
  height: calc(7 * var(--mb));
}

.form-wrapper .filter-title:first-of-type {
  margin-top: 0;
}

.header + .section--documents::before {
  display: none;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#form-response .loader {
  width: 36px;
  height: 36px;
  left: calc(50% - 18px);
  margin-top: calc(5 * var(--mb));
  position: absolute;
  border: 5px solid #4D1F6E;
  border-bottom-color: transparent;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
  z-index: -1;
}

#form-response.loading .loader {
  opacity: 1;
}
#form-response.loading .library-list {
  opacity: 0;
}

@media (min-width: 850px) {
  .mobile-search-filter,
  .close-mobile-filter-button,
  .mobile-filter-button {
    display: none;
  }
}

@media (max-width: 849px) {
  .section--documents .content {
    flex-direction: column;
  }
  .mobile-filter-button {
    background-color: #FFFFFF;
    display: flex;
    height: var(--form-line-height);
    line-height: var(--form-line-height);
    padding: 0 45px;
    background-image: url(../images/svg/filters.svg);
    background-repeat: no-repeat;
    background-position: 12px center;
  }
  .form-wrapper .close-mobile-filter-button {
    color: #231B29;
    background-color: #84F0C9;
    position: relative;
    display: inline-block;
    padding: 0.6rem clamp(20px, 1.6vw, 25px);
    min-width: clamp(120px, 12vw, 200px);
    text-align: center;
    z-index: 1;
    font-weight: bold;
    border-radius: 20px;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;
    border: 1px solid #231B29;
    white-space: nowrap;
    filter: drop-shadow(1px 1px 0px #231B29);
    position: absolute;
    right: 20px;
    top: var(--mb);
  }
  .form-wrapper .close-mobile-filter-button svg * {
    fill: #231B29;
    stroke: #231B29;
    transition: fill 0.3s, stroke 0.3s;
  }
  .form-wrapper .close-mobile-filter-button:hover:not(:disabled), .form-wrapper .close-mobile-filter-button:active:not(:disabled) {
    color: #231B29;
    background-color: #EAD2FA;
    border-color: #231B29;
  }
  .form-wrapper .close-mobile-filter-button:hover:not(:disabled) svg *, .form-wrapper .close-mobile-filter-button:active:not(:disabled) svg * {
    fill: #231B29;
    stroke: #231B29;
  }
}
@media (max-width: 849px) and (max-width: 531px) {
  .form-wrapper .close-mobile-filter-button {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}
@media (max-width: 849px) {
  .form-wrapper .close-mobile-filter-button .cross {
    display: inline-flex;
    font-size: 150%;
    line-height: 1;
  }
  .form-wrapper {
    padding: 60px 20px 80px;
    background-color: #F1EFF2;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
  .library-header {
    margin-top: calc(2 * var(--mb));
    height: auto;
  }
  .library-header .results-text {
    padding-bottom: calc(0.5 * var(--mb));
  }
  .library-header .reset-all {
    line-height: 1.8;
  }
  #form-response.loading .loader {
    opacity: 1;
  }
  #form-response.loading .library-list {
    opacity: 0;
  }
  .mobile-modal {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0%;
    padding: var(--mb) 10px 90px;
    background-color: rgba(0, 0, 0, 0.8);
    overflow: hidden;
    z-index: -1;
    opacity: 0;
    pointer-events: none;
    height: 0;
  }
  .show-mobile-filters {
    overflow: hidden;
  }
  .show-mobile-filters .section--documents::after {
    display: none;
    content: "";
    z-index: 1;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    animation-duration: 0.3s;
    animation-fill-mode: both;
    animation-delay: 0s;
    animation-timing-function: linear;
    animation-name: fade-in-ks;
  }
  .show-mobile-filters #maincontent {
    position: relative;
    z-index: 302;
    overflow: hidden;
  }
  .show-mobile-filters .mobile-modal {
    opacity: 1;
    pointer-events: all;
    height: 100dvh;
    z-index: 303;
    overflow: scroll;
    animation-duration: 0.3s;
    animation-fill-mode: both;
    animation-delay: 0s;
    animation-timing-function: linear;
    animation-name: fade-in-ks;
  }
  .show-mobile-filters .form-wrapper {
    opacity: 0;
    animation-duration: 0.3s;
    animation-fill-mode: both;
    animation-delay: 0s;
    animation-timing-function: ease;
    animation-name: fade-in-up-ks;
  }
  .show-mobile-filters .submit-mobile-filters-buttons {
    display: block;
  }
}
.submit-mobile-filters-buttons {
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
  position: fixed;
  z-index: 304;
  bottom: 0px;
  left: 0%;
  background-color: white;
  padding: 20px;
  width: 100%;
  display: none;
}
.submit-mobile-filters-buttons .close-mobile-filter-button {
  display: block;
  text-align: center;
  width: 100%;
  line-height: 2;
}
.submit-mobile-filters-buttons .close-mobile-filter-button:hover, .submit-mobile-filters-buttons .close-mobile-filter-button:active {
  background-color: #F1EFF2;
  cursor: pointer;
}

#submit-mobile-filters {
  color: #FFFFFF;
  background-color: #4D1F6E;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
  width: 100%;
}
#submit-mobile-filters svg * {
  fill: #FFFFFF;
  stroke: #FFFFFF;
  transition: fill 0.3s, stroke 0.3s;
}
#submit-mobile-filters:hover:not(:disabled), #submit-mobile-filters:active:not(:disabled) {
  color: #FFFFFF;
  background-color: #231B29;
  border-color: #231B29;
}
#submit-mobile-filters:hover:not(:disabled) svg *, #submit-mobile-filters:active:not(:disabled) svg * {
  fill: #FFFFFF;
  stroke: #FFFFFF;
}
@media (max-width: 531px) {
  #submit-mobile-filters {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}
#submit-mobile-filters:hover, #submit-mobile-filters:active {
  cursor: pointer;
}

.archive-form {
  display: none;
}
@media (max-width: 849px) {
  .archive-form#mobile-archive-form {
    display: block;
  }
  .archive-form#mobile-archive-form .filter-title {
    border-top: none;
  }
}
@media (min-width: 850px) {
  .archive-form#desktop-archive-form {
    display: block;
  }
}

.entry--library {
  background-color: white;
  padding: var(--mb);
  overflow: hidden;
}
.entry--library h4 {
  margin-bottom: calc(1.5 * var(--mb));
  width: 100%;
}
.entry--library .content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.entry--library .document-meta {
  font-size: 0.75rem;
  line-height: 1.4;
  width: 100%;
  display: flex;
  margin-bottom: calc(0.5 * var(--mb));
}
.entry--library .view-files-button {
  display: inline-flex;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: #FFFFFF;
  color: #4D1F6E;
  text-align: right;
  position: relative;
  align-items: center;
  padding-right: 1.5rem;
}
.entry--library .view-files-button::after {
  content: "";
  position: absolute;
  height: 100%;
  aspect-ratio: 1;
  background-image: url(../images/svg/arrow-down-purple.svg);
  right: 0;
  background-size: 50% auto;
  background-position: center;
  background-repeat: no-repeat;
}
.entry--library .view-files-button::before {
  content: "View documents";
}
.entry--library .view-files-button:hover {
  cursor: pointer;
  opacity: 0.7;
}
.entry--library .meta-year {
  min-width: 12%;
  color: #7E8696;
}
.entry--library .meta-source {
  min-width: 14%;
  font-weight: bold;
}
.entry--library .meta-count {
  margin-left: auto;
}
@media (max-width: 849px) {
  .entry--library .view-files-button {
    border-top: 1px solid rgba(35, 27, 41, 0.2);
    padding-top: calc(0.5 * var(--mb));
    margin-top: calc(2 * var(--mb));
    justify-content: center;
  }
  .entry--library .view-files-button::after {
    position: relative;
    right: auto;
    height: 20px;
  }
}
@media (min-width: 1024px) {
  .entry--library {
    padding: calc(1.5 * var(--mb)) calc(3 * var(--mb));
  }
  .entry--library .meta-year {
    min-width: 5%;
    width: clamp(50px, 5%, 300px);
    color: #7E8696;
  }
  .entry--library .meta-source {
    width: 14%;
    font-weight: bold;
  }
  .entry--library .meta-count {
    margin-left: 0;
  }
}

.list-files {
  display: flex;
  flex-direction: column;
  row-gap: calc(0.5 * var(--mb));
  overflow: hidden;
  transition: height 0.3s ease-out, opacity 0.2s 0s;
  opacity: 0;
  height: 0px;
  pointer-events: none;
  width: 100%;
}
.list-files li {
  display: grid;
  width: 100%;
  grid-template-columns: 1fr 16fr 3fr 3fr 3fr;
  align-items: center;
  font-size: 0.9375rem;
  line-height: 1.4;
  border-bottom: 1px solid #F1EFF2;
  padding-bottom: calc(0.5 * var(--mb));
  padding-top: calc(0.5 * var(--mb));
}
@media (max-width: 849px) {
  .list-files li {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.list-files li:last-child {
  border-bottom: none;
}
.list-files li:first-child {
  margin-top: calc(3 * var(--mb));
}
.list-files .filename {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: calc(2 * var(--mb));
}
.list-files .file-meta {
  font-size: 0.75rem;
  line-height: 1.4;
  line-height: 1.9;
}
.list-files .icon {
  background-position: center;
  background-size: auto 100%;
  background-repeat: no-repeat;
  height: 3ch;
  width: 2.8ch;
  display: inline-block;
  background-image: url(../images/svg/download-icons/generic.svg);
}
.list-files .icon.icon-pdf {
  background-image: url(../images/svg/download-icons/pdf.svg);
}
.list-files .icon.icon-mp4 {
  background-image: url(../images/svg/download-icons/video.svg);
}
.list-files .icon.icon-docx {
  background-image: url(../images/svg/download-icons/word.svg);
}
.list-files .icon.icon-doc {
  background-image: url(../images/svg/download-icons/word.svg);
}
.list-files .file-action {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: #4D1F6E;
  color: #FFFFFF;
  border-radius: var(--border-radius);
  font-size: 0.75rem;
  line-height: 1.4;
  line-height: 2.1;
  padding: 0;
  display: flex;
  align-items: center;
  justify-self: flex-end;
  justify-content: flex-end;
  padding: 0rem 0.5rem 0 0.5rem;
  min-width: 95px;
  position: relative;
  transition: background-color 0.2s, color 0.2s;
}
.list-files .file-action::before {
  content: "";
  height: 100%;
  aspect-ratio: 1;
  display: inline-block;
  position: absolute;
  aspect-ratio: 1;
  background-image: url(../images/svg/download-circle.svg);
  left: 0;
  background-size: 60% auto;
  background-position: center;
  background-repeat: no-repeat;
}
.list-files .file-action:hover {
  cursor: pointer;
  background-color: rgba(77, 31, 110, 0.7);
}
.list-files .file-action.watch-video::before {
  background-image: url(../images/svg/video-circle.svg);
}
@media (max-width: 531px) {
  .list-files li {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
  }
  .list-files li .filename {
    width: calc(100% - 3ch);
  }
  .list-files li .file-meta {
    padding-right: 10px;
    min-width: 40px;
  }
  .list-files li .file-action {
    margin-left: auto;
  }
}

.entry--library.open .view-files-button::before {
  content: "Close documents";
}
.entry--library.open .view-files-button::after {
  background-image: url(../images/svg/cross-purple.svg);
  background-size: 40% auto;
}
.entry--library.open .list-files {
  opacity: 1;
  transition: height 0.3s ease-out, opacity 0.5s 0.1s;
  pointer-events: all;
}

.section--columns {
  padding-top: clamp(15px, 3.5vw, 80px);
  padding-bottom: clamp(15px, 3.5vw, 80px);
  padding-left: var(--outer);
  padding-right: var(--outer);
  min-height: 100px;
}
.section--columns .content {
  display: flex;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
}
.section--columns h3 {
  margin-bottom: calc(3 * var(--mb));
}
.section--columns .columns {
  display: flex;
  flex-direction: column;
  row-gap: var(--mb);
}
.section--columns .columns .btn:last-child() {
  justify-self: flex-end;
}
.section--columns .column {
  padding: calc(3 * var(--mb));
  border-radius: var(--border-radius-belonging);
  width: 100%;
}
.section--columns .column .image, .section--columns .column video, .section--columns .column .vimeo-video {
  width: 100%;
  margin-bottom: var(--mb);
  border-radius: calc(1.5 * var(--mb));
  overflow: hidden;
}
.section--columns .column .image.covered, .section--columns .column .image.contained, .section--columns .column video.covered, .section--columns .column video.contained, .section--columns .column .vimeo-video.covered, .section--columns .column .vimeo-video.contained {
  aspect-ratio: 1.78;
}
.section--columns .column .image.covered img, .section--columns .column .image.contained img, .section--columns .column video.covered img, .section--columns .column video.contained img, .section--columns .column .vimeo-video.covered img, .section--columns .column .vimeo-video.contained img {
  width: 100%;
  height: 100%;
}
.section--columns .wp-block-liiba-genericbutton {
  margin-top: calc(2 * var(--mb));
}
.section--columns .bg-lilac {
  background-color: #EAD8F6;
}
.section--columns .bg-blue {
  background-color: #D8E9F6;
}
.section--columns.num-3 h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
}
@media (min-width: 1920px) {
  .section--columns.num-3 h3 {
    font-size: calc(24 / 1440 * 1920px);
  }
}
@media (max-width: 849px) {
  .section--columns .column {
    display: block;
  }
}
@media (max-width: 531px) {
  .section--columns .btn {
    width: 100%;
  }
}
@media (min-width: 850px) {
  .section--columns h2 {
    width: 66%;
  }
  .section--columns .columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1%;
    row-gap: var(--mb);
  }
  .section--columns .divider {
    display: none;
  }
  .section--columns.num-3 .columns {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .section--columns.num-4 .columns {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.entry--post {
  position: relative;
  display: flex;
  flex-direction: column;
}
.entry--post a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  font-size: 0;
}
.entry--post a:hover + .post-source + h3, .entry--post a:active + .post-source + h3 {
  color: #4D1F6E;
}
.entry--post .post-source {
  color: #4D1F6E;
  font-size: 0.75rem;
  line-height: 1.4;
  display: block;
  background-repeat: no-repeat;
  background-position: center right;
  background-size: auto 100%;
}
.entry--post.external .post-source {
  background-image: url(../images/svg/external-link.svg);
}
.entry--post .read-more {
  color: #4D1F6E;
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 849px) {
  .entry--post .read-more {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.entry--post .date {
  font-size: 0.75rem;
  line-height: 1.4;
  margin-bottom: var(--mb);
  display: block;
}
.entry--post .image {
  overflow: hidden;
  position: relative;
}
.entry--post .image img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  top: 0%;
  left: 0%;
}
.entry--post .image:after {
  content: "";
  display: block;
  padding-top: 66%;
  width: 0;
  float: left;
  position: relative;
}
.entry--post h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
  margin-bottom: calc(0.5 * var(--mb));
}
@media (min-width: 1920px) {
  .entry--post h3 {
    font-size: calc(24 / 1440 * 1920px);
  }
}
.entry--post .copy {
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 1023px) {
  .entry--post .copy {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.entry--post .category-list {
  margin-bottom: var(--mb);
}
.entry--post .category-list .pill {
  font-size: 0.75rem;
  line-height: 1.4;
  line-height: 2;
}
.entry--post .btn--tertiary {
  margin-top: auto;
  width: 100%;
}

.entry--post-large {
  background-color: #FFFFFF;
  padding: calc(2 * var(--mb));
  justify-content: space-between;
}
.entry--post-large h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(2rem, 3.2638888889vw + 0rem, 6.5rem);
  line-height: 1.1;
  margin-bottom: calc(2 * var(--mb));
  margin-bottom: calc(4 * var(--mb));
}
@media (min-width: 1920px) {
  .entry--post-large h3 {
    font-size: calc(47 / 1440 * 1920px);
  }
}
.entry--post-large .copy {
  max-width: 400px;
  padding-bottom: var(--mb);
}
.entry--post-large .post-details {
  display: flex;
}
.entry--post-large .post-details:has(.image) {
  justify-content: flex-start;
  gap: 2%;
}
.entry--post-large .post-details:has(.image) .image {
  width: 48%;
  aspect-ratio: 1.5;
}
.entry--post-large .post-details:has(.image) .copy {
  width: 48%;
}
@media (max-width: 850px) {
  .entry--post-large .post-details {
    flex-direction: column;
  }
  .entry--post-large .post-details:has(.image) {
    justify-content: space-between;
  }
  .entry--post-large .post-details:has(.image) .image {
    width: 100%;
    aspect-ratio: 1.5;
  }
  .entry--post-large .post-details:has(.image) .copy {
    width: 100%;
    padding-bottom: 0;
  }
}

.entry--post-card {
  background-color: #FFFFFF;
  padding: calc(2 * var(--mb));
  justify-content: space-between;
}
.entry--post-card h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
  padding-bottom: calc(0.5 * var(--mb));
  margin-bottom: var(--mb);
  min-height: 10ch;
  transition: color 0.3s;
}
@media (min-width: 1920px) {
  .entry--post-card h3 {
    font-size: calc(24 / 1440 * 1920px);
  }
}
.entry--post-card .post-source {
  margin-bottom: var(--mb);
}
.entry--post-card .copy {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.entry--post-card .read-more {
  margin-top: auto;
  text-decoration: underline;
  text-underline-offset: 0.5ch;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s;
}
.entry--post-card .read-more:hover, .entry--post-card .read-more:active {
  color: #4D1F6E;
  text-decoration-color: #4D1F6E;
}
.entry--post-card:hover .read-more {
  text-decoration-color: #4D1F6E;
}
.entry--post-card:hover h3 {
  color: #4D1F6E;
}

.section--articles {
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
  padding-left: var(--outer);
  padding-right: var(--outer);
}
.section--articles .list-cards {
  display: grid;
  gap: var(--mb) 1.4%;
  grid-template-columns: repeat(1, 1fr);
}
.section--articles .entry--post {
  width: 100%;
}
@media (min-width: 532px) {
  .section--articles .list-cards {
    display: grid;
    gap: var(--mb) 1.4%;
    grid-template-columns: repeat(1, 1fr);
  }
}
@media (min-width: 850px) {
  .section--articles .list-cards {
    display: grid;
    gap: var(--mb) 1.4%;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1180px) {
  .section--articles .list-cards {
    display: grid;
    gap: var(--mb) 1.4%;
    grid-template-columns: repeat(4, 1fr);
  }
}

.section--articles:has(.list-posts) {
  padding-left: 0;
  padding-right: 0;
}
.section--articles:has(.list-posts) .section-title {
  padding: 0 var(--outer);
}
.section--articles:has(.list-posts) .content {
  width: 100%;
  margin: 0;
  max-width: inherit;
}
.section--articles:has(.list-posts) .list-posts {
  padding-left: var(--outer);
  scroll-padding: var(--outer);
  overflow: visible;
  overflow-x: scroll;
  scrollbar-width: none; /* For Firefox */
  scroll-snap-type: x mandatory;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  width: inherit;
}
.section--articles:has(.list-posts) .list-posts::-webkit-scrollbar {
  display: none; /* For Chrome, Safari, and Opera */
}
.section--articles:has(.list-posts) .list-posts .post-title {
  white-space: normal;
}
.section--articles:has(.list-posts) .list-posts .posts {
  display: flex;
  width: max-content;
  gap: clamp(5px, 1.5vw, 30px);
}
.section--articles:has(.list-posts) .list-posts .entry--post {
  width: 260px;
  white-space: wrap;
  scroll-snap-align: start;
}
.section--articles:has(.list-posts) .list-posts .entry--post:last-of-type {
  margin-right: var(--outer);
}
@media (min-width: 532px) {
  .section--articles:has(.list-posts) .list-posts .entry--post {
    width: clamp(260px, 50vw, 300px);
  }
}
@media (min-width: 850px) {
  .section--articles:has(.list-posts) .list-posts .entry--post {
    width: clamp(300px, 29.5vw, 300px);
  }
}
@media (min-width: 1180px) {
  .section--articles:has(.list-posts) .list-posts .entry--post {
    width: clamp(300px, 21vw, 402px);
  }
}
@media (min-width: 1920px) {
  .section--articles:has(.list-posts) .section-title {
    max-width: var(--max-width);
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
  .section--articles:has(.list-posts) .list-posts {
    padding-left: calc(50vw - 0.5 * var(--max-width));
    scroll-padding: calc(50vw - 0.5 * var(--max-width));
  }
}

.articles-pagination {
  display: flex;
  width: 100%;
  justify-content: flex-end;
  border-top: 1px solid #231B29;
  margin-top: calc(3 * var(--mb));
  padding-top: calc(2 * var(--mb));
}

.section--category-latest {
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
  padding-left: var(--outer);
  padding-right: var(--outer);
}
@media (max-width: 850px) {
  .section--category-latest .entry--post-large {
    width: calc(100% + 20px);
    margin-left: -10px;
    display: flex;
    flex-direction: column;
    margin-bottom: var(--mb);
    aspect-ratio: 2;
  }
  .section--category-latest .entry--post-large .image {
    margin-bottom: var(--mb);
  }
  .section--category-latest .entry--post:last-of-type + hr {
    display: none;
  }
}
@media (max-width: 532px) {
  .section--category-latest {
    padding: var(--mb) var(--outer);
  }
  .section--category-latest .news-cards {
    padding-top: calc(2 * var(--mb));
    padding-bottom: calc(4 * var(--mb));
  }
  .section--category-latest .news-cards .entry--post:nth-child(3) {
    display: flex;
  }
  .section--category-latest hr {
    margin-bottom: var(--mb);
    margin-top: var(--mb);
  }
  .section--category-latest .entry--post-large h3 {
    margin-bottom: var(--mb);
    line-height: 1.1;
  }
  .section--category-latest .entry--post-large .excerpt {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
@media (min-width: 850px) {
  .section--category-latest hr {
    margin-bottom: calc(2 * var(--mb));
    margin-top: calc(2 * var(--mb));
  }
  .section--category-latest .category-block {
    display: flex;
    justify-content: space-between;
  }
  .section--category-latest .lead-post {
    width: 57.5%;
  }
  .section--category-latest .news-cards {
    width: 38%;
  }
  .section--category-latest .news-cards hr:last-of-type {
    display: none;
  }
  .section--category-latest .entry--post-large {
    justify-content: flex-start;
  }
}

.section--filters {
  z-index: 3;
  padding-bottom: calc(3 * var(--mb));
  background-color: transparent;
  padding-left: var(--outer);
  padding-right: var(--outer);
}
.section--filters::before {
  display: none;
}
.section--filters .toggle {
  background-color: #FFFFFF;
  font-size: 0.9375rem;
  line-height: 1.4;
  line-height: var(--form-line-height);
  display: inline-flex;
  align-items: center;
  padding: 0 calc(2 * var(--mb)) 0 calc(1.5 * var(--mb));
  min-width: 14vw;
}
@media (max-width: 1023px) {
  .section--filters .toggle {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
@media (max-width: 1023px) {
  .section--filters .toggle {
    line-height: var(--form-line-height);
  }
}
.section--filters .toggle svg {
  width: 1.2ch;
  height: auto;
  margin-right: 1.6ch;
}
.section--filters .toggle svg * {
  fill: #231B29;
  transition: fill 0.3s;
}
.section--filters .toggle:hover {
  background-color: #4D1F6E;
  color: white;
}
.section--filters .toggle:hover svg * {
  fill: white;
}
.section--filters .toggle:focus, .section--filters .toggle:active {
  background-color: #4D1F6E;
  color: white;
}
.section--filters .toggle:focus svg *, .section--filters .toggle:active svg * {
  fill: white;
}
.section--filters .toggle:focus + .list-categories, .section--filters .toggle:active + .list-categories {
  opacity: 1;
  pointer-events: all;
  transform: translateY(5px);
  transition: pointer-events 0.3s 0s, transform 0s 0s;
}
.section--filters .post-categories {
  position: relative;
  z-index: 3;
}
.section--filters .list-categories {
  position: absolute;
  background-color: white;
  columns: 2;
  column-gap: 5%;
  transform: translate(0px, -100vw);
  transition: opacity 0.3s;
  padding: calc(2 * var(--mb));
  height: auto;
  opacity: 0;
  z-index: -1;
  transition: pointer-events 0.3s 0.1s, transform 0s 0.3s;
  filter: drop-shadow(0px 2px 12px rgba(0, 0, 0, 0.16));
}
.section--filters .list-categories li {
  width: 14vw;
  min-width: 200px;
}
.section--filters .list-categories a {
  display: block;
  font-size: 0.9375rem;
  line-height: 1.4;
  font-weight: normal;
  padding: 1ch 0;
}
@media (max-width: 1023px) {
  .section--filters .list-categories a {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--filters .list-categories a:hover, .section--filters .list-categories a a:active {
  color: #4D1F6E;
}
.section--filters .search-form {
  width: 100%;
}
.section--filters .search-box {
  display: flex;
  align-items: flex-end;
}
.section--filters .search-box .search-inputs {
  position: relative;
  width: 100%;
}
.section--filters .search-box .search-submit {
  position: absolute;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  aspect-ratio: 1;
  height: 100%;
  background-color: #FFFFFF;
  font-size: 0;
  color: transparent;
  background-image: url(../images/svg/mag.svg);
  background-repeat: no-repeat;
  background-position: center;
  right: 0;
}
.section--filters .search-box .search-submit:hover {
  cursor: pointer;
  background-color: #EAD2FA;
}
.section--filters .search-box .search-field {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  width: calc(100% - 2.8rem);
  padding: 0 var(--mb);
  z-index: 2;
  line-height: var(--form-line-height);
  position: relative;
  background-color: #FFFFFF;
  border-radius: 0;
}
.section--filters .content {
  display: flex;
  gap: 1%;
}
@media (max-width: 849px) {
  .section--filters .list-categories li {
    min-width: 37.5vw;
  }
  .section--filters .list-categories::before {
    left: 18%;
  }
  .section--filters .content .post-categories {
    width: 34.5%;
  }
  .section--filters .content .post-categories a {
    width: 100%;
  }
  .section--filters .content .search-box {
    width: 64.5%;
  }
}
@media (max-width: 531px) {
  .section--filters .content {
    flex-direction: column;
    row-gap: 5px;
  }
  .section--filters .content .post-categories {
    width: 100%;
  }
  .section--filters .content .post-categories a {
    width: 100%;
  }
  .section--filters .content .search-box {
    width: 100%;
  }
  .section--filters .list-categories {
    width: 100%;
  }
}
@media (min-width: 850px) {
  .section--filters .content {
    display: flex;
    gap: min(8px, 1%);
  }
  .section--filters .search-box {
    width: 30%;
    min-width: 330px;
  }
}

.touch .section--filters .toggle:hover + .list-categories {
  opacity: 1;
  pointer-events: all;
  transform: translateY(5px);
  transition: pointer-events 0.3s 0s, transform 0s 0s;
}

.section--article {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--article .wp-block-post-content > p, .section--article .wp-block-post-content > ul, .section--article .wp-block-post-content > ol, .section--article .wp-block-post-content > h1, .section--article .wp-block-post-content > h2, .section--article .wp-block-post-content > h3, .section--article .wp-block-post-content > h4, .section--article .wp-block-post-content > h5, .section--article .wp-block-post-content > h6, .section--article .wp-block-post-content > blockquote, .section--article .wp-block-post-content > .wpcf7, .section--article .wp-block-post-content > hr, .section--article .wp-block-post-content > section {
  max-width: var(--rw);
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.section--article .wp-block-post-content > ul {
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.8ch;
  list-style: none;
  text-align: left;
  max-width: var(--rw);
}
.section--article .wp-block-post-content > ul li {
  display: list-item;
}
.section--article .wp-block-post-content > ul li::before {
  content: "•";
  position: absolute;
  color: #4D1F6E;
  left: -1.8ch;
}
.section--article .wp-block-post-content > ul > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
.section--article .wp-block-post-content > h1 {
  margin-bottom: calc(2 * var(--mb));
}
.section--article .wp-block-post-content > p a:not(.cta):not(.btn):not(.link) {
  color: #672e90;
  text-decoration: underline;
  text-underline-offset: 0.5ch;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s;
}
.section--article .wp-block-post-content > p a:not(.cta):not(.btn):not(.link):hover, .section--article .wp-block-post-content > p a:not(.cta):not(.btn):not(.link):active {
  color: #672e90;
  text-decoration-color: #672e90;
}
.section--article .wp-block-post-content hr {
  color: #7E8696;
  height: 0;
  border-top: 1px solid #231B29;
}
.section--article .wp-block-post-content > blockquote::before {
  left: 0;
}
.section--article .wp-block-post-content > ol {
  counter-reset: item;
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.5ch;
  list-style: none;
  text-align: left;
}
.section--article .wp-block-post-content > ol li {
  display: list-item;
}
.section--article .wp-block-post-content > ol > li::before {
  content: counters(item, ".") ". ";
  counter-increment: item;
  position: absolute;
  left: -1.5ch;
}
.section--article .wp-block-post-content > ol > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
.section--article .wp-block-post-content > ol > li > ol li {
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  text-align: left;
  text-transform: none;
  font-weight: normal;
  margin-top: 0;
}
@media (min-width: 1024px) {
  .section--article .wp-block-post-content > ol > li > ol li {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .section--article .wp-block-post-content > ol > li > ol li {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
.section--article .wp-block-post-content > ol > li > ol > li > ol > li {
  padding-left: 1.5ch;
}
.section--article .wp-block-post-content img {
  max-width: 100%;
}
.section--article .wp-block-post-content > .buttons-list {
  justify-content: center;
}
.section--article .wp-block-post-content p + .wp-block-group {
  margin-top: calc(2 * var(--mb));
}
.section--promo {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
  padding-top: 0;
  padding-bottom: 0;
}
.section--promo::before {
  display: none;
}
.section--promo + section::before {
  display: none;
}
.section--promo .content {
  position: relative;
  min-height: 28vw;
  width: 100%;
  left: 0px;
  background-color: white;
}
.section--promo .content::after {
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  height: 100%;
  z-index: 1;
  top: 0;
}
.section--promo .copy {
  font-weight: normal;
  z-index: 3;
  position: relative;
  padding: calc(3 * var(--mb)) calc(3 * var(--mb)) clamp(10px, 2vw, 60px) calc(4 * var(--mb));
}
.section--promo .buttons-list {
  padding-top: var(--mb);
}
.section--promo .image {
  width: 60%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 40%;
}
.section--promo .image img {
  width: 100%;
  height: 100%;
}
.section--promo ul {
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.8ch;
  list-style: none;
  text-align: left;
}
.section--promo ul li {
  display: list-item;
}
.section--promo ul li::before {
  content: "•";
  position: absolute;
  color: #4D1F6E;
  left: -1.8ch;
}
.section--promo ul > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
@media (max-width: 849px) {
  .section--promo .content {
    padding: 0;
  }
  .section--promo .copy {
    padding-bottom: calc(4 * var(--mb));
  }
  .section--promo .image {
    position: relative;
    width: 100%;
    left: 0;
    aspect-ratio: 1.5;
  }
}
@media (min-width: 850px) {
  .section--promo .content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    left: 0;
    width: 100%;
  }
  .section--promo .copy {
    width: 41%;
  }
  .section--promo.align-left .content {
    flex-direction: row-reverse;
  }
  .section--promo.align-left .image {
    left: auto;
    right: 40%;
  }
}
.section--promo.bg-white .content {
  background-color: #FFFFFF;
}
.section--promo.bg-white .content::after {
  background: linear-gradient(90deg, #FFFFFF 40%, rgba(255, 255, 255, 0) 100%);
}
.section--promo.bg-white .content h2 {
  color: #4D1F6E;
}

.section--promo.bg-purple .content {
  background-color: #4D1F6E;
}
.section--promo.bg-purple .content::after {
  background: linear-gradient(90deg, #4D1F6E 40%, rgba(77, 31, 110, 0) 100%);
}
.section--promo.bg-purple .content h2 {
  color: #EAD2FA;
}
.section--promo.bg-purple .content .copy {
  color: #FFFFFF;
}

.section--promo.bg-purple.align-left .content::after {
  background: linear-gradient(-90deg, #4D1F6E 40%, rgba(77, 31, 110, 0) 100%);
}

.section--promo.bg-white.align-left .content::after {
  background: linear-gradient(-90deg, #FFFFFF 40%, rgba(255, 255, 255, 0) 100%);
}

@media (max-width: 849px) {
  .section--promo.bg-white .content::after {
    background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #FFFFFF 50vw);
  }
  .section--promo.bg-purple .content::after {
    background: linear-gradient(to top, rgba(77, 31, 110, 0) 0%, #4D1F6E 50vw);
  }
  .section--promo.bg-purple.align-left .content::after {
    background: linear-gradient(to top, rgba(77, 31, 110, 0) 0%, #4D1F6E 50vw);
  }
  .section--promo.bg-white.align-left .content::after {
    background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #FFFFFF 50vw);
  }
}
@media (max-width: 531px) {
  .section--promo.bg-white .content::after {
    background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #FFFFFF 60vw);
  }
  .section--promo.bg-purple .content::after {
    background: linear-gradient(to top, rgba(77, 31, 110, 0) 0%, #4D1F6E 60vw);
  }
  .section--promo.bg-purple.align-left .content::after {
    background: linear-gradient(to top, rgba(77, 31, 110, 0) 0%, #4D1F6E 60vw);
  }
  .section--promo.bg-white.align-left .content::after {
    background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #FFFFFF 60vw);
  }
}
.section--single-post {
  padding-left: var(--outer);
  padding-right: var(--outer);
}

.single-post #maincontent::after {
  display: none;
}

.section--share-bar {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--share-bar::before {
  display: none;
}
.section--share-bar .content {
  display: flex;
  justify-content: flex-start;
}

.share-bar {
  display: flex;
  align-items: center;
  gap: clamp(10px, 5vw, 3.5 * var(--mb));
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 1023px) {
  .share-bar {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.share-bar a {
  color: #4D1F6E;
}
.share-bar span {
  display: flex;
  align-items: center;
  gap: 5px;
}

.single-post .entry-content, .single-event .entry-content {
  margin-bottom: clamp(30px, 4.1vw, 120px);
}
.single-post .entry-content > h2, .single-event .entry-content > h2 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.625rem, 2.3611111111vw + 0rem, 4.625rem);
  line-height: 1.3;
}
@media (min-width: 1920px) {
  .single-post .entry-content > h2, .single-event .entry-content > h2 {
    font-size: calc(34 / 1440 * 1920px);
  }
}
.single-post .entry-content > h3, .single-event .entry-content > h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
}
@media (min-width: 1920px) {
  .single-post .entry-content > h3, .single-event .entry-content > h3 {
    font-size: calc(24 / 1440 * 1920px);
  }
}
.single-post .entry-content > h6,
.single-post .entry-content > h5, .single-event .entry-content > h6,
.single-event .entry-content > h5 {
  margin-bottom: var(--mb);
}
.single-post .entry-content > * + h3,
.single-post .entry-content > * + h2,
.single-post .entry-content > * + h1, .single-event .entry-content > * + h3,
.single-event .entry-content > * + h2,
.single-event .entry-content > * + h1 {
  margin-top: calc(4 * var(--mb));
}
.single-post .entry-content p + .wp-block-image, .single-event .entry-content p + .wp-block-image {
  margin-top: clamp(10px, 2vw, 60px);
}
.single-post .entry-content p.has-large-font-size, .single-event .entry-content p.has-large-font-size {
  line-height: 1.3;
  max-width: calc(var(--rw) + 10%);
}
@media (min-width: 1024px) {
  .single-post .entry-content p.has-large-font-size, .single-event .entry-content p.has-large-font-size {
    font-size: 1.625rem;
    line-height: 1.3;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .single-post .entry-content p.has-large-font-size, .single-event .entry-content p.has-large-font-size {
    font-size: 1.25rem;
    line-height: 1.3;
  }
}
.single-post .entry-content > blockquote::before, .single-event .entry-content > blockquote::before {
  left: 0;
}
.single-post .entry-content .wp-block-image, .single-event .entry-content .wp-block-image {
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  overflow: clip;
  margin-bottom: calc(4 * var(--mb));
}
.single-post .entry-content .buttons-list, .single-event .entry-content .buttons-list {
  display: block;
  margin-bottom: calc(2 * var(--mb));
}

.post-logo {
  width: 25vw;
  max-width: 200px;
  aspect-ratio: 2;
  margin-bottom: 2rem;
  margin-left: var(--ml);
}
.post-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top left;
}

.section--single-event {
  padding-left: var(--outer);
  padding-right: var(--outer);
}

.single-event #maincontent::after {
  display: none;
}
.single-event #maincontent .event-meta {
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 1023px) {
  .single-event #maincontent .event-meta {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.single-event #maincontent .event-meta h4 {
  font-family: nimbus-sans, sans-serif;
  font-size: 0.9375rem;
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .single-event #maincontent .event-meta h4 {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.single-event #maincontent .event-meta address {
  margin-bottom: var(--mb);
}
.single-event #maincontent figure.size-large {
  width: 100%;
}
.single-event #maincontent .section--article .content {
  display: flex;
  flex-direction: column-reverse;
}
@media (min-width: 850px) {
  .single-event #maincontent .content {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
  }
  .single-event #maincontent .event-details {
    width: 28%;
    display: flex;
    flex-direction: column;
    row-gap: calc(4 * var(--mb));
  }
  .single-event #maincontent .event-content {
    width: 66%;
  }
}

.section--committee {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--committee .content {
  display: flex;
  flex-direction: column;
  row-gap: var(--mb);
}
.section--committee .content > h2 {
  margin-bottom: 0;
}
@media (min-width: 850px) {
  .section--committee .copy {
    width: 66%;
  }
}
.section--committee .committee-block {
  aspect-ratio: 2.6;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: #E3E2D1;
  padding: var(--mb);
  width: 49%;
  transition: opacity 0.5s;
}
.section--committee .committee-block:has(.members) {
  cursor: pointer;
}
.section--committee .invisible {
  display: none;
}
.section--committee .committee-blocks {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 2%;
  row-gap: var(--mb);
}
.section--committee .committee-blocks.level-one .committee-block {
  background-color: #9BC6D4;
}
.section--committee .committee-blocks.level-two .committee-block {
  background-color: #EAD2FA;
}
.section--committee .committee-blocks.executive-board .committee-block-header {
  aspect-ratio: inherit;
  background-color: #4D1F6E;
  color: #FFFFFF;
  width: 100%;
  padding: calc(2 * var(--mb));
}
.section--committee .kicker {
  font-size: 0.9375rem;
  line-height: 1.4;
  display: block;
}
@media (max-width: 849px) {
  .section--committee .kicker {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--committee .breadcrumb {
  font-size: 0.75rem;
  line-height: 1.4;
  line-height: 1.2;
}
.section--committee .number {
  font-size: 0.75rem;
  line-height: 1.4;
}
@media (min-width: 532px) {
  .section--committee .committee-blocks {
    gap: 1.2%;
    row-gap: var(--mb);
  }
  .section--committee .committee-block {
    width: 32%;
    aspect-ratio: 2.4;
  }
}
@media (min-width: 680px) {
  .section--committee .committee-blocks {
    gap: 1.2%;
    row-gap: var(--mb);
  }
  .section--committee .committee-block {
    width: 24%;
  }
}
@media (min-width: 850px) {
  .section--committee .committee-blocks {
    gap: 1.2%;
    row-gap: var(--mb);
  }
  .section--committee .committee-block {
    width: 19%;
  }
}

.section--people {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--people .list--people {
  padding-top: clamp(10px, 2vw, 60px);
  padding-bottom: clamp(10px, 2vw, 60px);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2%;
  row-gap: calc(3 * var(--mb));
  max-width: 500px;
}
@media (min-width: 850px) {
  .section--people .content > .copy {
    width: 66%;
  }
}
@media (min-width: 850px) {
  .section--people .list--people {
    grid-template-columns: repeat(4, 1fr);
    max-width: inherit;
  }
}
@media (min-width: 1180px) {
  .section--people .list--people {
    grid-template-columns: repeat(5, 1fr);
  }
  .section--people.num-4 .list--people {
    grid-template-columns: repeat(4, 1fr);
    width: 92%;
  }
  .section--people.num-3 .list--people {
    grid-template-columns: repeat(3, 1fr);
    width: 92%;
    row-gap: calc(5 * var(--mb));
  }
}

.entry--person {
  position: relative;
  transition: opacity 0.3s;
}
.entry--person .show-person {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.entry--person .image {
  aspect-ratio: 1.1;
  margin-bottom: var(--mb);
  background-color: #E5E5E5;
}
.entry--person .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.entry--person h4 {
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  margin-bottom: 0;
}
@media (min-width: 1024px) {
  .entry--person h4 {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .entry--person h4 {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
.entry--person .copy {
  display: flex;
  flex-direction: column;
  row-gap: 0.2rem;
}
.entry--person .position {
  font-size: 0.9375rem;
  line-height: 1.4;
  line-height: 1.2;
  display: block;
}
@media (max-width: 849px) {
  .entry--person .position {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.entry--person .board-position {
  font-weight: bold;
}
.entry--person .invisible {
  display: none;
}
.entry--person:has(.show-person):hover {
  cursor: pointer;
  opacity: 0.8;
}

#modal--person .person-meta {
  display: flex;
  justify-content: space-between;
  margin-bottom: calc(2 * var(--mb));
  align-items: flex-start;
}
#modal--person .invisible {
  display: flex;
}
#modal--person h4 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.625rem, 2.3611111111vw + 0rem, 4.625rem);
  line-height: 1.3;
  margin-bottom: 0;
}
@media (min-width: 1920px) {
  #modal--person h4 {
    font-size: calc(34 / 1440 * 1920px);
  }
}
#modal--person .image {
  width: 36%;
}
#modal--person .copy {
  width: 56%;
}
#modal--person .position {
  margin-bottom: calc(2 * var(--mb));
  display: block;
}
#modal--person .close-modal {
  color: #231B29;
  background-color: #84F0C9;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
  position: absolute;
  top: var(--mb);
  right: clamp(30px, 4.1vw, 120px);
}
#modal--person .close-modal svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
#modal--person .close-modal:hover:not(:disabled), #modal--person .close-modal:active:not(:disabled) {
  color: #231B29;
  background-color: #EAD2FA;
  border-color: #231B29;
}
#modal--person .close-modal:hover:not(:disabled) svg *, #modal--person .close-modal:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  #modal--person .close-modal {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}
#modal--person .person-contacts {
  font-size: 0.9375rem;
  line-height: 1.4;
  flex-direction: column;
  row-gap: calc(0.5 * var(--mb));
  border-top: 1px solid #231B29;
  border-bottom: 1px solid #231B29;
  padding: var(--mb) 0;
}
@media (max-width: 1023px) {
  #modal--person .person-contacts {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
#modal--person .person-contacts a {
  display: block;
  color: #4D1F6E;
}
#modal--person .bio {
  flex-direction: column;
}
#modal--person .bio > :last-child {
  margin-bottom: 0;
}
@media (max-width: 532px) {
  #modal--person .person-meta {
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: calc(2 * var(--mb));
    align-items: flex-start;
  }
  #modal--person .person-meta .image {
    max-width: 100px;
  }
  #modal--person .person-meta .copy {
    width: 100%;
  }
}
@media (min-width: 850px) {
  #modal--person .modal-content {
    width: 48%;
  }
}

#modal--members .image {
  aspect-ratio: 1;
  width: 4rem;
}
#modal--members ul {
  min-width: 400px;
}
#modal--members ul::before {
  content: "Members";
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
  display: block;
  margin-bottom: 1rem;
}
@media (min-width: 1920px) {
  #modal--members ul::before {
    font-size: calc(24 / 1440 * 1920px);
  }
}
#modal--members ul li {
  padding: var(--mb) 0;
  display: flex;
  gap: 1rem;
}
#modal--members ul li:not(:last-of-type) {
  border-bottom: 1px solid rgba(128, 128, 128, 0.3);
}
#modal--members h5 {
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  margin-bottom: 0rem;
}
@media (min-width: 1024px) {
  #modal--members h5 {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  #modal--members h5 {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
#modal--members .position {
  display: block;
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 849px) {
  #modal--members .position {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
#modal--members .board-position {
  font-weight: bold;
}
#modal--members .close-modal {
  color: #231B29;
  background-color: #84F0C9;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
  position: absolute;
  top: var(--mb);
  right: clamp(30px, 4.1vw, 120px);
}
#modal--members .close-modal svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
#modal--members .close-modal:hover:not(:disabled), #modal--members .close-modal:active:not(:disabled) {
  color: #231B29;
  background-color: #EAD2FA;
  border-color: #231B29;
}
#modal--members .close-modal:hover:not(:disabled) svg *, #modal--members .close-modal:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  #modal--members .close-modal {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}
@media (max-width: 532px) {
  #modal--members .modal-content {
    width: 90vw;
  }
  #modal--members ul {
    width: 100%;
    min-width: inherit;
    max-width: 400px;
  }
}

.section--members {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(10px, 2vw, 60px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--members .list-section {
  padding: clamp(10px, 2vw, 60px) 0;
  border-bottom: 1px solid #231B29;
  position: relative;
}
.section--members .anchor {
  position: absolute;
  top: -80px;
}
.section--members h3 {
  width: 100%;
}
.section--members li {
  position: relative;
  border-bottom: 1px solid rgba(126, 134, 150, 0.4);
  padding: var(--mb) 0;
}
.section--members li:hover {
  z-index: 100;
}
.section--members li:hover .popover {
  opacity: 1;
}
.section--members li:hover a {
  position: relative;
  color: #4D1F6E;
}
.section--members li:hover a::after {
  content: "";
  aspect-ratio: 1;
  width: 2.1ch;
  position: absolute;
  right: -2.5ch;
  background-image: url(../images/svg/external-link.svg);
  background-position: center;
  background-repeat: no-repeat;
  animation-duration: 0.5s;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}
.section--members .popover {
  display: flex;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  flex-direction: column;
  row-gap: 0.5rem;
  background-color: #F1EFF2;
  border: 1px solid #E4E2E2;
  padding: 1rem;
  border-radius: 3px;
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 849px) {
  .section--members .popover {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--members .popover p {
  margin-bottom: 0;
}
@media (max-width: 849px) {
  .section--members li:last-of-type {
    border: none;
  }
  .section--members h3 {
    margin-top: calc(2 * var(--mb));
  }
}
@media (min-width: 850px) {
  .section--members .list-section {
    display: flex;
    align-items: flex-start;
  }
  .section--members h3 {
    width: 17%;
    position: sticky;
    top: var(--nav-height);
    width: 10%;
  }
  .section--members ul {
    width: 83%;
    padding-top: var(--mb);
    display: flex;
    flex-wrap: wrap;
  }
  .section--members li {
    width: 50%;
    border-bottom: 1px solid rgba(126, 134, 150, 0.4);
    padding: var(--mb) 0;
  }
  .section--members li:last-of-type {
    border: none;
  }
  .section--members li:nth-last-child(2):nth-of-type(odd) {
    border: none;
  }
}

.section--alphabet {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: calc(2 * var(--mb));
  padding-bottom: calc(2 * var(--mb));
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 1023px) {
  .section--alphabet {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--alphabet ul {
  display: flex;
  justify-content: space-between;
}
.section--alphabet a:hover {
  color: #4D1F6E;
}
@media (max-width: 849px) {
  .section--alphabet .content {
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .section--alphabet .content::-webkit-scrollbar {
    display: none; /* For Chrome, Safari, and Opera */
  }
  .section--alphabet li {
    min-width: 50px;
  }
  .section--alphabet span {
    display: none;
  }
}
@media (min-width: 850px) {
  .section--alphabet .content {
    display: flex;
    align-items: center;
  }
  .section--alphabet span {
    width: 17%;
  }
  .section--alphabet ul {
    width: 83%;
    padding-top: var(--mb);
    display: flex;
    flex-wrap: wrap;
  }
}

.wpcf7 p {
  width: 100%;
}
.wpcf7 .column {
  display: flex;
  gap: 2%;
}

.section--events-upcoming {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--events-upcoming .list-section {
  align-items: flex-start;
  padding: clamp(10px, 2vw, 60px) 0;
  position: relative;
}
.section--events-upcoming h4 {
  position: sticky;
  top: var(--nav-height);
  width: 100%;
  line-height: 2;
}
.section--events-upcoming .upcoming-events-list {
  display: flex;
  flex-direction: column;
  row-gap: calc(0.5 * var(--mb));
}
@media (min-width: 850px) {
  .section--events-upcoming .list-section {
    display: flex;
  }
  .section--events-upcoming h4 {
    width: 17%;
  }
  .section--events-upcoming .upcoming-events-list {
    width: 83%;
    padding-top: var(--mb);
    row-gap: calc(2 * var(--mb));
  }
}

.entry--event-upcoming {
  background-color: #FFFFFF;
  padding: calc(2 * var(--mb)) calc(2 * var(--mb)) calc(2 * var(--mb)) 0;
  justify-content: space-between;
  transition: background-color 0.3s;
  position: relative;
}
.entry--event-upcoming .category-list {
  margin-top: var(--mb);
}
.entry--event-upcoming .category-list li {
  font-size: 0.75rem;
  line-height: 1.4;
  line-height: 1.8;
}
.entry--event-upcoming a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  font-size: 0;
}
.entry--event-upcoming a:hover + .day-month + .event-details h3, .entry--event-upcoming a:active + .day-month + .event-details h3 {
  color: #4D1F6E;
}
.entry--event-upcoming h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
}
@media (min-width: 1920px) {
  .entry--event-upcoming h3 {
    font-size: calc(24 / 1440 * 1920px);
  }
}
.entry--event-upcoming .date {
  font-size: 0.75rem;
  line-height: 1.4;
}
.entry--event-upcoming .day {
  font-size: clamp(1.5rem, 2.9166666667vw + 0rem, 5.25rem);
  font-weight: bold;
  color: #4D1F6E;
}
@media (min-width: 1920px) {
  .entry--event-upcoming .day {
    font-size: calc(42 / 1440 * 1920px);
  }
}
@media (max-width: 849px) {
  .entry--event-upcoming {
    padding: calc(2 * var(--mb));
  }
  .entry--event-upcoming .event-details {
    width: 100%;
  }
  .entry--event-upcoming .day-month {
    width: 100%;
    border-bottom: 1px solid #231B29;
    margin-bottom: var(--mb);
  }
  .entry--event-upcoming .day-month .month {
    font-size: clamp(1.5rem, 2.9166666667vw + 0rem, 5.25rem);
    font-weight: bold;
    color: #4D1F6E;
  }
}
@media (max-width: 849px) and (min-width: 1920px) {
  .entry--event-upcoming .day-month .month {
    font-size: calc(42 / 1440 * 1920px);
  }
}
@media (min-width: 850px) {
  .entry--event-upcoming {
    display: flex;
  }
  .entry--event-upcoming .event-details {
    width: 88%;
  }
  .entry--event-upcoming .day-month {
    width: 10.5%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #231B29;
  }
}

.entry--event-past {
  position: relative;
}
.entry--event-past .category-list {
  margin-top: var(--mb);
}
.entry--event-past .category-list li {
  font-size: 0.9375rem;
  line-height: 1.4;
  background-color: #FFFFFF;
  color: #4D1F6E;
  border-radius: 20px;
  padding: 0 0.6rem;
  line-height: 1.6;
  font-size: 0.75rem;
  line-height: 1.4;
  line-height: 1.8;
}
@media (max-width: 849px) {
  .entry--event-past .category-list li {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.entry--event-past a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  font-size: 0;
}
.entry--event-past a:hover + .event-details h3, .entry--event-past a:active + .event-details h3 {
  color: #4D1F6E;
}
.entry--event-past h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
}
@media (min-width: 1920px) {
  .entry--event-past h3 {
    font-size: calc(24 / 1440 * 1920px);
  }
}
.entry--event-past .date {
  font-size: 0.75rem;
  line-height: 1.4;
}

.section--events-past {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(10px, 2vw, 60px);
  padding-bottom: clamp(10px, 2vw, 60px);
}
.section--events-past .past-events-blocks {
  display: flex;
  flex-direction: column;
  row-gap: calc(3 * var(--mb));
}
.section--events-past h2 {
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 532px) {
  .section--events-past h2 {
    margin-bottom: calc(5 * var(--mb));
  }
  .section--events-past .past-events-blocks {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: calc(2 * var(--mb));
    gap: 2rem 2%;
  }
}

.section--links {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
  background-color: #D8E9F6;
}
.section--links .liiba-link {
  width: 100%;
  position: relative;
  background-color: #EAD2FA;
  border-radius: 1rem;
  transition: background-color 0.3s;
  border-bottom: none;
  padding: clamp(10px, 2vw, 60px);
  border: 2px solid #231B29;
}
.section--links .liiba-link:has(a):hover {
  background-color: #84F0C9;
}
.section--links .liiba-link:has(a):hover h4, .section--links .liiba-link:has(a):hover .url {
  color: #231B29;
}
.section--links h4 {
  color: #4D1F6E;
}
.section--links a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  font-size: 0;
}
.section--links .copy {
  font-size: 0.9375rem;
  line-height: 1.4;
}
@media (max-width: 1023px) {
  .section--links .copy {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--links .copy p {
  margin-bottom: calc(0.5 * var(--mb));
}
.section--links .image {
  object-position: top left;
}
.section--links .url {
  font-size: 0.9375rem;
  line-height: 1.4;
  color: #4D1F6E;
}
@media (max-width: 849px) {
  .section--links .url {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
@media (max-width: 849px) {
  .section--links h2,
  .section--links h2 + p {
    text-align: center;
  }
  .section--links h2 + p {
    margin-bottom: calc(3 * var(--mb));
  }
  .section--links .liiba-link {
    width: 100%;
    margin-bottom: var(--mb);
    padding: calc(3 * var(--mb));
  }
  .section--links .liiba-link {
    display: flex;
    flex-direction: column;
    row-gap: calc(3 * var(--mb));
    align-items: center;
    justify-content: flex-start;
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
  }
  .section--links .copy {
    width: 100%;
  }
  .section--links .image {
    width: 20%;
  }
  .section--links h4 {
    text-align: center;
  }
}
@media (min-width: 532px) and (max-width: 849px) {
  .section--links .copy {
    width: 100%;
  }
  .section--links .image {
    width: 25%;
    aspect-ratio: 1;
  }
  .section--links h4 {
    text-align: center;
  }
}
@media (min-width: 850px) {
  .section--links .content > p {
    margin-bottom: clamp(10px, 2vw, 60px);
  }
}
@media (min-width: 850px) and (min-width: 850px) {
  .section--links .content > p {
    width: 66%;
  }
}
@media (min-width: 850px) {
  .section--links .links {
    display: flex;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: calc(2 * var(--mb));
    margin-top: calc(4 * var(--mb));
  }
  .section--links .liiba-link {
    width: 49%;
    display: flex;
    align-items: center;
    align-items: flex-start;
    justify-content: space-between;
  }
  .section--links .copy {
    width: 77%;
  }
  .section--links .image {
    width: 16%;
  }
}

.section--partnerlinks {
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
  padding-left: var(--outer);
  padding-right: var(--outer);
  min-height: 100px;
  background-color: #84F0C9;
}
.section--partnerlinks .content {
  display: flex;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
}
.section--partnerlinks > .copy {
  text-align: center;
  margin-bottom: clamp(30px, 4.1vw, 120px);
  max-width: 720px;
}
.section--partnerlinks > .copy h2 {
  width: 100%;
}
.section--partnerlinks h3 {
  margin-bottom: var(--mb);
}
.section--partnerlinks .columns {
  display: flex;
  flex-direction: column;
  row-gap: var(--mb);
}
.section--partnerlinks .columns .btn:last-child() {
  justify-self: flex-end;
}
.section--partnerlinks .partnerlink {
  width: 100%;
  background-color: #FFFFFF;
  border: 2px solid #231B29;
  padding: calc(3 * var(--mb));
  border-radius: var(--border-radius-belonging);
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.section--partnerlinks .partnerlink h3 {
  text-align: center;
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.125rem, 1.6666666667vw + 0rem, 3.75rem);
  line-height: 1.2;
  margin-bottom: calc(3 * var(--mb));
}
@media (min-width: 1920px) {
  .section--partnerlinks .partnerlink h3 {
    font-size: calc(24 / 1440 * 1920px);
  }
}
.section--partnerlinks .partnerlink .image, .section--partnerlinks .partnerlink video, .section--partnerlinks .partnerlink .vimeo-video {
  width: 40%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: calc(3 * var(--mb));
}
.section--partnerlinks .partnerlink .image.covered, .section--partnerlinks .partnerlink .image.contained, .section--partnerlinks .partnerlink video.covered, .section--partnerlinks .partnerlink video.contained, .section--partnerlinks .partnerlink .vimeo-video.covered, .section--partnerlinks .partnerlink .vimeo-video.contained {
  aspect-ratio: 1.5;
}
.section--partnerlinks .partnerlink .image.covered img, .section--partnerlinks .partnerlink .image.contained img, .section--partnerlinks .partnerlink video.covered img, .section--partnerlinks .partnerlink video.contained img, .section--partnerlinks .partnerlink .vimeo-video.covered img, .section--partnerlinks .partnerlink .vimeo-video.contained img {
  width: 100%;
  height: 100%;
}
.section--partnerlinks .partnerlink .copy {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.section--partnerlinks .partnerlink .btn {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  display: block;
  margin-top: auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  color: #231B29;
  background-color: #EAD8F6;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
}
.section--partnerlinks .partnerlink .btn svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
.section--partnerlinks .partnerlink .btn:hover:not(:disabled), .section--partnerlinks .partnerlink .btn:active:not(:disabled) {
  color: #231B29;
  background-color: #84F0C9;
  border-color: #231B29;
}
.section--partnerlinks .partnerlink .btn:hover:not(:disabled) svg *, .section--partnerlinks .partnerlink .btn:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  .section--partnerlinks .partnerlink .btn {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}
@media (max-width: 849px) {
  .section--partnerlinks .columns {
    width: 100%;
  }
  .section--partnerlinks .partnerlink {
    display: block;
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 531px) {
  .section--partnerlinks .btn {
    width: 100%;
  }
}
@media (min-width: 850px) {
  .section--partnerlinks h2 {
    width: 66%;
  }
  .section--partnerlinks > .copy {
    width: 66%;
    margin-left: auto;
    margin-right: auto;
  }
  .section--partnerlinks .columns {
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 2%;
    row-gap: calc(2 * var(--mb));
  }
  .section--partnerlinks .divider {
    display: none;
  }
  .section--partnerlinks.num-2 .partnerlink {
    width: 49%;
  }
  .section--partnerlinks.num-3 .partnerlink {
    width: 32%;
  }
  .section--partnerlinks.num-4 .partnerlink {
    width: 24%;
  }
}

.section--awards {
  background-color: #FFFFFF;
}
.section--awards > .copy {
  margin-bottom: 0;
}
.section--awards .award {
  padding: calc(2 * var(--mb));
  border-color: transparent;
  border-color: #E5E5E5;
}
.section--awards .award h3 {
  margin-bottom: 0;
}
.section--awards .award .logo {
  aspect-ratio: 3;
  margin-bottom: var(--mb);
  width: 100%;
  max-width: 400px;
}
.section--awards .award .logo img {
  width: 80%;
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  object-fit: contain;
  object-position: center;
  mix-blend-mode: multiply;
}

.section--resources {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--resources .liiba-resource {
  display: grid;
}
.section--resources .liiba-resource a::before {
  content: "";
  left: 0;
  top: 0;
  pointer-events: none;
  height: 100%;
  display: flex;
  aspect-ratio: 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 70%;
}
.section--resources .liiba-resource.icon-link a::before {
  background-image: url(../images/svg/download-icons/link.svg);
}
.section--resources .liiba-resource.icon-download a::before {
  background-image: url(../images/svg/download-icons/generic.svg);
}
.section--resources .liiba-resource.icon-video a::before {
  background-image: url(../images/svg/download-icons/play.svg);
}
.section--resources .liiba-resource.icon-pdf a::before {
  background-image: url(../images/svg/download-icons/pdf.svg);
}
.section--resources .liiba-resource.icon-word a::before {
  background-image: url(../images/svg/download-icons/word.svg);
}
.section--resources .liiba-resource.icon-audio a::before {
  background-image: url(../images/svg/download-icons/volume.svg);
}
.section--resources .liiba-resource.icon-podcast a::before {
  background-image: url(../images/svg/download-icons/podcast.svg);
}
.section--resources .liiba-resource.icon-globe a::before {
  background-image: url(../images/svg/download-icons/globe.svg);
}
.section--resources .liiba-resource a {
  display: flex;
  position: relative;
  padding: var(--mb);
  padding-left: 0;
  min-height: 6ch;
  border-bottom: 1px solid rgba(35, 27, 41, 0.3);
}
.section--resources .liiba-resource .resource-content {
  padding-left: var(--mb);
}
.section--resources .content > .copy {
  margin-bottom: clamp(10px, 2vw, 60px);
}
@media (min-width: 850px) {
  .section--resources .content > .copy {
    width: 66%;
  }
}
.section--resources h4 {
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  margin-bottom: 0;
}
@media (min-width: 1024px) {
  .section--resources h4 {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .section--resources h4 {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
.section--resources .resources-list {
  display: grid;
  flex-direction: column;
  row-gap: calc(0.5 * var(--mb));
}
.section--resources .resource-meta {
  font-size: 0.9375rem;
  line-height: 1.4;
  display: flex;
}
@media (max-width: 849px) {
  .section--resources .resource-meta {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.section--resources .resource-meta span {
  display: inline-block;
  min-width: 15%;
  padding-right: var(--mb);
}
@media (min-width: 850px) {
  .section--resources .resources-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--mb) 2%;
    max-width: var(--max-width);
    margin-left: auto;
    margin-right: auto;
  }
}

.section--download-link {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: var(--mb);
  padding-bottom: var(--mb);
  height: auto;
  pointer-events: all;
}
.section--download-link ul {
  border-top: 1px solid #231B29;
  padding: var(--mb) 0;
}
.section--download-link ul li:first-child {
  margin-top: 0;
}

.section--download-link + .section--download-link {
  padding-top: 0;
}
.section--download-link + .section--download-link::before {
  display: none;
}
.section--download-link + .section--download-link ul {
  border-top: none;
  padding-top: 0;
}

.section--download-link:last-of-type ul {
  border-bottom: 1px solid #231B29;
}

.section--text-icon {
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: clamp(30px, 4.1vw, 120px);
  padding-bottom: clamp(30px, 4.1vw, 120px);
}
.section--text-icon .copy {
  font-weight: normal;
  max-width: var(--rw);
}
.section--text-icon .copy a:not(.cta):not(.btn):not(.link) {
  color: #672e90;
  text-decoration: underline;
  text-underline-offset: 0.5ch;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s;
}
.section--text-icon .copy a:not(.cta):not(.btn):not(.link):hover, .section--text-icon .copy a:not(.cta):not(.btn):not(.link):active {
  color: #672e90;
  text-decoration-color: #672e90;
}
.section--text-icon h2 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(1.625rem, 2.3611111111vw + 0rem, 4.625rem);
  line-height: 1.3;
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 1920px) {
  .section--text-icon h2 {
    font-size: calc(34 / 1440 * 1920px);
  }
}
.section--text-icon h2 strong {
  color: #4D1F6E;
}
.section--text-icon .buttons-list {
  padding-top: var(--mb);
}
.section--text-icon .image {
  width: 20%;
}
.section--text-icon .image.covered, .section--text-icon .image.contained {
  aspect-ratio: 1;
}
.section--text-icon .image.covered img, .section--text-icon .image.contained img {
  width: 100%;
  height: 100%;
}
.section--text-icon .copy {
  width: 100%;
}
.section--text-icon ul {
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.8ch;
  list-style: none;
  text-align: left;
}
.section--text-icon ul li {
  display: list-item;
}
.section--text-icon ul li::before {
  content: "•";
  position: absolute;
  color: #4D1F6E;
  left: -1.8ch;
}
.section--text-icon ul > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
@media (max-width: 531px) {
  .section--text-icon .image {
    margin-bottom: calc(2 * var(--mb));
  }
  .section--text-icon .copy h2 {
    display: none;
  }
  .section--text-icon h2 {
    width: 75%;
  }
  .section--text-icon .texticon--inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5%;
    width: 100%;
  }
  .section--text-icon .copy {
    width: 100%;
    max-width: inherit;
  }
}
@media (min-width: 532px) {
  .section--text-icon .texticon--inner {
    display: flex;
    gap: 6%;
    align-items: flex-start;
    left: 0;
    width: 100%;
  }
  .section--text-icon .mobile {
    display: none;
  }
  .section--text-icon .image {
    width: 15.5%;
    max-width: 180px;
    margin-top: min(1%, 13px);
  }
  .section--text-icon .copy {
    width: 80%;
  }
}
@media (min-width: 1180px) {
  .section--text-icon .copy {
    width: 66%;
    max-width: 750px;
  }
}

.hidden {
  opacity: 0;
}

.hidden.on-screen {
  animation-duration: 0.8s;
  animation-fill-mode: both;
  animation-delay: 0.2s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}

.hidden.on-screen {
  animation-duration: 1s;
  animation-fill-mode: both;
  animation-delay: 0.2s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}

section.hidden.on-screen {
  animation-duration: 1s;
  animation-fill-mode: both;
  animation-delay: 0.2s;
  animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  animation-name: fade-in-scale-ks;
}

.on-screen {
  animation-duration: 0.8s;
  animation-fill-mode: both;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}

.hidden.on-screen.footer--site {
  animation-duration: 0.3s;
  animation-fill-mode: both;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-name: fade-in-ks;
}

.entry-content > *:not(.modal) {
  opacity: 0;
}

.entry-content > *:last-child {
  padding-bottom: clamp(40px, 9.1vw, 180px);
}

.entry-content > *:first-child {
  padding-top: clamp(20px, 5vw, 80px);
}

.buttons-list {
  gap: calc(0.5 * var(--mb));
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 531px) {
  .buttons-list.num-1 a, .buttons-list.num-3 a {
    width: 100%;
  }
  .buttons-list.num-2 a, .buttons-list.num-4 a {
    min-width: 48%;
  }
}

figure img {
  object-position: var(--objf);
}

.wp-block-video {
  overflow: hidden;
}

figure.image.contained img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

video.contained {
  object-fit: contain;
}

figure.image.covered img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

video.covered {
  object-fit: cover;
}

figure.image.fit img {
  width: 100%;
  height: auto;
}

figure.size-medium {
  width: 100%;
}
figure.size-medium img {
  width: 100%;
}
@media (min-width: 850px) {
  figure.size-medium {
    min-width: 490px;
  }
}

@media (min-width: 1180px) {
  figure.size-large {
    width: 80%;
    max-width: 100%;
  }
}

.wp-block-post-content > p, .wp-block-post-content > ul, .wp-block-post-content > ol, .wp-block-post-content > h1, .wp-block-post-content > h2, .wp-block-post-content > h3, .wp-block-post-content > h4, .wp-block-post-content > h5, .wp-block-post-content > h6, .wp-block-post-content > blockquote, .wp-block-post-content > .wpcf7, .wp-block-post-content > hr {
  max-width: var(--rw2);
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: var(--mb);
  padding-bottom: var(--mb);
  margin-left: var(--ml);
}
.wp-block-post-content .wp-block-table {
  max-width: 1500px;
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: var(--mb);
  padding-bottom: var(--mb);
  margin-left: var(--ml);
}
.wp-block-post-content > ul {
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.8ch;
  list-style: none;
  text-align: left;
  max-width: var(--rw2);
  padding-left: var(--outer);
}
.wp-block-post-content > ul li {
  display: list-item;
}
.wp-block-post-content > ul li::before {
  content: "•";
  position: absolute;
  color: #4D1F6E;
  left: -1.8ch;
}
.wp-block-post-content > ul > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
.wp-block-post-content > h1 {
  margin-bottom: calc(2 * var(--mb));
}
.wp-block-post-content > p {
  padding-top: 0;
  padding-bottom: 0;
}
.wp-block-post-content hr {
  color: #7E8696;
  height: 0;
  border: none;
  border-top: 1px solid #231B29;
}
.wp-block-post-content > blockquote {
  margin-top: calc(4 * var(--mb));
  margin-bottom: calc(4 * var(--mb));
  position: relative;
  font-size: 1.5rem;
  line-height: 1.4;
}
@media (max-width: 849px) {
  .wp-block-post-content > blockquote {
    font-size: 1.125rem;
    line-height: 1.4;
  }
}
.wp-block-post-content > blockquote::before {
  content: "";
  height: 100%;
  position: absolute;
  width: 4px;
  left: var(--outer);
  top: 0;
  background-color: #4D1F6E;
}
.wp-block-post-content > blockquote p {
  padding-left: calc(3 * var(--mb));
}
.wp-block-post-content > blockquote cite {
  padding-left: calc(3 * var(--mb));
  font-size: 0.9375rem;
  line-height: 1.4;
  font-style: normal;
  font-weight: bold;
}
@media (max-width: 849px) {
  .wp-block-post-content > blockquote cite {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}
.wp-block-post-content > ol {
  counter-reset: item;
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.5ch;
  list-style: none;
  text-align: left;
}
.wp-block-post-content > ol li {
  display: list-item;
}
.wp-block-post-content > ol > li::before {
  content: counters(item, ".") ". ";
  counter-increment: item;
  position: absolute;
  left: -1.5ch;
}
.wp-block-post-content > ol > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
.wp-block-post-content > ol > li > ol li {
  font-family: "Source Sans 3", sans-serif;
  font-style: normal;
  text-wrap: pretty;
  text-align: left;
  text-transform: none;
  font-weight: normal;
  margin-top: 0;
}
@media (min-width: 1024px) {
  .wp-block-post-content > ol > li > ol li {
    font-size: 1.125rem;
    line-height: 1.2;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .wp-block-post-content > ol > li > ol li {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
.wp-block-post-content > ol > li > ol > li > ol > li {
  padding-left: 1.5ch;
}
.wp-block-post-content img {
  max-width: 100%;
}
.wp-block-post-content > .buttons-list {
  justify-content: center;
}
.wp-block-post-content p + .wp-block-group {
  margin-top: calc(2 * var(--mb));
}
.wp-block-post-content > .section--login-links {
  padding-left: var(--outer);
  padding-right: var(--outer);
}
.wp-block-post-content .wp-block-image {
  overflow: clip;
  padding-left: var(--outer);
  padding-right: var(--outer);
  padding-top: var(--mb);
  padding-bottom: var(--mb);
  margin-left: var(--ml);
}
.wp-block-post-content .wp-block-image.aligncenter figcaption {
  text-align: left;
  width: 100%;
}
.wp-block-post-content .wp-block-image.size-medium, .wp-block-post-content .wp-block-image.aligncenter {
  max-width: var(--rw);
}
.wp-block-post-content .wp-block-image.size-large, .wp-block-post-content .wp-block-image.size-full {
  max-width: 1600px;
}
.wp-block-post-content .wp-block-image.size-full img {
  width: auto;
}
.wp-block-post-content .wp-block-image.size-thumbnail {
  max-width: 150px;
}
.wp-block-post-content .alignleft {
  float: left;
}
.wp-block-post-content thead {
  background-color: rgba(35, 27, 41, 0.2);
}
.wp-block-post-content table ul {
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  padding-left: 1.8ch;
  list-style: none;
  text-align: left;
}
.wp-block-post-content table ul li {
  display: list-item;
}
.wp-block-post-content table ul li::before {
  content: "•";
  position: absolute;
  color: #4D1F6E;
  left: -1.8ch;
}
.wp-block-post-content table ul > li {
  margin-bottom: calc(0.5 * var(--mb));
  position: relative;
}
.wp-block-post-content * + .wp-block-columns {
  margin-top: calc(2 * var(--mb));
  margin-bottom: calc(2 * var(--mb));
}

.category-list {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}

.section-title {
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 850px) {
  .section-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
}

section + .wp-block-heading {
  padding-top: clamp(30px, 4.1vw, 120px);
}

.wp-block-heading + section {
  padding-top: var(--mb);
}

.grecaptcha-badge {
  display: none !important;
}

#maincontent {
  background-color: #FFFFFF;
}

figure.wp-block-image {
  border-radius: var(--border-radius-belonging);
}

@media (min-width: 850px) {
  .header.media-image p {
    width: 100%;
  }
}
.header .image {
  border-radius: var(--border-radius-belonging);
  overflow: hidden;
}

.header-site {
  /* mobile    
  content -> nav--main + nav--right-nav -> ul--main
  */
  /* DESKTOP */
}
.header-site .logo {
  width: 180px;
  margin-right: 20px;
}
.header-site .logo svg {
  transform: translateY(10%);
}
.header-site .logo svg * {
  fill: #4D1F6E;
}
@media (min-width: 850px) {
  .header-site .logo {
    width: 280px;
  }
}
@media (max-width: 849px) {
  .header-site .logged-in-text {
    color: #4D1F6E;
  }
  .header-site .logged-in-text .logout {
    color: #4D1F6E;
  }
  .header-site .content {
    background-color: #EAD2FA;
  }
  .header-site .menus {
    background-color: #EAD2FA;
  }
  .header-site .nav--main-menu li a:not(.cta) {
    color: #4D1F6E;
    border-bottom: 1px solid rgba(35, 27, 41, 0.2);
  }
  .header-site .menu-button span {
    background-color: #4D1F6E;
  }
  .header-site .logo::after {
    height: 80%;
    top: auto;
    bottom: -2px;
    right: -5px;
    width: 320%;
  }
}
@media (min-width: 850px) {
  .header-site {
    background-color: #EAD2FA;
  }
  .header-site .logged-in-text {
    color: #4D1F6E;
  }
  .header-site .ul--main-nav a:not(.cta) {
    color: #231B29;
  }
  .header-site .ul--main-nav a:not(.cta):hover,
  .header-site .ul--main-nav .current-menu-item a,
  .header-site .ul--main-nav .current-page-ancestor a {
    color: #4D1F6E;
    text-shadow: 0px 0px 1px #4D1F6E;
  }
  .header-site .logout {
    background-color: rgba(255, 255, 255, 0.4);
    color: #231B29;
  }
  .header-site .logout:hover, .header-site .logout:active {
    background-color: white;
  }
}

.subnav {
  background-color: rgb(242.4, 231.6, 249.6);
}

form.wpcf7-form input[type=submit], form.wpcf7-form input[type=button], form.wpcf7-form button,
#modal--form form input[type=submit],
#modal--form form input[type=button],
#modal--form form button {
  color: #231B29;
  background-color: #84F0C9;
  position: relative;
  display: inline-block;
  padding: 0.6rem clamp(20px, 1.6vw, 25px);
  min-width: clamp(120px, 12vw, 200px);
  text-align: center;
  z-index: 1;
  font-weight: bold;
  border-radius: 20px;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  border: 1px solid #231B29;
  white-space: nowrap;
  filter: drop-shadow(1px 1px 0px #231B29);
}
form.wpcf7-form input[type=submit] svg *, form.wpcf7-form input[type=button] svg *, form.wpcf7-form button svg *,
#modal--form form input[type=submit] svg *,
#modal--form form input[type=button] svg *,
#modal--form form button svg * {
  fill: #231B29;
  stroke: #231B29;
  transition: fill 0.3s, stroke 0.3s;
}
form.wpcf7-form input[type=submit]:hover:not(:disabled), form.wpcf7-form input[type=submit]:active:not(:disabled), form.wpcf7-form input[type=button]:hover:not(:disabled), form.wpcf7-form input[type=button]:active:not(:disabled), form.wpcf7-form button:hover:not(:disabled), form.wpcf7-form button:active:not(:disabled),
#modal--form form input[type=submit]:hover:not(:disabled),
#modal--form form input[type=submit]:active:not(:disabled),
#modal--form form input[type=button]:hover:not(:disabled),
#modal--form form input[type=button]:active:not(:disabled),
#modal--form form button:hover:not(:disabled),
#modal--form form button:active:not(:disabled) {
  color: #231B29;
  background-color: #EAD8F6;
  border-color: #231B29;
}
form.wpcf7-form input[type=submit]:hover:not(:disabled) svg *, form.wpcf7-form input[type=submit]:active:not(:disabled) svg *, form.wpcf7-form input[type=button]:hover:not(:disabled) svg *, form.wpcf7-form input[type=button]:active:not(:disabled) svg *, form.wpcf7-form button:hover:not(:disabled) svg *, form.wpcf7-form button:active:not(:disabled) svg *,
#modal--form form input[type=submit]:hover:not(:disabled) svg *,
#modal--form form input[type=submit]:active:not(:disabled) svg *,
#modal--form form input[type=button]:hover:not(:disabled) svg *,
#modal--form form input[type=button]:active:not(:disabled) svg *,
#modal--form form button:hover:not(:disabled) svg *,
#modal--form form button:active:not(:disabled) svg * {
  fill: #231B29;
  stroke: #231B29;
}
@media (max-width: 531px) {
  form.wpcf7-form input[type=submit], form.wpcf7-form input[type=button], form.wpcf7-form button,
  #modal--form form input[type=submit],
  #modal--form form input[type=button],
  #modal--form form button {
    filter: drop-shadow(0px 0px 0px #231B29);
  }
}

.header--post h1 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(2rem, 3.2638888889vw + 0rem, 6.5rem);
  line-height: 1.1;
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 1920px) {
  .header--post h1 {
    font-size: calc(47 / 1440 * 1920px);
  }
}

.section--events-upcoming .entry--event-upcoming {
  border: 2px solid #231B29;
  background-color: #D8E9F6;
  border-radius: var(--border-radius-belonging);
}
.section--events-upcoming .entry--event-upcoming:hover {
  background-color: #84F0C9;
}
.section--events-upcoming .day-month {
  border: none;
}

.section--articles .section-title h3 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(2rem, 3.2638888889vw + 0rem, 6.5rem);
  line-height: 1.1;
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 1920px) {
  .section--articles .section-title h3 {
    font-size: calc(47 / 1440 * 1920px);
  }
}
.section--articles .entry--post-card {
  background-color: #D8E9F6;
  border-radius: var(--border-radius-belonging);
  padding: calc(3 * var(--mb));
  transition: background-colour 0.3s;
}
.section--articles .entry--post-card h3 {
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .section--articles .entry--post-card h3 {
    font-size: 1.625rem;
    line-height: 1.3;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .section--articles .entry--post-card h3 {
    font-size: 1.25rem;
    line-height: 1.3;
  }
}
.section--articles .entry--post-card:hover {
  background-color: #EAD8F6;
}
.section--articles .entry--post-card .pill {
  background-color: rgba(255, 255, 255, 0.4);
}

.section--resources {
  background-color: #D8E9F6;
}
.section--resources .liiba-resource a {
  background-color: #84F0C9;
  border-radius: 1rem;
  transition: background-color 0.3s;
  border-bottom: none;
  padding-left: var(--mb);
  border: 2px solid #231B29;
}
.section--resources .liiba-resource a:hover {
  background-color: #EAD8F6;
}
.section--resources h4 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(0.875rem, 1.4583333333vw + 0rem, 2.625rem);
  line-height: 1.2;
  margin-bottom: 0;
}
@media (min-width: 1920px) {
  .section--resources h4 {
    font-size: calc(21 / 1440 * 1920px);
  }
}

.section--download-link ul {
  border: none;
  background-color: #EAD8F6;
  padding: var(--mb) calc(2 * var(--mb));
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
}

.section--download-link + .section--download-link ul {
  border-top-left-radius: 0rem;
  border-top-right-radius: 0rem;
}

.section--download-link:last-of-type ul {
  border-bottom: none;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
}

.wp-block-post-content > h4 {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: var(--mb);
  text-wrap: balance;
  font-size: clamp(0.875rem, 1.4583333333vw + 0rem, 2.625rem);
  line-height: 1.2;
}
@media (min-width: 1920px) {
  .wp-block-post-content > h4 {
    font-size: calc(21 / 1440 * 1920px);
  }
}
.wp-block-post-content thead {
  background-color: rgba(234, 216, 246, 0.6);
}

@media (max-width: 531px) {
  .section--text-icon .content {
    padding-left: calc(3 * var(--mb));
    padding-right: calc(3 * var(--mb));
  }
}

.section--text-icon + .section--text-image {
  padding-top: 0;
}

.section--text-image + .section--text-image {
  padding-top: clamp(10px, 2vw, 60px);
}

.section--text-image {
  padding-bottom: 0;
}

.section--text-image:has(+ section) {
  padding-bottom: clamp(30px, 4.1vw, 120px);
}

.section--columns + .section--columns {
  padding-top: 0;
}

.header .back {
  margin-bottom: var(--mb);
}

.header .category-list .pill {
  padding: 0.25rem 1rem;
}

.single-post .article--meta {
  flex-direction: column;
  row-gap: 2rem;
}

.section--article {
  padding-top: clamp(10px, 2vw, 60px);
}

.wp-block-heading {
  color: #4D1F6E;
}

.section--text-image .image {
  border-radius: var(--border-radius-belonging);
  overflow: hidden;
}
@media (min-width: 850px) {
  .section--text-image .content {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 6%;
    left: 0;
    width: 100%;
  }
  .section--text-image .image, .section--text-image video, .section--text-image .vimeo-video {
    width: 45%;
  }
  .section--text-image .copy {
    width: 41%;
  }
  .section--text-image.align-left .content {
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
}
