/* === Global === */

/* :root, html, body, #main */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji,
    Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
}

:root {
  --stage-white: #f1f2f8;
  --character-grey: #d1d7cb;
  --monologue-blue: #adb3cd;
  --dialogue-purple: #c69fef;
  --action-green: #469b46;
  --curtain-black: #090b09;
  --curtain-black-translucent: #090b0980;

  --xs: 0.5rem;
  --sm: 1rem;
  --md: 1.5rem;
  --lg: 2rem;
  --xl: 3rem;
  --2xl: 4rem;
  --3xl: 6rem;
  --4xl: 6rem; /* Smaller for mobile */

  --body-font-size: 1.6rem;
  --caps-font-size: 1.3rem;
  --details-font-size: 1.2rem;

  --body-line-height: 1.3;

  --body-text-height: calc(var(--body-font-size) * var(--body-line-height));
  --caps-text-height: calc(var(--caps-font-size) * var(--body-line-height));

  --nav-height: calc(
    var(--md) + var(--xs) + var(--caps-text-height) + var(--xs) + var(--md)
  );
  --nav-height-mobile: 50px;
  --marquee-height: calc(var(--md) + var(--caps-text-height) + var(--md));

  --hero-pt-lg: calc(var(--nav-height-mobile) + var(--lg)); /* Mobile */
  --hero-pt-2xl: calc(var(--nav-height-mobile) + var(--2xl)); /* Mobile */

  --grid-gap: calc((var(--rem-px) * 1px) * 2);

  --curtain-radius: 50vw;

  --kaleidos-size: 15vw;
}

html,
:root {
  font-size: 10px !important;
  margin-top: 0 !important;
}

body {
  -webkit-font-smoothing: antialiased;
  background-color: var(--curtain-black) !important;
  color: var(--curtain-black) !important;
  font-size: var(--body-font-size);
  font-weight: 500;
  line-height: var(--body-line-height);
}

#main {
  background-color: var(--stage-white) !important;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge legacy */
}

#main::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.is-loading main[data-framer-name="Main"] {
  visibility: hidden;
}

.framer-done main[data-framer-name="Main"] {
  visibility: inherit;
}

/* Lenis */

.lenis-scrolling [data-framer-name*="nested-scroll"] {
  /* pointer-events: none; */
}

#main [data-framer-name*="nested-scroll"] {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge legacy */
}

#main [data-framer-name*="nested-scroll"]::-webkit-scrollbar {
  width: 0;
  height: 0;
}

/* Custom Scrollbars */

.custom-scrollbar {
  position: fixed;
  top: 0;
  right: 0;
  width: var(--md);
  height: 100vh;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
  z-index: 9999;
  mix-blend-mode: difference;
}

.custom-scrollbar__thumb {
  position: absolute;
  right: 0.2rem;
  width: var(--sm);
  border-radius: 99.9rem;
  background: white;
  transform: translateY(0);
  transition: opacity 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
}

.no-touchevents .custom-scrollbar {
  pointer-events: auto;
}

.no-touchevents #main.lenis-scrolling ~ .custom-scrollbar {
  opacity: 1;
}

.no-touchevents .custom-scrollbar:hover {
  opacity: 1;
}

.touchevents .custom-scrollbar {
  display: none;
}

.custom-scrollbar.custom-scrollbar--nested {
  position: absolute;
  height: 100%;
  z-index: 10; /* above nested content */
  /* mix-blend-mode: normal; */
}

.custom-scrollbar.custom-scrollbar--nested .custom-scrollbar__thumb {
  /* background: var(--curtain-black-translucent); */
  right: 0.5rem;
}

.no-touchevents .custom-scrollbar.custom-scrollbar--nested {
  pointer-events: auto;
}

.no-touchevents
  [data-framer-name*="nested-scroll"]:hover
  > .custom-scrollbar.custom-scrollbar--nested {
  opacity: 1;
}

.no-touchevents .custom-scrollbar.custom-scrollbar--nested.is-scrolling {
  opacity: 1;
}

/* Links */

a {
  color: inherit;
  text-decoration: inherit;
  outline: none;
}

/* SVG */

svg {
  overflow: visible !important;
  overflow-clip-margin: 0.2rem !important;
}

/* Framer Texts */

em.framer-text {
  font-family: "Manrope Variable ExtraLight", sans-serif;
  font-style: italic;
  font-weight: 500;
  font-variation-settings: "opsz" 14, "wght" 500;
}

strong.framer-text {
  font-family: "Manrope Variable ExtraLight", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-variation-settings: "opsz" 14, "wght" 700;
}

em.framer-text > strong.framer-text {
  font-family: "Manrope Variable ExtraLight", sans-serif;
  font-style: italic;
  font-weight: 700;
  font-variation-settings: "opsz" 14, "wght" 700;
}

h1.framer-text:not(:first-child) {
  margin-top: var(--3xl) !important;
}

h2.framer-text:not(:first-child) {
  margin-top: var(--xl) !important;
}

h3.framer-text:not(:first-child),
h4.framer-text:not(:first-child),
h5.framer-text:not(:first-child),
h6.framer-text:not(:first-child) {
  margin-top: var(--md) !important;
}

p.framer-text:not(:first-child),
div.framer-text:not(:first-child),
blockquote.framer-text:not(:first-child),
table.framer-text:not(:first-child),
figure.framer-text:not(:first-child),
.framer-image.framer-text:not(:first-child) {
  margin-top: var(--sm) !important;
}

ol.framer-text:not(:first-child),
ul.framer-text:not(:first-child),
ol.framer-text > li:not(:first-child),
ul.framer-text > li:not(:first-child) {
  margin-top: var(--xs) !important;
}

/* GSAP */

.gsap-marker-start,
.gsap-marker-end,
.gsap-marker-scroller-start,
.gsap-marker-scroller-end {
  z-index: 999999 !important;
  pointer-events: none !important;
}

/* === Buttons & Form Elements === */

button {
  all: unset;
  box-sizing: border-box;
}

input,
optgroup,
select,
textarea {
  color: inherit;
  font-family: inherit;
  font-size: var(--body-font-size) !important;
  font-weight: inherit;
  line-height: inherit;
  margin: 0;
  padding: var(--sm) 0 !important;
}

.framer-form-text-input {
  padding: 0 !important;
}

button,
select {
  text-transform: none;
}

[type="button"],
[type="reset"],
[type="submit"],
button {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}

input:-webkit-autofill {
  box-shadow: var(--character-grey) 0 0 0 100rem inset;
  border-radius: var(--xs) var(--xs) 0 0;
  padding-left: var(--sm) !important;
}

.framer-custom-input {
  border-bottom: 0.05rem solid var(--curtain-black) !important;
}

#main [data-framer-name*="Spinner"] {
  height: var(--caps-text-height);
  width: auto;
  aspect-ratio: 1 / 1;
}

#main [data-framer-name*="Button"] [data-framer-name*="Title Wrapper"] {
  align-items: baseline;
}

/* === Link Underline Animation === */

/* Credits: Obys */

@keyframes link {
  0%,
  0.1% {
    transform-origin: 100% 100%;
    transform: scaleX(1);
  }

  49.9% {
    transform-origin: 100% 100%;
    transform: scaleX(0);
  }

  50%,
  50.1% {
    transform-origin: 0 0;
    transform: scaleX(0);
  }

  to {
    transform-origin: 0 0;
    transform: scaleX(1);
  }
}

.link {
  position: relative;
}

.link::after {
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  height: 0.05rem;
  pointer-events: none;
  position: absolute;
  transform: scaleX(0);
  transform-origin: 100% 100%;
  transition-duration: 0.6s;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: transform;
  background: currentcolor;
}

.no-touchevents .link:hover::after {
  transform: scaleX(1);
  transform-origin: 0 0;
}

.link--underline:after {
  transform: scaleX(1);
  transform-origin: 0 0;
  animation: none;
}

.no-touchevents .link--underline:hover:after {
  animation: link 0.75s forwards;
}

.no-touchevents .link.is-hovered::after {
  transform: scaleX(1);
  transform-origin: 0 0;
}

.no-touchevents .link--underline.is-hovered::after {
  animation: link 0.75s forwards;
}

/* .touchevents .link--underline {
  text-decoration: underline;
} */

.touchevents .link--underline:after {
  /* display: none; */
  height: 0.1rem;
  bottom: -0.2rem;
}

.touchevents .link--underline--thick:after {
  height: 0.15rem;
  bottom: 0.2rem;
}

#main [data-framer-name*="link-black-translucent"] {
  color: var(--curtain-black-translucent);
}

#main [data-framer-name*="link-white"] {
  color: var(--stage-white);
}

/* === Sizing === */

/* Fit content */

#main [data-framer-name*="w-fit"] {
  width: fit-content;
}

#main [data-framer-name*="h-fit"] {
  height: fit-content;
}

/* Min content */

#main [data-framer-name*="w-min"] {
  width: min-content;
}

#main [data-framer-name*="h-min"] {
  height: min-content;
}

/* === Padding === */

/* Padding Top */

#main [data-framer-name*="pt-xs"] {
  padding-top: var(--xs);
}

#main [data-framer-name*="pt-sm"] {
  padding-top: var(--sm);
}

#main [data-framer-name*="pt-md"] {
  padding-top: var(--md);
}

#main [data-framer-name*="pt-lg"] {
  padding-top: var(--lg);
}

#main [data-framer-name*="pt-xl"] {
  padding-top: var(--xl);
}

#main [data-framer-name*="pt-2xl"] {
  padding-top: var(--2xl);
}

#main [data-framer-name*="pt-3xl"] {
  padding-top: var(--3xl);
}

#main [data-framer-name*="pt-4xl"] {
  padding-top: var(--4xl);
}

#main [data-framer-name*="pt-hero-lg"] {
  padding-top: var(--hero-pt-lg);
}

#main [data-framer-name*="pt-hero-2xl"] {
  padding-top: var(--hero-pt-2xl);
}

/* Padding Right */

#main [data-framer-name*="pr-xs"] {
  padding-right: var(--xs);
}

#main [data-framer-name*="pr-sm"] {
  padding-right: var(--sm);
}

#main [data-framer-name*="pr-md"] {
  padding-right: var(--md);
}

#main [data-framer-name*="pr-lg"] {
  padding-right: var(--lg);
}

#main [data-framer-name*="pr-xl"] {
  padding-right: var(--xl);
}

#main [data-framer-name*="pr-2xl"] {
  padding-right: var(--2xl);
}

#main [data-framer-name*="pr-3xl"] {
  padding-right: var(--3xl);
}

#main [data-framer-name*="pr-4xl"] {
  padding-right: var(--4xl);
}

/* Padding Bottom */

#main [data-framer-name*="pb-xs"] {
  padding-bottom: var(--xs);
}

#main [data-framer-name*="pb-sm"] {
  padding-bottom: var(--sm);
}

#main [data-framer-name*="pb-md"] {
  padding-bottom: var(--md);
}

#main [data-framer-name*="pb-lg"] {
  padding-bottom: var(--lg);
}

#main [data-framer-name*="pb-xl"] {
  padding-bottom: var(--xl);
}

#main [data-framer-name*="pb-2xl"] {
  padding-bottom: var(--2xl);
}

#main [data-framer-name*="pb-3xl"] {
  padding-bottom: var(--3xl);
}

#main [data-framer-name*="pb-4xl"] {
  padding-bottom: var(--4xl);
}

/* Padding Left */

#main [data-framer-name*="pl-xs"] {
  padding-left: var(--xs);
}

#main [data-framer-name*="pl-sm"] {
  padding-left: var(--sm);
}

#main [data-framer-name*="pl-md"] {
  padding-left: var(--md);
}

#main [data-framer-name*="pl-lg"] {
  padding-left: var(--lg);
}

#main [data-framer-name*="pl-xl"] {
  padding-left: var(--xl);
}

#main [data-framer-name*="pl-2xl"] {
  padding-left: var(--2xl);
}

#main [data-framer-name*="pl-3xl"] {
  padding-left: var(--3xl);
}

#main [data-framer-name*="pl-4xl"] {
  padding-left: var(--4xl);
}

/* Padding X */

#main [data-framer-name*="px-xs"] {
  padding-left: var(--xs);
  padding-right: var(--xs);
}

#main [data-framer-name*="px-sm"] {
  padding-left: var(--sm);
  padding-right: var(--sm);
}

#main [data-framer-name*="px-md"] {
  padding-left: var(--md);
  padding-right: var(--md);
}

#main [data-framer-name*="px-lg"] {
  padding-left: var(--lg);
  padding-right: var(--lg);
}

#main [data-framer-name*="px-xl"] {
  padding-left: var(--xl);
  padding-right: var(--xl);
}

#main [data-framer-name*="px-2xl"] {
  padding-left: var(--2xl);
  padding-right: var(--2xl);
}

#main [data-framer-name*="px-3xl"] {
  padding-left: var(--3xl);
  padding-right: var(--3xl);
}

#main [data-framer-name*="px-4xl"] {
  padding-left: var(--4xl);
  padding-right: var(--4xl);
}

/* Padding Y */

#main [data-framer-name*="py-xs"] {
  padding-top: var(--xs);
  padding-bottom: var(--xs);
}

#main [data-framer-name*="py-sm"] {
  padding-top: var(--sm);
  padding-bottom: var(--sm);
}

#main [data-framer-name*="py-md"] {
  padding-top: var(--md);
  padding-bottom: var(--md);
}

#main [data-framer-name*="py-lg"] {
  padding-top: var(--lg);
  padding-bottom: var(--lg);
}

#main [data-framer-name*="py-xl"] {
  padding-top: var(--xl);
  padding-bottom: var(--xl);
}

#main [data-framer-name*="py-2xl"] {
  padding-top: var(--2xl);
  padding-bottom: var(--2xl);
}

#main [data-framer-name*="py-3xl"] {
  padding-top: var(--3xl);
  padding-bottom: var(--3xl);
}

#main [data-framer-name*="py-4xl"] {
  padding-top: var(--4xl);
  padding-bottom: var(--4xl);
}

/* === Inset === */

/* Top */

#main [data-framer-name*="top-sm"] {
  top: var(--sm);
}

#main [data-framer-name*="top-md"] {
  top: var(--md);
}

#main [data-framer-name*="top-lg"] {
  top: var(--lg);
}

/* Right */

#main [data-framer-name*="right-sm"] {
  right: var(--sm);
}

#main [data-framer-name*="right-md"] {
  right: var(--md);
}

#main [data-framer-name*="right-lg"] {
  right: var(--lg);
}

/* Bottom */

#main [data-framer-name*="bottom-sm"] {
  bottom: var(--sm);
}

#main [data-framer-name*="bottom-md"] {
  bottom: var(--md);
}

#main [data-framer-name*="bottom-lg"] {
  bottom: var(--lg);
}

/* Left */

#main [data-framer-name*="left-sm"] {
  left: var(--sm);
}

#main [data-framer-name*="left-md"] {
  left: var(--md);
}

#main [data-framer-name*="left-lg"] {
  left: var(--lg);
}

/* === Gap === */

/* Gap X & Y */

#main [data-framer-name*="gap-xs"] {
  gap: var(--xs);
}

#main [data-framer-name*="gap-sm"] {
  gap: var(--sm);
}

#main [data-framer-name*="gap-md"] {
  gap: var(--md);
}

#main [data-framer-name*="gap-lg"] {
  gap: var(--lg);
}

#main [data-framer-name*="gap-xl"] {
  gap: var(--xl);
}

#main [data-framer-name*="gap-2xl"] {
  gap: var(--2xl);
}

#main [data-framer-name*="gap-3xl"] {
  gap: var(--3xl);
}

#main [data-framer-name*="gap-4xl"] {
  gap: var(--4xl);
}

/* Gap X */

#main [data-framer-name*="gap-x-xs"] {
  column-gap: var(--xs);
}

#main [data-framer-name*="gap-x-sm"] {
  column-gap: var(--sm);
}

#main [data-framer-name*="gap-x-md"] {
  column-gap: var(--md);
}

#main [data-framer-name*="gap-x-lg"] {
  column-gap: var(--lg);
}

#main [data-framer-name*="gap-x-xl"] {
  column-gap: var(--xl);
}

#main [data-framer-name*="gap-x-2xl"] {
  column-gap: var(--2xl);
}

#main [data-framer-name*="gap-x-3xl"] {
  column-gap: var(--3xl);
}

#main [data-framer-name*="gap-x-4xl"] {
  column-gap: var(--4xl);
}

/* Gap Y */

#main [data-framer-name*="gap-y-xs"] {
  row-gap: var(--xs);
}

#main [data-framer-name*="gap-y-sm"] {
  row-gap: var(--sm);
}

#main [data-framer-name*="gap-y-md"] {
  row-gap: var(--md);
}

#main [data-framer-name*="gap-y-lg"] {
  row-gap: var(--lg);
}

#main [data-framer-name*="gap-y-xl"] {
  row-gap: var(--xl);
}

#main [data-framer-name*="gap-y-2xl"] {
  row-gap: var(--2xl);
}

#main [data-framer-name*="gap-y-3xl"] {
  row-gap: var(--3xl);
}

#main [data-framer-name*="gap-y-4xl"] {
  row-gap: var(--4xl);
}

/* Gap Ticker */

#main [data-framer-name*="ticker-gap-sm"] ul[role="group"] {
  gap: var(--sm) !important;
}

#main [data-framer-name*="ticker-gap-lg"] ul[role="group"] {
  gap: var(--lg) !important;
}

/* === Border Radius === */

#main [data-framer-name*="rounded-xs"] {
  border-radius: var(--xs) !important;
}

#main [data-framer-name*="rounded-top-xs"] {
  border-top-left-radius: var(--xs) !important;
  border-top-right-radius: var(--xs) !important;
}

#main [data-framer-name*="rounded-bottom-xs"] {
  border-bottom-left-radius: var(--xs) !important;
  border-bottom-right-radius: var(--xs) !important;
}

#main [data-framer-name*="rounded-sm"] {
  border-radius: var(--sm) !important;
}

#main [data-framer-name*="rounded-sm-top"] {
  border-top-left-radius: var(--sm) !important;
  border-top-right-radius: var(--sm) !important;
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

#main [data-framer-name*="rounded-sm-bottom"] {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
  border-bottom-left-radius: var(--sm) !important;
  border-bottom-right-radius: var(--sm) !important;
}

/* === Nav === */

#main nav[data-framer-name] [data-framer-name="Nav Wrapper"] {
  padding: var(--md) var(--lg);
}

.no-touchevents #main nav[data-framer-name] [data-framer-name="Nav Wrapper"] {
  padding-right: calc(var(--lg));
}

#main nav[data-framer-name][data-framer-name="Mobile Open"] {
  /* min-height: 100vh; */
  /* mobile viewport bug fix */
  /* min-height: -webkit-fill-available; */
  /* max-height: 100svh; */
  height: 100dvh;
}

#main
  nav[data-framer-name][data-framer-name="Mobile Open"]
  [data-framer-name="Nav Wrapper"] {
  position: fixed !important;
}

.no-touchevents [data-framer-name*="EN"] .link div.framer-text,
.no-touchevents [data-framer-name*="BG"] .link div.framer-text {
  transition: color 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
}

.no-touchevents [data-framer-name*="EN"] .link:hover div.framer-text,
.no-touchevents [data-framer-name*="BG"] .link:hover div.framer-text {
  color: currentColor;
}

/* === Preloader === */

#main [data-framer-name*="Preloader Container"] {
  /* Controls */
  --clip: 0vw;
  --bleed: 0rem; /* overlap to kill gaps */
  --border: 0rem;

  /* Derived (readable aliases) */
  --c: var(--clip);
  --b: var(--border);
  --o: var(--bleed);

  /* Key X positions around center */
  --xL: calc(50% - var(--c));
  --xR: calc(50% + var(--c));

  /* Outer flap anchors (your *3 rule) */
  --xL3: calc(50% - var(--c) * 3);
  --xR3: calc(50% + var(--c) * 3);

  /* Tear depth */
  --yT: calc(var(--c) * 2);

  /* Flap inset for 45° hypotenuse ( (1 + sqrt(2)) * border ) */
  --topInset: calc(var(--b) * 2.41421356);
  --diagInset: calc(var(--b) * 2.41421356);

  --preloader-shape-1-width: calc(100vw * 1.9);
  --preloader-shape-1-height: calc(100vw * 1.9);

  /* rectangle */
  --preloader-shape-2-width: calc(100vw * 0.9);
  --preloader-shape-2-height: calc(100vh * 0.9);

  /* 3 is -0.3 smaller than 1 */
  --preloader-shape-3-width: calc(100vw * 1.6);
  --preloader-shape-3-height: calc(100vw * 1.6);

  /* 4 is -0.2 smaller than 3 */
  --preloader-shape-4-width: calc(100vw * 1.4);
  --preloader-shape-4-height: calc(100vw * 1.4);

  /* 5 & 6 are equal */
  --preloader-shape-5-width: calc(100vw * 0.75);
  --preloader-shape-5-height: calc(100vw * 0.75);

  --preloader-shape-6-width: calc(100vw * 0.75);
  --preloader-shape-6-height: calc(100vw * 0.75);

  /* 7 is -0.1 smaller than 5 & 6 */
  --preloader-shape-7-width: calc(100vw * 0.65);
  --preloader-shape-7-height: calc(100vw * 0.65);

  /* 8 & 9 are equal */
  --preloader-shape-8-width: calc(100vw * 0.4);
  --preloader-shape-8-height: calc(100vw * 0.4);

  --preloader-shape-9-width: calc(100vw * 0.4);
  --preloader-shape-9-height: calc(100vw * 0.4);

  --preloader-kaleidos-pos-x: 20%;
  --preloader-kaleidos-pos-y: 20%;

  --preloader-circle-pos-x: 37.5%;
  --preloader-circle-pos-y: 10%;

  --preloader-circle-size: 1rem;
}

#main [data-framer-name*="Preloader Container"] [data-framer-name] {
  will-change: clip-path;
}

/* Center Rip (fill) */

#main
  [data-framer-name*="Preloader Container"]
  [data-framer-name="Center Rip"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xL) - var(--o)) 0%,
    /* 2 */ calc(var(--xR) + var(--o)) 0%,
    /* 3 */ calc(var(--xR) + var(--o)) 100%,
    /* 4 */ calc(var(--xL) - var(--o)) 100%
  );
}

/* Center Rip Borders */

#main
  [data-framer-name*="Preloader Container"]
  [data-framer-name="Center Rip Border Left"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xL) - var(--b) - var(--o)) calc(var(--yT) - var(--o)),
    /* 2 */ calc(var(--xR) + var(--o)) calc(var(--yT) - var(--o)),
    /* 3 */ calc(var(--xR) + var(--o)) 100%,
    /* 4 */ calc(var(--xL) - var(--b) - var(--o)) 100%
  );
}

#main
  [data-framer-name*="Preloader Container"]
  [data-framer-name="Center Rip Border Right"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xL) - var(--o)) calc(var(--yT) - var(--o)),
    /* 2 */ calc(var(--xR) + var(--b) + var(--o)) calc(var(--yT) - var(--o)),
    /* 3 */ calc(var(--xR) + var(--b) + var(--o)) 100%,
    /* 4 */ calc(var(--xL) - var(--o)) 100%
  );
}

/* Tears (top slanted cuts) */

#main [data-framer-name*="Preloader Container"] [data-framer-name="Left Tear"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xL3) + var(--o)) 0%,
    /* 2 */ calc(var(--xL) + var(--o)) 0%,
    /* 3 */ calc(var(--xL) + var(--o)) var(--yT)
  );
}

#main
  [data-framer-name*="Preloader Container"]
  [data-framer-name="Right Tear"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xR3) - var(--o)) 0%,
    /* 2 */ calc(var(--xR) - var(--o)) 0%,
    /* 3 */ calc(var(--xR) - var(--o)) var(--yT)
  );
}

/* Flap Borders (outer triangles) */

#main
  [data-framer-name*="Preloader Container"]
  [data-framer-name="Left Flap Border"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xL3) + var(--o)) 0%,
    /* 2 */ calc(var(--xL3) + var(--o)) var(--yT),
    /* 3 */ calc(var(--xL) + var(--o)) var(--yT)
  );
}

#main
  [data-framer-name*="Preloader Container"]
  [data-framer-name="Right Flap Border"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xR3) - var(--o)) 0%,
    /* 2 */ calc(var(--xR3) - var(--o)) var(--yT),
    /* 3 */ calc(var(--xR) - var(--o)) var(--yT)
  );
}

/* Flaps (inner triangles to fake stroke) */

#main [data-framer-name*="Preloader Container"] [data-framer-name="Left Flap"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xL3) + var(--o) + var(--b)) var(--topInset),
    /* 2 */ calc(var(--xL3) + var(--o) + var(--b)) calc(var(--yT) - var(--b)),
    /* 3 */ calc(var(--xL) + var(--o) - var(--diagInset))
      calc(var(--yT) - var(--b))
  );
}

#main
  [data-framer-name*="Preloader Container"]
  [data-framer-name="Right Flap"] {
  clip-path: polygon(
    /* 1 */ calc(var(--xR3) - var(--o) - var(--b)) var(--topInset),
    /* 2 */ calc(var(--xR3) - var(--o) - var(--b)) calc(var(--yT) - var(--b)),
    /* 3 */ calc(var(--xR) - var(--o) + var(--diagInset))
      calc(var(--yT) - var(--b))
  );
}

/* Preloader Elements */

#main [data-framer-name^="Preloader Container"] {
  visibility: visible;
  z-index: 10;
}

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Text Wrapper"],
#main [data-framer-name^="Preloader Container"] [data-framer-name="Percentage"],
#main [data-framer-name^="Preloader Container"] [data-framer-name="Title"],
#main [data-framer-name^="Preloader Container"] [data-framer-name^="Shape"],
#main [data-framer-name^="Preloader Container"] [data-framer-name="Rip Line"],
#main [data-framer-name^="Preloader Container"] [data-framer-name^="Kaleidos"],
#main [data-framer-name^="Preloader Container"] [data-framer-name^="Circle"] {
  visibility: hidden;
}

#main [data-framer-name^="Preloader Container"] [data-framer-name^="Circle"] {
  width: var(--preloader-circle-size);
  height: var(--preloader-circle-size);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name^="Shape"] {
  transform: scale(0);
}

/* Preloader Text Wrapper */

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Text Wrapper"] {
  --grow-x: 0.84;
  --grow-y: 0.84;

  width: calc(100vw * var(--grow-x));
  height: calc(100vw * var(--grow-y));

  border-radius: 100%;
  transform: scale(0);
}

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Text Wrapper"]
  [data-framer-name="Percentage"]
  div.framer-text {
  font-size: 8vw;
}

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Text Wrapper"]
  [data-framer-name="Title"]
  div.framer-text {
  font-size: 5.6vw;
}

/* Preloader Rip Line */

#main [data-framer-name^="Preloader Container"] [data-framer-name="Rip Line"] {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

/* Preloader Shapes */

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 1"] {
  width: var(--preloader-shape-1-width);
  height: var(--preloader-shape-1-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 2"] {
  width: var(--preloader-shape-2-width);
  height: var(--preloader-shape-2-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 3"] {
  width: var(--preloader-shape-3-width);
  height: var(--preloader-shape-3-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 4"] {
  width: var(--preloader-shape-4-width);
  height: var(--preloader-shape-4-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 5"] {
  width: var(--preloader-shape-5-width);
  height: var(--preloader-shape-5-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 6"] {
  width: var(--preloader-shape-6-width);
  height: var(--preloader-shape-6-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 7"] {
  width: var(--preloader-shape-7-width);
  height: var(--preloader-shape-7-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 8"] {
  width: var(--preloader-shape-8-width);
  height: var(--preloader-shape-8-height);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Shape 9"] {
  width: var(--preloader-shape-9-width);
  height: var(--preloader-shape-9-height);
}

/* Preloader Kaleidos & Circles */

#main [data-framer-name^="Preloader Container"] [data-framer-name*="Kaleidos"],
#main [data-framer-name^="Preloader Container"] [data-framer-name*="Circle"] {
  z-index: 1;
}

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Kaleidos 1"] {
  top: var(--preloader-kaleidos-pos-y);
  right: auto;
  bottom: auto;
  left: var(--preloader-kaleidos-pos-x);
}

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Kaleidos 2"] {
  top: var(--preloader-kaleidos-pos-y);
  right: var(--preloader-kaleidos-pos-x);
  bottom: auto;
  left: auto;
}

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Kaleidos 3"] {
  top: auto;
  right: auto;
  bottom: var(--preloader-kaleidos-pos-y);
  left: var(--preloader-kaleidos-pos-x);
}

#main
  [data-framer-name^="Preloader Container"]
  [data-framer-name="Kaleidos 4"] {
  top: auto;
  right: var(--preloader-kaleidos-pos-x);
  bottom: var(--preloader-kaleidos-pos-y);
  left: auto;
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Circle 1"] {
  top: var(--preloader-circle-pos-y);
  right: auto;
  bottom: auto;
  left: var(--preloader-circle-pos-x);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Circle 2"] {
  top: var(--preloader-circle-pos-y);
  right: var(--preloader-circle-pos-x);
  bottom: auto;
  left: auto;
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Circle 3"] {
  top: auto;
  right: auto;
  bottom: var(--preloader-circle-pos-y);
  left: var(--preloader-circle-pos-x);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Circle 4"] {
  top: auto;
  right: var(--preloader-circle-pos-x);
  bottom: var(--preloader-circle-pos-y);
  left: auto;
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Circle 5"] {
  top: var(--preloader-circle-far-pos-y);
  right: auto;
  bottom: auto;
  left: var(--preloader-circle-far-pos-x);
  transform: translate(0, -50%);
}

#main [data-framer-name^="Preloader Container"] [data-framer-name="Circle 6"] {
  top: var(--preloader-circle-far-pos-y);
  right: var(--preloader-circle-far-pos-x);
  bottom: auto;
  left: auto;
  transform: translate(0, -50%);
}

/* === Hero === */

/* Home */

#main header[data-framer-name="Hero"] {
  padding: calc(var(--hero-pt-lg)) var(--lg)
    calc(var(--lg) + var(--marquee-height));
  height: 100dvh;
}

#main header[data-framer-name="Hero"] [data-framer-name*="Video Wrapper"] {
  border-radius: var(--sm);
}

.is-loading #main header [data-framer-name*="Outline SVG"],
.is-loading #main nav[data-framer-name],
.is-loading #main header [data-framer-name*="Curtain"] .curtain,
.is-loading
  #main
  header
  [data-framer-name*="Curtain"]
  [data-framer-name*="Video Wrapper"],
.is-loading
  #main
  header
  [data-framer-name*="Container Mobile"]
  [data-framer-name*="Video Wrapper"],
.is-loading #main header [data-framer-name*="Headline"],
.is-loading #main header [data-framer-name*="Heading"] svg path,
.is-loading #main header [data-framer-name*="Marquee Wrapper"] {
  visibility: hidden;
}

.is-loaded #main header [data-framer-name*="Outline SVG"] {
  display: none;
}

#main header [data-framer-name*="Outline SVG"] {
  /* overflow: hidden; */
  border-radius: var(--sm);
}

#main header [data-framer-name*="Outline SVG"] rect {
  vector-effect: non-scaling-stroke;
  shape-rendering: auto;
  stroke-width: 0.1rem;
}

#main header [data-framer-name*="Heading"] svg path {
  shape-rendering: auto;
}

/* === Elements === */

/* Marquee */

#main header[data-framer-name="Hero"] [data-framer-name="Marquee"] {
  height: fit-content;
}

#main
  header[data-framer-name="Hero"]
  [data-framer-name="Marquee"]
  [data-framer-name="Pattern"] {
  padding: var(--md) var(--sm);
}

/* SVG */

#main [data-framer-name="Button Icon"] {
  width: 0.8rem;
  height: 1rem;
}

#main [data-framer-name="Button Arrow"] {
  width: 0.6rem;
  height: 0.9rem;
}

#main [data-framer-name="Hover Arrow"] {
  left: var(--lg);
  visibility: hidden;
}

#main [data-framer-name*="Slim"] [data-framer-name="Hover Arrow"] {
  left: var(--sm);
}

#main [data-framer-name="Star"] {
  width: var(--sm);
  height: var(--sm);
}

#main [data-framer-name="Star MD"] {
  width: var(--md);
  height: var(--md);
}

#main [data-framer-name="Star XL"] {
  width: var(--xl);
  height: var(--xl);
}

#main [data-framer-name="Video Icon"] {
  width: 1.3rem;
  height: 0.9rem;
}

/* Highlighted Text */

#main [data-framer-name="Highlighted Text"] {
  z-index: 0;
}

.highlighted-text {
  padding: 0.125rem var(--xs);
  display: inline-block;
  position: relative;
  z-index: -1;
}

.highlighted-text__text {
  position: relative;
  z-index: 1;
}

.highlighted-text__overlay {
  background: var(--dialogue-purple);
  position: absolute;
  inset: 0;
  transform-origin: 0% 50%;
  pointer-events: none;
  z-index: 0;
}

/* Kaleidos */

#main [data-framer-name*="Preloader Container"] [data-framer-name*="Kaleidos"],
#main [data-framer-name*="Kaleidos"] [data-framer-name*="Wrapper"] {
  width: var(--kaleidos-size);
}

/* Events */

#main [data-framer-name*="Event Card"] img {
  overflow: visible;
}

/* Activities */

#main
  main[data-framer-name="Main"]
  [data-framer-name*="Activity Visual Wrapper"]
  [data-framer-name*="Visual"] {
  background: var(--curtain-black);
}

#main [data-framer-name*="Activities Bar"] {
  top: var(--nav-height-mobile);
}

#main [data-framer-name*="Video Hover"] > div {
  border-radius: inherit !important;
}

/* Testimonials */

#main [data-framer-name*="Testimonials"] {
  position: relative !important;
}

#main
  [data-framer-name*="Testimonials"]
  ul[role="group"]
  [data-framer-name*="Testimonial Card"] {
  width: calc(
    100vw - var(--grid-gap) * 2
  ) !important; /* span 4 columns for mobile */
}

#main
  [data-framer-name*="Testimonials"]
  ul[role="group"]
  [data-framer-name*="Image Wrapper"] {
  width: calc(
    ((100vw - var(--grid-gap)) / 4) * 3 - var(--grid-gap)
  ) !important; /* span 3 columns for mobile */
}

/* Playful Projectors */

#main [data-framer-name="Nuclear Wrapper"] {
  --projector-scale: scale(0.4);
  --left-projector-transform-origin: 22.5% 37.5%;
  --right-projector-transform-origin: 77.5% 37.5%;

  --character-scale: scale(0.4);
  --character-transform-origin: 50% 50%;

  --stage-width: 200vw;

  --projector-holder-width: 3rem;
  --projector-holder-top: 0rem;
  --left-projector-holder-left: 2rem;
  --right-projector-holder-right: 2rem;

  --sparkle-1-top: 30rem;
  --sparkle-1-left: 1rem;

  --sparkle-2-top: 22rem;
  --sparkle-2-left: 10rem;

  --sparkle-3-top: 32rem;
  --sparkle-3-left: 10rem;

  --sparkle-4-top: 28rem;
  --sparkle-4-right: 1rem;

  --sparkle-5-top: 26rem;
  --sparkle-5-right: 12rem;

  --sparkle-6-top: 32rem;
  --sparkle-6-right: 8rem;
}

#main [data-framer-name="Left Projector"] [data-framer-name="Container"] {
  transform: var(--projector-scale);
  transform-origin: var(--left-projector-transform-origin);
}

#main [data-framer-name="Right Projector"] [data-framer-name="Container"] {
  transform: var(--projector-scale);
  transform-origin: var(--right-projector-transform-origin);
}

#main [data-framer-name="Character"] [data-framer-name="Container"] {
  transform: var(--character-scale);
  transform-origin: var(--character-transform-origin);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Stage Wrapper"] {
  width: var(--stage-width);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Left Projector Holder"] {
  top: var(--projector-holder-top);
  left: var(--left-projector-holder-left);
  width: var(--projector-holder-width);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Right Projector Holder"] {
  top: var(--projector-holder-top);
  right: var(--right-projector-holder-right);
  width: var(--projector-holder-width);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Star Wrapper 1"] {
  top: var(--sparkle-1-top);
  left: var(--sparkle-1-left);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Star Wrapper 2"] {
  top: var(--sparkle-2-top);
  left: var(--sparkle-2-left);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Star Wrapper 3"] {
  top: var(--sparkle-3-top);
  left: var(--sparkle-3-left);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Star Wrapper 4"] {
  top: var(--sparkle-4-top);
  right: var(--sparkle-4-right);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Star Wrapper 5"] {
  top: var(--sparkle-5-top);
  right: var(--sparkle-5-right);
}

#main [data-framer-name="Nuclear"] [data-framer-name="Star Wrapper 6"] {
  top: var(--sparkle-6-top);
  right: var(--sparkle-6-right);
}

/* Curtains Header */

#main header [data-framer-name="Curtain Wrapper Left Top"] .curtain {
  border-radius: var(--sm) var(--sm) var(--curtain-radius) var(--sm);
}

#main header [data-framer-name="Curtain Wrapper Right Top"] .curtain {
  border-radius: var(--sm) var(--sm) var(--sm) var(--curtain-radius);
}

#main header [data-framer-name="Curtain Wrapper Left Bottom"] .curtain {
  border-radius: var(--sm) var(--curtain-radius) var(--sm) var(--sm);
}

#main header [data-framer-name="Curtain Wrapper Right Bottom"] .curtain {
  border-radius: var(--curtain-radius) var(--sm) var(--sm) var(--sm);
}

/* Curtains Everywhere Except Header */

#main
  [data-framer-name="Curtain Wrapper Left Top"]:not(:is(header *))
  .curtain {
  border-radius: var(--sm) var(--sm) var(--curtain-radius) var(--sm) !important;
}

#main
  [data-framer-name="Curtain Wrapper Right Top"]:not(:is(header *))
  .curtain {
  border-radius: var(--sm) var(--sm) var(--sm) var(--curtain-radius) !important;
}

#main
  [data-framer-name="Curtain Wrapper Left Bottom"]:not(:is(header *))
  .curtain {
  border-radius: var(--sm) var(--curtain-radius) var(--sm) var(--sm) !important;
}

#main
  [data-framer-name="Curtain Wrapper Right Bottom"]:not(:is(header *))
  .curtain {
  border-radius: var(--curtain-radius) var(--sm) var(--sm) var(--sm) !important;
}

#main
  [data-framer-name*="Curtains Footer"]
  [data-framer-name*="Curtain Wrapper"],
#main
  [data-framer-name*="Curtains Menu Mobile"]
  [data-framer-name*="Curtain Wrapper"],
#main
  [data-framer-name*="Curtains Support"]
  [data-framer-name*="Curtain Wrapper"],
#main
  [data-framer-name*="Curtains About"]
  [data-framer-name*="Curtain Wrapper"],
#main
  [data-framer-name*="Curtains Archive"]
  [data-framer-name*="Curtain Wrapper"],
#main
  [data-framer-name*="Curtains Blog"]
  [data-framer-name*="Curtain Wrapper"] {
  height: calc(var(--nav-height-mobile) * 3) !important;
}

/* Archive + Blog */

#main [data-framer-name*="Archive Link Sticky"],
#main [data-framer-name*="Blog Link Sticky"] {
  top: calc(var(--lg) + var(--nav-height-mobile));
  bottom: var(--lg);
}

/* Tags */

#main [data-framer-name*="Activities Bar"] a [data-framer-name*="Default"],
#main a[data-framer-name*="Archive Link Sticky"] [data-framer-name*="Default"],
#main a[data-framer-name*="Blog Link Sticky"] [data-framer-name*="Default"] {
  transition: background 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
}

#main
  [data-framer-name*="Activities Bar"]
  a
  [data-framer-name*="Default"]
  div.framer-text,
#main
  a[data-framer-name*="Archive Link Sticky"]
  [data-framer-name*="Default"]
  div.framer-text,
#main
  a[data-framer-name*="Blog Link Sticky"]
  [data-framer-name*="Default"]
  div.framer-text {
  transition: color 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
}

.no-touchevents
  #main
  [data-framer-name*="Activities Bar"]
  a
  [data-framer-name*="Default"]:hover,
#main
  [data-framer-name*="Activities Bar"]
  a.is-active
  [data-framer-name*="Default"],
.no-touchevents
  #main
  a[data-framer-name*="Archive Link Sticky"]
  [data-framer-name*="Default"]:hover,
.no-touchevents
  #main
  a[data-framer-name*="Blog Link Sticky"]
  [data-framer-name*="Default"]:hover {
  background: var(--stage-white) !important;
}

.no-touchevents
  #main
  [data-framer-name*="Activities Bar"]
  a
  [data-framer-name*="Default"]:hover
  div.framer-text,
#main
  [data-framer-name*="Activities Bar"]
  a.is-active
  [data-framer-name*="Default"]
  div.framer-text,
.no-touchevents
  #main
  a[data-framer-name*="Archive Link Sticky"]
  [data-framer-name*="Default"]:hover
  div.framer-text,
.no-touchevents
  #main
  a[data-framer-name*="Blog Link Sticky"]
  [data-framer-name*="Default"]:hover
  div.framer-text {
  color: var(--curtain-black) !important;
}

#main [data-framer-name*="Events Form"] [data-framer-name="Button Arrow"],
#main [data-framer-name*="Archive"] [data-framer-name="Button Arrow"],
#main [data-framer-name*="Blog"] [data-framer-name="Button Arrow"] {
  margin-top: 0.3rem;
}

/* Blog */

#main
  [data-framer-name*="Blog"]
  [data-framer-name*="Horizontal"]
  [data-framer-name="Button Arrow"] {
  margin-top: 1.1rem;
}

#main
  [data-framer-name*="Blog"]
  [data-framer-name*="Accent"]
  [data-framer-name*="Info"] {
  border-bottom: 0.05rem solid var(--curtain-black-translucent);
  padding-bottom: var(--lg);
}

#main
  [data-framer-name*="Blog"]
  [data-framer-name*="CMS Randomize"]
  > div
  > div
  > div {
  row-gap: var(--4xl) !important;
  column-gap: var(--lg) !important;
}

/* Load more button */

#main [data-framer-name="Load More Button"] {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--lg);
}

#main [data-framer-name="Load More Button"] button {
  grid-column: 2 / span 2;
}

/* Number */

#main [data-framer-name*="Number Wrapper"] {
  width: var(--3xl);
}

/* === Footer === */

[data-framer-name*="Additional Pages"] .link.link--underline::after {
  background: var(--curtain-black-translucent);
}

.no-touchevents
  [data-framer-name*="Additional Pages"]
  .link.link--underline::after {
  transition: background 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
}

.no-touchevents
  [data-framer-name*="Additional Pages"]
  .link.link--underline:hover::after {
  background: currentColor;
}

.no-touchevents [data-framer-name*="Additional Pages"] .link div.framer-text {
  transition: color 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
}

.no-touchevents
  [data-framer-name*="Additional Pages"]
  .link:hover
  div.framer-text {
  color: currentColor;
}

#main footer[data-framer-name] input:-webkit-autofill {
  box-shadow: var(--character-grey) 0 0 0 100rem inset;
  border-radius: var(--xs) var(--xs) 0 0;
  padding-left: 0 !important;
}

#main footer[data-framer-name] [data-framer-name*="Back to Top"] {
  width: 3rem;
  height: 3rem;
}

#main
  footer[data-framer-name]
  [data-framer-name*="Back to Top"]
  [data-framer-name*="Button Arrow Wrapper"] {
  width: 0.6rem;
  height: 0.9rem;
}

/* === Newsletter === */

#main [data-framer-name*="Newsletter"] input[type="email"] {
  padding-right: calc(var(--4xl) + var(--sm)) !important;
}

#main [data-framer-name*="Newsletter"] form div {
  align-content: center !important;
}

#main [data-framer-name*="Newsletter"] input[type="submit"] {
  border-radius: var(--xs) !important;
  width: var(--4xl) !important;
  height: fit-content !important;
  padding: var(--xs) 0 calc(var(--xs) + 0.2rem) !important;
  font-size: var(--body-font-size) !important;
  line-height: 1 !important;
  border: 0.05rem solid var(--curtain-black) !important;
  transition: all 0.6s cubic-bezier(0.12, 0.23, 0.5, 1) !important;
}

.no-touchevents
  #main
  [data-framer-name*="Newsletter"]
  input[type="submit"]:hover {
  background: none !important;
  color: var(--curtain-black) !important;
}

.newsletter-subscribe-condition {
  color: var(--curtain-black-translucent);
  font-family: "Manrope Variable ExtraLight", sans-serif;
  font-size: var(--details-font-size);
  line-height: var(--body-line-height);
  font-weight: 500;
  font-variation-settings: "wght" 500;
}

.no-touchevents .newsletter-subscribe-condition .link {
  transition: color 0.6s cubic-bezier(0.12, 0.23, 0.5, 1);
}

.no-touchevents .newsletter-subscribe-condition .link:hover {
  color: var(--curtain-black);
}

/* === Media queries === */

@media (min-width: 1440px) {
  html,
  :root {
    font-size: 0.6944444444444444vw !important;
  }
}

/* From 810px onwards*/
@media (min-width: 810px) {
  :root {
    --xs: 0.5rem;
    --sm: 1rem;
    --md: 1.5rem;
    --lg: 2rem;
    --xl: 3rem;
    --2xl: 4rem;
    --3xl: 6rem;
    --4xl: 8rem;

    --curtain-radius: 33.333333vw;

    --kaleidos-size: 10vw;
  }

  /* === Preloader === */

  #main [data-framer-name*="Preloader Container"] {
    --preloader-shape-1-width: calc(100vw * 1.6);
    --preloader-shape-1-height: calc(100vw * 1.6);

    /* rectangle */
    --preloader-shape-2-width: calc(100vw * 0.9);
    --preloader-shape-2-height: calc(100vh * 0.9);

    /* 3 is -0.4 smaller than 1 */
    --preloader-shape-3-width: calc(100vw * 1.3);
    --preloader-shape-3-height: calc(100vw * 1.3);

    /* 4 is -0.2 smaller than 3 */
    --preloader-shape-4-width: calc(100vw * 1.1);
    --preloader-shape-4-height: calc(100vw * 1.1);

    /* 5 & 6 are equal */
    --preloader-shape-5-width: calc(100vw * 0.75);
    --preloader-shape-5-height: calc(100vw * 0.75);

    --preloader-shape-6-width: calc(100vw * 0.75);
    --preloader-shape-6-height: calc(100vw * 0.75);

    /* 7 is -0.1 smaller than 5 & 6 */
    --preloader-shape-7-width: calc(100vw * 0.65);
    --preloader-shape-7-height: calc(100vw * 0.65);

    /* 8 & 9 are equal */
    --preloader-shape-8-width: calc(100vw * 0.4);
    --preloader-shape-8-height: calc(100vw * 0.4);

    --preloader-shape-9-width: calc(100vw * 0.4);
    --preloader-shape-9-height: calc(100vw * 0.4);

    --preloader-kaleidos-pos-x: 22.5%;
    --preloader-kaleidos-pos-y: 16.25%;

    --preloader-circle-pos-x: 37.5%;
    --preloader-circle-pos-y: 10%;

    --preloader-circle-size: 2rem;
  }

  /* === Nav === */

  #main nav[data-framer-name] [data-framer-name="Logo"] {
    height: 2rem;
  }

  /* === Hero === */

  #main header[data-framer-name="Hero"] [data-framer-name*="Headline"] {
    padding-bottom: var(--xl);
  }

  /* Home */

  #main header[data-framer-name="Hero"] [data-framer-name*="Video Wrapper"] {
    border-radius: var(--sm) var(--sm) var(--sm) 33.333333vw;
  }

  /* === Elements === */

  /* Events */

  #main
    [data-framer-name*="Event Card"]
    > [data-framer-name*="Wrapper Horizontal"] {
    height: calc(
      var(--lg) * 2 + var(--caps-text-height) + var(--sm) * 2 + (6rem * 1) * 3 +
        var(--body-text-height) * 4 + var(--4xl) + var(--caps-text-height)
    );
  }

  /* Activities */

  #main
    main[data-framer-name="Main"]
    [data-framer-name*="Activity Visual Wrapper"]
    [data-framer-name*="Visual"] {
    width: calc(100% - 3rem);
    height: calc(100% - 3rem);
    flex: unset;
  }

  /* Testimonials */

  #main
    [data-framer-name*="Testimonials"]
    ul[role="group"]
    [data-framer-name*="Testimonial Card"] {
    width: calc(
      ((100vw - var(--grid-gap)) / 8) * 4 - var(--grid-gap)
    ) !important; /* span 4 columns for tablet */
  }

  #main
    [data-framer-name*="Testimonials"]
    ul[role="group"]
    [data-framer-name*="Image Wrapper"] {
    width: calc(
      ((100vw - var(--grid-gap)) / 8) * 3 - var(--grid-gap)
    ) !important; /* span 3 columns for tablet */
  }

  /* Playful Projectors */

  #main [data-framer-name="Nuclear Wrapper"] {
    --projector-scale: scale(0.5);
    --left-projector-transform-origin: 22.5% 55%;
    --right-projector-transform-origin: 77.5% 55%;

    --character-scale: scale(0.5);
    --character-transform-origin: 50% 100%;

    --stage-width: 120vw;

    --projector-holder-width: 5rem;
    --projector-holder-top: -8rem;
    --left-projector-holder-left: 1rem;
    --right-projector-holder-right: 1rem;

    --sparkle-1-top: 40rem;
    --sparkle-1-left: 10rem;

    --sparkle-2-top: 32rem;
    --sparkle-2-left: 14rem;

    --sparkle-3-top: 42rem;
    --sparkle-3-left: 20rem;

    --sparkle-4-top: 38rem;
    --sparkle-4-right: 8rem;

    --sparkle-5-top: 34rem;
    --sparkle-5-right: 16rem;

    --sparkle-6-top: 42rem;
    --sparkle-6-right: 22rem;
  }

  /* Load more button */

  #main [data-framer-name="Load More Button"] {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  #main [data-framer-name="Load More Button"] button {
    grid-column: 4 / span 2;
  }

  /* Curtains */

  #main
    [data-framer-name*="Curtains Support"]
    [data-framer-name*="Curtain Wrapper"],
  #main
    [data-framer-name*="Curtains About"]
    [data-framer-name*="Curtain Wrapper"] {
    height: calc(var(--nav-height-mobile) * 6) !important;
  }

  #main
    [data-framer-name*="Curtains Archive"]
    [data-framer-name*="Curtain Wrapper"],
  #main
    [data-framer-name*="Curtains Blog"]
    [data-framer-name*="Curtain Wrapper"] {
    height: calc(var(--nav-height) * 3) !important;
  }

  #main
    [data-framer-name*="Curtains Footer"]
    [data-framer-name*="Curtain Wrapper"],
  #main
    [data-framer-name*="Curtains Menu Mobile"]
    [data-framer-name*="Curtain Wrapper"] {
    height: calc(var(--nav-height) * 3) !important;
  }
}

/* From 1200px onwards*/
@media (min-width: 1200px) {
  :root {
    --hero-pt-lg: calc(var(--nav-height) + var(--lg));
    --hero-pt-2xl: calc(var(--nav-height) + var(--2xl));

    --curtain-radius: 25vw;

    --kaleidos-size: 7vw;
  }

  /* === Preloader === */

  #main [data-framer-name*="Preloader Container"] {
    --preloader-shape-1-width: calc(100vw * 0.96);
    --preloader-shape-1-height: calc(100vw * 0.96);

    /* rectangle */
    --preloader-shape-2-width: calc(100vw * 0.9);
    --preloader-shape-2-height: calc(100vh * 0.9);

    /* 3 is -0.2 smaller than 1 */
    --preloader-shape-3-width: calc(100vw * 0.8);
    --preloader-shape-3-height: calc(100vw * 0.8);

    /* 4 is -0.1 smaller than 3 */
    --preloader-shape-4-width: calc(100vw * 0.7);
    --preloader-shape-4-height: calc(100vw * 0.7);

    /* 5 & 6 are equal */
    --preloader-shape-5-width: calc(100vh * 0.8);
    --preloader-shape-5-height: calc(100vh * 0.8);

    --preloader-shape-6-width: calc(100vh * 0.8);
    --preloader-shape-6-height: calc(100vh * 0.8);

    /* 7 is -0.1 smaller than 5 & 6 */
    --preloader-shape-7-width: calc(100vh * 0.7);
    --preloader-shape-7-height: calc(100vh * 0.7);

    /* 8 & 9 are equal */
    --preloader-shape-8-width: calc(100vh * 0.4);
    --preloader-shape-8-height: calc(100vh * 0.4);

    --preloader-shape-9-width: calc(100vh * 0.4);
    --preloader-shape-9-height: calc(100vh * 0.4);

    --preloader-kaleidos-pos-x: 20%;
    --preloader-kaleidos-pos-y: 20%;

    --preloader-circle-pos-x: 37.5%;
    --preloader-circle-pos-y: 5%;

    --preloader-circle-far-pos-x: 12.5%;
    --preloader-circle-far-pos-y: 50%;

    --preloader-circle-size: 1.2rem;
  }

  #main
    [data-framer-name*="Preloader Container"]
    [data-framer-name*="Text Wrapper"] {
    --grow-x: 0.4;
    --grow-y: 0.4;
  }

  #main
    [data-framer-name*="Preloader Container"]
    [data-framer-name*="Text Wrapper"]
    [data-framer-name*="Percentage"]
    div.framer-text {
    font-size: 5rem;
  }

  #main
    [data-framer-name*="Preloader Container"]
    [data-framer-name*="Text Wrapper"]
    [data-framer-name*="Title"]
    div.framer-text {
    font-size: 3.8rem;
  }

  /* === Nav === */

  #main nav[data-framer-name] [data-framer-name="Logo"] {
    height: 2rem;
  }

  /* === Hero === */

  #main header[data-framer-name="Hero"] {
    padding: calc(var(--hero-pt-lg)) var(--lg)
      calc(var(--lg) + var(--marquee-height));
  }

  /* Home */

  #main header[data-framer-name="Hero"] [data-framer-name*="Video Wrapper"] {
    border-radius: var(--sm) var(--sm) var(--sm) 25vw;
  }

  /* === Elements === */

  /* Events */

  /* Activities */

  #main [data-framer-name*="Activities Bar"] {
    top: var(--nav-height);
  }

  /* Testimonials */

  #main
    [data-framer-name*="Testimonials"]
    ul[role="group"]
    [data-framer-name*="Testimonial Card"] {
    width: calc(
      ((100vw - var(--grid-gap)) / 12) * 6 - var(--grid-gap)
    ) !important; /* span 6 columns for desktop */
  }

  #main
    [data-framer-name*="Testimonials"]
    ul[role="group"]
    [data-framer-name*="Image Wrapper"] {
    width: calc(
      ((100vw - var(--grid-gap)) / 12) * 3 - var(--grid-gap)
    ) !important; /* span 3 columns for desktop */
  }

  /* Playful Projectors */

  #main section[data-framer-name^="Playful"] {
    height: 60vw;
  }

  #main [data-framer-name="Nuclear Wrapper"] {
    --projector-scale: scale(0.5);
    --left-projector-transform-origin: 22.5% 55%;
    --right-projector-transform-origin: 77.5% 55%;

    --character-scale: scale(0.5);
    --character-transform-origin: 50% 100%;

    --stage-width: 84vw;

    --projector-holder-width: 4rem;
    --projector-holder-top: -3rem;
    --left-projector-holder-left: 0.5rem;
    --right-projector-holder-right: 0.5rem;

    --sparkle-1-top: 30rem;
    --sparkle-1-left: 18rem;

    --sparkle-2-top: 20rem;
    --sparkle-2-left: 24rem;

    --sparkle-3-top: 24rem;
    --sparkle-3-left: 16rem;

    --sparkle-4-top: 32rem;
    --sparkle-4-right: 12rem;

    --sparkle-5-top: 28rem;
    --sparkle-5-right: 22rem;

    --sparkle-6-top: 22rem;
    --sparkle-6-right: 18rem;
  }

  #main [data-framer-name="Nuclear Wrapper"] {
    margin: 0 auto;
    max-width: calc(
      ((100vw - var(--grid-gap)) / 12) * 10 - var(--grid-gap)
    ); /* max-width 10 columns for desktop */
  }

  /* Archive + Blog */

  #main [data-framer-name*="Archive Link Sticky"],
  #main [data-framer-name*="Blog Link Sticky"] {
    top: calc(var(--lg) + var(--nav-height));
  }

  /* Load more button */

  #main [data-framer-name="Load More Button"] {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  #main [data-framer-name="Load More Button"] button {
    grid-column: 6 / span 2;
  }

  /* Curtains */

  #main
    [data-framer-name*="Curtains Support"]
    [data-framer-name*="Curtain Wrapper"] {
    height: calc(var(--nav-height) * 4) !important;
  }

  #main
    [data-framer-name*="Curtains About"]
    [data-framer-name*="Curtain Wrapper"],
  #main
    [data-framer-name*="Curtains Footer"]
    [data-framer-name*="Curtain Wrapper"],
  #main
    [data-framer-name*="Curtains Menu Mobile"]
    [data-framer-name*="Curtain Wrapper"] {
    height: calc(var(--nav-height) * 2) !important;
  }

  #main
    [data-framer-name*="Curtains Archive"]
    [data-framer-name*="Curtain Wrapper"],
  #main
    [data-framer-name*="Curtains Blog"]
    [data-framer-name*="Curtain Wrapper"] {
    height: calc(var(--nav-height) * 3) !important;
  }
}

/* From 1600px onwards*/
@media (min-width: 1600px) {
  /* Playful Projectors */

  #main section[data-framer-name^="Playful"] {
    height: 50vw;
  }

  #main [data-framer-name="Nuclear Wrapper"] {
    --projector-scale: scale(0.7);
    --left-projector-transform-origin: 22.5% 55%;
    --right-projector-transform-origin: 77.5% 55%;

    --character-scale: scale(0.7);
    --character-transform-origin: 50% 100%;

    --stage-width: 60vw;

    --projector-holder-width: 4rem;
    --projector-holder-top: -10rem;
    --left-projector-holder-left: 0.5rem;
    --right-projector-holder-right: 0.5rem;

    --sparkle-1-top: 30rem;
    --sparkle-1-left: 18rem;

    --sparkle-2-top: 20rem;
    --sparkle-2-left: 24rem;

    --sparkle-3-top: 24rem;
    --sparkle-3-left: 16rem;

    --sparkle-4-top: 32rem;
    --sparkle-4-right: 12rem;

    --sparkle-5-top: 28rem;
    --sparkle-5-right: 22rem;

    --sparkle-6-top: 22rem;
    --sparkle-6-right: 18rem;
  }
}

/* From 2000px onwards*/
@media (min-width: 2000px) {
  /* Playful Projectors */

  #main section[data-framer-name^="Playful"] {
    height: 50vw;
  }

  #main [data-framer-name="Nuclear Wrapper"] {
    --projector-scale: scale(1);
    --left-projector-transform-origin: 22.5% 55%;
    --right-projector-transform-origin: 77.5% 55%;

    --character-scale: scale(1);
    --character-transform-origin: 50% 100%;

    --stage-width: 45vw;

    --projector-holder-width: 4rem;
    --projector-holder-top: -12rem;
    --left-projector-holder-left: 0.5rem;
    --right-projector-holder-right: 0.5rem;

    --sparkle-1-top: 30rem;
    --sparkle-1-left: 18rem;

    --sparkle-2-top: 20rem;
    --sparkle-2-left: 24rem;

    --sparkle-3-top: 24rem;
    --sparkle-3-left: 16rem;

    --sparkle-4-top: 32rem;
    --sparkle-4-right: 12rem;

    --sparkle-5-top: 28rem;
    --sparkle-5-right: 22rem;

    --sparkle-6-top: 22rem;
    --sparkle-6-right: 18rem;
  }
}
