*{
  box-sizing:border-box;
}

html,
html a{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-shadow:1px 1px 1px rgba(0, 0, 0, 0.004);
}

html{
  min-height:100%;
}

body{
  position:relative;
  display:flex;
  flex-direction:column;
  flex-wrap:nowrap;
  align-items:stretch;
  align-content:stretch;
  justify-content:space-between;
  min-height:100%;
  min-width:320px;
  background-position:center;
  font-family:sans-serif;
  font-size:16px;
  line-height:1.875;
  -webkit-tap-highlight-color:rgba(0, 0, 0, 0);
  margin:0 auto;
}

img{
  max-width:100%;
  max-height:100%;
}

section{
  display:inline-block;
  width:100%;
  height:auto;
  padding:0;
}

audio, canvas, iframe, img, svg, video{
  vertical-align:middle;
}
figure{
  margin:0;
}
fieldset{
  border:0;
  margin:0;
  padding:0;
}
textarea{
  resize:vertical;
}
a{
  color:inherit;
  text-decoration:none;
}

a:hover{
  text-decoration:none;
}
li, dt, dd, p, h1, h2, h3, h4, h5, h6, .inline{
  font-size:1em;
  font-style:normal;
  font-weight:normal;
  line-height:inherit;
  margin:0 0 1rem;
  padding:0;
  list-style:none;
  vertical-align:baseline;
  color:inherit;
  background-color:transparent;
  text-decoration:none;
}
li:last-child, dt:last-child, dd:last-child, p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child, .inline:last-child{
  margin-bottom:0;
}

ul, ol{
  margin:0;
  padding:0;
  list-style:none;
  vertical-align:baseline;
  background-color:transparent;
}
.browserupgrade{
  margin:0.2em 0;
  background:#ccc;
  color:#000;
  padding:0.2em 0;
}
html{
  font-family:sans-serif;
  -ms-text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
}
body{
  margin:0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary{
  display:block;
}
audio, canvas, progress, video{
  display:inline-block;
  vertical-align:baseline;
}
audio:not([controls]){
  display:none;
  height:0;
}
[hidden],
template{
  display:none;
}
a{
  background-color:transparent;
}
a:active,
a:hover{
  outline:0;
}
abbr[title]{
  border-bottom:1px dotted;
}
b, strong{
  font-weight:bold;
}
dfn{
  font-style:italic;
}
h1{
  font-size:2em;
  margin:0.67em 0;
}
mark{
  background:#ff0;
  color:#000;
}
small{
  font-size:80%;
}
sub, sup{
  font-size:75%;
  line-height:0;
  position:relative;
  vertical-align:baseline;
}

sup{
  top:-0.5em;
}

sub{
  bottom:-0.25em;
}
img{
  border:0;
}
svg:not(:root){
  overflow:hidden;
}
figure{
  margin:1em 40px;
}
hr{
  box-sizing:content-box;
  height:0;
}
pre{
  overflow:auto;
}
code, kbd, pre, samp{
  font-family:monospace, 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],
input[type=submit]{
  -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;
}
input[type=checkbox],
input[type=radio]{
  box-sizing:border-box;
  padding:0;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{
  height:auto;
}
input[type=search]{
  -webkit-appearance:textfield;
  box-sizing:content-box;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration{
  -webkit-appearance:none;
}
fieldset{
  border:1px solid #c0c0c0;
  margin:0 2px;
  padding:0.35em 0.625em 0.75em;
}
legend{
  border:0;
  padding:0;
}
textarea{
  overflow:auto;
}
optgroup{
  font-weight:bold;
}
table{
  border-collapse:collapse;
  border-spacing:0;
}

td, th{
  padding:0;
}
.margin-bleed-left{
  margin-left:calc(56.33335% * -1);
  width:calc(56.33335% + 100%);
}
@media screen and (min-width: 1500px){
  .margin-bleed-left{
    margin-left:calc(calc((100svw - 82.5rem) / 2) * -1);
    width:calc(calc((100svw - 82.5rem) / 2) + 100%);
  }
}
@media screen and (max-width: 767px){
  .margin-bleed-left{
    margin-left:-1rem;
    width:calc(100% + 2rem);
  }
}
.margin-bleed-right{
  margin-right:calc(56.33335% * -1);
  width:calc(56.33335% + 100%);
}
@media screen and (min-width: 1500px){
  .margin-bleed-right{
    margin-right:calc(calc((100svw - 82.5rem) / 2) * -1);
    width:calc(calc((100svw - 82.5rem) / 2) + 100%);
  }
}
@media screen and (max-width: 767px){
  .margin-bleed-right{
    margin-left:-1rem;
    width:calc(100% + 2rem);
  }
}

:root{
  font-size:16px;
}
@media screen and (min-width: 1650px){
  :root{
    font-size:18px;
  }
}

h1, h2, h3, h4, h5, h6, p, li, a{
  overflow-wrap:normal;
  word-break:normal;
  margin:0;
}

p, a, li, span{
  font-size:1rem;
  font-family:var(--body-font);
}

.wysiwyg-1, .wysiwyg h1, .headline-1, .headline h1{
  font-family:var(--headline-font);
  font-size:clamp(4rem, 1.3846153846rem + 13.0769230769svw, 12.5rem);
  line-height:0.9;
  letter-spacing:-0.125rem;
  font-weight:800;
}
.wysiwyg-2, .wysiwyg h2, .headline-2, .headline h2{
  font-family:var(--headline-font);
  font-size:clamp(1.875rem, 1.4519230769rem + 2.1153846154svw, 3.25rem);
  line-height:1;
  font-weight:800;
}
.wysiwyg-3, .wysiwyg h3, .headline-3, .headline h3{
  font-family:var(--headline-font);
  font-size:clamp(1.5rem, 1.4615384615rem + 0.1923076923svw, 1.625rem);
  line-height:1.4;
  font-weight:800;
}
.wysiwyg-4, .wysiwyg h4, .headline-4, .headline h4{
  font-family:var(--headline-font);
  font-size:clamp(1.25rem, 1.1730769231rem + 0.3846153846svw, 1.5rem);
  line-height:1.4;
  font-weight:800;
}
.wysiwyg-5, .wysiwyg h5, .headline-5, .headline h5{
  font-family:var(--body-font);
  font-size:1.125rem;
  line-height:2;
  font-weight:800;
  margin-bottom:0.5rem;
}
.wysiwyg-6, .wysiwyg h6, .headline-6, .headline h6{
  font-family:var(--body-font);
  font-size:0.8125rem;
  line-height:1;
  letter-spacing:1px;
  font-weight:600;
}
.wysiwyg p, .headline p{
  margin-bottom:clamp(1.5rem, 3.666vw, 2rem);
}
.wysiwyg p:last-child, .headline p:last-child{
  margin-bottom:0;
}

.wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4{
  margin-bottom:clamp(1.5rem, 3.666vw, 2rem);
}

p, .p{
  font-size:1.125rem;
  line-height:2;
}
p-sm, .p-sm{
  font-size:1rem;
  line-height:1.5;
}
p-xs, .p-xs{
  font-size:0.875rem;
  line-height:1.5;
}

.uppercase{
  text-transform:uppercase;
}

.center{
  text-align:center;
}

.left{
  text-align:left;
}

.right{
  text-align:right;
}

.break{
  word-break:break-word;
}

.bold, .font-800, strong{
  font-weight:800;
}

.font-600{
  font-weight:600;
}

.primary{
  color:var(--primary-color);
}

.secondary{
  color:var(--secondary-color);
}

.tertiary{
  color:var(--tertiary-color);
}
.button{
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
  border:1px solid var(--button-text-color);
  color:var(--button-text-color);
  background-color:var(--button-background-color);
}
.button:hover{
  border:1px solid transparent;
}
.button:hover{
  background-color:var(--button-text-color);
  border:1px solid var(--button-text-color);
  color:var(--button-background-color);
}
.button-ghost{
  border:1px solid var(--button-text-color);
  color:var(--button-text-color);
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
}
.button-ghost:hover{
  background-color:var(--button-background-hover-color);
  color:var(--button-text-hover-color);
  border-color:var(--button-border-hover-color);
}
.button-light{
  border:1px solid #FFF;
  color:#FFF;
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
}
.button-light:hover{
  background-color:#FFF;
  color:var(--dark-color);
  border-color:var(--dark-color);
}
.button-dark{
  border:1px solid #000;
  color:var(--tertiary-color);
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
  background-color:#000;
}
.button-dark:hover{
  background-color:var(--tertiary-color);
  border:1px solid #000;
  color:#000;
}

.bg-black{
  background-color:#000;
}
.bg-black.text-white .button:hover, .bg-black.text-white .button-light:hover{
  color:#000;
}

.bg-white{
  background-color:#FFF;
}
.bg-white.text-white .button:hover, .bg-white.text-white .button-light:hover{
  color:#FFF;
}

.text-black{
  color:#000;
}
.text-black .button-light{
  border:1px solid #FFF;
  color:#FFF;
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
}
.text-black .button-light:hover{
  background-color:#FFF;
  color:#000;
  border-color:#000;
}

.text-white{
  color:#FFF;
}
.text-white .button-light{
  border:1px solid #FFF;
  color:#FFF;
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
}
.text-white .button-light:hover{
  background-color:#FFF;
  color:#FFF;
  border-color:#FFF;
}

.text-red{
  color:#CF0000;
}
.text-red .button-light{
  border:1px solid #FFF;
  color:#FFF;
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
}
.text-red .button-light:hover{
  background-color:#FFF;
  color:#CF0000;
  border-color:#CF0000;
}

.text-green{
  color:#00B527;
}
.text-green .button-light{
  border:1px solid #FFF;
  color:#FFF;
  display:inline-block;
  background-color:transparent;
  padding:0.75rem 1.5rem;
  font-size:1rem;
  font-weight:600;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  border-radius:var(--border-radius);
  cursor:pointer;
  transition:0.27s;
}
.text-green .button-light:hover{
  background-color:#FFF;
  color:#00B527;
  border-color:#00B527;
}

html{
  scroll-behavior:smooth;
  min-height:100dvh;
}
html *::-moz-selection{
  background:#000;
  color:#FFF;
}
html *::selection{
  background:#000;
  color:#FFF;
}

body{
  color:#000;
}

.hide, .hidden{
  display:none;
}

body.stop-transition *{
  transition:none !important;
}

main{
  min-height:calc(100vh - 172px);
}
@media screen and (min-width: 445px){
  main{
    min-height:calc(100vh - 184px);
  }
}
@media screen and (min-width: 960px){
  main{
    min-height:calc(100vh - 118px - 98px);
  }
}
@media screen and (min-width: 1069px){
  main{
    min-height:calc(100vh - 85px - 98px);
  }
}
@media screen and (min-width: 1650px){
  main{
    min-height:calc(100vh - 96px - 98px);
  }
}

main, footer{
  background-color:var(--tertiary-color);
  position:relative;
}
@media screen and (min-width: 960px){
  main, footer{
    width:calc(100% - 16.25rem);
    left:16.25rem;
  }
}

.login-landing{
  background-color:var(--primary-color);
  top:70px;
}
.login-landing + footer{
  background-color:var(--primary-color);
}
@media screen and (min-width: 960px){
  .login-landing{
    top:0;
  }
}

.form-wrapper{
  max-width:53rem;
}
.form-wrapper p{
  max-width:32rem;
}
.form-wrapper .form-password{
  padding:0.75rem 1.5rem;
  width:14rem;
  border:none;
  outline:none;
}
.form-wrapper input{
  border-radius:0;
}

.m-0{
  margin:0;
}

.mb-fluid{
  margin-bottom:clamp(1.5rem, 3.666vw, 2rem);
}

.mb-fluid-lg{
  margin-bottom:clamp(2rem, 4vw, 3rem);
}

.gap-fluid-2{
  gap:clamp(1.5rem, 1.25rem + 0.8333333333svw, 2rem);
}

.gap-1_5{
  gap:1.5rem;
}

.gap-column-1_5{
  gap:0 1.5rem;
}

.gap-1{
  gap:1rem;
}

.gap-2{
  gap:2rem;
}

.gap-3{
  gap:3rem;
}

.gap-4{
  gap:4rem;
}

.gap-5{
  gap:5rem;
}

.gap-fluid-10{
  gap:clamp(2rem, -2rem + 13.3333333333svw, 10rem);
}

.gap-fluid-6{
  gap:clamp(2rem, 0rem + 6.6666666667svw, 6rem);
}

.gap-fluid-5{
  gap:clamp(2rem, 0.5rem + 5svw, 5rem);
}

.mb-8{
  margin-bottom:0.5rem;
}

.mb-16{
  margin-bottom:1rem;
}

.mb-32{
  margin-bottom:2rem;
}

.mb-64{
  margin-bottom:4rem;
}

.h-25{
  height:25dvh;
}

.h-50{
  height:50dvh;
}

.h-75{
  height:75dvh;
}

.h-100{
  height:100dvh;
}

.container{
  display:block;
  max-width:82.5rem;
  min-width:18rem;
  width:87.3333%;
  margin:auto;
}
@media screen and (max-width: 574px){
  .container{
    width:calc(100% - 2rem);
    max-width:100%;
  }
}
@media screen and (min-width: 1650px){
  .container:not(.contain){
    max-width:1920px;
  }
}
@media screen and (min-width: 575px){
  .container:not(.contain).narrow{
    width:65%;
  }
}

.pad{
  padding-top:clamp(4rem, 8vw, 6rem);
  padding-bottom:clamp(4rem, 8vw, 6rem);
}
.pad-top{
  padding-top:clamp(4rem, 8vw, 6rem);
}
.pad-bottom{
  padding-bottom:clamp(4rem, 8vw, 6rem);
}
.pad-small{
  padding-top:clamp(2rem, 4vw, 3rem);
  padding-bottom:clamp(2rem, 4vw, 3rem);
}
.pad-small-top{
  padding-top:clamp(2rem, 4vw, 3rem);
}
.pad-small-bottom{
  padding-bottom:clamp(2rem, 4vw, 3rem);
}

.flex{
  display:flex;
}
.flex-column{
  display:flex;
  flex-direction:column;
}
.flex-center{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
.flex-center-row{
  display:flex;
  justify-content:center;
  align-items:center;
}
.flex-aligned{
  display:flex;
  align-items:center;
}
.flex-btwn{
  display:flex;
  justify-content:space-between;
}
.flex-start{
  display:flex;
  justify-content:flex-start;
}
.flex-end{
  display:flex;
  justify-content:flex-end;
}
.flex-baseline{
  align-items:baseline;
}
.flex-none{
  flex:none;
}
.flex-row-reverse{
  flex-direction:row-reverse;
}
.flex-column-reverse{
  flex-direction:column-reverse;
}
.flex-basis-50{
  flex-basis:calc(50% - 1rem);
}
.flex-wrap{
  flex-wrap:wrap;
}
@media screen and (max-width: 959px){
  .flex-mobile-wrap{
    flex-wrap:wrap;
  }
  .flex-mobile-wrap-reverse{
    flex-wrap:wrap-reverse;
  }
}

.grid{
  display:grid;
  width:100%;
  gap:1rem;
}
@media screen and (min-width: 960px){
  .grid{
    gap:1.5rem;
  }
}
.grid-center{
  display:grid;
  width:100%;
  place-items:center;
}
.grid-2{
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
}
@media screen and (min-width: 575px){
  .grid-2{
    grid-template-columns:1fr 1fr;
  }
}
.grid-2.no-break{
  grid-template-columns:1fr 1fr;
}
.grid-3{
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
}
@media screen and (min-width: 960px){
  .grid-3{
    grid-template-columns:1fr 1fr 1fr;
  }
}
.grid-4{
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
}
@media screen and (min-width: 960px){
  .grid-4{
    grid-template-columns:1fr 1fr 1fr 1fr;
  }
}
.grid-5{
  grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));
}
@media screen and (min-width: 960px){
  .grid-5{
    grid-template-columns:1fr 1fr 1fr 1fr 1fr;
  }
}

.video-container{
  overflow:hidden;
  position:relative;
  border-radius:0.75rem;
}
.video-container video{
  width:100%;
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  -o-object-position:center;
     object-position:center;
}

.image-container{
  overflow:hidden;
  position:relative;
}
.image-container img{
  height:auto;
  -o-object-fit:contain;
     object-fit:contain;
  -o-object-position:center;
     object-position:center;
}

.w-100{
  width:100%;
}
.w-50{
  width:50%;
}
.w-33{
  width:33%;
}
.w-25{
  width:25%;
}

.opacity-5{
  opacity:0.5;
}

.scrim{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

.nav-divider{
  margin:0.75rem 0;
  width:100%;
  min-height:1px;
  height:1px;
  background-color:var(--dark-color);
  opacity:0.1;
}

.divider::after{
  content:"";
  display:flex;
  width:100%;
  height:1px;
  background-color:var(--dark-color);
  opacity:0.1;
}

.section:last-child .divider::after{
  margin-top:2rem;
}
@media screen and (min-width: 960px){
  .section:last-child .divider::after{
    content:"";
    display:flex;
    width:100%;
    height:0px;
  }
}

@media screen and (max-width: 959px){
  .sbs{
    flex-direction:column;
  }
}
.wysiwyg{
  display:block;
  width:100%;
  max-width:62.5rem;
  text-align:left;
}
@media screen and (min-width: 575px){
  .wysiwyg{
    width:clamp(80%, 70vw, 60%);
  }
}
.wysiwyg img{
  width:100%;
  height:auto;
}
.wysiwyg a{
  font-weight:700;
  position:relative;
  transition:0.27s;
}
.wysiwyg a:hover{
  color:#000;
}
.wysiwyg a::after{
  content:"";
  position:absolute;
  left:0;
  width:100%;
  height:2px;
  background:#000;
  bottom:-4px;
  transform:scale(0, 1);
  transition:transform 0.27s;
  transform-origin:center top;
}
.wysiwyg a:hover::after{
  transform:scale(1, 1);
}
.wysiwyg ul li{
  margin-left:1.5rem;
}
.wysiwyg ul li::before{
  content:"";
  display:inline-block;
  width:10px;
  height:10px;
  margin-right:1rem;
  background-color:#000;
}
.wysiwyg ol{
  list-style:none;
  counter-reset:wysiwyg-counter;
}
.wysiwyg ol li{
  margin-left:1.5rem;
  counter-increment:wysiwyg-counter;
}
.wysiwyg ol li::before{
  content:"0" counter(wysiwyg-counter) ".";
  color:#000;
  margin-right:1rem;
}

.no-scroll{
  overflow:hidden;
}

.page-header{
  min-height:98px;
}

.nav-scrim{
  position:absolute;
  height:100%;
  width:100%;
  background-color:rgba(0, 0, 0, 0.7);
  pointer-events:none;
  opacity:0;
  visibility:collapse;
  transition:0.27s;
  z-index:1;
}
.nav-scrim.open{
  opacity:1;
  visibility:visible;
  pointer-events:all;
}

header{
  width:100%;
  background-color:var(--dark-color);
  padding:24px;
  display:flex;
  align-items:center;
  gap:1.5rem;
  z-index:100;
}
@media screen and (min-width: 960px){
  header{
    height:98px;
  }
}
header .logo{
  border-right:1px solid var(--light-color);
  padding-right:1.5rem;
}
header .logo svg{
  width:auto;
  height:100%;
}
@media screen and (max-width: 959px){
  header{
    position:fixed;
    padding:0.625rem 1rem;
  }
  header .site-title{
    max-width:120px;
    line-height:1;
  }
}
header .nav-handle{
  display:none;
}
@media screen and (max-width: 959px){
  header .nav-handle{
    display:flex;
    align-items:center;
    position:absolute;
    right:1.5rem;
    width:1.5rem;
    height:1rem;
    cursor:pointer;
  }
  header .nav-handle .toggle{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    width:100%;
  }
  header .nav-handle .toggle span{
    width:100%;
    height:0.125rem;
    margin:0.1875rem 0;
    opacity:1;
    background:var(--light-color);
    border-radius:0.125rem;
    transition:margin 0.21s 0.21s, opacity 0.21s 0.21s, transform 0.21s;
  }
  header.open .nav-handle .toggle span{
    transition:margin 0.21s, opacity 0.21s, transform 0.21s 0.21s;
  }
  header.open .nav-handle .toggle span:nth-child(1){
    transform:rotate(45deg);
    margin-top:0;
    margin-bottom:-0.3125rem;
  }
  header.open .nav-handle .toggle span:nth-child(2){
    opacity:0;
    transform:translateX(1.25rem);
  }
  header.open .nav-handle .toggle span:nth-child(3){
    transform:rotate(-45deg);
    margin-top:-0.3125rem;
    width:100%;
  }
}

.nav{
  position:absolute;
  top:98px;
  height:calc(100vh - 98px);
  width:16.25rem;
  z-index:100;
  background-color:var(--light-color);
}
.nav.fixed{
  position:fixed;
  top:0;
  height:100vh;
}
@media screen and (max-width: 959px){
  .nav{
    left:-16.25rem;
    width:14.9rem;
    top:70px;
    height:calc(100vh - 70px);
    transition:0.27s;
  }
  .nav.open{
    left:0;
  }
  .nav.fixed{
    height:calc(100vh - 70px);
    top:70px;
  }
}
.nav .main-menu{
  display:flex;
  flex-direction:column;
  padding:3rem 1.5rem;
  gap:1.5rem;
  height:100%;
  overflow-y:scroll;
}
.nav .main-menu.disabled{
  cursor:not-allowed;
}
.nav .main-menu.disabled a{
  pointer-events:none;
}
.nav .main-menu .menu-wrapper{
  display:flex;
  flex-direction:column;
  gap:0.75rem;
}
.nav .main-menu .menu-section{
  display:flex;
  flex-direction:column;
}
.nav .main-menu .menu-section .nav-link:hover, .nav .main-menu .menu-section .nav-link.active{
  color:var(--secondary-color);
}
.nav .main-menu .menu-section .sub-menu{
  display:flex;
  flex-direction:column;
  margin-left:0.75rem;
  gap:0.75rem;
  max-height:0;
  overflow:hidden;
}
.nav .main-menu .menu-section .sub-menu.active{
  max-height:50rem;
  margin-top:0.75rem;
}

.nav .nav-primary .main-menu{
  gap:2rem;
}
.nav .nav-primary .main-menu .menu-item{
  text-transform:uppercase;
}
@media screen and (max-width: 959px){
  .nav .nav-handle .toggle span{
    background-color:#000;
  }
}

@media screen and (max-width: 1229px){
  footer .legal-footer-content{
    flex-wrap:wrap-reverse;
    justify-content:center;
    gap:0.75rem 3rem;
  }
}
@media screen and (max-width: 959px){
  footer .links{
    width:100%;
    flex-direction:column;
    align-items:center;
    gap:0.75rem;
  }
}
footer a{
  font-size:inherit;
}
@media screen and (max-width: 374px){
  footer .p-xs{
    font-size:0.75rem;
  }
}
footer .footer-column{
  display:flex;
  flex-direction:column;
  min-width:180px;
}
@media screen and (min-width: 960px){
  footer .footer-column{
    padding-top:0;
    padding-bottom:0;
    padding-right:2rem;
  }
  footer .footer-column:last-child{
    padding-right:0;
  }
}
footer .think-flipp{
  padding:2rem 0;
}
footer .socials{
  display:flex;
  gap:2rem;
}

[data-modal]{
  position:fixed;
  padding:2rem 0;
  top:0;
  left:0;
  width:100%;
  height:100%;
  display:none;
  background-color:rgba(81, 81, 81, 0.5);
  visibility:hidden;
  opacity:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
  transition:z-index 150ms 0ms linear, visibility 150ms 0ms linear, opacity 150ms 0ms linear;
}
[data-modal].visible{
  display:flex;
}
[data-modal] > a{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  cursor:default;
  background-color:#000;
  opacity:40%;
}
[data-modal] > a.close{
  background-color:transparent;
  opacity:100%;
}
[data-modal] > [data-close]{
  position:absolute;
  width:100%;
  height:100%;
}
[data-modal] > *:not(a){
  display:inline-block;
  box-shadow:0 0 32px 0 rgba(0, 0, 0, 0.5);
  background-color:#FFF;
  max-width:unset;
  width:calc(100% - 2rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:0;
  position:relative;
  margin:auto;
  display:block;
}
@media screen and (min-width: 1320px){
  [data-modal] > *:not(a){
    width:40%;
  }
}
[data-modal]:target{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  z-index:99999;
  overflow:auto;
}
[data-modal] .content{
  position:relative;
  text-align:center;
  width:100%;
  padding:2rem;
}
[data-modal] .content form{
  margin-top:20px;
}
[data-modal] .content iframe, [data-modal] .content video{
  position:relative;
  z-index:1;
  width:100%;
}
[data-modal] .close{
  display:block;
  position:absolute;
  top:1rem;
  right:1rem;
  z-index:3;
  width:2rem;
  height:2rem;
}
[data-modal] .close::before, [data-modal] .close::after{
  content:"";
  position:absolute;
  width:100%;
  height:2px;
  background-color:#000;
  display:block;
  top:50%;
  left:50%;
}
[data-modal] .close::before{
  transform:translate(-50%, -50%) rotate(45deg);
}
[data-modal] .close::after{
  transform:translate(-50%, -50%) rotate(-45deg);
}
[data-modal]:target .modal-content{
  transform:translateX(0);
}

.fade{
  opacity:0;
}

.waterfall > div{
  opacity:0;
}
.slick-slider{
  position:relative;
  display:block;
  box-sizing:border-box;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-user-select:none;
  user-select:none;
  touch-action:pan-y;
  -webkit-tap-highlight-color:transparent;
}

.slick-list{
  position:relative;
  overflow:hidden;
  display:block;
  margin:0;
  padding:0;
}
.slick-list:focus{
  outline:none;
}
.slick-list.dragging{
  cursor:pointer;
  cursor:hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list{
  transform:translate3d(0, 0, 0);
}

.slick-track{
  position:relative;
  left:0;
  top:0;
  display:block;
  margin-left:auto;
  margin-right:auto;
}
.slick-track:before, .slick-track:after{
  content:"";
  display:table;
}
.slick-track:after{
  clear:both;
}
.slick-loading .slick-track{
  visibility:hidden;
}

.slick-slide{
  float:left;
  height:100%;
  min-height:1px;
  outline:none;
}
[dir=rtl] .slick-slide{
  float:right;
}
.slick-slide.slick-loading img{
  display:none;
}
.slick-slide{
  display:none;
}
.slick-slide.dragging img{
  pointer-events:none;
}
.slick-initialized .slick-slide{
  display:block;
}
.slick-loading .slick-slide{
  visibility:hidden;
}
.slick-vertical .slick-slide{
  display:block;
  height:auto;
  border:1px solid transparent;
}

.slick-arrow.slick-hidden{
  display:none;
}

.slick-slider.flex .slick-track{
  display:flex;
}
.slick-slider.flex .slick-track .slick-slide{
  display:flex;
  height:auto;
}

.slick-dots li{
  position:relative;
  display:inline-block;
  margin:0 10px;
  width:42px;
  height:20px;
  cursor:pointer;
}
.slick-dots li button{
  border:0;
  outline:none;
  background:none;
  text-indent:-99999px;
  background-color:#000;
  width:100%;
  height:1px;
  margin:0;
  padding:0;
  position:absolute;
  bottom:50%;
  left:0;
  transform:translateY(50%);
}
.slick-dots li.slick-active button{
  background-color:#000;
  height:4px;
}

.slider-buttons{
  display:flex;
  justify-content:space-between;
  align-items:center;
  width:200px;
  margin:auto;
  margin-top:32px;
}
.slider-buttons button.slick-prev{
  background-color:transparent;
  font-family:din-2014, serif !important;
  padding:0;
  font-weight:400;
  border:none;
  order:1;
  margin-right:32px;
}
.slider-buttons button.slick-next{
  background-color:transparent;
  font-family:din-2014, serif !important;
  padding:0;
  font-weight:400;
  border:none;
  order:3;
  margin-left:32px;
}
.slider-buttons ul.slick-dots{
  order:2;
  width:100%;
  display:flex;
  justify-content:center;
}
.slider-buttons ul.slick-dots > li{
  width:10px;
  height:10px;
  margin:0;
  margin-right:8px;
}
.slider-buttons ul.slick-dots li:last-child{
  margin-right:0px;
}
.slider-buttons .slick-dots li button{
  background-color:transparent;
  width:10px;
  height:10px;
  border-radius:50%;
}
.slider-buttons .slick-dots li.slick-active button{
  background-color:#000;
  width:10px;
  height:10px;
  border-radius:50%;
}

@media screen and (max-width: 959px){
  .page-header{
    margin-top:70px;
  }
}
.hero{
  position:relative;
}
.hero::after{
  content:"";
  display:flex;
  width:100%;
  height:1px;
  background-color:var(--dark-color);
  opacity:0.05;
}

.text-block .header-large{
  text-align:left;
}
@media screen and (min-width: 960px){
  .text-block .header-large{
    margin:auto;
    text-align:center;
    width:83.333333%;
  }
}

.color-grid{
  display:grid;
  width:100%;
  grid-template-columns:1fr;
  gap:1.5rem 1rem;
}
.color-grid .color-block{
  display:inline-flex;
  width:100%;
  padding-bottom:6rem;
  margin-bottom:0.5rem;
  border:1px solid rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 575px){
  .color-grid{
    grid-template-columns:1fr 1fr;
  }
  .color-grid .color-block{
    display:inline-flex;
    width:100%;
    padding-bottom:50%;
  }
}
@media screen and (min-width: 960px){
  .color-grid{
    gap:1.5rem;
  }
  .color-grid .color-block{
    margin-bottom:1rem;
  }
}
@media screen and (min-width: 1290px){
  .color-grid{
    grid-template-columns:1fr 1fr 1fr 1fr;
  }
  .color-grid .color-block{
    padding-bottom:100%;
  }
}

.image-wrapper{
  gap:0.5rem;
}
@media screen and (min-width: 960px){
  .image-wrapper{
    gap:1rem;
  }
}
