/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  scroll-behavior: smooth;
}

* {
  margin: 0;
  outline: none;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
  font-optical-sizing: auto;
}

/* Set shorter line heights on headings and interactive elements */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

/* Balance text wrapping on headings */
h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  color: currentColor;
}

/* Make images easier to work with */
img,
picture,
video,
canvas,
svg {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}

/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}

/* Avoid text overflows */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

html {
  scroll-behavior: smooth;
}

img,
svg,
iframe,
embed {
  vertical-align: bottom;
}

address {
  font-style: normal;
}

a {
  color: inherit;
  text-underline-offset: 2px;
}

a:has(> i.icon),
span:has(> i.icon) {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
}

.site-wrapper {
  overflow-x: hidden;
  width: 100%;
  position: relative;
}

.flickity-viewport {
  overflow: visible;
}

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

:root {
  --easeInSine: cubic-bezier(0.47, 0, 0.745, 0.715);
  --easeInSine: cubic-bezier(0.47, 0, 0.745, 0.715);
  --easeOutSine: cubic-bezier(0.39, 0.575, 0.565, 1);
  --easeInOutSine: cubic-bezier(0.39, 0.575, 0.565, 1);
  --easeInQuad: cubic-bezier(0.55, 0.085, 0.68, 0.53);
  --easeOutQuad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --easeInOutQuad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --easeInCubic: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  --easeOutCubic: cubic-bezier(0.215, 0.61, 0.355, 1);
  --easeInOutCubic: cubic-bezier(0.215, 0.61, 0.355, 1);
  --easeInQuart: cubic-bezier(0.895, 0.03, 0.685, 0.22);
  --easeOutQuart: cubic-bezier(0.165, 0.84, 0.44, 1);
  --easeInOutQuart: cubic-bezier(0.165, 0.84, 0.44, 1);
  --easeInQuint: cubic-bezier(0.755, 0.05, 0.855, 0.06);
  --easeOutQuint: cubic-bezier(0.23, 1, 0.32, 1);
  --easeInOutQuint: cubic-bezier(0.23, 1, 0.32, 1);
  --easeInExpo: cubic-bezier(0.95, 0.05, 0.795, 0.035);
  --easeOutExpo: cubic-bezier(0.19, 1, 0.22, 1);
  --easeInOutExpo: cubic-bezier(0.19, 1, 0.22, 1);
  --easeInCirc: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  --easeOutCirc: cubic-bezier(0.075, 0.82, 0.165, 1);
  --easeInOutCirc: cubic-bezier(0.075, 0.82, 0.165, 1);
  --easeInBack: cubic-bezier(0.6, -0.28, 0.735, 0.045);
  --easeOutBack: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --easeInOutBack: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --easeInOutFast: cubic-bezier(1,0,0,1);
  --authenticMotion: cubic-bezier(.4,0,.2,1);
}

:root {
  --brand--heading-font: serif;
  --brand--body-font: sans-serif;
  --brand--primary-color: red;
  --brand--secondary-color: blue;
  --brand--transition-duration: 350ms;
  --brand--transition-easing: var(--easeInOutCubic);
}

/* breakpoints */
.wrapper {
  --gutter-x: 3rem;
}
@media (min-width: 768px) {
  .wrapper {
    --gutter-x: 4rem;
  }
}
.wrapper {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: calc(var(--gutter-x) * 0.5);
  padding-right: calc(var(--gutter-x) * 0.5);
}
@media (min-width: 576px) {
  .wrapper {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .wrapper {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .wrapper {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .wrapper {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .wrapper {
    max-width: 1320px;
  }
}
@media (min-width: 1600px) {
  .wrapper {
    max-width: 1500px;
  }
}

.section {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
@media (min-width: 992px) {
  .section {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}
.section--inner {
  margin: 0;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 992px) {
  .section--inner {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

._gutter {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
@media (min-width: 768px) {
  ._gutter {
    padding-left: 1.75rem;
    padding-right: 1.75rem;
  }
}
@media (min-width: 992px) {
  ._gutter {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

body {
  background-color: var(--brand--body-bg-color);
  color: var(--brand--body-text-color);
  font-family: var(--brand--body-font);
  line-height: var(--brand--body-line-height);
}

.gform_wrapper {
  --gform_fields-gap: 1rem;
}

.gform_wrapper form,
.gform_body,
.gform_fields {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.gform_fields {
  flex-direction: row;
  flex-wrap: wrap;
}

.gfield_label {
  font-weight: bold;
  display: block;
  margin-bottom: 1rem;
  line-height: 1.1;
}

.gfield.gfield_error {
  border-left: 2px solid red;
  padding-left: 1rem;
}

.gfield_validation_message {
  color: red;
  margin-top: 0.5rem;
  font-size: 1.1rem;
}

.hidden_label .gfield_label,
.hide_summary,
.gform_hidden,
.gfield--type-honeypot,
.gfield_visibility_hidden {
  display: none;
}

.gform_drop_area {
  text-align: center;
  background-image: repeating-linear-gradient(45deg, #f9f9f9, #f9f9f9 10px, #fff 10px, #fff 20px);
  border: 1px dashed #ccc;
  padding: 1.5rem;
}
.gform_drop_area path {
  fill: #efefef;
}

.gform_fileupload_rules {
  margin-top: 0.5rem;
  display: block;
  font-size: 0.9rem;
}

.gfield_required_asterisk {
  color: red;
  margin-left: 0.5rem;
}

fieldset.gfield {
  margin: 0;
  padding: 0;
  border: none;
}

select,
input[type=text],
input[type=date],
input[type=email],
input[type=number],
input[type=tel],
input[type=password],
textarea {
  height: 55px;
  background-color: #fff;
  border: 1px solid black;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1.1rem;
  font-weight: normal;
  font-family: var(--brand--body-font);
  width: 100%;
}
select::-moz-placeholder, input[type=text]::-moz-placeholder, input[type=date]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=password]::-moz-placeholder, textarea::-moz-placeholder {
  font-weight: normal;
  color: black;
  opacity: 0.5;
  font-size: 1.1rem;
}
select::placeholder,
input[type=text]::placeholder,
input[type=date]::placeholder,
input[type=email]::placeholder,
input[type=number]::placeholder,
input[type=tel]::placeholder,
input[type=password]::placeholder,
textarea::placeholder {
  font-weight: normal;
  color: black;
  opacity: 0.5;
  font-size: 1.1rem;
}

textarea {
  height: auto;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

select,
.select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='16'%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='none' d='M-2-1h26v16H-2z' data-name='Rectangle 51'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23a)' data-name='Group 35' transform='translate(2 1)'%3E%3Cpath d='M11.2 14a1.4 1.4 0 0 1-1-.5L.2 2.3A1.4 1.4 0 0 1 2.5.5l8.7 10 8.7-10a1.4 1.4 0 1 1 2.2 1.8l-9.8 11.2a1.4 1.4 0 0 1-1.1.5Z' data-name='Path 136'/%3E%3C/g%3E%3C/svg%3E ");
  background-size: 26px 16px;
  background-position: right 0.8rem center;
  background-repeat: no-repeat;
}

.select {
  cursor: pointer;
}
.select:hover {
  opacity: 0.5;
}

button {
  cursor: pointer;
}

.gpfup__droparea > div {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.gpfup__droparea > div:before {
  content: "";
  display: block;
  width: 73px;
  height: auto;
  aspect-ratio: 73/66;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='73.67' height='66.34'%3E%3Cg fill='%239a55bc'%3E%3Cpath data-name='Path 317' d='M64.4 23.16v-.72A23.02 23.02 0 0 0 40.97 0 23.49 23.49 0 0 0 19.44 13.7 21.85 21.85 0 0 0 0 35.27a21.58 21.58 0 0 0 21.65 21.54h8.41v-4.48h-8.41a17.16 17.16 0 0 1-.56-34.24h1.5l.51-1.41A18.91 18.91 0 0 1 41.05 4.56 18.53 18.53 0 0 1 60.02 22.5a17.39 17.39 0 0 1 0 1.8l-.18 1.6 1.46.68a13.46 13.46 0 0 1-5.7 25.74H43.52v4.48H55.6a17.95 17.95 0 0 0 8.82-33.65Z'/%3E%3Cpath data-name='Path 318' d='M46.4 43.01a2.24 2.24 0 0 0 1.6-3.83L36.8 27.96 25.57 39.17a2.24 2.24 0 0 0 3.16 3.17l5.8-5.72V64.1a2.24 2.24 0 1 0 4.5 0V36.62l5.76 5.76a2.24 2.24 0 0 0 1.6.63Z'/%3E%3C/g%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1rem;
}

.gf-options-inline .gfield_radio {
  display: flex;
  gap: 1rem;
}

.gfield,
.gfield--width-full {
  width: 100%;
}

.gfield--width-half {
  width: 100%;
}
@media (min-width: 768px) {
  .gfield--width-half {
    width: calc(50% - var(--gform_fields-gap) / 2);
  }
}

.gfield--type-date .ginput_complex {
  display: flex;
  gap: 0.5rem;
}
.gfield--type-date .ginput_complex > * {
  flex: 1;
}

.gfield--type-date .ginput_complex {
  display: flex;
  gap: 0.5rem;
}
.gfield--type-date .ginput_complex > * {
  flex: 1;
}
.gfield--type-date .ginput_complex > * > input {
  width: 100%;
}

div#ui-datepicker-div {
  background-color: #e6263b;
  background-color: #011527;
  color: white;
  text-align: center;
  border-color: #011527;
  padding: 0.5rem;
  box-shadow: 1px 3px 0.3rem rgba(0, 0, 0, 0.3);
}

table.ui-datepicker-calendar {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.ui-datepicker-title {
  display: flex;
  width: 100%;
  gap: 0.5rem;
  justify-content: center;
}

.ui-datepicker-header.ui-widget-header.ui-helper-clearfix.ui-corner-all {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}

select.ui-datepicker-month,
select.ui-datepicker-year {
  font-size: 0.9rem;
  padding: 0.5rem;
  height: auto;
  width: auto;
  background-size: 0.8rem;
  background-position: 95% center;
  padding-right: 1.5rem;
  flex: 1;
  text-align: center;
}

.ginput_container_date {
  position: relative;
}

img.ui-datepicker-trigger {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
}

a.ui-datepicker-next,
a.ui-datepicker-prev {
  cursor: pointer;
}

.ui-state-disabled {
  opacity: 0.3;
}

.btn {
  height: 55px;
  border-color: black;
  border: none;
  background-color: black;
  color: white;
  display: inline-flex;
  align-items: center;
  padding-left: 0.9rem;
  padding-right: 0.9rem;
}
@media (min-width: 576px) {
  .btn {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
  }
}
.btn {
  text-decoration: none;
}
.btn span,
.btn i {
  z-index: 1;
  position: relative;
}
.btn .loading-dots {
  visibility: hidden;
}
.btn .loading-dots i {
  display: inline-block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 15px;
  height: 15px;
  background-color: var(--brand--primary-color);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: loadingDots 1.2s ease-in;
  animation-iteration-count: 999;
  animation-direction: normal;
  animation-fill-mode: forwards;
  transform: translate(-50%, -50%) scale(0.5);
  opacity: 0.4;
}
.btn .loading-dots i:nth-child(1) {
  left: calc(50% - 1.3em);
}
.btn .loading-dots i:nth-child(2) {
  animation-delay: 80ms;
}
.btn .loading-dots i:nth-child(3) {
  left: calc(50% + 1.3em);
  animation-delay: 160ms;
}
.btn.loading {
  pointer-events: none;
  background-color: white;
}
.btn.loading:before {
  background-color: transparent;
}
.btn.loading span {
  visibility: hidden;
}
.btn.loading .loading-dots {
  visibility: visible;
}
@keyframes loadingDots {
  0% {
    transform: translate(-50%, -50%) scale(0.5);
    opacity: 0.4;
  }
  20% {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 1;
  }
  60% {
    transform: translate(-50%, -50%) scale(0.5);
    opacity: 0.4;
  }
  100% {
    transform: translate(-50%, -50%) scale(0.5);
    opacity: 0.4;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
}

h1, h2, h3, h4, h5, h6,
[class*=__heading],
[class*=-heading] {
  line-height: 1.1;
}

a {
  text-decoration: none;
}

.entry-content ol, .entry-content ul:not(.list--contact-links):not(.list--social-links):not(.list--reset):not(.woocommerce-error) {
  display: flex;
  gap: 0.5rem;
  flex-direction: column;
  list-style-type: decimal;
  padding-left: 1rem;
  margin-left: 1rem;
}
.entry-content ol ol {
  list-style-type: lower-alpha;
}
.entry-content ul:not(.list--contact-links):not(.list--social-links):not(.list--reset):not(.woocommerce-error) {
  list-style-type: disc;
}
.entry-content li::marker {
  font-weight: 400;
}
.entry-content > *:not(:last-child):not(blockquote),
.entry-content > blockquote > *:not(:last-child) {
  margin-bottom: 1.2rem;
}
.entry-content strong {
  font-weight: bold;
}
.entry-content a:not(.btn):not([href^="tel:"]):not([href^="mailto:"]):not(.btn):not(.button) {
  text-decoration: underline;
}
.entry-content a:not(.btn):not([href^="tel:"]):not([href^="mailto:"]):not(.btn):not(.button):hover {
  text-decoration: none;
}
.entry-content ul.list {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* 

====== Zoom effect ======

*/
.mfp-zoom-in {
  /* start state */
}
.mfp-zoom-in .mfp-with-anim {
  opacity: 0;
  transition: all 0.2s ease-in-out;
  transform: scale(0.8);
}
.mfp-zoom-in.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.mfp-zoom-in {
  /* animate in */
}
.mfp-zoom-in.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: scale(1);
}
.mfp-zoom-in.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-zoom-in {
  /* animate out */
}
.mfp-zoom-in.mfp-removing .mfp-with-anim {
  transform: scale(0.8);
  opacity: 0;
}
.mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
}

/* 

====== Newspaper effect ======

*/
.mfp-newspaper {
  /* start state */
}
.mfp-newspaper .mfp-with-anim {
  opacity: 0;
  transition: all 0.5s;
  transform: scale(0) rotate(500deg);
}
.mfp-newspaper.mfp-bg {
  opacity: 0;
  transition: all 0.5s;
}
.mfp-newspaper {
  /* animate in */
}
.mfp-newspaper.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: scale(1) rotate(0deg);
}
.mfp-newspaper.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-newspaper {
  /* animate out */
}
.mfp-newspaper.mfp-removing .mfp-with-anim {
  transform: scale(0) rotate(500deg);
  opacity: 0;
}
.mfp-newspaper.mfp-removing.mfp-bg {
  opacity: 0;
}

/* 

====== Move-horizontal effect ======

*/
.mfp-move-horizontal {
  /* start state */
}
.mfp-move-horizontal .mfp-with-anim {
  opacity: 0;
  transition: all 0.3s;
  transform: translateX(-50px);
}
.mfp-move-horizontal.mfp-bg {
  opacity: 0;
  transition: all 0.3s;
}
.mfp-move-horizontal {
  /* animate in */
}
.mfp-move-horizontal.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: translateX(0);
}
.mfp-move-horizontal.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-move-horizontal {
  /* animate out */
}
.mfp-move-horizontal.mfp-removing .mfp-with-anim {
  transform: translateX(50px);
  opacity: 0;
}
.mfp-move-horizontal.mfp-removing.mfp-bg {
  opacity: 0;
}

/* 

====== Move-from-top effect ======

*/
.mfp-move-from-top .mfp-content {
  vertical-align: top;
}
.mfp-move-from-top {
  /* start state */
}
.mfp-move-from-top .mfp-with-anim {
  opacity: 0;
  transition: all 0.2s;
  transform: translateY(-100px);
}
.mfp-move-from-top.mfp-bg {
  opacity: 0;
  transition: all 0.2s;
}
.mfp-move-from-top {
  /* animate in */
}
.mfp-move-from-top.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: translateY(0);
}
.mfp-move-from-top.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-move-from-top {
  /* animate out */
}
.mfp-move-from-top.mfp-removing .mfp-with-anim {
  transform: translateY(-50px);
  opacity: 0;
}
.mfp-move-from-top.mfp-removing.mfp-bg {
  opacity: 0;
}

/* 

====== 3d unfold ======

*/
.mfp-3d-unfold .mfp-content {
  perspective: 2000px;
}
.mfp-3d-unfold {
  /* start state */
}
.mfp-3d-unfold .mfp-with-anim {
  opacity: 0;
  transition: all 0.3s ease-in-out;
  transform-style: preserve-3d;
  transform: rotateY(-60deg);
}
.mfp-3d-unfold.mfp-bg {
  opacity: 0;
  transition: all 0.5s;
}
.mfp-3d-unfold {
  /* animate in */
}
.mfp-3d-unfold.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: rotateY(0deg);
}
.mfp-3d-unfold.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-3d-unfold {
  /* animate out */
}
.mfp-3d-unfold.mfp-removing .mfp-with-anim {
  transform: rotateY(60deg);
  opacity: 0;
}
.mfp-3d-unfold.mfp-removing.mfp-bg {
  opacity: 0;
}

/* 

====== Zoom-out effect ======

*/
.mfp-zoom-out {
  /* start state */
}
.mfp-zoom-out .mfp-with-anim {
  opacity: 0;
  transition: all 0.3s ease-in-out;
  transform: scale(1.3);
}
.mfp-zoom-out.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.mfp-zoom-out {
  /* animate in */
}
.mfp-zoom-out.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: scale(1);
}
.mfp-zoom-out.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-zoom-out {
  /* animate out */
}
.mfp-zoom-out.mfp-removing .mfp-with-anim {
  transform: scale(1.3);
  opacity: 0;
}
.mfp-zoom-out.mfp-removing.mfp-bg {
  opacity: 0;
}

/* 

====== "Hinge" close effect ======

*/
@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    transform: rotate(80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}
.hinge {
  animation-duration: 1s;
  animation-name: hinge;
}

.mfp-with-fade .mfp-content, .mfp-with-fade.mfp-bg {
  opacity: 0;
  transition: opacity 0.5s ease-out;
}
.mfp-with-fade.mfp-ready .mfp-content {
  opacity: 1;
}
.mfp-with-fade.mfp-ready.mfp-bg {
  opacity: 0.8;
}
.mfp-with-fade.mfp-removing.mfp-bg {
  opacity: 0;
}

.popup {
  max-width: 710px;
  margin-left: auto;
  margin-right: auto;
  background-color: white;
}

.mfp-bg,
.mfp-wrap {
  z-index: 99999 !important;
}

.icon {
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.nav-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}

.nav-menu--v {
  flex-direction: column;
}

.d-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.fd-c,
.fd--c {
  flex-direction: column;
  align-items: flex-start;
}

.ai-fs,
.ai--fs {
  align-items: flex-start;
}

.ai-fe,
.ai--fe {
  align-items: flex-end;
}

.ai-c,
.ai--c {
  align-items: center;
}

.jc-fs,
.jc--fs {
  justify-content: flex-start;
}

.jc-c,
.jc--c {
  justify-content: center;
}

.jc-fe,
.jc--fe {
  justify-content: flex-end;
}

.fg {
  position: relative;
  z-index: 9;
}

.hide,
.d-none {
  display: none;
}

.zoom-hover {
  transition: transform var(--brand--transition-duration) var(--brand--transition-easing), opacity var(--brand--transition-duration) var(--brand--transition-easing);
  will-change: transform, opacity;
}
.zoom-hover [class*=-image] {
  overflow: hidden;
}
.zoom-hover [class*=-image] img {
  transition: transform var(--brand--transition-duration) var(--brand--transition-easing), opacity var(--brand--transition-duration) var(--brand--transition-easing);
  will-change: transform, opacity;
}
.zoom-hover:hover [class*=-image] img {
  transform: scale(1.1);
}

.arrow-link i {
  transition: transform 250ms var(--brand--transition-easing), opacity 250ms var(--brand--transition-easing);
  will-change: transform, opacity;
}
.arrow-link:hover i {
  transform: translateX(0.8rem);
}

body.resizing .zoom-hover {
  transition: none;
}

.l-clamp {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.l-clamp--2 {
  -webkit-line-clamp: 2;
}

.l-clamp--3 {
  -webkit-line-clamp: 3;
}

.pos-a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.img--cover,
.img-cover,
.img-fit {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.text-center,
.text--center {
  text-align: center;
}

.list--inline {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 1rem;
}
.list--inline li {
  margin: 0;
  padding: 0;
}

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

.list--contact-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.list--contact-links li {
  margin: 0;
  padding: 0;
}
.list--contact-links li a {
  gap: 0.5rem;
  text-decoration: none;
}

.list--social-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
}
.list--social-links li {
  margin: 0;
  padding: 0;
}
.list--social-links li a {
  gap: 0.5rem;
}
.list--social-links li a[href=""] {
  display: none;
}

.image-transition {
  clip-path: inset(100% 0 0 0);
  transition: clip-path 0.5s ease, opacity 0.5s ease;
  transition-delay: 0.1s;
  opacity: 1;
}
.image-transition:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--brand--red);
  transition: transform 0.5s ease;
  transition-delay: 1s;
  transform: scaleY(1);
  transform-origin: 50% 0;
  opacity: 1;
}
.image-transition.animate-in {
  clip-path: inset(0 0 0 0);
  opacity: 1;
}
.image-transition.animate-in:after {
  transform: scaleY(0);
}

.fw {
  position: relative;
  transform: translateX(-50%);
  left: 50%;
  width: 100vw;
}

:root {
  --brand--bg-color: #011527;
  --brand--red: #E6263B;
  --brand--cyan: #13D3E1;
  --brand--green: #D1DE36;
  --brand--yellow: #F5FE89;
  --brand--heading-font: "sofia-pro", sans-serif;
  --brand--body-font: "sofia-pro", sans-serif;
  --brand--body-bg-color: var(--brand--bg-color);
  --brand--border-color: #707070;
  --brand--button-font-size: 1rem;
  --brand--button-height: 40px;
}

.site-header {
  color: white;
  z-index: 99;
}
.site-header .wrapper {
  height: calc(85px + 3rem);
  align-items: flex-start;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  max-width: 100%;
  max-width: 1920px;
}
@media (min-width: 768px) {
  .site-header .wrapper {
    height: calc(85px + 4rem);
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}
@media (min-width: 1200px) {
  .site-header .hamburger {
    display: none;
  }
}
.site-header .primary-nav {
  display: none;
}
@media (min-width: 1200px) {
  .site-header .primary-nav {
    display: block;
  }
}
.site-header .logo {
  max-width: 160px;
}
@media (min-width: 768px) {
  .site-header .logo {
    max-width: 170px;
  }
}
.site-header .logo--dubai {
  max-height: 85px;
}
@media (min-width: 992px) {
  .site-header .logo--dubai {
    max-height: 125px;
  }
}

.site-header-bg {
  display: none;
  position: absolute;
  pointer-events: none;
  aspect-ratio: 940/1501;
  height: auto;
  top: -376px;
  width: 630px;
  left: calc(100vw - 52px);
}
@media (min-width: 768px) {
  .site-header-bg {
    top: -260px;
    width: 768px;
    left: calc(100vw - 195px);
  }
}
@media (min-width: 1920px) {
  .site-header-bg {
    left: calc((100vw - 1920px) / 2 + 1920px - 185px);
  }
}
.site-header-bg .wrapper {
  max-width: 1920px;
  position: relative;
}

.site-header-bg-alt {
  max-width: none;
  aspect-ratio: 940/1501;
  width: 630px;
  height: auto;
  position: absolute;
  left: calc(100% - 0.6rem);
  top: -150px;
}
@media (min-width: 768px) {
  .site-header-bg-alt {
    width: 740px;
    left: calc(100% - 1.2rem);
    top: -150px;
  }
}
@media (min-width: 992px) {
  .site-header-bg-alt {
    top: -69px;
    width: 680px;
    left: calc(100vw - 85px);
  }
}
@media (min-width: 1200px) {
  .site-header-bg-alt {
    top: -69px;
    width: 700px;
    left: calc(100vw - 165px);
  }
}
@media (min-width: 1920px) {
  .site-header-bg-alt {
    top: -67px;
    width: 700px;
    left: calc((100vw - 1920px) / 2 + 1920px - 155px);
  }
}

body.page-shop .site-header-bg,
body.page-shop .site-header-bg-alt {
  display: none;
}

.site-header .logo svg path {
  transition: fill 100ms ease;
}
.site-header .logo a:hover svg g[data-name=school] path,
.site-header .logo a:hover svg g[data-name=popular] path,
.site-header .logo a:hover svg g[data-name=music] path {
  fill: var(--brand--red);
}
.site-header .logo a:hover svg g[data-name=eq] path {
  fill: white;
}

.site-footer {
  background-color: var(--brand--bg-color);
  color: white;
  line-height: 1.7;
  font-weight: 300;
  font-size: 1rem;
}
.site-footer .mid li,
.site-footer .mid address, .site-footer .lower li,
.site-footer .lower address {
  opacity: 0.8;
}
.site-footer .mid li:hover,
.site-footer .mid address:hover, .site-footer .lower li:hover,
.site-footer .lower address:hover {
  opacity: 1;
}
@media (min-width: 768px) {
  .site-footer .mid .wrapper {
    gap: 2rem;
  }
}
.site-footer a:hover {
  color: var(--brand--red);
}
.site-footer .logo {
  max-width: 235px;
}
.site-footer .logo-footer--dubai {
  width: auto;
  height: 145px;
}
@media (min-width: 992px) {
  .site-footer .logo-footer--dubai {
    height: 185px;
  }
}
.site-footer .logo,
.site-footer .social {
  width: 235px;
}
.site-footer .subscribe {
  flex: 1;
  max-width: 760px;
}
.site-footer .subscribe .consent {
  align-items: flex-start;
}
.site-footer .subscribe .consent label {
  font-weight: 200;
  cursor: pointer;
}
.site-footer .subscribe form {
  position: relative;
}
.site-footer .subscribe form .email {
  position: relative;
  width: 100%;
}
.site-footer .subscribe form .consent {
  gap: 0.8rem;
}
.site-footer .subscribe form .consent label {
  line-height: 1.5;
  font-weight: 300;
  opacity: 0.8;
}
.site-footer .subscribe form .consent label:hover {
  opacity: 1;
}
.site-footer .subscribe form button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
}
.site-footer .subscribe form button i {
  transition: transform 50ms ease, background-color 50ms ease;
}
.site-footer .subscribe form button:hover i {
  transform: translateX(5px);
  background-color: var(--brand--red);
}
.site-footer .subscribe form input:not([type=checkbox]):not([type=radio]) {
  width: 100%;
  height: 55px;
  border-radius: 55px;
  border: 1px solid white;
  background: transparent;
  background-color: rgba(1, 21, 39, 0.4);
  color: white;
  padding-left: 2rem;
  padding-right: 2rem;
  font-weight: 800;
  cursor: pointer;
}
@media (min-width: 768px) {
  .site-footer .subscribe form input:not([type=checkbox]):not([type=radio]) {
    height: 80px;
    border-radius: 80px;
  }
}
.site-footer .subscribe form input:not([type=checkbox]):not([type=radio])::-moz-placeholder {
  color: white;
  opacity: 0.7;
  font-weight: 800;
}
.site-footer .subscribe form input:not([type=checkbox]):not([type=radio])::placeholder {
  color: white;
  opacity: 0.7;
  font-weight: 800;
}
.site-footer .subscribe form input:not([type=checkbox]):not([type=radio]):hover::-moz-placeholder {
  opacity: 1;
}
.site-footer .subscribe form input:not([type=checkbox]):not([type=radio]):hover::placeholder {
  opacity: 1;
}
.site-footer .subscribe form input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #8e979f;
  border: 1px solid #3f4850;
  width: 0.9rem;
  height: 0.9rem;
  display: block;
  aspect-ratio: 1;
  margin-top: 0.4rem;
  position: relative;
  cursor: pointer;
}
.site-footer .subscribe form input[type=checkbox]:checked:after {
  display: block;
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: auto;
  aspect-ratio: 1;
  background-color: var(--brand--red);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd'%3E%3Cpath d='M22.6 3.5 8.05 18.19l-6.65-6.63L0 13l8.06 8L24 4.94Z' stroke='black' stroke-width='3'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd'%3E%3Cpath d='M22.6 3.5 8.05 18.19l-6.65-6.63L0 13l8.06 8L24 4.94Z' stroke='black' stroke-width='3'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
          mask-size: contain;
  z-index: 1;
  pointer-events: none;
}
.site-footer .upper .wrapper {
  align-items: flex-start;
  flex-direction: column;
}
.site-footer .upper .wrapper,
.site-footer .mid .wrapper,
.site-footer .lower .wrapper {
  padding-top: 1.5em;
  padding-bottom: 1.5rem;
  flex-direction: column;
  gap: 1.4rem;
}
@media (min-width: 768px) {
  .site-footer .upper .wrapper,
  .site-footer .mid .wrapper,
  .site-footer .lower .wrapper {
    gap: 2rem;
    padding-bottom: 3rem;
  }
}
@media (min-width: 992px) {
  .site-footer .upper .wrapper,
  .site-footer .mid .wrapper,
  .site-footer .lower .wrapper {
    flex-direction: row;
  }
}
.site-footer .upper .wrapper:after,
.site-footer .mid .wrapper:after,
.site-footer .lower .wrapper:after {
  content: "";
  border-bottom: 1px solid white;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: calc(100% - var(--gutter-x));
  transform: translateX(-50%);
}
.site-footer .lower .wrapper {
  padding-top: 1rem;
  gap: 1rem;
}
.site-footer .lower .wrapper:after {
  content: none;
}
.site-footer .heading--footer {
  margin-bottom: 1rem;
}
.site-footer .social ul {
  gap: 0.75rem;
}
.site-footer .social a:hover i {
  background-color: var(--brand--red);
}
.site-footer .featured-image {
  aspect-ratio: 1920/740;
  width: 100%;
  height: auto;
  position: relative;
  margin-bottom: -16rem;
  z-index: 0;
  min-height: 560px;
  min-height: 600px;
  background-color: var(--brand--bg-color);
}
.site-footer .featured-image img {
  mix-blend-mode: screen;
  opacity: 0.6;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 30%;
     object-position: center 30%;
  filter: brightness(1.2);
}
.site-footer .featured-image:before {
  content: "";
  background-image: linear-gradient(to top, #011527, transparent 65%);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.site-footer .navigation {
  flex-direction: column;
}
@media (min-width: 768px) {
  .site-footer .navigation {
    flex-direction: row;
    gap: 2rem;
  }
}
@media (min-width: 768px) {
  .site-footer .navigation #menu-footer-navigation {
    gap: 2rem;
  }
}
@media (min-width: 992px) {
  .site-footer .locations {
    flex-basis: 540px;
  }
}
.site-footer .locations__heading {
  font-weight: 800;
  font-size: 1.3rem;
}
.site-footer .locations address {
  line-height: 1.7;
  margin-bottom: 1rem;
}
.site-footer .locations ul {
  margin-top: auto;
}
.site-footer .locations a[href^=tel],
.site-footer .locations a[href^=mailto] {
  gap: 0.6rem;
}
.site-footer .locations .col {
  align-self: stretch;
}
.site-footer .locations__items {
  flex-direction: column;
}
@media (min-width: 768px) {
  .site-footer .locations__items {
    flex-direction: row;
  }
}
.site-footer .legal-links {
  margin-right: auto;
}
.site-footer .credit {
  opacity: 0.7;
  transition: opacity 150ms ease;
  transform: translateY(0.2rem);
  will-change: opacity;
}
@media (max-width: 767px) {
  .site-footer .credit {
    margin-top: 0.8rem;
    margin-bottom: -0.7rem;
    max-width: 8rem;
  }
}
.site-footer .credit:hover {
  opacity: 1;
}
@media (max-width: 991px) {
  .site-footer .lower .copyright .nav-menu {
    flex-direction: column;
    gap: 0;
  }
}
@media (max-width: 991px) {
  .site-footer .lower .legal-links {
    margin-right: 0;
  }
}
@media (max-width: 991px) {
  .site-footer .lower .legal-links .nav-menu {
    justify-content: center;
  }
}

#menu-footer-navigation {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1;
  gap: 1rem;
  opacity: 1;
}
#menu-footer-navigation > li {
  color: var(--brand--red);
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.3rem;
  margin-bottom: 1rem;
  opacity: 1;
}
#menu-footer-navigation .sub-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 1rem;
}
#menu-footer-navigation .sub-menu > li {
  text-transform: none;
  color: white;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.7;
}

@media (min-width: 768px) {
  #menu-footer-navigation {
    flex-direction: row;
  }
}
body.page-dubai .site-footer .copyright {
  display: none;
}

.dubai-legal {
  margin-top: 1rem;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 2rem;
  opacity: 0.9;
  font-size: 0.9rem;
  text-align: center;
}
@media (min-width: 768px) {
  .dubai-legal {
    margin-top: -1.5rem;
  }
}

.site-main {
  margin-top: calc(-85px - 4rem);
  padding-top: calc(85px + 4rem);
}

.heading--footer {
  text-transform: uppercase;
  color: var(--brand--red);
  font-weight: 800;
  font-size: 1.3rem;
}
.heading--section {
  font-weight: 800;
  text-transform: uppercase;
  font-size: 2.2rem;
}
@media (min-width: 576px) {
  .heading--section {
    font-size: 2.4rem;
  }
}
@media (min-width: 768px) {
  .heading--section {
    font-size: 2.8rem;
  }
}
.heading--calendar-month {
  color: var(--brand--red);
  font-weight: 800;
  font-size: 1.9rem;
}
@media (min-width: 992px) {
  .heading--calendar-month {
    font-size: 2.4rem;
  }
}
.heading--news-item {
  font-weight: 800;
  font-size: 1.8rem;
}
.heading--page-header {
  text-transform: uppercase;
  font-weight: 800;
  line-height: 0.9;
  font-size: 5rem;
  font-size: 3rem;
}
@media (min-width: 768px) {
  .heading--page-header {
    line-height: 0.8;
    font-size: 6rem;
  }
}
@media (min-width: 992px) {
  .heading--page-header {
    font-size: 10rem;
  }
}
.heading--single-news-header {
  text-transform: uppercase;
  font-weight: 900;
  line-height: 1;
  margin-top: -1rem;
  font-size: 2.4rem;
}
@media (min-width: 576px) {
  .heading--single-news-header {
    font-size: 5rem;
  }
}
@media (min-width: 768px) {
  .heading--single-news-header {
    font-size: 6.2rem;
  }
}
.heading--single-team-member-header {
  text-transform: uppercase;
  font-weight: 900;
  line-height: 1;
  margin-top: -1rem;
  font-size: 2.4rem;
}
@media (min-width: 768px) {
  .heading--single-team-member-header {
    font-size: 5rem;
  }
}
@media (min-width: 992px) {
  .heading--single-team-member-header {
    font-size: 6.2rem;
  }
}
.heading--meta {
  color: var(--brand--red);
  font-size: 1.2rem;
  font-weight: 400;
  font-weight: 700;
}
.heading--image-carousel {
  font-size: 5.5rem;
  font-weight: 600;
  line-height: 0.95;
}
.heading--syllabus {
  font-weight: 400;
  font-size: 2.8rem;
}
.heading--gallery-carousel {
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 0.95;
}
@media (min-width: 768px) {
  .heading--gallery-carousel {
    font-size: 4rem;
    font-weight: 600;
  }
}
.heading--expertise {
  font-size: 5rem;
  font-size: 4.5rem;
  font-weight: 900;
  text-transform: uppercase;
  line-height: 0.8;
}
@media (min-width: 768px) {
  .heading--expertise {
    font-size: 8rem;
  }
}
@media (min-width: 992px) {
  .heading--expertise {
    font-size: 10rem;
  }
}
.heading--statement {
  font-size: 2.4rem;
  font-weight: 800;
  text-wrap: pretty;
}
@media (min-width: 768px) {
  .heading--statement {
    font-size: 3.2rem;
  }
}
@media (min-width: 992px) {
  .heading--statement {
    font-size: 3.8rem;
  }
}
@media (min-width: 1400px) {
  .heading--statement {
    font-size: 4.8rem;
  }
}
.heading--event-overview {
  line-height: 1.2;
  font-size: 2.4rem;
  font-weight: 800;
  text-wrap: pretty;
}
@media (min-width: 768px) {
  .heading--event-overview {
    font-size: 3.2rem;
  }
}
@media (min-width: 992px) {
  .heading--event-overview {
    font-size: 3.2rem;
  }
}
@media (min-width: 1200px) {
  .heading--event-overview {
    font-size: 3.8rem;
  }
}
@media (min-width: 1400px) {
  .heading--event-overview {
    font-size: 4.2rem;
  }
}
.heading--image-carousel {
  font-size: 2.4rem;
  font-weight: 800;
  text-wrap: pretty;
}
@media (min-width: 768px) {
  .heading--image-carousel {
    font-size: 3.2rem;
  }
}
@media (min-width: 992px) {
  .heading--image-carousel {
    font-size: 3.8rem;
  }
}
@media (min-width: 1400px) {
  .heading--image-carousel {
    font-size: 4.8rem;
  }
}
.heading--basic-page-layout {
  font-size: 2.4rem;
  text-transform: uppercase;
  font-weight: 800;
  line-height: 0.8;
}
@media (min-width: 768px) {
  .heading--basic-page-layout {
    font-size: 4rem;
  }
}
.heading--location-list {
  text-transform: uppercase;
  font-size: 2.4rem;
  font-weight: 900;
}
@media (min-width: 768px) {
  .heading--location-list {
    font-size: 7rem;
  }
}
.heading--career-apply {
  font-size: 1.8rem !important;
  text-transform: uppercase;
  font-weight: 800;
  line-height: 0.9 !important;
  margin-bottom: 1rem !important;
  text-transform: none;
}
.heading--signup-form {
  font-size: 2.4rem;
  text-transform: uppercase;
  font-weight: 800;
  line-height: 0.8;
}
.heading--price-grid {
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 0.8;
}

.entry-content {
  line-height: 2;
  font-size: 1.1rem;
  font-weight: 300;
  line-height: 1.6;
  font-size: 1.2rem;
  font-weight: 300;
}

.icon {
  display: block;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.icon--facebook {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31.42' height='31.42'%3E%3Cg data-name='Group 75'%3E%3Cpath data-name='Path 804' d='M31.42 15.8a15.7 15.7 0 1 0-18.17 15.62V20.37H9.27v-4.56h3.99v-3.49c0-3.96 2.34-6.14 5.93-6.14a24.03 24.03 0 0 1 3.52.3v3.89h-1.99a2.28 2.28 0 0 0-2.55 2.47v2.97h4.35l-.7 4.56h-3.66v11.04a15.78 15.78 0 0 0 13.26-15.6Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31.42' height='31.42'%3E%3Cg data-name='Group 75'%3E%3Cpath data-name='Path 804' d='M31.42 15.8a15.7 15.7 0 1 0-18.17 15.62V20.37H9.27v-4.56h3.99v-3.49c0-3.96 2.34-6.14 5.93-6.14a24.03 24.03 0 0 1 3.52.3v3.89h-1.99a2.28 2.28 0 0 0-2.55 2.47v2.97h4.35l-.7 4.56h-3.66v11.04a15.78 15.78 0 0 0 13.26-15.6Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  width: 31px;
  height: auto;
  aspect-ratio: 1;
  background-color: white;
  background-image: none;
}
.icon--instagram {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31.7' height='31.7'%3E%3Cg data-name='Group 76'%3E%3Cpath data-name='Path 805' d='M15.85 0c-4.3 0-4.84.02-6.53.1a11.68 11.68 0 0 0-3.85.74 7.76 7.76 0 0 0-2.8 1.82 7.78 7.78 0 0 0-1.84 2.8A11.61 11.61 0 0 0 .1 9.32c-.08 1.7-.1 2.24-.1 6.54s.02 4.85.1 6.54a11.68 11.68 0 0 0 .74 3.85 8.12 8.12 0 0 0 4.63 4.63 11.64 11.64 0 0 0 3.85.74c1.7.07 2.23.1 6.54.1s4.84-.02 6.53-.1a11.7 11.7 0 0 0 3.85-.74 8.12 8.12 0 0 0 4.64-4.63 11.73 11.73 0 0 0 .73-3.85c.08-1.7.1-2.23.1-6.54s-.02-4.84-.1-6.53a11.72 11.72 0 0 0-.73-3.85 7.78 7.78 0 0 0-1.83-2.8A7.75 7.75 0 0 0 26.24.82 11.66 11.66 0 0 0 22.39.1c-1.7-.08-2.23-.1-6.54-.1Zm-1.42 2.86h1.43c4.23 0 4.73.01 6.4.09a8.79 8.79 0 0 1 2.94.54 4.92 4.92 0 0 1 1.83 1.19A4.9 4.9 0 0 1 28.2 6.5a8.7 8.7 0 0 1 .55 2.94c.07 1.67.09 2.18.09 6.4s-.02 4.74-.1 6.4a8.77 8.77 0 0 1-.54 2.95 5.25 5.25 0 0 1-3.01 3.01 8.72 8.72 0 0 1-2.94.55c-1.67.07-2.18.09-6.4.09s-4.74-.02-6.4-.1a8.76 8.76 0 0 1-2.96-.54 4.91 4.91 0 0 1-1.82-1.19A4.91 4.91 0 0 1 3.5 25.2a8.76 8.76 0 0 1-.54-2.94c-.08-1.67-.1-2.17-.1-6.4s.02-4.74.1-6.4A8.77 8.77 0 0 1 3.5 6.5a4.92 4.92 0 0 1 1.18-1.83A4.9 4.9 0 0 1 6.51 3.5a8.76 8.76 0 0 1 2.94-.55c1.46-.06 2.03-.08 4.98-.09Zm9.89 2.63a1.9 1.9 0 1 0 1.9 1.9 1.9 1.9 0 0 0-1.9-1.9ZM15.86 7.7A8.14 8.14 0 1 0 24 15.85a8.14 8.14 0 0 0-8.14-8.14Zm0 2.86a5.29 5.29 0 1 1-5.29 5.28 5.29 5.29 0 0 1 5.29-5.28Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31.7' height='31.7'%3E%3Cg data-name='Group 76'%3E%3Cpath data-name='Path 805' d='M15.85 0c-4.3 0-4.84.02-6.53.1a11.68 11.68 0 0 0-3.85.74 7.76 7.76 0 0 0-2.8 1.82 7.78 7.78 0 0 0-1.84 2.8A11.61 11.61 0 0 0 .1 9.32c-.08 1.7-.1 2.24-.1 6.54s.02 4.85.1 6.54a11.68 11.68 0 0 0 .74 3.85 8.12 8.12 0 0 0 4.63 4.63 11.64 11.64 0 0 0 3.85.74c1.7.07 2.23.1 6.54.1s4.84-.02 6.53-.1a11.7 11.7 0 0 0 3.85-.74 8.12 8.12 0 0 0 4.64-4.63 11.73 11.73 0 0 0 .73-3.85c.08-1.7.1-2.23.1-6.54s-.02-4.84-.1-6.53a11.72 11.72 0 0 0-.73-3.85 7.78 7.78 0 0 0-1.83-2.8A7.75 7.75 0 0 0 26.24.82 11.66 11.66 0 0 0 22.39.1c-1.7-.08-2.23-.1-6.54-.1Zm-1.42 2.86h1.43c4.23 0 4.73.01 6.4.09a8.79 8.79 0 0 1 2.94.54 4.92 4.92 0 0 1 1.83 1.19A4.9 4.9 0 0 1 28.2 6.5a8.7 8.7 0 0 1 .55 2.94c.07 1.67.09 2.18.09 6.4s-.02 4.74-.1 6.4a8.77 8.77 0 0 1-.54 2.95 5.25 5.25 0 0 1-3.01 3.01 8.72 8.72 0 0 1-2.94.55c-1.67.07-2.18.09-6.4.09s-4.74-.02-6.4-.1a8.76 8.76 0 0 1-2.96-.54 4.91 4.91 0 0 1-1.82-1.19A4.91 4.91 0 0 1 3.5 25.2a8.76 8.76 0 0 1-.54-2.94c-.08-1.67-.1-2.17-.1-6.4s.02-4.74.1-6.4A8.77 8.77 0 0 1 3.5 6.5a4.92 4.92 0 0 1 1.18-1.83A4.9 4.9 0 0 1 6.51 3.5a8.76 8.76 0 0 1 2.94-.55c1.46-.06 2.03-.08 4.98-.09Zm9.89 2.63a1.9 1.9 0 1 0 1.9 1.9 1.9 1.9 0 0 0-1.9-1.9ZM15.86 7.7A8.14 8.14 0 1 0 24 15.85a8.14 8.14 0 0 0-8.14-8.14Zm0 2.86a5.29 5.29 0 1 1-5.29 5.28 5.29 5.29 0 0 1 5.29-5.28Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  width: 31px;
  height: auto;
  aspect-ratio: 1;
  background-color: white;
  background-image: none;
}
.icon--linkedin {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72'%3E%3Cdefs%3E%3Cmask id='a'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cpath d='M62 62H51.316V43.802c0-4.99-1.896-7.777-5.845-7.777-4.296 0-6.54 2.901-6.54 7.777V62H28.632V27.333H38.93v4.67s3.096-5.729 10.453-5.729c7.353 0 12.617 4.49 12.617 13.777V62ZM16.35 22.794c-3.508 0-6.35-2.864-6.35-6.397C10 12.864 12.842 10 16.35 10c3.507 0 6.347 2.864 6.347 6.397 0 3.533-2.84 6.397-6.348 6.397ZM11.032 62h10.736V27.333H11.033V62Z'/%3E%3C/mask%3E%3C/defs%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M8 72h56a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v56a8 8 0 0 0 8 8Z' mask='url(%23a)'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72'%3E%3Cdefs%3E%3Cmask id='a'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cpath d='M62 62H51.316V43.802c0-4.99-1.896-7.777-5.845-7.777-4.296 0-6.54 2.901-6.54 7.777V62H28.632V27.333H38.93v4.67s3.096-5.729 10.453-5.729c7.353 0 12.617 4.49 12.617 13.777V62ZM16.35 22.794c-3.508 0-6.35-2.864-6.35-6.397C10 12.864 12.842 10 16.35 10c3.507 0 6.347 2.864 6.347 6.397 0 3.533-2.84 6.397-6.348 6.397ZM11.032 62h10.736V27.333H11.033V62Z'/%3E%3C/mask%3E%3C/defs%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M8 72h56a8 8 0 0 0 8-8V8a8 8 0 0 0-8-8H8a8 8 0 0 0-8 8v56a8 8 0 0 0 8 8Z' mask='url(%23a)'/%3E%3C/svg%3E");
  width: 31px;
  height: auto;
  aspect-ratio: 1;
  background-color: white;
  background-image: none;
}
.icon--youtube {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44.72' height='31.42'%3E%3Cg data-name='Group 77'%3E%3Cpath data-name='Path 806' d='M22.5 0h.26c2.3 0 13.94.1 17.07.94A5.62 5.62 0 0 1 43.8 4.9a25.31 25.31 0 0 1 .61 3.92l.03.3.06.72.03.3c.18 2.55.2 4.94.2 5.46v.21c0 .55-.02 3.1-.23 5.76l-.02.3-.02.29a27.69 27.69 0 0 1-.66 4.35 5.61 5.61 0 0 1-3.96 3.97c-3.24.87-15.56.94-17.27.94h-.4c-.86 0-4.44-.02-8.18-.15l-.48-.01-.24-.02-.48-.02-.48-.02a44.94 44.94 0 0 1-7.42-.72A5.61 5.61 0 0 1 .93 26.5a27.64 27.64 0 0 1-.66-4.35l-.02-.3-.02-.29q-.2-2.84-.23-5.69v-.34c0-.6.03-2.68.18-4.97l.02-.3v-.14l.03-.29.06-.73.03-.29A25.26 25.26 0 0 1 .93 4.9 5.61 5.61 0 0 1 4.9.93 45.89 45.89 0 0 1 12.3.21l.47-.02.48-.02h.24l.48-.03q4-.13 7.99-.14h.54Zm-4.6 8.97v13.47l11.61-6.73Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44.72' height='31.42'%3E%3Cg data-name='Group 77'%3E%3Cpath data-name='Path 806' d='M22.5 0h.26c2.3 0 13.94.1 17.07.94A5.62 5.62 0 0 1 43.8 4.9a25.31 25.31 0 0 1 .61 3.92l.03.3.06.72.03.3c.18 2.55.2 4.94.2 5.46v.21c0 .55-.02 3.1-.23 5.76l-.02.3-.02.29a27.69 27.69 0 0 1-.66 4.35 5.61 5.61 0 0 1-3.96 3.97c-3.24.87-15.56.94-17.27.94h-.4c-.86 0-4.44-.02-8.18-.15l-.48-.01-.24-.02-.48-.02-.48-.02a44.94 44.94 0 0 1-7.42-.72A5.61 5.61 0 0 1 .93 26.5a27.64 27.64 0 0 1-.66-4.35l-.02-.3-.02-.29q-.2-2.84-.23-5.69v-.34c0-.6.03-2.68.18-4.97l.02-.3v-.14l.03-.29.06-.73.03-.29A25.26 25.26 0 0 1 .93 4.9 5.61 5.61 0 0 1 4.9.93 45.89 45.89 0 0 1 12.3.21l.47-.02.48-.02h.24l.48-.03q4-.13 7.99-.14h.54Zm-4.6 8.97v13.47l11.61-6.73Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E");
  width: 44px;
  height: auto;
  aspect-ratio: 44/31;
  background-color: white;
  background-image: none;
}
.icon--x {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31.39' height='31.42'%3E%3Cpath d='M18.68 13.3 30.38 0H27.6L17.45 11.55 9.35 0H0l12.26 17.47L0 31.42h2.77l10.71-12.2 8.56 12.2h9.35M3.77 2.04h4.25L27.6 29.48h-4.25' fill='%23fff'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31.39' height='31.42'%3E%3Cpath d='M18.68 13.3 30.38 0H27.6L17.45 11.55 9.35 0H0l12.26 17.47L0 31.42h2.77l10.71-12.2 8.56 12.2h9.35M3.77 2.04h4.25L27.6 29.48h-4.25' fill='%23fff'/%3E%3C/svg%3E");
  width: 31px;
  height: auto;
  aspect-ratio: 1;
  background-color: white;
  background-image: none;
}
.icon--plectrum {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.65' height='11.2'%3E%3Cg data-name='Group 274'%3E%3Cg data-name='Group 273'%3E%3Cpath data-name='Path 867' d='M5.33 11.2C3.76 10.75 0 5.77 0 3.52.24.82 3.01-.02 5.33 0c2.33-.02 5.1.82 5.32 3.52 0 2.25-3.65 7.28-5.32 7.68Z' fill='%23e6263b' fill-rule='evenodd'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  width: 11px;
  height: auto;
  aspect-ratio: 10.6/11.2;
}
.icon--right-arrow {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.26' height='9.86'%3E%3Cg data-name='Group 6'%3E%3Cpath data-name='Path 38' d='M0 4.93a.7.7 0 0 1 .7-.7h8.15L5.83 1.2a.7.7 0 0 1 1-1l4.23 4.22a.7.7 0 0 1 0 1L6.83 9.65a.7.7 0 0 1-1-1l3.02-3.02H.7a.7.7 0 0 1-.7-.7Z' fill='%23e6263b' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E");
  width: 11px;
  height: auto;
  aspect-ratio: 11.26/9.86;
}
.icon--right-arrow.white {
  background-image: none;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28.08' height='24.57'%3E%3Cg data-name='Group 6'%3E%3Cpath data-name='Path 38' d='M0 12.29a1.75 1.75 0 0 1 1.76-1.76h20.33L14.55 3A1.76 1.76 0 1 1 17.04.5l10.52 10.53a1.75 1.75 0 0 1 0 2.49L17.04 24.06a1.76 1.76 0 0 1-2.49-2.49l7.54-7.53H1.76A1.75 1.75 0 0 1 0 12.29Z' fill='%23fff' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28.08' height='24.57'%3E%3Cg data-name='Group 6'%3E%3Cpath data-name='Path 38' d='M0 12.29a1.75 1.75 0 0 1 1.76-1.76h20.33L14.55 3A1.76 1.76 0 1 1 17.04.5l10.52 10.53a1.75 1.75 0 0 1 0 2.49L17.04 24.06a1.76 1.76 0 0 1-2.49-2.49l7.54-7.53H1.76A1.75 1.75 0 0 1 0 12.29Z' fill='%23fff' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E");
  width: 28px;
  height: auto;
  aspect-ratio: 28.08/24.57;
  background-color: white;
}
.icon--phone {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 17 26' xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2'%3E%3Cpath d='m21.84 18.42-3.12 3.1c-.44.43-1.05.66-1.67.63a14.45 14.45 0 0 1-7.16-2.7 27.63 27.63 0 0 1-8.36-9.11 11.8 11.8 0 0 1-1.52-5.2c-.04-.63.2-1.24.63-1.7L3.76.33a1.03 1.03 0 0 1 1.7.29l2.5 4.76c.25.53.14 1.16-.28 1.57L6.53 8.1a.56.56 0 0 0-.11.33 9.8 9.8 0 0 0 2.96 4.37c1.18 1.08 2.44 2.55 4.1 2.9.2.08.42.05.6-.06l1.33-1.36a1.53 1.53 0 0 1 1.62-.24h.03l4.53 2.68a1.1 1.1 0 0 1 .26 1.71Z' style='fill:%23e6263b;fill-rule:nonzero' transform='rotate(23.94 5.54 5.87)'/%3E%3C/svg%3E");
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29.25' height='29.25'%3E%3Cpath data-name='Path 801' d='m21.48 25.73-4.12 1.56a2.26 2.26 0 0 1-1.78-.1 14.45 14.45 0 0 1-5.45-5.38A27.65 27.65 0 0 1 6.2 10.07a11.8 11.8 0 0 1 .73-5.37A2.28 2.28 0 0 1 8.19 3.4l4.13-1.58a1.03 1.03 0 0 1 1.43.94l.36 5.38a1.38 1.38 0 0 1-.9 1.32l-1.52.59a.57.57 0 0 0-.24.25 9.81 9.81 0 0 0 .92 5.2c.64 1.46 1.2 3.32 2.57 4.31a.65.65 0 0 0 .57.2l1.78-.7a1.53 1.53 0 0 1 1.58.44h.02l3.05 4.3a1.1 1.1 0 0 1-.46 1.67Z' fill='%23e6263b'/%3E%3C/svg%3E");
  width: 17px;
  height: auto;
  aspect-ratio: 17/26;
}
.icon--phone--white {
  background-image: none;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29.25' height='29.25'%3E%3Cpath data-name='Path 801' d='m21.48 25.73-4.12 1.56a2.26 2.26 0 0 1-1.78-.1 14.45 14.45 0 0 1-5.45-5.38A27.65 27.65 0 0 1 6.2 10.07a11.8 11.8 0 0 1 .73-5.37A2.28 2.28 0 0 1 8.19 3.4l4.13-1.58a1.03 1.03 0 0 1 1.43.94l.36 5.38a1.38 1.38 0 0 1-.9 1.32l-1.52.59a.57.57 0 0 0-.24.25 9.81 9.81 0 0 0 .92 5.2c.64 1.46 1.2 3.32 2.57 4.31a.65.65 0 0 0 .57.2l1.78-.7a1.53 1.53 0 0 1 1.58.44h.02l3.05 4.3a1.1 1.1 0 0 1-.46 1.67Z' fill='%23e6263b'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29.25' height='29.25'%3E%3Cpath data-name='Path 801' d='m21.48 25.73-4.12 1.56a2.26 2.26 0 0 1-1.78-.1 14.45 14.45 0 0 1-5.45-5.38A27.65 27.65 0 0 1 6.2 10.07a11.8 11.8 0 0 1 .73-5.37A2.28 2.28 0 0 1 8.19 3.4l4.13-1.58a1.03 1.03 0 0 1 1.43.94l.36 5.38a1.38 1.38 0 0 1-.9 1.32l-1.52.59a.57.57 0 0 0-.24.25 9.81 9.81 0 0 0 .92 5.2c.64 1.46 1.2 3.32 2.57 4.31a.65.65 0 0 0 .57.2l1.78-.7a1.53 1.53 0 0 1 1.58.44h.02l3.05 4.3a1.1 1.1 0 0 1-.46 1.67Z' fill='%23e6263b'/%3E%3C/svg%3E");
  width: 17px;
  height: auto;
  aspect-ratio: 17/26;
  background-color: white;
}
.icon--email {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.47' height='13.11'%3E%3Cg fill='%23e6263b'%3E%3Cpath data-name='Path 802' d='M16.6 0a1.1 1.1 0 0 0-.23 0H1.1a1.1 1.1 0 0 0-.3.05l7.9 7.86Z'/%3E%3Cpath data-name='Path 803' d='M17.4.77 9.46 8.68a1.1 1.1 0 0 1-1.54 0L.04.83A1.1 1.1 0 0 0 0 1.1v10.92a1.1 1.1 0 0 0 1.1 1.09h15.28a1.1 1.1 0 0 0 1.1-1.1V1.1a1.1 1.1 0 0 0-.07-.33ZM1.85 12.02h-.76v-.78L5.05 7.3l.77.77Zm14.53 0h-.77l-3.98-3.95.77-.77 3.97 3.94Z'/%3E%3C/g%3E%3C/svg%3E");
  width: 18px;
  height: auto;
  aspect-ratio: 17.47/13.11;
}
.icon--email--white {
  background-image: none;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.47' height='13.11'%3E%3Cg fill='%23e6263b'%3E%3Cpath data-name='Path 802' d='M16.6 0a1.1 1.1 0 0 0-.23 0H1.1a1.1 1.1 0 0 0-.3.05l7.9 7.86Z'/%3E%3Cpath data-name='Path 803' d='M17.4.77 9.46 8.68a1.1 1.1 0 0 1-1.54 0L.04.83A1.1 1.1 0 0 0 0 1.1v10.92a1.1 1.1 0 0 0 1.1 1.09h15.28a1.1 1.1 0 0 0 1.1-1.1V1.1a1.1 1.1 0 0 0-.07-.33ZM1.85 12.02h-.76v-.78L5.05 7.3l.77.77Zm14.53 0h-.77l-3.98-3.95.77-.77 3.97 3.94Z'/%3E%3C/g%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.47' height='13.11'%3E%3Cg fill='%23e6263b'%3E%3Cpath data-name='Path 802' d='M16.6 0a1.1 1.1 0 0 0-.23 0H1.1a1.1 1.1 0 0 0-.3.05l7.9 7.86Z'/%3E%3Cpath data-name='Path 803' d='M17.4.77 9.46 8.68a1.1 1.1 0 0 1-1.54 0L.04.83A1.1 1.1 0 0 0 0 1.1v10.92a1.1 1.1 0 0 0 1.1 1.09h15.28a1.1 1.1 0 0 0 1.1-1.1V1.1a1.1 1.1 0 0 0-.07-.33ZM1.85 12.02h-.76v-.78L5.05 7.3l.77.77Zm14.53 0h-.77l-3.98-3.95.77-.77 3.97 3.94Z'/%3E%3C/g%3E%3C/svg%3E");
  width: 18px;
  height: auto;
  aspect-ratio: 17.47/13.11;
  background-color: white;
}
.icon--carousel-prev, .icon--carousel-next {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48.16' height='48.16'%3E%3Cpath data-name='Path 60' d='M28.74 11.74 16.41 24.09 28.75 36.4l2-2-10.33-10.33 10.33-10.33-2-2ZM0 24.09A24.08 24.08 0 1 0 24.08 0 24.1 24.1 0 0 0 0 24.08Zm2.83 0a21.25 21.25 0 1 1 21.25 21.25A21.27 21.27 0 0 1 2.83 24.08Z' fill='%23fff'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48.16' height='48.16'%3E%3Cpath data-name='Path 60' d='M28.74 11.74 16.41 24.09 28.75 36.4l2-2-10.33-10.33 10.33-10.33-2-2ZM0 24.09A24.08 24.08 0 1 0 24.08 0 24.1 24.1 0 0 0 0 24.08Zm2.83 0a21.25 21.25 0 1 1 21.25 21.25A21.27 21.27 0 0 1 2.83 24.08Z' fill='%23fff'/%3E%3C/svg%3E");
  width: 42px;
  height: auto;
  aspect-ratio: 1;
  background-color: white;
}
@media (min-width: 768px) {
  .icon--carousel-prev, .icon--carousel-next {
    width: 48px;
  }
}
.icon--carousel-next {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48.16' height='48.16'%3E%3Cpath data-name='Path 60' d='m19.42 11.74 12.33 12.34L19.4 36.42l-2-2 10.33-10.34-10.33-10.33Zm28.74 12.34A24.08 24.08 0 1 1 24.08 0a24.1 24.1 0 0 1 24.08 24.08Zm-2.83 0a21.25 21.25 0 1 0-21.25 21.25 21.27 21.27 0 0 0 21.25-21.25Z' fill='%23fff'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48.16' height='48.16'%3E%3Cpath data-name='Path 60' d='m19.42 11.74 12.33 12.34L19.4 36.42l-2-2 10.33-10.34-10.33-10.33Zm28.74 12.34A24.08 24.08 0 1 1 24.08 0a24.1 24.1 0 0 1 24.08 24.08Zm-2.83 0a21.25 21.25 0 1 0-21.25 21.25 21.27 21.27 0 0 0 21.25-21.25Z' fill='%23fff'/%3E%3C/svg%3E");
}
.icon--back-arrow {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32.45' height='26.51'%3E%3Cg fill='none' stroke='%23e6263b' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath data-name='Path 860' d='m31.45 13.28-30.1-.02'/%3E%3Cpath data-name='Path 861' d='M12.82 25.1 1 13.26 12.82 1.4'/%3E%3C/g%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32.45' height='26.51'%3E%3Cg fill='none' stroke='%23e6263b' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath data-name='Path 860' d='m31.45 13.28-30.1-.02'/%3E%3Cpath data-name='Path 861' d='M12.82 25.1 1 13.26 12.82 1.4'/%3E%3C/g%3E%3C/svg%3E");
  width: 32px;
  height: auto;
  aspect-ratio: 32.45/26.51;
  background-color: var(--brand--red);
}
.icon--expand {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36.42' height='36.42'%3E%3Cg data-name='Group 151'%3E%3Cpath data-name='Path 859' d='M18.21 0c-.4 0-.8.01-1.19.04l.15 2.27a16.2 16.2 0 0 1 2.09 0L19.4.04Q18.8 0 18.2 0Zm-3.55.35a18.83 18.83 0 0 0-2.3.61l.73 2.16a15.68 15.68 0 0 1 2.01-.54L14.66.35Zm9.4.61a18.09 18.09 0 0 0-2.3-.61l-.44 2.23a16.06 16.06 0 0 1 2.02.54Zm4.27 2.1a18.21 18.21 0 0 0-2.06-1.18l-1.01 2.04a16.11 16.11 0 0 1 1.8 1.04l1.27-1.9ZM10.15 1.89A17.95 17.95 0 0 0 8.1 3.07l1.27 1.89a16.1 16.1 0 0 1 1.8-1.04ZM6.2 4.52A18.38 18.38 0 0 0 4.52 6.2l1.71 1.5a16.1 16.1 0 0 1 1.48-1.47ZM31.9 6.2a18.34 18.34 0 0 0-1.68-1.68l-1.5 1.71a15.83 15.83 0 0 1 1.47 1.48Zm2.64 3.95a18.16 18.16 0 0 0-1.2-2.06l-1.88 1.27a16.1 16.1 0 0 1 1.05 1.8l2.04-1ZM3.07 8.09a17.47 17.47 0 0 0-1.2 2.06l2.05 1.01a16.11 16.11 0 0 1 1.04-1.8l-1.9-1.27Zm-2.1 4.27a18.09 18.09 0 0 0-.62 2.3l2.23.44a16.06 16.06 0 0 1 .54-2.01l-2.16-.73Zm35.1 2.3a18.08 18.08 0 0 0-.6-2.3l-2.17.73a15.68 15.68 0 0 1 .54 2l2.23-.43ZM.05 17.02a18.47 18.47 0 0 0 0 2.38l2.27-.14a16.2 16.2 0 0 1 0-2.1l-2.27-.14Zm36.38 1.2c0-.4-.01-.8-.04-1.2l-2.27.15a16.19 16.19 0 0 1 0 2.09l2.27.14q.04-.6.04-1.19ZM.35 21.75a18.83 18.83 0 0 0 .61 2.3l2.16-.73a15.8 15.8 0 0 1-.54-2.01l-2.23.45Zm35.1 2.3a17.74 17.74 0 0 0 .62-2.3l-2.23-.44a16.06 16.06 0 0 1-.54 2.01l2.16.73Zm-33.58 2.2a18.21 18.21 0 0 0 1.2 2.07l1.89-1.27a15.93 15.93 0 0 1-1.04-1.8l-2.04 1Zm31.48 2.06a17.47 17.47 0 0 0 1.2-2.06l-2.04-1a16.11 16.11 0 0 1-1.05 1.8l1.9 1.26Zm-28.83 1.9A18.38 18.38 0 0 0 6.2 31.9l1.5-1.71a16.04 16.04 0 0 1-1.48-1.48l-1.7 1.5Zm25.7 1.68a18.38 18.38 0 0 0 1.68-1.68l-1.71-1.5a15.56 15.56 0 0 1-1.48 1.47Zm-3.95 2.64a17.95 17.95 0 0 0 2.06-1.19l-1.27-1.89a16.1 16.1 0 0 1-1.8 1.04l1 2.04ZM8.09 33.35a17.47 17.47 0 0 0 2.06 1.2l1.01-2.04a15.93 15.93 0 0 1-1.8-1.05Zm4.27 2.11a17.74 17.74 0 0 0 2.3.61l.44-2.23a15.83 15.83 0 0 1-2.01-.54l-.73 2.16Zm9.4.62a18.09 18.09 0 0 0 2.3-.62l-.73-2.16a15.83 15.83 0 0 1-2 .54l.43 2.23Zm-4.74.3a18.44 18.44 0 0 0 2.38 0l-.14-2.27a16.19 16.19 0 0 1-2.1 0l-.14 2.27Zm2.33-26.14a1.14 1.14 0 1 0-2.28 0v6.83h-6.83a1.14 1.14 0 1 0 0 2.28h6.83v6.83a1.14 1.14 0 1 0 2.28 0v-6.83h6.83a1.14 1.14 0 1 0 0-2.28h-6.83Z' fill='%23e6263b'/%3E%3C/g%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36.42' height='36.42'%3E%3Cg data-name='Group 151'%3E%3Cpath data-name='Path 859' d='M18.21 0c-.4 0-.8.01-1.19.04l.15 2.27a16.2 16.2 0 0 1 2.09 0L19.4.04Q18.8 0 18.2 0Zm-3.55.35a18.83 18.83 0 0 0-2.3.61l.73 2.16a15.68 15.68 0 0 1 2.01-.54L14.66.35Zm9.4.61a18.09 18.09 0 0 0-2.3-.61l-.44 2.23a16.06 16.06 0 0 1 2.02.54Zm4.27 2.1a18.21 18.21 0 0 0-2.06-1.18l-1.01 2.04a16.11 16.11 0 0 1 1.8 1.04l1.27-1.9ZM10.15 1.89A17.95 17.95 0 0 0 8.1 3.07l1.27 1.89a16.1 16.1 0 0 1 1.8-1.04ZM6.2 4.52A18.38 18.38 0 0 0 4.52 6.2l1.71 1.5a16.1 16.1 0 0 1 1.48-1.47ZM31.9 6.2a18.34 18.34 0 0 0-1.68-1.68l-1.5 1.71a15.83 15.83 0 0 1 1.47 1.48Zm2.64 3.95a18.16 18.16 0 0 0-1.2-2.06l-1.88 1.27a16.1 16.1 0 0 1 1.05 1.8l2.04-1ZM3.07 8.09a17.47 17.47 0 0 0-1.2 2.06l2.05 1.01a16.11 16.11 0 0 1 1.04-1.8l-1.9-1.27Zm-2.1 4.27a18.09 18.09 0 0 0-.62 2.3l2.23.44a16.06 16.06 0 0 1 .54-2.01l-2.16-.73Zm35.1 2.3a18.08 18.08 0 0 0-.6-2.3l-2.17.73a15.68 15.68 0 0 1 .54 2l2.23-.43ZM.05 17.02a18.47 18.47 0 0 0 0 2.38l2.27-.14a16.2 16.2 0 0 1 0-2.1l-2.27-.14Zm36.38 1.2c0-.4-.01-.8-.04-1.2l-2.27.15a16.19 16.19 0 0 1 0 2.09l2.27.14q.04-.6.04-1.19ZM.35 21.75a18.83 18.83 0 0 0 .61 2.3l2.16-.73a15.8 15.8 0 0 1-.54-2.01l-2.23.45Zm35.1 2.3a17.74 17.74 0 0 0 .62-2.3l-2.23-.44a16.06 16.06 0 0 1-.54 2.01l2.16.73Zm-33.58 2.2a18.21 18.21 0 0 0 1.2 2.07l1.89-1.27a15.93 15.93 0 0 1-1.04-1.8l-2.04 1Zm31.48 2.06a17.47 17.47 0 0 0 1.2-2.06l-2.04-1a16.11 16.11 0 0 1-1.05 1.8l1.9 1.26Zm-28.83 1.9A18.38 18.38 0 0 0 6.2 31.9l1.5-1.71a16.04 16.04 0 0 1-1.48-1.48l-1.7 1.5Zm25.7 1.68a18.38 18.38 0 0 0 1.68-1.68l-1.71-1.5a15.56 15.56 0 0 1-1.48 1.47Zm-3.95 2.64a17.95 17.95 0 0 0 2.06-1.19l-1.27-1.89a16.1 16.1 0 0 1-1.8 1.04l1 2.04ZM8.09 33.35a17.47 17.47 0 0 0 2.06 1.2l1.01-2.04a15.93 15.93 0 0 1-1.8-1.05Zm4.27 2.11a17.74 17.74 0 0 0 2.3.61l.44-2.23a15.83 15.83 0 0 1-2.01-.54l-.73 2.16Zm9.4.62a18.09 18.09 0 0 0 2.3-.62l-.73-2.16a15.83 15.83 0 0 1-2 .54l.43 2.23Zm-4.74.3a18.44 18.44 0 0 0 2.38 0l-.14-2.27a16.19 16.19 0 0 1-2.1 0l-.14 2.27Zm2.33-26.14a1.14 1.14 0 1 0-2.28 0v6.83h-6.83a1.14 1.14 0 1 0 0 2.28h6.83v6.83a1.14 1.14 0 1 0 2.28 0v-6.83h6.83a1.14 1.14 0 1 0 0-2.28h-6.83Z' fill='%23e6263b'/%3E%3C/g%3E%3C/svg%3E");
  width: 36px;
  aspect-ratio: 1;
  height: auto;
  background-color: var(--brand--red);
}
.icon--thumbs-up {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36.08' height='47.44'%3E%3Cg data-name='Group 130'%3E%3Cpath data-name='Path 852' d='M19.97 45.13c-4.24-.94-7.29-1.46-8.64-5.72-.86-.15-4.16-.46-10.2 2a.82.82 0 0 1-.62-1.52c7.04-2.86 10.32-2.37 11.35-2.05a1.8 1.8 0 0 1 .67.33l.15.17.1.22c.75 2.74 2.33 3.66 4.5 4.27.8.23 1.68.41 2.63.62a3.81 3.81 0 0 1 .67-1.18 5.85 5.85 0 0 1-1.17-.73 2.69 2.69 0 0 1-1.13-2.31 2.66 2.66 0 0 1 1.07-1.78 3.87 3.87 0 0 1-.56-.44 2.73 2.73 0 0 1-.9-2 2.81 2.81 0 0 1 .43-1.45A4.38 4.38 0 0 1 15.66 31a2.81 2.81 0 0 1-.08-1.86 3.47 3.47 0 0 1 1.72-1.87c2.67-1.5 8.04-1.54 8.12-1.54a.82.82 0 1 1 .13 1.63 24.2 24.2 0 0 0-6.36.87 5.04 5.04 0 0 0-1.58.79 1.18 1.18 0 0 0-.41 1.42c.47 1.32 1.87 1.87 3.55 2.02a16.4 16.4 0 0 0 9.2-2.36 7.76 7.76 0 0 0 1.96-1.66 2.57 2.57 0 0 0 .66-1.57 2.86 2.86 0 0 0-1.48-2.18c-4.02-2.92-8.26-1.62-10.58-1.22a.82.82 0 0 1-.96-.83c.02-.93.21-8.68-.46-11.57a5.98 5.98 0 0 0-.88-2.16 1.54 1.54 0 0 0-.63-.57 4.3 4.3 0 0 0-.91.24c-1.45.6-3.57 2.42-3.62 7.23a26.8 26.8 0 0 0 .97 6.9.82.82 0 0 1-.73 1 93.33 93.33 0 0 1-12.1.39.82.82 0 0 1 0-1.64 90.28 90.28 0 0 0 11.01-.3c-2.3-9.95.95-13.55 3.22-14.8a4.37 4.37 0 0 1 2.51-.62c.87.23 2.11 1.21 2.75 3.95.58 2.5.56 8.5.52 10.98 2.7-.5 6.87-1.2 10.85 1.7a4.39 4.39 0 0 1 2.15 3.5 3.7 3.7 0 0 1-.42 1.64 3.58 3.58 0 0 1 2.25 3.82 4.71 4.71 0 0 1-1.71 2.76 2.92 2.92 0 0 1 .86 1.16 3.08 3.08 0 0 1-.13 2.45 6.57 6.57 0 0 1-2.45 2.64 3.71 3.71 0 0 1 .2 2.92 4.26 4.26 0 0 1-2.23 2.22 12.28 12.28 0 0 1-6.88.8 6.85 6.85 0 0 1-2.77-1.02 2.82 2.82 0 0 1-.96-1.11Zm2.27-2.25a3.2 3.2 0 0 0-.74.96.8.8 0 0 0-.07.53 1.29 1.29 0 0 0 .7.7 5.9 5.9 0 0 0 1.85.6 10.51 10.51 0 0 0 5.88-.66 2.67 2.67 0 0 0 1.42-1.33 2.08 2.08 0 0 0-.11-1.56 13.87 13.87 0 0 1-5.14 1.16 12.75 12.75 0 0 1-3.8-.4Zm-1.13-4.7a.82.82 0 0 1-.24.2c-.58.34-.92.64-.96 1-.03.33.21.62.55.9a8.57 8.57 0 0 0 5.5 1.36c4.04-.17 6.83-1.88 7.6-3.62a1.5 1.5 0 0 0 .1-1.18 1.54 1.54 0 0 0-.77-.75 15.29 15.29 0 0 1-3.16 1.32 18.2 18.2 0 0 1-7.95.9 8.55 8.55 0 0 1-.67-.13ZM20.02 34l-.06.07a1.28 1.28 0 0 0-.4 1.13 1.7 1.7 0 0 0 1 1.05c1.54.78 4.41.88 8.7-.4a11.17 11.17 0 0 0 3.93-1.93 3.2 3.2 0 0 0 1.23-1.86 2.06 2.06 0 0 0-1.61-2.18 9.88 9.88 0 0 1-2 1.6 18.2 18.2 0 0 1-10.2 2.6L20 34Zm2.42-29.38a.82.82 0 1 1-1.56-.48A19.2 19.2 0 0 1 22.32.48a.82.82 0 0 1 1.5.67 18.21 18.21 0 0 0-1.38 3.47Zm3.36 3.62a.82.82 0 1 1-.96-1.33c2.3-1.66 2.31-1.59 4.7-3.1a.82.82 0 1 1 .88 1.38c-2.36 1.49-2.37 1.41-4.62 3.05Zm1 4.1a.82.82 0 1 1 .16-1.63l4.39.45a.82.82 0 1 1-.17 1.63Z' fill='%23fff' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E");
  aspect-ratio: 36.08/47.44;
  width: 36px;
  height: auto;
}
.icon--bullet {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20.44' height='10.22'%3E%3Cpath data-name='Path 853' d='M20.44 5.1a5.11 5.11 0 0 1-5.11 5.12H5.1A5.11 5.11 0 0 1 0 5.1 5.11 5.11 0 0 1 5.1 0h10.23a5.08 5.08 0 0 1 5.1 5.1Z' fill='%23e6263b'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20.44' height='10.22'%3E%3Cpath data-name='Path 853' d='M20.44 5.1a5.11 5.11 0 0 1-5.11 5.12H5.1A5.11 5.11 0 0 1 0 5.1 5.11 5.11 0 0 1 5.1 0h10.23a5.08 5.08 0 0 1 5.1 5.1Z' fill='%23e6263b'/%3E%3C/svg%3E");
  aspect-ratio: 20.44/10.22;
  width: 20px;
  height: auto;
  background-color: var(--brand--red);
}

.home-hero {
  color: white;
  position: relative;
  --easing: cubic-bezier(0.215, 0.61, 0.355, 1);
  --transition:
  	transform 950ms var(--easing),
  	opacity 950ms var(--easing);
}
.home-hero__heading {
  margin-top: 5rem;
  margin-bottom: 4rem;
}
@media (min-width: 768px) {
  .home-hero__heading {
    margin-top: 8rem;
    margin-bottom: 8rem;
  }
}
@media (min-width: 992px) {
  .home-hero__heading {
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}
.home-hero__heading .wrapper {
  display: flex;
  flex-direction: column;
  gap: 0;
  container-type: inline-size;
  max-width: 420px;
}
@media (min-width: 576px) {
  .home-hero__heading .wrapper {
    max-width: 432px;
  }
}
@media (min-width: 768px) {
  .home-hero__heading .wrapper {
    max-width: 652.8px;
  }
}
@media (min-width: 992px) {
  .home-hero__heading .wrapper {
    max-width: 793.6px;
  }
}
@media (min-width: 1200px) {
  .home-hero__heading .wrapper {
    max-width: 900px;
  }
}
@media (min-width: 1400px) {
  .home-hero__heading .wrapper {
    max-width: 1050px;
  }
}
@media (min-width: 1600px) {
  .home-hero__heading .wrapper {
    max-width: 1200px;
  }
}
.home-hero__heading .word {
  line-height: 0.8;
  text-transform: uppercase;
  position: relative;
  will-change: opacity, transform;
  font-size: 4.8rem;
  font-weight: 900;
  display: inline-block;
}
@media (min-width: 576px) {
  .home-hero__heading .word {
    font-size: 4.8rem;
  }
}
@media (min-width: 768px) {
  .home-hero__heading .word {
    font-size: 20cqw;
  }
}
@media (min-width: 1200px) {
  .home-hero__heading .word {
    font-size: 18cqw;
  }
}
.home-hero__heading .word:nth-child(1), .home-hero__heading .word:nth-child(3) {
  margin-right: auto;
}
.home-hero__heading .word:nth-child(2), .home-hero__heading .word:nth-child(4) {
  margin-left: auto;
}
@media (min-width: 992px) {
  .home-hero__heading .word[data-tagline]:after {
    content: attr(data-tagline);
    font-size: 1rem;
    font-size: 1rem;
    text-transform: none;
    position: absolute;
    top: 52%;
    top: 53%;
    font-weight: 400;
    font-size: 2.7cqw;
    font-size: 2.4cqw;
    line-height: 1.2;
    transform: translateY(calc(-50% + 0.5rem)) scale(1);
    margin-left: 1.5rem;
    text-align: left;
    width: 49cqw;
  }
}
.home-hero__heading .word[data-tagline]:after {
  transition: var(--transition);
  will-change: opacity, transform;
}
.home-hero__heading .word[data-tagline]:not(.tagline-in):after {
  opacity: 0;
}
.home-hero__heading .word[data-tagline].tagline-in:after {
  opacity: 1;
}
.home-hero__heading .word {
  transition: var(--transition);
}
.home-hero__heading .word:not(.animate-in) {
  opacity: 0;
}
.home-hero__heading .word:not(.animate-in):nth-child(1), .home-hero__heading .word:not(.animate-in):nth-child(3) {
  transform: translateX(10%);
}
.home-hero__heading .word:not(.animate-in):nth-child(2), .home-hero__heading .word:not(.animate-in):nth-child(4) {
  transform: translateX(-10%);
}
.home-hero__heading .word.animate-in {
  opacity: 1;
}
.home-hero__subheading {
  font-size: 3rem;
  font-weight: 800;
  line-height: 0.95;
  text-wrap: pretty;
  position: relative;
}
@media (min-width: 768px) {
  .home-hero__subheading {
    font-size: 4.3rem;
    font-size: 4rem;
  }
}
@media (min-width: 992px) {
  .home-hero__subheading {
    font-size: 4.3rem;
    font-size: 4rem;
    margin-top: 12rem;
  }
}
@media (min-width: 1200px) {
  .home-hero__subheading {
    font-size: 4.3rem;
    font-size: 4.5rem;
    font-weight: 600;
    margin-top: 12rem;
    margin-top: 16rem;
  }
}
@media (min-width: 1600px) {
  .home-hero__subheading {
    font-size: 5.5rem;
    font-weight: 600;
    margin-top: 18rem;
  }
}
.home-hero__subheading .wrapper {
  container-type: inline-size;
}
.home-hero__subheading .inner {
  container-type: inline-size;
}
@media (min-width: 992px) {
  .home-hero__subheading .inner {
    width: 79%;
    font-size: 6.1cqw;
    text-wrap: auto;
  }
}
.home-hero__subheading:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 75%;
  background-color: var(--brand--red);
  z-index: -1;
}
@media (min-width: 768px) {
  .home-hero__subheading:before {
    height: 66%;
  }
}
@media (min-width: 992px) {
  .home-hero__subheading:before {
    height: 47%;
    height: 44%;
  }
}
.home-hero__subheading .word {
  --easing: cubic-bezier(0.39, 0.24, 0.3, 1);
  transition: var(--transition);
  transition-duration: 1.5s;
}
.home-hero__subheading .word:not(.animate-in) {
  opacity: 0;
}
.home-hero__subheading .word.animate-in {
  opacity: 1;
}
.home-hero__tagline {
  font-size: 1.6rem;
  font-weight: 600;
  margin-top: 5rem;
  margin-bottom: 0rem;
}
@media (min-width: 576px) {
  .home-hero__tagline {
    font-size: 2.3rem;
  }
}
@media (min-width: 768px) {
  .home-hero__tagline {
    font-size: 3.1rem;
    line-height: 1.2;
    margin-top: 6rem;
    margin-top: 10rem;
    margin-bottom: 4rem;
  }
}
@media (min-width: 992px) {
  .home-hero__tagline {
    font-size: 3.6rem;
    line-height: 1.2;
    margin-top: 6rem;
    margin-bottom: 6rem;
  }
}
@media (min-width: 992px) {
  .home-hero__tagline {
    display: none;
  }
}
.home-hero__tagline {
  transition: var(--transition);
  transition-duration: 1s;
}
.home-hero__tagline:not(.animate-in) {
  opacity: 0;
}
.home-hero__tagline.animate-in {
  opacity: 1;
}
.home-hero__images {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home-hero__images .wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.home-hero__images-item:nth-child(1) {
  position: absolute;
  aspect-ratio: 402/248;
  width: 32%;
  left: 5%;
  top: -6.5%;
}
@media (min-width: 992px) {
  .home-hero__images-item:nth-child(1) {
    width: 350px;
    height: auto;
    position: absolute;
    top: -10%;
    left: 10%;
    width: 22%;
  }
}
.home-hero__images-item:nth-child(2) {
  position: absolute;
  aspect-ratio: 712/401;
  width: 48%;
  right: 3%;
  top: -2%;
}
@media (min-width: 992px) {
  .home-hero__images-item:nth-child(2) {
    width: 630px;
    height: auto;
    position: absolute;
    top: -5%;
    right: -5%;
    width: 40%;
  }
}
.home-hero__images-item:nth-child(3) {
  position: absolute;
  aspect-ratio: 403/295;
  top: 17%;
  width: 34%;
  left: 0;
}
@media (min-width: 992px) {
  .home-hero__images-item:nth-child(3) {
    width: 360px;
    height: auto;
    position: absolute;
    top: 215px;
    left: -4%;
    top: 9%;
    width: 23%;
  }
}
.home-hero__images-item:nth-child(4) {
  display: none;
}
@media (min-width: 992px) {
  .home-hero__images-item:nth-child(4) {
    display: block;
    aspect-ratio: 782/440;
    width: 580px;
    height: auto;
    position: absolute;
    top: 620px;
    right: 59%;
    right: auto;
    top: 40%;
    left: 3%;
    width: 40%;
  }
}
.home-hero__images-item:nth-child(5) {
  display: none;
}
@media (min-width: 992px) {
  .home-hero__images-item:nth-child(5) {
    display: block;
    aspect-ratio: 621/728;
    width: 510px;
    height: auto;
    position: absolute;
    top: 740px;
    left: 63%;
    top: auto;
    left: auto;
    right: -1%;
    bottom: 5%;
    width: 37%;
  }
}
.home-hero__images-item img, .home-hero__images-item video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home-hero__images-item {
  transition: var(--transition);
  transition-duration: 250ms;
  will-change: opacity, transform;
}
.home-hero__images-item:not(.animate-in) {
  opacity: 0;
  transform: scale(0.9);
}
.home-hero__images-item.animate-in {
  animation: bounce 1s var(--easing) forwards;
}
@media (min-width: 992px) {
  .home-hero__images-item.animate-in {
    opacity: 1;
    animation: none;
    transition-duration: 2.5s;
    transition-delay: 0.5s;
  }
}
@keyframes bounce {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.home-hero__images-mobile {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .home-hero__images-mobile {
    display: none;
  }
}
.home-hero__images-mobile .wrapper {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.home-hero__images-mobile-item img, .home-hero__images-mobile-item video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home-hero__images-mobile-item:nth-child(1) {
  aspect-ratio: 782/440;
  width: 65%;
  margin-left: -1.5rem;
}
.home-hero__images-mobile-item:nth-child(2) {
  aspect-ratio: 621/728;
  width: 65%;
  align-self: flex-end;
  margin-right: -0.5rem;
}
.home-hero__images-mobile-item {
  transition: var(--transition);
  transition-duration: 250ms;
  will-change: opacity, transform;
}
.home-hero__images-mobile-item:not(.animate-in) {
  opacity: 0;
  transform: scale(0.8);
}
.home-hero__images-mobile-item.animate-in {
  opacity: 1;
  animation: bounce 1s var(--easing) forwards;
}

.home-hero--backup {
  color: white;
  position: relative;
}
.home-hero--backup .wrapper {
  max-width: 1500px;
  width: 100%;
  container-type: inline-size;
}
.home-hero--backup__heading {
  line-height: 0.85 !important;
  padding-top: 6rem;
  padding-bottom: 6rem;
}
@media (min-width: 768px) {
  .home-hero--backup__heading {
    padding-top: 3rem;
    padding-bottom: 6rem;
  }
}
@media (min-width: 992px) {
  .home-hero--backup__heading {
    line-height: 0.77 !important;
    text-align: center;
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
}
.home-hero--backup__heading div {
  text-transform: uppercase;
  position: relative;
  will-change: opacity, transform;
  font-size: 5.2rem;
  font-size: 4.8rem;
  font-weight: 900;
}
@media (min-width: 768px) {
  .home-hero--backup__heading div {
    font-size: 12rem;
    font-size: 17cqw;
    font-weight: 800;
  }
}
@media (min-width: 992px) {
  .home-hero--backup__heading div {
    font-size: 17cqw;
  }
}
@media (min-width: 1200px) {
  .home-hero--backup__heading div {
    font-size: 13.5cqw;
  }
}
@media (min-width: 768px) {
  .home-hero--backup__heading div[data-tagline]:after {
    content: attr(data-tagline);
    font-size: 1rem;
    text-transform: none;
    position: absolute;
    width: 380px;
    width: 33cqw;
    top: 50%;
    font-weight: 400;
    font-size: 1.8rem;
    font-size: 2.4cqw;
    line-height: 1.2;
    transform: translateY(calc(-50% + 0.5rem)) scale(1);
    margin-left: 1.5rem;
    text-align: left;
    opacity: 0;
    will-change: opacity, transform;
    transition: transform 950ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 950ms cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
@media (min-width: 992px) {
  .home-hero--backup__heading div[data-tagline]:after {
    width: 27cqw;
    font-size: 2cqw;
    margin-left: 2rem;
  }
}
@media (min-width: 1600px) {
  .home-hero--backup__heading div[data-tagline]:after {
    font-size: 1.8rem;
    width: 520px;
  }
}
@media (min-width: 1200px) {
  .home-hero--backup__heading div[data-tagline].animate-in:after {
    opacity: 1;
    transform: translateY(calc(-50% + 0.5rem)) scale(1);
  }
}
.home-hero--backup__heading div:nth-child(1), .home-hero--backup__heading div:nth-child(3) {
  opacity: 0;
  text-align: left;
}
@media (min-width: 768px) {
  .home-hero--backup__heading div:nth-child(1), .home-hero--backup__heading div:nth-child(3) {
    text-align: center;
  }
}
.home-hero--backup__heading div:nth-child(2), .home-hero--backup__heading div:nth-child(4) {
  opacity: 0;
  text-align: right;
}
@media (min-width: 768px) {
  .home-hero--backup__heading div:nth-child(2), .home-hero--backup__heading div:nth-child(4) {
    text-align: center;
  }
}
.home-hero--backup__subheading {
  line-height: 0.95;
  max-width: 1040px;
  font-size: 4.4rem;
  font-size: 3.1rem;
  font-weight: 800;
  text-wrap: pretty;
  padding-top: 40rem;
  padding-top: 2rem;
}
@media (min-width: 768px) {
  .home-hero--backup__subheading {
    font-size: 4.4rem;
    max-width: 720px;
    padding-left: 2rem;
    padding-right: 2rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 992px) {
  .home-hero--backup__subheading {
    padding-top: 12rem;
    padding-top: 5rem;
    font-size: 4.4rem;
    font-weight: 600;
    max-width: 1040px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1200px) {
  .home-hero--backup__subheading {
    padding-top: 12rem;
    font-size: 5.5rem;
    font-weight: 600;
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1400px) {
  .home-hero--backup__subheading {
    max-width: 1040px;
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
  }
}
.home-hero--backup__subheading .word {
  display: inline-block;
  opacity: 0;
  will-change: opacity, transform;
}
.home-hero--backup__tagline {
  font-weight: 700;
  font-size: 1.7rem;
  line-height: 1.2;
  padding-top: 2rem;
  padding-bottom: 1rem;
  opacity: 0;
  will-change: opacity transform;
  transition: transform 950ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 950ms cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media (min-width: 768px) {
  .home-hero--backup__tagline {
    max-width: 440px;
    margin-left: auto;
    margin-right: auto;
    /* outline: 1px dotted lime; */
    text-align: center;
    font-size: 2rem;
    margin-top: -4rem;
    margin-bottom: 2rem;
  }
}
@media (min-width: 992px) {
  .home-hero--backup__tagline {
    max-width: 740px;
    font-size: 3rem;
  }
}
@media (min-width: 1200px) {
  .home-hero--backup__tagline {
    display: none;
  }
}
.home-hero--backup__tagline.animate-in {
  opacity: 1;
  transform: translateY(0);
}
.home-hero--backup__bg {
  position: absolute;
  top: -400px;
  width: 768px;
  height: auto;
  pointer-events: none;
  aspect-ratio: 940/1501;
  left: calc(100vw - 195px);
}
@media (min-width: 1920px) {
  .home-hero--backup__bg {
    left: calc((100vw - 1920px) / 2 + 1920px - 185px);
  }
}
.home-hero--backup__bg .wrapper {
  max-width: 1920px;
  position: relative;
}
.home-hero--backup__images {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home-hero--backup__images-item img, .home-hero--backup__images-item video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home-hero--backup__images-item:nth-child(1) {
  aspect-ratio: 402/248;
  width: 37%;
  height: auto;
  position: absolute;
  top: 0px;
  right: 58%;
}
@media (min-width: 992px) {
  .home-hero--backup__images-item:nth-child(1) {
    width: 350px;
    height: auto;
    position: absolute;
    top: -65px;
    right: 59%;
  }
}
.home-hero--backup__images-item:nth-child(2) {
  aspect-ratio: 712/401;
  width: 50%;
  height: auto;
  position: absolute;
  top: 45px;
  left: 47%;
}
@media (min-width: 992px) {
  .home-hero--backup__images-item:nth-child(2) {
    aspect-ratio: 712/401;
    width: 630px;
    height: auto;
    position: absolute;
    top: -25px;
    left: 60%;
  }
}
.home-hero--backup__images-item:nth-child(3) {
  aspect-ratio: 403/295;
  width: 39%;
  height: auto;
  position: absolute;
  top: 353px;
  right: 59%;
}
@media (min-width: 992px) {
  .home-hero--backup__images-item:nth-child(3) {
    aspect-ratio: 403/295;
    width: 360px;
    height: auto;
    position: absolute;
    top: 215px;
    right: 74%;
  }
}
.home-hero--backup__images-item:nth-child(4) {
  aspect-ratio: 782/440;
  width: 65%;
  height: auto;
  position: absolute;
  top: 625px;
  right: 35%;
  display: none;
}
@media (min-width: 1200px) {
  .home-hero--backup__images-item:nth-child(4) {
    display: block;
    aspect-ratio: 782/440;
    width: 580px;
    height: auto;
    position: absolute;
    top: 620px;
    right: 59%;
  }
}
.home-hero--backup__images-item:nth-child(5) {
  aspect-ratio: 621/728;
  width: 76%;
  height: auto;
  position: absolute;
  top: 820px;
  left: 17%;
  display: none;
}
@media (min-width: 1200px) {
  .home-hero--backup__images-item:nth-child(5) {
    display: block;
    aspect-ratio: 621/728;
    width: 510px;
    height: auto;
    position: absolute;
    top: 740px;
    left: 63%;
  }
}
.home-hero--backup__images .wrapper {
  max-width: 1500px;
  position: relative;
}

.floating {
  animation: float 2s ease-in-out infinite;
}
.floating:nth-child(1) {
  animation-delay: -1s;
}
.floating:nth-child(2) {
  animation-delay: 0s;
}
.floating:nth-child(3) {
  animation-delay: -2s;
}
.floating:nth-child(4) {
  animation-delay: -0.5s;
}
.floating:nth-child(5) {
  animation-delay: -1.5s;
}
.floating:nth-child(6) {
  animation-delay: -2.5s;
}
.floating:nth-child(7) {
  animation-delay: -3s;
}
.floating:nth-child(8) {
  animation-delay: -1s;
}

@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
  100% {
    transform: translateY(0);
  }
}
.service-carousel__items {
  transition: opacity 250ms ease;
  opacity: 1;
}
.service-carousel__item {
  aspect-ratio: 472/492;
  width: 80%;
  height: auto;
  border-radius: 25px;
  overflow: hidden;
  opacity: 0;
  will-change: opacity;
  transition: opacity 650ms ease;
  container-type: inline-size;
  width: 80%;
  margin-right: 1.5rem;
}
@media (min-width: 768px) {
  .service-carousel__item {
    width: 472px;
    margin-right: 2rem;
  }
}
.service-carousel__item.animate-in {
  opacity: 1;
}
.service-carousel__item-image {
  width: 100%;
  height: calc(100% - 59px);
  position: absolute;
}
@media (min-width: 768px) {
  .service-carousel__item-image {
    position: relative;
    width: 100%;
    height: 417px;
  }
}
.service-carousel__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.service-carousel__item-text {
  background-color: black;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  font-weight: 800;
  font-size: 1.4rem;
  font-size: 1.2rem;
  transition: background-color var(--brand--transition-duration) var(--brand--transition-easing);
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
@media (min-width: 768px) {
  .service-carousel__item-text {
    font-size: 1.4rem;
    height: 75px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (min-width: 992px) {
  .service-carousel__item:hover .service-carousel__item-text {
    background-color: var(--brand--red);
  }
}
.service-carousel__items:not(.flickity-enabled) {
  display: flex;
  opacity: 0;
}
.service-carousel__nav {
  margin-top: 2rem;
}
@media (max-width: 1199px) {
  .service-carousel__nav {
    display: none;
  }
}
.service-carousel__nav a:hover {
  opacity: 0.5;
}
.service-carousel--style--red {
  background-color: var(--brand--red);
  color: white;
}
.service-carousel--style--white {
  background-color: white;
}
.service-carousel--style--white .service-carousel__item {
  color: white;
}
.service-carousel--style--red .service-carousel__item:hover .service-carousel__item-text {
  background-color: white;
  color: var(--brand--red);
}

@media (min-width: 992px) {
  .home-hero ~ .service-carousel__item:hover .home-hero ~ .service-carousel__item-text {
    background-color: white;
  }
}

@media (min-width: 1200px) {
  .home-hero ~ .service-carousel.section--inner,
  .home-hero ~ .service-carousel--style--red.section--inner {
    padding-bottom: 0;
  }
  .home-hero ~ .service-carousel .service-carousel__items,
  .home-hero ~ .service-carousel--style--red .service-carousel__items {
    margin-bottom: -75px;
  }
  .home-hero ~ .service-carousel .service-carousel__item-text,
  .home-hero ~ .service-carousel--style--red .service-carousel__item-text {
    background-color: var(--brand--bg-color);
  }
  .home-hero ~ .service-carousel .service-carousel__item:hover .service-carousel__item-text,
  .home-hero ~ .service-carousel--style--red .service-carousel__item:hover .service-carousel__item-text {
    background-color: var(--brand--red);
    color: white;
  }
}

.home-hero--backup + .service-carousel {
  padding-top: 18rem;
  margin-top: -15.6rem;
}
@media (min-width: 576px) {
  .home-hero--backup + .service-carousel {
    padding-top: 15rem;
    padding-top: 16rem;
    margin-top: -13.5rem;
  }
}
@media (min-width: 992px) {
  .home-hero--backup + .service-carousel {
    padding-top: 14rem;
    margin-top: -10rem;
  }
}
@media (min-width: 992px) {
  .home-hero--backup + .service-carousel.section--inner {
    padding-bottom: 0;
  }
}
@media (min-width: 992px) {
  .home-hero--backup + .service-carousel .service-carousel__items {
    margin-bottom: -75px;
  }
}

.music-for-everyone {
  background-color: white;
  position: relative;
  --easing: cubic-bezier(0.215, 0.61, 0.355, 1);
  --transition:
  	transform 950ms var(--easing),
  	opacity 2950ms var(--easing),
  	color 3950ms var(--easing);
  overflow: hidden;
}
.music-for-everyone.section--inner {
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 576px) {
  .music-for-everyone.section--inner {
    padding-top: 6rem;
    padding-bottom: 6rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 768px) {
  .music-for-everyone.section--inner {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
@media (min-width: 992px) {
  .music-for-everyone.section--inner {
    padding-top: 14rem;
    padding-bottom: 12rem;
  }
}
@media (min-width: 1200px) {
  .music-for-everyone.section--inner {
    padding-top: 14rem;
    padding-bottom: 12rem;
  }
}
.music-for-everyone__heading {
  margin-left: auto;
  margin-right: auto;
  font-weight: 700;
  line-height: 0.9;
  max-width: 100px;
  font-size: 2.7rem;
}
@media (min-width: 576px) {
  .music-for-everyone__heading {
    max-width: 100px;
    max-width: 110px;
    font-size: 2.4rem;
    font-size: 2.9rem;
  }
}
@media (min-width: 768px) {
  .music-for-everyone__heading {
    max-width: 100px;
    font-size: 4rem;
  }
}
@media (min-width: 992px) {
  .music-for-everyone__heading {
    font-size: 5.5rem;
  }
}
@media (min-width: 1200px) {
  .music-for-everyone__heading {
    max-width: 530px;
    font-size: 6rem;
  }
}
.music-for-everyone__heading-item {
  position: relative;
  color: #F2F2F2;
  will-change: color;
  line-height: inherit;
  transition: color 250ms ease;
}
.music-for-everyone__heading-item[data-before]:before {
  content: attr(data-before);
  position: absolute;
  right: 100%;
  margin-right: 0.2em;
  font-weight: 800;
  color: var(--brand--bg-color);
}
.music-for-everyone__heading-item span {
  display: block;
  opacity: 0;
  transform: scale(0);
  text-shadow: 0 0 0.8rem transparent;
  transition: color 4500ms var(--easing), text-shadow 4500ms var(--easing);
}
.music-for-everyone__heading-item span strong {
  font-weight: 800;
}
.music-for-everyone__heading-item.highlight span {
  color: var(--brand--red);
  font-weight: 800;
  text-shadow: 0 0 0.8rem var(--brand--red);
  text-shadow: 0 0 0.6rem rgba(230, 38, 59, 0.4);
}
.music-for-everyone__heading-item:not(.animate-in) span {
  opacity: 0;
  transform: scale(0);
}
.music-for-everyone__heading-item.animate-in span {
  opacity: 1;
  transform: scale(1);
  animation: bounce 1.5s cubic-bezier(0.39, 0.24, 0.3, 1) forwards;
}
@keyframes bounce {
  0% {
    transform: scale(0.7);
    opacity: 0;
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.music-for-everyone__images {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.8;
  display: none;
}
@media (min-width: 992px) {
  .music-for-everyone__images {
    display: block;
  }
}
.music-for-everyone__images-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.music-for-everyone__images-item:nth-child(1) {
  aspect-ratio: 314.22/217.34;
  width: 25%;
  height: auto;
  position: absolute;
  top: 30px;
  right: 69%;
  width: 23%;
  top: 2rem;
  right: 70%;
}
@media (min-width: 768px) {
  .music-for-everyone__images-item:nth-child(1) {
    width: 23%;
    top: 2.5rem;
    right: 68%;
  }
}
@media (min-width: 992px) {
  .music-for-everyone__images-item:nth-child(1) {
    width: 23%;
    top: 2.5rem;
    top: 6.5rem;
    right: 68%;
  }
}
@media (min-width: 1200px) {
  .music-for-everyone__images-item:nth-child(1) {
    aspect-ratio: 314.22/217.34;
    width: 314px;
    width: 290px;
    height: auto;
    position: absolute;
    top: 125px;
    top: 100px;
    right: 73%;
  }
}
.music-for-everyone__images-item:nth-child(1) img {
  transform: rotate(5deg);
}
.music-for-everyone__images-item:nth-child(2) {
  aspect-ratio: 365.06/239.99;
  width: 50%;
  height: auto;
  position: absolute;
  transform: rotate(-5deg);
  bottom: 2.5rem;
  right: 70%;
  width: 39%;
}
@media (min-width: 768px) {
  .music-for-everyone__images-item:nth-child(2) {
    bottom: 3rem;
    right: 65%;
    width: 39%;
  }
}
@media (min-width: 992px) {
  .music-for-everyone__images-item:nth-child(2) {
    bottom: 2rem;
    right: 65%;
    width: 39%;
  }
}
@media (min-width: 1200px) {
  .music-for-everyone__images-item:nth-child(2) {
    aspect-ratio: 365.06/239.99;
    width: 365px;
    height: auto;
    position: absolute;
    bottom: 90px;
    right: 75%;
  }
}
.music-for-everyone__images-item:nth-child(2) img {
  transform: rotate(-5deg);
}
.music-for-everyone__images-item:nth-child(3) {
  display: none;
}
@media (min-width: 1200px) {
  .music-for-everyone__images-item:nth-child(3) {
    display: block;
    aspect-ratio: 480/618.16;
    width: 480px;
    height: auto;
    position: absolute;
    top: 215px;
    left: 74%;
  }
}
.music-for-everyone__images-item:nth-child(3) img {
  transform: rotate(-5deg);
}
.music-for-everyone__images-item:nth-child(4) {
  display: none;
}
@media (min-width: 1200px) {
  .music-for-everyone__images-item:nth-child(4) {
    display: block;
    aspect-ratio: 782/440;
    width: 580px;
    height: auto;
    position: absolute;
    top: 620px;
    right: 59%;
  }
}
.music-for-everyone__images-item:nth-child(5) {
  display: none;
}
@media (min-width: 992px) {
  .music-for-everyone__images-item:nth-child(5) {
    display: block;
    aspect-ratio: 621/728;
    width: 510px;
    height: auto;
    position: absolute;
    top: 740px;
    left: 63%;
  }
}
.music-for-everyone__images-item {
  transition: var(--transition);
  transition-duration: 3.5s;
}
.music-for-everyone__images-item:not(.animate-in) {
  opacity: 0;
}
.music-for-everyone__images-item:not(.animate-in):nth-child(1) {
  transform: scale(0.95) rotate(-2deg);
}
.music-for-everyone__images-item:not(.animate-in):nth-child(2) {
  transform: scale(0.95) rotate(-2deg);
}
.music-for-everyone__images-item:not(.animate-in):nth-child(3) {
  transform: scale(0.95) rotate(2deg);
}
.music-for-everyone__images-item.animate-in {
  opacity: 0.95;
  transform: scale(1);
}
.music-for-everyone__images .wrapper {
  max-width: 1500px;
  position: relative;
  height: 100%;
}

.location-grid {
  background-color: white;
}
.location-grid .eq span {
  background-color: var(--brand--red);
}
.location-grid .eq span:before, .location-grid .eq span:after {
  background-color: var(--brand--red);
}

.location-grid {
  --gap: 3rem;
}
.location-grid__items {
  gap: var(--gap);
  flex-direction: column;
}
@media (min-width: 768px) {
  .location-grid__items.d-flex.ai--fs {
    align-items: stretch;
  }
}
@media (min-width: 768px) {
  .location-grid__items {
    flex-direction: row;
  }
}
@media (min-width: 768px) {
  .location-grid__item {
    display: flex;
    flex-direction: column;
    width: calc(33.3333333333% - var(--gap) * 2 / 3);
  }
}
.location-grid__item-image {
  aspect-ratio: 475/415;
  width: 100%;
  height: auto;
  border-radius: 1px;
}
.location-grid__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.location-grid__item-text {
  margin-top: 2rem;
  min-height: 10rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .location-grid__item-text {
    flex: 1 1 auto;
  }
}
@media (min-width: 768px) {
  .location-grid__item-cta {
    margin-top: auto;
  }
}
.location-grid__item-category {
  color: var(--brand--red);
  font-weight: 300;
  font-size: 1.2rem;
}
.location-grid__item-header {
  margin-top: 0.5rem;
}
.location-grid__item-heading, .location-grid__item-price {
  font-weight: 600;
  font-size: 1.3rem;
  text-transform: uppercase;
}
.location-grid__item-excerpt, .location-grid__item-content {
  margin-top: 1rem;
}

.tuition-carousel {
  background-color: var(--brand--bg-color);
  color: white;
}

.upcoming-events {
  background-color: white;
}
.upcoming-events .eq span {
  background-color: var(--brand--red);
}
.upcoming-events .eq span:before, .upcoming-events .eq span:after {
  background-color: var(--brand--red);
}
.upcoming-events .filter {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .upcoming-events .filter .custom-select {
    display: none;
  }
}
@media (max-width: 767px) {
  .upcoming-events .filter .filter__items {
    display: none;
  }
}
@media (max-width: 767px) {
  .upcoming-events .section--excerpt {
    max-width: 100%;
    width: 100%;
  }
}

.primary-nav {
  font-size: 1.1rem;
}
.primary-nav .nav-menu {
  gap: 3rem;
}
.primary-nav .nav-menu > li {
  position: relative;
  height: 2.5rem;
}
.primary-nav .nav-menu > li:last-child a:hover {
  color: var(--brand--bg-color);
}
.primary-nav .nav-menu > li a:hover {
  color: var(--brand--red);
}
.primary-nav .nav-menu > li.current-menu-parent:not(.primary-nav--contact) > a, .primary-nav .nav-menu > li.current-menu-item:not(.primary-nav--contact) > a {
  color: var(--brand--red);
}
.primary-nav .nav-menu > li.current-menu-parent.primary-nav--contact > a, .primary-nav .nav-menu > li.current-menu-item.primary-nav--contact > a {
  color: var(--brand--bg-color);
}
.primary-nav .nav-menu > li > .sub-menu {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
  background-color: white;
  color: black;
  display: flex;
  flex-direction: column;
  gap: 0.5rem 2.5rem;
  padding: 1.5rem 2rem;
  width: auto;
  white-space: nowrap;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  transition: opacity 150ms var(--brand--transition-easing);
  box-shadow: 0rem 1rem 2rem rgba(0, 0, 0, 0.5);
  border-radius: 5px;
  gap: 0.5rem 1.8rem;
  padding: 1.5rem 1.5rem;
}
.primary-nav .nav-menu > li > .sub-menu > li.menu-item-has-children {
  width: 195px;
}
.primary-nav .nav-menu > li > .sub-menu > li.menu-item-has-children > a {
  color: var(--brand--red);
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  line-height: 1.2;
  border-top: 1px solid var(--brand--border-color);
  border-bottom: 1px solid var(--brand--border-color);
  height: 3.1rem;
  font-size: 0.9rem;
  font-size: 1rem;
  font-weight: 600;
}
.primary-nav .nav-menu > li > .sub-menu > li.menu-item-has-children > a:not([href="#"]):after {
  content: "";
  display: block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11.26' height='9.86'%3E%3Cg data-name='Group 6'%3E%3Cpath data-name='Path 38' d='M0 4.93a.7.7 0 0 1 .7-.7h8.15L5.83 1.2a.7.7 0 0 1 1-1l4.23 4.22a.7.7 0 0 1 0 1L6.83 9.65a.7.7 0 0 1-1-1l3.02-3.02H.7a.7.7 0 0 1-.7-.7Z' fill='%23e6263b' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E");
  width: 11px;
  height: auto;
  aspect-ratio: 11.26/9.86;
  transform: translateX(0);
  transition: transform 250ms ease;
}
.primary-nav .nav-menu > li > .sub-menu > li.menu-item-has-children > a:not([href="#"]):hover:after {
  transform: translateX(5px);
}
.primary-nav .nav-menu > li > .sub-menu > li.menu-item-has-children > a[href="#"] {
  pointer-events: none;
}
.primary-nav .nav-menu > li > .sub-menu:has(> li.menu-item-has-children) {
  flex-direction: row;
}
.primary-nav .nav-menu > li.menu-item-has-children:hover > .sub-menu {
  opacity: 1;
  pointer-events: initial;
}
.primary-nav .nav-menu > li li {
  font-size: 1.1rem;
  font-weight: 300;
}
.primary-nav .nav-menu > li li > .sub-menu {
  gap: 0.5rem 1rem;
  display: flex;
  flex-direction: column;
}
.primary-nav .nav-menu > li li li > .sub-menu {
  display: flex;
  gap: 0.5rem 1rem;
  gap: 0.5rem 0.4rem;
  flex-direction: row;
}
@media (min-width: 992px) {
  .primary-nav .nav-menu > li li li li {
    font-size: 0.9rem;
    margin-top: 0.2rem;
    font-weight: 200;
  }
}
@media (min-width: 992px) {
  .primary-nav .nav-menu > li li li:has(li) {
    font-weight: 400;
    font-weight: 600;
    font-weight: 500;
    margin-bottom: 0.5rem;
    margin-bottom: 0.2rem;
    line-height: 1.3;
  }
}
.primary-nav .nav-menu > li.menu-item-has-children:after {
  content: "";
  display: inline-block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.65' height='11.2'%3E%3Cg data-name='Group 274'%3E%3Cg data-name='Group 273'%3E%3Cpath data-name='Path 867' d='M5.33 11.2C3.76 10.75 0 5.77 0 3.52.24.82 3.01-.02 5.33 0c2.33-.02 5.1.82 5.32 3.52 0 2.25-3.65 7.28-5.32 7.68Z' fill='%23e6263b' fill-rule='evenodd'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  width: 11px;
  height: auto;
  aspect-ratio: 10.6/11.2;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.2rem;
  transform: rotate(0);
  transition: transform 50ms ease;
}
.primary-nav .nav-menu > li.menu-item-has-children:hover:after {
  transform: rotate(-180deg);
}
.primary-nav .sub-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}
.primary-nav .sub-menu a[href="#"] {
  pointer-events: none;
}

body.woocommerce-page .primary-nav .nav-menu,
body.page-lesson-signup .primary-nav .nav-menu {
  gap: 3rem;
}
body.woocommerce-page .primary-nav .nav-menu > li,
body.page-lesson-signup .primary-nav .nav-menu > li {
  position: relative;
  height: 2.5rem;
}
body.woocommerce-page .primary-nav .nav-menu > li:last-child a:hover,
body.page-lesson-signup .primary-nav .nav-menu > li:last-child a:hover {
  color: var(--brand--red);
}

.section--header {
  border-top: 1px solid white;
  padding-top: 1.3rem;
  padding-bottom: 2rem;
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .section--header {
    flex-direction: row;
  }
}
.section--header--light {
  border-top: 1px solid var(--brand--bg-color);
}

.section--heading {
  max-width: 465px;
  align-self: flex-start;
}

.section--excerpt {
  max-width: 465px;
}
@media (max-width: 991px) {
  .section--excerpt {
    max-width: 100%;
    margin-top: 1rem;
  }
}
@media (max-width: 767px) {
  .section--excerpt .entry-content {
    font-size: 1.2rem;
    line-height: 1.3;
  }
}

.eq-heading {
  line-height: 1;
}
.eq-heading .word {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
}
.eq-heading .eq {
  width: 95px;
  height: 25px;
  aspect-ratio: 95/25;
  width: 88px;
  height: auto;
  margin-top: -0.1rem;
}
@media (min-width: 576px) {
  .eq-heading .eq {
    width: 95px;
    margin-top: 0.45rem;
  }
}
.eq-heading--red .eq span,
.eq-heading--red .eq span:before,
.eq-heading--red .eq span:after, .eq-heading--style--red .eq span,
.eq-heading--style--red .eq span:before,
.eq-heading--style--red .eq span:after {
  background-color: var(--brand--red);
}
.eq {
  width: 250px;
  height: 38px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.eq span {
  display: block;
  background-color: white;
  width: 11%;
  height: 0%;
  position: relative;
  transition: height 1s ease-in-out;
  animation-name: eq-anim;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}
.eq span:before, .eq span:after {
  content: "";
  display: block;
  aspect-ratio: 1;
  width: 100%;
  height: auto;
  background-color: white;
  border-radius: 50%;
  position: absolute;
}
.eq span:before {
  top: 0;
  transform: translateY(-50%);
}
.eq span:after {
  bottom: 0;
  transform: translateY(50%);
}
.eq span:nth-child(1) {
  animation-duration: 3.2s;
}
.eq span:nth-child(2) {
  animation-duration: 4s;
}
.eq span:nth-child(3) {
  animation-duration: 4.2s;
}
.eq span:nth-child(4) {
  animation-duration: 2.6s;
}
.eq span:nth-child(5) {
  animation-duration: 3.4s;
}
.eq span:nth-child(6) {
  animation-duration: 2.2s;
}

.eq--flat span {
  display: block;
  background-color: white;
  width: 12%;
  height: 0%;
  position: relative;
  transition: height 150ms ease;
  animation-name: none;
}

.eq--wave span {
  display: block;
  background-color: white;
  width: 12%;
  height: 0%;
  position: relative;
  animation-name: eq-wave-anim;
  animation-iteration-count: 1;
  animation-timing-function: ease;
}
.eq--wave span:nth-child(1), .eq--wave span:nth-child(2), .eq--wave span:nth-child(3), .eq--wave span:nth-child(4), .eq--wave span:nth-child(5), .eq--wave span:nth-child(6) {
  animation-duration: 1.5s;
}
.eq--wave span:nth-child(1) {
  animation-delay: 0ms;
}
.eq--wave span:nth-child(2) {
  animation-delay: 75ms;
}
.eq--wave span:nth-child(3) {
  animation-delay: 150ms;
}
.eq--wave span:nth-child(4) {
  animation-delay: 325ms;
}
.eq--wave span:nth-child(5) {
  animation-delay: 400ms;
}
.eq--wave span:nth-child(6) {
  animation-delay: 475ms;
}

@keyframes eq-anim {
  0% {
    height: 60%;
  }
  10% {
    height: 50%;
  }
  20% {
    height: 80%;
  }
  30% {
    height: 30%;
  }
  40% {
    height: 10%;
  }
  50% {
    height: 80%;
  }
  60% {
    height: 40%;
  }
  70% {
    height: 70%;
  }
  80% {
    height: 50%;
  }
  90% {
    height: 100%;
  }
  100% {
    height: 60%;
  }
}
@keyframes eq-wave-anim {
  0% {
    height: 0%;
  }
  30% {
    height: 0%;
  }
  50% {
    height: 100%;
  }
  60% {
    height: 100%;
  }
  100% {
    height: 0%;
  }
}
.link--back {
  display: flex;
  font-size: 1.5rem;
  font-weight: 800;
  gap: 0.5rem !important;
}
@media (min-width: 768px) {
  .link--back {
    font-size: 2rem;
  }
}
.link--back i {
  transition: all 250ms ease;
  width: 1.5rem;
}
@media (min-width: 768px) {
  .link--back i {
    width: 2rem;
  }
}
.link--back span {
  margin-top: -0.5rem;
}
.link--back:hover {
  color: var(--brand--red);
}
.link--back:hover i {
  background-color: white;
  transform: translateX(-0.5rem);
}

.author__image {
  aspect-ratio: 135/95;
  width: 135px;
  height: auto;
}
.author__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.author__name {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.2rem;
}
.author__role {
  font-weight: 300;
  font-size: 1rem;
}

@media (max-width: 575px) {
  .gform_footer .btn {
    width: 100%;
  }
}

.wrapper--narrow {
  --width: 960px;
  max-width: var(--width);
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1200px) {
  .wrapper--narrow {
    max-width: var(--width);
  }
}
@media (min-width: 1400px) {
  .wrapper--narrow {
    max-width: var(--width);
  }
}
@media (min-width: 1600px) {
  .wrapper--narrow {
    max-width: var(--width);
  }
}

.gfield--width-quarter {
  width: calc(25% - var(--gform_fields-gap) * 0.75);
}

.gfield--width-half {
  width: calc(50% - var(--gform_fields-gap) / 2);
}

.gsection_title {
  font-weight: 800;
  margin-bottom: 1rem;
  font-size: 1.8rem;
  font-size: 2.4rem;
}

.gf_progressbar,
.gf_progressbar_wrapper {
  display: none;
}

.gform_page_footer {
  margin-top: 2rem;
}

.gform_previous_button,
.gform_next_button {
  border: 1px solid var(--brand--bg-color);
  background-color: var(--brand--red);
  background-color: white;
  color: var(--brand--bg-color);
  font-weight: 600;
  height: 55px;
  border-radius: 55px;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  font-size: var(--brand--button-font-size);
  cursor: pointer;
  min-width: 150px;
}
.gform_previous_button:hover,
.gform_next_button:hover {
  background-color: white;
  background-color: var(--brand--bg-color);
  color: var(--brand--red);
  color: white;
}

#gform_wrapper_18 .gform_heading {
  display: none;
}

.gform_previous_button {
  margin-right: 0.5rem;
}

fieldset.gfield_repeater.gfield_repeater_container {
  border: none;
  padding: 0;
}

.gfield_repeater_cell {
  width: calc(50% - var(--gform_fields-gap) / 2);
  flex: none;
}

.gfield_repeater_buttons {
  width: 100%;
  flex: none;
  margin-top: 1rem;
}

.gfield_repeater_items {
  counter-reset: item;
}

.gfield_repeater_item {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gform_fields-gap);
  padding: 1.5rem;
  background-color: #efefef;
  border-radius: 0.5rem;
}
.gfield_repeater_item + .gfield_repeater_item {
  margin-top: 1.5rem;
}
.gfield_repeater_item:before {
  counter-increment: item;
  content: "Student " counter(item);
  width: 100%;
  font-weight: 800;
  margin-bottom: 0.5rem;
  font-size: 1.4rem;
}

.--gfield_repeater_item {
  --stripe-a: color-mix(in srgb, var(--brand--red), white 65%);
  --stripe-b: transparent;
  --stripe-width: 20px;
  background-color: color-mix(in srgb, var(--brand--red), white 90%);
  background-image: repeating-linear-gradient(-45deg, var(--stripe-a), var(--stripe-a) 20px, var(--stripe-b) 20px, var(--stripe-b) 40px);
  border-radius: 15px;
}

.gfield_repeater > legend {
  font-weight: 800;
  margin-bottom: 1rem;
  font-size: 1.8rem;
  display: none;
}

.gfield_repeater_buttons {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.5rem;
}
.gfield_repeater_buttons button {
  border: 1px solid var(--brand--cyan);
  background-color: var(--brand--cyan);
  color: var(--brand--bg-color);
  color: white;
  font-weight: 600;
  height: 40px;
  border-radius: 55px;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  font-size: var(--brand--button-font-size);
  cursor: pointer;
  min-width: 200px;
  width: 200px;
}
.gfield_repeater_buttons button:hover {
  background-color: white;
  background-color: var(--brand--cyan);
  color: var(--brand--red);
  color: white;
  filter: brightness(1.1);
}

button#gform_submit_button_14 {
  height: 55px;
  min-width: 200px;
  width: 200px;
}

.gfield.gfield--type-repeater.gfield_error {
  padding-left: 0;
  border-left: none;
}

.gfield--type-html,
.gfield--type-section {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.gfield--type-html:first-child,
.gfield--type-section:first-child {
  margin-top: 0;
}
.gfield--type-html:last-child,
.gfield--type-section:last-child {
  margin-bottom: 0;
}

.gf-field-info {
  font-size: 1rem;
  display: block;
  margin-top: 0;
}

.gf-field-spacer {
  font-size: 1rem;
  display: block;
  margin-top: 0;
  margin-bottom: 0;
}

.gf-form--enrol .gfield_repeater_item {
  padding: 0;
  background-color: transparent;
}
.gf-form--enrol .gfield_repeater_item:before {
  margin-bottom: 0;
}
.gf-form--enrol .gfield_repeater_buttons button {
  min-width: 210px;
  width: 210px;
}

body:has(#gform_wrapper_18) .heading--basic-page-layout,
body:has(.tuition-signup) .heading--basic-page-layout {
  text-align: center;
}

#gform_wrapper_18 textarea {
  height: 8rem;
}

body:has(#gform_wrapper_18) .wrapper--narrow,
body:has(.tuition-signup) .wrapper--narrow {
  --width: 760px;
}

.gfield_repeater_cell:has(.gfield_repeater_cell--full-width) {
  width: 100%;
}

.glyph {
  pointer-events: none;
  height: auto;
  position: absolute;
  z-index: 1;
}
.glyph img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.glyph--mfe {
  aspect-ratio: 314.46/473.32;
  width: 314px;
}
@media (max-width: 767px) {
  .glyph > * {
    transform: scale(0.7);
  }
}
@media (max-width: 767px) {
  .glyph[data-x=left] {
    margin-left: -7vw;
  }
}
@media (max-width: 767px) {
  .glyph[data-x=right] {
    margin-right: -7vw;
  }
}
@media (max-width: 991px) {
  .glyph {
    display: none;
  }
}

.featured-tutors {
  background-color: var(--brand--red);
  color: white;
}
.featured-tutors .filter {
  margin-top: 2rem;
}
.featured-tutors .cta {
  margin-top: 2rem;
}
.featured-tutors {
  --col-gap: clamp(1.5rem, -0.323rem + 3.797vw, 3rem);
}
.featured-tutors__items {
  gap: var(--col-gap);
  flex-wrap: wrap;
  justify-content: flex-start;
}
.featured-tutors__items .flickity-viewport {
  width: 100%;
}
.featured-tutors__items:after {
  content: "flickity";
  display: none; /* hide :after */
}
@media (min-width: 992px) {
  .featured-tutors__items:after {
    content: "";
  }
}
.featured-tutors__item {
  opacity: 0;
  will-change: opacity;
  transition: opacity 850ms ease;
  width: 90%;
  max-width: 323px;
  margin-right: 1.5rem;
}
@media (min-width: 992px) {
  .featured-tutors__item {
    width: calc(25% - var(--col-gap) * 3 / 4);
    margin-right: 0;
  }
}
.featured-tutors__item.animate-in {
  opacity: 1;
}
.featured-tutors__item-image {
  aspect-ratio: 366/386;
  width: 100%;
  height: auto;
  border-top-left-radius: 25px;
  border-top-right-radius: 25px;
  overflow: hidden;
}
.featured-tutors__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.featured-tutors__item-text {
  margin-top: 1.1rem;
}
.featured-tutors__item-text .heading--tutor {
  text-transform: uppercase;
  font-size: 1.4rem;
}
.featured-tutors__item-text .heading--role {
  font-size: 1rem;
  font-weight: 300;
  margin-top: 0.3rem;
}
@media (min-width: 768px) {
  .featured-tutors__item-text .heading--role {
    min-height: 2.5rem;
  }
}
@media (min-width: 1400px) {
  .featured-tutors__item-text .heading--role {
    min-height: 0;
  }
}

.testimonial {
  color: white;
  --gap: 2rem;
  --wrapper-width: 1320px;
  position: relative;
}
@media (min-width: 768px) {
  .testimonial {
    --wrapper-width: 720px;
  }
}
@media (min-width: 992px) {
  .testimonial {
    --wrapper-width: 960px;
  }
}
@media (min-width: 1200px) {
  .testimonial {
    --wrapper-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .testimonial {
    --wrapper-width: 1320px;
  }
}
@media (max-width: 767px) {
  .testimonial.section--inner {
    padding-top: 0;
  }
}
.testimonial .wrapper {
  gap: var(--gap);
  position: static;
  flex-direction: column;
}
@media (min-width: 1200px) {
  .testimonial .wrapper {
    flex-direction: row;
  }
}
.testimonial__image {
  aspect-ratio: 1;
  width: calc(100% + 3rem);
  height: auto;
  position: relative;
  width: 100vw;
}
@media (min-width: 576px) {
  .testimonial__image {
    aspect-ratio: 4/3;
  }
}
@media (min-width: 768px) {
  .testimonial__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
@media (min-width: 1200px) {
  .testimonial__image {
    margin-left: 0;
    aspect-ratio: 3/2;
    position: absolute;
    left: auto;
    right: calc((100vw - var(--wrapper-width)) / 2 + 0.6 * var(--wrapper-width) + var(--gap));
    width: auto;
    height: 100%;
  }
}
@media (min-width: 1400px) {
  .testimonial__image {
    margin-left: 0;
    aspect-ratio: 3/2;
    position: absolute;
    left: auto;
    right: calc((100vw - var(--wrapper-width)) / 2 + 0.7 * var(--wrapper-width) + var(--gap));
    width: auto;
    height: 100%;
  }
}
@media (min-width: 768px) {
  .testimonial__image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to right, var(--brand--body-bg-color) 1%, transparent);
  }
}
@media (min-width: 1200px) {
  .testimonial__image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 33.333%;
    height: 100%;
    background-image: linear-gradient(to right, var(--brand--body-bg-color), transparent);
  }
}
.testimonial__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right center;
     object-position: right center;
  overflow: hidden;
}
@media (min-width: 1200px) {
  .testimonial__image img {
    border-top-right-radius: 250px;
    border-bottom-right-radius: 250px;
  }
}
.testimonial__text {
  flex: none;
  gap: 2rem;
  width: 100%;
}
@media (min-width: 1200px) {
  .testimonial__text {
    margin-left: calc(40% - var(--gap) * 0.3 + var(--gutter-x) / 2);
    width: calc(70% - var(--gap) * 0.3);
  }
}
@media (min-width: 1400px) {
  .testimonial__text {
    margin-left: calc(30% - var(--gap) * 0.3 + var(--gutter-x) / 2);
    width: calc(70% - var(--gap) * 0.3);
  }
}
.testimonial__text:before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='53' height='63.6'%3E%3Cg data-name='Group 315' fill='%23e6263b'%3E%3Cpath data-name='Path 61' d='M10.6 63.6A10.6 10.6 0 0 1 0 53V10.6A10.6 10.6 0 0 1 10.6 0a10.6 10.6 0 0 1 10.6 10.6V53a10.55 10.55 0 0 1-10.6 10.6Z'/%3E%3Cpath data-name='Path 62' d='M42.4 63.6A10.6 10.6 0 0 1 31.8 53V31.8a10.6 10.6 0 0 1 10.6-10.6A10.6 10.6 0 0 1 53 31.8V53a10.55 10.55 0 0 1-10.6 10.6Z' opacity='.75'/%3E%3C/g%3E%3C/svg%3E");
  aspect-ratio: 53/63.6;
  width: 53px;
  height: auto;
  display: block;
}
.testimonial__quote {
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1;
}
@media (min-width: 768px) {
  .testimonial__quote {
    font-size: 3rem;
  }
}
.testimonial__quote .word {
  opacity: 0;
}
@media (min-width: 992px) {
  .testimonial__quote .word {
    opacity: 0;
  }
}
.testimonial__customer {
  font-size: 1.2rem;
  opacity: 0;
}
@media (max-width: 991px) {
  .testimonial__customer {
    max-width: 55%;
  }
}
.testimonial--style--light {
  background-color: white;
  color: var(--brand--body-bg-color);
}
@media (min-width: 768px) {
  .testimonial--style--light {
    color: white;
  }
}
@media (min-width: 1200px) {
  .testimonial--style--light {
    color: var(--brand--body-bg-color);
  }
}
@media (min-width: 768px) {
  .testimonial--style--light .testimonial__image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to right, var(--brand--body-bg-color) 1%, transparent);
  }
}
@media (min-width: 1200px) {
  .testimonial--style--light .testimonial__image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 33.333%;
    height: 100%;
    background-image: linear-gradient(to right, white, transparent);
  }
}

.our-shop {
  background-color: white;
}
.our-shop .eq span {
  background-color: var(--brand--red);
}
.our-shop .eq span:before, .our-shop .eq span:after {
  background-color: var(--brand--red);
}
.our-shop {
  /**
  * Flickity
  */
}
.our-shop .shop-grid__items:after {
  content: "flickity";
  display: none; /* hide :after */
}
@media (min-width: 992px) {
  .our-shop .shop-grid__items:after {
    content: "";
  }
}
.our-shop .flickity-viewport {
  width: 100%;
}
.our-shop .flickity-enabled .shop-grid__item {
  width: 90%;
  max-width: 326px;
  max-width: 445px;
  margin-right: 1.5rem;
  transition: none;
}
.our-shop .flickity-enabled .shop-grid__item-content {
  min-height: 5.8rem;
}

.our-news {
  background-color: white;
}
.our-news .eq span {
  background-color: var(--brand--red);
}
.our-news .eq span:before, .our-news .eq span:after {
  background-color: var(--brand--red);
}
.our-news {
  /**
  * Flickity
  */
}
.our-news .news-grid__items:after {
  content: "flickity";
  display: none; /* hide :after */
}
@media (min-width: 992px) {
  .our-news .news-grid__items:after {
    content: "";
  }
}
.our-news .flickity-viewport {
  width: 100%;
}
.our-news .flickity-enabled .news-grid__item {
  width: 90%;
  max-width: 445px;
  margin-right: 1.5rem;
  transition: none;
}

@media (max-width: 767px) {
  .our-shop + .our-news {
    margin-top: -3rem;
  }
}

.btn {
  font-size: var(--brand--button-font-size);
  background-color: transparent;
  border-color: var(--brand--red);
  border-style: solid;
  border-width: 1px;
  height: 40px;
  border-radius: 40px;
  height: var(--brand--button-height);
  border-radius: var(--brand--button-height);
  padding-left: 2rem;
  padding-right: 2rem;
  width: auto;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  font-weight: 800;
  position: relative;
  overflow: visible;
  --transition-duration: 750ms;
  --transition-easing: ease;
  --transition-easing: cubic-bezier(0.16, 1, 0.3, 1);
  --transition-easing: cubic-bezier(0.85, 0, 0.15, 1);
  transition: color 50ms var(--transition-easing), box-shadow 0ms var(--transition-easing), transform var(--transition-duration) var(--transition-easing);
}
.btn:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--brand--red);
  z-index: 1;
  transition: transform var(--transition-duration) var(--transition-easing), opacity var(--transition-duration) var(--transition-easing), background-color 0ms var(--transition-easing);
  transform-origin: 0% 50%;
  opacity: 1;
  border-radius: 55px;
}
.btn:hover:before, .btn:focus:before, .btn.is-active:before {
  opacity: 1;
}
.btn--red {
  border-color: var(--brand--red);
  color: white;
}
.btn--red:before {
  opacity: 1;
  background-color: var(--brand--red);
}
.btn--red:hover, .btn--red:focus, .btn--red.is-active {
  filter: brightness(1.3);
}
.btn--red:hover:before, .btn--red:focus:before, .btn--red.is-active:before {
  opacity: 1;
}
.btn--red.btn--outline {
  color: var(--brand--red);
}
.btn--red.btn--outline:before {
  background-color: transparent;
}
.btn--red.btn--outline:hover, .btn--red.btn--outline:focus, .btn--red.btn--outline.is-active {
  filter: brightness(1);
  color: white;
}
.btn--red.btn--outline:hover:before, .btn--red.btn--outline:focus:before, .btn--red.btn--outline.is-active:before {
  opacity: 1;
  background-color: var(--brand--red);
}
.btn--dark {
  border-color: var(--brand--bg-color);
  color: white;
}
.btn--dark:before {
  opacity: 1;
  background-color: var(--brand--bg-color);
}
.btn--dark:hover, .btn--dark:focus, .btn--dark.is-active {
  border-color: white;
  color: var(--brand--bg-color);
}
.btn--dark:hover:before, .btn--dark:focus:before, .btn--dark.is-active:before {
  opacity: 1;
  background-color: white;
}
.btn--white {
  border-color: var(--brand--bg-color);
  color: var(--brand--bg-color);
}
.btn--white:before {
  opacity: 1;
  background-color: white;
}
.btn--white:hover, .btn--white:focus, .btn--white.is-active {
  color: white;
}
.btn--white:hover:before, .btn--white:focus:before, .btn--white.is-active:before {
  opacity: 1;
  background-color: var(--brand--bg-color);
}
.btn--white-alt {
  border-color: white;
  color: var(--brand--bg-color);
}
.btn--white-alt:before {
  opacity: 1;
  background-color: white;
}
.btn--white-alt:hover, .btn--white-alt:focus, .btn--white-alt.is-active {
  border-color: var(--brand--bg-color);
  color: white;
}
.btn--white-alt:hover:before, .btn--white-alt:focus:before, .btn--white-alt.is-active:before {
  opacity: 1;
  background-color: var(--brand--bg-color);
}
.btn--white-outline {
  border-color: white;
  color: white;
}
.btn--white-outline:before {
  opacity: 1;
  background-color: transparent;
}
.btn--white-outline:hover, .btn--white-outline:focus, .btn--white-outline.is-active {
  color: var(--brand--bg-color);
}
.btn--white-outline:hover:before, .btn--white-outline:focus:before, .btn--white-outline.is-active:before {
  opacity: 1;
  background-color: white;
}
.btn--arrow {
  border-color: white;
  color: white;
}
.btn--arrow:before {
  opacity: 1;
  background-color: transparent;
}
.btn--arrow:hover, .btn--arrow:focus {
  color: var(--brand--bg-color);
  filter: brightness(1.15);
}
.btn--arrow:hover:before, .btn--arrow:focus:before {
  opacity: 1;
  background-color: white;
}
.btn--arrow:focus, .btn--arrow.is-active {
  color: white;
  border-color: var(--brand--red);
}
.btn--arrow:focus:before, .btn--arrow.is-active:before {
  opacity: 1;
  background-color: var(--brand--red);
}
.btn--arrow:after {
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 15px solid var(--brand--red);
  content: " ";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  opacity: 0;
}
.btn--arrow.is-active:after {
  opacity: 1;
}
.btn--cyan {
  border-color: var(--brand--cyan);
  color: white;
}
.btn--cyan:before {
  opacity: 1;
  background-color: var(--brand--cyan);
}
.btn--cyan:hover, .btn--cyan:focus, .btn--cyan.is-active {
  filter: brightness(1.15);
}
.btn--cyan:hover:before, .btn--cyan:focus:before, .btn--cyan.is-active:before {
  opacity: 1;
}
.btn--yellow {
  border-color: var(--brand--yellow);
  color: var(--brand--bg-color);
}
.btn--yellow:before {
  opacity: 1;
  background-color: var(--brand--yellow);
}
.btn--yellow:hover, .btn--yellow:focus, .btn--yellow.is-active {
  color: var(--brand--yellow);
}
.btn--yellow:hover:before, .btn--yellow:focus:before, .btn--yellow.is-active:before {
  opacity: 1;
  background-color: transparent;
}
.btn--video-play {
  aspect-ratio: 1;
  width: 120px;
  height: auto;
  border-radius: 50%;
  overflow: hidden;
}
.btn--video-play span {
  position: absolute;
  top: 50%;
  left: 50%;
  white-space: nowrap;
  transform: translate(-50%, -50%);
}
.btn--large {
  height: 60px;
}
.btn--long {
  width: 275px;
}
.btn--short {
  width: 150px;
}
.btn sub {
  position: absolute;
  bottom: 0;
  left: 50%;
  background-color: var(--brand--red);
  z-index: 9;
  height: 1rem;
  border-radius: 1rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  color: white;
  display: flex;
  line-height: 1.3;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 0.7rem;
  transform: translate(-50%, 70%);
  white-space: nowrap;
}
.btn--large sub {
  transform: translate(-50%, 50%);
}
.btn.disabled {
  pointer-events: none;
  opacity: 0.5;
}
@media (max-width: 575px) {
  .btn span {
    margin-top: -4px;
  }
}

.btn-examples {
  background-color: #333;
  text-align: center;
  padding: 1rem;
}

.lessons-carousel {
  background-color: var(--brand--bg-color);
  color: white;
}
.lessons-carousel__items {
  transition: opacity 250ms ease;
  opacity: 1;
}
.lessons-carousel__item {
  aspect-ratio: 365/455;
  height: auto;
  margin-right: 1.5rem;
  border-top-left-radius: 25px;
  border-top-right-radius: 25px;
  overflow: hidden;
  opacity: 0;
  will-change: opacity;
  transition: opacity 650ms ease;
  width: 80%;
  max-width: 365px;
}
@media (min-width: 768px) {
  .lessons-carousel__item {
    margin-right: 2rem;
  }
}
@media (min-width: 992px) {
  .lessons-carousel__item {
    width: 365px;
  }
}
.lessons-carousel__item.animate-in {
  opacity: 1;
}
.lessons-carousel__item-image {
  width: 100%;
  height: 100%;
}
.lessons-carousel__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.lessons-carousel__item-text {
  background-color: transparent;
  padding: 1rem;
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 2rem);
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0;
  min-height: 76px;
  justify-content: center;
}
.lessons-carousel__item-text:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(10px);
}
.lessons-carousel__item-text span {
  z-index: 1;
  line-height: 1.1;
}
.lessons-carousel__item-text span:nth-child(1) {
  font-weight: 800;
  font-size: 1.4rem;
  text-transform: uppercase;
}
.lessons-carousel__item-text span:nth-child(2) {
  font-weight: 300;
  font-size: 1.1rem;
  font-style: italic;
}
.lessons-carousel__items:not(.flickity-enabled) {
  display: flex;
  opacity: 0;
}
.lessons-carousel__nav {
  margin-top: 1.2rem;
  display: flex;
  gap: 0.4rem;
}
@media (min-width: 768px) {
  .lessons-carousel__nav {
    margin-top: 2rem;
  }
}
.lessons-carousel__nav a:hover {
  opacity: 0.5;
}

.page-header {
  color: white;
  position: relative;
}

.page-header .wrapper {
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .page-header .wrapper {
    flex-direction: row;
  }
}
.page-header__text {
  padding: 1rem 0;
  padding: 1.5rem 0;
  aspect-ratio: 16/9;
  aspect-ratio: 6/5;
  aspect-ratio: 1;
  aspect-ratio: 1.1;
  width: 100%;
  justify-content: flex-end;
}
@media (min-width: 1200px) {
  .page-header__text {
    width: 100%;
    padding-top: 3rem;
    padding-bottom: 3rem;
    gap: 2rem;
    min-height: 480px;
    min-height: 320px;
    min-height: 0;
    justify-content: center;
  }
}
@media (min-width: 1200px) {
  .page-header__text {
    min-height: 645px;
    width: 50%;
  }
}
.page-header__image {
  position: absolute;
  width: calc(100% - var(--gutter-x));
  width: 100vw;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1200px) {
  .page-header__image {
    width: 858px;
    height: auto;
    aspect-ratio: 1025/545;
    flex: none;
    position: absolute;
    left: auto;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    width: auto;
    height: 100%;
    aspect-ratio: 1215/645;
  }
}
@media (min-width: 1200px) {
  .page-header__image {
    right: calc((100vw - 1200px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1400px) {
  .page-header__image {
    right: calc((100vw - 1400px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1600px) {
  .page-header__image {
    right: calc((100vw - 1600px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1920px) {
  .page-header__image {
    right: calc(-160px - 3rem);
  }
}
@media (max-width: 991px) {
  .page-header__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent 55%);
  }
}
.page-header__image img, .page-header__image video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-header__image {
  /*
  img 
  {
  	transform: scale(1.05);
  	transition: transform 25s ease;
  }

  &.animate-in 
  {
  	img 
  	{
  		transform: scale(1);

  	}
  }
  */
}
.page-header__meta {
  width: 100%;
  justify-content: flex-start;
}
.page-header__meta > * {
  flex-basis: 250px;
}
.page-header__meta .heading--meta {
  margin-bottom: 1rem;
}

body.single-news .page-header:not(.news-meta) .page-header__text {
  justify-content: flex-end;
  padding-top: 6rem;
}
@media (min-width: 1200px) and (max-width: 1399px) {
  body.single-news .page-header:not(.news-meta) .page-header__text {
    width: 100%;
    aspect-ratio: unset;
    justify-content: flex-end;
  }
}
body.single-news .page-header:not(.news-meta) .page-header__image:before {
  content: "";
  display: block;
  position: absolute;
  /* background-color: black; */
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 1;
  background-image: linear-gradient(to top, var(--brand--body-bg-color), transparent 75%);
}
body.single-news .page-header:not(.news-meta) .page-header__meta {
  display: none;
}
@media (min-width: 768px) {
  body.single-news .page-header:not(.news-meta) .page-header__meta {
    display: flex;
  }
}

.contact-form {
  background-color: var(--brand--bg-color);
  color: white;
}
@media (min-width: 768px) {
  .contact-form__content {
    max-width: 50%;
  }
}

.location-list {
  background-color: var(--brand--red);
  color: white;
}
.location-list.section--inner {
  padding-bottom: 0;
}
.location-list__item {
  padding-top: 4rem;
  padding-bottom: 7rem;
}
.location-list__item-header {
  flex-direction: column;
}
@media (min-width: 768px) {
  .location-list__item-header {
    flex-direction: row;
  }
}
.location-list__item-address-links {
  max-width: 465px;
  width: 100%;
  flex-direction: column;
}
@media (min-width: 768px) {
  .location-list__item-address-links {
    flex-direction: row;
  }
}
.location-list__item-links {
  gap: 0;
}
.location-list__item-address {
  max-width: 235px;
}
.location-list__item-map {
  width: 100%;
  height: auto;
  margin-top: 2rem;
  aspect-ratio: 1;
}
@media (min-width: 768px) {
  .location-list__item-map {
    aspect-ratio: 1605/705;
  }
}
.location-list__item-map iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.location-list__item--Guernsey {
  background-color: var(--brand--red);
  background-image: linear-gradient(to top, white 25%, var(--brand--red) 25%, var(--brand--red));
}
.location-list__item--Jersey {
  background-color: white;
  color: var(--brand--bg-color);
  margin-top: -3rem;
}
.location-list__item--Liverpool, .location-list__item--Dubai, .location-list__item--TBC {
  background-color: var(--brand--cyan);
  color: white;
}
.location-list__item--Liverpool .location-list__item-map, .location-list__item--Dubai .location-list__item-map, .location-list__item--TBC .location-list__item-map {
  opacity: 1;
  position: relative;
  pointer-events: none;
}
.location-list__item--Liverpool .location-list__item-map iframe, .location-list__item--Dubai .location-list__item-map iframe, .location-list__item--TBC .location-list__item-map iframe {
  opacity: 0.4;
}
.location-list__item--Liverpool .location-list__item-map:before, .location-list__item--Dubai .location-list__item-map:before, .location-list__item--TBC .location-list__item-map:before {
  content: "Coming soon";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 4rem;
  text-transform: uppercase;
  font-weight: 900;
  opacity: 0.6;
  z-index: 9;
}
.location-list__item--Liverpool .location-list__item-links .icon, .location-list__item--Dubai .location-list__item-links .icon, .location-list__item--TBC .location-list__item-links .icon {
  filter: saturate(0) brightness(4);
}

.news {
  background-color: white;
}
.news .wrapper {
  max-width: 1140px;
}
.news .entry-content h3 {
  font-size: 1.8rem;
  text-wrap: auto;
  line-height: 1.2;
  font-weight: 800;
}
@media (min-width: 768px) {
  .news .entry-content h3 {
    font-size: 3.2rem;
  }
}
.news .entry-content h4 {
  font-size: 2rem;
  text-wrap: auto;
  line-height: 1.2;
  font-weight: 800;
}
.news .entry-content p, .news .entry-content li {
  font-size: 1.3rem;
}
.news .entry-content > *:not(:last-child):not(blockquote),
.news .entry-content > blockquote > *:not(:last-child) {
  margin-bottom: 1.8rem;
}

.news-meta {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  display: flex;
}
@media (min-width: 768px) {
  .news-meta {
    display: none;
  }
}

.related-news {
  background-color: white;
}

.news-grid {
  background-color: white;
  --gap: 3rem;
}
.news-grid__items {
  gap: var(--gap);
  flex-wrap: wrap;
  justify-content: flex-start;
  flex-direction: column;
}
@media (min-width: 768px) {
  .news-grid__items {
    flex-direction: row;
  }
}
.news-grid__items {
  transition: opacity 0.25s ease-in-out;
}
.news-grid__items.is-loading {
  opacity: 0.6;
  pointer-events: none;
}
.news-grid__item {
  width: 100%;
}
@media (min-width: 768px) {
  .news-grid__item {
    width: calc(33.3333333333% - var(--gap) * 2 / 3);
    flex: none;
  }
}
.news-grid__item {
  opacity: 0;
  will-change: transform, opacity;
}
.news-grid__item.animate-in {
  opacity: 1;
}
.news-grid__item-image {
  aspect-ratio: 475/415;
  width: 100%;
  height: auto;
}
.news-grid__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  will-change: transform, opacity;
}
.news-grid__item-text {
  margin-top: 2rem;
}
.news-grid__item-category {
  color: var(--brand--red);
  font-weight: 300;
  font-size: 1.2rem;
}
.news-grid__item-heading {
  margin-top: 0.5rem;
}
.news-grid__item-excerpt, .news-grid__item-content {
  margin-top: 1rem;
}
.news-grid__load-more {
  margin-top: 3rem;
}
@media (min-width: 768px) {
  .news-grid .filter .custom-select {
    display: none;
  }
}
@media (max-width: 767px) {
  .news-grid .filter .filter__items {
    display: none;
  }
}

.filter {
  margin-bottom: 3rem;
}
.filter__item .btn {
  min-width: 125px;
}
.filter--white {
  background-color: white;
}

body:has(.filter + .news-grid) .filter {
  margin-bottom: 0;
}

.page-hero {
  --easing: cubic-bezier(0.215, 0.61, 0.355, 1);
  --transition:
  	transform 950ms var(--easing),
  	opacity 950ms var(--easing);
  color: white;
  position: relative;
}
.page-hero__heading {
  line-height: 0.77 !important;
  text-align: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 768px) {
  .page-hero__heading {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (min-width: 992px) {
  .page-hero__heading {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
}
.page-hero__heading .wrapper {
  display: flex;
  flex-direction: column;
  gap: 0;
  container-type: inline-size;
}
.page-hero__heading .word {
  text-transform: uppercase;
  font-weight: 900;
  position: relative;
  will-change: opacity, transform;
  font-size: 3.1rem;
}
@media (min-width: 768px) {
  .page-hero__heading .word {
    font-size: 13cqw;
  }
}
.page-hero__heading .word[data-tagline]:before {
  content: attr(data-tagline);
  text-transform: none;
  position: absolute;
  line-height: 1.2;
  text-align: left;
  transform: rotate(90deg);
  text-transform: uppercase;
  transform-origin: 0 100%;
  height: 2rem;
  display: inline-block;
  font-size: 2.8cqw;
  margin-top: -1.7rem;
  padding-top: 1.8rem;
}
@media (min-width: 768px) {
  .page-hero__heading .word[data-tagline]:before {
    margin-top: -1.3rem;
    padding-top: 1.5rem;
  }
}
@media (min-width: 992px) {
  .page-hero__heading .word[data-tagline]:before {
    margin-top: -1rem;
    padding-top: 1.4rem;
  }
}
@media (min-width: 1200px) {
  .page-hero__heading .word[data-tagline]:before {
    margin-top: -0.7rem;
    padding-top: 1.2rem;
  }
}
@media (min-width: 1400px) {
  .page-hero__heading .word[data-tagline]:before {
    margin-top: -0.7rem;
    padding-top: 1.2rem;
  }
}
@media (min-width: 1600px) {
  .page-hero__heading .word[data-tagline]:before {
    margin-top: -0.5rem;
    padding-top: 1rem;
  }
}
.page-hero__heading .word:nth-child(1), .page-hero__heading .word:nth-child(3) {
  margin-right: auto;
}
.page-hero__heading .word:nth-child(2), .page-hero__heading .word:nth-child(4) {
  margin-left: auto;
}
.page-hero__heading .word:nth-child(3) {
  margin-right: -1rem;
}
.page-hero__heading .word {
  transition: var(--transition);
}
.page-hero__heading .word:not(.animate-in) {
  opacity: 0;
}
.page-hero__heading .word:not(.animate-in):nth-child(1), .page-hero__heading .word:not(.animate-in):nth-child(3) {
  transform: translateX(10%);
}
.page-hero__heading .word:not(.animate-in):nth-child(2), .page-hero__heading .word:not(.animate-in):nth-child(4) {
  transform: translateX(-10%);
}
.page-hero__heading .word.animate-in {
  opacity: 1;
}
.page-hero__images {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.page-hero__images .wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.page-hero__images-item img, .page-hero__images-item video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-hero__images-item:nth-child(1) {
  aspect-ratio: 402/248;
  width: 350px;
  height: auto;
  position: absolute;
  width: 31%;
  left: 52%;
  top: -5%;
}
@media (min-width: 768px) {
  .page-hero__images-item:nth-child(1) {
    width: 28%;
    left: 32%;
    top: -8%;
  }
}
@media (min-width: 992px) {
  .page-hero__images-item:nth-child(1) {
    width: 27%;
    left: 24%;
    top: -1%;
  }
}
@media (min-width: 1200px) {
  .page-hero__images-item:nth-child(1) {
    width: 22%;
    left: 23%;
    top: -4%;
  }
}
.page-hero__images-item:nth-child(2) {
  aspect-ratio: 712/401;
  width: 630px;
  height: auto;
  position: absolute;
  top: -25px;
  width: 39%;
  right: 4%;
  top: 70%;
}
@media (min-width: 768px) {
  .page-hero__images-item:nth-child(2) {
    width: 39%;
    right: 1%;
    top: 50%;
  }
}
@media (min-width: 992px) {
  .page-hero__images-item:nth-child(2) {
    width: 33%;
    left: auto;
    right: 2%;
    top: 18%;
  }
}
@media (min-width: 1200px) {
  .page-hero__images-item:nth-child(2) {
    width: 33%;
    left: auto;
    right: 7%;
    top: 12%;
  }
}
.page-hero__images-item:nth-child(3) {
  aspect-ratio: 450/290;
  width: 360px;
  height: auto;
  position: absolute;
  width: 34%;
  left: 6%;
  top: 52%;
}
@media (min-width: 768px) {
  .page-hero__images-item:nth-child(3) {
    width: 34%;
    left: 3%;
    top: 56%;
  }
}
@media (min-width: 992px) {
  .page-hero__images-item:nth-child(3) {
    width: 34%;
    left: 0%;
    top: 55%;
  }
}
@media (min-width: 1200px) {
  .page-hero__images-item:nth-child(3) {
    width: 30%;
    left: -2%;
    top: 55%;
  }
}
.page-hero__images-item img, .page-hero__images-item video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-hero__images-item {
  transition: var(--transition);
  transition-duration: 250ms;
  will-change: opacity, transform;
}
.page-hero__images-item:not(.animate-in) {
  opacity: 0;
  transform: scale(0.9);
}
.page-hero__images-item.animate-in {
  animation: bounce 1s var(--easing) forwards;
}
@media (min-width: 992px) {
  .page-hero__images-item.animate-in {
    opacity: 1;
    animation: none;
    transition-duration: 2.5s;
    transition-delay: 0.5s;
  }
}
@keyframes bounce {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.floating {
  animation: float 2s ease-in-out infinite;
}
.floating:nth-child(1) {
  animation-delay: -1s;
}
.floating:nth-child(2) {
  animation-delay: 0s;
}
.floating:nth-child(3) {
  animation-delay: -2s;
}
.floating:nth-child(4) {
  animation-delay: -0.5s;
}
.floating:nth-child(5) {
  animation-delay: -1.5s;
}

@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
  100% {
    transform: translateY(0);
  }
}
.basic-content {
  background-color: var(--brand--bg-color);
  color: white;
}
.basic-content.section--inner {
  padding-bottom: 0;
}
.basic-content .d-flex {
  gap: 0;
}
.basic-content__item {
  aspect-ratio: 640/860;
  width: 33.333%;
  height: auto;
  max-height: 860px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.basic-content__item-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.basic-content__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  mix-blend-mode: darken;
  opacity: 0.5;
  transition: opacity var(--brand--transition-duration) var(--brand--transition-easing);
  will-change: opacity;
}
.basic-content__item-heading {
  position: relative;
  z-index: 1;
  font-size: 3rem;
  font-weight: 600;
}
.basic-content__item-heading span {
  display: inline-block;
  transform: rotate(90deg);
  min-width: 300px;
  position: relative;
}
.basic-content__item-heading span:before {
  content: "";
  position: absolute;
  left: 0;
  top: -0.5rem;
  height: 2px;
  width: 100%;
  background-color: white;
  display: block;
}
.basic-content__item:hover img {
  opacity: 1;
}
.basic-content__item:nth-child(1) .basic-content__item-image {
  background-color: var(--brand--red);
}
.basic-content__item:nth-child(2) .basic-content__item-image {
  background-color: var(--brand--cyan);
}
.basic-content__item:nth-child(3) .basic-content__item-image {
  background-color: var(--brand--green);
}

._image-carousel {
  color: white;
  background-image: linear-gradient(to bottom, transparent 50%, var(--brand--red) 50%);
}
._image-carousel .upper {
  background-image: linear-gradient(to bottom, transparent 35%, var(--brand--red) 35%);
}
._image-carousel .lower {
  background-color: var(--brand--red);
  margin-top: 3rem;
}
._image-carousel {
  padding-bottom: 6rem;
}
._image-carousel__heading {
  width: 60%;
  flex: none;
  margin-top: -1rem;
}
._image-carousel__heading .word {
  display: inline-block;
  opacity: 0;
  will-change: opacity, transform;
}
._image-carousel__content {
  width: 40%;
  flex: none;
}
._image-carousel {
  --ratio: 0.5;
}
@media (min-width: 768px) {
  ._image-carousel {
    --ratio: 1;
  }
}
._image-carousel__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
._image-carousel__item:nth-child(7n+1) {
  aspect-ratio: 340/385;
  width: 340px;
  width: calc(340px * var(--ratio));
  height: auto;
  margin-top: 4rem;
  margin-top: calc(4rem * var(--ratio));
}
._image-carousel__item:nth-child(7n+2) {
  aspect-ratio: 480/590;
  width: 480px;
  width: calc(480px * var(--ratio));
  height: auto;
  margin-top: -4rem;
  margin-top: calc(-4rem * var(--ratio));
}
._image-carousel__item:nth-child(7n+3) {
  aspect-ratio: 515/310;
  width: 515px;
  width: calc(515px * var(--ratio));
  height: auto;
  margin-top: 3rem;
  margin-top: calc(3rem * var(--ratio));
}
._image-carousel__item:nth-child(7n+4) {
  aspect-ratio: 350/440;
  width: 350px;
  width: calc(350px * var(--ratio));
  height: auto;
  margin-top: -3rem;
  margin-top: calc(-3rem * var(--ratio));
}
._image-carousel__item:nth-child(7n+5) {
  aspect-ratio: 415/335;
  width: 415px;
  width: calc(415px * var(--ratio));
  height: auto;
  margin-top: 7rem;
  margin-top: calc(7rem * var(--ratio));
}
._image-carousel__item:nth-child(7n+6) {
  aspect-ratio: 1;
  width: 515px;
  width: calc(515px * var(--ratio));
  height: auto;
  margin-top: 1rem;
  margin-top: calc(1rem * var(--ratio));
}
._image-carousel__item:nth-child(7n+7) {
  aspect-ratio: 415/335;
  width: 415px;
  width: calc(415px * var(--ratio));
  height: auto;
  margin-top: 10rem;
  margin-top: calc(10rem * var(--ratio));
}
._image-carousel__items.flickity-enabled {
  height: 590px;
  height: calc(590px * var(--ratio));
}
._image-carousel__items.flickity-enabled ._image-carousel__item {
  margin-right: 2rem;
}

.image-carousel {
  --easing: cubic-bezier(0.215, 0.61, 0.355, 1);
  --transition:
  	transform 950ms var(--easing),
  	opacity 950ms var(--easing);
  color: white;
  --ratio: 0.3;
}
@media (min-width: 992px) {
  .image-carousel {
    --ratio: 0.5;
  }
}
@media (min-width: 1200px) {
  .image-carousel {
    --ratio: 0.6;
  }
}
@media (min-width: 1400px) {
  .image-carousel {
    --ratio: 0.8 ;
  }
}
@media (min-width: 1600px) {
  .image-carousel {
    --ratio: 1;
  }
}
.image-carousel__items {
  padding-top: 3rem;
  padding-bottom: 3rem;
  display: flex;
  width: 100%;
  overflow: hidden;
  align-items: center;
  background-image: linear-gradient(to bottom, transparent 50%, var(--brand--red) 50%);
}
@media (min-width: 768px) {
  .image-carousel__items {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
.image-carousel__item {
  white-space: nowrap;
  margin-right: calc(2rem * var(--ratio));
  flex: none;
}
.image-carousel__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.image-carousel__item:nth-child(7n+1) {
  aspect-ratio: 340/385;
  width: 340px;
  width: calc(340px * var(--ratio));
  height: auto;
  margin-top: 4rem;
  margin-top: calc(4rem * var(--ratio));
}
.image-carousel__item:nth-child(7n+2) {
  aspect-ratio: 480/590;
  width: 480px;
  width: calc(480px * var(--ratio));
  height: auto;
  margin-top: -4rem;
  margin-top: calc(-4rem * var(--ratio));
}
.image-carousel__item:nth-child(7n+3) {
  aspect-ratio: 515/310;
  width: 515px;
  width: calc(515px * var(--ratio));
  height: auto;
  margin-top: 3rem;
  margin-top: calc(3rem * var(--ratio));
}
.image-carousel__item:nth-child(7n+4) {
  aspect-ratio: 350/440;
  width: 350px;
  width: calc(350px * var(--ratio));
  height: auto;
  margin-top: -3rem;
  margin-top: calc(-3rem * var(--ratio));
}
.image-carousel__item:nth-child(7n+5) {
  aspect-ratio: 415/335;
  width: 415px;
  width: calc(415px * var(--ratio));
  height: auto;
  margin-top: 7rem;
  margin-top: calc(7rem * var(--ratio));
}
.image-carousel__item:nth-child(7n+6) {
  aspect-ratio: 1;
  width: 515px;
  width: calc(515px * var(--ratio));
  height: auto;
  margin-top: 1rem;
  margin-top: calc(1rem * var(--ratio));
}
.image-carousel__item:nth-child(7n+7) {
  aspect-ratio: 415/335;
  width: 415px;
  width: calc(415px * var(--ratio));
  height: auto;
  margin-top: 10rem;
  margin-top: calc(10rem * var(--ratio));
}
.image-carousel__item img {
  transition: var(--transition);
  transition-duration: 0.75s;
  will-change: opacity, transform;
}
.image-carousel__item:not(.animate-in) img {
  opacity: 0;
}
.image-carousel__item.animate-in img {
  opacity: 1;
}
.image-carousel__content {
  background-color: var(--brand--red);
  padding-bottom: 3rem;
}
@media (min-width: 992px) {
  .image-carousel__content {
    padding-bottom: 6rem;
  }
}
.image-carousel__content .section--header {
  border: none;
  padding-top: 0;
}
.image-carousel__content .section--heading {
  flex: 1;
  max-width: 46rem;
}

.featured-locations {
  background-color: var(--brand--bg-color);
  color: white;
}
.featured-locations.section--inner {
  padding-bottom: 0;
}
.featured-locations .d-flex {
  gap: 0;
}
.featured-locations__items {
  overflow: hidden;
}
.featured-locations__items .flickity-viewport {
  width: 100%;
}
.featured-locations__item {
  aspect-ratio: 640/860;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 330px;
  height: auto;
  max-height: 860px;
  width: 280px;
  width: 80vw;
}
@media (min-width: 768px) {
  .featured-locations__item {
    width: 330px;
    height: 445px;
    max-height: 860px;
  }
}
@media (min-width: 992px) {
  .featured-locations__item {
    position: relative;
    max-width: none;
    width: 33.333%;
    height: auto;
  }
}
.featured-locations__item-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  opacity: 0;
}
.featured-locations__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  mix-blend-mode: darken;
  opacity: 0.5;
  transform: scale(1.1);
  transition: opacity var(--brand--transition-duration) var(--brand--transition-easing), transform 1250ms var(--brand--transition-easing);
  will-change: opacity transform;
}
.featured-locations__item-heading {
  position: relative;
  z-index: 1;
  font-weight: 600;
  opacity: 0;
  font-size: 2rem;
}
@media (min-width: 992px) {
  .featured-locations__item-heading {
    font-size: 3rem;
  }
}
.featured-locations__item-heading span:nth-child(1) {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  min-width: 180px;
}
@media (min-width: 992px) {
  .featured-locations__item-heading span:nth-child(1) {
    min-width: 300px;
  }
}
.featured-locations__item-heading span:nth-child(1):before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 2px;
  width: 100%;
  background-color: white;
  display: block;
}
@media (min-width: 992px) {
  .featured-locations__item-heading span:nth-child(1):before {
    min-width: 300px;
    top: -0.5rem;
  }
}
.featured-locations__item-heading span:nth-child(1):after {
  content: "New Location";
  content: attr(data-prefix);
  display: inline-block;
  position: absolute;
  top: -3rem;
  left: 0;
  transform: none;
  font-size: 1.5rem;
  font-weight: 300;
}
.featured-locations__item-heading span:nth-child(2) {
  display: inline-block;
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-32%, -50%) rotate(90deg);
  font-size: 1.2rem;
  font-weight: 300;
  min-width: 180px;
}
@media (min-width: 992px) {
  .featured-locations__item-heading span:nth-child(2) {
    font-size: 1.5rem;
    min-width: 300px;
  }
}
.featured-locations__item:hover img {
  opacity: 1;
  transform: scale(1);
}
.featured-locations__item:nth-child(1) .featured-locations__item-image {
  background-color: var(--brand--red);
}
.featured-locations__item:nth-child(2) .featured-locations__item-image {
  background-color: var(--brand--cyan);
}
.featured-locations__item:nth-child(3) .featured-locations__item-image {
  background-color: var(--brand--green);
}

.featured-locations__items:after {
  content: "flickity";
  display: none; /* hide :after */
}

@media (min-width: 992px) {
  /* disable Flickity for large devices */
  .featured-locations__items:after {
    content: "";
  }
}
.syllabus .wrapper {
  max-width: 1920px;
  max-width: 100vw;
  gap: 0;
  flex-direction: column;
}
@media (min-width: 992px) {
  .syllabus .wrapper {
    flex-direction: row;
  }
}
@media (max-width: 1584px) {
  .syllabus .wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}
.syllabus__image {
  background-color: #333;
  flex: none;
  display: none;
  position: relative;
}
@media (min-width: 1585px) {
  .syllabus__image {
    display: block;
    width: 820px;
    height: 100%;
    aspect-ratio: 820/590;
  }
}
.syllabus__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.syllabus__image:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 33.333%;
  height: 100%;
  background-image: linear-gradient(to right, var(--brand--body-bg-color), transparent);
  z-index: 1;
}
.syllabus__text {
  padding: 1.5rem;
  background-color: #F9F9F9;
  flex: 1;
  align-self: stretch;
}
@media (min-width: 768px) {
  .syllabus__text {
    padding: 3rem;
  }
}
@media (min-width: 1585px) {
  .syllabus__text {
    width: 820px;
    height: 100%;
    flex: none;
    aspect-ratio: 820/590;
  }
}
.syllabus__content {
  margin-top: 1rem;
}
.syllabus__logos {
  margin-top: 2rem;
}
.syllabus__logo {
  width: 175px;
}
.syllabus__logo img {
  height: auto;
}
.syllabus__video {
  background-color: var(--brand--bg-color);
  align-self: stretch;
  aspect-ratio: 765/590;
}
@media (min-width: 992px) {
  .syllabus__video {
    aspect-ratio: 765/590;
    width: 51.74%;
    flex: none;
  }
}
@media (min-width: 1585px) {
  .syllabus__video {
    width: 765px;
    height: 100%;
    aspect-ratio: 765/590;
    margin-right: calc(var(--gutter-x) / 2 * -1);
  }
}
@media (min-width: 1920px) {
  .syllabus__video {
    width: 765px;
    height: 590px;
  }
}
.syllabus__video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.goals {
  color: white;
}
.goals .section--header {
  gap: 3rem;
}
.goals__content {
  margin-top: 2rem;
}
@media (max-width: 767px) {
  .goals__items {
    width: 100%;
  }
}
.goals__items.section--excerpt {
  max-width: none;
}
.goals__item {
  width: 100%;
  border-bottom: 1px solid white;
}
.goals__item.is-open .goals__item-heading i {
  transform: rotate(135deg);
  background-color: white;
}
.goals__item-heading > a {
  display: flex !important;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  height: 5rem;
  transition: all 250ms ease;
}
@media (max-width: 767px) {
  .goals__item-heading > a {
    font-size: 2.4rem;
  }
}
.goals__item-heading > a i {
  transition: all 250ms ease;
}
.goals__item-heading > a:hover i {
  background-color: white;
  transform: rotate(180deg);
}
.goals__item-content {
  overflow: hidden;
  box-sizing: content-box;
  /** NEW **/
  opacity: 1;
  font-weight: 600;
  font-size: 1.2rem;
  line-height: 1.2;
}
.goals__item-content:after {
  content: " ";
  display: block;
  height: 1.5rem;
}
@media (max-width: 767px) {
  .goals__item-content.entry-content {
    font-size: 1.2rem;
    line-height: 1.5;
  }
}

.team-grid {
  color: white;
  background-color: var(--brand--bg-color);
  --col-gap: clamp(1.5rem, -0.323rem + 3.797vw, 3rem);
}
.team-grid__items {
  gap: var(--col-gap);
  flex-wrap: wrap;
  justify-content: flex-start;
  transition: opacity 0.25s ease-in-out;
}
.team-grid__items.is-loading {
  opacity: 0.6;
  pointer-events: none;
}
.team-grid__item {
  opacity: 0;
  will-change: opacity;
  transition: opacity 850ms ease;
  width: 100%;
}
@media (min-width: 576px) {
  .team-grid__item {
    width: calc(50% - var(--col-gap) * 1 / 2);
  }
}
@media (min-width: 992px) {
  .team-grid__item {
    width: calc(33.3333333333% - var(--col-gap) * 2 / 3);
  }
}
@media (min-width: 1200px) {
  .team-grid__item {
    width: calc(25% - var(--col-gap) * 3 / 4);
  }
}
.team-grid__item.animate-in {
  opacity: 1;
}
.team-grid__item-image {
  aspect-ratio: 366/386;
  width: 100%;
  height: auto;
  border-top-left-radius: 25px;
  border-top-right-radius: 25px;
  overflow: hidden;
}
.team-grid__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.team-grid__item-text {
  margin-top: 1.1rem;
}
.team-grid__item-text .heading--tutor {
  text-transform: uppercase;
  font-size: 1.4rem;
}
.team-grid__item-text .heading--role {
  font-size: 1rem;
  font-weight: 300;
  margin-top: 0.3rem;
  font-size: 1rem;
  font-weight: 400;
  margin-top: 0.3rem;
  color: var(--brand--red);
}
.team-grid__item.no-image {
  display: none;
}
@media (max-width: 767px) {
  .team-grid .filter__items {
    display: none;
  }
}
@media (min-width: 768px) {
  .team-grid .custom-select {
    display: none;
  }
}

.team-member {
  color: white;
}
.team-member .section--header {
  gap: 3rem;
}
.team-member .section--heading {
  flex-basis: 680px;
  max-width: none;
}
.team-member .section--excerpt {
  flex-basis: 500px;
  max-width: none;
}
.team-member__media-heading {
  margin-bottom: 1rem;
}
.team-member__media-items {
  gap: 2rem;
}
.team-member__media-item-title {
  margin-top: 1rem;
}
@media (max-width: 1199px) {
  body.single-team-member .page-header .wrapper {
    flex-direction: column-reverse;
  }
}
@media (max-width: 1199px) {
  body.single-team-member .page-header__text {
    aspect-ratio: unset;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  body.single-team-member .page-header__text {
    position: absolute;
    width: auto;
    margin: 0 2rem;
  }
}
body.single-team-member .page-header__image {
  width: auto;
  height: 100%;
  aspect-ratio: 1;
  position: relative;
}
@media (min-width: 768px) and (max-width: 1199px) {
  body.single-team-member .page-header__image {
    position: relative;
    aspect-ratio: 4/3;
  }
}
@media (min-width: 1200px) {
  body.single-team-member .page-header__image {
    position: absolute;
  }
}
@media (min-width: 1600px) {
  body.single-team-member .page-header__image {
    right: 0;
  }
}
@media (min-width: 1920px) {
  body.single-team-member .page-header__image {
    right: 0;
  }
}
body.single-team-member .page-header__image img {
  -o-object-position: center top;
     object-position: center top;
}
@media (min-width: 768px) and (max-width: 1199px) {
  body.single-team-member .page-header__image:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0) 50%);
  }
}
body.single-team-member .page-header__meta > * {
  flex-basis: auto;
  width: 100%;
  gap: 1.6rem;
}
@media (max-width: 1199px) {
  body.single-team-member .page-header .link--back {
    display: none;
  }
}
body.single-team-member .page-header .role {
  color: var(--brand--red);
  font-weight: 600;
  font-size: 1.8rem;
  margin-top: -0.7rem;
}

.location-header {
  color: white;
  position: relative;
}
.location-header .wrapper {
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .location-header .wrapper {
    flex-direction: row;
  }
}
.location-header__heading {
  padding: 1rem 0;
  padding: 1.5rem 0;
  aspect-ratio: 16/9;
  aspect-ratio: 6/5;
  aspect-ratio: 1;
  aspect-ratio: 1.1;
  width: 100%;
  justify-content: flex-end;
}
@media (min-width: 992px) {
  .location-header__heading {
    aspect-ratio: unset;
    justify-content: initial;
    width: 1010px;
    position: absolute;
    top: 5.5rem;
    left: calc(var(--gutter-x) / 2);
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .location-header__heading h1.heading--page-header {
    font-size: 5.8rem;
    max-width: 48%;
  }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .location-header__heading h1.heading--page-header {
    font-size: 7.8rem;
    max-width: 65%;
  }
}
.location-header__image {
  position: absolute;
  width: calc(100% - var(--gutter-x));
  width: 100vw;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 992px) {
  .location-header__image {
    position: relative;
    left: auto;
    transform: none;
    aspect-ratio: 410/265;
    width: 375px;
    height: auto;
    flex: none;
    justify-self: flex-end;
  }
}
@media (max-width: 991px) {
  .location-header__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent 55%);
  }
}
.location-header__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 768px) {
  .location-header__text {
    width: 375px;
    flex: none;
    align-self: stretch;
  }
}
.location-header__address-links address {
  font-size: 1.1rem;
}
.location-header__address-links ul {
  font-size: 1rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.location-header__address-links ul a:hover {
  color: var(--brand--red);
}
.location-header__video {
  display: none;
}
@media (min-width: 992px) {
  .location-header__video {
    display: block;
    flex: 1;
    aspect-ratio: 1120/675;
    width: 100%;
  }
}
.location-header__video video, .location-header__video img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.location-header .wrapper {
  gap: 3rem;
}
.location-header .lower {
  margin-top: 3rem;
}
.location-header__tagline {
  max-width: 280px;
  font-size: 1.7rem;
  font-weight: 600;
}

.service-grid {
  color: white;
  --gap: 2rem;
}
.service-grid__items {
  gap: var(--gap);
  flex-wrap: wrap;
  margin-top: 2rem;
}
.service-grid__item {
  aspect-ratio: 472/492;
  width: 80%;
  height: auto;
  border-radius: 25px;
  overflow: hidden;
  opacity: 0;
  will-change: opacity;
  transition: opacity 650ms ease;
  container-type: inline-size;
  width: 80%;
  margin-right: 1.5rem;
}
@media (min-width: 768px) {
  .service-grid__item {
    width: 472px;
    margin-right: 2rem;
  }
}
@media (min-width: 992px) {
  .service-grid__item {
    margin-right: 0;
    aspect-ratio: 472/492;
    width: calc(33.3333333333% - var(--gap) * 2 / 3);
    border-radius: 25px;
    overflow: hidden;
    position: relative;
    opacity: 0;
    will-change: opacity;
    transition: opacity 650ms ease;
  }
}
.service-grid__item.animate-in {
  opacity: 1;
}
.service-grid__item-image {
  width: 100%;
  height: calc(100% - 59px);
  position: absolute;
}
@media (min-width: 768px) {
  .service-grid__item-image {
    position: relative;
    width: 100%;
    height: 417px;
  }
}
.service-grid__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.service-grid__item-image.no-image {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.service-grid__item-image.no-image p {
  margin-bottom: 75px;
}
.service-grid__item-text {
  background-color: var(--brand--red);
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  font-weight: 800;
  font-size: 1.4rem;
  font-size: 1.2rem;
  transition: background-color var(--brand--transition-duration) var(--brand--transition-easing);
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
@media (min-width: 1200px) {
  .service-grid__item-text {
    font-size: 1.4rem;
    height: 75px;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.service-grid__item:hover .service-grid__item-text {
  background-color: white;
  color: var(--brand--red);
}
.service-grid {
  /**
  * Flickity
  */
}
.service-grid .service-grid__items:after {
  content: "flickity";
  display: none; /* hide :after */
}
@media (min-width: 992px) {
  .service-grid .service-grid__items:after {
    content: "";
  }
}
.service-grid .flickity-viewport {
  width: 100%;
}
.service-grid .flickity-enabled .service-grid__item {
  width: 90%;
  max-width: 445px;
  margin-right: 1.5rem;
  transition: none;
}

.gallery-carousel {
  color: white;
  aspect-ratio: 1920/1040;
  width: 100%;
  height: auto;
  max-height: 1040px;
  position: relative;
  max-height: none;
}
@media (max-width: 1199px) {
  .gallery-carousel.section--inner {
    padding-top: 12rem;
  }
}
@media (max-width: 767px) {
  .gallery-carousel.section--inner {
    padding-top: 9rem;
    padding-top: 2rem;
  }
}
.gallery-carousel .wrapper {
  gap: 3rem;
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 1200px) {
  .gallery-carousel .wrapper {
    flex-direction: row;
    align-items: flex-end;
  }
}
.gallery-carousel__text {
  width: 100%;
}
@media (min-width: 992px) {
  .gallery-carousel__text {
    width: 575px;
  }
}
@media (min-width: 1200px) {
  .gallery-carousel__text {
    width: 575px;
  }
}
.gallery-carousel__heading {
  margin-bottom: 2rem;
}
.gallery-carousel__items {
  width: 100%;
}
@media (min-width: 992px) {
  .gallery-carousel__items {
    width: 60%;
  }
}
@media (min-width: 1200px) {
  .gallery-carousel__items {
    flex: 1;
  }
}
.gallery-carousel__item.flickity-cell {
  width: calc(33.333% - 0.6666666667rem);
  height: auto;
  margin-right: 1rem;
  aspect-ratio: 1;
}
@media (min-width: 992px) {
  .gallery-carousel__item.flickity-cell {
    margin-right: 2rem;
    width: calc(33.333% - 1.3333333333rem);
  }
}
.gallery-carousel__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery-carousel__image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.gallery-carousel__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 450ms ease;
}
.gallery-carousel__image img.is-active {
  opacity: 1;
}
.gallery-carousel__image:after {
  content: "";
  background-image: linear-gradient(90deg, rgba(1, 21, 39, 0.8), rgba(1, 21, 39, 0.3333333333) 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .gallery-carousel__image:after {
    background-image: linear-gradient(45deg, #011527, transparent 75%);
  }
}
.gallery-carousel .gallery-carousel__item {
  opacity: 0;
  transition: opacity 450ms ease;
}
.gallery-carousel .gallery-carousel__item.is-active {
  opacity: 1;
}

.service-header {
  color: white;
}
.service-header .wrapper {
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .service-header .wrapper {
    flex-direction: row;
  }
}
.service-header__text {
  padding: 1rem 0;
  padding: 1.5rem 0;
  aspect-ratio: 16/9;
  aspect-ratio: 6/5;
  aspect-ratio: 1;
  aspect-ratio: 1.1;
  width: 100%;
  justify-content: flex-end;
}
@media (min-width: 768px) {
  .service-header__text {
    padding: 2rem 0;
    aspect-ratio: 6/5;
  }
}
@media (min-width: 1200px) {
  .service-header__text {
    aspect-ratio: unset;
    width: 50%;
    width: 100%;
    padding-bottom: 3rem;
    gap: 2rem;
    min-height: 575px;
    min-height: 0;
    min-height: 480px;
    justify-content: center;
  }
}
@media (min-width: 1200px) {
  .service-header__text {
    width: 50%;
    min-height: 575px;
  }
}
.service-header__image {
  position: absolute;
  width: calc(100% - var(--gutter-x));
  width: 100vw;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1200px) {
  .service-header__image {
    width: 858px;
    height: auto;
    aspect-ratio: 1025/545;
    flex: none;
    position: absolute;
    left: auto;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    width: auto;
    height: 100%;
    aspect-ratio: 1215/645;
    width: auto;
    height: 100%;
    aspect-ratio: 1215/645;
    min-height: 575px;
  }
}
@media (min-width: 1200px) {
  .service-header__image {
    right: calc((100vw - 1200px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1400px) {
  .service-header__image {
    right: calc((100vw - 1400px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1600px) {
  .service-header__image {
    right: calc((100vw - 1600px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1920px) {
  .service-header__image {
    right: calc(-160px - 3rem);
  }
}
@media (max-width: 991px) {
  .service-header__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent 55%);
  }
}
.service-header__image img,
.service-header__image video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.service-header__meta {
  width: 100%;
  justify-content: flex-start;
}
.service-header__meta > * {
  flex-basis: 250px;
}
.service-header__meta .heading--meta {
  margin-bottom: 1rem;
}

.service-intro {
  color: white;
}
@media (min-width: 1400px) {
  .service-intro {
    margin-top: -2rem;
  }
}
.service-intro {
  --gap: 6rem;
}
.service-intro .wrapper {
  gap: var(--gap);
  flex-direction: column;
}
@media (min-width: 768px) {
  .service-intro .wrapper {
    flex-direction: row;
  }
}
.service-intro__image {
  aspect-ratio: 480/590;
  width: calc(33.333% - var(--gap) / 2);
  flex: none;
}
@media (max-width: 1199px) {
  .service-intro__image {
    display: none;
  }
}
.service-intro__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.service-intro__text {
  flex: 1;
}
.service-intro__cta {
  margin-top: 2rem;
}

.expertise {
  background-color: white;
  position: relative;
}
.expertise.section--inner {
  padding-top: 6rem;
}
.expertise .wrapper {
  max-width: 770px;
}
.expertise__heading {
  margin-bottom: 3rem;
  padding-top: 0;
  padding-bottom: 2rem;
  position: relative;
}
@media (min-width: 576px) {
  .expertise__heading {
    padding-top: 2rem;
  }
}
@media (min-width: 768px) {
  .expertise__heading {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}
.expertise__heading span {
  display: block;
  opacity: 0;
}
.expertise__heading span:nth-child(1) {
  margin-left: -22vw;
}
.expertise__heading span:nth-child(2) {
  margin-right: -22vw;
}
.expertise__heading:before {
  content: "";
  background-image: url("../img/glyph--expertise-bg.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 779.37/517.78;
  width: 860px;
  width: 570px;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 3s ease;
  opacity: 0;
}
@media (min-width: 768px) {
  .expertise__heading:before {
    width: 860px;
  }
}
.expertise__heading.animate-in:before {
  opacity: 1;
}
.expertise__cta {
  margin-top: 3rem;
}
.expertise__images {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
}
@media (min-width: 992px) {
  .expertise__images {
    display: block;
  }
}
.expertise__image {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  position: absolute;
  opacity: 0.9;
  opacity: 0;
}
.expertise__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.expertise__image:nth-child(1) {
  right: 63%;
  top: 7%;
  width: 130px;
}
.expertise__image:nth-child(2) {
  left: 59%;
  top: 14%;
  width: 165px;
}
.expertise__image:nth-child(3) {
  left: 76%;
  top: 16%;
  width: 100px;
}
.expertise__image:nth-child(4) {
  right: 58%;
  top: 36%;
  width: 130px;
}
.expertise__image:nth-child(5) {
  right: 75%;
  top: 42%;
  width: 210px;
}
.expertise__image:nth-child(6) {
  left: 76%;
  top: 50%;
  width: 130px;
}
.expertise__image:nth-child(7) {
  right: 78%;
  top: 67%;
  width: 120px;
}
.expertise__image:nth-child(8) {
  left: 82%;
  top: 65%;
  width: 180px;
}

.statement {
  --gap: 7rem;
  color: white;
  background-color: var(--brand--red);
}
.statement.section--inner {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media (min-width: 768px) {
  .statement.section--inner {
    padding-top: 3rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 992px) {
  .statement.section--inner {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
}
.statement.no-padding.section--inner {
  padding-top: 0;
  padding-bottom: 0;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.statement .wrapper {
  flex-direction: column;
  gap: 4rem;
}
@media (min-width: 768px) {
  .statement .wrapper {
    gap: 5rem;
  }
}
@media (min-width: 992px) {
  .statement .wrapper {
    gap: 1rem;
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  .statement__text {
    width: calc(55% - var(--gap) * 0.4);
    flex: none;
  }
}
.statement__text .word {
  display: inline-block;
  opacity: 0;
  will-change: opacity, transform;
}
.statement__images {
  width: 100%;
  flex: none;
  gap: 4rem;
  position: relative;
}
@media (min-width: 768px) {
  .statement__images {
    width: 80%;
  }
}
@media (min-width: 992px) {
  .statement__images {
    width: calc(45% - var(--gap) * 0.6);
  }
}
.statement__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.statement--style--default .wrapper, .statement--style--text-right .wrapper {
  flex-direction: column;
}
@media (min-width: 992px) {
  .statement--style--default .wrapper, .statement--style--text-right .wrapper {
    flex-direction: row-reverse;
  }
}
.statement--style--default .statement__images, .statement--style--text-right .statement__images {
  align-items: center;
}
.statement--style--default .statement__images:before, .statement--style--text-right .statement__images:before {
  content: "";
  background-image: url("../img/glyph--statement--default.svg");
  aspect-ratio: 467.839/597.496;
  width: 75%;
  height: auto;
  background-size: cover;
  position: absolute;
  top: 75%;
  left: 25%;
  transform: translate(-50%, -50%);
}
.statement--style--default .statement__image:nth-child(1), .statement--style--text-right .statement__image:nth-child(1) {
  aspect-ratio: 664.67/515;
  width: 100%;
  height: auto;
  transform: rotate(-1deg);
}
.statement--style--default .statement__image:nth-child(2), .statement--style--text-right .statement__image:nth-child(2) {
  aspect-ratio: 426/278;
  width: 50%;
  height: auto;
  transform: rotate(3deg);
}
.statement--style--alt .wrapper, .statement--style--text-left .wrapper {
  flex-direction: column;
}
@media (min-width: 992px) {
  .statement--style--alt .wrapper, .statement--style--text-left .wrapper {
    flex-direction: row;
  }
}
.statement--style--alt .statement__images, .statement--style--text-left .statement__images {
  align-items: center;
}
.statement--style--alt .statement__images:before, .statement--style--text-left .statement__images:before {
  content: "";
  background-image: url("../img/glyph--statement--alt.svg");
  aspect-ratio: 467.839/597.496;
  width: 75%;
  height: auto;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.statement--style--alt .statement__image:nth-child(1), .statement--style--text-left .statement__image:nth-child(1) {
  aspect-ratio: 426/278;
  width: 50%;
  height: auto;
  transform: rotate(3deg);
  align-self: flex-end;
}
.statement--style--alt .statement__image:nth-child(2), .statement--style--text-left .statement__image:nth-child(2) {
  aspect-ratio: 419.1/324.55;
  width: 50%;
  height: auto;
  transform: rotate(-2deg);
  align-self: flex-start;
}

body.single-1-to-1-lesson .statement.section--inner {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.lessons-header {
  color: white;
}
.lessons-header .wrapper {
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .lessons-header .wrapper {
    flex-direction: row;
  }
}
.lessons-header__text {
  padding: 1rem 0;
  padding: 1.5rem 0;
  aspect-ratio: 16/9;
  aspect-ratio: 6/5;
  aspect-ratio: 1;
  aspect-ratio: 1.1;
  width: 100%;
  justify-content: flex-end;
}
@media (min-width: 1200px) {
  .lessons-header__text {
    padding-bottom: 3rem;
    gap: 2rem;
    min-height: 575px;
    justify-content: center;
  }
}
@media (min-width: 1200px) {
  .lessons-header__text {
    width: 50%;
  }
}
.lessons-header__text h1 .badge {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  width: 175px;
  height: auto;
}
.lessons-header__text h1 .badge img {
  width: 100%;
  height: auto;
}
.lessons-header__image {
  position: absolute;
  width: calc(100% - var(--gutter-x));
  width: 100vw;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1200px) {
  .lessons-header__image {
    width: 858px;
    height: auto;
    aspect-ratio: 1025/545;
    flex: none;
    position: absolute;
    left: auto;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    width: auto;
    height: 100%;
    aspect-ratio: 1215/645;
    width: auto;
    height: 100%;
    aspect-ratio: 1215/645;
    min-height: 575px;
  }
}
@media (min-width: 1200px) {
  .lessons-header__image {
    right: calc((100vw - 1200px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1400px) {
  .lessons-header__image {
    right: calc((100vw - 1400px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1600px) {
  .lessons-header__image {
    right: calc((100vw - 1600px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1920px) {
  .lessons-header__image {
    right: calc(-160px - 3rem);
  }
}
.lessons-header__image:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.4), transparent 33%);
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent 50%);
}
.lessons-header__image img,
.lessons-header__image video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.lessons-header__image .badge {
  position: absolute;
  top: 1.5rem;
  left: 2rem;
  width: 35%;
  height: auto;
}
@media (min-width: 576px) {
  .lessons-header__image .badge {
    left: auto;
    top: 1.5rem;
    right: 2rem;
  }
}
@media (min-width: 768px) {
  .lessons-header__image .badge {
    width: 28%;
  }
}
@media (min-width: 1200px) {
  .lessons-header__image .badge {
    top: auto;
    bottom: 1.5rem;
    right: 2rem;
  }
}
.lessons-header__image .badge img {
  width: 100%;
  height: auto;
}
.lessons-header__content {
  line-height: 1.2;
}
.lessons-header__cta {
  margin-top: 0.4rem;
}
.lessons-header .lower .heading {
  margin-bottom: 1rem;
  margin-right: 1rem;
  width: 100%;
}
.lessons-header .lower .heading h4 {
  font-size: 1.1rem;
}
.lessons-header .lower .items {
  gap: 1.5rem;
}
.lessons-header .lower .wrapper {
  flex-direction: column;
  gap: 2rem;
  position: relative;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 768px) {
  .lessons-header .lower .wrapper {
    flex-direction: row;
    padding-top: 2rem;
    padding-bottom: 2rem;
    gap: 4rem;
  }
}
@media (min-width: 0) {
  .lessons-header .lower .wrapper:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translateX(-50%);
    width: calc(100% - var(--gutter-x));
    border-top: 1px solid white;
    border-bottom: 1px solid white;
  }
}
.lessons-header .lower .accreditations,
.lessons-header .lower .availability {
  flex: 1;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  position: relative;
}
.lessons-header .lower .accreditations .items {
  justify-content: flex-start;
  width: 100%;
}
.lessons-header .lower .availability {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0;
  justify-content: flex-start;
}
@media (min-width: 768px) {
  .lessons-header .lower .availability:before {
    content: "";
    display: block;
    width: 1px;
    height: calc(100% + 4rem);
    background-color: white;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -2rem;
  }
}
.lessons-header .lower .availability .items {
  width: 100%;
}
@media (min-width: 768px) {
  .lessons-header .lower .availability .items {
    width: auto;
  }
}
.lessons-header .lower .availability .item {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.lessons-header .lower .availability .item img {
  width: auto;
  height: 66px;
}
.lessons-header .lower .availability .item span {
  display: inline-block;
  font-weight: 600;
  font-size: 1.6rem;
  margin-top: 0.75rem;
  border-top: 1px solid white;
  padding-top: 0rem;
  text-align: center;
}

.lessons-overview {
  color: white;
}
.lessons-overview.section {
  margin-top: 1rem;
  margin-bottom: 3rem;
}
.lessons-overview .section--header {
  border: none;
  align-items: center;
}
.lessons-overview .section--heading {
  flex: 1;
  max-width: none;
}
.lessons-overview .section--excerpt {
  flex: 1;
  max-width: none;
  justify-content: center;
}
.lessons-overview__content {
  margin-top: 1rem;
}
@media (min-width: 1200px) {
  .lessons-overview__content {
    margin-top: 3rem;
  }
}
.lessons-overview__content a {
  text-decoration: none !important;
  color: var(--brand--red);
  font-weight: 800;
}
.lessons-overview__content a:hover {
  color: white;
  text-decoration: underline !important;
}

.video-thumb {
  max-width: 365px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.video-thumb__image {
  aspect-ratio: 365/275;
  width: 100%;
  height: auto;
}
.video-thumb__image img,
.video-thumb__image video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.video-thumb__cta {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-50%, -50%);
}
.video-thumb__cta .btn {
  font-size: 1.3rem;
  font-weight: 600;
  width: 110px;
}
.video-thumb__heading {
  margin-top: 1rem;
  text-transform: uppercase;
  font-weight: 800;
  font-size: 1.2rem;
  line-height: 1;
}
.video-thumb__subheading {
  font-size: 1rem;
  line-height: 1;
  font-weight: 200;
  margin-top: 0.5rem;
}

.features-grid {
  background-color: var(--brand--red);
  color: white;
}
.features-grid__header {
  flex-wrap: wrap;
}
@media (min-width: 1200px) {
  .features-grid__header {
    flex-wrap: nowrap;
  }
}
.features-grid--style--default .features-grid__content {
  flex: none;
  width: 100%;
  margin-top: 2rem;
}
@media (min-width: 1200px) {
  .features-grid--style--default .features-grid__content {
    margin-left: 3rem;
    margin-top: 0;
    flex: 1;
  }
}
.features-grid--style--default .features-grid__content.section--excerpt {
  max-width: none;
  max-width: 960px;
}
.features-grid {
  --col-gap: clamp(1.5rem, -0.323rem + 3.797vw, 3rem);
}
.features-grid--style--default .features-grid__items {
  gap: var(--col-gap);
  flex-wrap: wrap;
  justify-content: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin-top: -1.3rem;
  flex-direction: column;
}
@media (min-width: 768px) {
  .features-grid--style--default .features-grid__items {
    flex-direction: row;
  }
}
.features-grid--style--default .features-grid__item {
  border: 1px solid white;
  padding: 2rem;
  align-self: stretch;
  margin-top: -1px;
  display: flex;
  gap: 1rem;
}
@media (min-width: 768px) {
  .features-grid--style--default .features-grid__item {
    flex: 1;
    width: 50%;
    flex: none;
  }
}
.features-grid--style--default .features-grid__item:nth-child(odd) {
  margin-right: -1px;
}
.features-grid--style--default .features-grid__item span {
  font-weight: 400;
  font-size: 1.2rem;
}
.features-grid--style--default .features-grid__item .icon {
  width: 3.5rem;
  flex: none;
}
.features-grid--style--alt .features-grid__items {
  gap: var(--col-gap);
  flex-wrap: wrap;
  justify-content: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin-top: 2rem;
  margin-top: 0;
  flex-direction: column;
}
@media (min-width: 768px) {
  .features-grid--style--alt .features-grid__items {
    margin-top: 2rem;
    flex-direction: row;
  }
}
.features-grid--style--alt .features-grid__item {
  aspect-ratio: 535/320;
  border: 1px solid white;
  padding: 2rem;
  align-self: stretch;
  margin-top: -1px;
  width: 100%;
}
@media (min-width: 768px) {
  .features-grid--style--alt .features-grid__item {
    flex: 1;
    width: 33.333%;
    flex: none;
  }
}
.features-grid--style--alt .features-grid__item:nth-child(3n+1), .features-grid--style--alt .features-grid__item:nth-child(3n+2) {
  margin-right: -1px;
}
.features-grid--style--alt .features-grid__item i {
  height: 60px;
}
.features-grid--style--alt .features-grid__item i img {
  width: auto;
  height: 100%;
}
.features-grid--style--alt .features-grid__item div:nth-of-type(1) {
  font-weight: 800;
  font-size: 1.3rem;
  margin-top: 1rem;
  line-height: 1.2;
}
.features-grid--style--alt .features-grid__item div:nth-of-type(2) {
  margin-top: 0.7rem;
  font-size: 1rem;
}

.image-carousel + .features-grid {
  margin-top: -8rem;
}

.full-width-image .wrapper {
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.full-width-image__image {
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  aspect-ratio: 1.5;
  aspect-ratio: unset;
  min-height: 0;
}
@media (min-width: 768px) {
  .full-width-image__image {
    aspect-ratio: 1920/675;
    min-height: 675px;
    aspect-ratio: unset;
    min-height: 0;
  }
}
@media (min-width: 1400px) {
  .full-width-image__image {
    aspect-ratio: 1920/675;
    aspect-ratio: unset;
    min-height: 0;
  }
}
.full-width-image__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.pricing {
  background-color: white;
}
.pricing.section--inner {
  padding-bottom: 0;
}
.pricing {
  /*
  &__items 
  {
  	gap: 0;
  	max-width: 1920px;
  	margin-left: auto;
  	margin-right: auto;

  	position: relative;

  	flex-direction: column;
  	@media (min-width: $bp--s)
  	{
  		flex-direction: row;
  	}
  	&:before, 
  	&:after 
  	{

  		content: '';
  		display: block;
  		width: 50vw;
  		right: 50%;
  		top: 0;
  		height: 100%;
  		background-color: var(--brand--bg-color);
  		position: absolute;

  	}

  	&:after 
  	{
  		left: 50%;
  		right: auto;
  		background-color: var(--brand--red);
  	}
  }

  &__items--1
  {

  	&:before, 
  	&:after 
  	{
  		width: 100vw;
  		left: auto;
  		right: auto;
  	}

  	&:after 
  	{
  		content: none;
  	}
  }

  &__items--1 &__item 
  {
  	max-width: 640px;
  	width: 100%;
  }

  &__items--1 &__item-features 
  {
  	flex-wrap: wrap;
  }

  &__item 
  {

  	color: white;

  	@media (min-width: $bp--s)
  	{
  		width: 50%;
  		max-width: 750px;
  		max-width: 960px;
  	}

  	&:nth-child(odd)
  	{
  		background-color: var(--brand--bg-color);
  	}

  	&:nth-child(odd) &-image:after
  	{
  		background-image: linear-gradient(to top,  var(--brand--bg-color), transparent 60% );
  	}

  	&:nth-child(even)
  	{
  		background-color: var(--brand--red);
  	}

  	&:nth-child(even) &-image:after
  	{
  		background-image: linear-gradient(to top,  var(--brand--red), transparent 60% );
  	}

  	&:nth-child(even) .icon--bullet
  	{
  		background-color: var(--brand--bg-color);
  	}

  	&-image 
  	{
  		aspect-ratio: 960 / 600;
  		max-height: 600px;
  		width: 100%;
  		height: auto;

  		position: relative;

  		img 
  		{
  			width: 100%;
  			height: 100%;
  			object-fit: cover;
  			mix-blend-mode: luminosity;
  		}

  		&:after 
  		{
  			content: '';
  			display: block;

  			width: 100%;
  			position: absolute;
  			bottom: 0;
  			left: 0;
  			height: 100%;
  		}
  	}

  	&-text 
  	{
  		padding: 3rem;
  		margin-top: -15rem;
  	}

  	&--no-image &-text 
  	{
  		margin-top: 0;
  	}

  	&-heading
  	{
  		height: 6rem;
  		line-height: 1;

  		span:first-child 
  		{
  			font-size: 4.2rem;
  			font-weight: 800;
  			text-transform: uppercase;
  		}

  		span:last-child
  		{
  			width: 200px;
  			font-weight: 200;
  			font-size: 3.9rem;
  			text-transform: uppercase;
  			flex: 1;
  		}
  	}

  	&-features 
  	{
  		margin-top: 1rem;
  		height: 6rem;
  		border-top: 1px solid white;
  		border-bottom: 1px solid white;
  		line-height: 1.2;
  		gap: 2rem;
  		&-item 
  		{
  			font-size: 1.2rem;
  			font-weight: 200;
  			text-wrap: balance;
  			flex: 1;
  		}
  	}

  	&-list 
  	{
  		font-size: 1.7rem;
  		font-weight: 800;

  		&-item 
  		{
  			border-bottom: 1px solid #ffffff44;
  			padding-top: 1rem;
  			padding-bottom: 1rem;
  		}
  	}

  	&-cta 
  	{
  		margin-top: 3rem;
  		margin-bottom: 1rem;
  	}
  }
  */
}

.lesson-cta {
  position: relative;
  color: white;
}
.lesson-cta:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 1200px) {
  .lesson-cta:before {
    background: linear-gradient(to right, transparent 50%, var(--brand--red) 50%);
  }
}
.lesson-cta .wrapper {
  max-width: 1920px;
  max-width: 1600px;
  padding-left: 0;
  padding-right: 0;
}
.lesson-cta__items {
  gap: 0;
  flex-direction: column;
}
@media (min-width: 992px) {
  .lesson-cta__items {
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  .lesson-cta__items--2 .lesson-cta__item {
    width: 50%;
  }
}
.lesson-cta__item {
  flex: none;
  align-self: stretch;
  gap: 0;
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.lesson-cta__item-image {
  padding: 3rem;
  padding-left: calc(var(--gutter-x) * 0.5);
  padding-right: calc(var(--gutter-x) * 0.5);
  aspect-ratio: 960/600;
  max-height: 600px;
  width: 100%;
  height: auto;
  position: relative;
  min-height: 420px;
}
@media (min-width: 768px) {
  .lesson-cta__item-image {
    padding: 3rem;
  }
}
.lesson-cta__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: luminosity;
}
.lesson-cta__item-image:after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  background-image: linear-gradient(to top, var(--brand--bg-color), transparent 60%);
}
.lesson-cta__item:nth-child(even) .lesson-cta__item-image:after {
  background-image: linear-gradient(to top, var(--brand--red), transparent 60%);
}
.lesson-cta__item-features {
  z-index: 9;
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  padding-top: 2rem;
  padding-bottom: 2rem;
  width: 100%;
}
.lesson-cta__item-text {
  flex: 1;
  padding: 3rem;
  width: 100%;
  align-items: center;
  margin-top: -6rem;
}
@media (max-width: 767px) {
  .lesson-cta__item-text {
    padding-left: calc(var(--gutter-x) * 0.5);
    padding-right: calc(var(--gutter-x) * 0.5);
  }
}
.lesson-cta__item-heading {
  margin-bottom: 1rem;
  margin-bottom: 1rem;
  z-index: 9;
  position: relative;
}
.lesson-cta__item-heading > * {
  margin: 0;
}
.lesson-cta__item-heading span {
  font-weight: 100;
}
.lesson-cta__item-subheading {
  font-weight: 800;
  font-size: 1.8rem;
  margin-bottom: 0;
  display: none;
}
.lesson-cta__item-price-list {
  width: 100%;
  font-size: 1.7rem;
  font-weight: 800;
}
.lesson-cta__item-price-list-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2666666667);
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.lesson-cta__item:nth-child(even) .icon--bullet {
  background-color: var(--brand--bg-color);
}
.lesson-cta__item-cta {
  margin-top: 3rem;
}
.lesson-cta__item .collapsible {
  border-top: 1px solid rgba(255, 255, 255, 0.8);
  padding-top: 1rem;
  margin-top: 4rem;
}
.lesson-cta__item .collapsible__toggler {
  display: flex !important;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  height: 2rem;
  transition: all 250ms ease;
  font-weight: 800;
  text-transform: uppercase;
  cursor: pointer;
}
.lesson-cta__item .collapsible__toggler:hover {
  opacity: 0.5;
}
.lesson-cta__item .collapsible__content {
  overflow: hidden;
  box-sizing: content-box;
}
.lesson-cta__item .collapsible__content > div {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.lesson-cta__item:nth-child(even) {
  background-color: var(--brand--red);
}
.lesson-cta__item:nth-child(even) .botb-signup__item-image:after {
  background-image: linear-gradient(to top, var(--brand--red), transparent 60%);
}
.lesson-cta__item--image {
  flex: none;
  align-self: stretch;
  gap: 0;
  width: 100%;
  position: relative;
}
@media (min-width: 992px) {
  .lesson-cta__item--image {
    width: 50%;
    width: 0;
  }
}
.lesson-cta__item--image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: luminosity;
}
.lesson-cta__item--image:after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  background-image: linear-gradient(to top, var(--brand--bg-color), transparent 60%);
}
.lesson-cta:has(.lesson-cta__item--image):before {
  background-image: linear-gradient(to right, transparent 50%, transparent 50%);
}

.price-grid {
  color: white;
}
.price-grid__items {
  transition: opacity 250ms ease;
  opacity: 1;
}
.price-grid__items:not(.flickity-enabled) {
  display: flex;
  opacity: 0;
}
.price-grid__item {
  width: 80%;
  max-width: 480px;
  height: auto;
  margin-right: 1.5rem;
  border-radius: 0.5rem;
  border-radius: 25px;
  overflow: hidden;
  gap: 0;
}
@media (min-width: 768px) {
  .price-grid__item {
    margin-right: 2rem;
  }
}
@media (min-width: 992px) {
  .price-grid__item {
    width: 480px;
    width: 380px;
    min-height: 28rem;
    margin-right: 1.5rem;
  }
}
.price-grid__item-text {
  width: 100%;
  gap: 0;
  flex: 1;
}
.price-grid__item-heading {
  padding: 1.5rem;
  background-color: var(--brand--red);
  width: 100%;
}
.price-grid__item-content {
  padding: 1.5rem;
  background: white;
  color: var(--brand--bg-color);
  width: 100%;
  flex: 1;
}
.price-grid__item-price {
  font-weight: 800;
  font-size: 1.6rem;
  line-height: 1.1;
  padding: 0 1.5rem;
  background: white;
  color: var(--brand--bg-color);
  width: 100%;
}
.price-grid__item-cta {
  padding: 1.5rem;
  background: white;
  color: var(--brand--bg-color);
  width: 100%;
}
.price-grid__nav {
  margin-top: 1.2rem;
  display: flex;
  gap: 0.4rem;
}
@media (min-width: 768px) {
  .price-grid__nav {
    margin-top: 2rem;
  }
}
.price-grid__nav a:hover {
  opacity: 0.5;
}
.price-grid__items--alt .price-grid__item {
  background: transparent;
  border: 1px solid white;
  padding: 0;
  border-radius: 0.5rem;
  margin-right: 1.5rem;
  padding: 2rem 1.5rem;
  gap: 1rem;
}
@media (min-width: 768px) {
  .price-grid__items--alt .price-grid__item {
    margin-right: 1rem;
  }
}
@media (min-width: 992px) {
  .price-grid__items--alt .price-grid__item {
    width: 360px;
    min-height: 30rem;
    min-height: 39rem;
  }
}
.price-grid__items--alt .price-grid__item > * {
  width: 100%;
}
.price-grid__items--alt .price-grid__item .cost {
  font-weight: 800;
  font-size: 1.6rem;
  line-height: 1.1;
  margin: 0.5rem 0;
}
.price-grid__items--alt .price-grid__item .features {
  flex: 1;
  font-size: 1rem;
  padding-bottom: 1rem;
}
.price-grid__items--alt .price-grid__item .cta {
  width: 100%;
}
.price-grid__items--alt .price-grid__item .cta .btn {
  width: 100%;
}
.price-grid__items--alt .price-grid__item .footnote {
  text-align: center;
}
.price-grid__items--alt .price-grid__item .footnote a {
  text-decoration: underline;
}
.price-grid__items--alt .price-grid__item .footnote a:hover {
  color: var(--brand--red);
}
.price-grid__items--alt .price-grid__item-text {
  flex: 1;
}
.price-grid__items--alt .price-grid__item-heading {
  background: transparent;
  color: white;
  padding: 1.5rem;
}
.price-grid__items--alt .price-grid__item-content {
  background: transparent;
  color: white;
  padding: 1.5rem;
  flex: 1;
}
.price-grid__items--alt .price-grid__item-price {
  background: transparent;
  color: white;
  padding: 1.5rem;
  padding: 0 1.5rem;
}
.price-grid__items--alt .price-grid__item-cta {
  background: transparent;
  color: white;
  padding: 1.5rem;
}
.price-grid__items--alt .price-grid__item-cta .btn {
  width: 100%;
}

.botb-header {
  color: white;
}
.botb-header__text {
  width: 50%;
  padding-bottom: 3rem;
  gap: 0;
  min-height: 575px;
  justify-content: center;
  line-height: 0.7;
}
.botb-header__text h1 div {
  display: flex;
  align-items: center;
  line-height: 0.8;
  font-weight: 900;
}
.botb-header__text h1 div span {
  font-size: 4.1rem;
  line-height: 0.9;
  margin-bottom: -1rem;
  width: 125px;
}
.botb-header__text h1 div.year {
  font-size: 7rem;
}
.botb-header__location {
  font-size: 4rem;
  font-weight: 900;
  color: var(--brand--red);
  text-transform: uppercase;
}
.botb-header__image {
  width: 858px;
  height: auto;
  aspect-ratio: 1025/545;
  flex: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  width: auto;
  height: 100%;
  aspect-ratio: 1215/645;
  width: auto;
  height: 100%;
  aspect-ratio: 1215/645;
  min-height: 575px;
}
@media (min-width: 1200px) {
  .botb-header__image {
    right: calc((100vw - 1200px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1400px) {
  .botb-header__image {
    right: calc((100vw - 1400px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1600px) {
  .botb-header__image {
    right: calc((100vw - 1600px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1920px) {
  .botb-header__image {
    right: calc(-160px - 3rem);
  }
}
.botb-header__image img,
.botb-header__image video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.botb-header__meta {
  width: 100%;
  justify-content: flex-start;
  gap: 0;
}
.botb-header__meta > * {
  padding: 2rem;
  flex: 1;
  justify-content: flex-start;
}
.botb-header__meta > *:first-child {
  padding-left: 0;
}
.botb-header__meta > *:not(:last-child) {
  border-right: 1px solid white;
}
.botb-header__meta .heading--meta {
  margin-bottom: 1rem;
}
.botb-header__meta .date,
.botb-header__meta .location {
  font-size: 2rem;
  line-height: 0.9;
  font-weight: 800;
}
.botb-header__meta .date small,
.botb-header__meta .location small {
  font-size: 1rem;
  font-weight: 200;
}
.botb-header .lower {
  margin-top: 1px;
}
.botb-header__meta {
  border-top: 1px solid white;
  border-bottom: 1px solid white;
}
.botb-header__meta > * {
  padding-top: 2rem;
  padding-bottom: 2rem;
  align-self: stretch;
}
.botb-header__meta > *:first-child {
  padding-right: 2rem;
}
.botb-header__meta > *:last-child {
  padding-left: 2rem;
}
.botb-header__meta > * img {
  width: 20px;
}
.botb-header__accreditations {
  border-right: 1px solid white;
}
.botb-header .sponsor img {
  max-width: 300px;
  width: 100%;
  height: auto;
}

.botb-overview {
  --gap: 6rem;
  color: white;
  background-color: var(--brand--bg-color);
}
.botb-overview.section--inner {
  padding-top: 8rem;
  padding-bottom: 8rem;
  padding-bottom: 14rem;
}
.botb-overview.no-padding.section--inner {
  padding-top: 0;
  padding-bottom: 0;
}
.botb-overview__heading {
  flex-basis: 640px;
}
.botb-overview__heading ._word {
  display: inline-block;
  opacity: 0;
  will-change: opacity, transform;
}
.botb-overview__text {
  flex-basis: 560px;
  gap: 3rem;
  position: relative;
}
.botb-overview--style--default .wrapper, .botb-overview--style--text-right .wrapper {
  flex-direction: row-reverse;
}
.botb-overview--style--default .botb-overview__images, .botb-overview--style--text-right .botb-overview__images {
  align-items: center;
}
.botb-overview--style--default .botb-overview__images:before, .botb-overview--style--text-right .botb-overview__images:before {
  content: "";
  background-image: url("../img/glyph--botb-overview--default.svg");
  aspect-ratio: 467.839/597.496;
  width: 75%;
  height: auto;
  background-size: cover;
  position: absolute;
  top: 75%;
  left: 25%;
  transform: translate(-50%, -50%);
}
.botb-overview--style--default .botb-overview__image:nth-child(1), .botb-overview--style--text-right .botb-overview__image:nth-child(1) {
  aspect-ratio: 664.67/515;
  width: 100%;
  height: auto;
  transform: rotate(-1deg);
}
.botb-overview--style--default .botb-overview__image:nth-child(2), .botb-overview--style--text-right .botb-overview__image:nth-child(2) {
  aspect-ratio: 426/278;
  width: 50%;
  height: auto;
  transform: rotate(3deg);
}
.botb-overview--style--alt .wrapper, .botb-overview--style--text-left .wrapper {
  flex-direction: row;
}
.botb-overview--style--alt .botb-overview__images, .botb-overview--style--text-left .botb-overview__images {
  align-items: center;
}
.botb-overview--style--alt .botb-overview__images:before, .botb-overview--style--text-left .botb-overview__images:before {
  content: "";
  background-image: url("../img/glyph--botb-overview--alt.svg");
  aspect-ratio: 467.839/597.496;
  width: 75%;
  height: auto;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.botb-overview--style--alt .botb-overview__image:nth-child(1), .botb-overview--style--text-left .botb-overview__image:nth-child(1) {
  aspect-ratio: 426/278;
  width: 50%;
  height: auto;
  transform: rotate(3deg);
  align-self: flex-end;
}
.botb-overview--style--alt .botb-overview__image:nth-child(2), .botb-overview--style--text-left .botb-overview__image:nth-child(2) {
  aspect-ratio: 419.1/324.55;
  width: 50%;
  height: auto;
  transform: rotate(-2deg);
  align-self: flex-start;
}

.image-mosaic-cta {
  background-color: var(--brand--cyan);
  color: white;
}
@media (max-width: 1199px) {
  .image-mosaic-cta {
    display: none;
  }
}
.image-mosaic-cta.section {
  padding-bottom: 4rem;
}
@media (min-width: 1200px) {
  .image-mosaic-cta__images {
    margin-top: -14rem;
    display: grid;
    grid-template-columns: 18.4% 15% 21.2% 22.8% 15.5%;
    grid-template-rows: auto 2rem auto;
    gap: 2rem;
    gap: clamp(1rem, 2vw, 2rem);
    aspect-ratio: 2261/940;
    width: 1600px;
    width: 110vw;
    max-width: 2260px;
    height: auto;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}
.image-mosaic-cta__image {
  display: flex;
  flex-direction: column;
  opacity: 0;
}
.image-mosaic-cta__image img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.image-mosaic-cta__image:nth-child(1) {
  margin-top: 3.5rem;
  grid-row: 1/span 2;
}
.image-mosaic-cta__image:nth-child(1) img {
  aspect-ratio: 417/334;
}
.image-mosaic-cta__image:nth-child(2) {
  justify-content: flex-end;
  grid-row: 1/span 2;
}
.image-mosaic-cta__image:nth-child(2) img {
  aspect-ratio: 339/386;
}
.image-mosaic-cta__image:nth-child(3) {
  justify-content: flex-end;
  grid-row: 1/span 3;
}
.image-mosaic-cta__image:nth-child(3) img {
  aspect-ratio: 480/940;
}
.image-mosaic-cta__image:nth-child(4) {
  justify-content: flex-end;
  grid-row: 1/span 1;
}
.image-mosaic-cta__image:nth-child(4) img {
  aspect-ratio: 515/346;
}
.image-mosaic-cta__image:nth-child(5) {
  grid-row: 1/span 1;
}
.image-mosaic-cta__image:nth-child(5) img {
  aspect-ratio: 350/442;
}
.image-mosaic-cta__image:nth-child(6) {
  justify-content: flex-end;
  align-items: flex-end;
  grid-column: 1/span 2;
  grid-row: 3/span 1;
}
.image-mosaic-cta__image:nth-child(6) img {
  width: 69.2%;
  aspect-ratio: 551/421;
}
.image-mosaic-cta__image:nth-child(7) {
  grid-column: 4/span 2;
  grid-row: 2/span 2;
}
.image-mosaic-cta__image:nth-child(7) img {
  width: 95.7%;
  height: 100%;
  aspect-ratio: 866/493;
}
.image-mosaic-cta__content {
  margin-top: 5rem;
  font-size: 4rem;
  font-weight: 600;
}
.image-mosaic-cta__content a {
  color: white;
  text-decoration: underline;
  text-underline-offset: 1.2rem;
  text-decoration-thickness: 2px;
}
.image-mosaic-cta__content a:hover {
  color: var(--brand--bg-color);
}

.vacancies-grid {
  background-color: white;
}
.vacancies-grid .eq span {
  background-color: var(--brand--red);
}
.vacancies-grid .eq span:before, .vacancies-grid .eq span:after {
  background-color: var(--brand--red);
}
.vacancies-grid {
  background-color: white;
  --gap: 1.5rem;
}
@media (min-width: 768px) {
  .vacancies-grid {
    --gap: 3rem;
  }
}
.vacancies-grid__items {
  gap: var(--gap);
  flex-wrap: wrap;
  justify-content: flex-start;
  flex-direction: column;
}
@media (min-width: 768px) {
  .vacancies-grid__items {
    flex-direction: row;
  }
}
@media (min-width: 768px) {
  .vacancies-grid__item {
    width: calc(33.3333333333% - var(--gap) * 2 / 3);
    flex: none;
  }
}
.vacancies-grid__item-image {
  aspect-ratio: 475/415;
  width: 100%;
  height: auto;
}
.vacancies-grid__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.vacancies-grid__item-text {
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .vacancies-grid__item-text {
    margin-top: 2rem;
  }
}
.vacancies-grid__item-category {
  color: var(--brand--red);
  font-weight: 300;
  font-size: 1.2rem;
}
.vacancies-grid__item-heading {
  margin-top: 0.5rem;
}
.vacancies-grid__item-excerpt, .vacancies-grid__item-content {
  margin-top: 1rem;
}

.basic-page-layout {
  background-color: white;
}
.basic-page-layout__content {
  margin-top: 3rem;
}

body:has(.basic-page-layout) .site-header-bg,
body:has(.basic-page-layout) .site-header-bg-alt {
  display: none;
}

.wc-single-product {
  --gap: 4rem;
  gap: var(--gap);
  flex-direction: column;
}
@media (min-width: 1200px) {
  .wc-single-product {
    flex-direction: row;
  }
}
.wc-single-product__images, .wc-single-product__text {
  width: 100%;
  flex: none;
}
@media (min-width: 1200px) {
  .wc-single-product__images, .wc-single-product__text {
    width: calc(50% - var(--gap) / 2);
    flex: none;
  }
}
.wc-single-product__images img {
  width: 100%;
}
.wc-single-product form.cart {
  display: flex;
  flex-direction: column;
}
.wc-single-product form.cart .gform_wrapper {
  margin-bottom: 1rem;
}
.wc-single-product form.cart .quantity + button {
  margin-top: 1rem;
}
.wc-single-product .product_meta {
  display: none;
}
.wc-single-product .woocommerce-product-gallery__trigger {
  display: none;
}
.wc-single-product table.variations tr {
  display: flex;
}
.wc-single-product table.variations tr > * {
  width: 50%;
  text-align: left;
}
.wc-single-product table.variations tr label {
  height: 55px;
  display: flex;
  align-items: center;
}
.wc-single-product .woocommerce-variation-add-to-cart {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  margin-top: 1rem;
}
.wc-single-product .woocommerce-variation-add-to-cart .quantity {
  width: 100%;
}
.wc-single-product .woocommerce-variation-add-to-cart .quantity button {
  width: 100%;
}
.wc-single-product .woocommerce-variation-price {
  text-align: left;
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 600;
}
.wc-single-product .price {
  font-size: 2rem;
  font-weight: 600;
}

.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error {
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
}
@media (max-width: 767px) {
  .woocommerce .woocommerce-message,
  .woocommerce .woocommerce-error {
    gap: 0.6rem;
    padding: 1em 1em 1em 2.6em;
  }
}
.woocommerce .woocommerce-message a,
.woocommerce .woocommerce-message .btn,
.woocommerce .woocommerce-error a,
.woocommerce .woocommerce-error .btn {
  margin-left: auto;
}
.woocommerce .woocommerce-message:before,
.woocommerce .woocommerce-error:before {
  color: white;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 991px) {
  .woocommerce .woocommerce-message:before,
  .woocommerce .woocommerce-error:before {
    left: 0.7rem;
  }
}
.woocommerce .woocommerce-message {
  border-color: var(--brand--cyan);
  background-color: var(--brand--cyan);
}
.woocommerce .woocommerce-error {
  border-color: var(--brand--red);
  background-color: var(--brand--red);
}
.woocommerce .woocommerce-customer-details address {
  padding: 1rem;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt {
  background-color: var(--brand--red);
  height: var(--bramd--button-height);
  border-radius: var(--brand--button-height);
  font-size: var(--brand--button-font-size);
  width: 100%;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:hover {
  background-color: var(--brand--red);
  filter: brightness(1.1);
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt.disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled[disabled],
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt.disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled[disabled],
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled[disabled]:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled[disabled],
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled[disabled]:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt.disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled[disabled],
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt.disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled[disabled],
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt.disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled[disabled],
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt.disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled[disabled],
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt.disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled[disabled],
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled[disabled]:hover {
  background-color: var(--brand--red);
  height: var(--bramd--button-height);
  border-radius: var(--brand--button-height);
  font-size: var(--brand--button-font-size);
  width: 100%;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt.disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled[disabled]:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt.disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled[disabled]:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled[disabled]:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled[disabled]:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled[disabled]:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt.disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt.disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled:hover:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled[disabled]:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled[disabled]:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt.disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled[disabled]:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt.disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled[disabled]:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt.disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled[disabled]:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt.disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt.disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled:hover:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled[disabled]:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled[disabled]:hover:hover {
  background-color: var(--brand--red);
  filter: brightness(1.1);
}

.select2-container--default .select2-selection--single {
  height: 55px;
  border-radius: 0;
  border-color: var(--brand--bg-color);
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  padding-left: 1rem;
}
.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 55px;
  line-height: 55px;
  color: var(--brand--bg-color);
  font-size: 1.1rem;
}

.select2-search--dropdown,
.select2-results__option {
  padding-left: 1rem;
  padding-right: 1rem;
}

form.checkout .col2-set {
  margin-bottom: 2rem;
  display: flex;
  gap: 1rem;
  flex-direction: column;
}
@media (min-width: 992px) {
  form.checkout .col2-set {
    flex-direction: row;
  }
}
form.checkout .col2-set:before, form.checkout .col2-set:after {
  content: none;
}
form.checkout .col2-set .col-1,
form.checkout .col2-set .col-2 {
  width: 100%;
  float: none;
}
@media (min-width: 992px) {
  form.checkout .col2-set .col-1,
  form.checkout .col2-set .col-2 {
    width: calc(50% - 0.5rem);
  }
}
form.checkout .form-row-first,
form.checkout .form-row-last {
  width: calc(50% - 0.5rem);
}
form.checkout h3 {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 600;
}
form.checkout #payment {
  background: none;
}
form.checkout #payment ul.payment_methods {
  padding: 0;
}
form.checkout #payment div.form-row {
  padding: 0;
}

body.woocommerce-cart .basic-page-layout .wrapper,
body.woocommerce-checkout .basic-page-layout .wrapper {
  max-width: 1200px;
}

.woocommerce-privacy-policy-text {
  padding: 2rem 0;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
  max-width: 250px;
  float: none;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
}
@media (max-width: 575px) {
  .woocommerce #payment #place_order,
  .woocommerce-page #payment #place_order {
    max-width: 100%;
  }
}

.wc-item-meta,
.woocommerce ul.order_details {
  padding: 0;
}

.woocommerce ul.order_details {
  margin-top: 2rem;
}

body.woocommerce-checkout h2 {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 600;
}

.woocommerce-order-details {
  margin-top: 2rem;
}

.woocommerce form .form-row textarea {
  height: 9.6rem;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}
.woocommerce-MyAccount-navigation ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.entry-content .woocommerce-MyAccount-navigation-link.is-active a {
  color: var(--brand--red);
  text-decoration: none !important;
}

.lesson-signup {
  background-color: white;
}
.lesson-signup__content {
  margin-top: 3rem;
}
.lesson-signup .wrapper {
  max-width: 720px;
}
.lesson-signup .gfield_label {
  font-weight: 400;
  margin-bottom: 1rem;
  font-size: 1.2rem;
}
.lesson-signup .gfield_required {
  color: var(--brand--red);
}
.lesson-signup .gfield textarea {
  height: 150px;
}
.lesson-signup .gform_footer {
  text-align: center;
  margin-top: 1rem;
}
.lesson-signup input:hover,
.lesson-signup textarea:hover,
.lesson-signup select:hover,
.lesson-signup .gform-field-label:hover {
  opacity: 0.5;
}

body:has(.lesson-signup) .site-header-bg,
body:has(.lesson-signup) .site-header-bg-alt {
  display: none;
}

.calendar-list__month-year:not(:first-child) {
  margin-top: 1rem;
}
@media (min-width: 992px) {
  .calendar-list__month-year:not(:first-child) {
    margin-top: 2rem;
  }
}
.calendar-list__month-year {
  opacity: 0;
  transform: translateX(3rem);
  will-change: opacity transform;
  transition: opacity 2s cubic-bezier(0.215, 0.61, 0.355, 1), transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .calendar-list__month-year {
    margin-bottom: 1.5rem;
  }
}
.calendar-list__month-year.animate-in {
  opacity: 1;
  transform: translateX(0);
}
.calendar-list__item {
  display: flex;
  align-items: center;
  min-height: 115px;
  width: 100%;
  opacity: 0;
  transform: translateX(3rem);
  will-change: opacity transform;
  transition: opacity 2s cubic-bezier(0.215, 0.61, 0.355, 1), transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.calendar-list__item.animate-in {
  opacity: 1;
  transform: translateX(0);
}
.calendar-list__item > * {
  box-shadow: 1px 0 0 0 var(--brand--bg-color), 0 1px 0 0 var(--brand--bg-color), 1px 1px 0 0 var(--brand--bg-color), 1px 0 0 0 var(--brand--bg-color) inset, 0 1px 0 0 var(--brand--bg-color) inset;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
}
@media (min-width: 768px) {
  .calendar-list__item > * {
    padding: 1rem;
  }
}
@media (min-width: 992px) {
  .calendar-list__item > * {
    padding: 1rem 1.5rem;
  }
}
.calendar-list__item-date {
  flex: none;
  text-align: center;
  padding: 1rem;
  width: 24%;
}
@media (min-width: 992px) {
  .calendar-list__item-date {
    width: 14%;
  }
}
.calendar-list__item-date [data-day] {
  font-weight: 600;
  line-height: 1.2;
  font-size: 1.1rem;
}
@media (min-width: 992px) {
  .calendar-list__item-date [data-day] {
    font-size: 2.6rem;
  }
}
.calendar-list__item-date [data-day]:after {
  display: block;
  content: attr(data-day);
  font-size: 1rem;
  font-weight: 300;
}
.calendar-list__item-date i {
  background-color: black;
  width: 0.5rem;
  height: 2px;
  margin-top: -0.5rem;
  border-left: 2px solid white;
  border-right: 2px solid white;
}
@media (min-width: 1200px) {
  .calendar-list__item-date i {
    width: 1rem;
    height: 5px;
  }
}
.calendar-list__item-image {
  width: 23%;
  flex: none;
  align-self: stretch;
  background-color: var(--brand--bg-color);
  padding: 0;
}
@media (max-width: 991px) {
  .calendar-list__item-image {
    display: none;
  }
}
.calendar-list__item-image img {
  aspect-ratio: 375/115;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 991px) {
  .calendar-list__item-image i {
    width: 45px;
  }
}
.calendar-list__item-heading {
  flex: 1;
  font-size: 1.1rem;
  font-weight: 600;
  gap: 0;
  flex-direction: column;
}
@media (min-width: 992px) {
  .calendar-list__item-heading {
    justify-content: flex-start;
    font-size: 1.6rem;
    flex-direction: row;
    gap: 1.5rem;
  }
}
.calendar-list__item-heading span {
  display: block;
}
.calendar-list__item-heading .locations {
  display: flex;
  gap: 0.3rem;
  position: relative;
}
@media (max-width: 991px) {
  .calendar-list__item-heading .locations {
    margin-top: 0.5rem;
  }
}
@media (min-width: 992px) {
  .calendar-list__item-heading .locations:before {
    /* border-left: 2px solid var(--brand--red); */
    height: 100%;
    width: 2px;
    height: 2px;
    position: absolute;
    left: -0.5rem;
    left: -14px;
    top: 57.5%;
    transform: translateY(-50%);
    /* border-radius: 50%; */
    background-color: #011527;
    aspect-ratio: 1;
    opacity: 0.7;
  }
}
.calendar-list__item-heading .location {
  color: var(--brand--red);
  position: relative;
  display: inline-block;
  font-size: 0.9rem;
  background-color: #e6263b;
  color: white;
  padding: 0.5rem 0.7rem;
  border-radius: 4px;
  opacity: 0.8;
}
@media (min-width: 992px) {
  .calendar-list__item-heading .location:before {
    display: block;
    border-left: 2px solid var(--brand--red);
    height: 100%;
    width: 2px;
    height: 95%;
    position: absolute;
    left: -0.5rem;
    left: -0.75rem;
    top: 57.5%;
    transform: translateY(-50%);
  }
}
.calendar-list__item-heading .cta {
  margin-top: 0.8rem;
}
@media (min-width: 768px) {
  .calendar-list__item-heading .cta {
    display: none;
    margin-top: 0.2rem;
  }
}
.calendar-list__item-heading .cta .btn {
  height: 30px;
}
.calendar-list__item-cta {
  box-shadow: 1px 0 0 0 var(--brand--bg-color), 0 1px 0 0 var(--brand--bg-color), 1px 1px 0 0 var(--brand--bg-color), 1px 0 0 0 white inset, 0 1px 0 0 var(--brand--bg-color) inset;
  width: 190px;
  flex: none;
}
@media (max-width: 767px) {
  .calendar-list__item-cta {
    display: none;
  }
}
.calendar-list__item-cta .btn {
  text-align: center;
  justify-content: center;
}
.calendar-list {
  transition: opacity 0.25s ease-in-out;
}
.calendar-list.is-loading {
  opacity: 0.6;
  pointer-events: none;
}

.location-calendar {
  background-color: white;
}
.location-calendar .eq span {
  background-color: var(--brand--red);
}
.location-calendar .eq span:before, .location-calendar .eq span:after {
  background-color: var(--brand--red);
}
@media (max-width: 767px) {
  .location-calendar .filter__items {
    display: none;
  }
}
@media (min-width: 768px) {
  .location-calendar .custom-select {
    display: none;
  }
}

.career {
  background-color: white;
}
.career .wrapper {
  max-width: 1140px;
}
.career .entry-content h3 {
  font-size: 3.2rem;
  text-wrap: auto;
  line-height: 1.2;
  font-weight: 800;
}
.career .entry-content h4 {
  font-size: 2rem;
  text-wrap: auto;
  line-height: 1.2;
  font-weight: 800;
}
.career .entry-content p, .career .entry-content li {
  font-size: 1.3rem;
}
.career .entry-content > *:not(:last-child):not(blockquote),
.career .entry-content > blockquote > *:not(:last-child) {
  margin-bottom: 1.8rem;
}
.career {
  --gap: 4rem;
}
.career__main {
  gap: var(--gap);
  flex-direction: column;
}
@media (min-width: 768px) {
  .career__main {
    flex-direction: row;
  }
}
.career__text {
  flex: 1;
}
.career__form {
  width: 100%;
}
@media (min-width: 768px) {
  .career__form {
    max-width: 380px;
    width: calc(45% - var(--gap) * 0.55);
  }
}
.career__form-heading {
  margin-bottom: 1rem;
}
.career__form-subheading {
  margin-bottom: 1rem;
}
.career__form-subheading p {
  font-size: 1rem;
  font-weight: 200;
}
.career__form .btn--long {
  width: 100%;
}

.shop-grid {
  --gap: 3rem;
}
.shop-grid__items {
  gap: var(--gap);
  flex-wrap: wrap;
  flex-direction: column;
}
@media (min-width: 992px) {
  .shop-grid__items {
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  .shop-grid__item {
    width: calc(33.3333333333% - var(--gap) * 2 / 3);
  }
}
.shop-grid__item {
  opacity: 0;
}
.shop-grid__item.animate-in {
  opacity: 1;
}
.shop-grid__item-image {
  aspect-ratio: 475/415;
  width: 100%;
  height: auto;
  border: 1px solid var(--brand--bg-color);
  border-radius: 1px;
  background-color: var(--brand--bg-color);
  display: flex;
  align-items: center;
  justify-content: center;
}
.shop-grid__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.shop-grid__item-text {
  margin-top: 2rem;
}
@media (min-width: 992px) {
  .shop-grid__item-text {
    min-height: 10rem;
  }
}
.shop-grid__item-category {
  color: var(--brand--red);
  font-weight: 300;
  font-size: 1.2rem;
}
.shop-grid__item-header {
  margin-top: 0.5rem;
}
.shop-grid__item-heading, .shop-grid__item-price {
  font-weight: 600;
  font-size: 1.3rem;
  text-transform: uppercase;
  line-height: 1.1;
}
.shop-grid__item-excerpt, .shop-grid__item-content {
  margin-top: 1rem;
}
.shop-grid__item-content {
  font-weight: 200;
}
.shop-grid__item-cta {
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .shop-grid__item-cta {
    margin-top: 1rem;
  }
}

.event-header {
  color: white;
}
.event-header__text {
  padding: 1rem 0;
  padding: 1.5rem 0;
  aspect-ratio: 16/9;
  aspect-ratio: 6/5;
  aspect-ratio: 1.1;
  width: 100%;
  justify-content: flex-end;
  gap: 0;
}
@media (min-width: 1200px) {
  .event-header__text {
    width: 50%;
    padding-bottom: 3rem;
    gap: 0;
    min-height: 575px;
    justify-content: center;
    line-height: 0.7;
  }
}
.event-header__text h1 {
  text-shadow: -4px 5px 0px rgba(0, 0, 0, 0.5);
}
.event-header__text h1 div {
  display: flex;
  align-items: center;
  line-height: 0.8;
  font-weight: 900;
  font-size: 4.5rem;
}
@media (min-width: 768px) {
  .event-header__text h1 div {
    font-size: inherit;
  }
}
.event-header__text h1 div span {
  font-size: 1.8rem;
  line-height: 0.9;
  margin-bottom: -0.7rem;
  width: 65px;
}
@media (min-width: 768px) {
  .event-header__text h1 div span {
    font-size: 2.2rem;
    line-height: 0.9;
    margin-bottom: -1rem;
    width: 75px;
  }
}
@media (min-width: 992px) {
  .event-header__text h1 div span {
    font-size: 4.2rem;
    line-height: 0.9;
    margin-bottom: -1rem;
    width: 125px;
  }
}
@media (min-width: 1200px) {
  .event-header__text h1 div span {
    font-size: 4.2rem;
    line-height: 0.9;
    margin-bottom: -1rem;
    width: 125px;
  }
}
.event-header__text h1 div.year {
  font-size: 3.1rem;
  line-height: 1;
}
@media (min-width: 768px) {
  .event-header__text h1 div.year {
    font-size: 7rem;
  }
}
.event-header__location {
  font-size: 2.4rem;
  font-weight: 900;
  color: var(--brand--red);
  text-transform: uppercase;
  line-height: 1;
  text-shadow: 4px 4px 1px rgba(0, 0, 0, 0.3);
  text-shadow: -4px 5px 0px rgba(0, 0, 0, 0.5);
}
@media (min-width: 768px) {
  .event-header__location {
    font-size: 4rem;
  }
}
.event-header__image {
  position: absolute;
  width: calc(100% - var(--gutter-x));
  width: 100vw;
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1200px) {
  .event-header__image {
    width: 858px;
    height: auto;
    aspect-ratio: 1025/545;
    flex: none;
    position: absolute;
    left: auto;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    width: auto;
    height: 100%;
    aspect-ratio: 1215/645;
  }
}
@media (min-width: 1200px) {
  .event-header__image {
    right: calc((100vw - 1200px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1400px) {
  .event-header__image {
    right: calc((100vw - 1400px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1600px) {
  .event-header__image {
    right: calc((100vw - 1600px) / 2 * -1 - 3rem);
  }
}
@media (min-width: 1920px) {
  .event-header__image {
    right: calc(-160px - 3rem);
  }
}
@media (max-width: 1199px) {
  .event-header__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(85deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0) 60%);
    background-image: linear-gradient(5deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
  }
}
@media (max-width: 991px) {
  .event-header__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(5deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
    background-image: linear-gradient(5deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  }
}
@media (max-width: 767px) {
  .event-header__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(5deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0));
    background-image: linear-gradient(5deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
    background-image: linear-gradient(5deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0));
  }
}
.event-header__image img,
.event-header__image video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.event-header__meta {
  margin-top: 2rem;
  width: 100%;
  justify-content: flex-start;
  gap: 2rem;
  width: 100%;
  justify-content: flex-start;
  flex-direction: column;
}
@media (min-width: 992px) {
  .event-header__meta {
    margin-top: 0;
    gap: 0;
    flex-direction: row;
    border-top: 1px solid white;
    border-bottom: 1px solid white;
  }
}
.event-header__meta > * {
  flex: 1;
  justify-content: flex-start;
  align-self: stretch;
}
@media (min-width: 992px) {
  .event-header__meta > * {
    padding: 2rem;
  }
}
.event-header__meta > *:first-child {
  padding-left: 0;
}
@media (min-width: 992px) {
  .event-header__meta > *:not(:last-child) {
    border-right: 1px solid white;
  }
}
.event-header__meta .heading--meta {
  margin-bottom: 1rem;
  margin-bottom: 0;
}
.event-header__meta .date,
.event-header__meta .location {
  font-size: 2rem;
  line-height: 0.9;
  font-weight: 800;
}
.event-header__meta .date small,
.event-header__meta .location small {
  font-size: 1rem;
  font-weight: 200;
}
.event-header .lower {
  margin-top: 1px;
}
.event-header__accreditations {
  border-right: 1px solid white;
}
.event-header .sponsor img {
  max-width: 300px;
  width: 100%;
  height: auto;
  max-width: 175px;
}

.event-overview {
  --gap: 6rem;
  color: white;
  background-color: var(--brand--bg-color);
}
@media (min-width: 1200px) {
  .event-overview.section--inner {
    padding-top: 8rem;
    padding-bottom: 8rem;
    padding-bottom: 14rem;
  }
}
.event-overview.no-padding.section--inner {
  padding-top: 0;
  padding-bottom: 0;
}
.event-overview .wrapper {
  flex-direction: column;
  gap: 2rem;
}
@media (min-width: 992px) {
  .event-overview .wrapper {
    gap: 2rem;
    flex-direction: row;
  }
}
@media (min-width: 1200px) {
  .event-overview .wrapper {
    gap: 3rem;
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  .event-overview__heading {
    flex-basis: 640px;
  }
}
.event-overview__heading ._word {
  display: inline-block;
  opacity: 0;
  will-change: opacity, transform;
}
.event-overview__text {
  gap: 3rem;
  position: relative;
}
@media (min-width: 992px) {
  .event-overview__text {
    flex-basis: 560px;
  }
}
.event-overview--style--default .wrapper, .event-overview--style--text-right .wrapper {
  flex-direction: column;
}
@media (min-width: 992px) {
  .event-overview--style--default .wrapper, .event-overview--style--text-right .wrapper {
    flex-direction: row-reverse;
  }
}
.event-overview--style--default .event-overview__images, .event-overview--style--text-right .event-overview__images {
  align-items: center;
}
.event-overview--style--default .event-overview__images:before, .event-overview--style--text-right .event-overview__images:before {
  content: "";
  background-image: url("../img/glyph--botb-overview--default.svg");
  aspect-ratio: 467.839/597.496;
  width: 75%;
  height: auto;
  background-size: cover;
  position: absolute;
  top: 75%;
  left: 25%;
  transform: translate(-50%, -50%);
}
.event-overview--style--default .event-overview__image:nth-child(1), .event-overview--style--text-right .event-overview__image:nth-child(1) {
  aspect-ratio: 664.67/515;
  width: 100%;
  height: auto;
  transform: rotate(-1deg);
}
.event-overview--style--default .event-overview__image:nth-child(2), .event-overview--style--text-right .event-overview__image:nth-child(2) {
  aspect-ratio: 426/278;
  width: 50%;
  height: auto;
  transform: rotate(3deg);
}
.event-overview--style--alt .wrapper, .event-overview--style--text-left .wrapper {
  flex-direction: column;
}
@media (min-width: 992px) {
  .event-overview--style--alt .wrapper, .event-overview--style--text-left .wrapper {
    flex-direction: row;
  }
}
.event-overview--style--alt .event-overview__images, .event-overview--style--text-left .event-overview__images {
  align-items: center;
}
.event-overview--style--alt .event-overview__images:before, .event-overview--style--text-left .event-overview__images:before {
  content: "";
  background-image: url("../img/glyph--botb-overview--alt.svg");
  aspect-ratio: 467.839/597.496;
  width: 75%;
  height: auto;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.event-overview--style--alt .event-overview__image:nth-child(1), .event-overview--style--text-left .event-overview__image:nth-child(1) {
  aspect-ratio: 426/278;
  width: 50%;
  height: auto;
  transform: rotate(3deg);
  align-self: flex-end;
}
.event-overview--style--alt .event-overview__image:nth-child(2), .event-overview--style--text-left .event-overview__image:nth-child(2) {
  aspect-ratio: 419.1/324.55;
  width: 50%;
  height: auto;
  transform: rotate(-2deg);
  align-self: flex-start;
}

.mobile-navigation {
  --duration: 0.5s;
  --easing: cubic-bezier(0.215, 0.61, 0.355, 1);
  background-color: white;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
  z-index: 999;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1.5rem;
  transform: translateX(100%);
  transition: transform var(--duration) var(--easing);
  max-width: 480px;
  will-change: transform, box-shadow;
}
@media (min-width: 576px) {
  .mobile-navigation {
    transition: transform var(--duration) var(--easing), box-shadow var(--duration) var(--easing);
  }
}
.mobile-navigation.is-active {
  transform: translateX(0);
}
@media (min-width: 576px) {
  .mobile-navigation.is-active {
    box-shadow: 0 0 10px 10px rgba(0, 0, 0, 0.5);
  }
}
.mobile-navigation .nav-menu {
  flex-direction: column;
  align-items: flex-start;
}
.mobile-navigation .nav-menu .sub-menu {
  display: none;
}
.mobile-navigation .nav-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
  flex-direction: column;
}
.mobile-navigation .nav-menu li {
  position: relative;
  width: 100%;
}
.mobile-navigation .nav-menu li a {
  display: flex;
  align-items: center;
}
.mobile-navigation .nav-menu a:not([href^="#"]):hover {
  color: red;
}
.mobile-navigation .nav-menu > li > a {
  height: 3rem;
  font-size: 1.2rem;
  font-weight: 200;
}
.mobile-navigation .nav-menu .sub-menu > li > a {
  height: 2.5rem;
  font-size: 0.9rem;
  font-weight: 200;
}
.mobile-navigation .nav-menu .sub-menu .sub-menu > li > a {
  height: 2rem;
  font-size: 0.9rem;
  font-weight: 600;
}
.mobile-navigation .nav-menu .sub-menu .sub-menu {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.mobile-navigation .nav-menu > li > a,
.mobile-navigation .nav-menu > li > .sub-menu > li > a {
  border-bottom: 1px dashed #999;
}
.mobile-navigation .nav-menu .sub-menu.is-active li:has(.sub-menu.is-active) + li {
  border-top: 1px dashed #999;
}
.mobile-navigation .nav-menu .sub-menu-toggler {
  position: absolute;
  right: 0;
  top: 0;
  border: none;
  box-shadow: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.65' height='11.2'%3E%3Cg data-name='Group 274'%3E%3Cg data-name='Group 273'%3E%3Cpath data-name='Path 867' d='M5.33 11.2C3.76 10.75 0 5.77 0 3.52.24.82 3.01-.02 5.33 0c2.33-.02 5.1.82 5.32 3.52 0 2.25-3.65 7.28-5.32 7.68Z' fill='%23e6263b' fill-rule='evenodd'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  width: 1rem;
  height: auto;
  aspect-ratio: 10.6/11.2;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1rem;
  margin-left: 0.2rem;
  transform: rotate(90deg);
  transition: transform 150ms ease;
  width: 2rem;
  top: 0.5rem;
  background-color: transparent;
  appearance: none;
}
.mobile-navigation .nav-menu > .sub-menu > .sub-menu-toggler {
  top: 0.2rem;
}
.mobile-navigation .nav-menu li:has(> .sub-menu.is-active) > .sub-menu-toggler {
  transform: rotate(0deg);
}
.mobile-navigation .nav-menu .sub-menu li > .sub-menu-toggler {
  display: block;
  top: 0rem;
  right: 0rem;
  padding: 0;
  background-image: none;
  transform: none;
  font-size: 1.4rem;
  font-weight: 200;
}
.mobile-navigation .nav-menu .sub-menu li > .sub-menu-toggler:hover {
  color: var(--brand--red);
}
.mobile-navigation .nav-menu .sub-menu li > .sub-menu-toggler:before {
  content: "+";
}
.mobile-navigation .nav-menu li > .sub-menu.is-active > li:has(> .sub-menu.is-active) .sub-menu-toggler:before {
  content: "-";
}
.mobile-navigation .nav-menu {
  /*
  .sub-menu 
  {
  	height: 0;
  	overflow: clip;
  	transition: 0.2s ease-in-out;
  	&.is-active 
  	{
  		height: calc-size(auto, size);
  	}
  }
  */
}
.mobile-navigation__header {
  border-bottom: 1px solid var(--brand--bg-color);
  width: 100%;
  position: relative;
  padding-bottom: 1rem;
}
.mobile-navigation__header .logo {
  width: 120px;
  height: auto;
}
.mobile-navigation__header .logo svg {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mobile-navigation__header .mobile-menu-close {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  width: 1.25rem;
  height: auto;
  padding: 0.5rem;
  will-change: opacity, transform;
  transition: opacity 250ms ease, transform 250ms ease;
  box-sizing: content-box;
  margin-right: -0.5rem;
  margin-top: -0.5rem;
}
.mobile-navigation__header .mobile-menu-close svg {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mobile-navigation__header .mobile-menu-close:hover {
  opacity: 0.5;
  transform: rotate(90deg);
}
.mobile-navigation__main {
  width: 100%;
}

@media (min-width: 1200px) {
  .hamburger {
    display: none;
  }
}
.hamburger {
  --burger-width: 28px;
  --burger-height: 25px;
  --bar-width: var(--burger-width);
  --bar-height: 2px;
  position: absolute;
  z-index: 99;
  top: 1.5rem;
  right: 1.5rem;
  aspect-ratio: 1.4;
  width: var(--burger-width);
  height: var(--burger-height);
  background: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  box-shadow: none;
  border: none;
  cursor: pointer;
}
.hamburger span {
  background-color: white;
  width: var(--bar-width);
  height: var(--bar-height);
  position: absolute;
  transition: width 150ms var(--brand--transition-easing);
}
.hamburger span:nth-child(1) {
  top: 1px;
  right: 0;
}
.hamburger span:nth-child(2) {
  top: 25%;
  right: 0;
  transform: translateY(2px);
}
.hamburger span:nth-child(3) {
  bottom: 25%;
  right: 0;
  transform: translateY(-2px);
}
.hamburger span:nth-child(4) {
  bottom: 1px;
  right: 0;
}
.hamburger:hover span:nth-child(1) {
  width: 90%;
}
.hamburger:hover span:nth-child(2) {
  width: 45%;
}
.hamburger:hover span:nth-child(3) {
  width: 85%;
}
.hamburger:hover span:nth-child(4) {
  width: 35%;
}

.custom-select {
  z-index: 9;
  font-family: var(--brand--nav-font);
  position: relative;
  --height: 40px;
}
.custom-select__toggler {
  cursor: pointer;
  color: var(--brand--primary-color);
  width: 100%;
  line-height: calc(var(--height) * 0.9);
  height: var(--height);
  border-radius: var(--height);
  padding-left: 3rem;
  background-color: var(--brand--red);
  color: white;
  font-size: 1.1rem;
  font-weight: 400;
  border: 1px solid var(--brand--red);
}
.custom-select__toggler:before {
  content: "";
  display: block;
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  -webkit-mask-image: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="UTF-8"%3F><svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.17 7.89"><defs><style> .cls-1 { fill: %23005950; } </style></defs><g id="Group_47" data-name="Group 47"><g id="Group_48" data-name="Group 48"><path id="Path_15" data-name="Path 15" class="cls-1" d="M6.51,7.65L.24,1.38C-.08,1.06-.08.55.24.24S1.06-.08,1.38.24l5.71,5.71L12.79.24c.32-.32.83-.32,1.14,0s.32.83,0,1.14l-6.28,6.28c-.32.31-.83.31-1.14,0h0Z"/></g></g></svg>');
          mask-image: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="UTF-8"%3F><svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.17 7.89"><defs><style> .cls-1 { fill: %23005950; } </style></defs><g id="Group_47" data-name="Group 47"><g id="Group_48" data-name="Group 48"><path id="Path_15" data-name="Path 15" class="cls-1" d="M6.51,7.65L.24,1.38C-.08,1.06-.08.55.24.24S1.06-.08,1.38.24l5.71,5.71L12.79.24c.32-.32.83-.32,1.14,0s.32.83,0,1.14l-6.28,6.28c-.32.31-.83.31-1.14,0h0Z"/></g></g></svg>');
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: white;
  aspect-ratio: 14.17/7.89;
  width: 15px;
  height: auto;
}
.custom-select__items {
  position: absolute;
  top: 100%;
  left: 1rem;
  right: 1rem;
  background-color: color-mix(in srgb, var(--brand--red), #000 5%);
  display: flex;
  flex-direction: column;
  width: calc(100% - 2rem);
  padding: 1.4rem 2rem;
  color: white;
  z-index: 99999999;
  gap: 1rem;
  gap: 0.4rem;
  box-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  font-size: 1.2rem;
  width: 100%;
  top: calc(100% - var(--height) / 2);
  padding-top: calc(1.4rem + var(--height) / 2);
  left: 0;
  right: 0;
  z-index: -1;
  border-bottom-left-radius: calc(var(--height) / 2);
  border-bottom-right-radius: calc(var(--height) / 2);
}
.custom-select__items a {
  opacity: 1;
  display: block;
  font-weight: 400;
}
.custom-select__items a:hover {
  color: var(--brand--accent-color);
}
.custom-select__items a.is-active {
  text-decoration: none;
}
.custom-select__items.animate-in {
  opacity: 1;
  transition: opacity 250ms ease;
}
.custom-select--white .custom-select__toggler {
  background-color: white;
  color: var(--brand--red);
  border-color: var(--brand--red);
}
.custom-select--white .custom-select__toggler:before {
  background-color: var(--brand--red);
}
.custom-select--white .custom-select__items {
  background-color: white;
  color: var(--brand--red);
  border-color: var(--brand--red);
}

.back-to-top {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 9;
  cursor: pointer;
  transition: background-color 0.3s, opacity 250ms ease, transform 250ms ease;
  pointer-events: none;
  opacity: 0;
}
@media (min-width: 768px) {
  .back-to-top:hover {
    opacity: 0.5;
    transform: translateY(-1rem);
  }
}
.back-to-top.animate-in {
  pointer-events: all;
  opacity: 1;
}
.back-to-top:before {
  content: "";
  border: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  background-image: url("../img/back-to-top.svg");
  height: auto;
  aspect-ratio: 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  margin-left: 0.2rem;
  transition: transform 150ms ease;
  width: 2rem;
  top: 0.5rem;
  background-color: transparent;
  appearance: none;
}
@media (min-width: 768px) {
  .back-to-top:before {
    width: 3rem;
  }
}

.signup-form {
  position: relative;
}
.signup-form__box {
  background-color: white;
  border-radius: 0.5rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
  padding: 3rem;
  margin: 0 auto;
  max-width: 52rem;
  width: 100%;
}
.signup-form:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, transparent 50%, var(--brand--red) 50%);
}
.signup-form__heading {
  color: var(--brand--red);
  margin-bottom: 2rem;
}
.signup-form__subheading {
  font-weight: 800;
  font-size: 2.1rem;
  margin-bottom: 2rem;
}
.signup-form__cta {
  margin-top: 3rem;
  text-align: center;
}

.signup-form + .signup-form:before {
  background: linear-gradient(to bottom, var(--brand--cyan) 50%, transparent 50%);
}
.signup-form + .signup-form {
  padding-bottom: 12rem;
}

.two-col {
  display: none;
  position: relative;
}
.two-col__items {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.two-col__item {
  width: 50%;
  padding: 3rem;
}
.two-col:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, var(--brand--red) 50%, var(--brand--cyan) 50%);
}

.event-overview + .signup-form {
  margin-top: -9rem;
}

.botb-signup {
  position: relative;
  color: white;
}
.botb-signup:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 1200px) {
  .botb-signup:before {
    background: linear-gradient(to right, transparent 50%, var(--brand--red) 50%);
  }
}
@media (max-width: 767px) {
  .botb-signup .wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}
.botb-signup__items {
  gap: 0;
  flex-direction: column;
}
@media (min-width: 1200px) {
  .botb-signup__items {
    flex-direction: row;
  }
}
.botb-signup__item {
  flex: none;
  align-self: stretch;
  gap: 0;
  width: 100%;
}
@media (min-width: 1200px) {
  .botb-signup__item {
    width: 50%;
  }
}
.botb-signup__item-image {
  aspect-ratio: 3.5;
  width: 100%;
  height: auto;
  max-height: 65rem;
  padding: 3rem;
  position: relative;
  padding-bottom: 0;
  max-height: 210px;
}
@media (max-width: 767px) {
  .botb-signup__item-image {
    padding-left: calc(var(--gutter-x) * 0.5);
    padding-right: calc(var(--gutter-x) * 0.5);
  }
}
.botb-signup__item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: luminosity;
}
.botb-signup__item-image:after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  background-image: linear-gradient(to top, var(--brand--bg-color), transparent 60%);
}
.botb-signup__item-text {
  flex: 1;
  padding: 3rem;
}
@media (max-width: 767px) {
  .botb-signup__item-text {
    padding-left: calc(var(--gutter-x) * 0.5);
    padding-right: calc(var(--gutter-x) * 0.5);
  }
}
.botb-signup__item-heading {
  margin-bottom: 1rem;
  margin-bottom: 1rem;
  z-index: 9;
  position: relative;
}
.botb-signup__item-heading > * {
  margin: 0;
}
.botb-signup__item-subheading {
  font-weight: 800;
  font-size: 1.8rem;
  margin-bottom: 0;
  display: none;
}
.botb-signup__item-cta {
  text-align: center;
  margin-top: auto;
}
.botb-signup__item .collapsible {
  border-top: 1px solid rgba(255, 255, 255, 0.8);
  padding-top: 1rem;
  margin-top: 4rem;
}
.botb-signup__item .collapsible__toggler {
  display: flex !important;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  height: 2rem;
  transition: all 250ms ease;
  font-weight: 800;
  text-transform: uppercase;
  cursor: pointer;
}
.botb-signup__item .collapsible__toggler:hover {
  opacity: 0.5;
}
.botb-signup__item .collapsible__content {
  overflow: hidden;
  box-sizing: content-box;
}
.botb-signup__item .collapsible__content > div {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.botb-signup__item:nth-child(even) {
  background-color: var(--brand--red);
}
.botb-signup__item:nth-child(even) .botb-signup__item-image:after {
  background-image: linear-gradient(to top, var(--brand--red), transparent 60%);
}

.instrument-group {
  container-type: inline-size;
  --gap: 0.75rem;
}
.instrument-group ul {
  gap: var(--gap);
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.4rem;
}
.instrument-group ul li {
  width: calc(33.3333333333% - var(--gap) * 2 / 3);
  height: 2.5rem;
  gap: 0.1rem;
  justify-content: center;
  width: auto;
  padding: 0.5rem;
  padding-right: 0.7rem;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 0.3rem;
  height: 3.1rem;
  gap: 0;
}
.instrument-group ul li i {
  flex: none;
  width: 2.5rem;
}
.instrument-group ul li i:has(img[src*=drums]) img {
  max-width: 2.2rem;
}
.instrument-group ul li i:has(img[src*=voice]) img {
  max-width: 2rem;
}
.instrument-group ul li i:has(img[src*=violin]) img {
  max-width: 2.2rem;
}
.instrument-group ul li span {
  display: none;
}
@container (min-width: 270px) {
  .instrument-group ul li {
    justify-content: flex-start;
  }
  .instrument-group ul li span {
    display: block;
    font-size: 0.9rem;
    font-size: 1rem;
    font-weight: 400;
  }
}

.featured-tutors .instrument-group {
  background-image: linear-gradient(to right, white 55%, rgba(255, 255, 255, 0) 0%);
  background-position: left top;
  background-size: 20px 1px;
  background-repeat: repeat-x;
  padding-top: 1.2rem;
  margin-top: 1.2rem;
  flex-wrap: wrap;
  display: none;
}
@media (min-width: 1400px) {
  .featured-tutors .instrument-group {
    display: block;
  }
}

.team-grid .instrument-group {
  background-image: linear-gradient(to right, white 55%, rgba(255, 255, 255, 0) 0%);
  background-position: left top;
  background-size: 20px 1px;
  background-repeat: repeat-x;
  padding-top: 1.2rem;
  margin-top: 1.2rem;
  flex-wrap: wrap;
  display: none;
}
@media (min-width: 1600px) {
  .team-grid .instrument-group {
    display: block;
  }
}
.team-grid .instrument-group ul li {
  width: auto;
  background-color: rgba(0, 0, 0, 0.4);
}
.team-grid .instrument-group ul li span {
  display: block;
}

.single-team-member .instrument-group {
  width: 100%;
}
.single-team-member .instrument-group ul li {
  width: auto;
  background-color: rgb(0, 0, 0);
}
.single-team-member .instrument-group ul li span {
  display: block;
}

.location-pricing {
  background-color: white;
}
.location-pricing.section--inner {
  padding-bottom: 0;
}

.location-pricing__grid {
  position: relative;
  color: white;
}
.location-pricing__grid:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 1200px) {
  .location-pricing__grid:before {
    background: linear-gradient(to right, transparent 50%, var(--brand--red) 50%);
  }
}
.location-pricing__grid .wrapper {
  max-width: 1920px;
  max-width: 1600px;
  padding-left: 0;
  padding-right: 0;
}
.location-pricing__grid-items {
  gap: 0;
  flex-direction: column;
}
@media (min-width: 992px) {
  .location-pricing__grid-items {
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  .location-pricing__grid-items--2 .location-pricing__grid-item {
    width: 50%;
  }
}
.location-pricing__grid-item {
  flex: none;
  align-self: stretch;
  gap: 0;
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.location-pricing__grid-item-image {
  padding: 3rem;
  padding-left: calc(var(--gutter-x) * 0.5);
  padding-right: calc(var(--gutter-x) * 0.5);
  aspect-ratio: 960/600;
  max-height: 600px;
  width: 100%;
  height: auto;
  position: relative;
  min-height: 420px;
}
@media (min-width: 768px) {
  .location-pricing__grid-item-image {
    padding: 3rem;
  }
}
.location-pricing__grid-item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: luminosity;
}
.location-pricing__grid-item-image:after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  background-image: linear-gradient(to top, var(--brand--bg-color), transparent 60%);
}
.location-pricing__grid-item:nth-child(even) .location-pricing__grid-item-image:after {
  background-image: linear-gradient(to top, var(--brand--red), transparent 60%);
}
.location-pricing__grid-item-features {
  z-index: 9;
  border-top: 1px solid white;
  border-bottom: 1px solid white;
  padding-top: 2rem;
  padding-bottom: 2rem;
  width: 100%;
}
.location-pricing__grid-item-text {
  flex: 1;
  padding: 3rem;
  width: 100%;
  align-items: center;
  margin-top: -6rem;
}
@media (max-width: 767px) {
  .location-pricing__grid-item-text {
    padding-left: calc(var(--gutter-x) * 0.5);
    padding-right: calc(var(--gutter-x) * 0.5);
  }
}
.location-pricing__grid-item-heading {
  margin-bottom: 1rem;
  margin-bottom: 1rem;
  z-index: 9;
  position: relative;
}
.location-pricing__grid-item-heading > * {
  margin: 0;
}
.location-pricing__grid-item-heading span {
  font-weight: 100;
}
.location-pricing__grid-item-subheading {
  font-weight: 800;
  font-size: 1.8rem;
  margin-bottom: 0;
  display: none;
}
.location-pricing__grid-item-price-list {
  width: 100%;
  font-size: 1.7rem;
  font-weight: 800;
}
.location-pricing__grid-item-price-list-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2666666667);
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.location-pricing__grid-item:nth-child(even) .icon--bullet {
  background-color: var(--brand--bg-color);
}
.location-pricing__grid-item-cta {
  margin-top: 3rem;
}
.location-pricing__grid-item .collapsible {
  border-top: 1px solid rgba(255, 255, 255, 0.8);
  padding-top: 1rem;
  margin-top: 4rem;
}
.location-pricing__grid-item .collapsible__toggler {
  display: flex !important;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  height: 2rem;
  transition: all 250ms ease;
  font-weight: 800;
  text-transform: uppercase;
  cursor: pointer;
}
.location-pricing__grid-item .collapsible__toggler:hover {
  opacity: 0.5;
}
.location-pricing__grid-item .collapsible__content {
  overflow: hidden;
  box-sizing: content-box;
}
.location-pricing__grid-item .collapsible__content > div {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.location-pricing__grid-item:nth-child(even) {
  background-color: var(--brand--red);
}
.location-pricing__grid-item:nth-child(even) .botb-signup__item-image:after {
  background-image: linear-gradient(to top, var(--brand--red), transparent 60%);
}
.location-pricing__grid-item--image {
  flex: none;
  align-self: stretch;
  gap: 0;
  width: 100%;
  position: relative;
}
@media (min-width: 992px) {
  .location-pricing__grid-item--image {
    width: 50%;
    width: 0;
  }
}
.location-pricing__grid-item--image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: luminosity;
}
.location-pricing__grid-item--image:after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  background-image: linear-gradient(to top, var(--brand--bg-color), transparent 60%);
}
.location-pricing__grid:has(.lesson-cta__item--image):before {
  background-image: linear-gradient(to right, transparent 50%, transparent 50%);
}