html {-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-family:sans-serif}
body {margin:0}
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary {display:block}
audio,canvas,progress,video {vertical-align:baseline;display:inline-block}
[hidden],template {display:none}
a {background-color:#0000}
a:active,a:hover {outline:0}
b,strong {font-weight:700}
dfn {font-style:italic}
h1 {margin:.67em 0;font-size:2em}
mark {color:#000;background:#ff0}
small {font-size:80%}
sub,sup {vertical-align:baseline;font-size:75%;line-height:0;position:relative}
sup {top:-.5em}
sub {bottom:-.25em}
img {border:0}
svg:not(:root) {overflow:hidden}
hr {box-sizing:content-box;height:0}
pre {overflow:auto}
code,kbd,pre,samp {font-family:monospace;font-size:1em}
button,input,optgroup,select,textarea {color:inherit;font:inherit;margin:0}
button {overflow:visible}
button,select {text-transform:none}
button,html input[type=button],input[type=reset] {-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled] {cursor:default}
button::-moz-focus-inner,input::-moz-focus-inner {border:0;padding:0}
input {line-height:normal}
legend {border:0;padding:0}
textarea {overflow:auto}
optgroup {font-weight:700}
table {border-collapse:collapse;border-spacing:0}
td,th {padding:0}
@font-face{font-family:webflow-icons;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBiUAAAC8AAAAYGNtYXDpP+a4AAABHAAAAFxnYXNwAAAAEAAAAXgAAAAIZ2x5ZmhS2XEAAAGAAAADHGhlYWQTFw3HAAAEnAAAADZoaGVhCXYFgQAABNQAAAAkaG10eCe4A1oAAAT4AAAAMGxvY2EDtALGAAAFKAAAABptYXhwABAAPgAABUQAAAAgbmFtZSoCsMsAAAVkAAABznBvc3QAAwAAAAAHNAAAACAAAwP4AZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpAwPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAQAAAAAwACAACAAQAAQAg5gPpA//9//8AAAAAACDmAOkA//3//wAB/+MaBBcIAAMAAQAAAAAAAAAAAAAAAAABAAH//wAPAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEBIAAAAyADgAAFAAAJAQcJARcDIP5AQAGA/oBAAcABwED+gP6AQAABAOAAAALgA4AABQAAEwEXCQEH4AHAQP6AAYBAAcABwED+gP6AQAAAAwDAAOADQALAAA8AHwAvAAABISIGHQEUFjMhMjY9ATQmByEiBh0BFBYzITI2PQE0JgchIgYdARQWMyEyNj0BNCYDIP3ADRMTDQJADRMTDf3ADRMTDQJADRMTDf3ADRMTDQJADRMTAsATDSANExMNIA0TwBMNIA0TEw0gDRPAEw0gDRMTDSANEwAAAAABAJ0AtAOBApUABQAACQIHCQEDJP7r/upcAXEBcgKU/usBFVz+fAGEAAAAAAL//f+9BAMDwwAEAAkAABcBJwEXAwE3AQdpA5ps/GZsbAOabPxmbEMDmmz8ZmwDmvxmbAOabAAAAgAA/8AEAAPAAB0AOwAABSInLgEnJjU0Nz4BNzYzMTIXHgEXFhUUBw4BBwYjNTI3PgE3NjU0Jy4BJyYjMSIHDgEHBhUUFx4BFxYzAgBqXV6LKCgoKIteXWpqXV6LKCgoKIteXWpVSktvICEhIG9LSlVVSktvICEhIG9LSlVAKCiLXl1qal1eiygoKCiLXl1qal1eiygoZiEgb0tKVVVKS28gISEgb0tKVVVKS28gIQABAAABwAIAA8AAEgAAEzQ3PgE3NjMxFSIHDgEHBhUxIwAoKIteXWpVSktvICFmAcBqXV6LKChmISBvS0pVAAAAAgAA/8AFtgPAADIAOgAAARYXHgEXFhUUBw4BBwYHIxUhIicuAScmNTQ3PgE3NjMxOAExNDc+ATc2MzIXHgEXFhcVATMJATMVMzUEjD83NlAXFxYXTjU1PQL8kz01Nk8XFxcXTzY1PSIjd1BQWlJJSXInJw3+mdv+2/7c25MCUQYcHFg5OUA/ODlXHBwIAhcXTzY1PTw1Nk8XF1tQUHcjIhwcYUNDTgL+3QFt/pOTkwABAAAAAQAAmM7nP18PPPUACwQAAAAAANciZKUAAAAA1yJkpf/9/70FtgPDAAAACAACAAAAAAAAAAEAAAPA/8AAAAW3//3//QW2AAEAAAAAAAAAAAAAAAAAAAAMBAAAAAAAAAAAAAAAAgAAAAQAASAEAADgBAAAwAQAAJ0EAP/9BAAAAAQAAAAFtwAAAAAAAAAKABQAHgAyAEYAjACiAL4BFgE2AY4AAAABAAAADAA8AAMAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADQAAAAEAAAAAAAIABwCWAAEAAAAAAAMADQBIAAEAAAAAAAQADQCrAAEAAAAAAAUACwAnAAEAAAAAAAYADQBvAAEAAAAAAAoAGgDSAAMAAQQJAAEAGgANAAMAAQQJAAIADgCdAAMAAQQJAAMAGgBVAAMAAQQJAAQAGgC4AAMAAQQJAAUAFgAyAAMAAQQJAAYAGgB8AAMAAQQJAAoANADsd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzUmVndWxhcgBSAGUAZwB1AGwAYQByd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==)format("truetype");font-weight:400;font-style:normal}
* {box-sizing:border-box}
html {height:100%}
body {color:#333;background-color:#fff;min-height:100%;margin:0;font-family:Arial,sans-serif;font-size:14px;line-height:20px}
img {vertical-align:middle;max-width:100%;display:inline-block}
html.w-mod-touch * {background-attachment:scroll!important}
.w-inline-block {max-width:100%;display:inline-block}
html[data-w-dynpage] [data-w-cloak] {color:#0000!important}
h1,h2,h3,h4,h5,h6 {margin-bottom:10px;font-weight:700}
h1 {margin-top:20px;font-size:38px;line-height:44px}
h2 {margin-top:20px;font-size:32px;line-height:36px}
h3 {margin-top:20px;font-size:24px;line-height:30px}
h4 {margin-top:10px;font-size:18px;line-height:24px}
h5 {margin-top:10px;font-size:14px;line-height:20px}
h6 {margin-top:10px;font-size:12px;line-height:18px}
p {margin-top:0;margin-bottom:10px}
blockquote {border-left:5px solid #e2e2e2;margin:0 0 10px;padding:10px 20px;font-size:18px;line-height:22px}
figure {margin:0 0 10px}
figcaption {text-align:center;margin-top:5px}
ul,ol {margin-top:0;margin-bottom:10px;padding-left:40px}
.w-embed:before,.w-embed:after {content:" ";grid-area:1/1/2/2;display:table}
.w-embed:after {clear:both}
fieldset {border:0;margin:0;padding:0}
button,[type=button],[type=reset] {cursor:pointer;-webkit-appearance:button;border:0}
label {margin-bottom:5px;font-weight:700;display:block}
.w-dropdown {text-align:left;z-index:900;margin-left:auto;margin-right:auto;display:inline-block;position:relative}
.w-dropdown-btn,.w-dropdown-toggle,.w-dropdown-link {vertical-align:top;color:#222;text-align:left;white-space:nowrap;margin-left:auto;margin-right:auto;padding:20px;text-decoration:none;position:relative}
.w-dropdown-toggle {-webkit-user-select:none;user-select:none;cursor:pointer;padding-right:40px;display:inline-block}
.w-dropdown-toggle:focus {outline:0}
.w-dropdown-list {background:#ddd;min-width:100%;display:none;position:absolute}
.w-richtext:before,.w-richtext:after {content:" ";grid-area:1/1/2/2;display:table}
.w-richtext:after {clear:both}
.w-richtext[contenteditable=true]:before,.w-richtext[contenteditable=true]:after {white-space:initial}
.w-richtext ol,.w-richtext ul {overflow:hidden}
.w-richtext figure.w-richtext-figure-type-video>div:after,.w-richtext figure[data-rt-type=video]>div:after {content:"";display:none;position:absolute;inset:0}
.w-richtext figure {max-width:60%;position:relative}
.w-richtext figure>div:before {cursor:default!important}
.w-richtext figure img {width:100%}
.w-richtext figure div {color:#0000;font-size:0}
.w-richtext figure.w-richtext-figure-type-image,.w-richtext figure[data-rt-type=image] {display:table}
.w-richtext figure.w-richtext-figure-type-image>div,.w-richtext figure[data-rt-type=image]>div {display:inline-block}
.w-richtext figure.w-richtext-figure-type-image>figcaption,.w-richtext figure[data-rt-type=image]>figcaption {caption-side:bottom;display:table-caption}
.w-richtext figure.w-richtext-figure-type-video,.w-richtext figure[data-rt-type=video] {width:60%;height:0}
.w-richtext figure.w-richtext-figure-type-video iframe,.w-richtext figure[data-rt-type=video] iframe {width:100%;height:100%;position:absolute;top:0;left:0}
.w-richtext figure.w-richtext-figure-type-video>div,.w-richtext figure[data-rt-type=video]>div {width:100%}
.w-nav {z-index:1000;background:#ddd;position:relative}
.w-nav:before,.w-nav:after {content:" ";grid-area:1/1/2/2;display:table}
.w-nav:after {clear:both}
.w-nav-brand {float:left;color:#333;text-decoration:none;position:relative}
.w-nav-menu {float:right;position:relative}
.w-nav[data-animation=over-left] .w-nav-overlay,.w-nav[data-animation=over-left] [data-nav-menu-open] {z-index:1;top:0;right:auto}
.w-nav[data-animation=over-right] .w-nav-overlay,.w-nav[data-animation=over-right] [data-nav-menu-open] {z-index:1;top:0;left:auto}
.w-nav-button {float:right;cursor:pointer;-webkit-tap-highlight-color:#0000;tap-highlight-color:#0000;-webkit-user-select:none;user-select:none;padding:18px;font-size:24px;display:none;position:relative}
.w-nav-button:focus {outline:0}
.w-nav[data-collapse=all] .w-nav-menu {display:none}
.w-nav[data-collapse=all] .w-nav-button,.w--nav-dropdown-open,.w--nav-dropdown-toggle-open {display:block}
@media screen and (max-width:991px) {
  .w-nav[data-collapse=medium] .w-nav-menu {display:none}
  .w-nav[data-collapse=medium] .w-nav-button {display:block}
}
@media screen and (max-width:767px) {
  .w-nav[data-collapse=small] .w-nav-menu {display:none}
  .w-nav[data-collapse=small] .w-nav-button {display:block}
  .w-nav-brand {padding-left:10px}
}
@media screen and (max-width:479px) {
  .w-nav[data-collapse=tiny] .w-nav-menu {display:none}
  .w-nav[data-collapse=tiny] .w-nav-button {display:block}
}
@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
@font-face{font-family:Easedisplay;src:url(/fonts/EaseDisplay-Medium.woff2)format("woff2"),url(/fonts/EaseDisplay-Medium.woff)format("woff");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBold.woff2)format("woff2"),url(/fonts/Inter-SemiBold.woff)format("woff");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.woff2)format("woff2"),url(/fonts/Inter-Regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBoldItalic.woff2)format("woff2"),url(/fonts/Inter-SemiBoldItalic.woff)format("woff");font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/Inter-Medium.woff2)format("woff2"),url(/fonts/Inter-Medium.woff)format("woff");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/Inter-Italic.woff2)format("woff2"),url(/fonts/Inter-Italic.woff)format("woff");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/Inter-MediumItalic.woff2)format("woff2"),url(/fonts/Inter-MediumItalic.woff)format("woff");font-weight:500;font-style:italic;font-display:swap}
:root {--_theme---background:var(--swatch--light-100);--_text-style---font-family:var(--_typography---font--primary-family);--_theme---text:var(--swatch--dark-900);--_text-style---font-size:var(--_typography---font-size--text-main);--_text-style---line-height:var(--_typography---line-height--large);--_typography---font--primary-medium:500;--_text-style---letter-spacing:var(--_typography---letter-spacing--none);--_text-style---font-weight:var(--_typography---font--primary-medium);--_text-style---text-wrap:pretty;--_typography---font-size--tagline:clamp(.875*1rem,((.875 - ((.875 - .875)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((.875 - .875)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),.875*1rem);--_typography---letter-spacing--0-1:.1em;--_theme---heading-accent:var(--swatch--brand-600);--_typography---font-size--h6:clamp(1.5*1rem,((1.5 - ((1.75 - 1.5)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((1.75 - 1.5)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),1.75*1rem);--_typography---letter-spacing--0-02:-.02em;--_gap---size:var(--site--gutter);--_column-count---value:1;--_text-style---margin-top:var(--_spacing---space--4);--_text-style---margin-bottom:var(--_spacing---space--6);--_spacing---space--6:clamp(2*1rem,((2 - ((2.5 - 2)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((2.5 - 2)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),2.5*1rem);--_text-style---trim-top:var(--_typography---font--primary-trim-top);--_text-style---trim-bottom:var(--_typography---font--primary-trim-bottom);--_spacing---space--7:clamp(2.25*1rem,((2.25 - ((3 - 2.25)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((3 - 2.25)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),3*1rem);--_typography---line-height--small:1;--_typography---line-height--medium:1.106;--_typography---line-height--large:1.35;--_typography---line-height--huge:1.5;--_typography---letter-spacing--0-04:-.04em;--_typography---letter-spacing--none:0em;--max-width--main:calc(var(--site--viewport-max)*1rem);--site--margin:clamp(1*1rem,((1 - ((3.75 - 1)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((3.75 - 1)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),3.75*1rem);--max-width--small:50rem;--max-width--full:100%;--border-width--main:.094rem;--_spacing---section-space--none:0px;--_spacing---section-space--small:clamp(3*1rem,((3 - ((5 - 3)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((5 - 3)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),5*1rem);--_spacing---section-space--main:clamp(4*1rem,((4 - ((8 - 4)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((8 - 4)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),8*1rem);--_spacing---section-space--large:clamp(5.5*1rem,((5.5 - ((10 - 5.5)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((10 - 5.5)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),10*1rem);--_spacing---section-space--page-top:clamp(10*1rem,((10 - ((14 - 10)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((14 - 10)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),14*1rem);--_spacing---space--2:clamp(.625*1rem,((.625 - ((.75 - .625)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((.75 - .625)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),.75*1rem);--site--gutter:2rem;--_theme---background-2:var(--swatch--light-200);--_spacing---space--1:clamp(.375*1rem,((.375 - ((.5 - .375)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((.5 - .375)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),.5*1rem);--_spacing---space--3:clamp(.875*1rem,((.875 - ((1 - .875)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((1 - .875)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),1*1rem);--_spacing---space--4:clamp(1.25*1rem,((1.25 - ((1.5 - 1.25)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((1.5 - 1.25)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),1.5*1rem);--_spacing---space--5:clamp(1.75*1rem,((1.75 - ((2 - 1.75)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((2 - 1.75)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),2*1rem);--_spacing---space--8:clamp(2.5*1rem,((2.5 - ((4 - 2.5)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((4 - 2.5)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),4*1rem);--_typography---font--primary-family:Inter,Arial,sans-serif;--_typography---font--primary-regular:400;--_typography---font--primary-semibold:600;--radius--tiny:.5rem;--radius--main:1rem;--radius--round:100vw;--_theme---border:var(--swatch--light-200);--swatch--transparent:transparent;--radius--smal:.75rem;--swatch--light-200:#e4ecee;--_button-style---border:var(--_theme---button-primary--border);--_button-style---background:var(--_theme---button-primary--background);--_button-style---text:var(--_theme---button-primary--text);--_button-style---border-hover:var(--_theme---button-primary--border-hover);--_button-style---background-hover:var(--_theme---button-primary--background-hover);--_button-style---text-hover:var(--_theme---button-primary--text-hover);--_theme---text-link--border:var(--_theme---border);--_theme---text-link--text:var(--_theme---text);--_theme---text-link--border-hover:var(--_theme---text);--_theme---text-link--text-hover:var(--_theme---text-link--text);--focus--offset-inner:calc(var(--focus--width)*-1);--nav--max-width-outer:var(--max-width--main);--nav--spacing-outer-horizontal:var(--site--margin);--nav--radius:var(--radius--tiny);--_theme---nav--background:var(--_theme---background);--nav--max-width-inner:var(--max-width--main);--nav--height-total:var(--nav--height);--nav--spacing-outer-vertical:var(--site--margin);--swatch--dark-900:#101010;--nav--height:4rem;--nav--hamburger-thickness:var(--border-width--main);--nav--spacing-inner-horizontal:var(--_spacing---space--5);--nav--hamburger-gap:var(--_spacing---space--2);--swatch--light-100:white;--swatch--brand-mistia:#c7d7da;--swatch--dark-800:#8aa5aa;--_typography---font-size--text-main:clamp(1*1rem,((1 - ((1 - 1)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((1 - 1)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),1*1rem);--focus--width:.125rem;--radius--huge:3rem;--radius--medium:1.25rem;--radius--larger:2rem;--swatch--brand-500:#1addff;--swatch--brand-text:var(--swatch--dark-900);--_typography---font-size--h2:clamp(3*1rem,((3 - ((6.25 - 3)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((6.25 - 3)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),6.25*1rem);--_typography---font--secondary-family:Easedisplay,Arial,sans-serif;--_typography---line-height--tiny:.95;--_typography---font-size--text-large:clamp(1.125*1rem,((1.125 - ((1.125 - 1.125)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((1.125 - 1.125)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),1.125*1rem);--_typography---font--secondary-medium:500;--_typography---font-size--text-small:clamp(.875*1rem,((.875 - ((.875 - .875)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((.875 - .875)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),.875*1rem);--_text-style---text-transform:var(--_typography---text-transform--none);--site--viewport-max:100;--site--viewport-min:20;--_theme---selection--background:var(--swatch--brand-300);--_theme---selection--text:var(--swatch--brand-text);--site--column-count:12;--focus--offset-outer:.1875rem;--swatch--light-100-o20:color-mix(in srgb,var(--swatch--light-100)20%,transparent);--swatch--dark-900-o20:color-mix(in srgb,var(--swatch--dark-900)20%,transparent);--swatch--brand-100:color-mix(in srgb,var(--swatch--brand-500),white 80%);--swatch--brand-200:color-mix(in srgb,var(--swatch--brand-500),white 60%);--swatch--brand-400:color-mix(in srgb,var(--swatch--brand-500),white 20%);--swatch--brand-300:color-mix(in srgb,var(--swatch--brand-500),white 40%);--swatch--brand-900:color-mix(in srgb,var(--swatch--brand-500),black 80%);--swatch--brand-800:color-mix(in srgb,var(--swatch--brand-500),black 60%);--swatch--brand-700:color-mix(in srgb,var(--swatch--brand-500),black 40%);--swatch--brand-600:color-mix(in srgb,var(--swatch--brand-500),black 20%);--_alignment---direction:start;--swatch--brand-text-o20:color-mix(in srgb,var(--swatch--brand-text)20%,transparent);--_theme---button-primary--background:var(--swatch--brand-500);--_theme---button-primary--border:var(--_theme---button-primary--background);--swatch--brand-linen:white;--_theme---button-primary--text:var(--swatch--brand-text);--swatch--brand-iris:#f4eeff;--swatch--brand-nereid:#e8f8ee;--_theme---button-primary--background-hover:var(--swatch--brand-300);--_theme---button-primary--border-hover:var(--swatch--brand-300);--_theme---button-primary--text-hover:var(--swatch--brand-text);--_theme---button-secondary--background:var(--swatch--dark-900);--_theme---button-secondary--border:var(--swatch--dark-900);--_theme---button-secondary--text:var(--swatch--light-100);--_theme---button-secondary--background-hover:var(--swatch--dark-800);--_theme---button-secondary--border-hover:var(--_theme---button-secondary--background-hover);--_theme---button-secondary--text-hover:var(--_theme---background);--nav--banner-height:2.4rem;--nav--menu-open-duration:var(--nav-duration,.4s);--_typography---font--primary-trim-top:.37em;--_typography---font--primary-trim-bottom:.36em;--_typography---font--secondary-trim-top:.34em;--_typography---font--secondary-trim-bottom:.37em;--_typography---letter-spacing--0-06:-.06em;--_typography---letter-spacing--0-05:-.05em;--nav--menu-close-duration:var(--nav-duration,.4s);--nav--dropdown-open-duration:var(--nav-duration,.4s);--nav--dropdown-close-duration:var(--nav-duration,.4s);--_typography---font-size--text-xlarge:clamp(1.125*1rem,((1.125 - ((1.25 - 1.125)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((1.25 - 1.125)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),1.25*1rem);--_typography---font-size--h5:clamp(2.25*1rem,((2.25 - ((3.25 - 2.25)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((3.25 - 2.25)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),3.25*1rem);--_typography---font-size--h4:clamp(2.5*1rem,((2.5 - ((4.5 - 2.5)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((4.5 - 2.5)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),4.5*1rem);--_typography---font-size--h3:clamp(2.75*1rem,((2.75 - ((5.125 - 2.75)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((5.125 - 2.75)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),5.125*1rem);--_typography---font-size--h1:clamp(3.25*1rem,((3.25 - ((7.625 - 3.25)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((7.625 - 3.25)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),7.625*1rem);--_typography---font-size--display:clamp(4.5*1rem,((4.5 - ((12 - 4.5)/(var(--site--viewport-max) - var(--site--viewport-min))*var(--site--viewport-min)))*1rem + ((12 - 4.5)/(var(--site--viewport-max) - var(--site--viewport-min)))*100vw),12*1rem);--site--column-width:calc((min(var(--max-width--main),100% - var(--site--margin)*2) - (var(--site--gutter)*(var(--site--column-count) - 1)))/var(--site--column-count));--_typography---text-transform--none:var(--text-transform,none);--_typography---text-transform--uppercase:uppercase;--_typography---text-transform--capitalize:capitalize;--_typography---text-transform--lowercase:lowercase}
body {background-color:var(--_theme---background);font-family:var(--_text-style---font-family);color:var(--_theme---text);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_typography---font--primary-medium);letter-spacing:var(--_text-style---letter-spacing);--_column-count---value:12;text-transform:var(--_text-style---text-transform,none)}
h1,h2,h3,h4,h5,h6,p {display:flow-root}
a {color:inherit;outline-width:var(--focus--width);outline-offset:var(--focus--offset-outer);text-decoration:none}
ul,ol {margin-bottom:0;padding-left:0;list-style:""}
li {display:block}
img {object-fit:cover;width:100%;max-width:100%}
strong {font-weight:700}
blockquote {border-style:none;padding:0}
figure {margin-bottom:0}
.c-paragraph {font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_typography---font--primary-medium);letter-spacing:var(--_text-style---letter-spacing);text-transform:var(--_text-style---text-transform,none);text-wrap:var(--_text-style---text-wrap)}
.u-text-style-main {font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--primary-family);--_text-style---font-size:var(--_typography---font-size--text-main);--_text-style---line-height:var(--_typography---line-height--large);--_text-style---letter-spacing:var(--_typography---letter-spacing--none);--_text-style---font-weight:var(--_typography---font--primary-medium);--_text-style---text-wrap:pretty;--_text-style---margin-top:var(--_spacing---space--4);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--primary-trim-top);--_text-style---trim-bottom:var(--_typography---font--primary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-transform:var(--_text-style---text-transform,none);text-wrap:var(--_text-style---text-wrap);display:flow-root}
.u-text-style-small {font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--primary-family);--_text-style---font-size:var(--_typography---font-size--text-small);--_text-style---line-height:var(--_typography---line-height--large);--_text-style---letter-spacing:var(--_typography---letter-spacing--none);--_text-style---font-weight:var(--_typography---font--primary-medium);--_text-style---text-wrap:pretty;--_text-style---margin-top:var(--_spacing---space--4);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--primary-trim-top);--_text-style---trim-bottom:var(--_typography---font--primary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-transform:var(--_text-style---text-transform,none);text-wrap:var(--_text-style---text-wrap);display:flow-root}
.u-rich-text {text-wrap:var(--_text-style---text-wrap)}
.u-rich-text h1 {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--secondary-family);--_text-style---font-size:var(--_typography---font-size--h1);--_text-style---line-height:var(--_typography---line-height--tiny);--_text-style---letter-spacing:var(--_typography---letter-spacing--0-05);--_text-style---font-weight:var(--_typography---font--secondary-medium);--_text-style---text-wrap:balance;--_text-style---margin-top:var(--_spacing---space--7);--_text-style---margin-bottom:var(--_spacing---space--5);--_text-style---trim-top:var(--_typography---font--secondary-trim-top);--_text-style---trim-bottom:var(--_typography---font--secondary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-transform:var(--_text-style---text-transform,none);text-wrap:var(--_text-style---text-wrap)}
.u-rich-text h2 {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--secondary-family);--_text-style---font-size:var(--_typography---font-size--h2);--_text-style---line-height:var(--_typography---line-height--tiny);--_text-style---letter-spacing:var(--_typography---letter-spacing--0-06);--_text-style---font-weight:var(--_typography---font--secondary-medium);--_text-style---text-wrap:balance;--_text-style---margin-top:var(--_spacing---space--7);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--secondary-trim-top);--_text-style---trim-bottom:var(--_typography---font--secondary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-transform:var(--_text-style---text-transform,none);text-wrap:var(--_text-style---text-wrap)}
.u-rich-text h3 {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--secondary-family);--_text-style---font-size:var(--_typography---font-size--h3);--_text-style---line-height:var(--_typography---line-height--tiny);--_text-style---letter-spacing:var(--_typography---letter-spacing--0-06);--_text-style---font-weight:var(--_typography---font--secondary-medium);--_text-style---text-wrap:balance;--_text-style---margin-top:var(--_spacing---space--7);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--secondary-trim-top);--_text-style---trim-bottom:var(--_typography---font--secondary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-transform:var(--_text-style---text-transform,none);text-wrap:var(--_text-style---text-wrap)}
.u-rich-text h4 {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--secondary-family);--_text-style---font-size:var(--_typography---font-size--h4);--_text-style---line-height:var(--_typography---line-height--small);--_text-style---letter-spacing:var(--_typography---letter-spacing--0-05);--_text-style---font-weight:var(--_typography---font--secondary-medium);--_text-style---text-wrap:balance;--_text-style---margin-top:var(--_spacing---space--7);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--secondary-trim-top);--_text-style---trim-bottom:var(--_typography---font--secondary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-transform:var(--_text-style---text-transform,none);text-wrap:var(--_text-style---text-wrap)}
.u-rich-text h5 {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--secondary-family);--_text-style---font-size:var(--_typography---font-size--h5);--_text-style---line-height:var(--_typography---line-height--medium);--_text-style---letter-spacing:var(--_typography---letter-spacing--0-04);--_text-style---font-weight:var(--_typography---font--secondary-medium);--_text-style---text-wrap:balance;--_text-style---margin-top:var(--_spacing---space--7);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--secondary-trim-top);--_text-style---trim-bottom:var(--_typography---font--secondary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-wrap:var(--_text-style---text-wrap);text-transform:var(--_text-style---text-transform,none)}
.u-rich-text h6 {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--secondary-family);--_text-style---font-size:var(--_typography---font-size--h6);--_text-style---line-height:var(--_typography---line-height--medium);--_text-style---letter-spacing:var(--_typography---letter-spacing--0-02);--_text-style---font-weight:var(--_typography---font--secondary-medium);--_text-style---text-wrap:balance;--_text-style---margin-top:var(--_spacing---space--7);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--secondary-trim-top);--_text-style---trim-bottom:var(--_typography---font--secondary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-wrap:var(--_text-style---text-wrap);text-transform:var(--_text-style---text-transform,none)}
.u-rich-text p {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom)}
.u-rich-text blockquote {margin-top:var(--_spacing---space--6);margin-bottom:var(--_spacing---space--6);font-family:var(--_text-style---font-family);font-size:var(--_text-style---font-size);line-height:var(--_text-style---line-height);font-weight:var(--_text-style---font-weight);letter-spacing:var(--_text-style---letter-spacing);--_text-style---font-family:var(--_typography---font--primary-family);--_text-style---font-size:var(--_typography---font-size--text-large);--_text-style---line-height:var(--_typography---line-height--large);--_text-style---letter-spacing:var(--_typography---letter-spacing--none);--_text-style---font-weight:var(--_typography---font--primary-medium);--_text-style---text-wrap:pretty;--_text-style---margin-top:var(--_spacing---space--4);--_text-style---margin-bottom:var(--_spacing---space--6);--_text-style---trim-top:var(--_typography---font--primary-trim-top);--_text-style---trim-bottom:var(--_typography---font--primary-trim-bottom);--_text-style---text-transform:var(--_typography---text-transform--none);text-transform:var(--_text-style---text-transform,none);border-left-style:solid;border-left-width:.2rem;padding:.5rem 1rem}
.u-rich-text ol {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);grid-column-gap:.9em;grid-row-gap:.9em;align-items:var(--_alignment---direction,start);flex-flow:column;padding-left:1.2em;list-style-type:decimal;display:flex;overflow:visible}
.u-rich-text li {margin-top:calc(var(--_text-style---trim-top)*-1);margin-bottom:calc(var(--_text-style---trim-bottom)*-1);display:list-item}
.u-rich-text ul {margin-top:var(--_text-style---margin-top);margin-bottom:var(--_text-style---margin-bottom);grid-column-gap:.9em;grid-row-gap:.9em;align-items:var(--_alignment---direction,start);flex-flow:column;padding-left:1.2em;list-style-type:disc;display:flex;overflow:visible}
.u-rich-text figure {margin-top:var(--_spacing---space--7);margin-bottom:var(--_spacing---space--7)}
.u-container {z-index:1;max-width:var(--max-width--main);width:calc(100% - var(--site--margin)*2);flex:1;margin-left:auto;margin-right:auto;container:threshold-large/inline-size}
.u-sr-only {white-space:nowrap;clip:rect(0,0,0,0);border-width:0;width:1px;height:1px;margin-left:auto;margin-right:auto;padding:0;position:absolute;inset:0% 0% auto;overflow:hidden}
.u-grid-custom {grid-column-gap:var(--site--gutter);grid-row-gap:var(--site--gutter);grid-template-rows:auto;grid-auto-columns:minmax(0,1fr);grid-template-columns:repeat(var(--_column-count---value),minmax(0,1fr));flex-flow:column;display:grid}
.u-grid-above,.u-grid-below {grid-column-gap:var(--site--gutter);grid-row-gap:var(--site--gutter);grid-template-rows:auto;grid-auto-columns:minmax(0,1fr);grid-template-columns:repeat(var(--_column-count---value),minmax(0,1fr));flex-flow:column;display:grid}
.u-margin-bottom-text {margin-bottom:var(--_text-style---margin-bottom)}
.u-weight-medium {font-family:var(--_typography---font--primary-family);font-weight:var(--_typography---font--primary-medium)}
.u-text-transform-uppercase {text-transform:uppercase}
.u-zindex-1 {z-index:1;position:relative}
.u-position-fixed {position:fixed}
.u-cover-absolute {width:100%;height:100%;position:absolute;inset:0%}
.button_main_wrap {border:var(--border-width--main)solid var(--_button-style---border);border-radius:var(--radius--smal);background-color:var(--_button-style---background);color:var(--_button-style---text);text-align:center;vertical-align:middle;--_button-style---border:var(--_theme---button-primary--border);--_button-style---background:var(--_theme---button-primary--background);--_button-style---text:var(--_theme---button-primary--text);--_button-style---border-hover:var(--_theme---button-primary--border-hover);--_button-style---background-hover:var(--_theme---button-primary--background-hover);--_button-style---text-hover:var(--_theme---button-primary--text-hover);justify-content:center;align-items:center;padding:.875rem 1rem;line-height:1;transition:border-color .2s,color .2s,background-color .2s;display:inline-flex;position:relative}
.button_main_wrap:where(.w-variant-e85564cd-af30-a478-692b-71732aefb3ab) {--_button-style---border:var(--_theme---button-secondary--border);--_button-style---background:var(--_theme---button-secondary--background);--_button-style---text:var(--_theme---button-secondary--text);--_button-style---border-hover:var(--_theme---button-secondary--border-hover);--_button-style---background-hover:var(--_theme---button-secondary--background-hover);--_button-style---text-hover:var(--_theme---button-secondary--text-hover)}
.button_main_wrap:hover {border-color:var(--_button-style---border-hover);background-color:var(--_button-style---background-hover);color:var(--_button-style---text-hover)}
.button_main_text {z-index:1;line-height:inherit;position:relative}
.page_wrap {flex-flow:column;min-height:100svh;display:flex;overflow:clip}
.guide_wrap {z-index:2000;pointer-events:none;display:none;position:fixed;inset:0% 0% auto;overflow:hidden}
.guide_layout {grid-column-gap:var(--site--gutter);grid-row-gap:var(--site--gutter);grid-template-rows:auto;grid-auto-columns:1fr;grid-template-columns:repeat(var(--site--column-count),minmax(0,1fr));display:grid}
.guide_column {color:#8a8a8a80;background-color:#9292920f;flex-flow:column;justify-content:flex-end;align-items:center;height:100vh;padding-top:.6rem;padding-bottom:.6rem;display:flex}
.clickable_wrap {z-index:3;border-radius:inherit}
.clickable_link {border-radius:inherit;width:100%;height:100%;display:block;position:absolute;inset:0%}
.clickable_btn {border-radius:inherit;width:100%;height:100%;display:none;position:absolute;inset:0%}
.nav_button_wrap {z-index:2;flex:none;padding:0;outline-width:var(--focus--width)!important;outline-color:var(--_theme---text)!important;outline-offset:var(--focus--offset-inner)!important}
.footer_link_text.u-weight-medium {z-index:1;position:relative}
.footer_group_wrap {grid-column:auto/span 2}
.footer_contain {padding-top:var(--_spacing---section-space--main);padding-bottom:var(--_spacing---section-space--main)}
.footer_contain.u-container {position:relative}
.footer_wrap {margin-top:-1px;position:relative}
.footer_social_link {border-radius:var(--radius--round);background-color:var(--swatch--dark-900);width:1.5rem;min-width:1.5rem;height:1.5rem;min-height:1.5rem;color:var(--swatch--light-100);justify-content:center;align-items:center;transition:color .2s;display:flex}
.footer_social_link:hover {color:var(--swatch--brand-mistia)}
.footer_social_list {grid-column-gap:var(--_spacing---space--1);grid-row-gap:var(--_spacing---space--1);flex-flow:row;place-content:center flex-start;align-items:center;display:flex}
.footer_group_title {color:var(--swatch--dark-800)}
.footer_bottom_list {grid-column-gap:var(--_spacing---space--3);grid-row-gap:var(--_spacing---space--3);flex-flow:wrap;place-content:center flex-start;align-items:center;display:flex}
.footer_layout {grid-row-gap:var(--_spacing---space--8);flex-flow:column;justify-content:space-between;align-items:stretch}
.footer_bottom_layout {grid-column-gap:16px;grid-row-gap:16px;grid-template-rows:auto;grid-template-columns:1fr 1fr;grid-auto-columns:1fr;grid-auto-flow:row;align-content:center;padding-top:2.5rem;display:grid}
.footer_group_item {display:flex}
.footer_group_list {flex-flow:column;justify-content:flex-start;align-items:flex-start;display:flex}
.footer_bottom_item {display:flex}
.footer_link_wrap {padding:.5rem .63rem;position:relative}
.footer_link_wrap.is-coming-soon {grid-column-gap:.25rem;grid-row-gap:.25rem;justify-content:flex-start;align-items:center;display:flex}
.footer_box {border-top-left-radius:var(--radius--larger);border-top-right-radius:var(--radius--larger);border-bottom-left-radius:var(--radius--larger);border-bottom-right-radius:var(--radius--larger);background-color:var(--swatch--light-100);grid-column:2/span 10;padding-top:2.5rem;padding-left:2.5rem;padding-right:2.5rem}
.footer_logo_column {grid-column:auto/span 2}
.footer_top.u-grid-custom {--_column-count---value:10}
.logo_svg_mark {width:5rem}
.footer_menu {grid-column:auto/span 8}
.footer_menu.u-grid-custom {--_column-count---value:8}
.footer_video {aspect-ratio:11.5/2.62;margin-top:6rem;position:relative}
.footer_social_svg {width:.75rem}
.footer_dd {width:100%}
.footer_dd_toggle {justify-content:space-between;align-items:center;width:100%;padding:1rem 0 .5rem .63rem;display:flex}
.footer_dd_icon {width:1rem;min-width:1rem;display:none}
.footer_dd_nav {background-color:var(--swatch--transparent);display:block;position:static;overflow:visible}
.u-show-tablet {display:none}
.nav_wrap {z-index:100;background-color:var(--swatch--transparent);margin-top:1rem;position:fixed;inset:0% 0% auto}
.nav_layout {border-top-style:solid;border-top-width:1px;border-top-color:var(--_theme---border);border-right-style:solid;border-right-width:1px;border-right-color:var(--_theme---border);border-bottom-style:solid;border-bottom-width:1px;border-bottom-color:var(--_theme---border);border-left-style:solid;border-left-width:1px;border-left-color:var(--_theme---border);border-top-left-radius:var(--radius--medium);border-top-right-radius:var(--radius--medium);border-bottom-left-radius:var(--radius--medium);border-bottom-right-radius:var(--radius--medium);background-color:var(--_theme---background);grid-column:3/span 8;justify-content:space-between;align-items:center;padding:.75rem .75rem .75rem 1rem;display:flex}
.nav_menu {background-color:var(--swatch--transparent)}
.nav_menu_list {background-color:var(--_theme---background);display:flex}
.nav_logo {width:9.25rem;color:var(--_theme---text);padding-left:0;display:flex}
.nav_logo.w--current {padding-left:0;display:flex}
.nav_logo_svg {transform:translateY(-1px)}
.nav_dd {position:relative}
.nav_dd_toggle {border-radius:var(--radius--smal);padding:.5rem;position:relative}
.nav_dd_menu {background-color:var(--swatch--transparent)}
.nav_dd_menu_list {border:1px solid var(--_theme---border);border-radius:var(--radius--main);background-color:var(--_theme---background);flex-flow:column;min-width:12rem;margin-top:2rem;padding:.75rem 1rem;display:flex;position:relative}
.nav_dd_menu_link {white-space:nowrap;position:relative}
.nav_dd_menu_pointer {width:2.19rem;color:var(--_theme---background);display:flex;position:absolute;inset:-.66rem auto auto 1.25rem}
.nav_link {border-radius:var(--radius--smal);padding:.5rem;position:relative}
.nav_menu_mobile_cta,.nav_dd_icon {display:none}
.nav_dd_border {background-color:var(--swatch--light-200);width:88%;height:1px;margin-left:auto;margin-right:auto;position:absolute;inset:auto 0% 0%}
.footer_link_bg {z-index:0;border-radius:var(--radius--smal);background-color:var(--swatch--light-200);opacity:0;position:absolute;inset:0%}
.nav_dd_menu_text.u-weight-medium {z-index:1;position:relative}
.nav_dd_hover {z-index:0;border-radius:var(--radius--smal);background-color:var(--_theme---background-2);height:0%;position:absolute;inset:auto 0% 0%}
.nav_dd_link-text {margin-top:.25rem;margin-bottom:.38rem;padding:.63rem .81rem;position:relative}
.div-block-2 {width:auto;height:auto}
.div-block-3 {background-color:#e0eaec;height:100px}
.footer_credits {padding-top:2.5rem}
.nav_buttons {grid-column-gap:.75rem;grid-row-gap:.75rem;justify-content:flex-start;align-items:center;display:flex}
.locale_link {white-space:nowrap;width:100%;position:relative}
.locale_toggle {border-radius:var(--radius--round);background-color:var(--swatch--light-200);min-width:2.25rem;min-height:2.25rem;padding:.5rem;position:relative}
.locale_menu {background-color:var(--swatch--transparent);margin-left:-1rem}
.locale_dd {position:relative}
.locale_text.u-weight-medium {z-index:1;position:relative}
.footer_ai {grid-column-gap:1rem;grid-row-gap:1rem;justify-content:flex-start;align-items:center;margin-top:auto;display:flex}
.footer_ai_list {grid-column-gap:var(--_spacing---space--1);grid-row-gap:var(--_spacing---space--1);flex-flow:row;place-content:center flex-start;align-items:center;display:flex}
.footer_ai_link {justify-content:center;align-items:center;width:1.5rem;min-width:1.5rem;height:1.5rem;min-height:1.5rem;transition:color .2s;display:flex}
.footer_ai_link:hover {color:var(--swatch--brand-mistia)}
.footer_bottom_credits {grid-column-gap:1rem;grid-row-gap:1rem;justify-content:flex-start;align-items:center;display:flex}
.tag_coming-soon {border-radius:var(--radius--round);background-color:var(--swatch--light-200);justify-content:center;align-items:center;padding:.125rem .25rem;font-size:.69rem;display:flex;position:relative}
@media screen and (max-width:991px) {
  .footer_group_wrap {border-bottom:1px solid var(--swatch--light-200);padding-bottom:.75rem}
  .footer_group_title.u-text-style-small.u-weight-medium {color:var(--_theme---text);font-size:var(--_typography---font-size--text-main)}
  .footer_bottom_layout {grid-template-columns:1fr;padding-top:1.5rem;padding-bottom:1.5rem}
  .footer_group_list {border-radius:var(--radius--smal);background-color:var(--swatch--light-200);padding:1rem}
  .footer_link_wrap {padding-left:0;padding-right:0}
  .footer_top.u-grid-custom {display:flex}
  .footer_menu.u-grid-custom {grid-column-gap:var(--_spacing---space--1);grid-row-gap:var(--_spacing---space--1);display:flex}
  .footer_dd_toggle {padding-left:0}
  .footer_dd_icon {display:block}
  .footer_dd_nav {overflow:hidden}
  .u-hide-tablet {display:none}
  .u-show-tablet {display:block}
  .nav_contain.u-container.u-grid-custom {display:flex}
  .nav_menu {padding-top:.5rem;padding-right:var(--site--margin);padding-left:var(--site--margin)}
  .nav_menu_list {border:1px solid var(--_theme---border);border-radius:var(--radius--main);flex-flow:column;justify-content:flex-start;align-items:flex-start;padding:2rem 1rem 1rem}
  .nav_dd {border-bottom:1px solid var(--_theme---border);width:100%}
  .nav_dd_toggle {justify-content:space-between;width:100%;padding:1rem 0;display:flex}
  .nav_dd_menu {display:block;position:static;overflow:hidden}
  .nav_dd_menu_list {background-color:var(--swatch--light-200);flex-flow:column;min-width:0;margin-top:0;margin-bottom:1rem;padding:0;display:flex}
  .nav_dd_menu_link {padding-top:.5rem;padding-bottom:.5rem}
  .nav_dd_menu_pointer {display:none}
  .nav_link {width:100%;padding:1rem 0;display:flex}
  .nav_button {padding:.5rem}
  .nav_button_bar {background-color:var(--swatch--brand-text);width:28px;height:2px;margin-top:6px;margin-bottom:6px}
  .nav_menu_mobile_cta {flex-flow:column;width:100%;margin-top:1rem;display:flex}
  .nav_dd_icon {width:1rem;min-width:1rem;display:flex}
  .nav_dd_border {display:none}
  .nav_buttons {grid-column-gap:.25rem;grid-row-gap:.25rem}
  .locale_link {padding:0}
  .locale_toggle {border-radius:var(--radius--smal);justify-content:center;align-items:center;width:100%;padding:.25rem .75rem;display:flex}
  .locale_menu {margin-left:0;position:static;overflow:hidden}
  .locale_dd {width:100%}
  .locale_text.u-weight-medium {font-size:var(--_typography---font-size--text-small)}
  .footer_ai {border-radius:var(--radius--smal);background-color:var(--swatch--light-200);justify-content:center;align-items:center;width:100%;padding:2rem 1rem}
  .footer_bottom_credits {flex-flow:column;justify-content:space-between;align-items:center}
  .tag_coming-soon {background-color:var(--swatch--light-100)}
}
@media screen and (max-width:767px) {
  .footer_box {padding-top:2rem;padding-left:1rem;padding-right:1rem}
  .nav_dd_menu_link {padding-top:0;padding-bottom:0}
  .nav_dd_link-text {margin-top:0;margin-bottom:0;padding-left:0;padding-right:0}
  .locale_link {padding-top:0;padding-bottom:0}
}
@media screen and (max-width:479px) {
  .u-max-width-full {max-width:100%}
  .footer_social_list {order:9999}
  .footer_bottom_layout {padding-bottom:1rem}
  .footer_video {margin-top:4rem}
  .nav_contain.u-container.u-grid-custom {width:calc(100% - var(--site--margin)*2)}
  .footer_ai {flex-flow:column}
  .footer_ai_list {grid-column-gap:var(--_spacing---space--3);grid-row-gap:var(--_spacing---space--3)}
}
#w-node-_29394d2f-cd0c-8059-7e15-66f9381499a5-3814999f {grid-area:span 1/span 1/span 1/span 1}
#w-node-_9ab05d6c-1eee-7165-f3dc-34f70363392c-3814999f {place-self:center end}
#w-node-de102616-03e4-ca78-fc45-d36fe8c1b4c1-0a3e8b1b,#w-node-d19dece8-99c5-897f-c850-9dac0c5b865b-49c9b618 {align-self:center}
#w-node-_36c30041-6eae-bd6e-69f7-b8b252efde61-7bcab2f4 {align-self:start}
#w-node-_93dbe0ca-3905-75d9-ea8d-c66d5580b608-7bcab2f4,#w-node-_4f9f5ed9-339f-a238-0c6d-196e57030eac-7bcab2f4 {align-self:center}
#w-node-_1c50be22-e3fc-d0a8-ce45-aea9b3cba861-b3cba85d {align-self:start}
#w-node-_1c50be22-e3fc-d0a8-ce45-aea9b3cba87a-b3cba85d {align-self:center}
#w-node-_0c0e58ac-3f62-dc2e-5c62-ef2571b486e6-b3cba85d {align-self:start}
#w-node-_1c50be22-e3fc-d0a8-ce45-aea9b3cba8b5-b3cba85d {align-self:center}
#w-node-ea832cc4-4eea-868a-40e9-66551db0eff1-b3cba85d {align-self:start}
#w-node-ea832cc4-4eea-868a-40e9-66551db0eff3-b3cba85d {align-self:center}
#w-node-_35133d4e-5d00-ffea-d9e1-7c3abaab9c90-3a3d059f {align-self:start}
#w-node-_6daf4921-1b29-2688-cc94-b507b13356c5-7df0e14c {place-self:end}
#w-node-d7222b26-935b-452d-9697-b2c2208bdd29-fe67014d,#w-node-d46efd7e-c4a5-bf20-5b77-4ea2787bee88-fe67014d {align-self:end}
@media screen and (max-width:991px) {
  #w-node-_9ab05d6c-1eee-7165-f3dc-34f70363392c-3814999f {justify-self:center}
}

.anti-flicker, .anti-flicker * {visibility: hidden !important; opacity: 0 !important;}
[data-wf-hidden-variation], [data-wf-hidden-variation] * {
        display: none !important;
      }

[data-h-heading-load="true"] {
  visibility: hidden;
}
[data-h-paragraph-load="true"] {
  visibility: hidden;
}
[data-h-button-load="true"] {
  visibility: hidden;
}

/* Failsafe: never hide content from users who opt out of motion */
@media (prefers-reduced-motion: reduce) {
  [data-h-heading-load="true"],
  [data-h-paragraph-load="true"],
  [data-h-button-load="true"] { visibility: visible !important; }
}


:root {
  --grid-breakout: [full-start] minmax(0, 1fr) [content-start] repeat(var(--site--column-count), minmax(0, var(--site--column-width))) [content-end] minmax(0, 1fr) [full-end];
  --grid-breakout-single: [full-start] minmax(0, 1fr) [content-start] minmax(0, calc(100% - var(--site--margin) * 2)) [content-end] minmax(0, 1fr) [full-end];
}
::before, ::after {
	box-sizing: border-box;
}
.w-embed:before, .w-embed:after,
.w-richtext:before, .w-richtext:after {
	content: unset;
}
html {
	background-color: var(--_theme---background);
}
button {
	background-color: unset;
	padding: unset;
	text-align: inherit;
}
button:not(:disabled) {
	cursor: pointer;
}
video {
	width: 100%;
	object-fit: cover;
}
/* remove padding of empty element */
.wf-empty {
	padding: 0;
}
svg {
	max-width: 100%;
}
@media (prefers-color-scheme: light) {
	option { color: black; }
}
img::selection {
	background: transparent;
}
/* Typography */
body {
	text-transform: var(--_text-style---text-transform);
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
}
/* Clear Defaults */
a:not([class]) {
	text-decoration: underline;
}
h1,h2,h3,h4,h5,h6,p,blockquote,label {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	text-wrap: inherit;
	margin-top: 0;
	margin-bottom: 0;
}
select:has(option[value=""]:checked) {
	color: color-mix(in lab, currentcolor 60%, transparent)
}
/* Selection Color */
::selection {
	background-color: var(--_theme---selection--background);
	color: var(--_theme---selection--text);
}
/* Margin Trim */
:is(.u-margin-trim,.u-rich-text) > :not(:not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim) ~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim)),
:is(.u-margin-trim,.u-rich-text) > :not(:not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim) ~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim)).u-display-contents > :first-child {
	margin-top: 0;
}
:is(.u-margin-trim,.u-rich-text) > :not(:has(~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim))),
:is(.u-margin-trim,.u-rich-text) > :not(:has(~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim))).u-display-contents > :last-child {
	margin-bottom: 0;
}
/* Line Height Trim */
:is(h1,h2,h3,h4,h5,h6,p):not(.u-text-trim-off,:has([class*="u-text-style-"]))::before,
[class*="u-text-style-"]:not(.u-text-trim-off,:has(h1,h2,h3,h4,h5,h6,p))::before {
	content: "";
	display: table;
	margin-bottom: calc(-0.5lh + var(--_text-style---trim-top));
}
:is(h1,h2,h3,h4,h5,h6,p):not(.u-text-trim-off,:has([class*="u-text-style-"]))::after,
[class*="u-text-style-"]:not(.u-text-trim-off,:has(h1,h2,h3,h4,h5,h6,p))::after {
	content: "";
	display: table;
	margin-bottom: calc(-0.5lh + var(--_text-style---trim-bottom));
}
/* Rich Text Links */
.w-richtext a {
	position: relative;
	z-index: 4;
}
/* Line Clamp */
.u-line-clamp-1, .u-line-clamp-2, .u-line-clamp-3, .u-line-clamp-4 {
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.u-line-clamp-2 { -webkit-line-clamp: 2; }
.u-line-clamp-3 { -webkit-line-clamp: 3; }
.u-line-clamp-4 { -webkit-line-clamp: 4; }
/* Child Contain */
.u-child-contain > * {
	width: 100%;
	max-width: inherit !important;
  margin-inline: 0 !important;
	margin-top: 0 !important;
}
/* Hide */
.u-hide-if-empty:empty,
.u-hide-if-empty:not(:has(> :not(.w-condition-invisible))),
.u-hide-if-empty-cms:not(:has(.w-dyn-item)),
.u-embed-js,
.u-embed-css {
	display: none !important;
}
/* Focus State */
a, button, :where([tabindex]), [data-outline] {
	outline-offset: var(--focus--offset-outer);
}
a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible,
label:has(input:focus-visible) [data-outline] {
	outline-color: var(--_theme---text);
	outline-width: var(--focus--width);
	outline-style: solid;
}
/* Disabled */
[data-button]:has(button:disabled) {
	opacity: 0.5;
  pointer-events: none;
}
/* Play Button */
.button_toggle_wrap:has([aria-pressed="true"]) .button_toggle_play {
	opacity: 0;
}
.button_toggle_wrap:has([aria-pressed="true"]) .button_toggle_pause {
	opacity: 1;
}
/* Global / Clickable Component */
.wf-design-mode .clickable_wrap {
	z-index: 0;
}
.clickable_wrap a[href="#"] {
	display: none;
}
.clickable_wrap a[href="#"] ~ button {
	display: block;
}
/* Responsive Above */
@container threshold-large (width >= 62em) {
	.u-order-unset-above { order: unset !important; }
	.u-all-unset-above { all: unset !important; }
	.u-grid-below { display: flex !important; }
}
@container threshold-medium (width >= 48em) {
	.u-order-unset-above { order: unset !important; }
	.u-all-unset-above { all: unset !important; }
	.u-grid-below { display: flex !important; }
}
@container threshold-small (width >= 30em) {
	.u-order-unset-above { order: unset !important; }
	.u-all-unset-above { all: unset !important; }
	.u-grid-below { display: flex !important; }
}
/* Responsive Below */
@container threshold-large (width < 62em) {
	.u-order-unset-below { order: unset !important; }
	.u-all-unset-below { all: unset !important; }
	.u-grid-above { display: flex !important; }
}
@container threshold-medium (width < 48em) {
	.u-order-unset-below { order: unset !important; }
	.u-all-unset-below { all: unset !important; }
	.u-grid-above { display: flex !important; }
}
@container threshold-small (width < 30em) {
	.u-order-unset-below { order: unset !important; }
	.u-all-unset-below { all: unset !important; }
	.u-grid-above { display: flex !important; }
}
/* Form Radio */
.form_main_radio_label:has(input:checked) .form_main_radio_circle_inner {
	opacity: 1;
}
/* Form Checkbox */
.form_main_checkbox_label:has(input:checked) .form_main_checkbox_box {
	background-color: currentColor;
	border-color: currentColor;
}
.form_main_checkbox_label:has(input:checked) .form_main_checkbox_icon {
	opacity: 1;
}


html.wf-design-mode .guide_wrap {
	display: block;
}
.guide_layout {
	counter-reset: gridguides;
}
.guide_layout > div::before {
  counter-increment: gridguides;
  content: counter(gridguides);
}


@media (max-width: 1375px) {
  .nav_layout {
    grid-column: 1 / -1;
  }
}

.locale_item:last-child .nav_dd_border {
  display: none;
}


.footer_link_bg {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.footer_link_wrap:hover .footer_link_bg {
  opacity: 1;
}

/*
 * Live site inline <style> embeds, ported VERBATIM (vendor/live-home.html).
 * These are Webflow page/site custom-code embeds - the site's real base
 * layer: heading font-inherit reset, font-smoothing, lh line-height trim,
 * margin trim, child-contain, focus states, clickable fallback, hover
 * transitions. Blocks intentionally NOT ported: anti-flicker, variation
 * hiding, data-h-*-load and hero animation gates - all JS-dependent
 * visibility gating, which this rebuild bans (content visible by default).
 */
:root {
  --grid-breakout: [full-start] minmax(0, 1fr) [content-start] repeat(var(--site--column-count), minmax(0, var(--site--column-width))) [content-end] minmax(0, 1fr) [full-end];
  --grid-breakout-single: [full-start] minmax(0, 1fr) [content-start] minmax(0, calc(100% - var(--site--margin) * 2)) [content-end] minmax(0, 1fr) [full-end];
}
::before, ::after {
	box-sizing: border-box;
}
.w-embed:before, .w-embed:after,
.w-richtext:before, .w-richtext:after {
	content: unset;
}
html {
	background-color: var(--_theme---background);
}
button {
	background-color: unset;
	padding: unset;
	text-align: inherit;
}
button:not(:disabled) {
	cursor: pointer;
}
video {
	width: 100%;
	object-fit: cover;
}
/* remove padding of empty element */
.wf-empty {
	padding: 0;
}
svg {
	max-width: 100%;
}
@media (prefers-color-scheme: light) {
	option { color: black; }
}
img::selection {
	background: transparent;
}
/* Typography */
body {
	text-transform: var(--_text-style---text-transform);
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
}
/* Clear Defaults */
a:not([class]) {
	text-decoration: underline;
}
h1,h2,h3,h4,h5,h6,p,blockquote,label {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	text-wrap: inherit;
	margin-top: 0;
	margin-bottom: 0;
}
select:has(option[value=""]:checked) {
	color: color-mix(in lab, currentcolor 60%, transparent)
}
/* Selection Color */
::selection {
	background-color: var(--_theme---selection--background);
	color: var(--_theme---selection--text);
}
/* Margin Trim */
:is(.u-margin-trim,.u-rich-text) > :not(:not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim) ~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim)),
:is(.u-margin-trim,.u-rich-text) > :not(:not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim) ~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim)).u-display-contents > :first-child {
	margin-top: 0;
}
:is(.u-margin-trim,.u-rich-text) > :not(:has(~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim))),
:is(.u-margin-trim,.u-rich-text) > :not(:has(~ :not(.w-condition-invisible,.u-cover-absolute,.u-ignore-trim))).u-display-contents > :last-child {
	margin-bottom: 0;
}
/* Line Height Trim */
:is(h1,h2,h3,h4,h5,h6,p):not(.u-text-trim-off,:has([class*="u-text-style-"]))::before,
[class*="u-text-style-"]:not(.u-text-trim-off,:has(h1,h2,h3,h4,h5,h6,p))::before {
	content: "";
	display: table;
	margin-bottom: calc(-0.5lh + var(--_text-style---trim-top));
}
:is(h1,h2,h3,h4,h5,h6,p):not(.u-text-trim-off,:has([class*="u-text-style-"]))::after,
[class*="u-text-style-"]:not(.u-text-trim-off,:has(h1,h2,h3,h4,h5,h6,p))::after {
	content: "";
	display: table;
	margin-bottom: calc(-0.5lh + var(--_text-style---trim-bottom));
}
/* Rich Text Links */
.w-richtext a {
	position: relative;
	z-index: 4;
}
/* Line Clamp */
.u-line-clamp-1, .u-line-clamp-2, .u-line-clamp-3, .u-line-clamp-4 {
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.u-line-clamp-2 { -webkit-line-clamp: 2; }
.u-line-clamp-3 { -webkit-line-clamp: 3; }
.u-line-clamp-4 { -webkit-line-clamp: 4; }
/* Child Contain */
.u-child-contain > * {
	width: 100%;
	max-width: inherit !important;
  margin-inline: 0 !important;
	margin-top: 0 !important;
}
/* Hide */
.u-hide-if-empty:empty,
.u-hide-if-empty:not(:has(> :not(.w-condition-invisible))),
.u-hide-if-empty-cms:not(:has(.w-dyn-item)),
.u-embed-js,
.u-embed-css {
	display: none !important;
}
/* Focus State */
a, button, :where([tabindex]), [data-outline] {
	outline-offset: var(--focus--offset-outer);
}
a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible,
label:has(input:focus-visible) [data-outline] {
	outline-color: var(--_theme---text);
	outline-width: var(--focus--width);
	outline-style: solid;
}
/* Disabled */
[data-button]:has(button:disabled) {
	opacity: 0.5;
  pointer-events: none;
}
/* Play Button */
.button_toggle_wrap:has([aria-pressed="true"]) .button_toggle_play {
	opacity: 0;
}
.button_toggle_wrap:has([aria-pressed="true"]) .button_toggle_pause {
	opacity: 1;
}
/* Global / Clickable Component */
.wf-design-mode .clickable_wrap {
	z-index: 0;
}
.clickable_wrap a[href="#"] {
	display: none;
}
.clickable_wrap a[href="#"] ~ button {
	display: block;
}
/* Responsive Above */
@container threshold-large (width >= 62em) {
	.u-order-unset-above { order: unset !important; }
	.u-all-unset-above { all: unset !important; }
	.u-grid-below { display: flex !important; }
}
@container threshold-medium (width >= 48em) {
	.u-order-unset-above { order: unset !important; }
	.u-all-unset-above { all: unset !important; }
	.u-grid-below { display: flex !important; }
}
@container threshold-small (width >= 30em) {
	.u-order-unset-above { order: unset !important; }
	.u-all-unset-above { all: unset !important; }
	.u-grid-below { display: flex !important; }
}
/* Responsive Below */
@container threshold-large (width < 62em) {
	.u-order-unset-below { order: unset !important; }
	.u-all-unset-below { all: unset !important; }
	.u-grid-above { display: flex !important; }
}
@container threshold-medium (width < 48em) {
	.u-order-unset-below { order: unset !important; }
	.u-all-unset-below { all: unset !important; }
	.u-grid-above { display: flex !important; }
}
@container threshold-small (width < 30em) {
	.u-order-unset-below { order: unset !important; }
	.u-all-unset-below { all: unset !important; }
	.u-grid-above { display: flex !important; }
}
/* Form Radio */
.form_main_radio_label:has(input:checked) .form_main_radio_circle_inner {
	opacity: 1;
}
/* Form Checkbox */
.form_main_checkbox_label:has(input:checked) .form_main_checkbox_box {
	background-color: currentColor;
	border-color: currentColor;
}
.form_main_checkbox_label:has(input:checked) .form_main_checkbox_icon {
	opacity: 1;
}

@media (max-width: 1375px) {
  .nav_layout {
    grid-column: 1 / -1;
  }
}

.locale_item:last-child .nav_dd_border {
  display: none;
}

.footer_link_bg {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.footer_link_wrap:hover .footer_link_bg {
  opacity: 1;
}

/*
 * Interaction layer replacing webflow.js. All visual styling comes from the
 * compiled-CSS subset; this file only supplies the open/close mechanics that
 * webflow.js used to drive, and it works WITH the framework rules:
 *   .w-dropdown-list                     -> display:none  (framework)
 *   @media(<=991px) .w-nav-menu          -> display:none  (framework)
 *   @media(<=991px) .nav_dd_menu         -> display:block; position:static
 * So: desktop opens dropdowns on hover/focus; mobile shows every dropdown
 * expanded inside a checkbox-toggled menu, matching the live behaviour.
 */

/* --- desktop: dropdowns on hover / keyboard focus --- */
@media (min-width: 992px) {
  .nav_dd:hover > .nav_dd_menu,
  .nav_dd:focus-within > .nav_dd_menu,
  .locale_dd:hover > .locale_menu,
  .locale_dd:focus-within > .locale_menu {
    display: block;
  }
}

/* Locale menu opens at ANY width — the hover rule above is desktop-only, so
   on touch there was previously no way to open it. */
.locale_state {
  position: absolute;
  pointer-events: none;
}

/*
 * The OPEN state's geometry. webflow.js adds .w--open when the dropdown opens
 * and the sheet positions the panel off that class:
 *   .locale_menu.w--open            { inset: 2.3rem auto auto 0% }
 *   <=991px .locale_menu.w--open    { padding-top: .5rem; position: absolute }
 * Nothing adds that class here, so the panel opened unpositioned — it hung
 * directly under the toggle, narrow and misaligned. These rules reproduce it
 * for both triggers (hover on desktop, checkbox on touch).
 */
.locale_dd:hover > .locale_menu,
.locale_dd:focus-within > .locale_menu,
#locale-open:checked ~ .locale_menu {
  display: block;
  inset: 2.3rem auto auto 0%;
}
@media (max-width: 991px) {
  .locale_dd:hover > .locale_menu,
  .locale_dd:focus-within > .locale_menu,
  #locale-open:checked ~ .locale_menu {
    padding-top: 0.5rem;
    position: absolute;
  }
}

/* The nav dropdown toggles are <button>s (keyboard focus is what opens them):
   strip the UA button look so the sheet's own styling shows through. */
.nav_dd_toggle {
  background: none;
  border: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
}

/* The locale toggle is a <label>, so it needs no button reset — and must not
   get one: `background: none` was overriding the sheet's own
   .locale_toggle { background-color: var(--swatch--light-200) }, which is the
   pill the toggle sits in. */
.nav_dd_toggle,
.locale_toggle {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

/* ---------------------------------------------------------------
   App modal (CSS-only dialog). Closed unless #app-modal-open is checked.
   --------------------------------------------------------------- */
.modal_state {
  position: absolute;
  pointer-events: none;
}
/* id + class beats any single-class rule in the vendored sheet */
#app-modal-open:not(:checked) ~ .modal_wrap {
  display: none;
}
#app-modal-open:checked ~ .modal_wrap {
  display: flex;
}
.modal_backdrop {
  cursor: pointer;
}
/* Lock the page while the dialog is open — otherwise the blurred content
   scrolls underneath the fixed backdrop. */
body:has(#app-modal-open:checked) {
  overflow: hidden;
}
.modal_contain {
  position: relative;
}
.modal_close {
  position: absolute;
  inset-block-start: 0.75rem;
  inset-inline-end: 1rem;
  cursor: pointer;
  font-size: 1.75rem;
  line-height: 1;
  color: var(--swatch--brand-text);
  -webkit-user-select: none;
  user-select: none;
}

/*
 * Live swaps these with a touch-detection script; the media query is the
 * same decision without JS: coarse pointer (phone/tablet) -> store buttons,
 * fine pointer (desktop) -> scan the QR.
 */
@media (pointer: coarse) {
  .modal_qr,
  .modal_paragraph {
    display: none;
  }
}
@media (pointer: fine) {
  .modal_buttons_group {
    display: none;
  }
}

/* ---------------------------------------------------------------
   Footer groups: collapsible on mobile (live shows a chevron and
   collapses each group under .footer_dd_toggle), always open on desktop.
   --------------------------------------------------------------- */
.footer_dd_state {
  position: absolute;
  pointer-events: none;
}
.footer_dd_toggle {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.footer_dd_icon {
  transition: transform 200ms ease;
}

/*
 * NO desktop height override here. A previous version set
 * .footer_dd_nav { height: 0 } at >=992px, on the belief that live's
 * webflow.js leaves an inline height:0 at every width. Measured against live
 * at 1440px, it does not: live's .footer_dd_nav is 75px tall and .footer_top
 * is 260px, where ours had collapsed to 0 and 82px. The collapse pulled the
 * wordmark video band up over the link columns. The original reading came
 * from a browser pane reporting a bogus viewport.
 *
 * (That removal once left its closing brace behind. The orphan `}` made CSS
 * error recovery swallow the block after it, which silently dropped 74% of
 * this file — footer accordions, the mobile menu, the modal, blog filters and
 * the copy-page menu — with no build error and no failing test. Hence the
 * brace-balance check in test/css-integrity.test.ts.)
 */

/* 991px = the live site's own footer-mobile breakpoint.
   Animated max-height rather than a display toggle: live animates the panel's
   height (the sheet already gives it overflow:hidden here), so a display swap
   snapped the footer to its new size and the cover background visibly jumped
   with it. overflow:hidden also clips .footer_group_list's own padding, which
   is why a 0fr grid row could not do this job. */
@media (max-width: 991px) {
  .footer_dd_nav {
    max-height: 30rem;
    transition: max-height 300ms ease;
  }
  .footer_dd_state:not(:checked) ~ .footer_dd_nav {
    max-height: 0;
  }
  .footer_dd_state:checked ~ .footer_dd_toggle .footer_dd_icon {
    transform: rotate(180deg);
  }
}

/* --- mobile menu: checkbox-driven --- */
.nav_menu_state {
  position: absolute;
  pointer-events: none;
}

/* The hamburger is a <label>; stop taps selecting text or flashing a
   highlight — the live site sets exactly this on .w-nav-button. */
.nav_button,
.nav_logo,
.nav_buttons {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

@media (max-width: 991px) {
  /* Framework hides .w-nav-menu at this breakpoint; the checkbox reveals it,
     which is what webflow.js did by writing an inline display style. */
  .nav_wrap .nav_menu_state:checked ~ .w-nav-menu {
    display: block;
    position: absolute;
    inset-inline: 0;
    inset-block-start: 100%;
  }

  /* Hamburger -> X */
  .nav_button_bar {
    transition: transform 200ms ease;
  }
  .nav_menu_state:checked ~ .nav_buttons .nav_button_bar._1 {
    transform: translateY(0.28rem) rotate(45deg);
  }
  .nav_menu_state:checked ~ .nav_buttons .nav_button_bar._2 {
    transform: translateY(-0.28rem) rotate(-45deg);
  }

  /* Dropdown panels are static/expanded on mobile (framework rule); the
     pointer arrow is a desktop-only affordance. */
  .nav_menu .nav_dd_menu_pointer {
    display: none;
  }
  /*
   * DELIBERATE DEVIATION FROM LIVE, approved: live sets padding:0 on the
   * mobile dropdown panel, so the link text sits flush against the rounded
   * edge of its own background and reads as broken. Live's DESKTOP panel uses
   * .75rem 1rem, so this applies the site's own spacing to the mobile one.
   * Everything else about the panel (1px border, radius, background) is left
   * to the sheet so it still matches live.
   */
  .nav_menu .nav_dd_menu_list {
    padding-inline: 1rem;
  }
}

/* ---------------------------------------------------------------
   Plans: Monthly / Annual switch (webflow.js tabs -> radio + CSS).
   Prices carry data-period; the checked radio decides which shows.
   --------------------------------------------------------------- */
.plan_period_state {
  position: absolute;
  pointer-events: none;
}
.plans_tab_link {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
#plan-annual:checked ~ .plans_tab_menu label[for="plan-annual"],
#plan-monthly:checked ~ .plans_tab_menu label[for="plan-monthly"] {
  background-color: var(--swatch--light-200);
}
/* Only one price per card is visible at a time — without this every
   price rendered at once and the cards overlapped. */
#plan-annual:checked ~ .plans_tab_content [data-period="monthly"],
#plan-monthly:checked ~ .plans_tab_content [data-period="annual"] {
  display: none;
}

/* ---------------------------------------------------------------
   Help: FAQ accordions (webflow.js dropdowns -> checkbox + CSS).
   Answers stay in the DOM and are crawlable; only display toggles.
   --------------------------------------------------------------- */
.dd_state {
  position: absolute;
  pointer-events: none;
}
.dd_toggle {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.dd_state ~ .dd_list {
  display: none;
}
.dd_state:checked ~ .dd_list {
  display: block;
  position: static;
}
.dd_state:checked ~ .dd_toggle .dd_icon {
  transform: rotate(180deg);
}
.dd_icon {
  transition: transform 200ms ease;
}

/* Search filtering sets this on non-matching items (HelpSearch). */
.help_cms_item[hidden] {
  display: none;
}

/* ---------------------------------------------------------------
   Skip rendering work for off-screen list items.
   /help ships 100 FAQ entries (~1,180 elements) and /plans 6 more; laying out
   and painting all of them before first paint is work the visitor cannot see.
   content-visibility lets the browser skip everything below the fold until it
   is scrolled near.

   contain-intrinsic-size is what makes this safe: it gives each skipped item a
   placeholder height, so the scrollbar and page height stay correct and this
   cannot introduce layout shift. `auto` means the real size is remembered once
   measured. The answers stay in the DOM and remain findable and crawlable —
   content-visibility affects rendering, not the document.
   --------------------------------------------------------------- */
.help_cms_item,
.faqs_cms_item {
  content-visibility: auto;
  contain-intrinsic-size: auto 5rem;
}

/* ---------------------------------------------------------------
   "Coming soon" badge inside a feature card.
   The sheet styles .tag_coming-soon as display:flex, which is fine where
   live uses it — inline inside a flex ROW (a footer link, next to the label).
   Dropped into a feature card it is a block-level flex container, so it
   stretched the full width and read as a rule/strip rather than a pill.
   --------------------------------------------------------------- */
.fv_card_content .tag_coming-soon {
  width: fit-content;
  margin-block-start: 0.5rem;
}

/* ---------------------------------------------------------------
   "Copy page" menu (CopyPageMenu.tsx), the same affordance docs offers.
   Built from the site's own tokens rather than new colours, so it reads as
   part of the page: light-200 surface, the standard radius, small text.
   --------------------------------------------------------------- */
.page_title_row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
/* On an article the title comes from the ported markup, so the menu floats
   alone above it, right-aligned.

   The top offset is not decoration: the nav is position:fixed, so without it
   the menu renders underneath the nav at the top of the page. --nav--height
   is the site's own token for that, so this tracks the nav rather than a
   magic number. */
.page_title_row.is-floating {
  justify-content: flex-end;
  padding-block-start: calc(var(--nav--height, 4rem) + var(--_spacing---space--4, 1rem));
  margin-block-end: -2.5rem;
  position: relative;
  z-index: 2;
}

.copy_page {
  position: relative;
  flex: none;
}

.copy_page_bar {
  display: flex;
  align-items: stretch;
  border: 1px solid var(--_theme---border, #e4ecee);
  border-radius: var(--radius--small);
  background-color: var(--_theme---background, #fff);
  overflow: hidden;
}

.copy_page_main,
.copy_page_toggle {
  font: inherit;
  font-size: 0.88rem;
  font-weight: 500;
  color: inherit;
  background: none;
  border: 0;
  cursor: pointer;
  padding: 0.5rem 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.copy_page_toggle {
  border-inline-start: 1px solid var(--_theme---border, #e4ecee);
  padding-inline: 0.6rem;
}
.copy_page_main:hover,
.copy_page_toggle:hover {
  background-color: var(--swatch--light-200, #e4ecee);
}

.copy_page_menu {
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: calc(100% + 0.5rem);
  z-index: 20;
  min-width: 17rem;
  padding: 0.375rem;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--_theme---border, #e4ecee);
  border-radius: var(--radius--main);
  background-color: var(--_theme---background, #fff);
  box-shadow: 0 12px 32px rgb(16 16 16 / 12%);
}

.copy_page_item {
  font: inherit;
  text-align: start;
  color: inherit;
  text-decoration: none;
  background: none;
  border: 0;
  cursor: pointer;
  padding: 0.5rem 0.625rem;
  border-radius: var(--radius--tiny);
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.copy_page_item:hover {
  background-color: var(--swatch--light-200, #e4ecee);
}
.copy_page_item_title {
  font-size: 0.9rem;
  font-weight: 600;
}
.copy_page_item_hint {
  font-size: 0.78rem;
  opacity: 0.7;
}

/*
 * On a narrow screen the panel is anchored to the button's right edge, so its
 * 17rem width ran off the left of the viewport (the button sits near the left
 * on both templates). Anchor it to the button's LEFT edge there and clamp the
 * width to what is actually available.
 */
@media (max-width: 767px) {
  .copy_page_menu {
    inset-inline-start: 0;
    inset-inline-end: auto;
    min-width: 0;
    width: max-content;
    max-width: calc(100vw - 2rem);
  }
}

/* ---------------------------------------------------------------
   FAQ answer + help area hero.

   The nav is position:fixed and occupies the first ~82px of the viewport, but
   this hero starts at the top of the page with only its own 60-80px padding,
   so the breadcrumb rendered UNDERNEATH the nav. Live has the same problem;
   this is a fix rather than a parity match (approved).

   --section-space--page-top is the site's own token for "first section on a
   page, below the nav", which is what the marketing pages use. Reusing it
   keeps this consistent with them instead of inventing a number.
   --------------------------------------------------------------- */
.hero-stack {
  padding-block-start: var(--_spacing---section-space--page-top);
}

/* Vertical rhythm inside the hero: breadcrumb, title row, answer. The stack
   owns the spacing through one gap so the parts cannot drift apart. */
.hero-wrapper-two.is-faq-detail {
  grid-row-gap: 1.5rem;
  row-gap: 1.5rem;
}
.hero-wrapper-two.is-faq-detail .faq-breadcrumb {
  margin-block-end: 0;
}

/* Article header: category tag and the "Copy page" menu on one line.
   ArticleCopyMenu creates this wrapper at runtime and moves the tag into it;
   .article-hero_header is a column flex, so without this the two stack. */
.article_meta_row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

/* ---------------------------------------------------------------
   Blog category filters.

   Live drives these with Finsweet, which this rebuild does not ship, so the
   radios were inert and "All posts" was a dead href="#". They are wired up in
   CSS instead (scripts/fetch-blog.mjs tags the cards and emits the :has()
   rules); these are the bits that belong with the rest of the chrome.
   --------------------------------------------------------------- */

/*
 * DELIBERATE DEVIATION, approved: live sets no wrap and no overflow on this
 * row, so at narrow widths the last categories sit off-screen with no way to
 * reach them. It scrolls horizontally instead of wrapping, which keeps the
 * filters one line deep the way the design intends.
 *
 * The scroller is .blog-filters_wrap, not the CMS list inside it: "All posts"
 * is a sibling of that list, so scrolling the list alone would leave it
 * stranded while the categories moved under it.
 */
.blog-filters_wrap {
  flex-wrap: nowrap;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  /* A flex item will not shrink below its content without this, and an item
     that cannot shrink cannot scroll. */
  min-width: 0;
  /* The pills are the affordance; a scrollbar under them is noise. */
  scrollbar-width: none;
}
.blog-filters_wrap::-webkit-scrollbar {
  display: none;
}
.blog-filters_cms_wrap,
.blog-filters_cms_list {
  min-width: 0;
  flex-wrap: nowrap;
}
/* Pills keep their size and stay on one line while the row scrolls. */
.blog-filters_wrap .filter_btn {
  flex: 0 0 auto;
  white-space: nowrap;
}

/* The selected pill. Live's .is-active is applied by Finsweet; :has() reads
   the checked radio instead. The radio precedes the dot in the markup, so a
   sibling combinator cannot reach it. */
.filter_btn:has(input:checked) .filter_radio,
.filter_btn:has(input:checked) .filter_radio.is-active {
  background-color: var(--swatch--light-200);
}

/* ---------------------------------------------------------------
   Lottie host (the calculator-CTA graph).
   It is an empty div until the player mounts, so it has no box of its own —
   and a zero-area element never intersects, so the IntersectionObserver that
   loads the player never fired and the animation never appeared. Live gets
   away with it because webflow.js mounts eagerly rather than on approach.
   The parent .calc_lottie already carries the aspect ratio; fill it.
   --------------------------------------------------------------- */
.graph_lottie {
  width: 100%;
  height: 100%;
}

/*
 * Dropdown hover pill. .nav_dd_hover is a bottom-anchored div the compiled
 * stylesheet leaves at height:0 — live grows it to 100% from an IX2
 * interaction, and IX2's data-w-id hooks are stripped by the extractor. So
 * NO dropdown link had a hover state: the nav menus and the locale list
 * alike. One rule restores all four usages, still with zero JS.
 */
.nav_dd_hover {
  transition: height 0.3s var(--ease-expo-out);
}
:is(a, button):hover > .nav_dd_hover,
:is(a, button):focus-visible > .nav_dd_hover,
:is(a, button):hover .nav_dd_link-text > .nav_dd_hover,
:is(a, button):focus-visible .nav_dd_link-text > .nav_dd_hover {
  height: 100%;
}

/*
 * Effect layer — replaces the live site's GSAP/ScrollTrigger timelines with
 * pure CSS. Zero runtime JS (spec §6).
 *
 * THE INVARIANT: content is visible by default; animation only animates
 * already-visible content. The Webflow stylesheet ships GSAP's initial
 * states baked in (.returns_* items are opacity:0, the hero is
 * visibility:hidden) — without the scripts that is a blank 300vh section.
 * Every rule below therefore first RESTORES visibility, then layers motion
 * on top, so a browser without scroll-driven animations shows a readable,
 * complete page rather than an empty one.
 *
 * Timings mirror the live timelines exactly (vendor/live-home.html):
 *   hero: delay .5s; words opacity 0→1 + scale .9→1, .5s, stagger .1;
 *         then each strike line width 0→100% (.5s); then paragraph (.5s);
 *         then buttons (.5s, stagger .1). ease power2.out.
 *   reveals: scale .75→1 + opacity, 1s, expo.out, on entering viewport.
 */

/* power2.out and expo.out as their cubic-bezier equivalents */
:root {
  --ease-power2-out: cubic-bezier(0.215, 0.61, 0.355, 1);
  --ease-expo-out: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ---------------------------------------------------------------
   1. Restore visibility (undo the baked-in GSAP initial states)
   --------------------------------------------------------------- */
[data-hero-home="animation"],
[data-h-heading-load="true"],
[data-h-paragraph-load="true"],
[data-h-button-load="true"] {
  visibility: visible;
}

.returns_content_heading.default,
.returns_content_sub.default,
.returns_videos_item.default {
  opacity: 1;
}

/* The second/third states are absolutely positioned on top of the first;
   with no scroll timeline they would stack. Hide them from layout AND from
   assistive tech only when the browser can actually animate them (below). */

/* ---------------------------------------------------------------
   2. Hero load timeline
   --------------------------------------------------------------- */
@media (prefers-reduced-motion: no-preference) {
  .hero_main_h1_word {
    animation: wf-rise 0.5s var(--ease-power2-out) both;
    animation-delay: calc(0.05s + var(--i, 0) * 0.06s);
    transform-origin: 50% 100%;
  }

  /* strike-through bars draw after the words land */
  .hero_main_h1_line {
    width: 0;
    animation: wf-draw 0.5s var(--ease-power2-out) both;
    animation-delay: calc(0.35s + var(--i, 0) * 0.28s);
  }

  .hero_main_bottom .c-paragraph {
    animation: wf-rise 0.5s var(--ease-power2-out) both;
    animation-delay: 0.5s;
  }

  .hero_main_header .button_main_wrap {
    animation: wf-rise 0.5s var(--ease-power2-out) both;
    animation-delay: 0.65s;
  }
}

@keyframes wf-rise {
  from {
    opacity: 0;
    scale: 0.9;
  }
  to {
    opacity: 1;
    scale: 1;
  }
}

@keyframes wf-draw {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}

/* ---------------------------------------------------------------
   3. Scroll-entry reveals (ScrollTrigger "bottom bottom" equivalent)
   --------------------------------------------------------------- */
/*
 * Selectors target the shared COMPONENTS inside <main>, not per-page section
 * wrappers.
 *
 * The first version listed the home page's wrappers (.intro_layout,
 * .features_layout, .fs_list .fh_card …). Those class names are the home
 * page's; every ported page composes the same components inside different
 * wrappers, so almost nothing matched. Measured before this change:
 *
 *     page           animating   reveal candidates
 *     /                     46                  24
 *     /why-moneda            1                  36   <- reported as "static"
 *     /plans                 0                  12
 *     /accounts             19                  41
 *
 * Component-based selectors cover a new page automatically, which the wrapper
 * list could never do.
 *
 * Scoped to the <main> ELEMENT, not a class. The ported pages render
 * <main class="page_main"> but the component-composed home page renders a bare
 * <main>, so scoping to .page_main silently excluded the home page entirely —
 * it went from 46 animating elements to 0. Nav, footer and the app modal sit
 * outside <main>, so they stay untouched either way.
 *
 * The hero is excluded because it has its own load timeline above; animating
 * it twice makes it flash.
 */
@media (prefers-reduced-motion: no-preference) {
  @supports (animation-timeline: view()) {
    main
      :is(
        .c-heading,
        .fh_card,
        .fv_card,
        .reviews_card,
        .perks_card,
        .plans_card,
        .invite_layout,
        .calc_content,
        .main-cta_header_wrap,
        /* Kept from the original list: the closing CTA's paragraph reveals
           with its heading. Dropping it left /neo-finance with one animating
           element, which is how the omission was caught. */
        .main-cta_layout .c-paragraph
      ):not(
        .hero_main_layout *,
        .hero_main_header *,
        .nav_dd_menu *,
        .plans_table_layout *
      ) {
      animation: wf-reveal 1s var(--ease-expo-out) both;
      animation-timeline: view();
      animation-range: entry 0% cover 25%;
      /* MUST be auto, same as the Returns block below: with a view() timeline
         an explicit duration makes the animation finish instantly at the range
         start and hold its end state, so every reveal rendered already-done
         and no motion was visible at all. */
      animation-duration: auto;
    }
  }
}

@keyframes wf-reveal {
  from {
    opacity: 0;
    scale: 0.75;
  }
  to {
    opacity: 1;
    scale: 1;
  }
}

/* ---------------------------------------------------------------
   3b. Reviews carousel (mobile). The live site drives .swiper with
   Swiper JS; native CSS scroll-snap gives the same swipe/drag behaviour
   with zero JS, real momentum, keyboard access and no library.
   --------------------------------------------------------------- */
.swiper.is-slider-reviews {
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scroll-padding-inline-start: 0;
  /* room for the card shadow + no visible scrollbar */
  padding-block-end: var(--_spacing---space--2);
  scrollbar-width: none;
}
.swiper.is-slider-reviews::-webkit-scrollbar {
  display: none;
}
.swiper-slide.is-slider-reviews {
  scroll-snap-align: start;
  scroll-snap-stop: always;
}
@media (prefers-reduced-motion: no-preference) {
  .swiper.is-slider-reviews {
    scroll-behavior: smooth;
  }
}

/* ---------------------------------------------------------------
   4. Returns scrollytelling — three states crossfading across the
   300vh scroll track (.returns_height) while .returns_contain sticks.
   --------------------------------------------------------------- */
.returns_height {
  position: relative;
}

/* .u-container included: Webflow's .returns_contain.u-container sets
   position:relative and would otherwise win on specificity. */
.returns_contain.u-container {
  position: sticky;
  top: 0;
}

@supports (animation-timeline: view()) {
  .returns_height {
    view-timeline-name: --returns;
    view-timeline-axis: block;
  }

  .returns_content_heading,
  .returns_content_sub,
  .returns_videos_item {
    animation-timeline: --returns;
    /* the window during which the 300vh track fully covers the viewport */
    animation-range: contain 0% contain 100%;
    /* MUST be auto: any explicit duration makes the animation finish
       instantly at the range start and hold its end state for the whole
       scroll (symptom: the third state showing the entire way down). */
    animation-duration: auto;
    animation-timing-function: linear;
    animation-fill-mode: both;
  }

  .returns_content_heading.default,
  .returns_content_sub.default,
  .returns_videos_item.default {
    animation-name: wf-state-1;
  }
  .returns_content_heading.second,
  .returns_content_sub.second,
  .returns_videos_item.second {
    animation-name: wf-state-2;
  }
  .returns_content_heading.third,
  .returns_content_sub.third,
  .returns_videos_item.third {
    animation-name: wf-state-3;
  }
}

@keyframes wf-state-1 {
  0%,
  28% {
    opacity: 1;
  }
  34%,
  100% {
    opacity: 0;
  }
}

@keyframes wf-state-2 {
  0%,
  28% {
    opacity: 0;
  }
  34%,
  62% {
    opacity: 1;
  }
  68%,
  100% {
    opacity: 0;
  }
}

@keyframes wf-state-3 {
  0%,
  62% {
    opacity: 0;
  }
  68%,
  100% {
    opacity: 1;
  }
}

/*
 * Fallback: no scroll-driven animation support (or reduced motion) means no
 * crossfade, so the stacked absolute states would overlap illegibly. Show
 * the first state only and let the section read as a single static panel.
 */
@supports not (animation-timeline: view()) {
  .returns_content_heading.second,
  .returns_content_heading.third,
  .returns_content_sub.second,
  .returns_content_sub.third,
  .returns_videos_item.second,
  .returns_videos_item.third {
    display: none;
  }
  .returns_height {
    height: auto;
  }
  .returns_contain.u-container {
    position: static;
    height: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .returns_content_heading.second,
  .returns_content_heading.third,
  .returns_content_sub.second,
  .returns_content_sub.third,
  .returns_videos_item.second,
  .returns_videos_item.third {
    display: none;
  }
  .returns_height {
    height: auto;
  }
  .returns_contain.u-container {
    position: static;
    height: auto;
  }
}

/* ---------------------------------------------------------------
   Legal / anchor nav: the scroll-spy marker.
   Webflow ships .anchor_list_marker { opacity: 0 } and GSAP faded it in on the
   active item, so with no JS the active dot never appears. Same restore-first
   rule as everything else here: show it on the current item via :target and
   the framework's own current-link class.
   --------------------------------------------------------------- */
.anchor_list_link.w--current .anchor_list_marker,
.anchor_list_item:hover .anchor_list_marker {
  opacity: 1;
}

/* ---------------------------------------------------------------
   Contact: email marquee.
   Live ships .contact_marquee { opacity: 0 } and reveals + scrolls it with
   GSAP on hover — so with no JS the addresses are invisible (the same
   defect class as the Returns states). Restore visibility first, then do
   the reveal and the scroll in CSS.
   --------------------------------------------------------------- */
.contact_marquee {
  opacity: 1;
}

@media (prefers-reduced-motion: no-preference) {
  /* Desktop mirrors live: the row reveals on hover/focus of the field. */
  @media (min-width: 768px) {
    .contact_marquee {
      opacity: 0;
      transition: opacity 300ms ease;
    }
    .contact_field:hover .contact_marquee,
    .contact_field:focus-within .contact_marquee {
      opacity: 1;
    }
  }

  .contact_marquee_scroll {
    animation: wf-marquee 18s linear infinite;
  }
  .contact_field:hover .contact_marquee_scroll {
    animation-play-state: running;
  }
}

/* The row holds the address twice, so a -50% shift loops seamlessly. */
@keyframes wf-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
