/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
@layer properties {
    @supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {

        *,
        ::backdrop,
        :after,
        :before {
            --tw-rotate-x: initial;
            --tw-rotate-y: initial;
            --tw-rotate-z: initial;
            --tw-skew-x: initial;
            --tw-skew-y: initial;
            --tw-border-style: solid;
            --tw-font-weight: initial;
            --tw-ordinal: initial;
            --tw-slashed-zero: initial;
            --tw-numeric-figure: initial;
            --tw-numeric-spacing: initial;
            --tw-numeric-fraction: initial;
            --tw-shadow: 0 0 #0000;
            --tw-shadow-color: initial;
            --tw-shadow-alpha: 100%;
            --tw-inset-shadow: 0 0 #0000;
            --tw-inset-shadow-color: initial;
            --tw-inset-shadow-alpha: 100%;
            --tw-ring-color: initial;
            --tw-ring-shadow: 0 0 #0000;
            --tw-inset-ring-color: initial;
            --tw-inset-ring-shadow: 0 0 #0000;
            --tw-ring-inset: initial;
            --tw-ring-offset-width: 0px;
            --tw-ring-offset-color: #fff;
            --tw-ring-offset-shadow: 0 0 #0000;
            --tw-outline-style: solid;
            --tw-blur: initial;
            --tw-brightness: initial;
            --tw-contrast: initial;
            --tw-grayscale: initial;
            --tw-hue-rotate: initial;
            --tw-invert: initial;
            --tw-opacity: initial;
            --tw-saturate: initial;
            --tw-sepia: initial;
            --tw-drop-shadow: initial;
            --tw-drop-shadow-color: initial;
            --tw-drop-shadow-alpha: 100%;
            --tw-drop-shadow-size: initial;
            --tw-backdrop-blur: initial;
            --tw-backdrop-brightness: initial;
            --tw-backdrop-contrast: initial;
            --tw-backdrop-grayscale: initial;
            --tw-backdrop-hue-rotate: initial;
            --tw-backdrop-invert: initial;
            --tw-backdrop-opacity: initial;
            --tw-backdrop-saturate: initial;
            --tw-backdrop-sepia: initial;
            --tw-ease: initial
        }
    }
}

@layer theme {

    :host,
    :root {
        --font-sans: "F37Bolton", sans-serif;
        --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
        --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        --color-red-50: oklch(97.1% .013 17.38);
        --color-red-100: oklch(93.6% .032 17.717);
        --color-red-200: oklch(88.5% .062 18.334);
        --color-red-300: oklch(80.8% .114 19.571);
        --color-red-400: oklch(70.4% .191 22.216);
        --color-red-500: oklch(63.7% .237 25.331);
        --color-red-600: oklch(57.7% .245 27.325);
        --color-red-700: oklch(50.5% .213 27.518);
        --color-red-800: oklch(44.4% .177 26.899);
        --color-red-900: oklch(39.6% .141 25.723);
        --color-red-950: oklch(25.8% .092 26.042);
        --color-orange-50: oklch(98% .016 73.684);
        --color-orange-100: oklch(95.4% .038 75.164);
        --color-orange-200: oklch(90.1% .076 70.697);
        --color-orange-300: oklch(83.7% .128 66.29);
        --color-orange-400: oklch(75% .183 55.934);
        --color-orange-500: oklch(70.5% .213 47.604);
        --color-orange-600: oklch(64.6% .222 41.116);
        --color-orange-700: oklch(55.3% .195 38.402);
        --color-orange-800: oklch(47% .157 37.304);
        --color-orange-900: oklch(40.8% .123 38.172);
        --color-orange-950: oklch(26.6% .079 36.259);
        --color-amber-50: oklch(98.7% .022 95.277);
        --color-amber-100: oklch(96.2% .059 95.617);
        --color-amber-200: oklch(92.4% .12 95.746);
        --color-amber-300: oklch(87.9% .169 91.605);
        --color-amber-400: oklch(82.8% .189 84.429);
        --color-amber-500: oklch(76.9% .188 70.08);
        --color-amber-600: oklch(66.6% .179 58.318);
        --color-amber-700: oklch(55.5% .163 48.998);
        --color-amber-800: oklch(47.3% .137 46.201);
        --color-amber-900: oklch(41.4% .112 45.904);
        --color-amber-950: oklch(27.9% .077 45.635);
        --color-yellow-50: oklch(98.7% .026 102.212);
        --color-yellow-100: oklch(97.3% .071 103.193);
        --color-yellow-200: oklch(94.5% .129 101.54);
        --color-yellow-300: oklch(90.5% .182 98.111);
        --color-yellow-400: oklch(85.2% .199 91.936);
        --color-yellow-500: oklch(79.5% .184 86.047);
        --color-yellow-600: oklch(68.1% .162 75.834);
        --color-yellow-700: oklch(55.4% .135 66.442);
        --color-yellow-800: oklch(47.6% .114 61.907);
        --color-yellow-900: oklch(42.1% .095 57.708);
        --color-yellow-950: oklch(28.6% .066 53.813);
        --color-lime-50: oklch(98.6% .031 120.757);
        --color-lime-100: oklch(96.7% .067 122.328);
        --color-lime-200: oklch(93.8% .127 124.321);
        --color-lime-300: oklch(89.7% .196 126.665);
        --color-lime-400: oklch(84.1% .238 128.85);
        --color-lime-500: oklch(76.8% .233 130.85);
        --color-lime-600: oklch(64.8% .2 131.684);
        --color-lime-700: oklch(53.2% .157 131.589);
        --color-lime-800: oklch(45.3% .124 130.933);
        --color-lime-900: oklch(40.5% .101 131.063);
        --color-lime-950: oklch(27.4% .072 132.109);
        --color-green-50: oklch(98.2% .018 155.826);
        --color-green-100: oklch(96.2% .044 156.743);
        --color-green-200: oklch(92.5% .084 155.995);
        --color-green-300: oklch(87.1% .15 154.449);
        --color-green-400: oklch(79.2% .209 151.711);
        --color-green-500: oklch(72.3% .219 149.579);
        --color-green-600: oklch(62.7% .194 149.214);
        --color-green-700: oklch(52.7% .154 150.069);
        --color-green-800: oklch(44.8% .119 151.328);
        --color-green-900: oklch(39.3% .095 152.535);
        --color-green-950: oklch(26.6% .065 152.934);
        --color-emerald-50: oklch(97.9% .021 166.113);
        --color-emerald-100: oklch(95% .052 163.051);
        --color-emerald-200: oklch(90.5% .093 164.15);
        --color-emerald-300: oklch(84.5% .143 164.978);
        --color-emerald-400: oklch(76.5% .177 163.223);
        --color-emerald-500: oklch(69.6% .17 162.48);
        --color-emerald-600: oklch(59.6% .145 163.225);
        --color-emerald-700: oklch(50.8% .118 165.612);
        --color-emerald-800: oklch(43.2% .095 166.913);
        --color-emerald-900: oklch(37.8% .077 168.94);
        --color-emerald-950: oklch(26.2% .051 172.552);
        --color-teal-50: oklch(98.4% .014 180.72);
        --color-teal-100: oklch(95.3% .051 180.801);
        --color-teal-200: oklch(91% .096 180.426);
        --color-teal-300: oklch(85.5% .138 181.071);
        --color-teal-400: oklch(77.7% .152 181.912);
        --color-teal-500: oklch(70.4% .14 182.503);
        --color-teal-600: oklch(60% .118 184.704);
        --color-teal-700: oklch(51.1% .096 186.391);
        --color-teal-800: oklch(43.7% .078 188.216);
        --color-teal-900: oklch(38.6% .063 188.416);
        --color-teal-950: oklch(27.7% .046 192.524);
        --color-cyan-50: oklch(98.4% .019 200.873);
        --color-cyan-100: oklch(95.6% .045 203.388);
        --color-cyan-200: oklch(91.7% .08 205.041);
        --color-cyan-300: oklch(86.5% .127 207.078);
        --color-cyan-400: oklch(78.9% .154 211.53);
        --color-cyan-500: oklch(71.5% .143 215.221);
        --color-cyan-600: oklch(60.9% .126 221.723);
        --color-cyan-700: oklch(52% .105 223.128);
        --color-cyan-800: oklch(45% .085 224.283);
        --color-cyan-900: oklch(39.8% .07 227.392);
        --color-cyan-950: oklch(30.2% .056 229.695);
        --color-sky-50: oklch(97.7% .013 236.62);
        --color-sky-100: oklch(95.1% .026 236.824);
        --color-sky-200: oklch(90.1% .058 230.902);
        --color-sky-300: oklch(82.8% .111 230.318);
        --color-sky-400: oklch(74.6% .16 232.661);
        --color-sky-500: oklch(68.5% .169 237.323);
        --color-sky-600: oklch(58.8% .158 241.966);
        --color-sky-700: oklch(50% .134 242.749);
        --color-sky-800: oklch(44.3% .11 240.79);
        --color-sky-900: oklch(39.1% .09 240.876);
        --color-sky-950: oklch(29.3% .066 243.157);
        --color-blue-50: oklch(97% .014 254.604);
        --color-blue-100: oklch(93.2% .032 255.585);
        --color-blue-200: oklch(88.2% .059 254.128);
        --color-blue-300: oklch(80.9% .105 251.813);
        --color-blue-400: oklch(70.7% .165 254.624);
        --color-blue-500: oklch(62.3% .214 259.815);
        --color-blue-600: oklch(54.6% .245 262.881);
        --color-blue-700: oklch(48.8% .243 264.376);
        --color-blue-800: oklch(42.4% .199 265.638);
        --color-blue-900: oklch(37.9% .146 265.522);
        --color-blue-950: oklch(28.2% .091 267.935);
        --color-indigo-50: oklch(96.2% .018 272.314);
        --color-indigo-100: oklch(93% .034 272.788);
        --color-indigo-200: oklch(87% .065 274.039);
        --color-indigo-300: oklch(78.5% .115 274.713);
        --color-indigo-400: oklch(67.3% .182 276.935);
        --color-indigo-500: oklch(58.5% .233 277.117);
        --color-indigo-600: oklch(51.1% .262 276.966);
        --color-indigo-700: oklch(45.7% .24 277.023);
        --color-indigo-800: oklch(39.8% .195 277.366);
        --color-indigo-900: oklch(35.9% .144 278.697);
        --color-indigo-950: oklch(25.7% .09 281.288);
        --color-violet-50: oklch(96.9% .016 293.756);
        --color-violet-100: oklch(94.3% .029 294.588);
        --color-violet-200: oklch(89.4% .057 293.283);
        --color-violet-300: oklch(81.1% .111 293.571);
        --color-violet-400: oklch(70.2% .183 293.541);
        --color-violet-500: oklch(60.6% .25 292.717);
        --color-violet-600: oklch(54.1% .281 293.009);
        --color-violet-700: oklch(49.1% .27 292.581);
        --color-violet-800: oklch(43.2% .232 292.759);
        --color-violet-900: oklch(38% .189 293.745);
        --color-violet-950: oklch(28.3% .141 291.089);
        --color-purple-50: oklch(97.7% .014 308.299);
        --color-purple-100: oklch(94.6% .033 307.174);
        --color-purple-200: oklch(90.2% .063 306.703);
        --color-purple-300: oklch(82.7% .119 306.383);
        --color-purple-400: oklch(71.4% .203 305.504);
        --color-purple-500: oklch(62.7% .265 303.9);
        --color-purple-600: oklch(55.8% .288 302.321);
        --color-purple-700: oklch(49.6% .265 301.924);
        --color-purple-800: oklch(43.8% .218 303.724);
        --color-purple-900: oklch(38.1% .176 304.987);
        --color-purple-950: oklch(29.1% .149 302.717);
        --color-fuchsia-50: oklch(97.7% .017 320.058);
        --color-fuchsia-100: oklch(95.2% .037 318.852);
        --color-fuchsia-200: oklch(90.3% .076 319.62);
        --color-fuchsia-300: oklch(83.3% .145 321.434);
        --color-fuchsia-400: oklch(74% .238 322.16);
        --color-fuchsia-500: oklch(66.7% .295 322.15);
        --color-fuchsia-600: oklch(59.1% .293 322.896);
        --color-fuchsia-700: oklch(51.8% .253 323.949);
        --color-fuchsia-800: oklch(45.2% .211 324.591);
        --color-fuchsia-900: oklch(40.1% .17 325.612);
        --color-fuchsia-950: oklch(29.3% .136 325.661);
        --color-pink-50: oklch(97.1% .014 343.198);
        --color-pink-100: oklch(94.8% .028 342.258);
        --color-pink-200: oklch(89.9% .061 343.231);
        --color-pink-300: oklch(82.3% .12 346.018);
        --color-pink-400: oklch(71.8% .202 349.761);
        --color-pink-500: oklch(65.6% .241 354.308);
        --color-pink-600: oklch(59.2% .249 .584);
        --color-pink-700: oklch(52.5% .223 3.958);
        --color-pink-800: oklch(45.9% .187 3.815);
        --color-pink-900: oklch(40.8% .153 2.432);
        --color-pink-950: oklch(28.4% .109 3.907);
        --color-rose-50: oklch(96.9% .015 12.422);
        --color-rose-100: oklch(94.1% .03 12.58);
        --color-rose-200: oklch(89.2% .058 10.001);
        --color-rose-300: oklch(81% .117 11.638);
        --color-rose-400: oklch(71.2% .194 13.428);
        --color-rose-500: oklch(64.5% .246 16.439);
        --color-rose-600: oklch(58.6% .253 17.585);
        --color-rose-700: oklch(51.4% .222 16.935);
        --color-rose-800: oklch(45.5% .188 13.697);
        --color-rose-900: oklch(41% .159 10.272);
        --color-rose-950: oklch(27.1% .105 12.094);
        --color-slate-50: oklch(98.4% .003 247.858);
        --color-slate-100: oklch(96.8% .007 247.896);
        --color-slate-200: oklch(92.9% .013 255.508);
        --color-slate-300: oklch(86.9% .022 252.894);
        --color-slate-400: oklch(70.4% .04 256.788);
        --color-slate-500: oklch(55.4% .046 257.417);
        --color-slate-600: oklch(44.6% .043 257.281);
        --color-slate-700: oklch(37.2% .044 257.287);
        --color-slate-800: oklch(27.9% .041 260.031);
        --color-slate-900: oklch(20.8% .042 265.755);
        --color-slate-950: oklch(12.9% .042 264.695);
        --color-gray-50: oklch(98.5% .002 247.839);
        --color-gray-100: oklch(96.7% .003 264.542);
        --color-gray-200: oklch(92.8% .006 264.531);
        --color-gray-300: oklch(87.2% .01 258.338);
        --color-gray-400: oklch(70.7% .022 261.325);
        --color-gray-500: oklch(55.1% .027 264.364);
        --color-gray-600: oklch(44.6% .03 256.802);
        --color-gray-700: oklch(37.3% .034 259.733);
        --color-gray-800: oklch(27.8% .033 256.848);
        --color-gray-900: oklch(21% .034 264.665);
        --color-gray-950: oklch(13% .028 261.692);
        --color-zinc-50: oklch(98.5% 0 0);
        --color-zinc-100: oklch(96.7% .001 286.375);
        --color-zinc-200: oklch(92% .004 286.32);
        --color-zinc-300: oklch(87.1% .006 286.286);
        --color-zinc-400: oklch(70.5% .015 286.067);
        --color-zinc-500: oklch(55.2% .016 285.938);
        --color-zinc-600: oklch(44.2% .017 285.786);
        --color-zinc-700: oklch(37% .013 285.805);
        --color-zinc-800: oklch(27.4% .006 286.033);
        --color-zinc-900: oklch(21% .006 285.885);
        --color-zinc-950: oklch(14.1% .005 285.823);
        --color-neutral-50: oklch(98.5% 0 0);
        --color-neutral-100: oklch(97% 0 0);
        --color-neutral-200: oklch(92.2% 0 0);
        --color-neutral-300: oklch(87% 0 0);
        --color-neutral-400: oklch(70.8% 0 0);
        --color-neutral-500: oklch(55.6% 0 0);
        --color-neutral-600: oklch(43.9% 0 0);
        --color-neutral-700: oklch(37.1% 0 0);
        --color-neutral-800: oklch(26.9% 0 0);
        --color-neutral-900: oklch(20.5% 0 0);
        --color-neutral-950: oklch(14.5% 0 0);
        --color-stone-50: oklch(98.5% .001 106.423);
        --color-stone-100: oklch(97% .001 106.424);
        --color-stone-200: oklch(92.3% .003 48.717);
        --color-stone-300: oklch(86.9% .005 56.366);
        --color-stone-400: oklch(70.9% .01 56.259);
        --color-stone-500: oklch(55.3% .013 58.071);
        --color-stone-600: oklch(44.4% .011 73.639);
        --color-stone-700: oklch(37.4% .01 67.558);
        --color-stone-800: oklch(26.8% .007 34.298);
        --color-stone-900: oklch(21.6% .006 56.043);
        --color-stone-950: oklch(14.7% .004 49.25);
        --color-black: #000;
        --color-white: #fff;
        --spacing: .25rem;
        --breakpoint-sm: 700px;
        --breakpoint-md: 1000px;
        --breakpoint-lg: 1200px;
        --breakpoint-xl: 1400px;
        --breakpoint-2xl: 1600px;
        --container-3xs: 16rem;
        --container-2xs: 18rem;
        --container-xs: 20rem;
        --container-sm: 24rem;
        --container-md: 28rem;
        --container-lg: 32rem;
        --container-xl: 36rem;
        --container-2xl: 42rem;
        --container-3xl: 48rem;
        --container-4xl: 56rem;
        --container-5xl: 64rem;
        --container-6xl: 72rem;
        --container-7xl: 80rem;
        --text-xs: clamp(0.625rem, 0.5893rem + 0.1786vw, 0.75rem);
        --text-xs--line-height: 1.25;
        --text-sm: clamp(0.75rem, 0.7143rem + 0.1786vw, 0.875rem);
        --text-sm--line-height: 1.25;
        --text-base: 1rem;
        --text-base--line-height: 1.5;
        --text-lg: clamp(1.125rem, 1.0536rem + 0.3571vw, 1.375rem);
        --text-lg--line-height: 1.25;
        --text-xl: clamp(1.375rem, 1.2321rem + 0.7143vw, 1.875rem);
        --text-xl--line-height: 1;
        --text-2xl: 1.5rem;
        --text-2xl--line-height: 1.33333;
        --text-3xl: 1.875rem;
        --text-3xl--line-height: 1.2;
        --text-4xl: 2.25rem;
        --text-4xl--line-height: 1.11111;
        --text-5xl: 3rem;
        --text-5xl--line-height: 1;
        --text-6xl: 3.75rem;
        --text-6xl--line-height: 1;
        --text-7xl: 4.5rem;
        --text-7xl--line-height: 1;
        --text-8xl: 6rem;
        --text-8xl--line-height: 1;
        --text-9xl: 8rem;
        --text-9xl--line-height: 1;
        --font-weight-thin: 100;
        --font-weight-extralight: 200;
        --font-weight-light: 300;
        --font-weight-normal: 400;
        --font-weight-medium: 500;
        --font-weight-semibold: 600;
        --font-weight-bold: 700;
        --font-weight-extrabold: 800;
        --font-weight-black: 900;
        --tracking-tighter: -.05em;
        --tracking-tight: -.025em;
        --tracking-normal: 0em;
        --tracking-wide: .025em;
        --tracking-wider: .05em;
        --tracking-widest: .1em;
        --leading-tight: 1.25;
        --leading-snug: 1.375;
        --leading-normal: 1.5;
        --leading-relaxed: 1.625;
        --leading-loose: 2;
        --radius-xs: 4px;
        --radius-sm: 8px;
        --radius-md: 12px;
        --radius-lg: 18px;
        --radius-xl: .75rem;
        --radius-2xl: 1rem;
        --radius-3xl: 1.5rem;
        --radius-4xl: 2rem;
        --shadow-2xs: 0 1px #0000000d;
        --shadow-xs: 0 1px 2px 0 #0000000d;
        --shadow-sm: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;
        --shadow-md: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;
        --shadow-lg: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
        --shadow-xl: 0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;
        --shadow-2xl: 0 25px 50px -12px #00000040;
        --inset-shadow-2xs: inset 0 1px #0000000d;
        --inset-shadow-xs: inset 0 1px 1px #0000000d;
        --inset-shadow-sm: inset 0 2px 4px #0000000d;
        --drop-shadow-xs: 0 1px 1px #0000000d;
        --drop-shadow-sm: 0 1px 2px #00000026;
        --drop-shadow-md: 0 3px 3px #0000001f;
        --drop-shadow-lg: 0 4px 4px #00000026;
        --drop-shadow-xl: 0 9px 7px #0000001a;
        --drop-shadow-2xl: 0 25px 25px #00000026;
        --text-shadow-2xs: 0px 1px 0px #00000026;
        --text-shadow-xs: 0px 1px 1px #0003;
        --text-shadow-sm: 0px 1px 0px #00000013, 0px 1px 1px #00000013, 0px 2px 2px #00000013;
        --text-shadow-md: 0px 1px 1px #0000001a, 0px 1px 2px #0000001a, 0px 2px 4px #0000001a;
        --text-shadow-lg: 0px 1px 2px #0000001a, 0px 3px 2px #0000001a, 0px 4px 8px #0000001a;
        --ease-in: cubic-bezier(.4, 0, 1, 1);
        --ease-out: cubic-bezier(0, 0, .2, 1);
        --ease-in-out: cubic-bezier(.4, 0, .2, 1);
        --animate-spin: spin 1s linear infinite;
        --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1)infinite;
        --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1)infinite;
        --animate-bounce: bounce 1s infinite;
        --blur-xs: 4px;
        --blur-sm: 8px;
        --blur-md: 12px;
        --blur-lg: 16px;
        --blur-xl: 24px;
        --blur-2xl: 40px;
        --blur-3xl: 64px;
        --perspective-dramatic: 100px;
        --perspective-near: 300px;
        --perspective-normal: 500px;
        --perspective-midrange: 800px;
        --perspective-distant: 1200px;
        --aspect-video: 16/9;
        --default-transition-duration: .15s;
        --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
        --default-font-family: var(--font-sans);
        --default-mono-font-family: var(--font-mono);
        --text-heading-3xl: clamp(4rem, 2.5rem + 7.5vw, 9.25rem);
        --text-heading-3xl--letter-spacing: -.05em;
        --text-heading-3xl--line-height: 1;
        --text-heading-2xl: clamp(2.0625rem, 1.2946rem + 3.8393vw, 4.75rem);
        --text-heading-2xl--letter-spacing: -.05em;
        --text-heading-2xl--line-height: 1;
        --text-heading-xl: clamp(2.375rem, 1.7679rem + 3.0357vw, 4.5rem);
        --text-heading-xl--letter-spacing: -.05em;
        --text-heading-xl--line-height: 1;
        --text-heading-lg: clamp(2.125rem, 1.5893rem + 2.6786vw, 4rem);
        --text-heading-lg--letter-spacing: -.05em;
        --text-heading-lg--line-height: 1;
        --text-heading-md: clamp(1.5rem, 1.0714rem + 2.1429vw, 3rem);
        --text-heading-md--letter-spacing: -.05em;
        --text-heading-md--line-height: 1;
        --text-heading-sm: clamp(1.5rem, 1.3214rem + 0.8929vw, 2.125rem);
        --text-heading-sm--letter-spacing: -.05em;
        --text-heading-sm--line-height: 1.2;
        --text-heading-xs: clamp(1.375rem, 1.3393rem + 0.1786vw, 1.5rem);
        --text-heading-xs--letter-spacing: -.03em;
        --text-heading-xs--line-height: 1.25;
        --text-heading-2xs: clamp(1.125rem, 1.0893rem + 0.1786vw, 1.25rem);
        --text-heading-2xs--letter-spacing: 0;
        --text-heading-2xs--line-height: 1.25;
        --text-xl--letter-spacing: 0;
        --text-lg--letter-spacing: 0;
        --text-md: clamp(0.875rem, 0.8393rem + 0.1786vw, 1rem);
        --text-md--letter-spacing: 0;
        --text-md--line-height: 1.25;
        --text-sm--letter-spacing: 0;
        --text-xs--letter-spacing: 0;
        --text-input: clamp(0.875rem, 1.0357rem + -0.1786vw, 1rem);
        --text-input--letter-spacing: 0;
        --text-input--line-height: 1.25;
        --color-grey: #d9d9d9;
        --color-grey-dark: #c1c1c1;
        --color-grey-light: #f4f4f4;
        --color-grey-lighter: #f7f7f7;
        --color-red: #fa5c40;
        --color-blue: #29525e;
        --color-beige: #faf6ef;
        --color-sand: #f2efea;
        --color-green: #3fb67b;
        --color-accent: var(--color-red);
        --color-placeholder: var(--color-grey-lighter);
        --color-image-placeholder: var(--color-beige);
        --color-border: var(--color-grey);
        --color-link: var(--color-red);
        --color-link-focus: var(--color-red);
        --selection-text-color: var(--color-red);
        --selection-background-color: var(--color-grey);
        --color-facebook: #3b5998;
        --color-instagram: #e1306c;
        --color-youtube: #cd201f;
        --color-twitter: #1da1f2;
        --spacing-unit-sm: 16px;
        --spacing-unit-md: 24px;
        --spacing-fluid-xs: clamp(1.25rem, 1.0714rem + 0.8929vw, 1.875rem);
        --spacing-fluid-sm: clamp(1.875rem, 1.6964rem + 0.8929vw, 2.5rem);
        --spacing-fluid-md: clamp(2.5rem, 2.2857rem + 1.0714vw, 3.25rem);
        --spacing-fluid-lg: clamp(3.25rem, 2.75rem + 2.5vw, 5rem);
        --spacing-fluid-xl: clamp(5rem, 4.6429rem + 1.7857vw, 6.25rem);
        --spacing-fluid-2xl: clamp(6.25rem, 5.3571rem + 4.4643vw, 9.375rem);
        --spacing-fluid-3xl: clamp(9.375rem, 8.4821rem + 4.4643vw, 12.5rem);
        --spacing-fluid-4xl: clamp(12.5rem, 11.6071rem + 4.4643vw, 15.625rem);
        --breakpoint-2xs: 340px;
        --breakpoint-xs: 500px;
        --breakpoint-3xl: 1800px;
        --breakpoint-4xl: 2000px;
        --breakpoint-5xl: 2400px;
        --ease-power1-in: cubic-bezier(.55, .085, .68, .53);
        --ease-power1-out: cubic-bezier(.25, .46, .45, .94);
        --ease-power1-inOut: cubic-bezier(.455, .03, .515, .955);
        --ease-power2-in: cubic-bezier(.55, .055, .675, .19);
        --ease-power2-out: cubic-bezier(.215, .61, .355, 1);
        --ease-power2-inOut: cubic-bezier(.645, .045, .355, 1);
        --ease-power3-in: cubic-bezier(.895, .03, .685, .22);
        --ease-power3-out: cubic-bezier(.165, .84, .44, 1);
        --ease-power3-inOut: cubic-bezier(.77, 0, .175, 1);
        --ease-power4-in: cubic-bezier(.755, .05, .855, .06);
        --ease-power4-out: cubic-bezier(.23, 1, .32, 1);
        --ease-power4-inOut: cubic-bezier(.86, 0, .07, 1);
        --ease-expo-in: cubic-bezier(.95, .05, .795, .035);
        --ease-expo-out: cubic-bezier(.19, 1, .22, 1);
        --ease-expo-inOut: cubic-bezier(1, 0, 0, 1);
        --ease-back-in: cubic-bezier(.6, -.28, .735, .045);
        --ease-back-out: cubic-bezier(.175, .885, .32, 1.275);
        --ease-back-inOut: cubic-bezier(.68, -.55, .265, 1.55);
        --ease-sine-in: cubic-bezier(.47, 0, .745, .715);
        --ease-sine-out: cubic-bezier(.39, .575, .565, 1);
        --ease-sine-inOut: cubic-bezier(.445, .05, .55, .95);
        --ease-circ-in: cubic-bezier(.6, .04, .98, .335);
        --ease-circ-out: cubic-bezier(.075, .82, .165, 1);
        --ease-circ-inOut: cubic-bezier(.785, .135, .15, .86);
        --ease-bounce: cubic-bezier(.17, .67, .3, 1.33);
        --ease-slow-out: cubic-bezier(0, 1, .4, 1);
        --ease-smooth: cubic-bezier(.38, 0, .215, 1);
        --ease: var(--ease-smooth);
        --transition-duration-fast: .15s;
        --transition-duration: .3s;
        --transition-duration-medium: .45s;
        --transition-duration-slow: .6s;
        --transition-duration-slower: .9s;
        --transition-duration-slowest: 1.2s;
        --z-index-loader: 400;
        --z-index-modal: 270;
        --z-index-menu-mobile: 250;
        --z-index-menu: 240;
        --z-index-header-mobile: 230;
        --z-index-header: 210;
        --z-index-preorder: 200;
        --z-index-widget-bar: 180;
        --z-index-above: 1;
        --z-index: 0;
        --z-index-below: -1
    }
}

@layer base {

    *,
    ::backdrop,
    :after,
    :before {
        border: 0 solid;
        box-sizing: border-box;
        margin: 0;
        padding: 0
    }

    ::file-selector-button {
        border: 0 solid;
        box-sizing: border-box;
        margin: 0;
        padding: 0
    }

    :host,
    html {
        -webkit-text-size-adjust: 100%;
        font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
        font-feature-settings: var(--default-font-feature-settings, normal);
        font-variation-settings: var(--default-font-variation-settings, normal);
        line-height: 1.5;
        -moz-tab-size: 4;
        -o-tab-size: 4;
        tab-size: 4;
        -webkit-tap-highlight-color: transparent
    }

    hr {
        border-top-width: 1px;
        color: inherit;
        height: 0
    }

    abbr:where([title]) {
        -webkit-text-decoration: underline dotted;
        text-decoration: underline dotted
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: inherit;
        font-weight: inherit
    }

    a {
        -webkit-text-decoration: inherit;
        text-decoration: inherit
    }

    b,
    strong {
        font-weight: bolder
    }

    code,
    kbd,
    pre,
    samp {
        font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
        font-feature-settings: var(--default-mono-font-feature-settings, normal);
        font-size: 1em;
        font-variation-settings: var(--default-mono-font-variation-settings, normal)
    }

    small {
        font-size: 80%
    }

    sub,
    sup {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline
    }

    sub {
        bottom: -.25em
    }

    sup {
        top: -.5em
    }

    table {
        border-collapse: collapse;
        border-color: inherit;
        text-indent: 0
    }

    :-moz-focusring {
        outline: auto
    }

    progress {
        vertical-align: baseline
    }

    summary {
        display: list-item
    }

    menu,
    ol,
    ul {
        list-style: none
    }

    audio,
    canvas,
    embed,
    iframe,
    img,
    object,
    svg,
    video {
        display: block;
        vertical-align: middle
    }

    img,
    video {
        height: auto;
        max-width: 100%
    }

    button,
    input,
    optgroup,
    select,
    textarea {
        background-color: #0000;
        border-radius: 0;
        color: inherit;
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        opacity: 1
    }

    ::file-selector-button {
        background-color: #0000;
        border-radius: 0;
        color: inherit;
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        opacity: 1
    }

    :where(select:is([multiple], [size])) optgroup {
        font-weight: bolder
    }

    :where(select:is([multiple], [size])) optgroup option {
        padding-inline-start: 20px
    }

    ::file-selector-button {
        margin-inline-end: 4px
    }

    ::-moz-placeholder {
        opacity: 1
    }

    ::placeholder {
        opacity: 1
    }

    @supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px) {
        ::-moz-placeholder {
            color: currentColor
        }

        ::placeholder {
            color: currentColor
        }

        @supports (color:color-mix(in lab, red, red)) {
            ::-moz-placeholder {
                color: color-mix(in oklab, currentcolor 50%, transparent)
            }

            ::placeholder {
                color: color-mix(in oklab, currentcolor 50%, transparent)
            }
        }
    }

    textarea {
        resize: vertical
    }

    ::-webkit-search-decoration {
        -webkit-appearance: none
    }

    ::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit
    }

    ::-webkit-datetime-edit {
        display: inline-flex
    }

    ::-webkit-datetime-edit-fields-wrapper {
        padding: 0
    }

    ::-webkit-datetime-edit,
    ::-webkit-datetime-edit-year-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-day-field,
    ::-webkit-datetime-edit-month-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-hour-field,
    ::-webkit-datetime-edit-minute-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-millisecond-field,
    ::-webkit-datetime-edit-second-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-meridiem-field {
        padding-block: 0
    }

    :-moz-ui-invalid {
        box-shadow: none
    }

    button,
    input:where([type=button], [type=reset], [type=submit]) {
        -webkit-appearance: button;
        -moz-appearance: button;
        appearance: button
    }

    ::file-selector-button {
        -webkit-appearance: button;
        -moz-appearance: button;
        appearance: button
    }

    ::-webkit-inner-spin-button,
    ::-webkit-outer-spin-button {
        height: auto
    }

    [hidden]:where(:not([hidden=until-found])) {
        display: none !important
    }

    @font-face {
        font-display: swap;
        font-family: F37Bolton;
        font-style: normal;
        font-weight: 400;
        src: url(../fonts/F37Bolton-Regular.woff2)format("woff2")
    }

    @font-face {
        font-display: swap;
        font-family: F37Bolton;
        font-style: normal;
        font-weight: 700;
        src: url(../fonts/F37Bolton-Bold.woff2)format("woff2")
    }

    html {
        background-color: var(--color-white);
        color: var(--color-black);
        font-size: var(--font-size);
        line-height: var(--line-height)
    }

    @media (max-width:1440px) {
        html {
            font-size: var(--font-size)
        }
    }

    @media (min-width:1440px) {
        html {
            font-size: clamp(1rem, .6604rem + .3774vw, 1.25rem)
        }
    }

    html.is-loading,
    html.is-transitioning {
        cursor: wait
    }

    html.has-modal-open {
        overflow: hidden;
        scrollbar-gutter: stable
    }

    ::-moz-selection {
        background-color: var(--selection-background-color);
        color: var(--selection-text-color);
        text-shadow: none
    }

    ::selection {
        background-color: var(--selection-background-color);
        color: var(--selection-text-color);
        text-shadow: none
    }

    a {
        color: inherit
    }

    button {
        cursor: pointer
    }

    .grecaptcha-badge {
        display: none;
        visibility: hidden
    }

    :focus-visible:not(input):not(textarea):not(select) {
        outline-color: var(--focus-color, var(--color-accent));
        outline-offset: var(--focus-offset, 5px);
        outline-style: var(--focus-style, auto);
        outline-width: var(--focus-width, 10px)
    }

    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible {
        outline-color: var(--focus-color, var(--color-accent));
        outline-offset: var(--focus-offset, 0);
        outline-style: var(--focus-style, auto);
        outline-width: var(--focus-width, 10px)
    }

    [type=button]:-moz-focusring,
    button:-moz-focusring {
        outline-offset: var(--focus-offset, 5px);
        outline-style: var(--focus-style, auto);
        outline-width: var(--focus-width, 10px)
    }

    [type=reset]:-moz-focusring,
    [type=submit]:-moz-focusring {
        outline-offset: var(--focus-offset, 5px);
        outline-style: var(--focus-style, auto);
        outline-width: var(--focus-width, 10px)
    }

    main:focus-visible {
        outline-offset: -10px !important
    }

    html.is-webkit body:focus {
        outline: none
    }

    @keyframes slideInUp {
        0% {
            opacity: 0;
            transform: translate3d(0, var(--spacing-fluid-xl), 0)
        }

        to {
            opacity: 1;
            transform: translate(0)
        }
    }

    @keyframes rail {
        0% {
            transform: translate(0)
        }

        to {
            transform: translate(-100%)
        }
    }
}

@layer components {
    :root {
        --_icon-width: 1rem;
        --_icon-ratio: 1
    }

    .c-icon {
        fill: currentColor;
        display: inline-block;
        vertical-align: middle
    }

    .c-icon svg {
        --_icon-height: calc(var(--icon-width, var(--_icon-width))*1/(var(--icon-ratio, var(--_icon-ratio))));
        height: var(--icon-height, var(--_icon-height));
        width: var(--icon-width, var(--_icon-width));
        fill: currentColor;
        display: block
    }

    .c-icon.-pill {
        align-items: center;
        background-color: var(--color-white);
        border-radius: 50%;
        color: var(--color-black);
        display: flex;
        height: 32px;
        justify-content: center;
        width: 32px
    }

    .svg-power,
    .svg-sun {
        --_icon-width: 1.75rem
    }

    .svg-chevron-down,
    .svg-chevron-up {
        --_icon-width: 0.75rem;
        --_icon-ratio: 12/7
    }

    .svg-chevron-left,
    .svg-chevron-right {
        --_icon-width: 0.4375rem;
        --_icon-ratio: 7/12
    }

    .svg-close,
    .svg-facebook,
    .svg-instagram,
    .svg-linkedin,
    .svg-tiktok,
    .svg-twitter,
    .svg-x,
    .svg-youtube,
    .svg-kuaishou,
    .svg-douyin,
    .svg-xiaohongshu,
    .svg-baidu {
        --_icon-width: 1.25rem
    }

    .svg-logo {
        --_icon-width: 9.8125rem;
        --_icon-ratio: 157/42
    }

    .svg-pause {
        --_icon-width: 0.625rem;
        --_icon-ratio: 10/15
    }

    .svg-play {
        --_icon-width: 0.75rem;
        --_icon-ratio: 12/14
    }

    .svg-sort {
        --_icon-width: 0.75rem
    }

    .svg-appliances,
    .svg-sun {
        --_icon-width: 1.75rem
    }

    .svg-symbol {
        --_icon-width: 1.4375rem
    }

    .svg-symbol-double {
        --_icon-width: 5rem;
        --_icon-ratio: 28/13
    }

    .svg-clock {
        --_icon-width: 12.5rem
    }

    .svg-timeline-connection {
        --_icon-width: 5.8125rem;
        --_icon-ratio: 93/274
    }

    .svg-360 {
        --_icon-width: 1.5rem
    }

    .svg-pause-sm,
    .svg-play-sm {
        --_icon-width: 0.625rem
    }

    :root {
        --button-color: var(--color-black);
        --button-background: var(--color-grey);
        --button-hover-color: var(--color-white);
        --button-hover-background: var(--color-red);
        --button-active-color: var(--color-white);
        --button-active-background: var(--color-red);
        --button-radius: calc(var(--button-height)/2);
        --button-padding: 0 calc(var(--spacing)*6);
        --button-gap: calc(var(--spacing)*4)
    }

    :root .c-button.-color-white {
        --button-color: var(--color-black);
        --button-background: var(--color-white)
    }

    :root .c-button.-color-grey {
        --button-color: var(--color-black);
        --button-background: var(--color-grey-lighter);
        --button-hover-background: var(--color-red);
        --button-active-background: var(--color-black)
    }

    :root .c-button.-color-beige {
        --button-color: var(--color-black);
        --button-background: var(--color-beige);
        --button-hover-background: var(--color-red)
    }

    :root .c-button.-color-black {
        --button-color: var(--color-white);
        --button-background: var(--color-black);
        --button-hover-background: var(--color-red)
    }

    :root .c-button.-color-red {
        --button-color: var(--color-white);
        --button-background: var(--color-red);
        --button-hover-background: #e1533a
    }

    @supports (color:color-mix(in lab, red, red)) {
        :root .c-button.-color-red {
            --button-hover-background: color-mix(in srgb, var(--color-red), var(--color-black)10%)
        }
    }

    :root .c-button.-blur {
        --button-color: var(--color-white);
        --button-background: #0006;
        --button-hover-background: var(--color-red)
    }

    :root .c-button.-secondary {
        --button-radius: var(--radius-sm)
    }

    :root .c-button.-large {
        --button-height: 3.125rem;
        --button-radius: 6.25rem
    }

    @media not all and (min-width:700px) {
        :root .c-button.-large {
            --button-padding: 0 3rem
        }
    }

    @media (min-width:700px) {
        :root .c-button.-large {
            --button-padding: 0 4rem
        }
    }

    :root .c-button.-icon {
        --button-padding: 0
    }

    .c-button {
        border-radius: var(--button-radius);
        color: var(--button-color);
        display: inline-flex
    }

    .c-button.-disabled,
    .c-button:disabled,
    .c-button[disabled] {
        opacity: .5;
        pointer-events: none
    }

    .c-button.is-active,
    .c-button_inner {
        pointer-events: none
    }

    .c-button_inner {
        align-items: center;
        background-color: var(--button-background);
        border-radius: var(--button-radius);
        display: flex;
        gap: var(--button-gap);
        height: var(--button-height);
        justify-content: center;
        min-width: var(--button-height);
        overflow: hidden;
        padding: var(--button-padding);
        transition: color var(--transition-duration-fast), background-color var(--transition-duration-fast);
        width: 100%
    }

    @media (hover:hover) {

        .c-button:focus-visible .c-button_inner,
        .c-button:hover .c-button_inner,
        [data-button-parent]:focus-visible .c-button_inner,
        [data-button-parent]:hover .c-button_inner {
            background-color: var(--button-hover-background);
            color: var(--button-hover-color);
            transition-delay: 0s
        }
    }

    .c-button.is-active .c-button_inner {
        background-color: var(--button-active-background);
        color: var(--button-active-color)
    }

    .c-button.-reverse .c-button_inner {
        flex-direction: row-reverse
    }

    .c-button.-blur .c-button_inner {
        backdrop-filter: blur(22px)
    }

    .c-button_label-container {
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height));
        position: relative
    }

    @media (hover:hover) {
        .c-button_label-container:before {
            clip-path: inset(0 0 100%);
            content: attr(data-label);
            left: 0;
            position: absolute;
            top: 0;
            transform: translateY(100%)
        }

        html.is-ready .c-button_label-container:before {
            transition: transform var(--transition-duration)var(--ease-power4-out), clip-path var(--transition-duration)var(--ease-power4-out)
        }

        .c-button:focus-visible .c-button_label-container:before,
        .c-button:hover .c-button_label-container:before,
        [data-button-parent]:focus-visible .c-button_label-container:before,
        [data-button-parent]:hover .c-button_label-container:before {
            clip-path: inset(0);
            transform: translate(0);
            transition-delay: .1s
        }
    }

    .c-button_label {
        clip-path: inset(0);
        display: inline-block
    }

    @media (hover:hover) {
        html.is-ready .c-button_label {
            transition: transform var(--transition-duration)var(--ease-power4-out), clip-path var(--transition-duration)var(--ease-power4-out);
            transition-delay: .1s
        }

        .c-button:focus-visible .c-button_label,
        .c-button:hover .c-button_label,
        [data-button-parent]:focus-visible .c-button_label,
        [data-button-parent]:hover .c-button_label {
            clip-path: inset(100% 0 0);
            transform: translateY(-100%);
            transition-delay: 0s
        }
    }

    .c-image {
        position: relative
    }

    .c-image.-contain,
    .c-image.-cover {
        height: 100%;
        width: 100%
    }

    .c-image.-parallax {
        overflow: hidden
    }

    .c-image:not(.-transparent) {
        background-color: var(--color-image-placeholder)
    }

    .c-image.-rounded {
        clip-path: inset(0 round var(--radius-md))
    }

    .c-image.-overlay:before {
        background-color: var(--color-black);
        content: "";
        inset: 0;
        opacity: var(--overlay-opacity, .2);
        position: absolute;
        z-index: 1
    }

    .c-image_inner {
        display: block
    }

    .c-image.-contain .c-image_inner,
    .c-image.-cover .c-image_inner {
        inset: 0;
        position: absolute
    }

    .c-image_parallax {
        height: 100%;
        width: 100%
    }

    .c-image_img {
        width: 100%
    }

    .c-image.-cover .c-image_img {
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

    .c-image.-contain .c-image_img {
        height: 100%;
        -o-object-fit: contain;
        object-fit: contain
    }

    html:not(.is-mobile) .c-image.-parallax .c-image_img {
        transform: scale3d(var(--parallax-scale), var(--parallax-scale), 1)
    }

    .c-accordion {
        display: block
    }

    .c-accordion+.c-accordion {
        margin-top: -1px
    }

    @media not all and (min-width:700px) {
        .c-accordion {
            --hover-offset: 5px
        }
    }

    @media (min-width:700px) {
        .c-accordion {
            --hover-offset: calc(var(--spacing)*2)
        }
    }

    .c-accordion_details {
        margin-left: calc(var(--hover-offset)*-1);
        padding-inline: var(--hover-offset);
        position: relative;
        width: calc(100% + var(--hover-offset)*2)
    }

    .c-accordion_details:before {
        background-color: var(--color-border);
        bottom: 0;
        content: "";
        height: 1px;
        left: var(--hover-offset);
        position: absolute;
        right: var(--hover-offset)
    }

    .c-accordion_summary {
        --focus-offset: 2px;
        align-items: center;
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        list-style: none;
        padding: calc(var(--spacing)*3)0;
        position: relative;
        z-index: 0
    }

    .c-accordion_summary:before {
        background-color: var(--color-grey-light);
        border-radius: var(--radius-sm);
        bottom: 0;
        content: "";
        left: calc(var(--hover-offset)*-1);
        opacity: 0;
        position: absolute;
        right: calc(var(--hover-offset)*-1);
        top: 0;
        transition: opacity var(--transition-duration-fast);
        z-index: -1
    }

    .c-accordion_summary::marker {
        display: none
    }

    .c-accordion_summary::-webkit-details-marker {
        display: none
    }

    .c-accordion_details.is-active .c-accordion_summary:before {
        opacity: 1
    }

    @media (hover:hover) {
        .c-accordion_summary:hover:hover:before {
            opacity: 1
        }
    }

    .c-accordion_details.is-active .c-accordion_icon {
        transform: rotate(45deg)
    }

    html.is-ready .c-accordion_icon {
        transition: transform var(--transition-duration)var(--ease-out)
    }

    .c-tile-article {
        display: flex;
        flex-direction: column;
        position: relative;
        row-gap: calc(var(--spacing)*7)
    }

    .c-tile-article_image {
        aspect-ratio: 8/5
    }

    .c-tile-article_content {
        display: flex;
        flex-direction: column;
        max-width: 25rem;
        row-gap: calc(var(--spacing)*4)
    }

    .c-tile-event {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        position: relative;
        row-gap: calc(var(--spacing)*2)
    }

    @container (min-width:1000px) {
        .c-tile-event {
            border-bottom: 1px solid var(--color-border);
            grid-template-columns: repeat(2, 1fr);
            padding: calc(var(--spacing)*8)0
        }
    }

    .c-tile-event_head {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: flex;
        row-gap: var(--spacing-fluid-xs)
    }

    @container (max-width:1000px) {
        .c-tile-event_head {
            flex-direction: column-reverse
        }
    }

    @container (min-width:1000px) {
        .c-tile-event_head {
            justify-content: space-between
        }
    }

    .c-tile-event_image {
        aspect-ratio: 8/5
    }

    @container (min-width:1000px) {
        .c-tile-event_image {
            flex: 0 1 calc((100% + var(--grid-gutter))/2 - var(--grid-gutter))
        }
    }

    .c-tile-event_content {
        align-items: flex-start;
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: flex;
        row-gap: var(--spacing-fluid-xs)
    }

    @container (max-width:1000px) {
        .c-tile-event_content {
            flex-direction: column
        }
    }

    @container (min-width:1000px) {
        .c-tile-event_content {
            justify-content: space-between
        }
    }

    .c-tile-event_date {
        font-size: var(--text-sm);
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-sm--line-height));
        margin-bottom: var(--grid-gutter)
    }

    @container (min-width:1000px) {
        .c-tile-event_heading {
            flex: 0 1 calc((100% + var(--grid-gutter))/2 - var(--grid-gutter))
        }
    }

    .c-tile-event_title {
        font-size: var(--text-heading-xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-xs--line-height));
        max-width: 400px
    }

    .c-tile-job {
        align-items: flex-start;
        border-bottom: 1px solid var(--color-border);
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: flex;
        flex-direction: column;
        padding: calc(var(--spacing)*8)0;
        position: relative;
        row-gap: calc(var(--spacing)*6)
    }

    @container (min-width:800px) {
        .c-tile-job {
            flex-direction: row;
            justify-content: space-between
        }
    }

    .c-tile-job_inner {
        -moz-column-gap: calc(var(--grid-gutter)*2);
        column-gap: calc(var(--grid-gutter)*2);
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*5);
        width: 100%
    }

    @container (min-width:800px) {
        .c-tile-job_inner {
            width: calc(var(--vw, 1vw)*100*.83333 - var(--grid-margin, 0px)*2*.83333 - var(--grid-gutter, 0px)*.16667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-tile-job_details {
        display: flex
    }

    @container (max-width:799px) {
        .c-tile-job_details {
            -moz-column-gap: var(--spacing-unit-sm);
            column-gap: var(--spacing-unit-sm)
        }
    }

    @container (min-width:800px) {
        .c-tile-job_details {
            -moz-column-gap: var(--grid-gutter);
            column-gap: var(--grid-gutter)
        }

        .c-tile-job_location {
            flex: 0 0 calc(var(--vw, 1vw)*100*0.16667 - var(--grid-margin, 0px)*2*0.16667 - var(--grid-gutter, 0px)*0.83333 + var(--grid-gutter, 0px)*0)
        }

        .c-tile-job_category {
            flex: 0 0 calc(var(--vw, 1vw)*100*0.5 - var(--grid-margin, 0px)*2*0.5 - var(--grid-gutter, 0px)*0.5 + var(--grid-gutter, 0px)*0)
        }

        .c-tile-job_workplace {
            flex: 0 0 calc(var(--vw, 1vw)*100*0.16667 - var(--grid-margin, 0px)*2*0.16667 - var(--grid-gutter, 0px)*0.83333 + var(--grid-gutter, 0px)*0)
        }

        .c-tile-job_title {
            margin-left: calc(var(--vw, 1vw)*100*.16667 - var(--grid-margin, 0px)*2*.16667 - var(--grid-gutter, 0px)*.83333 + var(--grid-gutter, 0px)*1)
        }
    }

    .c-tile-product {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*5)
    }

    .c-tile-product_image {
        aspect-ratio: 8/5
    }

    .c-tile-product_head {
        align-items: baseline;
        display: flex;
        gap: calc(var(--spacing)*3)
    }

    .c-tile-product_details {
        width: 100%
    }

    .c-tile-product_specifications {
        display: flex;
        flex-direction: column
    }

    .c-tile-product_specifications_item {
        align-items: baseline;
        border-bottom: 1px solid var(--color-border);
        display: flex;
        gap: calc(var(--spacing)*2);
        padding: calc(var(--spacing)*3)0
    }

    .c-tile-feature {
        --tile-aspect-ratio: 8/5;
        aspect-ratio: var(--tile-aspect-ratio);
        color: var(--color-white);
        position: relative;
        z-index: 0
    }

    @container (max-width:399px) {
        .c-tile-feature {
            --tile-aspect-ratio: 7/10;
            padding: calc(var(--spacing)*4)
        }
    }

    @container (min-width:400px) {
        .c-tile-feature {
            padding: calc(var(--spacing)*6)
        }
    }

    .c-tile-feature_image {
        --overlay-opacity: .3;
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-tile-feature_inner {
        display: flex;
        height: 100%;
        justify-content: space-between
    }

    @container (max-width:399px) {
        .c-tile-feature_inner {
            align-items: flex-start;
            flex-direction: column;
            row-gap: calc(var(--spacing)*2)
        }
    }

    @container (min-width:400px) {
        .c-tile-feature_inner {
            align-items: flex-end;
            -moz-column-gap: var(--grid-gutter);
            column-gap: var(--grid-gutter)
        }
    }

    .c-tile-feature_content {
        display: flex;
        flex-direction: column;
        justify-content: space-between
    }

    @container (max-width:399px) {
        .c-tile-feature_content {
            row-gap: calc(var(--spacing)*6)
        }
    }

    @container (min-width:400px) {
        .c-tile-feature_content {
            height: 100%
        }
    }

    .c-tile-feature_title {
        max-width: 18.75rem
    }

    .c-tile-feature_button:before {
        content: "";
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-tile-page {
        aspect-ratio: 9/5;
        clip-path: inset(0 round var(--radius-md));
        color: var(--color-white);
        min-width: 0;
        padding: calc(var(--spacing)*4);
        position: relative;
        width: 100%;
        z-index: 0
    }

    .c-tile-page_image {
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-tile-page_inner {
        height: 100%
    }

    .c-tile-page_content,
    .c-tile-page_inner {
        display: flex;
        flex-direction: column;
        justify-content: space-between
    }

    .c-tile-page_content {
        max-width: 18.75rem
    }

    .c-tile-inclusion {
        background-color: var(--color-white);
        border-radius: var(--radius-sm);
        color: var(--color-black);
        display: grid;
        min-height: 140px;
        padding: calc(var(--spacing)*3);
        row-gap: calc(var(--spacing)*6)
    }

    .c-tile-inclusion:not(.-included) {
        padding-bottom: calc(var(--spacing)*10)
    }

    @container (min-width:500px) {
        .c-tile-inclusion {
            -moz-column-gap: var(--grid-gutter);
            column-gap: var(--grid-gutter);
            grid-template-columns: repeat(2, 1fr)
        }
    }

    .c-tile-inclusion_included {
        align-items: center;
        background-color: var(--color-white);
        border-radius: 100px;
        color: var(--color-black);
        display: flex;
        gap: calc(var(--spacing)*2);
        justify-self: start;
        margin-bottom: calc(var(--spacing)*6);
        padding: calc(var(--spacing)*2)calc(var(--spacing)*3)
    }

    @container (min-width:500px) {
        .c-tile-inclusion_included {
            grid-column: 1/-1
        }
    }

    .c-tile-inclusion_head {
        display: flex;
        flex-direction: column;
        max-width: 12.5rem;
        row-gap: calc(var(--spacing)*3)
    }

    .c-tile-inclusion_list {
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*1)
    }

    .c-tile-addon {
        background-color: var(--color-white);
        clip-path: inset(0 round var(--radius-sm));
        color: var(--color-black);
        display: grid
    }

    @container (min-width:600px) {
        .c-tile-addon {
            grid-template-columns: repeat(2, 1fr)
        }
    }

    .c-tile-addon_visual {
        aspect-ratio: 5/3;
        position: relative
    }

    .c-tile-addon_video {
        inset: 0;
        position: absolute
    }

    .c-tile-addon_content {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: calc(var(--spacing)*3);
        row-gap: calc(var(--spacing)*6)
    }

    .c-tile-addon_head {
        display: flex;
        flex-direction: column;
        max-width: 12.5rem;
        row-gap: calc(var(--spacing)*3)
    }

    .c-tile-addon_footer {
        align-items: flex-end;
        display: flex;
        justify-content: space-between
    }

    .c-tile-info {
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*4)
    }

    @container (min-width:500px) {
        .c-tile-info.-horizontal {
            -moz-column-gap: calc(var(--spacing)*6);
            column-gap: calc(var(--spacing)*6);
            flex-direction: row
        }
    }

    .c-tile-info_visual {
        aspect-ratio: 260/160;
        background-color: var(--color-placeholder);
        clip-path: inset(0 round var(--radius-sm));
        position: relative
    }

    .c-tile-info.-horizontal .c-tile-info_visual {
        flex: 0 0 45%
    }

    .c-tile-info_video {
        inset: 0;
        position: absolute
    }

    .c-tile-info_inner {
        display: flex;
        flex: auto;
        flex-direction: column;
        row-gap: calc(var(--spacing)*6)
    }

    .c-tile-timeline {
        background-color: var(--color-white);
        border-radius: var(--radius-sm);
        display: flex;
        flex-direction: column;
        padding: calc(var(--spacing)*1);
        row-gap: calc(var(--spacing)*12)
    }

    @media not all and (min-width:1000px) {
        .c-tile-timeline {
            width: 100%
        }
    }

    @media (min-width:1000px) {
        .c-tile-timeline {
            width: max(calc(var(--vw, 1vw)*100*.25 - var(--grid-margin, 0px)*2*.25 - var(--grid-gutter, 0px)*.75 + var(--grid-gutter, 0px)*0), 280px)
        }
    }

    .c-tile-timeline_inner {
        display: flex;
        flex-direction: column;
        padding: calc(var(--spacing)*3);
        row-gap: calc(var(--spacing)*4)
    }

    .c-tile-timeline_image {
        aspect-ratio: 260/160
    }

    .c-tile-marker {
        background-color: var(--color-white);
        clip-path: inset(0 round var(--radius-md));
        color: var(--color-black);
        display: flex;
        flex-direction: column;
        overflow: auto
    }

    .c-tile-marker_image {
        aspect-ratio: 7/4;
        position: relative
    }

    .c-tile-marker_inner {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        gap: calc(var(--spacing)*6);
        justify-content: space-between;
        padding: calc(var(--spacing)*2)
    }

    .c-tile-marker_content {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*1)
    }

    .c-tile-marker_footer {
        border-top: 1px solid var(--color-grey-light);
        display: flex;
        padding: calc(var(--spacing)*4)calc(var(--spacing)*2)calc(var(--spacing)*2)
    }

    .c-tile-marker_next {
        align-items: center;
        display: flex;
        gap: calc(var(--spacing)*2)
    }

    .c-tile-marker_next_image {
        height: 50px;
        position: relative;
        width: 80px
    }

    .c-tile-description {
        -moz-column-gap: calc(var(--spacing)*6);
        column-gap: calc(var(--spacing)*6);
        display: flex
    }

    @container (max-width:499px) {
        .c-tile-description {
            flex-direction: column;
            margin-bottom: calc(var(--spacing)*10);
            row-gap: calc(var(--spacing)*3)
        }
    }

    .c-tile-description_image {
        aspect-ratio: 260/160;
        flex: 0 0 45%
    }

    .c-tile-description_inner {
        display: flex;
        flex: auto;
        flex-direction: column;
        row-gap: calc(var(--spacing)*2)
    }

    .c-push-image {
        display: flex
    }

    @media not all and (min-width:1000px) {
        .c-push-image {
            flex-direction: column;
            row-gap: var(--spacing-fluid-md)
        }
    }

    @media (min-width:1000px) {
        .c-push-image {
            align-items: flex-start;
            justify-content: space-between
        }

        .c-push-image:nth-child(odd) {
            flex-direction: row
        }

        .c-push-image:nth-child(2n) {
            flex-direction: row-reverse
        }
    }

    .c-push-image_visual {
        aspect-ratio: 16/10;
        position: relative
    }

    @media (min-width:1000px) {
        .c-push-image_visual {
            width: calc(var(--vw, 1vw)*100*.58333 - var(--grid-margin, 0px)*2*.58333 - var(--grid-gutter, 0px)*.41667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-push-image_content {
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*6)
    }

    @media (min-width:1000px) {
        .c-push-image_content {
            width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-carousel {
        display: flex;
        flex-direction: column;
        padding-bottom: var(--spacing-fluid-sm);
        position: relative;
        row-gap: calc(var(--spacing)*6)
    }

    @media not all and (min-width:700px) {
        .c-carousel[data-items-per-view="3"] {
            --item-width: calc(var(--vw, 1vw)*100*0.75 - var(--grid-margin, 0px)*2*0.75 - var(--grid-gutter, 0px)*0.25 + var(--grid-gutter, 0px)*0)
        }
    }

    @media (min-width:700px) {
        @media not all and (min-width:1000px) {
            .c-carousel[data-items-per-view="3"] {
                --item-width: calc(var(--vw, 1vw)*100*0.5 - var(--grid-margin, 0px)*2*0.5 - var(--grid-gutter, 0px)*0.5 + var(--grid-gutter, 0px)*0)
            }
        }
    }

    @media (min-width:1000px) {
        .c-carousel[data-items-per-view="3"] {
            --item-width: calc(var(--vw, 1vw)*100*0.33333 - var(--grid-margin, 0px)*2*0.33333 - var(--grid-gutter, 0px)*0.66667 + var(--grid-gutter, 0px)*0)
        }
    }

    @media not all and (min-width:700px) {
        .c-carousel[data-items-per-view="2"] {
            --item-width: calc(var(--vw, 1vw)*100*0.75 - var(--grid-margin, 0px)*2*0.75 - var(--grid-gutter, 0px)*0.25 + var(--grid-gutter, 0px)*0)
        }
    }

    @media (min-width:700px) {
        .c-carousel[data-items-per-view="2"] {
            --item-width: calc(var(--vw, 1vw)*100*0.5 - var(--grid-margin, 0px)*2*0.5 - var(--grid-gutter, 0px)*0.5 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-carousel[data-items-per-view="1"] {
        --item-width: 100%
    }

    .c-carousel_container {
        font-size: 0;
        padding-inline: var(--grid-margin);
        scroll-padding-inline: var(--grid-margin);
        scroll-snap-stop: always;
        scroll-snap-type: x mandatory
    }

    .c-carousel_item {
        scroll-snap-align: start;
        width: var(--item-width)
    }

    .c-carousel_item+.c-carousel_item {
        margin-left: var(--grid-gutter)
    }

    .c-carousel_controls {
        align-items: center;
        -moz-column-gap: calc(var(--spacing)*10);
        column-gap: calc(var(--spacing)*10);
        display: flex
    }

    .c-carousel.is-pagination-hidden .c-carousel_controls {
        display: none
    }

    .c-carousel_nav {
        align-items: center;
        -moz-column-gap: calc(var(--spacing)*2);
        column-gap: calc(var(--spacing)*2);
        display: flex
    }

    .c-carousel_pagination {
        align-items: center;
        -moz-column-gap: calc(var(--spacing)*4);
        column-gap: calc(var(--spacing)*4);
        display: flex
    }

    .c-carousel_page {
        display: flex
    }

    .c-carousel_page_button {
        --color-index-border: var(--color-grey-light);
        height: 8px;
        position: relative;
        width: 8px
    }

    .c-carousel_page_button:before {
        border: 4px solid var(--color-index-border);
        border-radius: 50%;
        content: "";
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        transition-duration: var(--transition-duration);
        transition-property: width, height, border;
        transition-timing-function: var(--ease);
        width: 100%
    }

    .c-carousel_page_button:after {
        content: "";
        height: calc(100% + 4px);
        left: -2px;
        position: absolute;
        top: -2px;
        width: calc(100% + 4px)
    }

    .c-carousel_page_button.is-active {
        --color-index-border: var(--color-black)
    }

    .c-carousel_page_button.is-active:before {
        border: 2px solid var(--color-index-border)
    }

    @media (hover:hover) {
        .c-carousel_page_button:hover {
            --color-index-border: var(--color-black)
        }
    }

    .c-header {
        --header-width: calc(var(--vw, 1vw)*100 - var(--header-margin)*2);
        --header-compact-width: 926px;
        --header-offset: calc((var(--header-width) - var(--header-compact-width))/2);
        --header-vertical-offset: 0.625rem;
        --header-logo-width: 12.5rem;
        --header-background-opacity: 60%;
        --header-background-blur: 66px;
        --header-color: var(--color-black);
        color: var(--header-color);
        display: block;
        height: calc(100svh - var(--header-margin)*2);
        left: var(--header-margin);
        pointer-events: none;
        position: fixed;
        top: var(--header-margin);
        width: calc(100% - var(--header-margin)*2);
        z-index: var(--z-index-header)
    }

    .c-header:before {
        background-color: var(--color-black);
        content: "";
        inset: calc(var(--header-margin)*-1);
        opacity: 0;
        position: absolute;
        z-index: 0
    }

    html.is-first-laoded .c-header:before {
        transition: opacity var(--transition-duration)
    }

    .c-header.is-transparent {
        --header-background-opacity: 0%;
        --header-background-blur: 0px;
        --header-color: var(--color-white)
    }

    html.has-dropdown-open .c-header,
    html.has-menu-open .c-header {
        --header-background-opacity: 100%;
        --header-color: var(--color-black)
    }

    html.has-dropdown-open .c-header:before,
    html.has-menu-open .c-header:before {
        opacity: .4;
        pointer-events: auto
    }

    .c-header_container {
        height: var(--header-height)
    }

    .c-header_inner {
        clip-path: inset(0 var(--clip-x)calc(100% - var(--clip-y, var(--header-height)))var(--clip-x)round var(--radius-md));
        inset: 0;
        position: absolute
    }

    @media (min-width:1000px) {
        .c-header[data-header-transparent] .c-header_inner {
            transform: translate3d(0, calc(var(--header-vertical-offset)*(1 - var(--header-scroll-progress, 0))), 0)
        }
    }

    html.is-first-loaded .c-header_inner {
        background-color: #fff
    }

    @supports (color:color-mix(in lab, red, red)) {
        html.is-first-loaded .c-header_inner {
            background-color: color-mix(in oklab, var(--color-white)var(--header-background-opacity), transparent)
        }
    }

    html.is-first-loaded .c-header_inner {
        backdrop-filter: blur(var(--header-background-blur, 0));
        transition: background-color var(--transition-duration), backdrop-filter var(--transition-duration)
    }

    .c-header_bar {
        --focus-offset: -4px;
        display: grid;
        height: var(--header-height);
        width: 100%
    }

    @media not all and (min-width:1000px) {
        .c-header_bar {
            grid-template-columns: 1fr auto 1fr
        }
    }

    @media (min-width:1000px) {
        .c-header_bar {
            grid-template-columns: 1fr var(--header-logo-width)1fr;
            padding-inline: var(--radius-sm)
        }
    }

    .c-header_left {
        align-items: center;
        display: flex;
        grid-column: 1/2;
        padding-right: var(--header-offset)
    }

    @media (min-width:1000px) {
        .c-header_left {
            transform: translate3d(var(--clip-x, 0), 0, 0)
        }
    }

    .c-header_right {
        display: flex;
        grid-column: 3/4;
        justify-content: flex-end;
        padding-left: var(--header-offset)
    }

    @media (min-width:1000px) {
        .c-header_right {
            transform: translate3d(calc(var(--clip-x, 0px)*-1), 0, 0)
        }
    }

    .c-header_menu {
        align-items: center;
        display: flex;
        height: 100%;
        pointer-events: auto;
        position: relative;
        width: calc(var(--spacing)*12)
    }

    @media (min-width:1000px) {
        .c-header_menu {
            margin-right: var(--spacing-fluid-md)
        }
    }

    .c-header_menu_icon {
        left: 50%;
        position: absolute;
        top: 50%
    }

    .c-header_menu_icon.-open {
        transform: translate(-50%, -50%);
        width: 27px
    }

    .c-header_menu_icon.-close {
        height: 22px;
        transform: translate(-50%, -50%)rotate(45deg);
        transform-origin: 50%;
        width: 22px
    }

    .c-header_menu_line {
        --item-delay: 0s;
        display: block;
        height: 1px;
        width: 100%
    }

    .c-header_menu_line:before {
        background-color: currentColor;
        content: "";
        inset: 0;
        position: absolute;
        transform-origin: 0 0;
        transition: transform var(--transition-duration-medium)var(--ease);
        transition-delay: calc(var(--item-delay, 0s) + var(--extra-delay, 0s))
    }

    .c-header_menu_icon.-open .c-header_menu_line {
        --extra-delay: .25s;
        position: relative
    }

    .c-header_menu_icon.-open .c-header_menu_line:first-child {
        --item-delay: .1s;
        margin-bottom: 5px
    }

    html.has-menu-open .c-header_menu_icon.-open .c-header_menu_line:before {
        --extra-delay: 0s;
        transform: scaleX(0);
        transform-origin: 100% 0
    }

    .c-header_menu_icon.-close .c-header_menu_line {
        --extra-delay: .25s;
        position: absolute;
        top: 50%
    }

    .c-header_menu_icon.-close .c-header_menu_line:first-child {
        --item-delay: .1s;
        transform: rotate(90deg);
        transform-origin: 50%
    }

    html:not(.has-menu-open) .c-header_menu_icon.-close .c-header_menu_line:before {
        --extra-delay: 0s;
        transform: scaleX(0);
        transform-origin: 100% 0
    }

    .c-header_nav {
        -moz-column-gap: calc(var(--spacing)*2);
        column-gap: calc(var(--spacing)*2);
        display: flex;
        height: 100%;
        pointer-events: auto
    }

    .c-header_item {
        height: 100%
    }

    .c-header_link {
        align-items: center;
        display: flex;
        height: 100%;
        padding: 0 var(--header-padding)
    }

    .c-header_dropdown {
        height: 100%
    }

    .c-header_logo {
        height: var(--header-height)
    }

    .c-header_logo path {
        fill: currentColor
    }

    .c-header_logo_link {
        align-items: center;
        display: flex;
        height: 100%;
        justify-content: center;
        padding-inline: var(--spacing-unit-sm);
        pointer-events: auto
    }

    @media not all and (min-width:1000px) {
        .c-header_logo_lottie {
            display: none
        }
    }

    @media (min-width:1000px) {
        .c-header_logo_lottie {
            height: 100%;
            transform: scale(calc(1 - (1 - var(--header-scroll-progress, 0))*.35), calc(1 - (1 - var(--header-scroll-progress, 0))*.35))
        }

        .c-header_logo_icon {
            display: none
        }
    }

    .c-push-newsletter {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: flex;
        row-gap: var(--spacing-fluid-lg)
    }

    @media not all and (min-width:1000px) {
        .c-push-newsletter {
            flex-direction: column;
            padding-block: var(--spacing-fluid-md)var(--grid-margin)
        }
    }

    @media (min-width:1000px) {
        .c-push-newsletter {
            flex-direction: row;
            padding-block: var(--spacing-fluid-2xl)
        }
    }

    .c-push-newsletter_content {
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*5)
    }

    @media not all and (min-width:1000px) {
        .c-push-newsletter_content {
            max-width: 25rem
        }
    }

    @media (min-width:1000px) {
        .c-push-newsletter_content {
            justify-content: space-between;
            width: calc(var(--vw, 1vw)*100*.41667 - var(--grid-margin, 0px)*2*.41667 - var(--grid-gutter, 0px)*.58333 + var(--grid-gutter, 0px)*0)
        }
    }

    @media (min-width:1200px) {
        .c-push-newsletter_content {
            padding-right: calc(var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*1)
        }
    }

    .c-push-newsletter_heading {
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*5)
    }

    .c-push-newsletter_image_container {
        width: 100%
    }

    @media (min-width:1000px) {
        .c-push-newsletter_image_container {
            width: calc(var(--vw, 1vw)*100*.58333 - var(--grid-margin, 0px)*2*.58333 - var(--grid-gutter, 0px)*.41667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-push-newsletter_image {
        aspect-ratio: 16/10
    }

    .c-newsletter {
        align-items: center;
        background-color: var(--color-white);
        border: 1px solid var(--color-border);
        border-radius: calc(var(--button-radius)*2);
        display: flex;
        padding: calc(var(--spacing)*1);
        width: 100%
    }

    .c-newsletter_input {
        border-radius: calc(var(--button-radius)*2);
        flex-grow: 1;
        height: 100%;
        padding-inline: calc(var(--spacing)*5)
    }

    .c-footer {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-unit-md)
    }

    @media not all and (min-width:1000px) {
        .c-footer {
            margin-bottom: var(--spacing-fluid-xl);
            margin-top: var(--spacing-fluid-2xl)
        }
    }

    @media (min-width:1000px) {
        .c-footer {
            gap: 50px;
            margin-bottom: var(--spacing-fluid-xl);
            margin-top: var(--spacing-fluid-2xl)
        }
    }

    .c-footer_intro {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-unit-md)
    }

    @media (min-width:1000px) {
        .c-footer_intro {
            flex-direction: row;
            justify-content: space-between
        }
    }

    .c-footer_description {
        display: flex;
        flex-direction: column
    }

    @media not all and (min-width:1000px) {
        .c-footer_description {
            row-gap: calc(var(--spacing)*4)
        }
    }

    @media (min-width:1000px) {
        .c-footer_description {
            width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-footer_specs {
        display: flex;
        flex-direction: column
    }

    .c-footer_specs_item {
        align-items: center;
        border-color: var(--color-border);
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        padding-block: calc(var(--spacing)*3)
    }

    @media (min-width:1000px) {
        .c-footer_specs_item {
            border-bottom-style: var(--tw-border-style);
            border-bottom-width: 1px;
            border-top-style: var(--tw-border-style);
            border-top-width: 0;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-footer_specs_item p:first-child {
        grid-column: span 2/span 2
    }

    .c-footer_specs_item p:nth-child(2) {
        grid-column: span 1/span 1
    }

    .c-footer_specs_item p:nth-child(3) {
        grid-column: span 1/span 1;
        text-align: end
    }

    @media (min-width:1000px) {
        .c-footer_specs_item p:nth-child(3) {
            grid-column-start: 6
        }
    }

    .c-footer_actions {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing-unit-md)*1.5)
    }

    @media (min-width:1000px) {
        .c-footer_actions {
            flex-direction: row;
            gap: var(--spacing-unit-md);
            justify-content: space-between
        }
    }

    .c-footer_newsletter {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-unit-sm)
    }

    @media (min-width:1000px) {
        .c-footer_newsletter {
            width: calc(var(--vw, 1vw)*100*.41667 - var(--grid-margin, 0px)*2*.41667 - var(--grid-gutter, 0px)*.58333 + var(--grid-gutter, 0px)*0)
        }
    }

    @media (min-width:1200px) {
        .c-footer_newsletter {
            width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-footer_nav {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: calc(var(--spacing)*1.5)
    }

    @media (min-width:1000px) {
        .c-footer_nav {
            width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-footer_links {
        display: flex;
        flex-direction: column;
        gap: 40px
    }

    @media (min-width:1000px) {
        .c-footer_links {
            flex-direction: row;
            gap: 0;
            justify-content: space-between;
            width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-footer_nav_item {
        font-size: var(--text-md);
        grid-column: span 1/span 1;
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height))
    }

    .c-footer_socials {
        display: flex;
        gap: var(--spacing-unit-sm)
    }

    .c-footer_socials_link {
        display: inline-flex;
        position: relative;
        z-index: 0
    }

    .c-footer_socials_link:before {
        background-color: #0000001a;
        content: "";
        inset: -5px;
        position: absolute
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-footer_socials_link:before {
            background-color: color-mix(in oklab, var(--color-black)10%, transparent)
        }
    }

    .c-footer_socials_link:before {
        border-radius: var(--radius-sm);
        opacity: 0;
        transition: opacity var(--transition-duration-fast);
        z-index: -1
    }

    @media (hover:hover) {
        .c-footer_socials_link:hover:hover:before {
            opacity: 1
        }
    }

    .c-footer_legal {
        border-color: var(--color-border);
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        padding-top: calc(var(--spacing)*4)
    }

    @media (min-width:1000px) {
        .c-footer_legal {
            margin-top: calc(var(--spacing-unit-md)*-1)
        }
    }

    .c-footer_legal_copyright {
        grid-column: span 1/span 1
    }

    .c-footer_legal_terms {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*1)
    }

    @media (min-width:1000px) {
        .c-footer_legal_terms {
            -moz-column-gap: calc(var(--spacing)*4);
            column-gap: calc(var(--spacing)*4);
            flex-direction: row
        }
    }

    .c-footer_legal_links {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*1);
        grid-column: 3/span 2
    }

    @media (min-width:1000px) {
        .c-footer_legal_links {
            -moz-column-gap: var(--grid-gutter);
            column-gap: var(--grid-gutter);
            flex-direction: row;
            justify-content: space-between
        }
    }

    .c-product-dropdown {
        --dropdown-top: var(--header-height);
        --dropdown-width: calc(var(--vw, 1vw)*100 - var(--grid-margin-xl)*2)
    }

    @media not all and (min-width:1000px) {
        .c-product-dropdown {
            --dropdown-left: var(--header-margin)
        }
    }

    @media (min-width:1000px) {
        .c-product-dropdown {
            --dropdown-left: calc(var(--header-margin) - var(--radius-sm))
        }
    }

    .c-product-dropdown_container {
        gap: calc(var(--spacing)*4);
        left: var(--dropdown-left, 0);
        max-height: calc(var(--svh, 1svh)*100 - var(--header-height)*2);
        padding: var(--header-margin)0;
        top: var(--dropdown-top, 100%);
        width: var(--dropdown-width);
        z-index: var(--z-index-above);
        -ms-overflow-style: none;
        display: grid;
        overflow: auto;
        position: absolute;
        scrollbar-width: none
    }

    .c-product-dropdown_container::-webkit-scrollbar {
        display: none
    }

    .c-product-dropdown:not(.is-open) .c-product-dropdown_container {
        opacity: 0;
        transition: opacity, visibility .2s;
        visibility: hidden
    }

    .c-product-dropdown.is-open .c-product-dropdown_container {
        transition: opacity .2s, visibility
    }

    @media (min-width:1000px) {
        .c-product-dropdown_container {
            grid-template-columns: repeat(3, 1fr)
        }
    }

    .c-product-dropdown_before {
        display: grid;
        row-gap: calc(var(--spacing)*5)
    }

    @media not all and (min-width:1000px) {
        .c-product-dropdown_before {
            grid-template-columns: repeat(2, 1fr)
        }
    }

    @media (min-width:500px) {
        @media not all and (min-width:1000px) {
            .c-product-dropdown_before {
                -moz-column-gap: var(--spacing);
                column-gap: var(--spacing);
                grid-template-columns: repeat(3, 1fr)
            }
        }
    }

    @media (min-width:1000px) {
        .c-product-dropdown_before {
            grid-area: 1/3/2/4;
            grid-template-rows: 1fr auto
        }
    }

    @media (min-width:1200px) {
        .c-product-dropdown_before {
            grid-template-columns: repeat(4, 1fr)
        }
    }

    .c-product-dropdown_head {
        max-width: 23.75rem
    }

    @media not all and (min-width:1000px) {
        .c-product-dropdown_head {
            grid-column: 1/-1
        }
    }

    @media (min-width:1000px) {
        .c-product-dropdown_head {
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding: calc(var(--spacing)*4)0
        }
    }

    @media (min-width:1200px) {
        .c-product-dropdown_head {
            grid-column: 1/4
        }
    }

    .c-product-dropdown_buttons {
        grid-column-span: 1;
        display: flex;
        flex-direction: column;
        gap: 4px;
        grid-column-end: -1
    }

    @media not all and (min-width:1000px) {
        .c-product-dropdown_buttons {
            grid-row: 2/3
        }
    }

    @media (min-width:1200px) {
        .c-product-dropdown_buttons {
            grid-column: 3/5
        }
    }

    .c-product-dropdown_buttons_item {
        clip-path: inset(0);
        transition-duration: var(--transition-duration-slower);
        transition-property: transform, clip-path;
        transition-timing-function: var(--ease-power4-out)
    }

    .c-product-dropdown:not(.is-open) .c-product-dropdown_buttons_item {
        clip-path: inset(0 0 100%);
        transform: translateY(100%)
    }

    .c-product-dropdown.is-open .c-product-dropdown_buttons_item {
        transition-delay: calc(var(--index)*.1s + var(--extra-delay, 0s))
    }

    .c-product-dropdown_menu {
        display: grid;
        gap: var(--header-margin);
        grid-row: 1/2
    }

    @media (min-width:500px) {
        .c-product-dropdown_menu {
            grid-template-columns: repeat(3, 1fr)
        }
    }

    @media (min-width:1000px) {
        .c-product-dropdown_menu {
            grid-column: 1/3
        }
    }

    .c-product-dropdown_item {
        clip-path: inset(0 round var(--radius-md));
        color: var(--color-white);
        min-width: 0;
        padding: calc(var(--spacing)*2);
        position: relative;
        transition: clip-path var(--transition-duration-slower)var(--ease-power4-out);
        width: 100%;
        z-index: 0
    }

    .c-product-dropdown.is-open .c-product-dropdown_item {
        transition-delay: calc((var(--total) - var(--index))*.1s)
    }

    .c-product-dropdown:not(.is-open) .c-product-dropdown_item {
        clip-path: inset(80% 80% 20% 20% round var(--radius-md))
    }

    @media not all and (min-width:500px) {
        .c-product-dropdown_item {
            aspect-ratio: 396/143
        }
    }

    @media (min-width:500px) {
        .c-product-dropdown_item {
            aspect-ratio: 310/410
        }
    }

    .c-product-dropdown_link {
        align-items: center;
        display: flex;
        height: 100%;
        justify-content: center;
        width: 100%
    }

    .c-product-dropdown_image {
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-product-dropdown_image:before {
        background: linear-gradient(#0000, #00000080);
        content: "";
        inset: 0;
        position: absolute;
        z-index: 1
    }

    .c-hero-editorial_head {
        align-items: center;
        display: flex;
        justify-content: center;
        padding-block: calc(var(--header-height) + var(--spacing-fluid-xl))
    }

    @media (min-width:700px) {
        .c-hero-editorial_head {
            min-height: calc(var(--svh, 1svh)*80)
        }
    }

    .c-hero-editorial_details {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: repeat(3, 1fr)
    }

    .c-hero-editorial_detail:nth-child(3n+2) {
        text-align: center
    }

    .c-hero-editorial_detail:nth-child(3n+3) {
        text-align: right
    }

    .c-hero-editorial_image {
        width: 100%
    }

    .c-hero-listing {
        align-items: flex-start;
        display: flex;
        justify-content: space-between;
        padding-top: calc(var(--header-height) + var(--spacing-fluid-2xl))
    }

    .c-fullscreen-push {
        display: flex;
        justify-content: center;
        position: relative;
        z-index: 0
    }

    @media not all and (min-width:1000px) {
        .c-fullscreen-push {
            height: calc(var(--svh, 1svh)*100 - var(--header-area))
        }
    }

    @media (min-width:1000px) {
        .c-fullscreen-push {
            aspect-ratio: 16/9
        }
    }

    .c-fullscreen-push_content {
        align-items: center;
        color: #fff;
        display: flex;
        flex-direction: column;
        gap: var(--spacing-fluid-sm);
        height: 100%;
        justify-content: center;
        max-width: 37.5rem;
        padding: 0 var(--spacing-fluid-sm);
        text-align: center;
        width: 100%
    }

    .c-fullscreen-push_image {
        clip-path: inset(0 var(--grid-margin-xl)round var(--radius-md));
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-fullscreen-push_icon {
        color: var(--color-white)
    }

    .c-menu {
        height: calc(100% - var(--header-height));
        left: 0;
        overflow: auto;
        padding-inline: var(--header-padding);
        pointer-events: auto;
        position: absolute;
        top: var(--header-height);
        width: 100%
    }

    html:not(.has-menu-open) .c-menu {
        visibility: hidden
    }

    .c-menu_inner {
        height: 100%;
        padding-bottom: var(--header-padding);
        padding-top: var(--spacing-fluid-xl)
    }

    @media not all and (min-width:1000px) {
        .c-menu_inner {
            display: flex;
            flex-direction: column;
            row-gap: calc(var(--spacing)*4)
        }
    }

    @media (min-width:1000px) {
        .c-menu_inner {
            -moz-column-gap: 20px;
            column-gap: 20px;
            display: grid;
            grid-template-columns: repeat(12, 1fr)
        }
    }

    .c-menu_navigations {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*10);
        justify-content: space-between
    }

    @media not all and (min-width:1000px) {
        .c-menu_navigations {
            flex-grow: 1
        }
    }

    @media (min-width:1000px) {
        .c-menu_navigations {
            grid-column: 1/6
        }
    }

    .c-menu_primary_title {
        -moz-column-gap: calc(var(--spacing)*2);
        column-gap: calc(var(--spacing)*2);
        display: flex
    }

    .c-menu_primary_list {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*4);
        margin-top: calc(var(--spacing)*2)
    }

    .c-menu_primary_item {
        position: relative
    }

    .c-menu_primary_item:before {
        background-color: var(--color-grey);
        content: "";
        height: 1px;
        left: 0;
        position: absolute;
        top: 0;
        transform-origin: 0 0;
        transition: transform var(--transition-duration-slower)var(--ease-power4-out);
        width: 100%
    }

    html:not(.has-menu-open) .c-menu_primary_item:before {
        transform: scaleX(0)
    }

    html.has-menu-open .c-menu_primary_item:before {
        transition-delay: calc(var(--index)*var(--stagger, .1s) + var(--extra-delay, 0s))
    }

    .c-menu_primary_link {
        --focus-offset: -4px;
        align-items: flex-start;
        clip-path: inset(0);
        display: flex;
        justify-content: space-between;
        padding: calc(var(--spacing)*2)0;
        transition-duration: var(--transition-duration-slower);
        transition-property: transform, clip-path;
        transition-timing-function: var(--ease-power4-out)
    }

    html:not(.has-menu-open) .c-menu_primary_link {
        clip-path: inset(100% 0 0);
        transform: translateY(-100%)
    }

    html.has-menu-open .c-menu_primary_link {
        transition-delay: calc(var(--index)*var(--stagger, .1s) + var(--extra-delay, 0s))
    }

    @media (min-width:1000px) {
        .c-menu_secondary {
            padding-right: calc(20% + 4px)
        }
    }

    .c-menu_secondary_list {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: 1fr 1fr
    }

    .c-menu_secondary_item {
        clip-path: inset(0 -2px);
        transition-duration: var(--transition-duration-slower);
        transition-property: transform, clip-path;
        transition-timing-function: var(--ease-power4-out)
    }

    html:not(.has-menu-open) .c-menu_secondary_item {
        clip-path: inset(100% -2px 0);
        transform: translateY(-100%)
    }

    html.has-menu-open .c-menu_secondary_item {
        transition-delay: calc(var(--index)*var(--stagger, .1s) + var(--extra-delay, 0s))
    }

    .c-menu_secondary_link {
        --focus-offset: 1px
    }

    @media not all and (min-width:1000px) {
        .c-menu_cards {
            padding-bottom: var(--header-padding)
        }
    }

    @media (min-width:1000px) {
        .c-menu_cards {
            grid-column: 6/-1
        }
    }

    .c-menu_cards_grid {
        display: grid;
        gap: var(--spacing);
        height: 100%
    }

    @media not all and (min-width:500px) {
        .c-menu_cards_grid {
            grid-template-columns: 1fr
        }
    }

    @media (min-width:500px) {
        @media not all and (min-width:1000px) {
            .c-menu_cards_grid {
                grid-template-columns: repeat(2, 1fr)
            }
        }
    }

    @media (min-width:1000px) {
        .c-menu_cards_grid {
            grid-template-columns: repeat(7, 1fr)
        }
    }

    .c-menu_cards_item {
        clip-path: inset(0 round var(--radius-sm));
        color: var(--color-white);
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        min-width: 0;
        padding: calc(var(--spacing)*3);
        position: relative;
        transition: clip-path var(--transition-duration-slower)var(--ease-power4-out);
        transition-delay: calc(var(--index)*.1s + var(--extra-delay, 0s));
        z-index: 0
    }

    html:not(.has-menu-open) .c-menu_cards_item {
        clip-path: inset(var(--item-clip)round var(--radius-md))
    }

    @media not all and (min-width:500px) {
        .c-menu_cards_item {
            aspect-ratio: 192/120;
            grid-column: 1/-1
        }
    }

    @media (min-width:500px) {
        @media not all and (min-width:1000px) {
            .c-menu_cards_item:first-child {
                aspect-ratio: 388/164;
                grid-column: 1/-1
            }

            .c-menu_cards_item:nth-child(2) {
                aspect-ratio: 192/120;
                grid-column: 1/2
            }

            .c-menu_cards_item:nth-child(3) {
                aspect-ratio: 192/120;
                grid-column: 2/3
            }
        }
    }

    @media not all and (min-width:1000px) {
        .c-menu_cards_item:first-child {
            --item-clip: 80% 20% 20% 80%
        }

        .c-menu_cards_item:nth-child(2) {
            --item-clip: 80% 80% 20% 20%
        }

        .c-menu_cards_item:nth-child(3) {
            --item-clip: 20% 80% 80% 20%
        }
    }

    @media (min-width:1000px) {
        .c-menu_cards_item:first-child {
            --item-clip: 80% 20% 20% 80%;
            grid-area: 1/1/3/5
        }

        .c-menu_cards_item:nth-child(2) {
            --item-clip: 80% 80% 20% 20%;
            grid-area: 1/5/2/-1
        }

        .c-menu_cards_item:nth-child(3) {
            --item-clip: 20% 80% 80% 20%;
            grid-area: 2/5/3/-1
        }
    }

    .c-menu_cards_image {
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-menu_cards_link:before {
        content: "";
        inset: 0;
        position: absolute
    }

    @media (min-width:1000px) {
        .c-contact-form {
            display: flex;
            justify-content: space-between
        }
    }

    .c-contact-form_subheading {
        font-size: var(--text-sm);
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-bold);
        color: #0006;
        font-weight: var(--font-weight-bold)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-contact-form_subheading {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    @media (min-width:1000px) {
        .c-contact-form_heading {
            width: calc(var(--vw, 1vw)*100*.29167 - var(--grid-margin, 0px)*2*.29167 - var(--grid-gutter, 0px)*.70833 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-contact-form_heading_title {
        font-size: var(--text-heading-sm);
        letter-spacing: var(--tw-tracking, var(--text-heading-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-sm--line-height));
        margin-top: calc(var(--spacing)*4)
    }

    @media (min-width:1000px) {
        .c-contact-form_heading_title {
            margin-top: calc(var(--spacing)*6)
        }
    }

    .c-contact-form_heading_description {
        color: #0006;
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height));
        margin-top: calc(var(--spacing)*6)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-contact-form_heading_description {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    @media (min-width:1000px) {
        .c-contact-form_heading_description {
            margin-top: calc(var(--spacing)*10)
        }
    }

    .c-contact-form_group_container,
    .c-contact-form_group_header {
        display: flex;
        flex-direction: column
    }

    .c-contact-form_group_header {
        gap: calc(var(--spacing)*4);
        margin-bottom: calc(var(--spacing)*6)
    }

    .c-contact-form_form {
        display: flex;
        flex-direction: column
    }

    @media not all and (min-width:1000px) {
        .c-contact-form_form {
            gap: calc(var(--spacing-unit-md)*2)
        }
    }

    @media (min-width:1000px) {
        .c-contact-form_form {
            gap: var(--spacing-unit-md);
            width: calc(var(--vw, 1vw)*100*.58333 - var(--grid-margin, 0px)*2*.58333 - var(--grid-gutter, 0px)*.41667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-contact-form_container {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*10)
    }

    .c-contact-form_container_title {
        font-size: var(--text-heading-2xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xs--line-height))
    }

    .c-contact-form_container_description {
        color: #0006;
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height))
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-contact-form_container_description {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    .c-input-text {
        font-size: var(--text-input);
        letter-spacing: var(--tw-tracking, var(--text-input--letter-spacing));
        line-height: var(--tw-leading, var(--text-input--line-height));
        --outline-color: var(--color-black);
        background-color: var(--color-sand);
        border-radius: var(--radius-sm);
        display: flex;
        flex-direction: column;
        position: relative
    }

    :is(.c-input-text:has(.c-input-text_input:focus-visible), .c-input-text:has(.c-input-text_input:user-invalid)) {
        outline: 1px solid var(--outline-color)
    }

    .c-input-text:has(.c-input-text_input:user-invalid) {
        --outline-color: var(--color-red)
    }

    .c-input-text_input {
        padding: 20px 26px;
        text-align: center
    }

    .c-input-text_input.-has-value,
    .c-input-text_input:focus-visible {
        outline: none
    }

    .c-input-text_input:-webkit-autofill {
        box-shadow: 0 0 0 1000px var(--input-background-color)inset !important;
        -webkit-transition: background-color 5000s ease-in-out;
        transition: background-color 5000s ease-in-out;
        -webkit-text-fill-color: var(--color-black) !important;
        background-clip: content-box !important;
        background-color: var(--input-background-color) !important
    }

    .hs-form {
        display: flex;
        flex-direction: column;
        row-gap: var(--spacing-fluid-xs)
    }

    .hs-form fieldset {
        max-width: none !important
    }

    .hs-button {
        background-color: var(--color-black);
        border-radius: var(--button-radius);
        color: var(--color-white);
        cursor: pointer;
        height: var(--button-height);
        padding: var(--button-padding);
        transition: background-color var(--transition-duration-fast)
    }

    .hs-button:hover {
        background-color: var(--color-red)
    }

    .hs-error-msgs {
        color: var(--color-red);
        font-size: var(--text-xs);
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-xs--line-height));
        margin-top: calc(var(--spacing)*1);
        width: 100%
    }

    .hs-form-field {
        display: flex;
        flex-direction: column;
        margin-bottom: var(--spacing-fluid-xs)
    }

    .hs-form-field label {
        font-size: var(--text-sm);
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-sm--line-height));
        margin-bottom: calc(var(--spacing)*3)
    }

    .hs-form-field .hs-input {
        font-size: var(--text-input);
        letter-spacing: var(--tw-tracking, var(--text-input--letter-spacing));
        line-height: var(--tw-leading, var(--text-input--line-height));
        --outline-color: var(--color-black);
        background-color: var(--color-sand);
        border-radius: var(--radius-sm);
        display: flex;
        flex-direction: column;
        padding: 20px 26px;
        position: relative;
        text-align: center;
        width: 100%;
        width: 100% !important
    }

    .hs-form-field .hs-input.-has-value,
    .hs-form-field .hs-input:focus-visible {
        outline: none
    }

    .c-textarea {
        font-size: var(--text-input);
        letter-spacing: var(--tw-tracking, var(--text-input--letter-spacing));
        line-height: var(--tw-leading, var(--text-input--line-height));
        --outline-color: var(--color-black);
        background-color: var(--color-sand);
        border-radius: var(--radius-sm);
        display: flex;
        flex-direction: column;
        position: relative
    }

    .c-contact-form .c-textarea {
        min-height: 200px
    }

    :is(.c-textarea:has(.c-textarea_input:focus-visible), .c-textarea:has(.c-textarea_input:user-invalid)) {
        outline: 1px solid var(--outline-color)
    }

    .c-textarea:has(.c-textarea_input:user-invalid) {
        --outline-color: var(--color-red)
    }

    .c-textarea_input {
        flex: 1;
        padding: 20px 26px;
        resize: none;
        text-align: start
    }

    .c-textarea_input.-has-value,
    .c-textarea_input:focus-visible {
        outline: none
    }

    .hs-input.hs-fieldtype-textarea {
        min-height: 200px;
        resize: none !important;
        text-align: start !important
    }

    .c-hero-default {
        align-items: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin-bottom: var(--spacing-fluid-2xl);
        padding-top: calc(var(--header-height) + var(--spacing-fluid-3xl));
        row-gap: calc(var(--spacing)*8);
        text-align: center
    }

    .c-intro-careers_image-container {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: repeat(12, 1fr)
    }

    .c-intro-careers_image:first-child {
        aspect-ratio: 3/2;
        grid-column: 3/span 8;
        z-index: 1
    }

    .c-intro-careers_image:nth-child(2) {
        aspect-ratio: 3/2;
        grid-column: 1/span 4;
        grid-row-start: 2;
        margin-top: -20%;
        z-index: 0
    }

    .c-intro-careers_image:nth-child(3) {
        aspect-ratio: 4/3;
        grid-column: 8/-1;
        grid-row-start: 2;
        margin-top: -60%;
        z-index: 2
    }

    .c-intro-careers_logo {
        margin-top: var(--spacing-fluid-xs);
        --icon-width: calc(var(--vw, 1vw)*100*0.16667 - var(--grid-margin, 0px)*2*0.16667 - var(--grid-gutter, 0px)*0.83333 + var(--grid-gutter, 0px)*0);
        align-items: center;
        display: flex;
        justify-content: center
    }

    .c-intro-careers_editorial {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-top: var(--spacing-fluid-lg)
    }

    .c-intro-careers_editorial_image1 {
        align-self: flex-end;
        aspect-ratio: 3/2;
        width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0) !important
    }

    @media (min-width:1000px) {
        .c-intro-careers_editorial_image1 {
            margin-left: calc(var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*0);
            width: calc(var(--vw, 1vw)*100*.25 - var(--grid-margin, 0px)*2*.25 - var(--grid-gutter, 0px)*.75 + var(--grid-gutter, 0px)*0) !important
        }
    }

    .c-intro-careers_editorial_content {
        display: flex;
        flex-direction: column;
        gap: var(--grid-gutter)
    }

    @media (min-width:1000px) {
        .c-intro-careers_editorial_content {
            align-items: flex-end;
            flex-direction: row
        }
    }

    .c-intro-careers_editorial_image2 {
        aspect-ratio: 16/10;
        flex-shrink: 0;
        width: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*0) !important
    }

    @media (min-width:1000px) {
        .c-intro-careers_editorial_image2 {
            width: calc(var(--vw, 1vw)*100*.58333 - var(--grid-margin, 0px)*2*.58333 - var(--grid-gutter, 0px)*.41667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-intro-careers_editorial_content_description {
        font-size: var(--text-heading-2xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xs--line-height));
        margin-right: calc(var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*0)
    }

    .c-hero-home {
        color: var(--color-white);
        display: block
    }

    @media (hover:none),
    (prefers-reduced-motion:reduce) {
        .c-hero-home {
            height: calc(var(--svh, 1svh)*100)
        }

        @media not all and (min-width:1000px) {
            .c-hero-home {
                padding-top: var(--header-height)
            }
        }
    }

    @media (hover:hover) and (prefers-reduced-motion:no-preference) {
        .c-hero-home {
            --mask-ratio: 7/10;
            height: calc(var(--svh, 1svh)*300)
        }
    }

    .c-hero-home [data-focus-area] {
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-hero-home_sticky {
        padding: calc(var(--spacing)*2)
    }

    @media (hover:none),
    (prefers-reduced-motion:reduce) {
        .c-hero-home_sticky {
            height: 100%
        }
    }

    @media (hover:hover) and (prefers-reduced-motion:no-preference) {
        .c-hero-home_sticky {
            height: calc(var(--svh, 1svh)*100);
            overflow: hidden;
            position: sticky;
            top: 0;
            width: 100%
        }
    }

    .c-hero-home_mask {
        height: 100%;
        position: relative;
        width: 100%
    }

    @media (hover:none),
    (prefers-reduced-motion:reduce) {
        .c-hero-home_mask {
            clip-path: inset(0 round var(--radius-md))
        }
    }

    .c-hero-home_inner {
        align-items: center;
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: flex-end;
        padding: 0 calc(var(--spacing)*5);
        width: 100%
    }

    .c-hero-home_background {
        background-color: var(--color-black);
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-hero-home_bottom {
        align-items: center;
        display: flex;
        justify-content: space-between;
        opacity: var(--hero-ui-opacity, 1);
        padding: calc(var(--spacing)*5)0;
        position: relative;
        width: 100%
    }

    .c-hero-home_bottom:before {
        background-color: currentColor;
        content: "";
        height: 1px;
        left: 0;
        opacity: .5;
        position: absolute;
        top: 0;
        transform: scaleX(0);
        width: 100%
    }

    html.is-ready .c-hero-home_bottom:before {
        transform: scaleX(1);
        transition: transform var(--transition-duration-slower)var(--ease-smooth);
        transition-delay: .1s
    }

    .c-hero-home_title {
        opacity: var(--hero-ui-opacity, 1);
        padding-bottom: calc(var(--spacing)*10);
        width: 100%
    }

    .c-hero-home_svg {
        block-size: auto;
        clip-path: inset(100% 0 0)
    }

    .c-hero-home_svg path {
        transform: translateY(100%)
    }

    html.is-ready .c-hero-home_svg {
        clip-path: inset(0);
        transition: clip-path var(--transition-duration-slowest)var(--ease-slow-out)
    }

    html.is-ready .c-hero-home_svg path {
        transform: translate(0);
        transition: transform var(--transition-duration-slowest)var(--ease-slow-out);
        transition-delay: calc(var(--index)*70ms)
    }

    .c-hero-home_grid-container {
        align-items: center;
        display: flex;
        inset: 0;
        padding: 0 var(--grid-margin);
        pointer-events: none;
        position: absolute
    }

    @media (hover:none),
    (prefers-reduced-motion:reduce) {
        .c-hero-home_grid-container {
            display: none
        }
    }

    .c-hero-home_grid {
        aspect-ratio: 1190/765;
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        max-height: 100%;
        padding-block: var(--grid-margin-xl)
    }

    @media not all and (min-width:700px) {
        .c-hero-home_grid {
            margin-left: calc(var(--vw, 1vw)*100*.25*-1 - var(--grid-margin, 0px)*2*.25*-1 - var(--grid-gutter, 0px)*.75*-1 + var(--grid-gutter, 0px)*1*-1);
            margin-right: calc(var(--vw, 1vw)*100*.25*-1 - var(--grid-margin, 0px)*2*.25*-1 - var(--grid-gutter, 0px)*.75*-1 + var(--grid-gutter, 0px)*1*-1);
            width: calc(100% + var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*1)
        }
    }

    @media (min-width:700px) {
        .c-hero-home_grid {
            width: 100%
        }
    }

    .c-hero-home_col {
        display: flex;
        flex-direction: column;
        row-gap: var(--grid-gutter)
    }

    .c-hero-home_col:first-child {
        justify-content: flex-start
    }

    .c-hero-home_col:nth-child(2) {
        justify-content: center
    }

    .c-hero-home_col:nth-child(3) {
        justify-content: flex-end
    }

    .c-hero-home_image-container {
        position: relative;
        transform: translate3d(calc((1 - var(--image-progress, 0))*var(--direction, 1)*(100% + var(--grid-margin))), calc((1 - var(--image-progress, 0))*100%), 0)
    }

    .c-hero-home_col:first-child .c-hero-home_image-container {
        --direction: -1
    }

    .c-hero-home_col:nth-child(3) .c-hero-home_image-container {
        --direction: 1
    }

    .c-hero-home_image-container.-small {
        --image-ratio: 4/3
    }

    .c-hero-home_col:first-child .c-hero-home_image-container.-small {
        padding-left: calc(var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*1)
    }

    .c-hero-home_col:nth-child(3) .c-hero-home_image-container.-small {
        padding-right: calc(var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*1)
    }

    .c-hero-home_image {
        aspect-ratio: var(--image-ratio, 5/3);
        height: 100%;
        pointer-events: auto;
        width: 100%
    }

    .c-hero-home_dummy-background {
        aspect-ratio: var(--mask-ratio);
        visibility: hidden
    }

    .c-hero-visual {
        color: var(--color-white);
        display: block;
        height: calc(var(--svh, 1svh)*100);
        padding: var(--header-area)var(--grid-margin-xl)var(--grid-margin-xl)var(--grid-margin-xl)
    }

    .c-hero-visual_inner {
        clip-path: inset(0 round var(--radius-md));
        display: grid;
        grid-template-rows: 1fr auto 1fr;
        height: 100%;
        overflow: hidden;
        position: relative;
        width: 100%;
        z-index: 0
    }

    @media not all and (min-width:700px) {
        .c-hero-visual_inner {
            padding: calc(var(--spacing)*2)var(--grid-margin-xl)
        }
    }

    @media (min-width:700px) {
        .c-hero-visual_inner {
            padding: calc(var(--spacing)*2)calc(var(--spacing)*5)
        }
    }

    .c-hero-visual_background {
        background-color: var(--color-sand);
        bottom: 0;
        left: 0;
        position: absolute;
        top: calc(var(--header-area)*-1);
        width: 100%;
        z-index: -1
    }

    .c-hero-visual_image {
        height: 100%;
        width: 100%
    }

    .c-hero-visual_title {
        display: flex;
        grid-row: 2/3
    }

    @media not all and (min-width:1000px) {
        .c-hero-visual_title {
            flex-direction: column
        }
    }

    @media (min-width:1000px) {
        .c-hero-visual_title {
            justify-content: space-between
        }

        .c-hero-visual_title_line:first-child {
            justify-self: flex-end
        }
    }

    .c-hero-visual_bottom {
        align-items: center;
        display: flex;
        flex-direction: column;
        grid-row: 3/4;
        justify-content: flex-end
    }

    .c-hero-visual_dummy {
        align-items: center;
        -moz-column-gap: .3em;
        column-gap: .3em;
        display: flex;
        height: 100%;
        justify-content: flex-start;
        left: 0;
        position: absolute;
        top: 0;
        visibility: hidden;
        width: 100%
    }

    @media not all and (min-width:1000px) {
        .c-hero-visual_dummy {
            display: none
        }
    }

    @media (min-width:1000px) {
        .c-hero-visual_dummy {
            padding: calc(var(--spacing)*2)calc(var(--spacing)*5)
        }
    }

    .c-hero-visual_dummy_line:first-child {
        justify-self: flex-end
    }

    .c-product-list {
        --heading-font-size: 22.33vw;
        --sticky-offset: calc(var(--vw, 1vw)*100*0.5*0.75 - var(--grid-margin, 0px)*2*0.5*0.75 - var(--grid-gutter, 0px)*0.5*0.75 + var(--grid-gutter, 0px)*0*0.75 - 10vh);
        --heading-sticky-top: 30vh;
        --card-overlap: 12vw;
        --card-sticky-top: calc(var(--heading-sticky-top) + var(--card-overlap));
        --heading-margin-bottom: var(--spacing-fluid-md);
        display: flex;
        flex-direction: column
    }

    @media (min-width:1000px) {
        .c-product-list {
            --heading-sticky-top: 10vh
        }
    }

    .c-product-list_heading {
        align-items: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin-block: var(--spacing-fluid-md);
        margin-inline: var(--grid-margin-xl);
        position: sticky;
        top: var(--heading-sticky-top)
    }

    @media (min-width:1000px) {
        .c-product-list_heading {
            justify-content: flex-start;
            margin-bottom: var(--heading-margin-bottom);
            margin-top: 0;
            padding-bottom: var(--padding-offset)
        }
    }

    .c-product-list_heading_icon {
        width: 100%
    }

    .c-product-list_sticky_container {
        display: flex;
        flex-direction: column;
        position: relative
    }

    .c-product-list_inner {
        width: 100%
    }

    @media (min-width:340px) {
        .c-product-list_inner {
            max-width: 340px
        }
    }

    @media (min-width:500px) {
        .c-product-list_inner {
            max-width: 500px
        }
    }

    @media (min-width:700px) {
        .c-product-list_inner {
            max-width: 700px
        }
    }

    @media (min-width:1000px) {
        .c-product-list_inner {
            max-width: 1000px
        }
    }

    @media (min-width:1200px) {
        .c-product-list_inner {
            max-width: 1200px
        }
    }

    @media (min-width:1400px) {
        .c-product-list_inner {
            max-width: 1400px
        }
    }

    @media (min-width:1600px) {
        .c-product-list_inner {
            max-width: 1600px
        }
    }

    @media (min-width:1800px) {
        .c-product-list_inner {
            max-width: 1800px
        }
    }

    @media (min-width:2000px) {
        .c-product-list_inner {
            max-width: 2000px
        }
    }

    @media (min-width:2400px) {
        .c-product-list_inner {
            max-width: 2400px
        }
    }

    .c-product-list_inner {
        max-width: none !important;
        padding-left: var(--grid-margin);
        padding-right: var(--grid-margin)
    }

    @media (min-width:1000px) {
        .c-product-list_inner {
            display: flex;
            gap: var(--grid-gutter);
            margin-top: calc(var(--padding-offset)*-1)
        }
    }

    .c-product-list_cards {
        display: flex;
        flex-direction: column;
        gap: 4px;
        margin: 0 auto;
        padding-bottom: 30vw;
        width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
    }

    @media (min-width:1000px) {
        .c-product-list_cards {
            flex-shrink: 0;
            order: 2;
            padding-bottom: 0;
            width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-product-list_card {
        clip-path: inset(0 round 10px);
        overflow: hidden;
        position: relative;
        width: 100%
    }

    @media (min-width:1000px) {
        .c-product-list_card {
            position: sticky;
            top: var(--card-sticky-top);
            transform-origin: top
        }

        .c-product-list_card.-animated {
            transform: scale(calc(1 - var(--sticky-progress)*.15))translateY(calc(var(--sticky-progress)*-5%))
        }
    }

    .c-product-list_card:hover .c-product-list_card_image {
        transform: scale(1.035)
    }

    .c-product-list_card_image {
        aspect-ratio: 4/3;
        filter: brightness(.85);
        transition: transform .25s ease-out;
        width: 100%
    }

    .c-product-list_card_content {
        align-items: center;
        color: var(--color-white);
        display: flex;
        flex-direction: column;
        inset: 0;
        justify-content: center;
        pointer-events: none;
        position: absolute
    }

    .c-product-list_card_heading {
        font-size: var(--text-heading-md);
        letter-spacing: var(--tw-tracking, var(--text-heading-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-md--line-height));
        position: relative
    }

    .c-product-list_card_subtitle {
        display: inline-block;
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height));
        text-transform: uppercase;
        transform: translateY(-70%)translate(-2.5px)
    }

    @media (min-width:1000px) {
        .c-product-list_card_subtitle {
            transform: translateY(-100%)translate(-7.5px)
        }
    }

    .c-product-list_card_link {
        inset: 0;
        position: absolute
    }

    .c-product-list_column1 {
        display: none
    }

    @media (min-width:1000px) {
        .c-product-list_column1 {
            display: block;
            flex-shrink: 0;
            margin-top: 12.5%;
            order: 1;
            width: calc(var(--vw, 1vw)*100*.25 - var(--grid-margin, 0px)*2*.25 - var(--grid-gutter, 0px)*.75 + var(--grid-gutter, 0px)*0);
            display: flex;
            flex-direction: column;
            justify-content: space-around;
            height: 60%;
        }
    }

    .c-product-list_column1 .c-product-list_block_description,
    .c-product-list_column1 .c-product-list_block_heading {
        max-width: 18.75rem
    }

    .c-product-list_column2 {
        display: none;
        margin-top: 30%
    }

    @media (min-width:1000px) {
        .c-product-list_column2 {
            display: block;
            margin-left: calc(var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*0 + var(--grid-gutter));
            order: 3;
            width: calc(var(--vw, 1vw)*100*.25 - var(--grid-margin, 0px)*2*.25 - var(--grid-gutter, 0px)*.75 + var(--grid-gutter, 0px)*0);
            transform: translateY(400px);
        }
    }


    .c-product-list_block {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-unit-md);
        margin-left: calc(var(--vw, 1vw)*100*.2 - var(--grid-margin, 0px)*2*.2 - var(--grid-gutter, 0px)*.8 + var(--grid-gutter, 0px)*0);
        width: calc(var(--vw, 1vw)*100*.625 - var(--grid-margin, 0px)*2*.625 - var(--grid-gutter, 0px)*.375 + var(--grid-gutter, 0px)*0)
    }

    .c-product-list_block:nth-of-type(3) {
        margin-top: var(--spacing-fluid-md)
    }

    @media (min-width:1000px) {
        .c-product-list_block {
            margin-left: 0;
            width: 100%
        }

        .c-product-list_block.-animated {
            opacity: calc(1 - var(--progress))
        }
    }

    .c-product-list_block_heading {
        font-size: var(--text-sm);
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold)
    }

    .c-product-list_block_description {
        color: #0006;
        font-size: var(--text-heading-2xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xs--line-height))
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-product-list_block_description {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    .move-down-1500 {
        transform: translateY(1500px);
    }

    .c-product-list_blocks_mobile {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-fluid-md)
    }

    @media (min-width:1000px) {
        .c-product-list_blocks_mobile {
            display: none
        }
    }

    .c-bento-box {
        color: var(--color-white);
        display: grid;
        gap: var(--grid-gutter)
    }

    @media not all and (min-width:1000px) {
        .c-bento-box {
            grid-template-columns: 1fr
        }
    }

    @media (min-width:1000px) {
        .c-bento-box {
            grid-template-areas: "quote rail rail" "image rail rail" "stats stats stats";
            grid-template-columns: repeat(3, 1fr)
        }
    }

    .c-bento-box_item {
        clip-path: inset(0 round var(--radius-md))
    }

    .c-bento-box_quote {
        background-color: var(--color-accent)
    }

    @media not all and (min-width:1000px) {
        .c-bento-box_quote {
            --ratio: 5/8
        }
    }

    @media (min-width:1000px) {
        .c-bento-box_quote {
            --ratio: 1;
            grid-area: quote
        }
    }

    .c-bento-box_quote:before {
        content: "";
        float: left;
        padding-top: calc(var(--ratio)*100%)
    }

    .c-bento-box_quote:after {
        clear: both;
        content: ""
    }

    .c-bento-box_quote_inner {
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: space-between;
        padding: var(--spacing-unit-sm);
        row-gap: var(--spacing-fluid-md)
    }

    .c-bento-box_quote_header {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*7)
    }

    .c-bento-box_quote_footer {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*1)
    }

    .c-bento-box_image {
        aspect-ratio: 8/5;
        background-color: var(--color-sand);
        position: relative;
        width: 100%
    }

    @media (min-width:1000px) {
        .c-bento-box_image {
            grid-area: image
        }
    }

    .c-bento-box_rail {
        align-items: center;
        background-color: var(--color-blue);
        display: flex;
        overflow: hidden;
        position: relative;
        z-index: 0
    }

    @media not all and (min-width:1000px) {
        .c-bento-box_rail {
            aspect-ratio: 8/5
        }
    }

    @media (min-width:1000px) {
        .c-bento-box_rail {
            grid-area: rail
        }
    }

    .c-bento-box_rail_image {
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-bento-box_stats {
        background-color: var(--color-black);
        position: relative
    }

    @media (min-width:1000px) {
        .c-bento-box_stats {
            grid-area: stats
        }
    }

    .c-bento-box_stats:before {
        content: "";
        float: left;
        padding-top: 71.4286%
    }

    .c-bento-box_stats:after {
        clear: both;
        content: ""
    }

    .c-bento-box_stats_image {
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-bento-box_stats_inner {
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: space-between;
        padding: calc(var(--spacing)*4);
        row-gap: var(--spacing-fluid-md)
    }

    .c-bento-box_stats_bottom {
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*6)
    }

    @media (min-width:1000px) {
        .c-bento-box_stats_bottom {
            padding-left: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*1)
        }
    }

    .c-bento-box_stats_list {
        display: grid;
        gap: var(--spacing);
        grid-template-columns: 1fr 1fr
    }

    .c-bento-box_stats_item {
        background-color: #0003
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-bento-box_stats_item {
            background-color: color-mix(in oklab, var(--color-black)20%, transparent)
        }
    }

    .c-bento-box_stats_item {
        aspect-ratio: 7/5;
        backdrop-filter: blur(18px);
        clip-path: inset(0 round var(--radius-sm));
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*4);
        justify-content: space-between;
        padding: calc(var(--spacing)*3)
    }

    .c-product-specs {
        background-color: #0009;
        display: flex;
        flex-direction: column
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-product-specs {
            background-color: color-mix(in oklab, var(--color-black)60%, transparent)
        }
    }

    .c-product-specs {
        backdrop-filter: blur(60px);
        border-radius: var(--radius-md);
        clip-path: inset(100% 50% 0 50% round var(--radius-md));
        margin-bottom: calc(var(--button-height) + var(--spacing)*3);
        max-width: var(--sticky-bar-width);
        padding: calc(var(--spacing)*1)calc(var(--spacing)*4);
        width: 100%
    }

    html.is-ready .c-product-specs {
        clip-path: inset(0 0 0 0 round var(--radius-md));
        transition: clip-path var(--transition-duration-slower)var(--ease-power3-inOut)
    }

    .c-product-specs_item {
        position: relative
    }

    .c-product-specs_item:not(:first-child):before {
        background-color: #d9d9d933;
        content: "";
        height: 1px;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-product-specs_item:not(:first-child):before {
            background-color: color-mix(in oklab, var(--color-grey)20%, transparent)
        }
    }

    .c-product-specs_item:not(:first-child):before {
        transform: scaleX(0);
        transition: transform var(--transition-duration-slower)var(--ease-power3-inOut);
        transition-delay: calc(var(--index)*50ms + var(--extra-delay, 0s))
    }

    html.is-ready .c-product-specs_item:not(:first-child):before {
        transform: scaleX(1)
    }

    .c-product-specs_item_inner {
        align-items: center;
        clip-path: inset(0 0 100%);
        display: flex;
        justify-content: space-between;
        padding: calc(var(--spacing)*3)0;
        transform: translateY(100%)
    }

    html.is-ready .c-product-specs_item_inner {
        clip-path: inset(0 0 0 0 round var(--radius-md));
        clip-path: inset(0);
        transform: translate(0);
        transition-delay: calc(var(--index)*50ms + var(--extra-delay, 0s));
        transition-duration: var(--transition-duration-slower);
        transition-property: clip-path, transform;
        transition-timing-function: var(--ease-power3-inOut)
    }

    .c-widget-bar {
        align-items: center;
        background-color: #0009;
        border-radius: var(--radius-md);
        color: var(--color-white);
        -moz-column-gap: calc(var(--spacing)*4);
        column-gap: calc(var(--spacing)*4);
        display: flex;
        justify-content: space-between;
        max-width: var(--sticky-bar-width);
        padding: calc(var(--spacing)*1);
        width: 100%
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-widget-bar {
            background-color: color-mix(in oklab, var(--color-black)60%, transparent)
        }
    }

    .c-widget-bar {
        backdrop-filter: blur(60px);
        pointer-events: auto
    }

    .c-widget-bar_content {
        align-items: baseline;
        -moz-column-gap: calc(var(--spacing)*2);
        column-gap: calc(var(--spacing)*2);
        display: flex;
        padding: 0 calc(var(--spacing)*3)
    }

    @media not all and (min-width:700px) {
        .c-widget-bar_content {
            align-items: flex-start;
            flex-direction: column
        }
    }

    .c-widget-bar_extras {
        display: flex
    }

    @media not all and (min-width:1000px) {
        .c-widget-bar_extras {
            gap: calc(var(--spacing)*6)
        }
    }

    @media (min-width:1000px) {
        .c-widget-bar_extras {
            gap: calc(var(--spacing)*12)
        }
    }

    .c-overview-list {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-fluid-xl)
    }

    @media (min-width:1400px) {
        .c-overview-list {
            gap: var(--spacing-fluid-2xl)
        }
    }

    .c-overview-list_inner {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-fluid-xl)
    }

    @media (min-width:1400px) {
        .c-overview-list_inner {
            gap: var(--spacing-fluid-2xl)
        }
    }

    .c-overview-list_heading {
        align-items: center;
        color: #0006;
        display: flex;
        font-size: var(--text-xs);
        gap: var(--grid-gutter);
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-xs--line-height))
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-overview-list_heading {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    .c-overview-list_heading:after,
    .c-overview-list_heading:before {
        background-color: var(--color-border);
        content: "";
        display: block;
        height: 1px;
        width: 100%;
        width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
    }

    @media (min-width:1000px) {

        .c-overview-list_heading:after,
        .c-overview-list_heading:before {
            width: calc(var(--vw, 1vw)*100*.41667 - var(--grid-margin, 0px)*2*.41667 - var(--grid-gutter, 0px)*.58333 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-overview-list_heading-text {
        text-align: center;
        width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
    }

    @media (min-width:1000px) {
        .c-overview-list_heading-text {
            width: calc(var(--vw, 1vw)*100*.16667 - var(--grid-margin, 0px)*2*.16667 - var(--grid-gutter, 0px)*.83333 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-overview-list_container {
        display: flex;
        flex-direction: row;
        gap: calc(var(--spacing)*2)
    }

    .c-overview-list_item {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-unit-md)
    }

    @media (min-width:700px) {
        .c-overview-list_item {
            width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-overview-list_item.-card {
        row-gap: var(--spacing-fluid-md)
    }

    @media (min-width:1400px) {
        .c-overview-list_item.-card {
            row-gap: var(--spacing-fluid-xl)
        }
    }

    .c-overview-list_item.-spec {
        row-gap: calc(var(--spacing)*8)
    }

    @media (min-width:1400px) {
        .c-overview-list_item.-spec {
            row-gap: calc(var(--spacing)*12)
        }
    }

    .c-overview-list_item-label {
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height));
        text-align: center
    }

    .c-overview-list_item_card {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-unit-md);
        width: 100%
    }

    .c-overview-list_item_card-image {
        aspect-ratio: 8/5;
        border-radius: 10px;
        overflow: hidden;
        width: 100%
    }

    .c-overview-list_item_card-label {
        align-self: center;
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height));
        max-width: 70%;
        text-align: center
    }

    .c-overview-list_item_spec {
        display: flex;
        flex-direction: column;
        gap: var(--spacing-unit-sm);
        max-width: 90%
    }

    .c-overview-list_item_spec_heading {
        font-size: var(--text-heading-2xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xs--line-height))
    }

    .c-overview-list_item_spec_subheading {
        color: #0006;
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height))
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-overview-list_item_spec_subheading {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    .c-select {
        font-size: var(--text-input);
        letter-spacing: var(--tw-tracking, var(--text-input--letter-spacing));
        line-height: var(--tw-leading, var(--text-input--line-height));
        --outline-color: var(--color-black);
        background-color: var(--color-sand);
        border-radius: var(--radius-sm);
        display: flex;
        flex-direction: column;
        position: relative
    }

    .c-select_input:focus-visible,
    .c-select_input:focus-visible+.c-select {
        outline: 1px solid var(--outline-color)
    }

    .c-select_input:user-invalid+.c-select {
        outline: 1px solid var(--color-red)
    }

    .c-select_input {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        background-color: var(--color-sand);
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
        background-position: right 26px center;
        background-repeat: no-repeat;
        background-size: 16px;
        border: none;
        border-radius: var(--radius-sm);
        color: inherit;
        cursor: pointer;
        font-size: inherit;
        padding: 20px 26px;
        width: 100%
    }

    .c-select_input:focus-visible {
        outline: 1px solid var(--outline-color);
        outline-offset: -1px
    }

    .c-select_input:user-invalid {
        outline: 1px solid var(--color-red);
        outline-offset: -1px
    }

    .c-select_input option {
        background-color: var(--input-background-color);
        padding: 8px 12px
    }

    .c-select_input::-ms-expand {
        display: none
    }

    .c-select_input:disabled {
        cursor: not-allowed;
        opacity: .6
    }

    .hs-fieldtype-select select {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
        background-position: right 26px center;
        background-repeat: no-repeat;
        background-size: 16px;
        cursor: pointer
    }

    .c-radio {
        font-size: var(--text-input);
        letter-spacing: var(--tw-tracking, var(--text-input--letter-spacing));
        line-height: var(--tw-leading, var(--text-input--line-height));
        --outline-color: var(--color-black);
        background-color: var(--color-sand)
    }

    .c-radio,
    .c-radio_label {
        border-radius: var(--radius-sm)
    }

    .c-radio_label {
        cursor: pointer;
        display: block;
        height: 100%;
        padding: 20px 26px;
        text-align: center;
        width: 100%
    }

    .c-radio_label.-icon {
        align-items: center;
        display: flex;
        justify-content: space-between
    }

    .c-radio_input {
        opacity: 0;
        position: absolute
    }

    :is(.c-radio:has(.c-radio_input:focus-visible), .c-radio:has(.c-radio_input:user-invalid)) {
        outline: 1px solid var(--outline-color)
    }

    .c-radio:has(.c-radio_input:user-invalid) {
        --outline-color: var(--color-red)
    }

    .c-radio_input:checked+.c-radio_label {
        background-color: var(--color-black);
        color: var(--color-white)
    }

    .c-radio_input:disabled+.c-radio_label {
        cursor: not-allowed
    }

    .multi-container {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: 1fr 1fr
    }

    .hs-form-radio-display {
        display: flex;
        position: relative;
        text-align: center
    }

    .hs-form-radio-display .hs-input {
        cursor: pointer;
        height: 100%;
        opacity: 0;
        position: absolute;
        width: 100% !important;
        z-index: 2
    }

    .hs-form-radio-display span {
        background-color: var(--color-sand);
        border-radius: var(--radius-sm);
        padding: 20px 26px;
        width: 100%
    }

    .hs-form-radio-display .hs-input:checked+span {
        background-color: var(--color-black);
        color: var(--color-white)
    }

    .c-modal-feature {
        --modal-margin: calc(var(--header-area) + var(--spacing)*4)var(--grid-margin)calc(var(--spacing)*4)var(--grid-margin);
        --modal-padding: clamp(1.25rem, -0.1786rem + 7.1429vw, 6.25rem)
    }

    .c-modal-video {
        --modal-margin: 0 var(--grid-margin);
        --modal-background-color: transparent;
        --modal-padding: 0;
        --modal-min-height: auto;
        align-items: center;
        display: flex;
        justify-content: center
    }

    @media not all and (min-width:700px) {
        .c-modal-video {
            --modal-close-right: 0;
            --modal-close-top: calc(var(--spacing)*12*-1)
        }
    }

    @media (min-width:700px) {
        .c-modal-video {
            --modal-close-right: calc(var(--spacing)*10*-1);
            --modal-close-top: calc(var(--spacing)*10*-1)
        }
    }

    .c-modal-video_container {
        aspect-ratio: 16/9
    }

    .c-modal-video_inner {
        clip-path: inset(0 round var(--radius-md));
        height: 100%;
        position: relative;
        width: 100%
    }

    .c-modal-video_inner iframe {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-wysiwyg>*+* {
        margin-block-start: var(--flow-space, 1em)
    }

    .c-wysiwyg {
        font-size: var(--text-lg);
        letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
        line-height: var(--tw-leading, var(--text-lg--line-height))
    }

    .c-wysiwyg h1,
    .c-wysiwyg h2,
    .c-wysiwyg h3,
    .c-wysiwyg h4,
    .c-wysiwyg h5,
    .c-wysiwyg h6,
    .c-wysiwyg ol,
    .c-wysiwyg p,
    .c-wysiwyg ul {
        display: block;
        margin-left: 0;
        margin-right: auto;
        position: relative
    }

    .c-wysiwyg a,
    .c-wysiwyg span {
        display: inline;
        overflow-wrap: break-word;
        word-break: break-all
    }

    .c-wysiwyg div,
    .c-wysiwyg span {
        overflow-wrap: normal;
        white-space: normal;
        word-break: normal
    }

    .c-wysiwyg td,
    .c-wysiwyg th {
        padding: calc(var(--spacing)*3);
        text-align: left
    }

    .c-wysiwyg ol,
    .c-wysiwyg ul {
        --li-margin-top: .5em;
        --li-padding-left: 0em;
        list-style-type: circle;
        margin-left: 1em
    }

    .c-wysiwyg ol>li,
    .c-wysiwyg ul>li {
        padding-left: var(--li-padding-left)
    }

    .c-wysiwyg ol>li+li,
    .c-wysiwyg ul>li+li {
        margin-top: var(--li-margin-top)
    }

    .c-wysiwyg ul>li:before {
        content: "";
        height: 1px;
        position: absolute;
        top: .7em;
        width: .36em
    }

    .c-wysiwyg ol {
        counter-reset: counter
    }

    .c-wysiwyg ol>li {
        counter-increment: counter
    }

    .c-wysiwyg ol>li:before {
        color: currentColor;
        content: counter(counter)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-wysiwyg ol>li:before {
            color: color-mix(in srgb, currentColor 40%, transparent)
        }
    }

    .c-wysiwyg bold,
    .c-wysiwyg strong {
        font-weight: 700
    }

    .c-wysiwyg a {
        color: var(--color-red)
    }

    .c-wysiwyg a:hover {
        text-decoration: underline
    }

    .c-wysiwyg h1,
    .c-wysiwyg h2,
    .c-wysiwyg h3,
    .c-wysiwyg h4,
    .c-wysiwyg h5,
    .c-wysiwyg h6 {
        margin-block-end: var(--flow-space, .8em)
    }

    .c-wysiwyg h1 {
        font-size: var(--wysiwyg-h1)
    }

    .c-wysiwyg h2 {
        font-size: var(--wysiwyg-h2)
    }

    .c-wysiwyg h3 {
        font-size: var(--wysiwyg-h3)
    }

    .c-wysiwyg h4 {
        font-size: var(--wysiwyg-h4)
    }

    .c-wysiwyg h5 {
        font-size: var(--wysiwyg-h5)
    }

    .c-wysiwyg h6 {
        font-size: var(--wysiwyg-h6)
    }

    .c-wysiwyg img {
        border-radius: var(--radius-sm);
        width: 100%
    }

    .c-wysiwyg blockquote {
        --flow-space: 2em;
        margin-bottom: var(--flow-space);
        margin-left: 0;
        margin-right: auto;
        padding: 0;
        position: relative;
        quotes: "“" "”" "’" "’"
    }

    .c-wysiwyg blockquote p {
        max-width: 100%;
        padding: 0
    }

    .c-wysiwyg blockquote p:before {
        content: open-quote
    }

    .c-wysiwyg blockquote p:after {
        content: close-quote
    }

    html.is-safari .c-wysiwyg blockquote p {
        text-wrap: balance
    }

    .c-wysiwyg table {
        margin-block: calc(var(--spacing)*12);
        width: 100%
    }

    .c-wysiwyg table td {
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height));
        padding: calc(var(--spacing)*3)calc(var(--spacing)*4)
    }

    .c-wysiwyg table tr:nth-child(2n) td {
        background-color: var(--color-grey-light)
    }

    .c-timelapse {
        display: block;
        height: calc(var(--svh, 1svh)*100);
        min-height: calc(var(--vw, 1vw)*60);
        overflow: hidden;
        padding: var(--grid-margin-xl);
        position: relative;
        z-index: 0
    }

    .c-timelapse_inner {
        clip-path: inset(0 round var(--radius-md));
        height: 100%;
        width: 100%
    }

    .c-timelapse_content,
    .c-timelapse_inner {
        align-items: center;
        display: flex;
        justify-content: center;
        position: relative
    }

    .c-timelapse_content {
        color: var(--color-white);
        flex-direction: column;
        max-width: 35.625rem;
        row-gap: var(--spacing-fluid-md);
        text-align: center;
        z-index: 1
    }

    @media not all and (min-width:700px) {
        .c-timelapse_content {
            padding: 0 var(--grid-margin-xl);
            width: 100%
        }
    }

    @media (min-width:700px) {
        .c-timelapse_content {
            width: 60%
        }
    }

    .c-timelapse_video {
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-timelapse_video:before {
        background-color: #0003;
        content: "";
        inset: 0;
        position: absolute
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-timelapse_video:before {
            background-color: color-mix(in oklab, var(--color-black)20%, transparent)
        }
    }

    .c-timelapse_video:before {
        z-index: 1
    }

    .c-timelapse_clock {
        align-items: center;
        color: #fff;
        display: flex;
        justify-content: center;
        pointer-events: none;
        position: absolute;
        z-index: 0
    }

    @media not all and (min-width:700px) {
        .c-timelapse_clock {
            inset: 0 -20%;
            padding: var(--spacing-fluid-sm)
        }
    }

    @media (min-width:700px) {
        .c-timelapse_clock {
            inset: 0;
            padding: var(--spacing-fluid-lg)
        }
    }

    .c-timelapse_clock_inner {
        height: 100%;
        position: relative;
        width: 100%
    }

    .c-timelapse_clock_base {
        --icon-width: 100%;
        height: 100%;
        position: absolute;
        width: 100%
    }

    .c-timelapse_clock_circle {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        transform: rotate(-90deg);
        width: 100%
    }

    .c-timelapse_clock_circle circle {
        fill: none;
        stroke: var(--color-red);
        stroke-width: 2px;
        stroke-dasharray: var(--circle-length);
        animation: clock var(--video-duration, 30s)linear 0s infinite
    }

    .c-timelapse:not(.is-inview) .c-timelapse_clock_circle circle {
        animation-play-state: paused
    }

    @media (prefers-reduced-motion:reduce) {
        .c-timelapse_clock_circle {
            display: none
        }
    }

    @keyframes clock {
        0% {
            stroke-dashoffset: var(--circle-length)
        }

        to {
            stroke-dashoffset: 0
        }
    }

    .c-job-listing {
        display: block
    }

    .c-job-listing_header {
        display: flex;
        gap: var(--grid-gutter)
    }

    .c-job-listing_title {
        width: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*0)
    }

    .c-job-listing_count {
        width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
    }

    .c-job-listing_sort {
        border-bottom: 1px solid var(--color-border);
        display: flex;
        gap: var(--grid-gutter);
        justify-content: space-between;
        margin-top: calc(var(--spacing-fluid-md)*1.5);
        padding-bottom: calc(var(--spacing-unit-md)/2)
    }

    .c-job-listing_sort_icon {
        pointer-events: none
    }

    .c-job-listing_sort_button {
        color: #0006;
        font-size: var(--text-xs);
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-xs--line-height))
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-job-listing_sort_button {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    .c-job-listing_sort_button {
        text-align: start;
        transition: color .1s ease-in-out
    }

    .c-job-listing_sort_button:hover {
        color: var(--color-black)
    }

    @container (min-width:800px) {
        .c-job-listing_sort_button.-location {
            width: calc(var(--vw, 1vw)*100*.16667 - var(--grid-margin, 0px)*2*.16667 - var(--grid-gutter, 0px)*.83333 + var(--grid-gutter, 0px)*0)
        }

        .c-job-listing_sort_button.-team {
            width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
        }

        .c-job-listing_sort_button.-type {
            width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-editorial-block {
        display: flex
    }

    @media not all and (min-width:1000px) {
        .c-editorial-block {
            flex-direction: column
        }
    }

    @media (min-width:1000px) {
        .c-editorial-block {
            flex-direction: row
        }
    }

    .c-editorial-block_content {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*10);
        margin-left: calc(var(--vw, 1vw)*100*.25 - var(--grid-margin, 0px)*2*.25 - var(--grid-gutter, 0px)*.75 + var(--grid-gutter, 0px)*0)
    }

    @media (min-width:1000px) {
        .c-editorial-block_content {
            margin-left: calc(var(--grid-margin) + var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-editorial-block_description {
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height))
    }

    @media (min-width:1000px) {
        .c-editorial-block_description {
            width: calc(var(--vw, 1vw)*100*.25 - var(--grid-margin, 0px)*2*.25 - var(--grid-gutter, 0px)*.75 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-editorial-block_image {
        aspect-ratio: 16/9
    }

    @media not all and (min-width:1000px) {
        .c-editorial-block_image {
            aspect-ratio: 16/10;
            margin-top: calc(var(--spacing)*10)
        }
    }

    @media (min-width:1000px) {
        .c-editorial-block_image {
            margin-left: calc(var(--vw, 1vw)*100*.08333 - var(--grid-margin, 0px)*2*.08333 - var(--grid-gutter, 0px)*.91667 + var(--grid-gutter, 0px)*0 + var(--grid-gutter)*2);
            width: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*0 + var(--grid-gutter))
        }
    }

    .c-abstract-mask {
        --mask-gutter: var(--grid-margin-xl);
        --mask-outer-background: var(--color-white);
        --mask-inner-background: var(--color-placeholder);
        --mask-progress-area: 100%;
        --card-spacing: calc(var(--spacing)*4);
        --card-ratio: 40/25;
        --card-from-width: 250px;
        --card-from-height: calc(var(--card-from-width)*var(--card-ratio));
        --card-to-width: calc(100% - var(--mask-gutter)*2);
        --card-to-height: calc(100% - var(--mask-gutter)*2);
        --card-width: calc(var(--card-from-width) + (var(--mask-progress, 0) - 0)/1*(var(--card-to-width) - var(--card-from-width)));
        --card-height: calc(var(--card-from-height) + (var(--mask-progress, 0) - 0)/1*(var(--card-to-height) - var(--card-from-height)));
        --content-appear-offset: calc(var(--lvh, 1lvh)*130);
        display: block;
        position: relative
    }

    @media (hover:none),
    (prefers-reduced-motion:reduce) {
        .c-abstract-mask {
            clip-path: inset(var(--grid-margin-xl)round var(--radius-md));
            --mask-progress: 1 !important
        }
    }

    @media (prefers-reduced-motion:no-preference) and (hover:hover) {
        .c-abstract-mask {
            height: calc(var(--lvh, 1lvh)*300)
        }
    }

    .c-abstract-mask [data-focus-area] {
        bottom: 0;
        height: calc(var(--svh, 1svh)*100);
        left: 0;
        position: absolute;
        width: 100%
    }

    .c-abstract-mask_mask {
        height: calc(var(--lvh, 1lvh)*100);
        pointer-events: none;
        width: 100%;
        z-index: 3
    }

    @media (prefers-reduced-motion:no-preference) and (hover:hover) {
        .c-abstract-mask_mask {
            left: 0;
            position: sticky;
            top: 0
        }
    }

    .c-abstract-mask_el {
        background: var(--mask-outer-background);
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    @media (prefers-reduced-motion:no-preference) and (hover:hover) {
        .c-abstract-mask_el {
            clip-path: polygon(0 0, 0 100%, calc(50% - var(--card-width)/2)100%, calc(50% - var(--card-width)/2)calc(50% - var(--card-height)/2), calc(50% + var(--card-width)/2)calc(50% - var(--card-height)/2), calc(50% + var(--card-width)/2)calc(50% + var(--card-height)/2), calc(50% - var(--card-width)/2)calc(50% + var(--card-height)/2), calc(50% - var(--card-width)/2)100%, 100% 100%, 100% 0)
        }
    }

    .c-abstract-mask_el_from {
        height: var(--card-from-height);
        width: var(--card-from-width)
    }

    .c-abstract-mask_el_from,
    .c-abstract-mask_el_top {
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        visibility: hidden
    }

    .c-abstract-mask_el_top {
        height: var(--card-to-height);
        width: var(--card-to-width)
    }

    .c-abstract-mask_corners {
        height: 100%;
        left: 0;
        overflow: hidden;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-abstract-mask_corners span {
        --border-radius: 24px;
        color: var(--mask-outer-background);
        height: var(--border-radius);
        left: var(--left);
        position: absolute;
        top: var(--top);
        width: var(--border-radius)
    }

    .c-abstract-mask_corners span:first-child {
        --top: calc(var(--lvh, 1lvh)*50 - var(--card-height)/2);
        --left: calc(var(--vw, 1vw)*50 - var(--card-width)/2);
        transform: scaleX(-1)
    }

    .c-abstract-mask_corners span:nth-child(2) {
        --top: calc(var(--lvh, 1lvh)*50 - var(--card-height)/2);
        --left: calc(var(--vw, 1vw)*50 + var(--card-width)/2 - var(--border-radius))
    }

    .c-abstract-mask_corners span:nth-child(3) {
        --top: calc(var(--lvh, 1lvh)*50 + var(--card-height)/2 - var(--border-radius));
        --left: calc(var(--vw, 1vw)*50 - var(--card-width)/2);
        transform: scaleX(-1)scaleY(-1)
    }

    .c-abstract-mask_corners span:nth-child(4) {
        --top: calc(var(--lvh, 1lvh)*50 + var(--card-height)/2 - var(--border-radius));
        --left: calc(var(--vw, 1vw)*50 + var(--card-width)/2 - var(--border-radius));
        transform: scaleY(-1)
    }

    .c-abstract-mask_corners span:before {
        background: var(--mask-outer-background);
        content: "";
        height: calc(var(--lvh, 1lvh)*100);
        left: 100%;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-abstract-mask_corners span:after {
        background: var(--mask-outer-background);
        content: "";
        height: 100%;
        position: absolute;
        right: 0;
        top: -100%;
        width: calc(var(--vw, 1vw)*100)
    }

    .c-abstract-mask_corners span svg {
        fill: currentColor;
        height: 100%;
        width: 100%
    }

    .c-abstract-mask_reference {
        height: var(--mask-progress-area);
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        visibility: hidden;
        width: 100%;
        z-index: -1
    }

    .c-abstract-mask_inner {
        height: calc(var(--lvh, 1lvh)*100);
        margin-top: calc(var(--lvh, 1lvh)*100*-1);
        position: sticky;
        top: 0
    }

    @media (hover:none),
    (prefers-reduced-motion:reduce) {
        .c-abstract-mask_inner {
            min-height: 100vh
        }
    }

    .c-abstract-mask_background {
        background: var(--mask-inner-background);
        inset: 0;
        position: absolute;
        z-index: -1
    }

    @media (prefers-reduced-motion:no-preference) and (hover:hover) {
        .c-abstract-mask_background {
            transform: scale(calc(var(--cover-ratio) + (var(--mask-progress, 0) - 0)/1*(1 - var(--cover-ratio))))
        }
    }

    .c-abstract-mask_content {
        height: 100%;
        padding-block: var(--mask-gutter);
        position: relative;
        z-index: 1
    }

    .c-product-widget-container {
        align-items: center;
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: space-between;
        padding-inline: calc(var(--grid-margin-xl)*2);
        padding-bottom: var(--grid-margin-xl);
        padding-top: var(--spacing-fluid-3xl)
    }

    .c-product-widget {
        background-color: #0009;
        color: var(--color-white);
        min-height: 180px
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-product-widget {
            background-color: color-mix(in oklab, var(--color-black)60%, transparent)
        }
    }

    .c-product-widget {
        backdrop-filter: blur(100px);
        border-radius: var(--radius-md);
        max-width: 61.875rem;
        padding: calc(var(--spacing)*1);
        width: 100%
    }

    @media (prefers-reduced-motion:no-preference) and (hover:hover) {
        .c-product-widget {
            transform: translate3d(0, calc(100% - var(--mask-progress)*100%), 0)
        }
    }

    @media not all and (min-width:700px) {
        .c-product-widget {
            display: flex;
            flex-direction: column
        }
    }

    @media (min-width:700px) {
        .c-product-widget {
            -moz-column-gap: calc(var(--spacing)*2);
            column-gap: calc(var(--spacing)*2);
            display: grid;
            grid-template-columns: repeat(3, 1fr)
        }
    }

    .c-product-widget_card {
        align-items: flex-start;
        border-radius: var(--radius-sm);
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: space-between;
        overflow: hidden;
        padding: calc(var(--spacing)*3);
        position: relative;
        z-index: 0
    }

    .c-product-widget_card.-primary {
        background-color: var(--color-accent)
    }

    @media (min-width:700px) {
        .c-product-widget_card.-primary {
            grid-column: span 2
        }
    }

    .c-product-widget_card.-primary:before {
        background-color: var(--color-black);
        content: "";
        height: 100%;
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        transform: scaleY(0);
        transform-origin: 0 0;
        width: 100%;
        z-index: -1
    }

    html.is-first-loaded .c-product-widget_card.-primary:before {
        transition: transform var(--transition-duration)var(--ease), opacity var(--transition-duration)var(--ease)
    }

    @media (hover:hover) {
        .c-product-widget_card.-primary:hover:before {
            opacity: .1;
            transform: scaleY(1);
            transform-origin: 0 100%
        }
    }

    @media not all and (min-width:700px) {
        .c-product-widget_card {
            min-height: 120px
        }
    }

    .c-product-widget_link:before {
        border-radius: var(--radius-sm);
        content: "";
        inset: 0;
        position: absolute
    }

    .c-product-widget_content {
        align-items: flex-end;
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: flex;
        justify-content: space-between;
        width: 100%
    }

    .c-product-widget_text {
        max-width: 15rem
    }

    @media (prefers-reduced-motion:no-preference) and (hover:hover) {
        .c-product-widget-container_title {
            clip-path: inset(-10%)
        }

        .c-product-widget-container_title span[data-word] {
            display: inline-block;
            transform: translate3d(0, calc(100% - var(--mask-progress)*100%), 0)
        }
    }

    .c-fadein-text {
        --line-stagger: 30ms;
        --extra-delay: .2s;
        display: block;
        margin-top: -1lh;
        position: relative
    }

    .c-fadein-text_line {
        display: block
    }

    html.is-ready .c-fadein-text_line {
        transition: opacity var(--transition-duration-slow)var(--ease), filter var(--transition-duration-slow)var(--ease)
    }

    .c-fadein-text_line:not(.is-active) {
        filter: blur(.1rem);
        opacity: .1
    }

    .c-fadein-text_line.-empty {
        height: 1lh
    }

    .c-fadein-text_line_inner {
        display: block;
        opacity: 0;
        transform: translateY(150%)
    }

    html.is-ready .c-fadein-text_line_inner {
        opacity: 1;
        transform: translate(0);
        transition: transform var(--transition-duration-slower)var(--ease-power3-out), opacity var(--transition-duration-slower)var(--ease-power3-out);
        transition-delay: calc(var(--line-index)*var(--line-stagger) + var(--extra-delay))
    }

    .c-symbol {
        --icon-width: clamp(2.8125rem, 2.0089rem + 4.0179vw, 5.625rem);
        align-items: center;
        -moz-column-gap: calc(var(--icon-width)*.1);
        column-gap: calc(var(--icon-width)*.1);
        display: flex;
        justify-content: center
    }

    @media (hover:hover) and (prefers-reduced-motion:no-preference) {
        .c-symbol_icon {
            transform: translate3d(calc((1 - var(--smooth-progress))*40%*var(--direction)), calc((1 - var(--smooth-progress))*60%), 0)rotate(calc((1 - var(--smooth-progress))*15deg*var(--direction)))
        }

        .c-symbol_icon:first-child {
            --direction: -1
        }

        .c-symbol_icon:nth-child(4) {
            --direction: 1
        }
    }

    .c-purchase-experience_container {
        --sticky-bar-width: 100%;
        display: flex;
        padding-top: var(--header-area)
    }

    @media not all and (min-width:1000px) {
        .c-purchase-experience_container {
            flex-direction: column
        }
    }

    @media (min-width:1000px) {
        .c-purchase-experience_container {
            flex-direction: row-reverse;
            gap: var(--grid-gutter)
        }
    }

    .c-purchase-experience_images {
        clip-path: inset(0 round var(--radius-md))
    }

    @media not all and (min-width:1000px) {
        .c-purchase-experience_images {
            aspect-ratio: 1;
            display: none;
            margin-top: var(--grid-gutter);
            position: relative
        }
    }

    @media (min-width:1000px) {
        .c-purchase-experience_images {
            align-self: flex-start;
            flex-shrink: 0;
            height: calc(var(--svh, 1svh)*100 - var(--header-area) - var(--grid-margin-xl));
            position: sticky;
            top: var(--header-area);
            width: calc(var(--vw, 1vw)*100*.75 - var(--grid-margin, 0px)*2*.75 - var(--grid-gutter, 0px)*.25 + var(--grid-gutter, 0px)*0)
        }
    }

    .c-purchase-experience_images_toggler {
        bottom: calc(var(--spacing)*12);
        left: 50%;
        padding: calc(var(--spacing)*1);
        position: absolute;
        transform: translate(-50%)
    }

    .c-purchase-experience_images_toggler_button {
        align-items: center;
        display: flex;
        height: var(--button-height);
        justify-content: center;
        padding: 0 calc(var(--spacing)*6);
        transition: color var(--transition-duration-fast)
    }

    .c-purchase-experience_images_toggler_button.-active {
        color: var(--color-white)
    }

    .c-purchase-experience_images_toggler_indicator {
        background: var(--color-black);
        border-radius: 100px;
        height: calc(100% - var(--spacing)*2);
        position: absolute;
        top: calc(var(--spacing)*1);
        transform: translateY(0);
        transition: transform var(--transition-duration-fast);
        width: calc(50% - var(--spacing)*1);
        z-index: var(--z-index-below)
    }

    .c-purchase-experience_images_toggler_indicator.-left {
        transform: translate(0)
    }

    .c-purchase-experience_images_toggler_indicator.-right {
        transform: translate(100%)
    }

    .c-purchase-experience_content {
        display: flex;
        flex-direction: column;
        width: 100%
    }

    .c-purchase-experience_sticky {
        bottom: var(--grid-gutter);
        display: flex;
        justify-content: center;
        margin-top: var(--grid-gutter);
        position: sticky;
        z-index: var(--z-index-widget-bar)
    }

    .c-purchase-experience_content_heading {
        align-items: center;
        display: flex;
        flex-direction: column;
        padding-block: var(--spacing-fluid-lg)var(--spacing-fluid-xl);
        row-gap: calc(var(--spacing)*8);
        text-align: center
    }

    .c-purchase-experience_content_group {
        display: flex;
        flex-direction: column;
        row-gap: var(--grid-gutter)
    }

    .c-purchase-experience_content_body {
        display: flex;
        flex-direction: column;
        row-gap: calc(var(--spacing)*15)
    }

    .c-purchase-experience_content_group_list {
        display: flex;
        flex-direction: column;
        row-gap: var(--grid-gutter)
    }

    @media not all and (min-width:1000px) {
        .c-purchase-experience_image_mobile {
            aspect-ratio: 16/9;
            clip-path: inset(0 round var(--radius-md));
            margin-bottom: calc(var(--spacing)*4);
            position: relative
        }
    }

    .c-article-listing {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: grid;
        row-gap: var(--spacing-fluid-2xl)
    }

    @media (min-width:500px) {
        @media not all and (min-width:1000px) {
            .c-article-listing {
                grid-template-columns: repeat(2, 1fr)
            }
        }
    }

    @media (min-width:1000px) {
        .c-article-listing {
            grid-template-columns: repeat(12, 1fr)
        }

        .c-article-listing_item:nth-child(3n+1) {
            grid-column: span 7
        }

        .c-article-listing_item:nth-child(3n+2),
        .c-article-listing_item:nth-child(3n+3) {
            grid-column: span 4
        }

        .c-article-listing_item:nth-child(2n+2) {
            grid-column-end: -1
        }
    }

    .c-pagination {
        display: flex;
        flex-direction: column;
        row-gap: var(--spacing-fluid-lg)
    }

    @media (min-width:1000px) {
        .c-pagination {
            padding-left: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*1)
        }
    }

    .c-pagination_list {
        align-items: center;
        display: flex
    }

    .c-pagination_item:first-child {
        margin-left: -.5em
    }

    .c-pagination_index {
        padding: .5em
    }

    .c-pagination_index.is-active {
        opacity: .4;
        pointer-events: none
    }

    .c-pagination_navigation {
        display: flex;
        justify-content: space-between
    }

    .c-pagination_next[disabled],
    .c-pagination_prev[disabled] {
        opacity: .4;
        pointer-events: none
    }

    .c-compare {
        row-gap: var(--spacing-fluid-2xl);
        scroll-padding-inline: var(--grid-margin);
        scroll-snap-stop: always;
        scroll-snap-type: x mandatory;
        -ms-overflow-style: none;
        display: flex;
        flex-direction: column;
        overflow-x: auto;
        scrollbar-width: none
    }

    .c-compare::-webkit-scrollbar {
        display: none
    }

    .c-compare_section {
        display: flex;
        flex-direction: column;
        min-width: 100%;
        row-gap: var(--spacing-fluid-2xl);
        width: -moz-fit-content;
        width: fit-content
    }

    .c-compare_title {
        align-items: center;
        color: var(--color-border);
        -moz-column-gap: var(--spacing-fluid-lg);
        column-gap: var(--spacing-fluid-lg);
        display: flex;
        left: 0;
        position: sticky;
        width: calc(var(--vw, 1vw)*100*1 - var(--grid-margin, 0px)*2*1 - var(--grid-gutter, 0px)*0 + var(--grid-gutter, 0px)*0)
    }

    .c-compare_title:after,
    .c-compare_title:before {
        background-color: currentColor;
        content: "";
        flex: auto;
        height: 1px
    }

    .c-compare_content {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter);
        display: flex
    }

    .c-compare_col {
        flex: auto;
        min-width: max(250px, calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0));
        scroll-snap-align: start
    }

    .c-product-bar_container {
        bottom: 0;
        display: flex;
        justify-content: center;
        padding: calc(var(--grid-margin-xl)*2);
        pointer-events: none;
        position: fixed;
        transition-duration: var(--transition-duration-medium);
        transition-property: transform, visibility;
        transition-timing-function: var(--ease-power3-out);
        width: 100%;
        z-index: var(--z-index-widget-bar)
    }

    .c-product-bar:not(.is-inview) .c-product-bar_container,
    html.is-product-bar-hidden .c-product-bar_container {
        transform: translateY(100%);
        transition-delay: 0s, var(--transition-duration);
        visibility: hidden
    }

    .c-modal-save-build {
        --modal-margin: 0px;
        --modal-background-opacity: 10%;
        --modal-padding: calc(var(--spacing)*6);
        --modal-max-width: 100%
    }

    @media (min-width:700px) {
        .c-modal-save-build {
            --modal-max-width: 28.125rem;
            --modal-margin: var(--grid-gutter)var(--grid-gutter)var(--grid-gutter)calc(100% - var(--modal-max-width))
        }
    }

    .c-modal-save-build .modal_container {
        display: flex
    }

    .c-modal-save-build_close {
        margin: 0;
        position: absolute
    }

    @media not all and (min-width:700px) {
        .c-modal-save-build_close {
            left: calc(100% - var(--button-height) - var(--modal-padding));
            top: var(--modal-padding)
        }
    }

    @media (min-width:700px) {
        .c-modal-save-build_close {
            left: calc(var(--button-height)*-1 - var(--grid-gutter));
            top: 0
        }
    }

    .c-modal-save-build_content {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: space-between
    }

    .c-modal-save-build_content.-active {
        display: none
    }

    .c-modal-save-build_content_newsletter-form {
        background-color: var(--color-white);
        border: 1px solid var(--color-border);
        border-radius: calc(var(--button-radius)*2);
        display: flex;
        justify-content: space-between;
        padding: calc(var(--spacing)*1);
        width: 100%
    }

    .c-modal-save-build_content_newsletter-form input[name=email] {
        border-radius: calc(var(--button-radius)*2);
        flex-grow: 1;
        padding-inline: calc(var(--spacing)*5)
    }

    .c-modal-save-build_content_newsletter-form-container {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*4);
        width: 100%
    }

    .c-rail {
        --animation-duration: 15s;
        display: block;
        overflow: hidden;
        position: relative;
        width: 100%
    }

    .c-rail_inner {
        white-space: nowrap
    }

    .c-rail_inner,
    .c-rail_inner ul {
        align-items: center;
        display: flex
    }

    .c-rail_inner ul {
        animation: rail var(--animation-duration)linear infinite
    }

    .c-rail:not(.is-inview) .c-rail_inner ul {
        animation-play-state: paused
    }

    .c-rail_placeholder {
        inset: 0;
        position: absolute
    }

    .c-rail_item {
        align-items: center;
        display: flex;
        gap: calc(var(--spacing)*16);
        padding-right: calc(var(--spacing)*16)
    }

    .c-rail_placeholder .c-rail_item {
        visibility: hidden
    }

    .c-timeline {
        --icon-size: 80px;
        --dash-gap: 6px;
        --dash-width: 2px;
        --dash-array: 310px;
        --pulse-duration: 2.8s;
        --pulse-stagger: .3s;
        flex-direction: column
    }

    .c-timeline,
    .c-timeline_item {
        display: flex
    }

    @media (min-width:700px) {
        @media not all and (min-width:1000px) {
            .c-timeline_item {
                -moz-column-gap: var(--spacing-fluid-lg);
                column-gap: var(--spacing-fluid-lg)
            }
        }
    }

    @media (min-width:1000px) {
        .c-timeline_item {
            justify-content: center;
            position: relative
        }
    }

    .c-timeline_inner {
        pointer-events: none;
        width: 100%
    }

    @media not all and (min-width:700px) {
        .c-timeline_inner {
            padding-bottom: var(--grid-gutter)
        }
    }

    @media (min-width:700px) {
        .c-timeline_inner {
            display: flex
        }

        @media not all and (min-width:1000px) {
            .c-timeline_inner {
                padding-bottom: var(--spacing-fluid-md)
            }
        }
    }

    @media (min-width:1000px) {

        .c-timeline_item:first-child .c-timeline_inner,
        .c-timeline_item:nth-child(2) .c-timeline_inner {
            position: absolute
        }

        .c-timeline_item:first-child .c-timeline_inner {
            justify-content: flex-end;
            padding-right: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*1)
        }

        .c-timeline_item:nth-child(2) .c-timeline_inner {
            padding-left: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*1)
        }

        .c-timeline_item:nth-child(3) .c-timeline_inner {
            justify-content: flex-end;
            padding-right: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*1)
        }
    }

    .c-timeline_tile {
        pointer-events: auto
    }

    @media (min-width:1000px) {
        .c-timeline_item:nth-child(2) .c-timeline_tile {
            transform: translateY(-50%)
        }

        .c-timeline_item:nth-child(3) .c-timeline_visual {
            display: flex;
            inset: 0;
            justify-content: center;
            position: absolute
        }
    }

    .c-timeline_visual_inner {
        position: relative
    }

    @media not all and (min-width:700px) {
        .c-timeline_visual_inner {
            display: none
        }
    }

    @media (min-width:700px) {
        @media not all and (min-width:1000px) {
            .c-timeline_visual_inner {
                display: flex;
                flex-direction: column;
                height: 100%
            }
        }
    }

    @media (min-width:1000px) {
        .c-timeline_visual_inner {
            display: flex;
            flex-direction: column;
            padding-top: var(--icon-size);
            transform: translateX(var(--offset))
        }

        .c-timeline_item:first-child .c-timeline_visual_inner {
            --offset: calc(-50% + 1px)
        }

        .c-timeline_item:nth-child(2) .c-timeline_visual_inner {
            --offset: calc(50% - 1px)
        }

        .c-timeline_item:nth-child(3) .c-timeline_visual_inner {
            --offset: calc(150% - 3px)
        }
    }

    .c-timeline_icon {
        --color-background: var(--color-black);
        align-items: center;
        background-color: var(--color-background);
        border-radius: 50%;
        color: var(--color-white);
        display: flex;
        height: var(--icon-size);
        justify-content: center;
        transition: background-color var(--transition-duration-fast);
        width: var(--icon-size);
        z-index: 1
    }

    .c-timeline_visual.is-inview .c-timeline_icon {
        --color-background: var(--color-green)
    }

    @media not all and (min-width:1000px) {
        .c-timeline_icon {
            position: relative
        }
    }

    @media (min-width:1000px) {
        .c-timeline_icon {
            left: calc(var(--icon-size)*-.5);
            position: absolute;
            top: 0
        }
    }

    .c-timeline_connection {
        position: relative
    }

    .c-timeline_item:last-child .c-timeline_connection {
        visibility: hidden
    }

    @media not all and (min-width:1000px) {
        .c-timeline_connection {
            flex-grow: 1
        }

        .c-timeline_connection:after,
        .c-timeline_connection:before {
            bottom: 0;
            content: "";
            left: calc(var(--icon-size)/2);
            position: absolute;
            top: calc(var(--dash-gap)*-1);
            width: 2px
        }

        .c-timeline_connection:before {
            animation: dash-scroll .6s linear infinite;
            background-image: repeating-linear-gradient(to bottom, currentColor 0, currentColor var(--dash-width), transparent var(--dash-width), transparent calc(var(--dash-width) + var(--dash-gap)))
        }

        .c-timeline_connection:after {
            background-color: var(--color-green);
            transform: scaleY(calc(var(--progress)));
            transform-origin: 0 0
        }
    }

    @media (min-width:1000px) {
        .c-timeline_svg {
            stroke-width: var(--dash-width)
        }

        .c-timeline_svg.-base {
            stroke-dasharray: var(--dash-width)var(--dash-gap);
            animation: dashoffsetMoving .6s linear infinite
        }

        .c-timeline:not(.is-inview) .c-timeline_svg.-base {
            animation-play-state: paused
        }

        .c-timeline_svg.-animated {
            color: var(--color-green);
            width: 100%;
            z-index: 2;
            stroke-dasharray: var(--dash-array);
            stroke-dashoffset: calc(var(--dash-array) + var(--progress)*var(--dash-array));
            left: 0;
            position: absolute;
            top: 0
        }
    }

    @media not all and (min-width:1000px) {
        .c-timeline_svg {
            display: none !important
        }
    }

    .c-timeline_pulse {
        transition: opacity var(--transition-duration-slower)
    }

    .c-timeline_item:not(.is-inview) .c-timeline_pulse {
        opacity: 0
    }

    .c-timeline_pulse i {
        border: 1px solid var(--color-background);
        border-radius: 50%;
        inset: 0;
        opacity: 0;
        position: absolute
    }

    .c-timeline_item.is-inview .c-timeline_pulse i {
        animation: pulsed var(--pulse-duration)ease-out infinite;
        animation-delay: calc(var(--index)*var(--pulse-stagger))
    }

    @keyframes pulsed {
        0% {
            opacity: 1;
            transform: scale(1)
        }

        60% {
            opacity: 0;
            transform: scale(1.8)
        }

        to {
            opacity: 0
        }
    }

    @keyframes dashoffsetMoving {
        0% {
            stroke-dashoffset: 0
        }

        to {
            stroke-dashoffset: calc(var(--dash-gap) + var(--dash-width))
        }
    }

    @keyframes dash-scroll {
        0% {
            background-position: 0 0
        }

        to {
            background-position: 0 calc(var(--dash-gap) + var(--dash-width))
        }
    }

    .c-sun {
        aspect-ratio: 1859/1941;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: -1
    }

    .c-sun_inner {
        height: 100%;
        transform: translateY(-50%);
        width: 100%
    }

    [data-anim-text] [data-word] {
        clip-path: inset(0 -.1em)
    }

    [data-anim-text] [data-char] {
        display: inline-block;
        opacity: 0;
        transform: translateY(100%)
    }

    html.is-ready [data-anim-text] [data-char] {
        transition-duration: var(--anim-text-leave-duration);
        transition-property: transform, opacity;
        transition-timing-function: var(--anim-text-easing)
    }

    html.is-ready [data-anim-parent].is-inview [data-anim-text] [data-char],
    html.is-ready [data-anim-text].is-inview [data-char] {
        opacity: 1;
        transform: translate(0);
        transition-delay: calc(var(--anim-text-enter-stagger)*var(--char-index, 0) + var(--extra-delay, 0s));
        transition-duration: var(--anim-text-enter-duration)
    }

    [data-anim-slide] {
        opacity: 0;
        transform: translate3d(0, var(--anim-slide-offset), 0)
    }

    html.is-ready [data-anim-slide] {
        transition-duration: var(--anim-slide-leave-duration);
        transition-property: transform, opacity;
        transition-timing-function: var(--anim-slide-easing)
    }

    html.is-ready [data-anim-parent].is-inview [data-anim-slide],
    html.is-ready [data-anim-slide].is-inview {
        opacity: 1;
        transform: translate(0);
        transition-delay: calc(var(--anim-slide-enter-stagger)*var(--index, 0) + var(--extra-delay, 0s));
        transition-duration: var(--anim-slide-enter-duration)
    }

    .c-sequence {
        --sequence-loader-color: var(--color-white);
        --fold-height: calc(var(--svh, 1svh)*100);
        display: block;
        position: relative
    }

    .c-sequence:after {
        content: "";
        pointer-events: none;
        --c: no-repeat linear-gradient(var(--sequence-loader-color, #fff)0 0);
        background: var(--c), var(--c), var(--sequence-loader-color, #fff);
        bottom: 0;
        height: 4px;
        left: 0;
        position: absolute;
        width: 100%
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-sequence:after {
            background: var(--c), var(--c), color-mix(in srgb, var(--sequence-loader-color, #fff), transparent 50%)
        }
    }

    .c-sequence:after {
        animation: loading 3s infinite;
        background-position: -150% 0, -150% 0;
        background-size: 60% 100%;
        opacity: .33;
        transform: translate(0);
        transition: transform speed() ease()
    }

    @keyframes loading {
        0% {
            background-position: -150% 0, -150% 0
        }

        66% {
            background-position: 250% 0, -150% 0
        }

        to {
            background-position: 250% 0, 250% 0
        }
    }

    .c-sequence.-loaded:after {
        animation: none;
        transform: translateY(100%);
        transition: transform var(--transition-duration)var(--ease)
    }

    .c-sequence_media {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-sequence_media_element {
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%
    }

    .c-sequence_load-trigger {
        height: calc(100% + var(--fold-height));
        left: 0;
        pointer-events: none;
        position: absolute;
        top: calc(var(--fold-height)*-1);
        width: 100%
    }

    .c-markers {
        display: block;
        overflow: hidden;
        position: relative
    }

    .c-markers_item {
        border-radius: 50%;
        height: calc(var(--spacing)*8);
        pointer-events: auto;
        position: absolute;
        transform: translate3d(calc(var(--spacing)*-4), calc(var(--spacing)*-4), 0);
        width: calc(var(--spacing)*8)
    }

    .c-markers_item:after,
    .c-markers_item:before {
        background-color: var(--color-red);
        border-radius: 50%;
        content: "";
        height: 100%;
        left: 50%;
        position: absolute;
        top: 50%;
        transform-origin: 50%;
        width: 100%
    }

    html.is-ready .c-markers_item:after,
    html.is-ready .c-markers_item:before {
        transition: transform var(--transition-duration-slow)var(--ease-slow-out), background-color var(--transition-duration-slow)var(--ease-slow-out), opacity var(--transition-duration-slow)var(--ease-slow-out)
    }

    .c-markers_item:before {
        opacity: .3;
        transform: translate(-50%, -50%)
    }

    .c-markers_item:after {
        border: 2px solid var(--color-red);
        transform: translate(-50%, -50%)scale(.25)
    }

    @media (hover:hover) {

        .c-markers_item:hover.focus-visible:before,
        .c-markers_item:hover:focus-visible:before,
        .c-markers_item:hover:hover:before {
            opacity: 1;
            transform: translate(-50%, -50%)scale(.25)
        }

        .c-markers_item:hover.focus-visible:after,
        .c-markers_item:hover:focus-visible:after,
        .c-markers_item:hover:hover:after {
            background-color: #0000;
            transform: translate(-50%, -50%)scale(1)
        }
    }

    @media (orientation:landscape) {
        .c-markers_item {
            left: var(--marker-desktop-x, 0);
            top: var(--marker-desktop-y, 0)
        }
    }

    @media (orientation:portrait) {
        .c-markers_item {
            left: var(--marker-mobile-x, 0);
            top: var(--marker-mobile-y, 0)
        }
    }

    .c-markers_label {
        background-color: var(--color-red);
        border-radius: .4em;
        opacity: 0;
        padding: .2em .6em .3em;
        pointer-events: none;
        position: absolute;
        top: calc(100% + var(--spacing)*3);
        transform: translate(-50%, 1em);
        white-space: nowrap
    }

    @media (hover:hover) {
        .c-markers_label {
            transition: opacity var(--transition-duration)var(--ease), transform var(--transition-duration)var(--ease)
        }

        .c-markers_item:focus-visible .c-markers_label,
        .c-markers_item:hover .c-markers_label {
            opacity: 1;
            transform: translate(-50%)
        }
    }

    .c-markers_modal {
        color: var(--color-black);
        height: 100%;
        left: 0;
        overflow: hidden;
        pointer-events: auto;
        position: absolute;
        top: 0;
        visibility: hidden;
        width: 100%;
        z-index: var(--z-index-modal)
    }

    html.is-ready .c-markers_modal {
        transition: visibility var(--transition-duration)
    }

    .c-markers_modal:before {
        background-color: #0003;
        content: "";
        inset: 0;
        position: absolute
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-markers_modal:before {
            background-color: color-mix(in oklab, var(--color-black)20%, transparent)
        }
    }

    .c-markers_modal:before {
        backdrop-filter: blur(20px);
        opacity: 0;
        transition: opacity var(--transition-duration)
    }

    .c-markers_modal.is-active {
        transition-duration: 0s;
        visibility: visible
    }

    .c-markers_modal.is-active:before {
        opacity: 1
    }

    @media (hover:hover) {
        .c-markers_modal:hover {
            cursor: pointer
        }
    }

    .c-markers_modal_inner {
        color: var(--color-black);
        cursor: default;
        height: 100%;
        margin-left: auto;
        margin-right: 0;
        position: relative;
        width: min(100%, 600px)
    }

    .c-markers_modal_close {
        left: calc(var(--grid-margin-xl)*2);
        pointer-events: auto;
        position: absolute;
        top: calc(var(--grid-margin-xl)*2);
        z-index: 2
    }

    @media (pointer:fine) {
        html.is-ready .c-markers_modal_close {
            transition: opacity var(--transition-duration);
            transition-delay: var(--transition-duration-slow)
        }

        .c-markers_modal:not(.is-active) .c-markers_modal_close {
            opacity: 0;
            pointer-events: none;
            transition-delay: 0s
        }
    }

    .c-markers_slider {
        bottom: 0;
        height: 100%;
        left: 0;
        pointer-events: auto;
        position: absolute;
        width: 100%
    }

    @media (pointer:coarse) {
        .c-markers_slider {
            -webkit-overflow-scrolling: touch;
            display: flex;
            overflow-x: scroll;
            scroll-snap-type: x mandatory
        }
    }

    @media (pointer:coarse) and (max-width:616px) {
        .c-markers_slider {
            gap: calc(var(--grid-gutter)/2);
            padding-inline-end: var(--grid-gutter);
            padding-inline-start: var(--grid-gutter);
            scroll-padding: 0 var(--grid-gutter)
        }
    }

    @media screen and (max-width:616px) {
        .c-markers_slider {
            bottom: var(--grid-gutter);
            height: calc(100% - 50px - var(--grid-gutter)*3)
        }
    }

    .c-markers_slide {
        display: flex;
        position: relative
    }

    @media (pointer:coarse) {
        .c-markers_slide {
            align-items: center;
            justify-content: center;
            scroll-snap-align: start
        }
    }

    @media (pointer:fine) {
        .c-markers_slide {
            inset: 0;
            padding: var(--grid-margin-xl);
            position: absolute;
            transform: translate(100%);
            transform-origin: 50%;
            transition: transform var(--transition-duration-slow)var(--ease-slow-out), visibility 0s var(--transition-duration-slow);
            visibility: hidden
        }

        .c-markers_slide.is-active {
            opacity: 1;
            transform: translate(0);
            transition: transform var(--transition-duration-slow)var(--ease-slow-out);
            visibility: visible;
            z-index: 1
        }

        .c-markers_slide.is-prev {
            opacity: 0;
            transform: translate(0)scale(.9);
            transition: opacity var(--transition-duration-slow)var(--ease-slow-out), transform var(--transition-duration-slow)var(--ease-slow-out), visibility 0s var(--transition-duration-slow);
            visibility: hidden
        }
    }

    .c-turntable {
        display: block;
        padding: var(--grid-margin-xl);
        position: relative
    }

    @media not all and (min-width:1000px) {
        .c-turntable {
            height: calc(var(--svh, 1svh)*80);
            max-height: calc(var(--vw, 1vw)*100*4/3)
        }
    }

    @media (min-width:1000px) {
        .c-turntable {
            height: calc(var(--svh, 1svh)*100 - var(--header-area))
        }
    }

    .c-turntable [data-hide-product-widget] {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-turntable_tabs {
        background-color: var(--color-blue);
        clip-path: inset(0 round var(--radius-md));
        padding-bottom: calc(var(--button-height) + 4px + var(--spacing)*6*2);
        padding-top: calc(var(--spacing)*6);
        position: relative
    }

    .c-turntable_nav {
        position: sticky !important;
        top: calc(var(--header-area) + var(--spacing)*3);
        z-index: 1
    }

    html.is-ready .c-turntable_nav {
        transition: transform var(--transition-duration-slow)var(--ease-power3-out), visibility 0s
    }

    .c-turntable.is-markers-modal-active .c-turntable_nav,
    .c-turntable.is-viewer-active .c-turntable_nav {
        transform: translate3d(0, calc(-100% + var(--spacing)*3*-1), 0);
        visibility: hidden
    }

    html.is-ready .c-turntable.is-markers-modal-active .c-turntable_nav,
    html.is-ready .c-turntable.is-viewer-active .c-turntable_nav {
        transition: transform var(--transition-duration)var(--ease-power3-out), visibility var(--transition-duration)
    }

    @media not all and (min-width:1000px) {
        .c-turntable_nav {
            display: none
        }
    }

    .c-turntable_tabs {
        align-items: flex-start;
        display: flex;
        height: 100%;
        justify-content: center;
        width: 100%
    }

    .c-turntable_panel {
        color: var(--color-white);
        inset: 0;
        position: absolute
    }

    .c-turntable-exterior {
        --z-index-sequences: 0;
        --z-index-nav: 1;
        --z-index-markers: 2;
        --z-index-viewer: 3;
        --nav-gap: calc(var(--spacing)*2);
        --spinner-width: 50px;
        --spinner-height: 50px;
        --frozen-loading-delay: .1s;
        align-items: flex-end;
        display: flex;
        height: 100%;
        justify-content: center;
        padding: calc(var(--spacing)*6);
        width: 100%
    }

    .c-turntable-exterior_nav {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: var(--nav-gap);
        justify-content: center;
        position: relative
    }

    .c-turntable-exterior_nav_wrapper {
        display: flex;
        flex-direction: column-reverse;
        position: relative;
        z-index: var(--z-index-nav)
    }

    html.is-ready .c-turntable-exterior_nav_wrapper {
        transition: transform var(--transition-duration)var(--ease-power3-out)
    }

    .c-turntable_panel:not(.is-active) .c-turntable-exterior_nav_wrapper {
        transform: translate3d(0, calc(100% + var(--spacing)*6), 0)
    }

    .c-turntable-exterior_nav_item {
        opacity: 1;
        transform: translate(0)
    }

    html.is-ready .c-turntable-exterior_nav_item {
        transition: opacity var(--transition-duration)var(--ease), transform var(--transition-duration)var(--ease)
    }

    .c-turntable.is-frozen .c-turntable-exterior_nav_item {
        opacity: .5;
        pointer-events: none
    }

    html.is-ready .c-turntable.is-frozen .c-turntable-exterior_nav_item {
        transition: opacity var(--transition-duration)var(--ease), visibility var(--transition-duration)
    }

    .c-turntable-exterior_nav_item.-viewer {
        --button-height: calc(2.625rem + var(--spacing)*2);
        --button-radius: 3.125rem
    }

    .c-turntable-exterior_sequences {
        inset: 0;
        position: absolute;
        z-index: var(--z-index-sequences)
    }

    .c-turntable-exterior_sequence {
        inset: 0;
        position: absolute;
        visibility: hidden
    }

    .c-turntable-exterior_sequence.is-active {
        visibility: visible
    }

    .c-turntable-exterior_viewer {
        inset: 0;
        position: absolute;
        z-index: var(--z-index-viewer)
    }

    .c-turntable-exterior_markers-wrapper {
        inset: 0;
        pointer-events: none;
        position: absolute;
        z-index: var(--z-index-markers)
    }

    @media not all and (min-width:1000px) {
        .c-turntable-exterior_markers-wrapper {
            display: none
        }
    }

    .c-turntable-exterior_markers {
        inset: 0;
        position: absolute
    }

    html.is-ready .c-turntable-exterior_markers {
        transition: opacity var(--transition-duration), visibility var(--transition-duration);
        transition-delay: var(--sequence-duration, 1s)
    }

    .c-turntable-exterior[data-mode=camp] .c-turntable-exterior_markers.-road-mode,
    .c-turntable-exterior[data-mode=road] .c-turntable-exterior_markers.-camp-mode {
        opacity: 0;
        transition-delay: 0s;
        visibility: hidden
    }

    .c-turntable-exterior_spinner_wrapper {
        align-items: flex-end;
        bottom: calc(100% + var(--spacing)*4);
        display: flex;
        flex-direction: column;
        height: var(--spinner-height);
        justify-content: center;
        left: 50%;
        opacity: 0;
        overflow: hidden;
        pointer-events: none;
        position: absolute;
        transform: translate(-50%);
        visibility: hidden;
        width: var(--spinner-width)
    }

    html.is-ready .c-turntable-exterior_spinner_wrapper {
        transition: opacity var(--transition-duration-slow)var(--ease), visibility var(--transition-duration-slow)
    }

    .c-turntable.is-frozen .c-turntable-exterior_spinner_wrapper {
        opacity: 1;
        visibility: visible
    }

    html.is-ready .c-turntable.is-frozen .c-turntable-exterior_spinner_wrapper {
        transition: opacity var(--transition-duration-slow)var(--ease)var(--frozen-loading-delay)
    }

    .c-turntable-exterior_spinner {
        align-items: center;
        aspect-ratio: 1;
        backdrop-filter: blur(15px);
        background-color: #ffffff26;
        display: flex;
        justify-content: center;
        width: var(--spinner-width)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-turntable-exterior_spinner {
            background-color: color-mix(in oklab, var(--color-white)15%, transparent)
        }
    }

    .c-turntable-exterior_spinner {
        border-radius: var(--spinner-width);
        clip-path: inset(calc(var(--spacing)*1)round var(--spinner-width));
        overflow: hidden
    }

    .c-turntable-exterior_spinner:before {
        animation: spin var(--transition-duration)linear infinite;
        animation-play-state: paused;
        border-bottom: 2px solid var(--color-accent);
        border-left: 2px solid #0000;
        border-radius: 100%;
        border-right: 2px solid var(--color-accent);
        border-top: 2px solid #0000;
        content: "";
        display: block;
        height: 20px;
        width: 20px
    }

    .is-frozen .c-turntable-exterior_spinner:before {
        animation-play-state: running
    }

    .c-turntable-interior {
        align-items: flex-end;
        display: flex;
        height: 100%;
        justify-content: center;
        padding: calc(var(--spacing)*6);
        width: 100%
    }

    .c-turntable-interior_nav {
        align-items: center;
        display: flex;
        gap: calc(var(--spacing)*2);
        position: relative;
        z-index: 1
    }

    html.is-ready .c-turntable-interior_nav {
        transition: transform var(--transition-duration-slow)var(--ease-power3-out)
    }

    .c-turntable_panel:not(.is-active) .c-turntable-interior_nav {
        transform: translate3d(0, calc(100% + var(--spacing)*6), 0)
    }

    .c-turntable-interior_image {
        inset: 0;
        position: absolute
    }

    .c-turntable-interior_image:not(.is-active) {
        opacity: 0
    }

    html.is-ready .c-turntable-interior_image {
        transition: opacity var(--transition-duration)
    }

    .c-turntable-floor {
        display: block;
        height: 100%;
        position: relative;
        width: 100%
    }

    .c-turntable-floor_image {
        inset: 0;
        position: absolute
    }

    @media (orientation:landscape) {
        .c-turntable-floor_image.-portrait {
            display: none
        }
    }

    @media (orientation:portrait) {
        .c-turntable-floor_image.-landscape {
            display: none
        }
    }

    .c-turntable-floor_markers {
        height: 100%;
        width: 100%
    }

    .c-switcher {
        backdrop-filter: blur(15px);
        background-color: var(--background-color);
        border-radius: var(--button-height);
        color: var(--color-white);
        display: block;
        padding: calc(var(--spacing)*1);
        pointer-events: none
    }

    .c-switcher.-background-grey {
        --item-color: var(--color-black);
        --item-color-active: var(--color-white);
        --background-color: var(--color-grey-light)
    }

    .c-switcher.-background-dark {
        --item-color: var(--color-white);
        --item-color-active: var(--color-white);
        --background-color: #00000026
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-switcher.-background-dark {
            --background-color: color-mix(in oklab, var(--color-black)15%, transparent)
        }
    }

    .c-switcher.-background-light {
        --item-color: var(--color-white);
        --item-color-active: var(--color-white);
        --background-color: #ffffff26
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-switcher.-background-light {
            --background-color: color-mix(in oklab, var(--color-white)15%, transparent)
        }
    }

    .c-switcher_inner {
        align-items: center;
        display: flex;
        position: relative
    }

    .c-switcher_inner:before {
        background-color: var(--color-black);
        border-radius: var(--button-radius);
        content: "";
        height: var(--button-height);
        left: 0;
        pointer-events: none;
        position: absolute;
        top: 0;
        transform: translate3d(var(--button-offset, 0), 0, 0);
        width: var(--button-width, 0);
        z-index: -1
    }

    html.is-ready .c-switcher_inner:before {
        transition: transform var(--transition-duration)var(--ease-out), width var(--transition-duration)var(--ease-out)
    }

    .c-switcher_button {
        align-items: center;
        color: var(--item-color);
        display: inline-flex;
        height: var(--button-height);
        padding: var(--button-padding);
        pointer-events: auto;
        transition: color var(--transition-duration-fast)
    }

    .c-switcher_button.is-active,
    .c-switcher_button:hover {
        color: var(--item-color-active)
    }

    .c-switcher:hover .c-switcher_button:not(:hover) {
        color: var(--item-color)
    }

    .c-switcher_button_inner {
        align-items: center;
        -moz-column-gap: calc(var(--spacing)*2);
        column-gap: calc(var(--spacing)*2);
        display: flex;
        pointer-events: none
    }

    .c-switcher_sticker-container {
        display: flex
    }

    .c-viewer {
        color: var(--color-white);
        overflow: hidden
    }

    html.is-ready .c-viewer {
        transition: visibility var(--transition-duration-slow)
    }

    html.is-ready .c-viewer.is-active {
        transition: visibility
    }

    @media (min-width:700px) {
        @media (hover:hover) {
            .c-viewer:hover {
                cursor: move;
                cursor: grab;
                cursor: -webkit-grab
            }

            .c-viewer:hover.is-dragging {
                cursor: grabbing;
                cursor: -webkit-grabbing
            }
        }
    }

    .c-viewer:before {
        background-color: #0000004d;
        content: "";
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    @supports (color:color-mix(in lab, red, red)) {
        .c-viewer:before {
            background-color: color-mix(in oklab, var(--color-black)30%, transparent)
        }
    }

    .c-viewer:before {
        transition: opacity var(--transition-duration);
        z-idnex: -1
    }

    .c-viewer:not(.is-active) {
        visibility: hidden
    }

    .c-viewer:not(.is-active):before {
        opacity: 0
    }

    .c-viewer_inner {
        align-items: flex-end;
        clip-path: inset(100% 25% calc(var(--spacing)*6)25% round var(--radius-sm));
        display: flex;
        height: 100%;
        justify-content: center;
        padding: calc(var(--spacing)*6);
        transition: clip-path var(--transition-duration-slow)var(--ease-power2-inOut);
        width: 100%
    }

    .c-viewer.is-active .c-viewer_inner {
        clip-path: inset(0 0 0 0 round var(--radius-sm))
    }

    .c-viewer_inner [data-viewer-scroll-to] {
        bottom: 0;
        left: 0;
        position: absolute;
        right: 0;
        top: calc(var(--header-area)*-1)
    }

    .c-viewer_sequence {
        background-color: var(--color-black);
        inset: 0;
        position: absolute;
        z-index: -1
    }

    .c-viewer:not(.is-active) .c-viewer_sequence {
        transform: translateY(10%)scale(1.05)
    }

    html.is-ready .c-viewer_sequence {
        transition: transform var(--transition-duration-slow)var(--ease-power2-inOut)
    }

    .c-viewer_content {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*4);
        opacity: 0;
        transform: translateY(40px)
    }

    .c-viewer:not(.is-dragging) .c-viewer_content {
        opacity: 1;
        transform: translate(0)
    }

    html.is-ready .c-viewer_content {
        transition: transform var(--transition-duration-fast)var(--ease-out), opacity var(--transition-duration-fast)var(--ease-out)
    }

    .c-viewer_notice {
        align-items: center;
        display: flex;
        gap: calc(var(--spacing)*1)
    }

    .c-tabs_nav {
        position: relative;
        z-index: 2
    }

    html.is-ready .c-tabs_panel {
        transition: opacity var(--transition-duration), visibility var(--transition-duration)
    }

    .c-tabs_panel.is-hidden {
        opacity: 0;
        position: absolute;
        visibility: hidden
    }

    html.is-ready .c-tabs_panel.is-hidden {
        transition: opacity var(--transition-duration), visibility 0s
    }

    .c-tabs_panel.is-active {
        z-index: 1
    }

    .c-color-sticker {
        background-color: var(--color-hex, #f5f5f5);
        border: 1px solid var(--color-white);
        border-radius: 10px;
        display: inline-block;
        height: 20px;
        overflow: hidden;
        position: relative;
        width: 20px;
        z-index: 1
    }

    .c-color-sticker:before {
        background: linear-gradient(310deg, #0009, #0000);
        content: "";
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1
    }

    .c-color-sticker+.c-color-sticker {
        margin-left: -8px
    }

    .c-form-loader {
        aspect-ratio: 1;
        background: var(--color-black);
        --_m: conic-gradient(#0000 10%, #000), linear-gradient(#000 0 0)content-box;
        animation: l3 1s linear infinite;
        border-radius: 50%;
        display: none;
        -webkit-mask: var(--_m);
        mask: var(--_m);
        -webkit-mask-composite: source-out;
        mask-composite: subtract;
        opacity: 0;
        padding: 2px;
        width: 20px
    }

    .c-form-loader.-active {
        display: block;
        opacity: 1
    }

    @keyframes l3 {
        to {
            transform: rotate(1turn)
        }
    }

    .c-stats_list {
        display: flex;
        flex-direction: column;
        gap: calc(var(--spacing)*6)
    }

    .c-stats_item {
        border-bottom: 1px solid var(--color-border);
        display: flex;
        justify-content: space-between;
        padding-bottom: calc(var(--spacing)*4)
    }

    @media not all and (min-width:500px) {
        .c-stats_item {
            flex-direction: column-reverse;
            row-gap: calc(var(--spacing)*4)
        }
    }

    @media (min-width:500px) {
        .c-stats_item {
            align-items: flex-end;
            flex-direction: row-reverse
        }
    }

    .c-video-toggler {
        align-items: center;
        aspect-ratio: 16/9;
        clip-path: inset(0 round var(--radius-md));
        display: flex;
        justify-content: center;
        position: relative
    }

    .c-video-toggler_image {
        inset: 0;
        position: absolute;
        z-index: var(--z-index-below)
    }

    .c-filters {
        margin-inline: calc(var(--grid-margin)*-1);
        padding-inline: var(--grid-margin);
        scroll-snap-type: x mandatory;
        -ms-overflow-style: none;
        overflow: auto;
        scrollbar-width: none
    }

    .c-filters::-webkit-scrollbar {
        display: none
    }

    .c-filters_list {
        display: flex;
        row-gap: calc(var(--spacing)*2)
    }

    @media not all and (min-width:700px) {
        .c-filters_list {
            white-space: nowrap
        }
    }

    @media (min-width:700px) {
        .c-filters_list {
            -moz-column-gap: calc(var(--spacing)*2);
            column-gap: calc(var(--spacing)*2);
            flex-wrap: wrap
        }
    }

    @media not all and (min-width:700px) {
        .c-filters_item {
            padding-left: var(--grid-margin);
            scroll-snap-align: start
        }

        .c-filters_item:last-child {
            padding-right: var(--grid-margin)
        }
    }

    .c-hover-video {
        color: var(--color-white);
        cursor: pointer
    }

    .c-hover-video_el {
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%
    }

    .c-hover-video_overlay {
        background: linear-gradient(#0000, #00000080 80%);
        bottom: 0;
        display: flex;
        left: 0;
        padding: calc(var(--spacing)*4);
        position: absolute;
        width: 100%;
        z-index: 2
    }

    .c-hover-video_controls {
        height: calc(var(--spacing)*7);
        position: relative;
        width: calc(var(--spacing)*7)
    }

    .c-hover-video_controls:before {
        background-color: currentColor;
        border-radius: 50%;
        content: "";
        inset: 0;
        opacity: .1;
        position: absolute
    }

    .c-hover-video_circle {
        transform: rotate(-90deg)
    }

    .c-hover-video_circle circle {
        fill: none;
        stroke: currentColor;
        stroke-width: .125rem;
        stroke-dasharray: var(--circle-length);
        stroke-dashoffset: calc((1 - var(--video-progress, 0))*var(--circle-length))
    }

    .c-hover-video_icon-container {
        align-items: center;
        display: flex;
        inset: 0;
        justify-content: center;
        position: absolute
    }

    .c-hover-video_icon {
        display: none;
        transition: transform var(--transition-duration), opacity var(--transition-duration)
    }

    .c-hover-video.is-playing .c-hover-video_icon.-pause {
        display: block;
        transition-delay: .1s
    }

    @starting-style {
        .c-hover-video.is-playing .c-hover-video_icon.-pause {
            opacity: 0;
            transform: scale(.9)
        }
    }

    .c-hover-video:not(.is-playing) .c-hover-video_icon.-play {
        display: block;
        transition-delay: .1s
    }

    @starting-style {
        .c-hover-video:not(.is-playing) .c-hover-video_icon.-play {
            opacity: 0;
            transform: scale(.9)
        }
    }
}

@layer utilities {
    .\@container {
        container-type: inline-size
    }

    .modal {
        color: var(--modal-color, var(--color-black));
        height: calc(var(--dvh, 1dvh)*100);
        left: 0;
        overflow: auto;
        padding: var(--modal-margin, var(--header-area)var(--grid-margin)0 var(--grid-margin));
        position: fixed;
        top: 0;
        transition-duration: var(--modal-transition-duration-in, var(--transition-duration));
        transition-property: visibility;
        transition-timing-function: var(--ease-power3-out);
        width: 100%;
        z-index: var(--modal-z-index, var(--z-index-modal))
    }

    .modal:before {
        background-color: var(--modal-background-color, #000);
        content: "";
        inset: 0;
        position: fixed
    }

    @supports (color:color-mix(in lab, red, red)) {
        .modal:before {
            background-color: color-mix(in oklab, var(--modal-background-color, var(--color-black))var(--modal-background-opacity, 0%), transparent)
        }
    }

    .modal:before {
        backdrop-filter: blur(10px);
        transition-duration: var(--modal-transition-duration-in, var(--transition-duration-fast));
        transition-property: opacity;
        z-index: var(--z-index-below)
    }

    .modal:not(.is-active) {
        visibility: hidden
    }

    .modal:not(.is-active),
    .modal:not(.is-active):before {
        transition-duration: var(--modal-transition-duration-out, var(--transition-duration-fast))
    }

    .modal:not(.is-active):before {
        opacity: 0
    }

    .collapse {
        visibility: collapse
    }

    .invisible {
        visibility: hidden
    }

    .visible {
        visibility: visible
    }

    .spinner {
        display: none;
        inset: 0;
        padding-block: var(--spacing-fluid-xl);
        position: absolute;
        z-index: var(--z-index-above)
    }

    .is-animating>.spinner {
        display: block
    }

    .spinner:before {
        animation: spin var(--transition-duration-fast)linear infinite;
        border-bottom: 2px solid var(--color-accent);
        border-left: 2px solid #0000;
        border-radius: 100%;
        border-right: 2px solid var(--color-accent);
        border-top: 2px solid #0000;
        content: "";
        display: block;
        height: 2em;
        left: calc(50% - 1em);
        position: sticky;
        top: calc(50% - 1em);
        width: 2em
    }

    .link-bg:before {
        content: "";
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: var(--z-index-above)
    }

    .link-bg:after {
        content: "";
        inset: 0;
        opacity: 0;
        position: absolute;
        z-index: -1
    }

    .pattern-background {
        background-color: var(--color-sand);
        clip-path: inset(0 var(--grid-margin-xl)round var(--radius-md));
        position: relative;
        z-index: 0
    }

    .pattern-background:after {
        background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGlkPSJMYXllcl8xIiBkYXRhLW5hbWU9IkxheWVyIDEiIHZpZXdCb3g9IjAgMCAxMzAuMDEgMTMwLjAxIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6bm9uZTtzdHJva2U6IzIzMWYyMDtzdHJva2UtbWl0ZXJsaW1pdDoxMH08L3N0eWxlPjwvZGVmcz48cGF0aCBkPSJNNjUgNTUuMjN2MTkuNTVNNzQuNzggNjVINTUuMjMiIGNsYXNzPSJjbHMtMSIvPjwvc3ZnPg==);
        background-repeat: repeat;
        background-size: 100px 100px;
        content: "";
        inset: 0;
        opacity: .15;
        position: absolute;
        z-index: -1
    }

    @media not all and (min-width:700px) {
        .pattern-background {
            padding-inline: calc(var(--grid-margin)*2)
        }
    }

    @media (min-width:700px) {
        .pattern-background {
            padding-inline: var(--grid-margin)
        }
    }

    .absolute-link:before {
        content: "";
        inset: 0
    }

    .absolute-link:before,
    .modal_close {
        position: absolute;
        z-index: var(--z-index-above)
    }

    .modal_close {
        right: var(--modal-close-right, calc(var(--spacing)*4));
        top: var(--modal-close-top, calc(var(--spacing)*4))
    }

    .overlay:before {
        background-color: var(--color-black);
        content: "";
        height: 100%;
        left: 0;
        opacity: .25;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1
    }

    .hover-underline {
        cursor: pointer;
        display: inline-block;
        position: relative
    }

    .hover-underline:before {
        background-color: currentColor;
        bottom: 0;
        content: "";
        height: max(1px, .04em);
        left: 0;
        position: absolute;
        transform: scaleX(0);
        transform-origin: 100% 0;
        transition: transform var(--transition-duration)var(--ease-power3-out);
        width: 100%
    }

    @media (hover:hover) {

        .hover-parent:hover .hover-underline:before,
        .hover-underline:hover:before {
            transform: scaleX(1);
            transform-origin: 0 0
        }
    }

    .hover-underline.is-active:before {
        transform: scaleX(1);
        transform-origin: 0 0
    }

    .modal_container {
        background-color: var(--modal-background-color, var(--color-white));
        border-radius: var(--radius-lg);
        height: auto;
        margin: 0 auto;
        max-width: var(--modal-max-width, 990px);
        min-height: var(--modal-min-height, 100%);
        position: relative;
        transition-duration: var(--modal-transition-duration-in, var(--transition-duration));
        transition-property: opacity, transform;
        transition-timing-function: var(--ease-power3-out);
        width: 100%
    }

    .modal:not(.is-active) .modal_container {
        opacity: 0;
        transform: translateY(300px);
        transition-duration: var(--modal-transition-duration-out, var(--transition-duration-fast))
    }

    .sr-only {
        clip: rect(0, 0, 0, 0);
        border-width: 0;
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        white-space: nowrap;
        width: 1px
    }

    .absolute,
    .sr-only {
        position: absolute
    }

    .fixed {
        position: fixed
    }

    .relative {
        position: relative
    }

    .static {
        position: static
    }

    .sticky {
        position: sticky
    }

    .inset-0 {
        inset: calc(var(--spacing)*0)
    }

    .isolate {
        isolation: isolate
    }

    .-z {
        z-index: calc(var(--z-index)*-1)
    }

    .z {
        z-index: var(--z-index)
    }

    .z-10 {
        z-index: 10
    }

    .col-span-1 {
        grid-column: span 1/span 1
    }

    .col-span-2 {
        grid-column: span 2/span 2
    }

    .col-span-4 {
        grid-column: span 4/span 4
    }

    .col-span-7 {
        grid-column: span 7/span 7
    }

    .col-start-1 {
        grid-column-start: 1
    }

    .col-start-3 {
        grid-column-start: 3
    }

    .col-start-9 {
        grid-column-start: 9
    }

    .col-end-13 {
        grid-column-end: 13
    }

    .float-right {
        float: right
    }

    .container {
        width: 100%
    }

    @media (min-width:340px) {
        .container {
            max-width: 340px
        }
    }

    @media (min-width:500px) {
        .container {
            max-width: 500px
        }
    }

    @media (min-width:700px) {
        .container {
            max-width: 700px
        }
    }

    @media (min-width:1000px) {
        .container {
            max-width: 1000px
        }
    }

    @media (min-width:1200px) {
        .container {
            max-width: 1200px
        }
    }

    @media (min-width:1400px) {
        .container {
            max-width: 1400px
        }
    }

    @media (min-width:1600px) {
        .container {
            max-width: 1600px
        }
    }

    @media (min-width:1800px) {
        .container {
            max-width: 1800px
        }
    }

    @media (min-width:2000px) {
        .container {
            max-width: 2000px
        }
    }

    @media (min-width:2400px) {
        .container {
            max-width: 2400px
        }
    }

    .container\! {
        width: 100% !important
    }

    @media (min-width:340px) {
        .container\! {
            max-width: 340px !important
        }
    }

    @media (min-width:500px) {
        .container\! {
            max-width: 500px !important
        }
    }

    @media (min-width:700px) {
        .container\! {
            max-width: 700px !important
        }
    }

    @media (min-width:1000px) {
        .container\! {
            max-width: 1000px !important
        }
    }

    @media (min-width:1200px) {
        .container\! {
            max-width: 1200px !important
        }
    }

    @media (min-width:1400px) {
        .container\! {
            max-width: 1400px !important
        }
    }

    @media (min-width:1600px) {
        .container\! {
            max-width: 1600px !important
        }
    }

    @media (min-width:1800px) {
        .container\! {
            max-width: 1800px !important
        }
    }

    @media (min-width:2000px) {
        .container\! {
            max-width: 2000px !important
        }
    }

    @media (min-width:2400px) {
        .container\! {
            max-width: 2400px !important
        }
    }

    .m-1 {
        margin: calc(var(--spacing)*1)
    }

    .m-auto {
        margin: auto
    }

    .mx-auto {
        margin-inline: auto
    }

    .my-20 {
        margin-block: calc(var(--spacing)*20)
    }

    .my-fluid-2xl {
        margin-block: var(--spacing-fluid-2xl)
    }

    .my-fluid-3xl {
        margin-block: var(--spacing-fluid-3xl)
    }

    .my-fluid-lg {
        margin-block: var(--spacing-fluid-lg)
    }

    .my-fluid-sm {
        margin-block: var(--spacing-fluid-sm)
    }

    .my-fluid-xl {
        margin-block: var(--spacing-fluid-xl)
    }

    .ms-2 {
        margin-inline-start: calc(var(--spacing)*2)
    }

    .mt-2 {
        margin-top: calc(var(--spacing)*2)
    }

    .mt-3 {
        margin-top: calc(var(--spacing)*3)
    }

    .mt-4 {
        margin-top: calc(var(--spacing)*4)
    }

    .mt-5 {
        margin-top: calc(var(--spacing)*5)
    }

    .mt-6 {
        margin-top: calc(var(--spacing)*6)
    }

    .mt-8 {
        margin-top: calc(var(--spacing)*8)
    }

    .mt-10 {
        margin-top: calc(var(--spacing)*10)
    }

    .mt-16 {
        margin-top: calc(var(--spacing)*16)
    }

    .mt-20 {
        margin-top: calc(var(--spacing)*20)
    }

    .mt-fluid-2xl {
        margin-top: var(--spacing-fluid-2xl)
    }

    .mt-fluid-3xl {
        margin-top: var(--spacing-fluid-3xl)
    }

    .mt-fluid-lg {
        margin-top: var(--spacing-fluid-lg)
    }

    .mt-fluid-md {
        margin-top: var(--spacing-fluid-md)
    }

    .mt-fluid-xl {
        margin-top: var(--spacing-fluid-xl)
    }

    .mb-0 {
        margin-bottom: calc(var(--spacing)*0)
    }

    .mb-3 {
        margin-bottom: calc(var(--spacing)*3)
    }

    .mb-4 {
        margin-bottom: calc(var(--spacing)*4)
    }

    .mb-fluid-2xl {
        margin-bottom: var(--spacing-fluid-2xl)
    }

    .mb-fluid-md {
        margin-bottom: var(--spacing-fluid-md)
    }

    .mb-fluid-xl {
        margin-bottom: var(--spacing-fluid-xl)
    }

    .ml-2 {
        margin-left: calc(var(--spacing)*2)
    }

    .\!hidden {
        display: none !important
    }

    .\!inline {
        display: inline !important
    }

    .block {
        display: block
    }

    .contents {
        display: contents
    }

    .flex {
        display: flex
    }

    .grid {
        display: grid
    }

    .hidden {
        display: none
    }

    .inline {
        display: inline
    }

    .inline-block {
        display: inline-block
    }

    .inline-flex {
        display: inline-flex
    }

    .list-item {
        display: list-item
    }

    .table {
        display: table
    }

    .table\! {
        display: table !important
    }

    .table-caption {
        display: table-caption
    }

    .table-cell {
        display: table-cell
    }

    .aspect-\[1859\/1941\] {
        aspect-ratio: 1859/1941
    }

    .aspect-video {
        aspect-ratio: var(--aspect-video)
    }

    .h-15 {
        height: calc(var(--spacing)*15)
    }

    .h-\[calc\(100svh-var\(--header-area\)-var\(--grid-margin-xl\)\)\] {
        height: calc(100svh - var(--header-area) - var(--grid-margin-xl))
    }

    .h-full {
        height: 100%
    }

    .min-h-\[50px\] {
        min-height: 50px
    }

    .min-h-screen {
        min-height: 100vh
    }

    .w-15 {
        width: calc(var(--spacing)*15)
    }

    .w-\[grid-space\(2\/12\)\] {
        width: calc(var(--vw, 1vw)*100*.16667 - var(--grid-margin, 0px)*2*.16667 - var(--grid-gutter, 0px)*.83333 + var(--grid-gutter, 0px)*0)
    }

    .w-\[grid-space\(8\/12\)\] {
        width: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*0)
    }

    .w-full {
        width: 100%
    }

    .container {
        padding-left: var(--grid-margin);
        padding-right: var(--grid-margin)
    }

    .container,
    .container\! {
        max-width: none !important
    }

    .container\! {
        padding-left: var(--grid-margin) !important;
        padding-right: var(--grid-margin) !important
    }

    .container-xl {
        max-width: none !important;
        padding-left: var(--grid-margin-xl);
        padding-right: var(--grid-margin-xl)
    }

    .max-w-2xl {
        max-width: var(--container-2xl)
    }

    .max-w-3xl {
        max-width: var(--container-3xl)
    }

    .max-w-\[100px\] {
        max-width: 100px
    }

    .max-w-\[300px\] {
        max-width: 300px
    }

    .max-w-\[310\] {
        max-width: 310px
    }

    .max-w-\[330px\] {
        max-width: 330px
    }

    .max-w-\[400px\] {
        max-width: 400px
    }

    .max-w-\[500px\] {
        max-width: 500px
    }

    .max-w-\[600px\] {
        max-width: 600px
    }

    .max-w-\[680px\] {
        max-width: 680px
    }

    .max-w-\[800px\] {
        max-width: 800px
    }

    .max-w-\[1000px\] {
        max-width: 1000px
    }

    .max-w-lg {
        max-width: var(--container-lg)
    }

    .min-w-\[50px\] {
        min-width: 50px
    }

    .flex-auto {
        flex: auto
    }

    .flex-shrink {
        flex-shrink: 1
    }

    .flex-shrink-0 {
        flex-shrink: 0
    }

    .shrink {
        flex-shrink: 1
    }

    .shrink-0 {
        flex-shrink: 0
    }

    .grow {
        flex-grow: 1
    }

    .border-collapse {
        border-collapse: collapse
    }

    .hover-scale {
        clip-path: inset(0 round var(--radius-sm));
        transition: clip-path .2s ease-out
    }

    .hover-scale .c-image_inner {
        transition: transform .2s ease-out
    }

    @media (hover:hover) {

        .hover-scale:hover,
        [data-anim]:hover .hover-scale {
            clip-path: inset(1% round var(--radius-sm))
        }

        .hover-scale:hover .c-image_inner,
        [data-anim]:hover .hover-scale .c-image_inner {
            transform: scale(1.025)
        }
    }

    .hover-translate {
        transition: transform .2s ease-out
    }

    @media (hover:hover) {

        .hover-translate:hover,
        [data-anim]:hover .hover-translate {
            transform: translateY(-5px)translate(5px)
        }
    }

    .\!transform {
        transform: var(--tw-rotate-x, )var(--tw-rotate-y, )var(--tw-rotate-z, )var(--tw-skew-x, )var(--tw-skew-y, ) !important
    }

    .transform {
        transform: var(--tw-rotate-x, )var(--tw-rotate-y, )var(--tw-rotate-z, )var(--tw-skew-x, )var(--tw-skew-y, )
    }

    html.is-loaded .slide-in-up {
        animation: slideInUp var(--transition-duration-slow)var(--ease-out)calc(var(--transition-duration-fast) + var(--index, 0)*30ms)both
    }

    .resize {
        resize: both
    }

    .grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }

    .grid-cols-6 {
        grid-template-columns: repeat(6, minmax(0, 1fr))
    }

    .grid-cols-12 {
        grid-template-columns: repeat(12, minmax(0, 1fr))
    }

    .flex-col {
        flex-direction: column
    }

    .flex-wrap {
        flex-wrap: wrap
    }

    .items-center {
        align-items: center
    }

    .items-start {
        align-items: flex-start
    }

    .justify-between {
        justify-content: space-between
    }

    .justify-center {
        justify-content: center
    }

    .gap-1 {
        gap: calc(var(--spacing)*1)
    }

    .gap-2 {
        gap: calc(var(--spacing)*2)
    }

    .gap-fluid-sm {
        gap: var(--spacing-fluid-sm)
    }

    .gap-gutter {
        gap: var(--grid-gutter)
    }

    .gap-x-2 {
        -moz-column-gap: calc(var(--spacing)*2);
        column-gap: calc(var(--spacing)*2)
    }

    .gap-x-3 {
        -moz-column-gap: calc(var(--spacing)*3);
        column-gap: calc(var(--spacing)*3)
    }

    .gap-x-8 {
        -moz-column-gap: calc(var(--spacing)*8);
        column-gap: calc(var(--spacing)*8)
    }

    .gap-x-9 {
        -moz-column-gap: calc(var(--spacing)*9);
        column-gap: calc(var(--spacing)*9)
    }

    .gap-x-gutter {
        -moz-column-gap: var(--grid-gutter);
        column-gap: var(--grid-gutter)
    }

    .gap-y-1 {
        row-gap: calc(var(--spacing)*1)
    }

    .gap-y-2 {
        row-gap: calc(var(--spacing)*2)
    }

    .gap-y-3 {
        row-gap: calc(var(--spacing)*3)
    }

    .gap-y-4 {
        row-gap: calc(var(--spacing)*4)
    }

    .gap-y-5 {
        row-gap: calc(var(--spacing)*5)
    }

    .gap-y-6 {
        row-gap: calc(var(--spacing)*6)
    }

    .gap-y-8 {
        row-gap: calc(var(--spacing)*8)
    }

    .gap-y-10 {
        row-gap: calc(var(--spacing)*10)
    }

    .gap-y-12 {
        row-gap: calc(var(--spacing)*12)
    }

    .gap-y-fluid-2xl {
        row-gap: var(--spacing-fluid-2xl)
    }

    .gap-y-fluid-lg {
        row-gap: var(--spacing-fluid-lg)
    }

    .gap-y-fluid-md {
        row-gap: var(--spacing-fluid-md)
    }

    .gap-y-fluid-sm {
        row-gap: var(--spacing-fluid-sm)
    }

    .gap-y-fluid-xl {
        row-gap: var(--spacing-fluid-xl)
    }

    .gap-y-gutter {
        row-gap: var(--grid-gutter)
    }

    .self-center {
        align-self: center
    }

    .self-start {
        align-self: flex-start
    }

    .modal_inner {
        overflow: hidden;
        padding: var(--modal-padding, var(--grid-gutter))
    }

    .truncate {
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .overflow-hidden,
    .truncate {
        overflow: hidden
    }

    .rounded {
        border-radius: .25rem
    }

    .rounded-\[10px\] {
        border-radius: 10px
    }

    .rounded-md {
        border-radius: var(--radius-md)
    }

    .rounded-sm {
        border-radius: var(--radius-sm)
    }

    .border,
    .border-1 {
        border-style: var(--tw-border-style);
        border-width: 1px
    }

    .border-t,
    .border-t-1 {
        border-top-style: var(--tw-border-style);
        border-top-width: 1px
    }

    .border-b-1 {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px
    }

    .border-border,
    .border-color {
        border-color: var(--color-border)
    }

    .border-grey {
        border-color: var(--color-grey)
    }

    .border-grey-light {
        border-color: var(--color-grey-light)
    }

    .border-neutral-200 {
        border-color: var(--color-neutral-200)
    }

    .border-t-neutral-200 {
        border-top-color: var(--color-neutral-200)
    }

    .bg-beige {
        background-color: var(--color-beige)
    }

    .bg-black {
        background-color: var(--color-black)
    }

    .bg-blue {
        background-color: var(--color-blue)
    }

    .bg-grey {
        background-color: var(--color-grey)
    }

    .bg-grey-light {
        background-color: var(--color-grey-light)
    }

    .bg-grey-lighter {
        background-color: var(--color-grey-lighter)
    }

    .bg-red {
        background-color: var(--color-red)
    }

    .bg-sand {
        background-color: var(--color-sand)
    }

    .bg-white {
        background-color: var(--color-white)
    }

    .fill-current {
        fill: currentColor
    }

    .object-cover {
        -o-object-fit: cover;
        object-fit: cover
    }

    .p-3 {
        padding: calc(var(--spacing)*3)
    }

    .p-5 {
        padding: calc(var(--spacing)*5)
    }

    .p-10 {
        padding: calc(var(--spacing)*10)
    }

    .px-10 {
        padding-inline: calc(var(--spacing)*10)
    }

    .px-fluid-sm {
        padding-inline: var(--spacing-fluid-sm)
    }

    .py-3 {
        padding-block: calc(var(--spacing)*3)
    }

    .py-4 {
        padding-block: calc(var(--spacing)*4)
    }

    .py-8 {
        padding-block: calc(var(--spacing)*8)
    }

    .py-fluid-2xl {
        padding-block: var(--spacing-fluid-2xl)
    }

    .py-fluid-4xl {
        padding-block: var(--spacing-fluid-4xl)
    }

    .pt-2 {
        padding-top: calc(var(--spacing)*2)
    }

    .pt-5 {
        padding-top: calc(var(--spacing)*5)
    }

    .pt-10 {
        padding-top: calc(var(--spacing)*10)
    }

    .pt-\[50svh\] {
        padding-top: 50svh
    }

    .pt-\[var\(--header-area\)\] {
        padding-top: var(--header-area)
    }

    .pb-6 {
        padding-bottom: calc(var(--spacing)*6)
    }

    .text-center {
        text-align: center
    }

    .font-sans {
        font-family: var(--font-sans)
    }

    .text-eyebrow {
        font-size: var(--text-sm);
        font-weight: 700;
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }

    .heading-2xl {
        font-size: var(--text-heading-2xl);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xl--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xl--line-height))
    }

    .heading-2xs {
        font-size: var(--text-heading-2xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xs--line-height))
    }

    .heading-3xl {
        font-size: var(--text-heading-3xl);
        letter-spacing: var(--tw-tracking, var(--text-heading-3xl--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-3xl--line-height))
    }

    .heading-lg {
        font-size: var(--text-heading-xl);
        letter-spacing: var(--tw-tracking, var(--text-heading-xl--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-xl--line-height))
    }

    .heading-md {
        font-size: var(--text-heading-md);
        letter-spacing: var(--tw-tracking, var(--text-heading-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-md--line-height))
    }

    .heading-sm {
        font-size: var(--text-heading-sm);
        letter-spacing: var(--tw-tracking, var(--text-heading-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-sm--line-height))
    }

    .heading-xl {
        font-size: var(--text-heading-xl);
        letter-spacing: var(--tw-tracking, var(--text-heading-xl--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-xl--line-height))
    }

    .heading-xs {
        font-size: var(--text-heading-xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-xs--line-height))
    }

    .text-heading-2xl {
        font-size: var(--text-heading-2xl);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xl--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xl--line-height))
    }

    .text-heading-2xs {
        font-size: var(--text-heading-2xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-2xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-2xs--line-height))
    }

    .text-heading-lg {
        font-size: var(--text-heading-lg);
        letter-spacing: var(--tw-tracking, var(--text-heading-lg--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-lg--line-height))
    }

    .text-heading-md {
        font-size: var(--text-heading-md);
        letter-spacing: var(--tw-tracking, var(--text-heading-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-md--line-height))
    }

    .text-heading-sm {
        font-size: var(--text-heading-sm);
        letter-spacing: var(--tw-tracking, var(--text-heading-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-sm--line-height))
    }

    .text-heading-xl {
        font-size: var(--text-heading-xl);
        letter-spacing: var(--tw-tracking, var(--text-heading-xl--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-xl--line-height))
    }

    .text-heading-xs {
        font-size: var(--text-heading-xs);
        letter-spacing: var(--tw-tracking, var(--text-heading-xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-heading-xs--line-height))
    }

    .text-lg {
        font-size: var(--text-lg);
        letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
        line-height: var(--tw-leading, var(--text-lg--line-height))
    }

    .text-md {
        font-size: var(--text-md);
        letter-spacing: var(--tw-tracking, var(--text-md--letter-spacing));
        line-height: var(--tw-leading, var(--text-md--line-height))
    }

    .text-sm {
        font-size: var(--text-sm);
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }

    .text-xl {
        font-size: var(--text-xl);
        letter-spacing: var(--tw-tracking, var(--text-xl--letter-spacing));
        line-height: var(--tw-leading, var(--text-xl--line-height))
    }

    .text-xs {
        font-size: var(--text-xs);
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        line-height: var(--tw-leading, var(--text-xs--line-height))
    }

    .font-bold {
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold)
    }

    html:not(.is-webkit) .anim-text-balance {
        text-wrap: balance
    }

    .text-wrap {
        text-wrap: wrap
    }

    .text-black {
        color: var(--color-black)
    }

    .text-black\/40 {
        color: #0006
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-black\/40 {
            color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    .text-neutral-400 {
        color: var(--color-neutral-400)
    }

    .text-red {
        color: var(--color-red)
    }

    .text-white {
        color: var(--color-white)
    }

    .lowercase {
        text-transform: lowercase
    }

    .uppercase {
        text-transform: uppercase
    }

    .italic {
        font-style: italic
    }

    .ordinal {
        --tw-ordinal: ordinal;
        font-variant-numeric: var(--tw-ordinal, )var(--tw-slashed-zero, )var(--tw-numeric-figure, )var(--tw-numeric-spacing, )var(--tw-numeric-fraction, )
    }

    .line-through {
        text-decoration-line: line-through
    }

    .overline {
        text-decoration-line: overline
    }

    .underline {
        text-decoration-line: underline
    }

    .antialiased {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale
    }

    .opacity-40 {
        opacity: .4
    }

    .opacity-50 {
        opacity: .5
    }

    .opacity-60 {
        opacity: .6
    }

    .opacity-80 {
        opacity: .8
    }

    .shadow {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a)
    }

    .ring,
    .shadow {
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

    .ring {
        --tw-ring-shadow: var(--tw-ring-inset, )0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color, currentcolor)
    }

    .outline {
        outline-style: var(--tw-outline-style);
        outline-width: 1px
    }

    .blur {
        --tw-blur: blur(8px)
    }

    .blur,
    .invert {
        filter: var(--tw-blur, )var(--tw-brightness, )var(--tw-contrast, )var(--tw-grayscale, )var(--tw-hue-rotate, )var(--tw-invert, )var(--tw-saturate, )var(--tw-sepia, )var(--tw-drop-shadow, )
    }

    .invert {
        --tw-invert: invert(100%)
    }

    .\!filter {
        filter: var(--tw-blur, )var(--tw-brightness, )var(--tw-contrast, )var(--tw-grayscale, )var(--tw-hue-rotate, )var(--tw-invert, )var(--tw-saturate, )var(--tw-sepia, )var(--tw-drop-shadow, ) !important
    }

    .filter {
        filter: var(--tw-blur, )var(--tw-brightness, )var(--tw-contrast, )var(--tw-grayscale, )var(--tw-hue-rotate, )var(--tw-invert, )var(--tw-saturate, )var(--tw-sepia, )var(--tw-drop-shadow, )
    }

    .backdrop-filter {
        backdrop-filter: var(--tw-backdrop-blur, )var(--tw-backdrop-brightness, )var(--tw-backdrop-contrast, )var(--tw-backdrop-grayscale, )var(--tw-backdrop-hue-rotate, )var(--tw-backdrop-invert, )var(--tw-backdrop-opacity, )var(--tw-backdrop-saturate, )var(--tw-backdrop-sepia, )
    }

    .transition {
        transition-duration: var(--tw-duration, var(--default-transition-duration));
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function))
    }

    .\!ease {
        --tw-ease: var(--ease) !important;
        transition-timing-function: var(--ease) !important
    }

    .ease {
        --tw-ease: var(--ease);
        transition-timing-function: var(--ease)
    }

    .ease-in-out {
        --tw-ease: var(--ease-in-out);
        transition-timing-function: var(--ease-in-out)
    }

    .ease-out {
        --tw-ease: var(--ease-out);
        transition-timing-function: var(--ease-out)
    }

    .select-all {
        -webkit-user-select: all;
        -moz-user-select: all;
        user-select: all
    }

    @media (hover:hover) {
        .hover\:underline:hover {
            text-decoration-line: underline
        }
    }

    @media not all and (min-width:1000px) {
        .max-md\:col-start-1 {
            grid-column-start: 1
        }

        .max-md\:col-end-13 {
            grid-column-end: 13
        }

        .max-md\:mb-fluid-lg {
            margin-bottom: var(--spacing-fluid-lg)
        }

        .max-md\:hidden {
            display: none
        }

        .max-md\:gap-y-gutter {
            row-gap: var(--grid-gutter)
        }

        .max-md\:text-heading-md {
            font-size: var(--text-heading-md);
            letter-spacing: var(--tw-tracking, var(--text-heading-md--letter-spacing));
            line-height: var(--tw-leading, var(--text-heading-md--line-height))
        }
    }

    @media not all and (min-width:700px) {
        .max-sm\:hidden {
            display: none
        }

        .max-sm\:flex-col {
            flex-direction: column
        }
    }

    @media (min-width:500px) {
        .xs\:grid-cols-2 {
            grid-template-columns: repeat(2, minmax(0, 1fr))
        }
    }

    @media (min-width:700px) {
        .sm\:col-span-4 {
            grid-column: span 4/span 4
        }

        .sm\:col-start-1 {
            grid-column-start: 1
        }

        .sm\:col-start-7 {
            grid-column-start: 7
        }

        .sm\:col-end-6 {
            grid-column-end: 6
        }

        .sm\:col-end-13 {
            grid-column-end: 13
        }

        .sm\:w-\[grid-space\(8\/12\)\] {
            width: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*0)
        }

        .sm\:grid-cols-2 {
            grid-template-columns: repeat(2, minmax(0, 1fr))
        }

        .sm\:grid-cols-12 {
            grid-template-columns: repeat(12, minmax(0, 1fr))
        }
    }

    @media (min-width:1000px) {
        .md\:sticky {
            position: sticky
        }

        .md\:top-\[var\(--header-area\)\] {
            top: var(--header-area)
        }

        .md\:col-span-3 {
            grid-column: span 3/span 3
        }

        .md\:col-span-4 {
            grid-column: span 4/span 4
        }

        .md\:col-span-7 {
            grid-column: span 7/span 7
        }

        .md\:col-span-10 {
            grid-column: span 10/span 10
        }

        .md\:col-start-1 {
            grid-column-start: 1
        }

        .md\:col-start-2 {
            grid-column-start: 2
        }

        .md\:col-start-4 {
            grid-column-start: 4
        }

        .md\:col-start-5 {
            grid-column-start: 5
        }

        .md\:col-start-6 {
            grid-column-start: 6
        }

        .md\:col-start-7 {
            grid-column-start: 7
        }

        .md\:col-end-5 {
            grid-column-end: 5
        }

        .md\:col-end-6 {
            grid-column-end: 6
        }

        .md\:col-end-10 {
            grid-column-end: 10
        }

        .md\:col-end-12 {
            grid-column-end: 12
        }

        .md\:col-end-13 {
            grid-column-end: 13
        }

        .md\:my-fluid-xl {
            margin-block: var(--spacing-fluid-xl)
        }

        .md\:block {
            display: block
        }

        .md\:grid {
            display: grid
        }

        .md\:hidden {
            display: none
        }

        .md\:w-\[grid-space\(6\/12\)\] {
            width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
        }

        .md\:w-\[grid-space\(9\/12\)\] {
            width: calc(var(--vw, 1vw)*100*.75 - var(--grid-margin, 0px)*2*.75 - var(--grid-gutter, 0px)*.25 + var(--grid-gutter, 0px)*0)
        }

        .md\:grid-cols-2 {
            grid-template-columns: repeat(2, minmax(0, 1fr))
        }

        .md\:grid-cols-3 {
            grid-template-columns: repeat(3, minmax(0, 1fr))
        }

        .md\:grid-cols-12 {
            grid-template-columns: repeat(12, minmax(0, 1fr))
        }

        .md\:gap-x-3 {
            -moz-column-gap: calc(var(--spacing)*3);
            column-gap: calc(var(--spacing)*3)
        }

        .md\:gap-y-fluid-2xl {
            row-gap: var(--spacing-fluid-2xl)
        }

        .md\:heading-md {
            font-size: var(--text-heading-md);
            letter-spacing: var(--tw-tracking, var(--text-heading-md--letter-spacing));
            line-height: var(--tw-leading, var(--text-heading-md--line-height))
        }

        .md\:text-heading-xl {
            font-size: var(--text-heading-xl);
            letter-spacing: var(--tw-tracking, var(--text-heading-xl--letter-spacing));
            line-height: var(--tw-leading, var(--text-heading-xl--line-height))
        }

        .md\:text-lg {
            font-size: var(--text-lg);
            letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
            line-height: var(--tw-leading, var(--text-lg--line-height))
        }
    }

    @media (min-width:1200px) {
        .lg\:col-span-3 {
            grid-column: span 3/span 3
        }

        .lg\:col-start-3 {
            grid-column-start: 3
        }

        .lg\:col-start-4 {
            grid-column-start: 4
        }

        .lg\:col-end-11 {
            grid-column-end: 11
        }

        .lg\:grid-cols-2 {
            grid-template-columns: repeat(2, minmax(0, 1fr))
        }
    }
}

[blossom-carousel] {
    box-sizing: border-box;
    display: inline-block;
    inline-size: 100%;
    list-style-type: none;
    max-inline-size: 100vw;
    overflow: auto clip;
    overscroll-behavior-x: contain;
    scroll-behavior: smooth;
    scrollbar-width: none;
    white-space: nowrap
}

[blossom-carousel]::-webkit-scrollbar {
    display: none
}

[blossom-carousel][has-repeat=true] {
    padding-inline: 50% !important;
    scroll-padding-inline: 50% !important
}

[blossom-carousel][has-snap=true] {
    scroll-snap-type: var(--snap-type) !important
}

[blossom-carousel][has-overflow=true] {
    cursor: grab
}

[blossom-carousel][has-overflow=true]:active {
    cursor: grabbing
}

@media (pointer:fine) {
    [blossom-carousel][has-overflow=true]:active {
        scroll-snap-type: none !important
    }
}

[blossom-carousel]>* {
    display: inline-block;
    vertical-align: top;
    white-space: normal
}

[blossom-carousel] * {
    -webkit-user-drag: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

:root {
    --grid-columns: 4;
    --grid-gutter: 8px;
    --grid-margin: 8px;
    --grid-margin-xl: 8px;
    --font-size: 16px;
    --line-height: 1.25
}

@media (min-width:700px) {
    :root {
        --grid-columns: 12;
        --grid-margin: clamp(0.5rem, -1.5714rem + 10.3571vw, 7.75rem)
    }
}

@media (prefers-reduced-motion) {
    :root {
        --transition-duration-fast: 0s;
        --transition-duration: 0s;
        --transition-duration-slow: 0s;
        --transition-duration-slower: 0s;
        --transition-duration-slowest: 0s
    }
}

:root {
    --button-height: 2.625rem;
    --header-height: 3.125rem;
    --header-margin: 0.25rem;
    --header-padding: calc(var(--spacing)*4);
    --header-area: calc(var(--header-height) + var(--header-margin)*2);
    --sticky-bar-width: 31.25rem;
    --wysiwyg-heading-multiplier: .9;
    --wysiwyg-heading-font-size: 30px;
    --wysiwyg-h1: calc(var(--wysiwyg-heading-font-size)*(2 - var(--wysiwyg-heading-multiplier)));
    --wysiwyg-h2: var(--wysiwyg-heading-font-size);
    --wysiwyg-h3: calc(var(--wysiwyg-h2)*var(--wysiwyg-heading-multiplier));
    --wysiwyg-h4: calc(var(--wysiwyg-h3)*var(--wysiwyg-heading-multiplier));
    --wysiwyg-h5: calc(var(--wysiwyg-h4)*var(--wysiwyg-heading-multiplier));
    --wysiwyg-h6: calc(var(--wysiwyg-h5)*var(--wysiwyg-heading-multiplier))
}

html.is-changing .transition-default {
    opacity: 1;
    transition: opacity .25s
}

html.is-animating .transition-default {
    opacity: 0
}

#listing.is-changing {
    transition: opacity var(--transition-duration)
}

#listing.is-animating {
    opacity: .3
}

.c-company-intro-images_container {
    --image-overlap: -20px;
    display: flex;
    flex-direction: column;
    margin-top: var(--image-overlap)
}

@media (min-width:700px) {
    .c-company-intro-images_container {
        --image-overlap: -50px
    }
}

@media (min-width:1000px) {
    .c-company-intro-images_container {
        --image-overlap: -80px
    }
}

@media (min-width:1400px) {
    .c-company-intro-images_container {
        --image-overlap: -120px
    }
}

.c-company-intro-images_block {
    width: 100%
}

@media (min-width:340px) {
    .c-company-intro-images_block {
        max-width: 340px
    }
}

@media (min-width:500px) {
    .c-company-intro-images_block {
        max-width: 500px
    }
}

@media (min-width:700px) {
    .c-company-intro-images_block {
        max-width: 700px
    }
}

@media (min-width:1000px) {
    .c-company-intro-images_block {
        max-width: 1000px
    }
}

@media (min-width:1200px) {
    .c-company-intro-images_block {
        max-width: 1200px
    }
}

@media (min-width:1400px) {
    .c-company-intro-images_block {
        max-width: 1400px
    }
}

@media (min-width:1600px) {
    .c-company-intro-images_block {
        max-width: 1600px
    }
}

@media (min-width:1800px) {
    .c-company-intro-images_block {
        max-width: 1800px
    }
}

@media (min-width:2000px) {
    .c-company-intro-images_block {
        max-width: 2000px
    }
}

@media (min-width:2400px) {
    .c-company-intro-images_block {
        max-width: 2400px
    }
}

.c-company-intro-images_block {
    max-width: none !important;
    padding-left: var(--grid-margin);
    padding-right: var(--grid-margin);
    position: relative;
    transform: translateY(calc(var(--image-overlap)*-1));
    z-index: 2
}

.c-company-intro-images_image1 {
    aspect-ratio: 3/2;
    margin-left: calc(var(--vw, 1vw)*100*.75 - var(--grid-margin, 0px)*2*.75 - var(--grid-gutter, 0px)*.25 + var(--grid-gutter, 0px)*0);
    width: calc(var(--vw, 1vw)*100*.25 - var(--grid-margin, 0px)*2*.25 - var(--grid-gutter, 0px)*.75 + var(--grid-gutter, 0px)*0)
}

.c-company-intro-images_image2 {
    aspect-ratio: 3/2;
    width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
}

@media (min-width:700px) {
    .c-company-intro-images_image2 {
        width: calc(var(--vw, 1vw)*100*.33333 - var(--grid-margin, 0px)*2*.33333 - var(--grid-gutter, 0px)*.66667 + var(--grid-gutter, 0px)*0)
    }
}

.c-company-intro-images_image3 {
    aspect-ratio: 16/9;
    width: 100%
}

.c-company-intro-images_block2 {
    margin-left: var(--grid-gutter);
    margin-right: var(--grid-gutter)
}

.c-customization-review {
    margin-top: var(--spacing-fluid-xl);
    --sticky-bar-width: 100%;
    align-items: center;
    display: flex;
    flex-direction: column
}

@media not all and (min-width:1000px) {
    .c-customization-review_container {
        width: 100%
    }
}

@media (min-width:1000px) {
    .c-customization-review_container {
        margin-inline: auto;
        width: calc(var(--vw, 1vw)*100*.83333 - var(--grid-margin, 0px)*2*.83333 - var(--grid-gutter, 0px)*.16667 + var(--grid-gutter, 0px)*0)
    }
}

.c-customization-review_content {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing)*15)
}

@media (min-width:1000px) {
    .c-customization-review_content {
        margin-inline: auto;
        width: calc(var(--vw, 1vw)*100*.66667 - var(--grid-margin, 0px)*2*.66667 - var(--grid-gutter, 0px)*.33333 + var(--grid-gutter, 0px)*0)
    }
}

.c-customization-review_sticky {
    bottom: var(--grid-gutter);
    display: flex;
    justify-content: center;
    margin-top: calc(var(--spacing)*10);
    position: sticky;
    z-index: var(--z-index-widget-bar)
}

.c-customization-review_heading {
    text-align: center
}

.c-customization-review_image {
    margin-inline: auto
}

@media not all and (min-width:1000px) {
    .c-customization-review_image {
        aspect-ratio: 3/2;
        width: 100%
    }
}

@media (min-width:1000px) {
    .c-customization-review_image {
        aspect-ratio: 10/6;
        width: calc(var(--vw, 1vw)*100*.5 - var(--grid-margin, 0px)*2*.5 - var(--grid-gutter, 0px)*.5 + var(--grid-gutter, 0px)*0)
    }
}

.c-customization-review_edit {
    margin-inline: auto;
    margin-top: calc(var(--spacing)*15)
}

@layer component {
    .c-aside {
        display: block;
        position: sticky;
        top: var(--header-area)
    }

    .c-sidebar_area {
        height: calc(var(--list-height, 0px) + var(--header-area));
        left: 0;
        position: absolute;
        right: 0;
        top: calc(var(--header-area)*-1);
        visibility: hidden
    }

    .c-sidebar_inner {
        height: 100%;
        position: relative
    }

    .c-sidebar_inner_area {
        height: calc(var(--svh, 1svh)*100 - var(--header-area));
        left: 0;
        position: absolute;
        top: 0;
        width: 100%
    }

    .c-sidebar_list {
        padding-block: calc(var(--spacing)*8)
    }

    .c-sidebar_list.-dummy {
        position: absolute;
        top: calc(var(--svh, 1svh)*100 - var(--header-area));
        transform: translateY(-100%);
        visibility: hidden
    }

    .c-sidebar_item:not(:first-of-type) {
        transform: translate3d(0, calc(1px*var(--delta, 0)*(var(--inview-progress, 1) - var(--section-progress, 0))), 0)
    }

    .c-aside-section-area {
        bottom: var(--header-area);
        left: 0;
        position: absolute;
        right: 0;
        top: calc(var(--header-area)*-1);
        visibility: hidden
    }

    .c-skip-link {
        left: 50%;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        top: var(--spacing-unit-md);
        transform: translate(-50%, -100%);
        transition: opacity var(--transition-duration-fast)var(--ease-out), transform var(--transition-duration-fast)var(--ease-out);
        white-space: nowrap;
        z-index: var(--z-index-modal)
    }

    @media (prefers-reduced-motion:reduce) {
        .c-skip-link {
            transition: none
        }
    }

    .c-skip-link:focus-within {
        opacity: 1;
        pointer-events: auto;
        transform: translate(-50%)
    }
}

:root {
    --anim-text-enter-duration: .8s;
    --anim-text-enter-stagger: 10ms;
    --anim-text-leave-duration: .4s;
    --anim-text-easing: var(--ease);
    --anim-slide-enter-duration: 1.8s;
    --anim-slide-enter-stagger: 80ms;
    --anim-slide-leave-duration: .4s;
    --anim-slide-easing: var(--ease-slow-out);
    --anim-slide-offset: var(--spacing-fluid-xl)
}

@property --tw-rotate-x {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-y {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-z {
    syntax: "*";
    inherits: false
}

@property --tw-skew-x {
    syntax: "*";
    inherits: false
}

@property --tw-skew-y {
    syntax: "*";
    inherits: false
}

@property --tw-border-style {
    syntax: "*";
    inherits: false;
    initial-value: solid
}

@property --tw-font-weight {
    syntax: "*";
    inherits: false
}

@property --tw-ordinal {
    syntax: "*";
    inherits: false
}

@property --tw-slashed-zero {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-figure {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-spacing {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-fraction {
    syntax: "*";
    inherits: false
}

@property --tw-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-inset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-inset-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-inset-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-ring-color {
    syntax: "*";
    inherits: false
}

@property --tw-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-inset-ring-color {
    syntax: "*";
    inherits: false
}

@property --tw-inset-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-ring-inset {
    syntax: "*";
    inherits: false
}

@property --tw-ring-offset-width {
    syntax: "<length>";
    inherits: false;
    initial-value: 0
}

@property --tw-ring-offset-color {
    syntax: "*";
    inherits: false;
    initial-value: #fff
}

@property --tw-ring-offset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-outline-style {
    syntax: "*";
    inherits: false;
    initial-value: solid
}

@property --tw-blur {
    syntax: "*";
    inherits: false
}

@property --tw-brightness {
    syntax: "*";
    inherits: false
}

@property --tw-contrast {
    syntax: "*";
    inherits: false
}

@property --tw-grayscale {
    syntax: "*";
    inherits: false
}

@property --tw-hue-rotate {
    syntax: "*";
    inherits: false
}

@property --tw-invert {
    syntax: "*";
    inherits: false
}

@property --tw-opacity {
    syntax: "*";
    inherits: false
}

@property --tw-saturate {
    syntax: "*";
    inherits: false
}

@property --tw-sepia {
    syntax: "*";
    inherits: false
}

@property --tw-drop-shadow {
    syntax: "*";
    inherits: false
}

@property --tw-drop-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-drop-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-drop-shadow-size {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-blur {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-brightness {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-contrast {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-grayscale {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-hue-rotate {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-invert {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-opacity {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-saturate {
    syntax: "*";
    inherits: false
}

@property --tw-backdrop-sepia {
    syntax: "*";
    inherits: false
}

@property --tw-ease {
    syntax: "*";
    inherits: false
}

@keyframes spin {
    to {
        transform: rotate(1turn)
    }
}

@keyframes ping {

    75%,
    to {
        opacity: 0;
        transform: scale(2)
    }
}

@keyframes pulse {
    50% {
        opacity: .5
    }
}

@keyframes bounce {

    0%,
    to {
        animation-timing-function: cubic-bezier(.8, 0, 1, 1);
        transform: translateY(-25%)
    }

    50% {
        animation-timing-function: cubic-bezier(0, 0, .2, 1);
        transform: none
    }
}

