:root {
  --color-text: var(--color-black);
  --color-borders: rgba(var(--color-black-rgb), 0.5);
  --color-accents: blue;
  --color-black: #252927;
  --color-black-rgb: 0, 0, 0;
  --color-white: #FFF;
  --color-white-rgb: 255, 255, 255;
  --color-blue: #4D6E7D;
  --color-blue-rgb: 77, 110, 125;
  --color-blue-light: #EBF3F7;
  --color-blue-light-rgb: 215, 232, 239;
  --color-peach: #F9B479;
  --color-gray: #D9D9D9;
  --color-body: #FEFEFE;
  --color-headings: var(--color-blue);
  --color-menu-item-bg: transparent;
  --color-button-text: var(--color-white);
  --color-button-text-hover: var(--color-white);
  --color-button-bg: var(--color-black);
  --color-button-bg-hover: var(--color-blue);
}

.color-black {
  color: var(--ep-color-black);
}

.color-white {
  color: var(--ep-color-white);
}

.color-gray-medium {
  color: var(--ep-color-gray-medium);
}

.color-gray-dark {
  color: var(--ep-color-gray-dark);
}

.bg-black {
  --olor-text: var(--ep-color-white);
  --olor-heading: var(--ep-color-white);
  --eading-label: var(--ep-color-white);
  --olor-button: var(--ep-color-white);
  --olor-button-hover: var(--ep-color-red-light);
  --olor-divider: var(--ep-color-white);
  background-color: var(--ep-color-black);
  color: var(--ep-color-white);
}

.bg-white {
  background-color: var(--ep-color-white);
}

.is-theme-light {
  --color-text: var(--color-white);
  --color-headings: var(--color-white);
  --color-button-bg: var(--color-white);
  --color-button-bg-hover: var(--color-blue);
  --color-button-text: var(--color-black);
  --color-button-text-hover: var(--color-white);
}

.is-theme-dark {
  --color-text: var(--color-black);
  --color-headings: var(--color-black);
  --color-button-bg: var(--color-white);
  --color-button-bg-hover: var(--color-blue);
  --color-button-text: var(--color-white);
  --color-button-text-hover: var(--color-white);
}

.font-regular {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 400;
}

.font-bold {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
}

.font-black {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 900;
}

.font-script {
  font-family: "Dancing Script", cursive;
  font-style: normal;
  font-weight: 400;
}

:root {
  --container-max-width: 1650px;
  --container-padding: clamp(2rem, 7.2727272727vw, 12rem);
  --content-max-width: 1350px;
  --grid-gap: clamp(2rem, 1.8181818182vw, 3rem);
  --grid-columns: 12;
  --grid-column: calc((100% - ((var(--grid-columns) - 1) * var(--grid-gap))) / var(--grid-columns));
  --grid-align-y: flex-start;
  --spacing-0: 0;
  --spacing-1: clamp(0.5rem, 0.6060606061vw, 1rem);
  --spacing-2: clamp(1rem, 1.2121212121vw, 2rem);
  --spacing-3: clamp(1.5rem, 1.8181818182vw, 3rem);
  --spacing-4: clamp(2rem, 2.4242424242vw, 4rem);
  --spacing-5: clamp(2.5rem, 3.0303030303vw, 5rem);
  --spacing-6: clamp(3rem, 3.6363636364vw, 6rem);
  --spacing-7: clamp(3.5rem, 4.2424242424vw, 7rem);
  --spacing-8: clamp(4rem, 4.8484848485vw, 8rem);
  --spacing-9: clamp(4.5rem, 5.4545454545vw, 9rem);
  --spacing-10: clamp(5rem, 6.0606060606vw, 10rem);
  --spacing-11: clamp(5.5rem, 6.6666666667vw, 11rem);
  --spacing-12: clamp(6rem, 7.2727272727vw, 12rem);
  --spacing-13: clamp(6.5rem, 7.8787878788vw, 13rem);
  --spacing-14: clamp(7rem, 8.4848484848vw, 14rem);
  --spacing-15: clamp(7.5rem, 9.0909090909vw, 15rem);
  --spacing-16: clamp(8rem, 9.696969697vw, 16rem);
  --spacing-17: clamp(8.5rem, 10.303030303vw, 17rem);
  --spacing-18: clamp(9rem, 10.9090909091vw, 18rem);
  --spacing-19: clamp(9.5rem, 11.5151515152vw, 19rem);
  --spacing-20: clamp(10rem, 12.1212121212vw, 20rem);
  --site-logo-color: var(--color-black);
  --site-header-height: clamp(9rem, 12.7272727273vw, 21rem);
  --header-fixed-height: 10rem;
  --site-logo-width: clamp(10rem, 12.1212121212vw, 20rem);
  --site-banner-height: 0px;
  --line-height-base: 1.6;
  --line-height-tight: 1.25;
  --line-height-loose: 2;
  --font-family-base: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-family-headings: var(--font-family-base);
  --font-weight-regular: 400;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-black: 900;
  --font-size-base: clamp(1.6rem, 1.0909090909vw, 1.8rem);
  --font-size-button: 1.6rem;
  --font-size-h1: clamp(3rem, 7.2727272727vw, 12rem);
  --font-size-h2: clamp(3rem, 3.0303030303vw, 5rem);
  --font-size-h3: clamp(2.3rem, 2.4242424242vw, 4rem);
  --font-size-h4: clamp(2rem, 1.4545454545vw, 2.4rem);
  --font-size-h5: clamp(2rem, 1.4545454545vw, 2.4rem);
  --font-size-h6: 1.8rem;
  --transition: 0.3s;
}

body {
  --wp--style--global--content-size: var(--content-max-width);
}

* {
  box-sizing: border-box;
}

*:focus-visible {
  outline-color: var(--focus-outline-color, #5E9ED6);
  outline-style: solid;
  outline-width: 1px;
}

html {
  font-size: 10px;
  overscroll-behavior: none;
  scroll-behavior: smooth;
  scroll-padding-top: var(--site-header-height);
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  color: var(--color-text);
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  overflow-x: hidden;
  overscroll-behavior: none;
}
body.no-scroll {
  overflow: hidden;
}

[href="#site-main"] {
  position: absolute;
  z-index: 1000;
}

.screen-reader-text,
.visuallyHidden,
.visuallyHidden-focusable:not(:focus):not(:focus-within) {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

a {
  transition: var(--transitions);
}

button,
[type=submit] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border-radius: 0;
  border: 0;
  color: currentColor;
  cursor: pointer;
  display: inline-block;
  font-family: inherit;
  padding: 0;
  text-decoration: none;
}

figure {
  margin: 0;
}

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

svg *:focus {
  outline: none;
}

picture {
  display: block;
}

p,
ol,
ul,
dl,
table,
blockquote {
  margin-block: 0.75em 1.25em;
}

strong {
  font-weight: var(--font-weight-bold);
}

address {
  font-style: normal;
}

.wp-block-separator.wp-block-separator,
hr {
  margin-top: 0;
  border: 0;
  border-top: solid 1px var(--color-borders);
}

.not-found {
  padding-block: var(--spacing-10);
  text-align: center;
}

.custom-core-block {
  max-width: var(--content-max-width);
  margin-inline: auto;
  padding-inline: var(--container-padding);
}

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

.visually-hidden-focusable:not(:focus, :focus-within) {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

@media (prefers-reduced-motion: reduce) {
  [data-animate] {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}
p {
  color: var(--color-text);
}
p a {
  color: inherit;
  text-decoration: none;
}
@media (hover: hover) {
  p a:hover {
    text-decoration: underline;
  }
}
p.lead {
  --color-heading: var(--color-black);
  font-size: clamp(2.2rem, 1.8181818182vw, 3rem);
  font-weight: var(--font-weight-regular);
}

ul,
ol {
  color: var(--color-text);
}

a {
  color: inherit;
  transition: var(--transition);
}
a:hover {
  color: inherit;
}

dl {
  color: var(--color-text);
}

.aligncenter {
  display: flex;
  justify-content: center;
  margin-inline: auto;
}

@media (min-width: 992px) {
  .alignright {
    float: right;
    margin: 0 0 0 1.5em;
  }
  .alignleft {
    float: left;
    margin: 0 1.5em 0 0;
  }
}
.has-text-align-left {
  text-align: left;
}

.has-text-align-center {
  text-align: center;
}
.has-text-align-center::before, .has-text-align-center::after {
  margin-inline: auto;
}

.has-text-align-right {
  text-align: center;
}

.is-layout-flex {
  display: flex;
}

.is-content-justification-left {
  justify-content: flex-start;
}

.is-content-justification-center {
  justify-content: center;
}

.is-content-justification-right {
  justify-content: flex-end;
}

.is-content-justification-space-between {
  justify-content: space-between;
}

.align-self-end {
  align-self: flex-end;
}

.heading-margin-bottom {
  margin-bottom: var(--spacing-4);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-style: normal;
  margin-block: 0;
  position: relative;
  text-wrap: balance;
  z-index: 1;
}
h1 strong,
h1 b,
h2 strong,
h2 b,
h3 strong,
h3 b,
h4 strong,
h4 b,
h5 strong,
h5 b,
h6 strong,
h6 b {
  font-weight: inherit;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  text-decoration: none;
}

[class*=has-h-] {
  color: var(--color-headings);
  font-family: var(--font-family-headings);
}

.has-h-1-font-size,
h1 {
  font-size: var(--font-size-h1);
  font-weight: var(--font-weight-black);
  line-height: 1.2;
}

.has-h-2-font-size,
h2 {
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-bold);
  line-height: 1.1;
}

.has-h-3-font-size,
h3 {
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
}

.has-h-4-font-size,
h4 {
  font-size: var(--font-size-h4);
  font-weight: var(--font-weight-bold);
  line-height: 1.3;
}

.has-h-5-font-size,
h5 {
  font-size: var(--font-size-h5);
  font-weight: var(--font-weight-bold);
  line-height: 1.3;
}

.has-h-6-font-size,
h6 {
  font-size: var(--font-size-h6);
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
}

.styled-headline {
  font-family: "Dancing Script", cursive;
  font-size: clamp(7rem, 10.9090909091vw, 18rem);
  font-weight: var(--font-weight-bold);
  line-height: 1.3;
}

/* Responsive image options */
.img-responsive {
  height: auto;
  width: 100%;
}

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

/* Crop element into circle */
.img-rounded {
  border-radius: 50%;
  overflow: hidden;
}

/* Oject cover */
.img-cover {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

.wp-element-button,
.btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border-radius: 0;
  border: 0;
  color: currentColor;
  cursor: pointer;
  display: inline-block;
  font-family: inherit;
  padding: 0;
  text-decoration: none;
  background-color: var(--color-button-bg);
  border-radius: 6rem;
  color: var(--color-button-text, currentColor);
  font-size: var(--font-size-button);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.05em;
  padding: clamp(1.5rem, 1.0303030303vw, 1.7rem) clamp(2rem, 1.8181818182vw, 3rem);
  text-align: center;
  text-transform: uppercase;
  transition: all var(--transition);
}
@media (max-width: 575px) {
  .wp-element-button,
  .btn {
    width: 100%;
  }
}
@media (hover: hover) {
  .wp-element-button:hover,
  .btn:hover {
    background-color: var(--color-button-bg-hover);
    color: var(--color-button-text-hover);
  }
}

.btn-secondary {
  --color-button-bg: transparent;
  --color-button-text: var(--color-black);
  --color-button-bg-hover: transparent;
  --color-button-text-hover: var(--color-black);
}

.btn-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding-left: 0;
  padding-right: 0;
}
.btn-back:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6667 12L6.66667 8L10.6667 4' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.btn-row {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .btn-row {
    flex-direction: row;
  }
}

fieldset,
input,
select,
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
}

input[type=text], input[type=number], input[type=email], input[type=search], input[type=url], input[type=tel] {
  background-color: var(--color-white);
  border-radius: 1rem;
  border: solid 0.1rem rgba(var(--color-black-rgb), 0.4);
  font-size: 1.8rem !important;
  height: 6rem;
  min-width: 7rem;
  padding: 0 2rem !important;
  width: 100%;
}
input[type=radio], input[type=checkbox] {
  accent-color: var(--color-accents);
}
input[type=range] {
  width: 100%;
  accent-color: var(--color-accents);
}
input[type=submit] {
  background-color: var(--color-button-bg);
  border-radius: 6rem;
  color: var(--color-button-text, currentColor);
  font-size: var(--font-size-button);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.05em;
  padding: clamp(1.5rem, 1.0303030303vw, 1.7rem) clamp(2rem, 1.8181818182vw, 3rem);
  text-align: center;
  text-transform: uppercase;
  transition: all var(--transition);
}
@media (max-width: 575px) {
  input[type=submit] {
    width: 100%;
  }
}
@media (hover: hover) {
  input[type=submit]:hover {
    background-color: var(--color-button-bg-hover);
    color: var(--color-button-text-hover);
  }
}

.gchoice,
.gfield--type-consent {
  /*Checkbox label*/
}
.gchoice label,
.gfield--type-consent label {
  cursor: pointer;
  display: inline-block;
  margin: 0;
  min-height: 24px;
  padding: 2px 0 2px 40px;
  position: relative;
  text-align: left;
  /*Combined*/
}
.gchoice label:before,
.gfield--type-consent label:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.gchoice label,
.gfield--type-consent label {
  /*Unchecked*/
}
.gchoice label:before,
.gfield--type-consent label:before {
  background: transparent;
  border: solid 2px var(--color-gray);
  height: 18px;
  left: 0;
  width: 18px;
}
.gchoice label a,
.gfield--type-consent label a {
  color: var(--color-black);
  display: inline-flex;
}
.gchoice input[type=radio],
.gchoice input[type=checkbox],
.gfield--type-consent input[type=radio],
.gfield--type-consent input[type=checkbox] {
  opacity: 0;
  position: absolute;
}
.gchoice input[type=radio] + label:before,
.gchoice input[type=checkbox] + label:before,
.gfield--type-consent input[type=radio] + label:before,
.gfield--type-consent input[type=checkbox] + label:before {
  border-radius: 50%;
}
.gchoice input[type=radio] + label,
.gchoice input[type=checkbox] + label,
.gfield--type-consent input[type=radio] + label,
.gfield--type-consent input[type=checkbox] + label {
  /* Outer circle - grey outline */
}
.gchoice input[type=radio] + label:before,
.gchoice input[type=checkbox] + label:before,
.gfield--type-consent input[type=radio] + label:before,
.gfield--type-consent input[type=checkbox] + label:before {
  background: transparent;
  border: solid 2px var(--color-gray);
}
.gchoice input[type=radio],
.gchoice input[type=checkbox],
.gfield--type-consent input[type=radio],
.gfield--type-consent input[type=checkbox] {
  /*Checked*/
}
.gchoice input[type=radio]:checked + label:before,
.gchoice input[type=checkbox]:checked + label:before,
.gfield--type-consent input[type=radio]:checked + label:before,
.gfield--type-consent input[type=checkbox]:checked + label:before {
  background: var(--color-blue);
  border-color: var(--color-blue);
}
.gchoice input[type=radio],
.gchoice input[type=checkbox],
.gfield--type-consent input[type=radio],
.gfield--type-consent input[type=checkbox] {
  /*Disabled*/
}
.gchoice input[type=radio]:disabled:hover + label,
.gchoice input[type=checkbox]:disabled:hover + label,
.gfield--type-consent input[type=radio]:disabled:hover + label,
.gfield--type-consent input[type=checkbox]:disabled:hover + label {
  cursor: not-allowed;
}
.gchoice input[type=radio]:disabled + label,
.gchoice input[type=checkbox]:disabled + label,
.gfield--type-consent input[type=radio]:disabled + label,
.gfield--type-consent input[type=checkbox]:disabled + label {
  opacity: 0.3;
}
.gchoice input[type=radio],
.gchoice input[type=checkbox],
.gfield--type-consent input[type=radio],
.gfield--type-consent input[type=checkbox] {
  /*Focused*/
}
.gchoice input[type=radio]:focus + label:before,
.gchoice input[type=checkbox]:focus + label:before,
.gfield--type-consent input[type=radio]:focus + label:before,
.gfield--type-consent input[type=checkbox]:focus + label:before {
  outline: 1px dotted rgba(var(--color-black-rgb), 0.3);
}
.gchoice input[type=checkbox] + label:before,
.gfield--type-consent input[type=checkbox] + label:before {
  border-radius: 0;
}

.ginput_container_date {
  position: relative;
}
.ginput_container_date .ui-datepicker-trigger {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}

select {
  background-color: var(--color-white);
  border-radius: 1rem;
  border: solid 0.1rem rgba(var(--color-black-rgb), 0.4);
  font-size: 1.8rem !important;
  height: 6rem;
  min-width: 7rem;
  padding: 0 2rem !important;
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%228%22%20viewBox%3D%220%200%2014%208%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.2929%200.292954C12.6834%20-0.0975701%2013.3164%20-0.0975701%2013.707%200.292954C14.0975%200.683479%2014.0975%201.31649%2013.707%201.70702L7.70696%207.70702C7.31643%208.09754%206.68342%208.09754%206.29289%207.70702L0.292893%201.70702C-0.0976311%201.31649%20-0.0976311%200.683479%200.292893%200.292954C0.683417%20-0.0975701%201.31643%20-0.0975701%201.70696%200.292954L6.99992%205.58592L12.2929%200.292954Z%22%20fill%3D%22%234D6E7D%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right 2rem center;
}

textarea {
  background-color: var(--color-white);
  border-radius: 1rem;
  border: solid 0.1rem rgba(var(--color-black-rgb), 0.4);
  font-size: 1.8rem !important;
  height: 6rem;
  min-width: 7rem;
  padding: 0 2rem !important;
  border: solid 0.1rem var(--color-borders);
  display: block;
  height: auto;
  padding: 2rem;
  resize: vertical;
  width: 100%;
}
textarea.small {
  height: 4em;
}

label.gfield_label {
  color: var(--color-blue);
  display: block;
  font-size: 1.8rem !important;
  font-weight: var(--font-weight-bold);
  margin-bottom: 2rem;
}

.gfield:not(.is-float-label) .gfield_label {
  color: var(--color-blue);
  display: block;
  font-size: 1.8rem !important;
  font-weight: var(--font-weight-bold);
  margin-bottom: 2rem;
}
.gfield.is-float-label {
  position: relative;
}
.gfield.is-float-label .gfield_label {
  background: transparent;
  color: rgba(var(--color-black-rgb), 0.7);
  font-size: 1.8rem;
  font-weight: var(--font-weight-regular) !important;
  left: 2rem;
  line-height: 1;
  margin: 0 !important;
  padding: 0 0 0 0 !important;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform-origin: left top;
  transform: translateY(-50%) scale(1);
  transition: transform 0.2s ease, color 0.2s ease, opacity 0.2s ease;
  z-index: 1;
}
.gfield.is-float-label:focus-within .gfield_label, .gfield.is-float-label:has(input:not(:placeholder-shown)) .gfield_label, .gfield.is-float-label:has(textarea:not(:placeholder-shown)) .gfield_label, .gfield.is-float-label:has(input:-webkit-autofill) .gfield_label, .gfield.is-float-label:has(textarea:-webkit-autofill) .gfield_label, .gfield.is-float-label:has(input:focus) .gfield_label, .gfield.is-float-label:has(textarea:focus) .gfield_label, .gfield.is-float-label:has(select:focus) .gfield_label, .gfield.is-float-label:has(select:valid) .gfield_label {
  color: rgba(var(--color-black-rgb), 0.5);
  font-weight: var(--font-weight-bold);
  opacity: 1;
  text-transform: uppercase;
  transform: translateY(-1.8rem) scale(0.7);
}
.gfield.is-float-label:focus-within input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:focus-within textarea,
.gfield.is-float-label:focus-within select, .gfield.is-float-label:has(input:not(:placeholder-shown)) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(input:not(:placeholder-shown)) textarea,
.gfield.is-float-label:has(input:not(:placeholder-shown)) select, .gfield.is-float-label:has(textarea:not(:placeholder-shown)) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(textarea:not(:placeholder-shown)) textarea,
.gfield.is-float-label:has(textarea:not(:placeholder-shown)) select, .gfield.is-float-label:has(input:-webkit-autofill) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(input:-webkit-autofill) textarea,
.gfield.is-float-label:has(input:-webkit-autofill) select, .gfield.is-float-label:has(textarea:-webkit-autofill) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(textarea:-webkit-autofill) textarea,
.gfield.is-float-label:has(textarea:-webkit-autofill) select, .gfield.is-float-label:has(input:focus) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(input:focus) textarea,
.gfield.is-float-label:has(input:focus) select, .gfield.is-float-label:has(textarea:focus) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(textarea:focus) textarea,
.gfield.is-float-label:has(textarea:focus) select, .gfield.is-float-label:has(select:focus) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(select:focus) textarea,
.gfield.is-float-label:has(select:focus) select, .gfield.is-float-label:has(select:valid) input:not([type=checkbox]):not([type=radio]),
.gfield.is-float-label:has(select:valid) textarea,
.gfield.is-float-label:has(select:valid) select {
  padding-top: 1em !important;
}

.gform_required_legend {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

@media (min-width: 641px) {
  .gform_fields {
    display: grid;
    gap: 30px;
  }
}
@media (min-width: 768px) {
  .gform_fields {
    grid-template-columns: repeat(2, 1fr);
  }
}
.gform_fields .gfield {
  margin-bottom: var(--spacing-3);
}
@media (min-width: 641px) {
  .gform_fields .gfield {
    margin-bottom: 0;
  }
}

.gfield--width-full {
  grid-column: 1/-1;
}

.gform_footer {
  padding-top: var(--spacing-4);
}
.gform_footer .cf-turnstile {
  margin-top: var(--spacing-1);
}

.gform_submission_error {
  font-size: var(--font-size-base);
  padding: 1em;
  margin-bottom: 1em;
  background: rgba(255, 255, 255, 0.2);
  border: solid 1px red;
  text-align: center;
}
.gform_submission_error:focus {
  outline: none;
}

.validation_message {
  color: red;
  padding-top: 0.25em;
}

.gfield_error input::-moz-placeholder, .gfield_error textarea::-moz-placeholder {
  color: gray;
}

.gfield_error input::placeholder,
.gfield_error textarea::placeholder {
  color: gray;
}

.gform_wrapper.custom-gf-block {
  margin-inline: auto;
  max-width: var(--container-max-width);
  padding-inline: var(--container-padding);
  padding-top: var(--spacing-8);
  padding-bottom: var(--spacing-8);
}
.gform_wrapper.custom-gf-block .gform_title {
  text-align: center;
}
.gform_wrapper.custom-gf-block .gf_progressbar_wrapper {
  margin-bottom: var(--spacing-2);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.gform_wrapper.custom-gf-block .gf_progressbar_wrapper .gf_progressbar {
  width: 100%;
  background: var(--color-gray);
  border-radius: 1rem;
}
.gform_wrapper.custom-gf-block .gf_progressbar_wrapper .gf_progressbar_title {
  text-align: center;
}
.gform_wrapper.custom-gf-block .gf_progressbar_wrapper .gf_progressbar_percentage {
  background: var(--color-blue);
  border-radius: 1rem;
}
.gform_wrapper.custom-gf-block .gf_progressbar_wrapper .gf_progressbar_percentage span {
  width: 100%;
  display: block;
  text-align: center;
  color: var(--color-white);
}
.gform_wrapper.custom-gf-block select {
  display: block;
  width: 100%;
}
.gform_wrapper.custom-gf-block .gfield--type-section,
.gform_wrapper.custom-gf-block .gfield--type-name,
.gform_wrapper.custom-gf-block .gfield--type-address,
.gform_wrapper.custom-gf-block .gfield--type-list {
  grid-column: 1/-1;
}
.gform_wrapper.custom-gf-block .gfield--type-section {
  padding-bottom: var(--spacing-2);
  border-bottom: solid 1px var(--color-gray);
}
@media (min-width: 641px) {
  .gform_wrapper.custom-gf-block .gfield--type-list .gfield_list .gform-grid-row {
    display: flex;
  }
}
.gform_wrapper.custom-gf-block .gfield--type-list.list-grid .gfield_list_header {
  display: none;
}
.gform_wrapper.custom-gf-block .gfield--type-list.list-grid .gfield_list_group_item:before {
  content: attr(data-label);
  font-size: var(--font-size-base);
}
@media (min-width: 641px) {
  .gform_wrapper.custom-gf-block .gfield--type-list.list-grid .gfield_list_group {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
  }
  .gform_wrapper.custom-gf-block .gfield--type-list.list-grid .gfield_list_group_item {
    grid-column: span 6;
    width: 100%;
    margin-left: 0;
  }
  .gform_wrapper.custom-gf-block .gfield--type-list.list-grid .gfield_list_icons {
    grid-column: span 12;
    width: 100%;
    justify-content: flex-end;
  }
}
.gform_wrapper.custom-gf-block .gfield--type-time .ginput_complex {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.gform_wrapper.custom-gf-block .gfield--type-time .ginput_complex .gfield_time_hour,
.gform_wrapper.custom-gf-block .gfield--type-time .ginput_complex .gfield_time_minute,
.gform_wrapper.custom-gf-block .gfield--type-time .ginput_complex .gfield_time_ampm {
  flex: 1;
}
@media (min-width: 768px) {
  .gform_wrapper.custom-gf-block .gform-grid-row {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
  }
}
.gform_wrapper.custom-gf-block .gform-grid-row {
  gap: 30px;
}
.gform_wrapper.custom-gf-block .gform-grid-row.gf_name_has_3 {
  grid-template-columns: repeat(3, 1fr);
}
.gform_wrapper.custom-gf-block .gform-grid-row.has-2-columns {
  grid-template-columns: repeat(2, 1fr);
}
.gform_wrapper.custom-gf-block .gform-grid-row .ginput_full {
  grid-column: span 12;
}
.gform_wrapper.custom-gf-block .gform-grid-row .ginput_left {
  grid-column: 1/7;
}
.gform_wrapper.custom-gf-block .gform-grid-row .ginput_right {
  grid-column: 7/13;
}
.gform_wrapper.custom-gf-block .gform-page-footer {
  margin-top: var(--spacing-4);
}
.gform_wrapper.custom-gf-block .gfield--type-html h1,
.gform_wrapper.custom-gf-block .gfield--type-html h2,
.gform_wrapper.custom-gf-block .gfield--type-html h3,
.gform_wrapper.custom-gf-block .gfield--type-html h4,
.gform_wrapper.custom-gf-block .gfield--type-html h5,
.gform_wrapper.custom-gf-block .gfield--type-html h6 {
  margin-bottom: var(--spacing-2);
}
.gform_wrapper.custom-gf-block .gform_next_button {
  background-color: var(--color-button-bg);
  border-radius: 6rem;
  color: var(--color-button-text, currentColor);
  font-size: var(--font-size-button);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.05em;
  padding: clamp(1.5rem, 1.0303030303vw, 1.7rem) clamp(2rem, 1.8181818182vw, 3rem);
  text-align: center;
  text-transform: uppercase;
  transition: all var(--transition);
}
@media (max-width: 575px) {
  .gform_wrapper.custom-gf-block .gform_next_button {
    width: 100%;
  }
}
@media (hover: hover) {
  .gform_wrapper.custom-gf-block .gform_next_button:hover {
    background-color: var(--color-button-bg-hover);
    color: var(--color-button-text-hover);
  }
}

/********************************
  Stuff we need from the base CSS
  ********************************/
@font-face {
  font-family: "gform-icons-theme";
  src: url("../../../../plugins/gravityforms/fonts/gform-icons-theme.woff2?a2cayk") format("woff2"), url("../../../../plugins/gravityforms/fonts/gform-icons-theme.ttf?a2cayk") format("truetype"), url("../../../../plugins/gravityforms/fonts/gform-icons-theme.woff?a2cayk") format("woff"), url("../../../../plugins/gravityforms/fonts/gform-icons-theme.svg?a2cayk#gform-icons-theme") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
/**
   Honeypot
   */
.gform_validation_container,
body .gform_wrapper .gform_validation_container,
body .gform_wrapper .gform_body .gform_fields .gfield.gform_validation_container,
body .gform_wrapper .gform_fields .gfield.gform_validation_container {
  display: none !important;
  left: -9000px;
  position: absolute !important;
}

/*
  * Hide screen reader text.
  *
  * Used in the basic.css front-end stylesheet.
  */
.gform_wrapper .screen-reader-text,
.gform_wrapper .hidden_label .gfield_label,
.gform_wrapper .hidden_sub_label {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.gform_wrapper button.screen-reader-text:focus {
  border: 0;
  clip: auto;
  clip-path: none;
  height: auto;
  margin: 0;
  position: static !important;
  width: auto;
}

/*
  * Date field.
  *
  * Used in the basic.css front-end stylesheet and admin-theme.css.
  */
.gform-theme-datepicker:not(.gform-legacy-datepicker) {
  background: #fff;
  border: 1px solid #d0d1d3;
  border-radius: 3px;
  box-shadow: 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.11), 0 0 0.25rem rgba(18, 25, 97, 0.0405344);
  color: #607382;
  font-size: 1.3rem;
  font-weight: 500;
  margin-top: 5px;
  padding: 18px 15px;
  width: auto;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) table,
.gform-theme-datepicker:not(.gform-legacy-datepicker) thead,
.gform-theme-datepicker:not(.gform-legacy-datepicker) tr,
.gform-theme-datepicker:not(.gform-legacy-datepicker) td,
.gform-theme-datepicker:not(.gform-legacy-datepicker) th {
  background: none;
  border: 0;
  margin: 0;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) td,
.gform-theme-datepicker:not(.gform-legacy-datepicker) th {
  padding: 5px;
  text-shadow: none;
  text-transform: none;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header {
  border: 0;
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin: 0 0 5px;
  padding: 0;
  position: relative;
  width: 100%;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next {
  align-items: center;
  background: none;
  border: 0;
  color: #607382;
  cursor: pointer;
  display: flex;
  font-family: gform-icons-theme !important;
  font-size: 24px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  height: 30px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  speak: never;
  text-decoration: none;
  top: -2px;
  transition: color 300ms ease-in-out, background-color 300ms ease-in-out, border-color 300ms ease-in-out;
  width: 30px;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev:focus,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev:hover,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next:focus,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next:hover {
  color: #2f4054;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev .ui-icon,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next .ui-icon {
  display: none;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev::before,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next::before {
  border: 0;
  height: auto;
  position: static;
  transform: none;
  width: auto;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev {
  left: 0;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-prev::before {
  content: "\e910";
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next {
  right: 0;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header .ui-datepicker-next::before {
  content: "\e91b";
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  background-image: url("../../../../plugins/gravityforms/images/theme/down-arrow.svg");
  background-position: 100% 50%;
  background-repeat: no-repeat;
  background-size: 24px 24px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #585e6a;
  cursor: pointer;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 500;
  height: auto;
  min-height: 0;
  padding: 0 22px 0 0;
  width: auto;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-header select.ui-datepicker-month {
  margin-right: 20px;
  -moz-text-align-last: right;
  text-align-last: right;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar span,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar a {
  font-weight: 400;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar th span {
  align-items: center;
  color: #2f4054;
  display: flex;
  font-size: 1.3rem;
  font-weight: 500;
  height: 40px;
  justify-content: center;
  width: 40px;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar td {
  font-size: 1.3rem;
  height: 50px;
  width: 50px;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default {
  align-items: center;
  background: none;
  border: 1px solid transparent;
  border-radius: 100%;
  box-shadow: none;
  color: #2f4054;
  display: flex;
  height: 40px;
  justify-content: center;
  text-decoration: none;
  transition: color 300ms ease-in-out, background-color 300ms ease-in-out, border-color 300ms ease-in-out;
  width: 40px;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default:hover,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default:focus {
  background: none;
  border-color: #607382;
  outline: none;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-default:active {
  background: #f2f3f5;
  border-color: #607382;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default {
  background: #607382;
  border-color: #607382;
  box-shadow: 0 2px 2px rgba(58, 58, 87, 0.0596411);
  color: #fff;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default:hover,
.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default:focus {
  border-color: #607382;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-disabled {
  background: none;
}

.gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar .ui-state-disabled .ui-state-default {
  align-items: center;
  background: #f2f3f5;
  border: 1px solid rgba(32, 32, 46, 0.079);
  border-radius: 100%;
  box-shadow: 0 2px 2px rgba(58, 58, 87, 0.0596411);
  color: #686e77;
  cursor: text;
  display: flex;
  height: 40px;
  justify-content: center;
  text-decoration: none;
  width: 40px;
}

html[dir=rtl] #ui-datepicker-div.gform-theme-datepicker[style] {
  right: auto !important;
}

/**
   File Uploads
   */
.gform_drop_area {
  background: rgba(0, 0, 0, 0.02);
  border: 1px dashed #ccc;
  border-radius: 4px;
  margin-bottom: 8px;
  padding: 32px;
  text-align: center;
}
.gform_drop_area::before {
  content: url("../assets/images/dragandrop.svg");
  display: block;
  margin: 0 0 10px;
}
.gform_drop_area .button {
  background-color: var(--color-button-bg);
  border-radius: 6rem;
  color: var(--color-button-text, currentColor);
  font-size: var(--font-size-button);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.05em;
  padding: clamp(1.5rem, 1.0303030303vw, 1.7rem) clamp(2rem, 1.8181818182vw, 3rem);
  text-align: center;
  text-transform: uppercase;
  transition: all var(--transition);
}
@media (max-width: 575px) {
  .gform_drop_area .button {
    width: 100%;
  }
}
@media (hover: hover) {
  .gform_drop_area .button:hover {
    background-color: var(--color-button-bg-hover);
    color: var(--color-button-text-hover);
  }
}

.gform_drop_instructions {
  display: block;
  margin-bottom: 8px;
}

.gform_delete,
.gform_delete_file {
  cursor: pointer;
  vertical-align: middle;
}

.gform_delete_file {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
}

.gfield_validation_message ul {
  margin: 16px 0;
  padding-left: 24px;
}

.gfield_validation_message ul:empty {
  display: none;
}

.ginput_preview {
  margin: 16px 0;
}

.gform_fileupload_rules {
  display: block;
  margin-top: 8px;
}

.gfield_signature_ui_container {
  clear: both;
}

.gfield_signature_container {
  max-width: 100%;
  position: relative;
}

.gfield_signature_container canvas {
  max-width: 100%;
}

.gfield_signature_image {
  max-width: 100%;
  position: relative;
}

.gfield_signature_image img {
  max-width: 100%;
}

.gfield_signature_reset_container svg.gfield_signature_reset_icon, .gfield_signature_reset_container svg.gform_signature_locked_reset, .gfield_signature_image svg.gfield_signature_reset_icon, .gfield_signature_image svg.gform_signature_locked_reset {
  cursor: pointer;
  opacity: 0.7;
  position: absolute;
  top: 5px;
}

.gfield_signature_reset_container svg.gfield_signature_reset_icon:hover, .gfield_signature_reset_container svg.gfield_signature_reset_icon:focus, .gfield_signature_reset_container svg.gform_signature_locked_reset:hover, .gfield_signature_reset_container svg.gform_signature_locked_reset:focus, .gfield_signature_image svg.gfield_signature_reset_icon:hover, .gfield_signature_image svg.gfield_signature_reset_icon:focus, .gfield_signature_image svg.gform_signature_locked_reset:hover, .gfield_signature_image svg.gform_signature_locked_reset:focus {
  opacity: 1;
}

.gfield_signature_reset_container svg.gfield_signature_reset_icon, .gfield_signature_image svg.gfield_signature_reset_icon {
  left: calc(100% - 29px);
}

.gfield_signature_reset_container svg.gform_signature_locked_reset, .gfield_signature_image svg.gform_signature_locked_reset {
  display: none;
  left: 5px;
}

.gfield_signature_image svg.gform_signature_locked_reset {
  display: block;
}

.gform_wrapper.gravity-theme .gfield_list_group, .gform_wrapper.gravity-theme .gfield_list_header {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  margin-bottom: 8px;
}

.gform_wrapper.gravity-theme .gfield_list_group:last-child {
  margin-bottom: 0;
}

.gform_wrapper.gravity-theme .gfield_header_item {
  word-break: break-word;
}

.gform_wrapper.gravity-theme .gfield_header_item, .gform_wrapper.gravity-theme .gfield_list_group_item {
  flex-grow: 1;
  width: 0;
}

.gform_wrapper.gravity-theme .gfield_header_item + .gfield_header_item:not(.gfield_header_item--icons), .gform_wrapper.gravity-theme .gfield_list_group_item + .gfield_list_group_item {
  margin-left: 2%;
}

.gform_wrapper.gravity-theme .gfield_list_group_item input, .gform_wrapper.gravity-theme .gfield_list_group_item select {
  width: 100%;
}

.gform_wrapper.gravity-theme .gfield_header_item--icons, .gform_wrapper.gravity-theme .gfield_list_icons {
  align-items: center;
  display: flex;
  flex: none;
  justify-content: center;
  width: 48px;
}

.gform_wrapper.gravity-theme .gfield_list_icons button {
  background: transparent url(../../../../plugins/gravityforms/images/list-add.svg);
  border: none;
  font-size: 0;
  height: 16px;
  opacity: 0.5;
  padding: 0;
  transition: opacity 0.5s ease-out;
  width: 16px;
}

.gform_wrapper.gravity-theme .gfield_list_icons button:focus, .gform_wrapper.gravity-theme .gfield_list_icons button:hover {
  opacity: 1;
  outline: 0;
}

.gform_wrapper.gravity-theme .gfield_list_icons button.delete_list_item {
  background-image: url(../../../../plugins/gravityforms/images/list-remove.svg);
  margin-left: 5px;
}

@media (max-width: 640px) {
  .gform_wrapper.gravity-theme .gfield_list_header {
    display: none;
  }
  .gform_wrapper.gravity-theme .gfield_list_group {
    border: 1px solid rgba(0, 0, 0, 0.2);
    display: block;
    margin-bottom: 16px;
    padding: 16px;
  }
  .gform_wrapper.gravity-theme .gfield_header_item, .gform_wrapper.gravity-theme .gfield_list_group_item {
    width: auto;
  }
  .gform_wrapper.gravity-theme .gfield_list_group:last-child {
    margin-bottom: 0;
  }
  .gform_wrapper.gravity-theme .gfield_list_group_item:not(:last-child) {
    margin-bottom: 8px;
  }
  .gform_wrapper.gravity-theme .gfield_list_group_item::before {
    content: attr(data-label);
    font-size: 14.992px;
  }
  .gform_wrapper.gravity-theme .gfield_list_icons {
    background-color: rgba(0, 0, 0, 0.1);
    line-height: 0;
    margin: 16px -16px -16px;
    padding: 12px 16px;
    text-align: left;
    width: auto;
  }
  .gform_wrapper.gravity-theme .gfield_header_item + .gfield_header_item:not(.gfield_header_item--icons), .gform_wrapper.gravity-theme .gfield_list_group_item + .gfield_list_group_item {
    margin-left: 0;
  }
}
html[dir=rtl] .gform_wrapper.gravity-theme .gfield_header_item + .gfield_header_item:not(.gfield_header_item--icons), html[dir=rtl] .gform_wrapper.gravity-theme .gfield_list_group_item + .gfield_list_group_item {
  margin-left: 0;
  margin-right: 16px;
}

@media (max-width: 640px) {
  html[dir=rtl] .gform_wrapper.gravity-theme .gfield_header_item + .gfield_header_item:not(.gfield_header_item--icons), html[dir=rtl] .gform_wrapper.gravity-theme .gfield_list_group_item + .gfield_list_group_item {
    margin-right: 0;
  }
}
html[dir=rtl] .gform_wrapper.gravity-theme .gfield_list_icons button.delete_list_item {
  margin-left: 0;
  margin-right: 5px;
}

.modal,
.modal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.modal {
  z-index: 10000;
  display: flex;
}
.modal[aria-hidden=true] {
  display: none;
}

.modal-overlay {
  background-color: rgba(0, 0, 0, 0.8);
}

.modal-content {
  margin: auto;
  z-index: 2;
  position: relative;
  background-color: var(--color-black);
  border-radius: 0.5rem;
  padding: var(--spacing-4);
}
.modal-content > button {
  position: absolute;
  right: 15px;
  top: 15px;
}

.video-modal .modal-content {
  padding: 0;
  max-height: 90vh;
}
.video-modal .modal-content button {
  right: -25px;
  top: -25px;
}
@media (hover: hover) {
  .video-modal .modal-content button:hover {
    color: var(--color-white);
  }
}
.video-modal iframe {
  display: block;
  width: min(80vw, 1000px);
  height: auto;
  aspect-ratio: 500/281;
}

@keyframes fade-in {
  from {
    opacity: 0;
  }
}
@keyframes slide-up {
  from {
    transform: translateY(10%);
  }
}
.dialog-overlay {
  animation: fade-in 200ms both;
}

/**
   * 1. Add an animation delay equal to the overlay animation duration to
   *    wait for the overlay to appear before animation in the dialog.
   */
.modal-content {
  animation: fade-in 400ms 200ms both, slide-up 400ms 200ms both;
}

.event-card {
  grid-column: span 12;
}
@media (min-width: 992px) {
  .event-card {
    grid-column: span 5;
  }
}
@media (min-width: 768px) {
  .event-card.is-event .feature-body,
  .event-card.is-event .feature-footer {
    padding-left: 9rem;
  }
}
.event-card .feature-body {
  margin-block: var(--spacing-3);
  position: relative;
}
.event-card .feature-img {
  position: relative;
}
.event-card .badge {
  background: var(--color-peach);
  border-bottom-right-radius: 2rem;
  left: 0;
  padding: 0.6rem var(--spacing-3);
  position: absolute;
  text-transform: uppercase;
  top: 0;
  z-index: 1;
}
.event-card .feature-date {
  align-items: center;
  background: var(--color-blue);
  border-top-right-radius: 0.5rem;
  bottom: calc(100% + 1.5rem);
  color: var(--color-white);
  display: flex;
  flex-direction: column;
  height: 10rem;
  justify-content: center;
  left: 0;
  padding: 1rem;
  position: absolute;
  text-align: center;
  width: 10rem;
}
@media (min-width: 768px) {
  .event-card .feature-date {
    border-radius: 0.5rem;
    bottom: auto;
    height: 7rem;
    top: 0;
    width: 7rem;
  }
}
.event-card .month {
  font-size: 2rem;
  line-height: 1;
}
@media (min-width: 768px) {
  .event-card .month {
    font-size: 1.4rem;
  }
}
.event-card .day {
  font-size: 6rem;
  font-weight: var(--font-weight-bold);
  line-height: 1;
}
@media (min-width: 768px) {
  .event-card .day {
    font-size: 4rem;
  }
}
.event-card .date {
  --color-text: var(--color-blue);
  font-weight: var(--font-weight-bold);
}

.container {
  margin-inline: auto;
  max-width: var(--container-max-width);
  padding-inline: var(--container-padding);
}

.grid {
  align-items: var(--grid-align-y);
  display: grid;
  gap: var(--grid-gap);
  grid-template-columns: repeat(var(--grid-columns, 12), 1fr);
}

.site-footer {
  --color-text: var(--color-white);
  background: var(--color-black);
  color: var(--color-white);
  padding-block: var(--spacing-5);
  text-align: center;
}
@media (min-width: 992px) {
  .site-footer {
    text-align: left;
  }
}
.site-footer .location {
  grid-column: span 12;
}
@media (min-width: 992px) {
  .site-footer .location {
    grid-column: 1/span 3;
  }
}
.site-footer .location strong {
  display: block;
}
.site-footer .form {
  grid-column: span 12;
  text-align: center;
  position: relative;
}
@media (min-width: 992px) {
  .site-footer .form {
    grid-row: 1;
    grid-column: 5/span 4;
  }
}
.site-footer .form .cf-turnstile {
  position: absolute;
  top: 100%;
  left: 0;
}
.site-footer .info {
  grid-column: span 12;
}
@media (min-width: 992px) {
  .site-footer .info {
    grid-column: 10/span 3;
  }
}
.site-footer p {
  margin: 0;
}
.site-footer a {
  font-weight: var(--font-weight-regular);
}
.site-footer form {
  --color-button-bg: var(--color-black);
  --color-button-text: var(--color-white);
  background: var(--color-gray);
  border-radius: 6rem;
  display: flex;
  height: 7rem;
  max-width: 450px;
  padding: 0.5rem;
  margin: 1rem auto 0;
}
.site-footer .gform_wrapper.gravity-theme .gform-body {
  flex: 1;
}
.site-footer .gform_wrapper.gravity-theme .gform_footer {
  margin: 0;
  padding: 0;
}
.site-footer .gform_wrapper.gravity-theme .gfield_label {
  color: var(--color-black);
  margin: 0;
}
.site-footer .gform_wrapper.gravity-theme input[type=email] {
  background: transparent;
  border-radius: none;
  border: none;
}
.site-footer .gform_wrapper.gravity-theme input[type=email]:focus, .site-footer .gform_wrapper.gravity-theme input[type=email]:focus-visible {
  outline: none;
}
.site-footer .gform_wrapper.gravity-theme .gform_button {
  align-self: center;
  height: 100%;
  margin: 0;
  padding-inline: 2rem;
}

.footer-container {
  margin-inline: auto;
  max-width: var(--container-max-width);
  padding-inline: var(--container-padding);
  align-items: var(--grid-align-y);
  display: grid;
  gap: var(--grid-gap);
  grid-template-columns: repeat(var(--grid-columns, 12), 1fr);
}

.footer-social {
  align-items: center;
  display: flex;
  gap: var(--spacing-3);
  justify-content: center;
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
}
@media (min-width: 992px) {
  .footer-social {
    justify-content: flex-start;
  }
}
.footer-social a {
  align-items: center;
  color: inherit;
  display: flex;
  justify-content: center;
  text-decoration: none;
  transition: var(--transition);
}
.footer-social a:hover {
  transform: scale(1.2);
}

.copyright {
  grid-column: span 12;
  margin: 0;
}

:root {
  --header-fixed-height: 10rem;
  --header-fade-duration: 220ms;
  --header-fade-ease: ease-out;
}

.site-header {
  background: transparent;
  height: var(--site-header-height);
  min-height: var(--site-header-min-height, 9rem);
}
@media (prefers-reduced-motion: reduce) {
  .site-header {
    transition: none;
  }
}
.site-header.header-fixed {
  height: var(--header-fixed-height, 10rem);
  inset-inline: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: var(--header-offset, 0);
  visibility: hidden;
  will-change: opacity;
  z-index: 1000;
}
.site-header.header-fixed .title {
  display: none;
}
.site-header.header-fixed.is-visible {
  background: var(--color-black);
  opacity: 1;
  pointer-events: auto;
  position: fixed;
  transition: opacity 0.6s;
  visibility: visible;
}
.site-header.header-overlay {
  inset-inline: 0;
  position: absolute;
  top: var(--header-top, 0);
  width: 100%;
  z-index: 999;
}
.site-header.header-light {
  --site-logo-color: var(--color-white);
  --color-menu-item: var(--color-white);
  --color-menu-item-bg: rgba(var(--color-blue-rgb), .5);
  --color-button-bg: var(--color-white);
  --color-button-text: var(--color-black);
  --color-button-text-hover: var(--color-white);
}
.site-header.header-dark {
  --site-logo-color: var(--color-black);
  --color-menu-item: var(--color-black);
  --color-menu-item-bg: var(--color-blue-light);
  --color-button-bg: var(--color-black);
  --color-button-text: var(--color-white);
  --color-button-text-hover: var(--color-white);
}

.header-container {
  margin-inline: auto;
  max-width: var(--container-max-width);
  padding-inline: var(--container-padding);
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: space-between;
}

.site-logo {
  color: var(--site-logo-color);
  display: block;
  height: auto;
  min-width: var(--site-logo-min-width, 10rem);
  width: var(--site-logo-width);
  z-index: 1;
}
.site-logo:hover {
  color: var(--site-logo-color);
}

.primary-nav {
  align-items: center;
  -moz-column-gap: clamp(0rem, 1.8181818182vw, 3rem);
       column-gap: clamp(0rem, 1.8181818182vw, 3rem);
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0;
  row-gap: 5rem;
}
@media (min-width: 992px) {
  .primary-nav {
    flex-direction: row;
  }
}
.primary-nav .menu-item a {
  background: transparent;
  border-radius: 0.5rem;
  color: var(--color-menu-item);
  font-size: 1.6rem;
  font-weight: var(--font-weight-regular);
  letter-spacing: 0.05em;
  padding: 0.6rem 1rem 0.7rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: background var(--transition);
}
@media (min-width: 992px) {
  .primary-nav .menu-item a {
    font-size: clamp(1.5rem, 0.9696969697vw, 1.6rem);
  }
}
.primary-nav .menu-item.btn {
  padding-inline: 2rem;
}
.primary-nav .menu-item.btn a {
  color: inherit;
  transition: none;
}
@media (hover: hover) {
  .primary-nav .menu-item:not(.btn):hover a {
    background: var(--color-menu-item-bg);
  }
}
.primary-nav .menu-item.current-menu-item:not(.btn) a {
  background: var(--color-menu-item-bg);
}

@media (max-width: 991px) {
  .site-navigation {
    align-items: center;
    background: var(--color-black);
    display: flex;
    flex-direction: column;
    inset: 0;
    justify-content: center;
    opacity: 0;
    position: fixed;
    transition: opacity var(--transition);
    visibility: hidden;
    will-change: auto;
  }
  .site-navigation.show {
    opacity: 1;
    visibility: visible;
  }
}

.menu-toggle {
  align-items: center;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  margin-left: auto;
  opacity: 1;
  padding: 0;
  position: relative;
  transition: var(--transition);
  visibility: visible;
  z-index: 100;
}
@media (min-width: 992px) {
  .menu-toggle {
    display: none;
  }
}

.toggle-icons {
  background: transparent;
  border-bottom: 2px solid var(--color-white);
  border-top: 2px solid var(--color-white);
  color: var(--color-white);
  display: block;
  font-size: 0;
  height: 1.4rem;
  margin: 0 auto;
  position: relative;
  transition: var(--transition);
  width: 2rem;
}
.toggle-icons:before, .toggle-icons:after {
  background: var(--color-white);
  content: "";
  display: block;
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: var(--transition);
  width: 100%;
}

.menu-open .site-navigation {
  opacity: 1;
  visibility: visible;
}
.menu-open .toggle-icons {
  border-color: transparent;
}
.menu-open .toggle-icons:before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.menu-open .toggle-icons:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.menu-open .header-fixed {
  will-change: auto;
}

.site-banner {
  --color-text: var(--color-white);
  align-items: center;
  background: var(--color-blue);
  display: flex;
  justify-content: center;
  height: 5rem;
  padding: 1rem 2rem;
  position: relative;
  text-align: center;
  z-index: 1000;
}
.site-banner p {
  margin: 0;
}
.site-banner a {
  font-weight: var(--font-weight-regular);
}

.has-site-banner {
  --site-banner-height: 5rem;
}

.page-template-page-legal main .container {
  max-width: 60ch;
}
.page-template-page-legal .page-content {
  max-width: var(--content-max-width);
  margin-inline: auto;
}

body.single-event .page-header {
  margin-bottom: var(--spacing-4);
  margin-top: var(--spacing-4);
}
body.single-event .entry-content {
  margin-bottom: var(--spacing-8);
}
body.single-event .featured-image {
  grid-column: span 12;
}
@media (min-width: 992px) {
  body.single-event .featured-image {
    grid-column: span 5;
  }
}
body.single-event .block-body {
  grid-column: span 12;
}
@media (min-width: 992px) {
  body.single-event .block-body {
    grid-column: span 7;
  }
}
body.single-event .block-body .event-details {
  color: var(--color-blue);
}
body.single-event .block-body p:first-child {
  margin-top: 0;
}

.events-list {
  margin-bottom: var(--spacing-4);
}
.events-list .event-card {
  margin-bottom: var(--spacing-4);
}
@media (min-width: 1200px) {
  .events-list .event-card:nth-child(odd) {
    grid-column: 2/7;
  }
  .events-list .event-card:nth-child(even) {
    grid-column: 7/12;
  }
}
@media (min-width: 768px) {
  .events-list .event-card {
    grid-column: span 6;
  }
}
@media (min-width: 576px) {
  .events-list .event-card {
    max-width: 570px;
  }
}
