/* Studio Page Styles */


.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}

/* Image Cover */
/* .g_image_cover {
  visibility: visible;
  opacity: 1;
  display: block;
} */

/* Preloader */
.preloader_wrap {
  display: block;
}

/* Contact Form Styles */
.radiocheck-field input:focus-visible:checked~.radiocheck-custom,
.radiocheck-field input:checked~.radiocheck-custom {
  background-color: var(--swatch--white);
  color: var(--swatch--black);
}

.radiocheck-group .radio-field input:checked~.radio-field,
.checkbox-group .checkbox-field input:checked~.checkbox-field {
  background-color: var(--swatch--black);
}

.radiocheck-group .radio-field input:checked+.radio-label,
.checkbox-group .checkbox-field input:checked+.checkbox-label {
  color: var(--swatch--black);
}

.radio-button,
.checkbox-input,
.checkbox-label,
.radio-label {
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}

/* Field: Select */
[data-validate] select:has(option[value=""]:checked) {
  color: rgba(19, 19, 19, 0.3);
}

.contact_overlay_close {
  opacity: 0;
  visibility: hidden;
}

/* CSS Variables and Grid System */
:root {
  --column-count: 12;
  --max-width--full: calc(100vw - (var(--site-margin--main) * 2));
  --site-width--inner: calc(var(--site-width--main) - (var(--site-margin--main) * 2));
  --grid-width: min(var(--site-width--inner), var(--max-width--full));
  --grid-gap-total: calc(var(--grid-gap--main) * (var(--column-count) - 1));
  --column-width: calc((var(--grid-width) - var(--grid-gap-total)) / var(--column-count) + var(--grid-gap--main));
  --max-width--small: calc(var(--column-width) * (var(--column-count) - 2) - var(--grid-gap--main));
  --max-width--main: calc(var(--column-width) * var(--column-count) - var(--grid-gap--main));
  --column-width--1: calc(var(--column-width) * 1 - var(--grid-gap--main));
  --column-width--2: calc(var(--column-width) * 2 - var(--grid-gap--main));
  --column-width--3: calc(var(--column-width) * 3 - var(--grid-gap--main));
  --column-width--4: calc(var(--column-width) * 4 - var(--grid-gap--main));
  --column-width--5: calc(var(--column-width) * 5 - var(--grid-gap--main));
  --column-width--6: calc(var(--column-width) * 6 - var(--grid-gap--main));
  --column-width--7: calc(var(--column-width) * 7 - var(--grid-gap--main));
  --column-width--8: calc(var(--column-width) * 8 - var(--grid-gap--main));
  --column-width--9: calc(var(--column-width) * 9 - var(--grid-gap--main));
  --column-width--10: calc(var(--column-width) * 10 - var(--grid-gap--main));
  --column-width--11: calc(var(--column-width) * 11 - var(--grid-gap--main));
  --column-width--12: calc(var(--column-width) * 12 - var(--grid-gap--main));
  --column-margin--1: calc(var(--column-width) * 1);
  --column-margin--2: calc(var(--column-width) * 2);
  --column-margin--3: calc(var(--column-width) * 3);
  --column-margin--4: calc(var(--column-width) * 4);
  --column-margin--5: calc(var(--column-width) * 5);
  --column-margin--6: calc(var(--column-width) * 6);
  --column-margin--7: calc(var(--column-width) * 7);
  --column-margin--8: calc(var(--column-width) * 8);
  --column-margin--9: calc(var(--column-width) * 9);
  --column-margin--10: calc(var(--column-width) * 10);
  --column-margin--11: calc(var(--column-width) * 11);
  --column-margin--12: calc(var(--column-width) * 12);
  --breakout-start: [full-start] minmax(0, 1fr) [content-start];
  --breakout-end: [content-end] minmax(0, 1fr) [full-end];
  --grid-breakout-single: var(--breakout-start) minmax(0, var(--grid-width)) var(--breakout-end);
  --grid-breakout: var(--breakout-start) repeat(var(--column-count), minmax(0, calc((var(--grid-width) - var(--grid-gap-total)) / var(--column-count)))) var(--breakout-end);
  --grid-main: repeat(var(--column-count), minmax(0, 1fr));
  --grid-1: repeat(1, minmax(0, 1fr));
  --grid-2: repeat(2, minmax(0, 1fr));
  --grid-3: repeat(3, minmax(0, 1fr));
  --grid-4: repeat(4, minmax(0, 1fr));
  --grid-5: repeat(5, minmax(0, 1fr));
  --grid-6: repeat(6, minmax(0, 1fr));
  --grid-7: repeat(7, minmax(0, 1fr));
  --grid-8: repeat(8, minmax(0, 1fr));
  --grid-9: repeat(9, minmax(0, 1fr));
  --grid-10: repeat(10, minmax(0, 1fr));
  --grid-11: repeat(11, minmax(0, 1fr));
  --grid-12: repeat(12, minmax(0, 1fr));

  /* Column Span Variables */
  --span-1: span 1 / span 1;
  --span-2: span 2 / span 2;
  --span-3: span 3 / span 3;
  --span-4: span 4 / span 4;
  --span-5: span 5 / span 5;
  --span-6: span 6 / span 6;
  --span-7: span 7 / span 7;
  --span-8: span 8 / span 8;
  --span-9: span 9 / span 9;
  --span-10: span 10 / span 10;
  --span-11: span 11 / span 11;
  --span-12: span 12 / span 12;

  --animation-primary: cubic-bezier(0.83, 0, 0.17, 1);
  --animation-secondary: cubic-bezier(0.16, 1, 0.3, 1);

  /* Column Start Position Variables */
  --start-1: 1;
  --start-2: 2;
  --start-3: 3;
  --start-4: 4;
  --start-5: 5;
  --start-6: 6;
  --start-7: 7;
  --start-8: 8;
  --start-9: 9;
  --start-10: 10;
  --start-11: 11;
  --start-12: 12;

  --font-weight--inherit: inherit;
  --font-weight--100: 100;
  --font-weight--200: 200;
  --font-weight--300: 300;
  --font-weight--400: 400;
  --font-weight--500: 500;
  --font-weight--600: 600;
  --font-weight--700: 700;
  --font-weight--800: 800;
  --font-weight--900: 900;
  --text-transform--none: none;
  --text-transform--uppercase: uppercase;
  --text-transform--capitalize: capitalize;
  --text-transform--lowercase: lowercase;
  --text-transform--inherit: inherit;
}

/* Base Styles */
body {
  font-weight: var(--text-main--font-weight);
  text-transform: var(--text-main--text-transform);
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  -webkit-text-rendering: optimizeSpeed;
  text-rendering: optimizeSpeed;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
label,
figure,
blockquote {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin-top: 0;
  margin-bottom: 0;
}

button {
  background-color: unset;
  padding: unset;
  text-align: inherit;
  cursor: pointer;
}

video {
  width: 100%;
  object-fit: cover;
}

video.wf-empty {
  padding: 0;
}

svg {
  display: block;
}

section,
header,
footer {
  position: relative;
}

@media (prefers-color-scheme: light) {
  option {
    color: black;
  }
}

img::selection {
  background: transparent;
}

a:not([class]) {
  text-decoration: underline;
}

.w-richtext a {
  position: relative;
  z-index: 4;
}

/* Utility Classes */
.u-margin-trim> :first-child,
.u-margin-trim> :not(:not(.w-condition-invisible) ~ :not(.w-condition-invisible)),
.u-rich-text>*:first-child,
.u-rich-text .w-richtext>*:first-child {
  margin-top: 0;
}

.u-margin-trim> :last-child,
.u-margin-trim> :not(:has(~ :not(.w-condition-invisible))),
.u-rich-text>*:last-child,
.u-rich-text .w-richtext>*:last-child {
  margin-bottom: 0;
}

.u-hide-if-empty:empty,
.u-hide-if-empty:not(:has(> *:not(.w-condition-invisible))),
.u-hide-if-empty-cms:not(:has(.w-dyn-item)),
.u-hide-rich-text-media>*:not(h1, h2, h3, h4, h5, h6, p, blockquote),
.u-embed-js,
.u-embed-css {
  display: none !important;
}

.u-line-clamp-1,
.u-line-clamp-2,
.u-line-clamp-3,
.u-line-clamp-4 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

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

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

.u-line-clamp-4 {
  -webkit-line-clamp: 4;
}

/* Focus Styles */
[tabindex]:focus-visible,
a:focus-visible,
button:focus-visible,
.w-checkbox-input--inputType-custom.w--redirected-focus,
.w-form-formradioinput--inputType-custom.w--redirected-focus {
  outline: 0.125rem solid #5E9ED6;
}

.w-checkbox-input--inputType-custom.w--redirected-focus,
.w-form-formradioinput--inputType-custom.w--redirected-focus {
  box-shadow: none;
}

/* Padding Utilities */
[data-padding-top="none"] {
  padding-top: var(--padding-vertical--none);
}

[data-padding-bottom="none"] {
  padding-bottom: var(--padding-vertical--none);
}

[data-padding-top="small"] {
  padding-top: var(--padding-vertical--small);
}

[data-padding-bottom="small"] {
  padding-bottom: var(--padding-vertical--small);
}

[data-padding-top="main"] {
  padding-top: var(--padding-vertical--main);
}

[data-padding-bottom="main"] {
  padding-bottom: var(--padding-vertical--main);
}

[data-padding-top="large"] {
  padding-top: var(--padding-vertical--large);
}

[data-padding-bottom="large"] {
  padding-bottom: var(--padding-vertical--large);
}

/* Webflow Design Mode */
.wf-design-mode .g_clickable_wrap {
  z-index: 0;
}

.g_clickable_wrap a[href="#"] {
  display: none;
}

.g_clickable_wrap a[href="#"]~button {
  display: block;
}

/* Styleguide Guide */
html:not(.wf-design-mode) .styleguide_guide_wrap {
  display: none;
}

.styleguide_guide_layout {
  counter-reset: gridguides;
}

.styleguide_guide_layout>div::before {
  counter-increment: gridguides;
  content: counter(gridguides);
}

/* Studio Members Cover Active State */
.studio_members_cover.active {
  z-index: 10;
}