/* stylelint-disable-next-line wrap-rem-on-px/wrap-rem-on-px */
:root {
  --font-family-sans: "Neue Helvetica", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --primary-font: var(--font-family-sans);
}

@font-face {
  font-family: "Neue Helvetica";
  src: url("../../css/fonts/NeueHelvetica55Roman.woff2") format("woff2"), url("../../css/fonts/NeueHelvetica55Roman.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Helvetica";
  src: url("../../css/fonts/NeueHelvetica65Medium.woff2") format("woff2"), url("../../css/fonts/NeueHelvetica65Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Helvetica";
  src: url("../../css/fonts/NeueHelvetica75Bold.woff2") format("woff2"), url("../../css/fonts/NeueHelvetica75Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans Symbols";
  src: url("../../css/fonts/NotoSansSymbols-Regular.woff2") format("woff2"), url("../../css/fonts/NotoSansSymbols-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/* ===================================
   Brand Palette
=================================== */
:root {
  --black: #000000;
  --white: #ffffff;
  --dark-purple: #20104a;
  --purple: #4b25b0;
  --medium-purple: #350f9a;
  --light-purple: #975fe4;
  --grey-slate: #4a5565;
  --grey-dark: #1e2939;
  --grey-darker: #101828;
  --grey: #364153;
  --light-grey: #9b9b9b;
  --grey-lighter: #d1d5dc;
  --white-10: rgba(255, 255, 255, 0.1);
  --white-30: rgba(255, 255, 255, 0.3);
  --black-10: rgba(0, 0, 0, 0.1);
  --primary-200: #dcdcde;
  --primary-dark: #1e2939;
  --primary-dark-100: #f0f0f1;
}

/* stylelint-disable-next-line wrap-rem-on-px/wrap-rem-on-px */
/* stylelint-disable wrap-rem-on-px/wrap-rem-on-px */
/* stylelint-enable wrap-rem-on-px/wrap-rem-on-px */
/*
USAGE:
font-size: fluid(12, 62); : from rem(12)@380px to  rem(62)@1440px
gap: fluid(10, 33, 992);  : from rem(10)@991px to  rem(33)@1440px
margin-right: fluid(32, 65, 320, 2560);  : from rem(32)@320px to  rem(65)@2560px
*/
/*
AUTOFILL

USAGE:
@include mixin.autofill(background-color, text-color);
@include mixin.autofill;

Note: Call this mixin in the wrapper or container to where you intend to manipulate the
      default chrome autofill styles for input, textarea and select elements.
*/
/* stylelint-disable */
/* stylelint-enable */
.l-h1-v1 {
  font-size: 3.8125rem;
  font-weight: 700;
  line-height: 1;
}

.l-h1-v2 {
  font-size: 3.3125rem;
  font-weight: 700;
  line-height: 1;
}

@media screen and (min-width:1199px) {
  .l-h1-v2 {
    font-size: 8.4375rem;
    font-weight: 700;
    line-height: 1;
  }
}
.l-h2-v1 {
  font-size: 2.4375rem;
  font-weight: 400;
  line-height: 1.2;
}

@media screen and (min-width:1199px) {
  .l-h2-v1 {
    font-size: 3.8125rem;
    font-weight: 400;
    line-height: 1;
  }
}
.l-h2-v2 {
  font-size: 1.9375rem;
  font-weight: 500;
  line-height: 1.2;
}

@media screen and (min-width:1199px) {
  .l-h2-v2 {
    font-size: 3.8125rem;
    font-weight: 500;
    line-height: 1;
  }
}
.l-h2-v3 {
  font-size: 1.9375rem;
  font-weight: 700;
  line-height: 1.2;
}

@media screen and (min-width:1199px) {
  .l-h2-v3 {
    font-size: 3.0625rem;
    font-weight: 700;
    line-height: 1.2;
  }
}
.l-h3 {
  font-size: 2.4375rem;
  font-weight: 700;
  line-height: 1.2;
}

.l-h4 {
  font-size: 1.5625rem;
  font-weight: 700;
  line-height: 1.2;
}

@media screen and (min-width:1199px) {
  .l-h4 {
    font-size: 1.9375rem;
    font-weight: 700;
    line-height: 1.2;
  }
}
.l-body-lg {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
}

.l-body {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
}

.l-body-sm {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
}

.l-button {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03rem;
}

.l-eyebrow {
  font-size: 1.5625rem;
  font-weight: 400;
  line-height: 1.2;
}

/* stylelint-disable */
*,
::before,
::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

hr {
  height: 0;
  color: inherit;
}

abbr[title] {
  text-decoration: underline dotted;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  text-indent: 0;
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

:-moz-focusring {
  outline: 1px dotted ButtonText;
}

:-moz-ui-invalid {
  box-shadow: none;
}

legend {
  padding: 0;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

address {
  font-style: normal;
}

[hidden] {
  display: none !important;
}

input {
  appearance: none;
}

input,
textarea,
select {
  backdrop-filter: unset;
}

a,
button {
  cursor: pointer;
}

a.is-unclickable {
  cursor: default;
}

/* stylelint-enable */
html,
body {
  min-width: 20rem;
  background-color: var(--white);
  color: var(--grey-dark);
  font-family: var(--primary-font);
  font-size: 1rem;
  scroll-behavior: smooth;
}
html *,
body * {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  text-size-adjust: none;
}

h1, .l-h1,
h2, .l-h2,
h3, .l-h3,
h4, .l-h4,
h5, .l-h5,
h6 {
  margin: 0 0 1.25rem;
  font-weight: 700;
  color: var(--black);
}

h1,
.l-h1 {
  font-size: 3.8125rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width:1199px) {
  h1,
  .l-h1 {
    font-size: 2.4375rem;
    font-weight: 700;
    line-height: 1.2;
  }
}

h2,
.l-h2 {
  font-size: 2.4375rem;
  font-weight: 400;
  line-height: 1.2;
}
@media screen and (min-width:1199px) {
  h2,
  .l-h2 {
    font-size: 3.8125rem;
    font-weight: 400;
    line-height: 1;
  }
}

h3,
.l-h3 {
  font-size: 2.4375rem;
  font-weight: 700;
  line-height: 1.2;
}

h4,
.l-h4 {
  font-size: 1.5625rem;
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (min-width:1199px) {
  h4,
  .l-h4 {
    font-size: 1.9375rem;
    font-weight: 700;
    line-height: 1.2;
  }
}

h5,
.l-h5 {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
}

h6,
.l-h6 {
  font-size: 1.5625rem;
  font-weight: 400;
  line-height: 1.2;
}

ul,
ol {
  padding: 0;
  margin: 0;
}
ul li,
ol li {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
  list-style-position: inside;
}

ol li {
  list-style: decimal;
}

p,
.l-text-regular {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
  margin: 0 0 1.25rem;
}
p:last-of-type,
.l-text-regular:last-of-type {
  margin-bottom: 0;
}
p:empty,
.l-text-regular:empty {
  display: none;
}

big {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
}

small {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
}

a {
  color: inherit;
  text-decoration-color: inherit;
  text-decoration-style: solid;
  text-decoration-thickness: 0.0625rem;
  text-underline-offset: 0.125rem;
  transition: all 0.3s ease-in-out;
}
a:active {
  color: var(--dark-purple);
  text-decoration-color: inherit;
}
a:hover {
  color: var(--dark-purple);
  text-decoration-color: transparent;
}
a:focus {
  outline: 0.125rem solid var(--dark-purple);
  outline-offset: 0.125rem;
}
a:focus-visible {
  outline: 0.125rem solid var(--dark-purple);
  outline-offset: 0.125rem;
}
a:focus:not(:focus-visible) {
  outline: none;
}

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

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

.skip-link {
  position: absolute;
  z-index: 10000;
  top: -2.5rem;
  left: 0;
  padding: 0.5rem 1rem;
  background: var(--dark-purple);
  color: var(--white);
  text-decoration: none;
}
.skip-link:focus {
  top: 0;
  color: var(--white);
}
.skip-link:hover {
  color: var(--white);
}
.skip-link:hover {
  color: var(--white);
}

button:focus,
input:focus,
select:focus,
textarea:focus {
  outline: 0.125rem solid var(--dark-purple);
  outline-offset: 0.125rem;
}
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 0.125rem solid var(--dark-purple);
  outline-offset: 0.125rem;
}
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible) {
  outline: none;
}

.generic {
  --text-color: var(--dark-purple);
  --hover-color: var(--purple);
}
.generic h1,
.generic h2,
.generic h3,
.generic h4,
.generic h5,
.generic h6 {
  margin: 0 0 1rem;
  color: var(--text-color);
}
.generic header {
  margin-bottom: 2rem;
}
.generic p,
.generic address,
.generic hr,
.generic pre,
.generic code {
  margin-bottom: 1.4375rem;
}
.generic li {
  margin-bottom: clamp(0.6875rem, 0.7619vw + 0.501785625rem, 1.1875rem);
}
.generic p,
.generic li {
  color: var(--text-color);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
}
.generic p:last-of-type,
.generic li:last-of-type {
  margin-bottom: 0;
}
.generic p:empty,
.generic li:empty {
  display: none;
}
.generic b,
.generic strong {
  font-weight: 700;
}
.generic time {
  color: var(--text-color);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
}
.generic ul {
  margin: clamp(1.1875rem, 0.57143vw + 1.048214375rem, 1.5625rem) 0;
}
.generic ul li {
  position: relative;
  padding-left: 1.4375rem;
  list-style: none;
}
@media screen and (min-width:1199px) {
  .generic ul li {
    padding-left: 1.875rem;
  }
}
.generic ul li::before {
  position: absolute;
  top: 0.6875rem;
  left: 0.6875rem;
  display: block;
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background-color: var(--text-color);
  content: "";
}
@media screen and (min-width:1199px) {
  .generic ul li::before {
    top: 1.1875rem;
    left: 0.875rem;
    width: 0.1875rem;
    height: 0.1875rem;
  }
}
.generic ol {
  padding-left: 1.625rem;
  margin: 2rem 0;
}
.generic ol li {
  list-style: unset;
}
.generic ol li::marker {
  padding-right: 0.625rem;
  font-weight: 600;
}
.generic blockquote {
  position: relative;
  padding: 1.5rem;
  border-radius: 0.3125rem;
  margin: 2rem 0;
  background-color: rgba(163, 208, 150, 0.2);
  color: var(--text-color);
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 500;
  line-height: 144%;
}
@media screen and (min-width:991px) {
  .generic blockquote {
    margin-left: clamp(4rem, 4.28571vw + 2.955356875rem, 6.8125rem);
  }
}
.generic blockquote::before {
  position: absolute;
  top: 0;
  left: -5.3125rem;
  display: none;
  width: 3.5625rem;
  height: 3.25rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='61' height='56' viewBox='0 0 61 56' fill='none'%3E%3Cpath d='M57.9834 0.890625C58.3787 0.890665 58.8719 0.973676 59.249 1.35352C59.6247 1.73189 59.706 2.22459 59.7061 2.61914V12.082C59.706 12.4766 59.6247 12.9692 59.249 13.3477C58.8718 13.7275 58.3787 13.8105 57.9834 13.8105C55.6592 13.8105 53.9023 14.7737 52.6875 16.6045C51.4466 18.4747 50.7342 21.314 50.7275 25.0908H57.9834C58.3786 25.0909 58.8719 25.1731 59.249 25.5527C59.6248 25.9313 59.7061 26.4247 59.7061 26.8193V52.9453C59.706 53.3399 59.6247 53.8326 59.249 54.2109C58.8719 54.5908 58.3787 54.6738 57.9834 54.6738H37.5312C37.1359 54.6738 36.6419 54.5909 36.2646 54.2109C35.8892 53.8326 35.8087 53.3397 35.8086 52.9453V26.9863C35.8087 19.3942 37.5891 13.164 41.2227 8.28418C44.8428 3.30982 50.5523 0.890625 57.9834 0.890625ZM24.8711 12.082C24.871 12.5438 24.7347 13.0358 24.3271 13.3916C23.9429 13.727 23.4641 13.8105 23.0654 13.8105C20.7412 13.8105 18.9854 14.7737 17.7705 16.6045C16.5295 18.4747 15.8163 21.3138 15.8096 25.0908H23.0654C23.473 25.0908 23.9422 25.1785 24.3184 25.5303C24.6809 25.8695 24.809 26.3187 24.8623 26.6943L24.8711 26.7568V52.9453C24.871 53.4071 24.7347 53.8991 24.3271 54.2549C23.9429 54.5903 23.4641 54.6738 23.0654 54.6738H2.69629C2.28883 54.6738 1.81934 54.586 1.44336 54.2344C1.08086 53.8953 0.953706 53.4459 0.900391 53.0703L0.890625 53.0078V26.9863C0.890689 19.3943 2.67119 13.164 6.30469 8.28418C9.9248 3.30974 15.6343 0.890625 23.0654 0.890625C23.4729 0.890629 23.9423 0.978414 24.3184 1.33008C24.681 1.6692 24.809 2.11849 24.8623 2.49414L24.8711 2.55664V12.082Z' stroke='%2300A400' stroke-width='1.78226'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 3.5625rem 3.25rem;
  content: "";
}
@media screen and (min-width:991px) {
  .generic blockquote::before {
    display: block;
  }
}
.generic iframe,
.generic figure,
.generic video {
  margin-bottom: 2rem;
}
.generic iframe img,
.generic figure img,
.generic video img {
  max-width: 100%;
  background-color: var(--neutral-gray);
}
.generic iframe figcaption,
.generic figure figcaption,
.generic video figcaption {
  margin-top: 0.3125rem;
  color: var(--text-color);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
}
.generic iframe {
  width: 100%;
  border: none;
  aspect-ratio: 16/9;
}
.generic ul + h2,
.generic p + h2 {
  margin-top: clamp(2.5rem, 4.57143vw + 1.385714375rem, 5.5rem);
}
.generic p + h1,
.generic p + h3,
.generic p + h4,
.generic p + h5,
.generic p + h6 {
  margin-top: 2rem;
}
.generic code {
  display: block;
  max-height: 18.75rem;
  padding: 1.25rem;
  border-radius: 0.375rem;
  background-color: var(--neutral-gray);
  overflow-x: auto;
  white-space: pre;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
.u-text-black {
  color: var(--black);
}

.u-bg-black {
  background-color: var(--black);
}

.u-text-white {
  color: var(--white);
}

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

.u-text-dark-purple {
  color: var(--dark-purple);
}

.u-bg-dark-purple {
  background-color: var(--dark-purple);
}

.u-text-purple {
  color: var(--purple);
}

.u-bg-purple {
  background-color: var(--purple);
}

.u-text-medium-purple {
  color: var(--medium-purple);
}

.u-bg-medium-purple {
  background-color: var(--medium-purple);
}

.u-text-light-purple {
  color: var(--light-purple);
}

.u-bg-light-purple {
  background-color: var(--light-purple);
}

.u-text-grey-slate {
  color: var(--grey-slate);
}

.u-bg-grey-slate {
  background-color: var(--grey-slate);
}

.u-text-grey-dark {
  color: var(--grey-dark);
}

.u-bg-grey-dark {
  background-color: var(--grey-dark);
}

.u-text-grey-darker {
  color: var(--grey-darker);
}

.u-bg-grey-darker {
  background-color: var(--grey-darker);
}

.u-text-grey {
  color: var(--grey);
}

.u-bg-grey {
  background-color: var(--grey);
}

.u-text-light-grey {
  color: var(--light-grey);
}

.u-bg-light-grey {
  background-color: var(--light-grey);
}

.u-text-grey-lighter {
  color: var(--grey-lighter);
}

.u-bg-grey-lighter {
  background-color: var(--grey-lighter);
}

.u-text-white-10 {
  color: var(--white-10);
}

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

.u-text-white-30 {
  color: var(--white-30);
}

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

.u-text-black-10 {
  color: var(--black-10);
}

.u-bg-black-10 {
  background-color: var(--black-10);
}

.u-text-primary-200 {
  color: var(--primary-200);
}

.u-bg-primary-200 {
  background-color: var(--primary-200);
}

.u-text-primary-dark {
  color: var(--primary-dark);
}

.u-bg-primary-dark {
  background-color: var(--primary-dark);
}

.u-text-primary-dark-100 {
  color: var(--primary-dark-100);
}

.u-bg-primary-dark-100 {
  background-color: var(--primary-dark-100);
}

.u-radius-none {
  border-radius: 0;
}

.u-radius-round {
  border-radius: 100vw;
}

.generic--content-page h1, .generic--content-page h2, .generic--content-page h3, .generic--content-page h4, .generic--content-page h5, .generic--content-page h6 {
  font-weight: 500;
  line-height: 1.2;
}
.generic--content-page p {
  margin-block: 1.4375rem;
  font-weight: 400;
  line-height: 1.4;
  font-size: 1rem;
  color: #4c4c4c;
}
.generic--content-page p:first-of-type {
  margin-top: 0;
}
.generic--content-page a {
  color: var(--light-purple);
  text-decoration: none;
}
.generic--content-page a:hover, .generic--content-page a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
.generic--content-page h1 {
  margin-bottom: 5rem;
  font-size: 1.875rem;
  color: var(--medium-purple);
}
.generic--content-page h2 {
  font-size: 1.625rem;
}
.generic--content-page h3 {
  font-size: 1.375rem;
}
.generic--content-page ul li {
  list-style: disc;
  color: #4c4c4c;
  font-weight: 400;
  line-height: 1.4;
  font-size: 1rem;
  margin-left: 1.5rem;
  padding-left: 0.375rem;
}
.generic--content-page ul li::before {
  content: none;
}

.editor-styles-wrapper p {
  font-weight: 400;
}
.editor-styles-wrapper li .block-editor-rich-text__editable {
  display: inline-block;
}

/**
 * Core WordPress Accordion block — matches loop-accordion panel styling.
 *
 * @package Rsi_Rcm
 */
.generic {
  --rsi-accordion-color: var(--text-color, var(--dark-purple));
  --rsi-accordion-border: rgb(32 16 74 / 25%);
}
.generic .wp-block-accordion {
  width: 100%;
  margin-block: 0;
}
.generic .wp-block-accordion-item {
  display: grid;
  grid-template-rows: auto 0fr;
  border-bottom: 0.0625rem solid var(--rsi-accordion-border);
}
.generic .wp-block-accordion-item:first-child {
  border-top: 0.0625rem solid var(--rsi-accordion-border);
  margin-top: 2.875rem;
}
.generic .wp-block-accordion-item:last-child {
  margin-bottom: 3.125rem;
}
.generic .wp-block-accordion-item.is-open {
  grid-template-rows: auto 1fr;
  padding-bottom: 2.8125rem;
}
.generic .wp-block-accordion-item.is-open .wp-block-accordion-heading__toggle-icon {
  transform: rotate(-135deg);
}
@media (prefers-reduced-motion: no-preference) {
  .generic .wp-block-accordion-item {
    transition: grid-template-rows 350ms ease;
  }
}
.generic .wp-block-accordion-heading {
  margin: 0;
}
.generic .wp-block-accordion-heading__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  width: 100%;
  margin: 0;
  padding: 1.5rem 1.375rem 1.375rem 1rem;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: var(--rsi-accordion-color);
  text-align: left;
  font: inherit;
}
.generic .wp-block-accordion-heading__toggle:focus-visible {
  outline: 0.125rem solid var(--light-purple);
  outline-offset: -0.125rem;
}
.generic .wp-block-accordion-heading__toggle-title {
  flex: 1;
  margin: 0;
  line-height: 1.2;
  word-break: break-word;
  font-size: 1.125rem;
}
.generic .wp-block-accordion-heading__toggle-icon {
  flex-shrink: 0;
  width: 0.75rem;
  height: 0.75rem;
  border: 0;
  border-right: 0.125rem solid var(--rsi-accordion-color);
  border-bottom: 0.125rem solid var(--rsi-accordion-color);
  background: transparent;
  font-size: 0;
  line-height: 0;
  color: var(--rsi-accordion-color);
  overflow: hidden;
  transform: rotate(45deg) translateY(-8px);
  transition: transform 0.2s ease;
}
.generic .wp-block-accordion-panel {
  overflow: hidden;
  min-height: 0;
  padding: 0 1.375rem 0 1rem;
}
.generic .wp-block-accordion-panel[inert], .generic .wp-block-accordion-panel[aria-hidden=true] {
  display: block;
  margin-block-start: 0;
}
.generic .wp-block-accordion-panel > :last-child {
  margin-bottom: 0;
}

.editor-styles-wrapper {
  --rsi-accordion-color: var(--text-color, var(--dark-purple));
  --rsi-accordion-border: rgb(32 16 74 / 25%);
}
.editor-styles-wrapper .wp-block-accordion {
  width: 100%;
  margin-block: 0;
}
.editor-styles-wrapper .wp-block-accordion-item {
  display: grid;
  grid-template-rows: auto 0fr;
  border-bottom: 0.0625rem solid var(--rsi-accordion-border);
}
.editor-styles-wrapper .wp-block-accordion-item:first-child {
  border-top: 0.0625rem solid var(--rsi-accordion-border);
  margin-top: 2.875rem;
}
.editor-styles-wrapper .wp-block-accordion-item:last-child {
  margin-bottom: 3.125rem;
}
.editor-styles-wrapper .wp-block-accordion-item.is-open {
  grid-template-rows: auto 1fr;
  padding-bottom: 2.8125rem;
}
.editor-styles-wrapper .wp-block-accordion-item.is-open .wp-block-accordion-heading__toggle-icon {
  transform: rotate(-135deg);
}
@media (prefers-reduced-motion: no-preference) {
  .editor-styles-wrapper .wp-block-accordion-item {
    transition: grid-template-rows 350ms ease;
  }
}
.editor-styles-wrapper .wp-block-accordion-heading {
  margin: 0;
}
.editor-styles-wrapper .wp-block-accordion-heading__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  width: 100%;
  margin: 0;
  padding: 1.5rem 1.375rem 1.375rem 1rem;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: var(--rsi-accordion-color);
  text-align: left;
  font: inherit;
}
.editor-styles-wrapper .wp-block-accordion-heading__toggle:focus-visible {
  outline: 0.125rem solid var(--light-purple);
  outline-offset: -0.125rem;
}
.editor-styles-wrapper .wp-block-accordion-heading__toggle-title {
  flex: 1;
  margin: 0;
  line-height: 1.2;
  word-break: break-word;
  font-size: 1.125rem;
}
.editor-styles-wrapper .wp-block-accordion-heading__toggle-icon {
  flex-shrink: 0;
  width: 0.75rem;
  height: 0.75rem;
  border: 0;
  border-right: 0.125rem solid var(--rsi-accordion-color);
  border-bottom: 0.125rem solid var(--rsi-accordion-color);
  background: transparent;
  font-size: 0;
  line-height: 0;
  color: var(--rsi-accordion-color);
  overflow: hidden;
  transform: rotate(45deg) translateY(-8px);
  transition: transform 0.2s ease;
}
.editor-styles-wrapper .wp-block-accordion-panel {
  overflow: hidden;
  min-height: 0;
  padding: 0 1.375rem 0 1rem;
}
.editor-styles-wrapper .wp-block-accordion-panel[inert], .editor-styles-wrapper .wp-block-accordion-panel[aria-hidden=true] {
  display: block;
  margin-block-start: 0;
}
.editor-styles-wrapper .wp-block-accordion-panel > :last-child {
  margin-bottom: 0;
}

.rsi.header {
  position: sticky;
  top: 0;
  z-index: 99;
  background: linear-gradient(90deg, #F2F2F2, #F2F2F2);
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}
.rsi.header.is-hidden {
  transform: translateY(-100%);
}
.rsi.header .header__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-height: 5.125rem;
  padding: 1.3125rem 0 0.6875rem;
}
@media screen and (min-width:1199px) {
  .rsi.header .header__wrap {
    min-height: 4.5rem;
    padding: 0.75rem 0;
  }
}
.rsi.header .header__brand {
  color: var(--dark-purple);
  font-size: 0;
  line-height: 0;
  text-decoration: none;
}
.rsi.header .header__brand picture {
  display: block;
  width: auto;
  max-height: 2.625rem;
}
@media screen and (max-width:1198px) {
  .rsi.header .header__nav {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding: 5rem 1.5rem 2rem;
    overflow-y: auto;
    visibility: hidden;
    background-color: var(--white);
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out, visibility 0.3s;
  }
  .is-open .rsi.header .header__nav {
    visibility: visible;
    transform: translateX(0);
  }
}
@media screen and (min-width:1199px) {
  .rsi.header .header__nav {
    display: block;
    padding-left: 5.25rem;
  }
}
@media screen and (min-width:1199px) {
  .rsi.header .header__nav .l-btn {
    display: none;
  }
}
.rsi.header .header__menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  list-style: none;
  gap: 0.5rem;
}
@media screen and (max-width:1198px) {
  .rsi.header .header__menu {
    width: 100%;
  }
}
@media screen and (min-width:1199px) {
  .rsi.header .header__menu {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.5rem;
  }
}
.rsi.header .header__menu a {
  position: relative;
  display: inline-block;
  padding: 0.4375rem 0 0.125rem;
  color: var(--dark-purple);
  text-decoration: none;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}
body.pojo-a11y-links-underline .rsi.header .header__menu a, body.pojo-a11y-links-underline .rsi.header .header__menu a * {
  text-decoration: none !important;
  outline: none !important;
}
.rsi.header .header__menu a {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03rem;
  transition: all 0.3s ease-in-out;
}
.rsi.header .header__menu a::after {
  position: absolute;
  bottom: -0.125rem;
  left: 0;
  width: 100%;
  height: 0.125rem;
  background-color: var(--purple);
  content: "";
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.25s ease-out;
}
.rsi.header .header__menu a:hover, .rsi.header .header__menu a:focus-visible {
  color: var(--purple);
}
.rsi.header .header__menu a:hover::after, .rsi.header .header__menu a:focus-visible::after {
  transform: scaleX(1);
}
@media (prefers-reduced-motion: reduce) {
  .rsi.header .header__menu a::after {
    transition: none;
  }
  .rsi.header .header__menu a:hover::after, .rsi.header .header__menu a:focus-visible::after {
    transform: scaleX(1);
  }
}
.rsi.header .header__actions {
  display: flex;
}
@media screen and (max-width:1198px) {
  .rsi.header .header__actions {
    display: none;
  }
}
.rsi.header .header__hamburger {
  background-color: var(--white);
  box-shadow: 0 0.25rem 0.25rem 0rem rgba(151, 95, 228, 0.11);
  padding: 0.875rem 0.8125rem;
  position: relative;
  border-radius: 0.1875rem;
}
.rsi.header .header__hamburger input {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  cursor: pointer;
}
.rsi.header .header__hamburger label {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
  margin-bottom: 0;
}
.rsi.header .header__hamburger span {
  display: block;
  width: 1.5rem;
  height: 0.25rem;
  border-radius: 0.0625rem;
  background-color: var(--purple);
  font-size: 0;
  line-height: 0;
  text-indent: -9999px;
}
@media screen and (min-width:1199px) {
  .rsi.header .header__hamburger {
    display: none;
  }
}
@media screen and (max-width:1198px) {
  .rsi.header :has(.header__hamburger input:checked) .header__nav {
    visibility: visible;
    transform: translateX(0);
  }
}
.rsi.header :has(.header__hamburger input:checked) .header__hamburger label {
  z-index: 1001;
  position: relative;
}
.rsi.header :has(.header__hamburger input:checked) .header__hamburger label span {
  transition: all 0.125s ease;
}
.rsi.header :has(.header__hamburger input:checked) .header__hamburger label span:nth-child(1) {
  transform: rotate(45deg) translate(0.375rem, 0.375rem);
}
.rsi.header :has(.header__hamburger input:checked) .header__hamburger label span:nth-child(2) {
  opacity: 0;
}
.rsi.header :has(.header__hamburger input:checked) .header__hamburger label span:nth-child(3) {
  transform: rotate(-45deg) translate(0.375rem, -0.375rem);
}

@media screen and (max-width:1198px) {
  body:has(.header__hamburger input:checked) {
    overflow: hidden;
  }
}

.rsi.footer {
  background-color: var(--black);
  padding: 3.75rem 0 4.25rem;
}
@media screen and (min-width:1199px) {
  .rsi.footer {
    padding: 5rem 0 6.25rem;
  }
}
.rsi.footer .footer__grid {
  display: grid;
  padding-left: 0.125rem;
  grid-template-columns: 1fr;
}
@media screen and (min-width:768px) {
  .rsi.footer .footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__grid {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1.8125rem;
    padding-left: 0.4375rem;
  }
}
.rsi.footer .footer__col--brand {
  display: flex;
  gap: 0.9375rem;
  align-items: center;
  justify-content: space-between;
}
.rsi.footer .footer__col--brand:has(+ .footer__col--about) {
  margin-bottom: 1.8125rem;
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__col--brand:has(+ .footer__col--about) {
    margin-bottom: 0;
  }
}
@media screen and (min-width:768px) {
  .rsi.footer .footer__col--brand {
    padding-right: 1.875rem;
  }
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__col--brand {
    padding-right: 0;
    display: block;
    max-width: 9.375rem;
    width: 100%;
    margin-right: 5.2%;
  }
}
.rsi.footer .footer__col--about {
  padding-left: 0.125rem;
}
.rsi.footer .footer__col--about:has(+ .footer__col--contact) {
  margin-bottom: 2.25rem;
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__col--about:has(+ .footer__col--contact) {
    margin-bottom: 0;
  }
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__col--about {
    max-width: 14.625rem;
    padding-top: 0.125rem;
    margin-right: 6%;
  }
}
.rsi.footer .footer__col--contact {
  padding-left: 0.125rem;
}
.rsi.footer .footer__col--contact:has(+ .footer__col--links) {
  margin-bottom: 2.25rem;
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__col--contact:has(+ .footer__col--links) {
    margin-bottom: 0;
  }
}
@media screen and (min-width:768px) {
  .rsi.footer .footer__col--contact {
    padding-right: 1.875rem;
  }
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__col--contact {
    padding-right: 0;
    max-width: 18.1875rem;
    margin-right: 6%;
    padding-top: 0.125rem;
  }
}
.rsi.footer .footer__col--links {
  padding-left: 0.125rem;
}
.rsi.footer .footer__col--links .footer__heading {
  margin-bottom: 0.9375rem;
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__col--links {
    max-width: 7.5rem;
    padding-top: 0.125rem;
  }
}
.rsi.footer .footer__logo {
  max-height: 2rem;
  display: flex;
}
.rsi.footer .footer__logo a {
  display: inline-block;
  text-decoration: none;
  font-size: 0;
  line-height: 0;
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__logo:has(+ .footer__social) {
    margin-bottom: 2.5rem;
  }
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__social {
    padding-left: 0.125rem;
  }
}
.rsi.footer .footer__social-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9375rem;
  list-style: none;
}
.rsi.footer .footer__social-list li {
  display: flex;
}
.rsi.footer .footer__social-list a {
  display: inline-block;
  width: 1.0625rem;
  height: 1.0625rem;
  font-size: 0;
  line-height: 0;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
.rsi.footer .footer__social-list a:hover {
  transform: scale(1.1);
}
.rsi.footer .footer__social-list img {
  width: 1.0625rem;
  height: 1.0625rem;
  object-fit: contain;
}
.rsi.footer .footer__heading {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--light-grey);
  margin-bottom: 1.1875rem;
}
.rsi.footer .footer__about-text {
  margin-bottom: 0.9375rem;
}
.rsi.footer .footer__about-text p {
  margin: 0 0 0.9375rem;
  color: var(--white);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
}
.rsi.footer .footer__about-text p:last-child {
  margin-bottom: 0;
}
.rsi.footer .footer__about-text li {
  color: var(--white);
}
.rsi.footer .footer__copyright {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--white);
}
.rsi.footer address,
.rsi.footer .footer__hours,
.rsi.footer .footer__phone {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--white);
  font-style: normal;
}
.rsi.footer address:has(+ .footer__phone),
.rsi.footer .footer__hours:has(+ .footer__phone),
.rsi.footer .footer__phone:has(+ .footer__phone) {
  margin-bottom: 0.9375rem;
}
.rsi.footer address:has(+ .footer__contact-email-rich),
.rsi.footer .footer__hours:has(+ .footer__contact-email-rich),
.rsi.footer .footer__phone:has(+ .footer__contact-email-rich) {
  margin-bottom: 1rem;
}
.rsi.footer .footer__phone a {
  text-decoration: none;
}
.rsi.footer .footer__phone a:hover {
  text-decoration: underline;
  color: white;
}
.rsi.footer .footer__contact-email-rich {
  padding-right: 1.625rem;
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__contact-email-rich {
    padding-right: 0;
  }
}
.rsi.footer .footer__contact-email-rich:has(+ .footer__hours) {
  margin-bottom: 1rem;
}
.rsi.footer .footer__contact-email-rich p {
  margin-bottom: 1.0625rem;
  color: var(--light-purple);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
}
.rsi.footer .footer__contact-email-rich p:last-child {
  margin-bottom: 0;
}
.rsi.footer .footer__contact-email-rich p a {
  text-underline-offset: 0.0625rem;
  text-decoration-thickness: 0.0625rem;
  color: inherit;
}
.rsi.footer .footer__contact-email-rich p a:hover {
  text-decoration: none;
}
.rsi.footer .footer__nav-placeholder {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--white);
}
.rsi.footer .footer__menu li {
  list-style: none;
  line-height: 1.2;
}
.rsi.footer .footer__menu li:not(:last-child) {
  margin-bottom: 0.8125rem;
}
@media screen and (min-width:1199px) {
  .rsi.footer .footer__menu li:not(:last-child) {
    margin-bottom: 0.6875rem;
  }
}
.rsi.footer .footer__menu a {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--light-purple);
  text-decoration: none;
}
.rsi.footer .footer__menu a:hover {
  text-decoration: underline;
  text-underline-offset: 0.0625rem;
}

picture {
  display: block;
}

.aspect-box {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
}
.aspect-box img,
.aspect-box video,
.aspect-box canvas,
.aspect-box iframe,
.aspect-box svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.aspect-box::before {
  display: block;
  padding-top: calc(var(--aspect-ratio) * 100%);
  background-color: var(--primary-dark-100);
  content: "";
}

@media screen and (min-width:991px) {
  .is-mobile {
    display: none;
  }
}

@media screen and (max-width:990px) {
  .is-desktop {
    display: none;
  }
}

.l-btn {
  transition: all 0.3s ease-in-out;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03rem;
  display: inline-block;
  max-width: 100%;
  padding: 0.8125rem;
  border: 0.0625rem solid transparent;
  background-color: var(--white);
  color: var(--dark-purple);
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  border-radius: 0.1875rem;
  box-shadow: none;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}
@media screen and (min-width:1199px) {
  .l-btn {
    padding: 0.75rem 0.9375rem;
  }
}
.l-btn span {
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}
.l-btn:not(.l-btn--secondary):hover, .l-btn:not(.l-btn--secondary):focus-visible {
  background-color: var(--light-purple);
  color: var(--white);
  box-shadow: 0 0.875rem 2.125rem 0 color-mix(in srgb, var(--light-purple) 30%, transparent);
}
.l-btn--secondary {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: none;
  padding: 0.8125rem 1rem;
  background-color: transparent;
  color: var(--white);
  box-shadow: 0 0.875rem 2.125rem 0 color-mix(in srgb, var(--light-purple) 30%, transparent);
}
.l-btn--secondary::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  border-radius: inherit;
  background-color: var(--purple);
}
.l-btn--secondary::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--dark-purple) 0%, var(--purple) 0, var(--light-purple) 100%);
  transition: opacity 0.25s ease-out;
}
.l-btn--secondary:hover::before, .l-btn--secondary:focus-visible::before {
  opacity: 0;
}
.l-btn--secondary:hover, .l-btn--secondary:focus-visible {
  color: var(--white);
}
.l-btn--secondary:disabled::before, .l-btn--secondary:disabled::after, .l-btn--secondary[disabled]::before, .l-btn--secondary[disabled]::after {
  opacity: 0;
}
.l-btn[disabled] {
  border-color: var(--light-purple);
  background: var(--light-purple);
  color: var(--white);
  cursor: not-allowed;
  box-shadow: none;
}
.l-btn[disabled]:hover, .l-btn[disabled]:focus-visible {
  border-color: var(--light-purple);
  background: var(--light-purple);
  color: var(--white);
  box-shadow: none;
}

body:not(.wp-admin) button {
  display: block;
  padding: 0;
  border: none;
  margin: 0;
  background: none;
  cursor: pointer;
}
body:not(.wp-admin) label {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
  display: block;
  line-height: 1.2;
  color: var(--medium-purple);
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  margin-bottom: 0.75rem;
}
@media screen and (min-width:1199px) {
  body:not(.wp-admin) label {
    grid-row: 1;
  }
}
body:not(.wp-admin) input[type=text],
body:not(.wp-admin) input[type=email],
body:not(.wp-admin) input[type=tel],
body:not(.wp-admin) input[type=number],
body:not(.wp-admin) input[type=search],
body:not(.wp-admin) input[type=password],
body:not(.wp-admin) input[type=phone],
body:not(.wp-admin) textarea,
body:not(.wp-admin) select {
  width: 100%;
  padding: 0.75rem 1.25rem;
  border-radius: 0.1875rem;
  border: 0.0625rem solid var(--grey-lighter);
  background-color: var(--white);
  transition: border-color 0.2s ease;
  color: var(--grey);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
}
@media screen and (max-width:1198px) {
  body:not(.wp-admin) input[type=text],
  body:not(.wp-admin) input[type=email],
  body:not(.wp-admin) input[type=tel],
  body:not(.wp-admin) input[type=number],
  body:not(.wp-admin) input[type=search],
  body:not(.wp-admin) input[type=password],
  body:not(.wp-admin) input[type=phone],
  body:not(.wp-admin) textarea,
  body:not(.wp-admin) select {
    margin-bottom: 1.5rem;
  }
}
@media screen and (min-width:1199px) {
  body:not(.wp-admin) input {
    grid-row: 2;
  }
}
body:not(.wp-admin) input:has(+ label) {
  margin-bottom: 0.75rem;
}
@media screen and (min-width:1199px) {
  body:not(.wp-admin) input:has(+ label) {
    margin-bottom: 1.625rem;
  }
}
body:not(.wp-admin) input[type=submit] {
  transition: all 0.3s ease-in-out;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03rem;
  display: block;
  padding: 0.875rem 1.875rem;
  border: none;
  border-radius: 0.1875rem;
  cursor: pointer;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  color: var(--white);
  box-shadow: 0 0.875rem 2.125rem 0 color-mix(in srgb, var(--light-purple) 30%, transparent);
  background-color: var(--purple);
  background-image: linear-gradient(90deg, var(--dark-purple) 0%, var(--purple) 0, var(--light-purple) 100%);
  margin-top: 1.25rem;
}
@media screen and (min-width:1199px) {
  body:not(.wp-admin) input[type=submit] {
    margin-top: 2.0625rem;
  }
}
body:not(.wp-admin) input[type=submit]:hover, body:not(.wp-admin) input[type=submit]:focus-visible {
  color: var(--white);
  background-image: none;
  background-color: var(--purple);
}
body:not(.wp-admin) input[type=submit]:disabled, body:not(.wp-admin) input[type=submit][disabled] {
  cursor: not-allowed;
  box-shadow: none;
  opacity: 0.5;
}
body:not(.wp-admin) textarea {
  border-radius: 0.1875rem;
  border: 0.0625rem solid var(--grey-lighter);
  height: 6.875rem;
  font-family: var(--primary-font);
  resize: none;
}
body:not(.wp-admin) fieldset {
  border: none;
  margin-bottom: 1rem;
}
@media screen and (min-width:1199px) {
  body:not(.wp-admin) fieldset {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1.5rem;
    margin-bottom: 1.75rem;
  }
}
body:not(.wp-admin) fieldset input {
  margin-bottom: 0;
}

.editor-styles-wrapper button {
  display: block;
  padding: 0;
  border: none;
  margin: 0;
  background: none;
  cursor: pointer;
}
.editor-styles-wrapper label {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
  display: block;
  line-height: 1.2;
  color: var(--medium-purple);
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  margin-bottom: 0.75rem;
}
@media screen and (min-width:1199px) {
  .editor-styles-wrapper label {
    grid-row: 1;
  }
}
.editor-styles-wrapper input[type=text],
.editor-styles-wrapper input[type=email],
.editor-styles-wrapper input[type=tel],
.editor-styles-wrapper input[type=number],
.editor-styles-wrapper input[type=search],
.editor-styles-wrapper input[type=password],
.editor-styles-wrapper input[type=phone],
.editor-styles-wrapper textarea,
.editor-styles-wrapper select {
  width: 100%;
  padding: 0.75rem 1.25rem;
  border-radius: 0.1875rem;
  border: 0.0625rem solid var(--grey-lighter);
  background-color: var(--white);
  transition: border-color 0.2s ease;
  color: var(--grey);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
}
@media screen and (max-width:1198px) {
  .editor-styles-wrapper input[type=text],
  .editor-styles-wrapper input[type=email],
  .editor-styles-wrapper input[type=tel],
  .editor-styles-wrapper input[type=number],
  .editor-styles-wrapper input[type=search],
  .editor-styles-wrapper input[type=password],
  .editor-styles-wrapper input[type=phone],
  .editor-styles-wrapper textarea,
  .editor-styles-wrapper select {
    margin-bottom: 1.5rem;
  }
}
@media screen and (min-width:1199px) {
  .editor-styles-wrapper input {
    grid-row: 2;
  }
}
.editor-styles-wrapper input:has(+ label) {
  margin-bottom: 0.75rem;
}
@media screen and (min-width:1199px) {
  .editor-styles-wrapper input:has(+ label) {
    margin-bottom: 1.625rem;
  }
}
.editor-styles-wrapper input[type=submit] {
  transition: all 0.3s ease-in-out;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03rem;
  display: block;
  padding: 0.875rem 1.875rem;
  border: none;
  border-radius: 0.1875rem;
  cursor: pointer;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  color: var(--white);
  box-shadow: 0 0.875rem 2.125rem 0 color-mix(in srgb, var(--light-purple) 30%, transparent);
  background-color: var(--purple);
  background-image: linear-gradient(90deg, var(--dark-purple) 0%, var(--purple) 0, var(--light-purple) 100%);
  margin-top: 1.25rem;
}
@media screen and (min-width:1199px) {
  .editor-styles-wrapper input[type=submit] {
    margin-top: 2.0625rem;
  }
}
.editor-styles-wrapper input[type=submit]:hover, .editor-styles-wrapper input[type=submit]:focus-visible {
  color: var(--white);
  background-image: none;
  background-color: var(--purple);
}
.editor-styles-wrapper input[type=submit]:disabled, .editor-styles-wrapper input[type=submit][disabled] {
  cursor: not-allowed;
  box-shadow: none;
  opacity: 0.5;
}
.editor-styles-wrapper textarea {
  border-radius: 0.1875rem;
  border: 0.0625rem solid var(--grey-lighter);
  height: 6.875rem;
  font-family: var(--primary-font);
  resize: none;
}
.editor-styles-wrapper fieldset {
  border: none;
  margin-bottom: 1rem;
}
@media screen and (min-width:1199px) {
  .editor-styles-wrapper fieldset {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 1.5rem;
    margin-bottom: 1.75rem;
  }
}
.editor-styles-wrapper fieldset input {
  margin-bottom: 0;
}

.container {
  padding: 0 1.25rem;
}
@media screen and (min-width:1199px) {
  .container {
    max-width: 90rem;
    padding: 0 11.875rem;
    margin: 0 auto;
  }
}
@media screen and (min-width:720px) {
  .container--96 {
    padding: 0 3.75rem;
  }
}
@media screen and (min-width:1199px) {
  .container--96 {
    padding: 0 12.25rem;
  }
}
.container--xs {
  padding: 0 0.625rem;
}
@media screen and (min-width:1199px) {
  .container--xs {
    padding: 0 11.625rem;
  }
}
.container--smd {
  padding: 0 0.625rem;
}
@media screen and (min-width:1199px) {
  .container--smd {
    padding: 0 1.25rem;
  }
}
.container--sm {
  padding: 0 1.5rem;
}
@media screen and (min-width:1199px) {
  .container--lg {
    padding: 0 12.4375rem;
  }
}
@media screen and (min-width:1199px) {
  .container--xl {
    padding: 0 16.5rem;
  }
}

.section {
  padding: 5rem 0;
}
@media screen and (min-width:1199px) {
  .section {
    padding: 7.5rem 0;
  }
}
.section--reduced {
  padding: 0;
}
@media screen and (min-width:1199px) {
  .section--reduced {
    padding: 0;
  }
}

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