/* ========== Style Block 1 ========== */
html {
-webkit-text-size-adjust:100%;
  -ms-text-size-adjust:100%;
  font-family:sans-serif
}
section {
display:block
}
video {
vertical-align:baseline;
  display:inline-block
}
a {
background-color:#0000
}
a:active,a:hover {
outline:0
}
strong {
font-weight:bold
}
h1 {
margin:.67em 0
}
img {
border:0
}
* {
box-sizing:border-box
}
html {
height:100%
}
body {
min-height:100%;
  margin:0
}
img {
vertical-align:middle
}
.w-inline-block {
max-width:100%;
  display:inline-block
}
p {
margin-top:0
}
ul {
margin-top:0
}
.w-list-unstyled {
list-style:none
}
.w-embed:before,.w-embed:after {
content:" ";
  grid-area:1/1/2/2;
  display:table
}
.w-embed:after {
clear:both
}
.w-container:before,.w-container:after {
content:" ";
  grid-area:1/1/2/2;
  display:table
}
.w-container:after {
clear:both
}
@media screen and (max-width:991px)  {

.w-container {
max-width:728px
}

}
@media screen and (max-width:767px)  {


/* ========== Custom layout overrides for Work section (Featured Projects) ========== */
/* Force a simple two-column grid and explicit placement, and neutralize sticky inside this grid */
.w-layout-grid.grid---ratio-1x2 {
  display: grid !important;
  position: static !important; /* cancel sticky on grid container */
  grid-template: none !important; /* kill any named-area template from older rules */
  grid-template-columns: 1fr 1.25fr !important;
  grid-auto-rows: auto !important;
  grid-auto-flow: row !important;
  grid-column-gap: 4rem !important;
  grid-row-gap: 6rem !important;
  grid-template-areas: none !important;
}

/* Cancel sticky positioning that breaks alignment in this section */



/* Explicit placement: left images column (rows 2,3,4) and right text column (rows 1- title auto, then 2,3,4) */
/* Left column images */
#w-node-bfb7f171-64f8-31d8-96bc-5cf8a07d9d3c-f6fe6adc { /* image-42 */
  grid-area: unset !important;
  grid-column: 1 !important;
  grid-row: 2 !important;
  justify-self: start;
}

#w-node-_8fe00582-1d6b-c94b-564f-b373b442ffef-f6fe6adc { /* div-block-243 with image-43 */
  grid-area: unset !important;
  grid-column: 1 !important;
  grid-row: 3 !important;
  justify-self: start;
}

#w-node-c66b1519-3f07-6cd1-7aab-715104297781-f6fe6adc { /* image-44 */
  grid-area: unset !important;
  grid-column: 1 !important;
  grid-row: 4 !important;
  justify-self: start;
}


#w-node-b44477ce-9a41-0390-0b71-cfbf88218e56-f6fe6adc { /* Rich 3D Asset Library */
  grid-area: unset !important;
  grid-column: 2 !important;
  grid-row: 3 !important;
  justify-self: start;
  align-self: start;
}

#w-node-_1f4e6c60-05e8-64af-0ee7-912bb40ff6df-f6fe6adc { /* Custom Templates */
  grid-area: unset !important;
  grid-column: 2 !important;
  grid-row: 4 !important;
  justify-self: start;
  align-self: start;
}

@media screen and (max-width: 991px) {
  /* Keep the same two-column logic on tablet; rows will stack naturally with this explicit placement */
  .w-layout-grid.grid---ratio-1x2 {
    grid-column-gap: 2rem !important;
    grid-row-gap: 4rem !important;
  }
}

}
@media screen and (max-width:479px)  {

.w-container {
max-width:none
}

}
@media screen and (max-width:767px)  {


}
@media (min-width:768px)  {


}
.w-nav {
z-index:1000;
  background:#ddd
}
.w-nav:before,.w-nav:after {
content:" ";
  grid-area:1/1/2/2;
  display:table
}
.w-nav:after {
clear:both
}
.w-nav-menu {
float:right
}
@media screen and (max-width:991px)  {

.w-nav[data-collapse="medium"] .w-nav-menu {
display:none
}

}
@media screen and (max-width:767px)  {


}
@media screen and (max-width:479px)  {


}
@media screen and (max-width:479px)  {


}
@keyframes spin  {

0% {
transform:rotate(0)
}
100% {
transform:rotate(360deg)
}

}
:root {
--background-black:#0d0b02;
  --white:#fff;
  --text--off-white:#e7e7e7;
  --theme--primary-color:#7600ff;
  --text--white-subdued:var(--white);
  --light-grey:#9e9e9e;
  --text--pure-black:#000;
  --theme--primary-faded:#e2c37640;
  --grey-line:#525252;
  --faded-black:#242424;
  --card--card-black:#171612;
  --theme--primary-color2\<deleted\|variable-5d1f325e-fa33-fc24-2c58-cfb2e8dec28b\>:#e9a87c;
  --text--grey:#aaa;
  --text--grey-darker:#888
}
.w-layout-blockcontainer {
max-width:940px;
  margin-left:auto;
  margin-right:auto;
  display:block
}
.w-layout-grid {
grid-row-gap:16px;
  grid-column-gap:16px;
  grid-template-rows:auto auto;
  grid-template-columns:1fr 1fr;
  grid-auto-columns:1fr;
  display:grid
}
@media screen and (max-width:991px)  {

.w-layout-blockcontainer {
max-width:728px
}

}
@media screen and (max-width:767px)  {

.w-layout-blockcontainer {
max-width:none
}

}
body {
color:var(--white);
  font-family:Afacad Flux,sans-serif;
  font-size:16px;
  line-height:1.5em
}
h1 {
margin-top:0;
  margin-bottom:0;
  font-size:4rem;
  font-weight:700;
  line-height:1.2em
}
p {
margin-bottom:0
}
a {
color:var(--theme--primary-color);
  text-decoration:none
}
img {
max-width:100%;
  display:inline-block
}
.hero-heading {
z-index:2;
  letter-spacing:.01em;
  will-change:transform;
  flex-direction:row;
  flex:none;
  justify-content:flex-end;
  max-width:100%;
  margin-bottom:-443px;
  margin-right:0;
  padding-top:0;
  font-size:6vw;
  font-weight:500;
  line-height:100%
}
.heading-h2 {
color:var(--white);
  margin-bottom:1.5rem;
  font-size:calc(2vw + 2rem);
  font-style:italic;
  font-weight:500;
  line-height:1em
}
.paragraph-16 {
color:var(--text--white-subdued);
  font-size:1.125rem;
  font-weight:400;
  line-height:1.5em
}
.nav-bar {
background-color:#ddd0;
  flex-flow:column;
  justify-content:center;
  align-items:stretch;
  width:100%;
  height:auto;
  min-height:calc(1vw + 4rem);
  display:flex;
  position:fixed;
  inset:0% 0%auto;
}
.container {
flex-direction:column;
  justify-content:flex-start;
  align-items:flex-start;
  width:94%;
  max-width:100%;
  height:100%;
  margin-left:auto;
  margin-right:auto;
  padding-left:2rem;
  padding-right:2rem;
  position:sticky
}
.container.navigation-container {
flex-flow:column;
  flex:1;
  justify-content:center;
  align-items:center;
  height:100%;
  margin-left:auto;
  margin-right:auto;
  display:flex
}
.container.intro-container {
width:68%;
  max-width:60rem
}
.container.container-hero {
flex-flow:column;
  flex:1;
  justify-content:space-between;
  align-items:center;
  display:flex
}
.body {
background-color:var(--background-black)
}
.nav-links-conatiner {
flex-direction:row;
  flex:1;
  justify-content:center;
  align-items:stretch;
  width:100%;
  height:100%;
  display:flex;
  position:sticky
}
.nav-logo-image {
object-fit:contain;
  object-position:0% 50%;
  width:1000%;
  max-width:500%;
  height:1000%
}
.nav-logo {
flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  width:40px;
  height:40px;
  margin-top:auto;
  margin-bottom:auto;
  display:flex
}
.nav-link {
color:var(--text--white-subdued);
  text-align:center;
  letter-spacing:.05em;
  cursor:pointer;
  justify-content:center;
  align-self:baseline;
  align-items:center;
  height:100%;
  font-size:calc(.25vw + 1rem);
  font-weight:400;
  line-height:1.5em;
  text-decoration:none;
  transition-property:color;
  transition-duration:.3s;
  transition-timing-function:ease;
  display:flex
}
.nav-link:hover {
color:var(--theme--primary-color)
}
.nav-link.nav_link--contact {
border:1px solid var(--theme--primary-color);
  border-radius:3rem;
  align-self:auto;
  height:auto;
  padding:4px 16px;
  transition:border-color .3s,background-color .3s,color .3s
}
.nav-link.nav_link--contact:hover {
background-color:var(--theme--primary-color);
  color:var(--background-black)
}
.nav-sub-container {
flex-wrap:wrap;
  flex:1;
  justify-content:space-between;
  align-items:center;
  width:100%;
  display:flex
}
.section {
flex-direction:column;
  justify-content:center;
  align-items:center;
  width:100%;
  padding-top:10rem;
  padding-bottom:10rem;
  position:sticky
}
.section.section-hero {
justify-content:space-between;
  align-items:center;
  min-height:100svh;
  padding-top:8rem;
  padding-bottom:2rem;
  display:flex;
  overflow:hidden
}
.section.intro {
min-height:80svh;
  display:flex
}
.section.section-logos {
padding-top:4rem;
  padding-bottom:0;
  overflow:hidden
}
.label-heading {
background-color:var(--theme--primary-color);
  color:var(--background-black);
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:.5rem;
  padding:1px 6px;
  font-size:calc(.5vw + .75rem);
  font-weight:500;
  line-height:1.2em
}
.hero-contact-link {
color:var(--theme--primary-color);
  word-break:break-all;
  font-size:calc(.9vw + .5rem);
  font-weight:400;
  line-height:1.4em;
  transition-property:color;
  transition-duration:.3s;
  transition-timing-function:ease
}
.hero-contact-link:hover {
color:var(--text--off-white)
}

.title-wrapper-sticky {
flex-flow:column;
  justify-content:flex-start;
  align-items:flex-start;
  width:100%;
  max-width:36rem;
  display:flex;
  position:sticky;
  top:8.5rem;
}
.nav-wrapper {
flex:1;
  justify-content:center;
  align-items:center;
  width:100%;
  height:100%;
  display:flex
}
.hero-description {
color:var(--text--off-white);
  text-align:left;
  flex:0 5 auto;
  margin-top:0;
  margin-left:0;
  margin-right:0;
  font-size:3rem;
  font-weight:400;
  line-height:1.3em;
  position:sticky;
  top:-90px;
  bottom:15px;
  left:-28px
}
.hero-text-wrapper {
grid-column-gap:1rem;
  grid-row-gap:1rem;
  aspect-ratio:auto;
  flex-direction:column;
  flex:1;
  justify-content:space-between;
  align-self:flex-start;
  align-items:center;
  width:25%;
  height:100%;
  display:flex;
  position:sticky
}
.hero-top-wrapper {
box-sizing:border-box;
  flex-flow:wrap;
  flex:1;
  justify-content:space-between;
  align-items:center;
  width:500px;
  margin-left:0;
  padding-left:0;
  display:flex;
  position:static
}
.hero-background-wrapper {
justify-content:center;
  align-items:center;
  width:100%;
  height:100%;
  display:flex;
  position:absolute;
  inset:0%
}
.hero-background {
object-fit:cover;
  object-position:50% 50%;
  width:100%;
  height:100%
}
.nav-links-wrapper {
grid-column-gap:3vw;
  grid-row-gap:3vw;
  flex:1;
  justify-content:center;
  align-items:center;
  height:100%;
  padding-left:4.4rem;
  display:flex
}
.hero-background-fade-overlay {
background-image:linear-gradient(180deg,#0000,#02020200 92%,var(--background-black));
  width:100%;
  height:100%;
  position:absolute
}
.hero-contact-info-wrapper {
justify-content:space-between;
  width:100%;
  margin-top:2rem;
  display:flex
}
.label {
justify-content:flex-start;
  align-items:flex-start;
  width:25%;
  margin-bottom:-2.8rem;
  margin-left:-25%;
  display:flex;
  position:sticky
}
.intro-text-white {
color:#f5f5f5;
  font-size:2.75em;
  font-weight:400;
  line-height:1.3em
}
.scrolling-logo-outer-wrapper {
justify-content:flex-start;
  align-items:center;
  width:100%;
  display:flex;
  position:sticky;
  overflow:hidden
}
.container-4 {
max-width:1268px;
  padding-left:24px;
  padding-right:24px
}
.footer-nav {
margin-bottom:0;
  margin-right:20px;
  padding-left:0
}
.footer-nav-item {
margin-bottom:20px;
  line-height:1.111em
}
.footer-menu-wrapper.pages {
flex:1;
  width:auto;
  max-width:none;
  margin-right:0
}
.div-block-165 {
margin-bottom:16px
}
.footer-menu-content {
justify-content:flex-start;
  display:flex
}
.paragraph-9 {
color:#fff9;
  margin-bottom:0;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;
  font-size:12px;
  font-weight:400
}
.div-block-240 {
grid-column-gap:12px;
  grid-row-gap:12px;
  margin-top:16px;
  display:flex
}
.paragraph-8 {
color:#fff9;
  margin-bottom:0;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;
  font-size:14px;
  font-weight:400
}
.footer-main-content {
max-width:480px;
  margin-right:40px
}
.footer-content-top {
justify-content:space-between;
  align-items:center;
  margin-bottom:0;
  display:flex
}
.div-block-164 {
background-color:#fff3;
  width:1px;
  height:16px;
  margin-left:20px;
  margin-right:20px
}
.div-block-163 {
justify-content:flex-start;
  align-items:center;
  display:flex
}
.title.footer-menu-title {
color:#fff;
  margin-top:20px;
  margin-bottom:30px;
  font-size:16px;
  font-weight:400;
  line-height:1.2em;
  display:inline-block
}
.footer-2 {
border-top:1px solid #ffffff1a;
  padding-top:40px;
  padding-bottom:40px
}
.link-block-13 {
text-decoration:none
}
.footer-nav-link {
color:#fff9;
  text-transform:capitalize;
  line-height:20px;
  text-decoration:none;
  transition:transform .3s,color .3s;
  display:inline-block
}
.footer-nav-link:hover {
color:#fff;
  transform:translate(4px)
}
.footer-menu-nav-main-wrapper {
grid-column-gap:0px;
  grid-row-gap:0px;
  grid-template-rows:auto;
  grid-template-columns:.4fr .4fr;
  grid-auto-columns:1fr;
  justify-content:flex-end;
  justify-items:end;
  width:100%;
  max-width:480px;
  display:grid
}
.div-block-238 {
align-items:center;
  margin-bottom:16px;
  display:flex
}
.link-website {
transition:transform .3s
}
.link-website:hover {
transform:translate(0,-4px)
}
.footer-logo-container {
margin-bottom:0;
  margin-right:10px;
  transition-property:transform;
  transition-duration:.3s
}
.footer-logo-container:hover {
transform:scale(.95)
}
.heading-3 {
color:#fff;
  text-align:center;
  margin-top:0;
  margin-bottom:0;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;
  font-size:70px;
  font-weight:600;
  line-height:1.2em
}
.section-5 {
background-color:#0000;
  margin-top:0;
  margin-bottom:100px;
  padding-top:60px;
  position:sticky;
  overflow:hidden
}
.div-block-250 {
z-index:1;
  grid-column-gap:12px;
  grid-row-gap:12px;
  flex-flow:column;
  display:flex;
  position:sticky
}
.image-45 {
z-index:-3;
  position:absolute;
  inset:10%auto auto
}
@media screen and (min-width:1440px)  {

h1 {
position:sticky
}
.hero-heading {
margin-bottom:0;
  position:sticky
}
.container {
mix-blend-mode:normal;
  position:sticky
}
.section.intro {
min-height:50svh
}

.hero-description {
display:block;
  top:0;
  bottom:auto;
  left:auto
}
.hero-top-wrapper {
margin-left:166px;
  padding-top:163px;
  padding-bottom:37px;
  position:sticky
}
.hero-contact-info-wrapper {
font-size:14px
}
.scrolling-logo-outer-wrapper {
width:80%;
  position:static
}
.image-41 {
text-align:center;
  margin-left:auto;
  margin-right:auto;
  padding-right:0;
  display:block;
  position:sticky;
  inset:-107px 0 0
}
.text-span {
color:#7600ff
}
.italic-text-2 {
color:var(--theme--primary-color)
}
.paragraph-33 {
padding-top:0;
  font-size:25px;
  line-height:1.5em;
  position:sticky
}
.container-5 {
margin-top:0
}
.paragraph-37,.paragraph-38 {
font-size:25px;
  line-height:1.5em;
  position:sticky
}
.heading-2,.image-42,.image-43 {
position:sticky
}
.image-44 {
vertical-align:baseline;
  margin-left:0;
  padding-right:0;
  display:inline-block
}
.grid-3 {
grid-template-rows:649px;
  grid-template-columns:1fr 1fr 1fr
}
.container-6 {
margin-top:95px
}

}
@media screen and (min-width:1920px)  {

.container {
text-decoration:none;
  display:flex
}
.section {
padding-top:0;
  padding-bottom:0
}

.paragraph-9 {
flex:1;
  font-size:13px
}
.paragraph-8 {
font-size:15px
}
.image-43 {
float:left;
  position:sticky
}
.image-44 {
margin-left:0;
  padding-left:0;
  position:sticky
}
.div-block-243 {
position:sticky
}
.section-5 {
padding-top:48px
}
.grid-3 {
grid-template:"Area Area-2 Area-3"/1fr 1fr 1fr;
  margin-top:89px
}
.container-6 {
margin-top:32px
}

}
@media screen and (max-width:991px)  {

.hero-heading {
font-size:12vw;
  line-height:100%
}
.nav-bar {
-webkit-backdrop-filter:none;
  backdrop-filter:none;
  min-height:4rem
}
.container {
width:100%;
  padding-left:2rem;
  padding-right:2rem
}
.container.navigation-container {
align-items:center
}
.container.intro-container {
width:100%;
  min-width:auto;
  padding-left:4rem;
  padding-right:4rem
}
.nav-links-conatiner {
z-index:1;
  background-color:var(--background-black);
  flex-direction:column;
  justify-content:space-between;
  align-items:center;
  padding-top:4rem;
  display:flex;
  position:fixed;
  inset:0%
}
.nav-logo {
z-index:2;
  position:sticky
}
.nav-link {
border-top:1px none var(--grey-line);
  border-bottom:1px solid var(--grey-line);
  justify-content:flex-start;
  align-items:center;
  width:100%;
  height:auto;
  margin-left:0;
  margin-right:0;
  padding:32px 24px;
  font-size:20px;
  display:flex
}
.nav-link:active {
opacity:.7
}
.nav-link.nav_link--contact {
border-style:solid none none;
  border-color:var(--light-grey);
  border-radius:0;
  justify-content:center;
  align-items:center;
  padding-top:24px;
  padding-bottom:24px
}
.nav-sub-container {
grid-column-gap:0px;
  grid-row-gap:0px;
  border-top:1px solid var(--grey-line);
  flex-flow:column;
  justify-content:flex-start;
  align-items:flex-start;
  width:100%;
  height:100%;
  max-height:100%;
  margin-left:0;
  padding-left:0;
  padding-right:0;
  display:flex;
  position:sticky;
  left:0%;
  right:0%;
  overflow:auto
}
.section {
padding-top:6rem;
  padding-bottom:6rem
}
.section.section-hero {
padding-top:5.5rem
}
.label-heading {
font-size:calc(.5vw + .75rem)
}
.hero-contact-link {
font-size:calc(.85vw + .75rem)
}

.title-wrapper-sticky {
position:sticky;
  top:0
}
.nav-wrapper {
border-bottom-style:none;
  justify-content:space-between
}
.hero-description {
margin-top:0;
  font-size:2.35vw
}
.hero-text-wrapper {
grid-column-gap:0rem;
  grid-row-gap:0rem
}
.hero-top-wrapper {
justify-content:space-between;
  align-items:flex-end
}
.nav-links-wrapper {
grid-column-gap:0vw;
  grid-row-gap:0vw;
  flex-flow:column;
  justify-content:flex-start;
  align-items:stretch;
  width:100%;
  padding-left:0
}
.hero-background-fade-overlay {
background-image:linear-gradient(180deg,var(--background-black),#0000 25%,#02020200 75%,var(--background-black))
}
.hero-contact-info-wrapper {
margin-top:2rem
}
.label {
width:100%;
  margin-bottom:1rem;
  margin-left:0
}
.intro-text-white {
font-size:2.25em
}
.footer-menu-wrapper.pages {
max-width:none
}
.footer-main-content {
align-self:flex-start;
  width:100%;
  max-width:320px;
  margin-bottom:0;
  margin-right:0
}
.footer-content-top {
grid-column-gap:16px;
  grid-row-gap:16px;
  flex-direction:column;
  grid-template-rows:auto auto;
  grid-template-columns:1fr 1fr;
  grid-auto-columns:1fr;
  justify-content:space-around;
  align-items:stretch;
  margin-bottom:0;
  display:flex
}
.title.footer-menu-title {
margin-bottom:40px
}
.footer-menu-nav-main-wrapper {
grid-column-gap:40px;
  grid-row-gap:40px;
  flex-direction:row;
  flex:1;
  grid-template-columns:1fr 1fr;
  align-self:flex-end;
  align-items:flex-start;
  width:auto;
  max-width:none;
  position:absolute
}
.footer-logo-container {
margin-bottom:0
}

}
@media screen and (max-width:767px)  {

.hero-heading {
z-index:2
}
.nav-bar {
height:auto;
  min-height:4rem
}
.container {
padding-left:1.25rem;
  padding-right:1.25rem
}
.container.intro-container {
padding-left:2rem;
  padding-right:2rem
}
.nav-links-conatiner {
padding-top:64px
}
.nav-link {
padding:24px
}
.hero-contact-link {
font-size:calc(.85vw + .85rem)
}
.hero-description {
text-align:center;
  font-size:1.25rem
}
.hero-top-wrapper {
grid-column-gap:1.25rem;
  grid-row-gap:1.25rem;
  text-align:center;
  flex-flow:column;
  justify-content:space-between;
  align-items:center
}
.hero-background {
display:none
}
.hero-contact-info-wrapper {
margin-top:1.5rem
}
.label {
margin-left:0
}
.intro-text-white {
font-size:2em
}
.footer-nav-item {
margin-bottom:10px
}
.footer-menu-wrapper.pages {
flex:0 auto;
  width:auto;
  margin-bottom:0;
  margin-right:25px
}
.footer-menu-content {
font-size:16px
}
.footer-main-content {
width:auto;
  max-width:none;
  margin-bottom:20px
}
.footer-logo {
width:auto;
  max-width:none
}
.footer-content-top {
justify-content:center;
  margin-bottom:0;
  display:block
}
.title.footer-menu-title {
margin-bottom:25px;
  font-size:18px
}
.footer-menu-nav-main-wrapper {
flex-wrap:wrap;
  place-items:start;
  width:auto;
  max-width:none
}

}
@media screen and (max-width:479px)  {

.hero-heading {
font-size:15vw
}
.container {
flex-wrap:nowrap
}
.container.intro-container {
padding-left:1.25rem;
  padding-right:1.25rem
}
.nav-sub-container {
z-index:7
}
.section.section-hero {
padding-top:4rem
}
.hero-description {
font-size:1.1rem;
  line-height:1.4em
}
.hero-top-wrapper {
grid-column-gap:.75rem;
  grid-row-gap:.75rem;
  justify-content:space-between;
  align-items:center
}
.hero-background {
opacity:.8
}
.intro-text-white {
font-size:1.8em
}
.scrolling-logo-outer-wrapper {
padding-top:4rem;
  padding-bottom:4rem
}
.footer-nav {
flex-direction:column;
  align-items:flex-start;
  margin-right:0
}
.footer-menu-wrapper.pages {
text-align:left;
  max-width:none;
  margin-bottom:0;
  margin-right:0
}
.footer-menu-content {
text-align:left;
  flex-wrap:wrap
}
.footer-main-content {
flex-flow:wrap;
  place-content:center;
  margin-bottom:20px;
  display:flex
}
.footer-logo {
width:auto
}
.footer-content-top {
flex-direction:column;
  margin-bottom:30px
}
.title.footer-menu-title {
margin-bottom:15px;
  font-size:16px
}
.footer-nav-link {
font-size:14px
}
.footer-menu-nav-main-wrapper {
grid-column-gap:16px;
  grid-row-gap:16px;
  flex-flow:column;
  flex:0 auto;
  justify-content:center;
  align-self:center;
  align-items:flex-start;
  min-width:288px;
  max-width:none;
  display:flex;
  position:static
}
.div-block-238 {
margin-bottom:20px
}

}
@media screen and (min-width:1920px)  {

#w-node-_4b1728ea-eb76-1c79-c30f-167b7684413c-f6fe6adc,#w-node-b01bedab-e47c-265c-c78b-2b434b3b8949-f6fe6adc {
grid-area:span 1/span 1/span 1/span 1
}
#w-node-bfb7f171-64f8-31d8-96bc-5cf8a07d9d3c-f6fe6adc {
grid-area:span 1/span 1/span 1/span 1;
  place-self:start center
}
#w-node-_8fe00582-1d6b-c94b-564f-b373b442ffef-f6fe6adc {
place-self:center
}
#w-node-_73acb04a-ae53-4a19-6238-daeff593a8d6-f6fe6adc {
place-self:auto center
}
#w-node-c66b1519-3f07-6cd1-7aab-715104297781-f6fe6adc {
grid-area:Area-3;
  place-self:center
}

}
@media screen and (min-width:1440px)  {

#w-node-bfb7f171-64f8-31d8-96bc-5cf8a07d9d3c-f6fe6adc {
grid-area:span 1/span 1/span 1/span 1;
  place-self:center
}
#w-node-_8fe00582-1d6b-c94b-564f-b373b442ffef-f6fe6adc {
grid-area:Area-5
}
#w-node-_73acb04a-ae53-4a19-6238-daeff593a8d6-f6fe6adc {
grid-area:Area-5;
  place-self:end
}
#w-node-c66b1519-3f07-6cd1-7aab-715104297781-f6fe6adc {
grid-area:Area-3;
  justify-self:center
}
#w-node-b44477ce-9a41-0390-0b71-cfbf88218e56-f6fe6adc {
grid-area:Area-4
}
#w-node-_1f4e6c60-05e8-64af-0ee7-912bb40ff6df-f6fe6adc {
grid-area:Area-6
}

}

/* ========== Style Block 2 ========== */
@font-face  {

      font-family: "Afacad Flux";
  
      font-style: normal;
  
      font-weight: 200;
  
      src: url(assets/fonts/font_0006.woff2) format("woff2");
  
      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
        U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
        U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;

}

    @font-face  {

      font-family: "Afacad Flux";
  
      font-style: normal;
  
      font-weight: 300;
  
      src: url(assets/fonts/font_0005.woff2) format("woff2");
  
      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
        U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
        U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;

}

    @font-face  {

      font-family: "Afacad Flux";
  
      font-style: normal;
  
      font-weight: 400;
  
      src: url(assets/fonts/font_0004.woff2) format("woff2");
  
      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
        U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
        U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;

}

    @font-face  {

      font-family: "Afacad Flux";
  
      font-style: normal;
  
      font-weight: 500;
  
      src: url(assets/fonts/font_0003.woff2) format("woff2");
  
      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
        U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
        U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;

}

    @font-face  {

      font-family: "Afacad Flux";
  
      font-style: normal;
  
      font-weight: 600;
  
      src: url(assets/fonts/font_0002.woff2) format("woff2");
  
      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
        U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
        U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;

}

    @font-face  {

      font-family: "Afacad Flux";
  
      font-style: normal;
  
      font-weight: 700;
  
      src: url(assets/fonts/font_0001.woff2) format("woff2");
  
      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
        U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
        U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;

}

/* ========== Style Block 3 ========== */
.sf-hidden  {

      display: none !important;

}

/* ========== Style Block 4 ========== */
img[src="data:,"],
    source[src="data:,"]  {

      display: none !important;

}

/* ========== Style Block 5 ========== */
.infobar,
            .infobar .infobar-icon,
            .infobar .infobar-link-icon  {

              min-inline-size: 28px;
  
              min-block-size: 28px;
  
              box-sizing: border-box;

}

            .infobar,
            .infobar .infobar-close-icon,
            .infobar .infobar-link-icon  {

              opacity: 0.7;
  
              transition: opacity 250ms;

}

            .infobar:hover,
            .infobar .infobar-close-icon:hover,
            .infobar .infobar-link-icon:hover  {

              opacity: 1;

}

            .infobar,
            .infobar-content  {

              display: flex;

}

            .infobar  {

              position: fixed;
  
              max-height: calc(100% - 32px);
  
              top: 16px;
  
              right: 16px;
  
              margin-inline-start: 16px;
  
              margin-block-end: 16px;
  
              color: #2d2d2d;
  
              background-color: #737373;
  
              border: 2px solid;
  
              border-color: #eee;
  
              border-radius: 16px;
  
              z-index: 2147483647;
  
              animation-name: flash;
  
              animation-duration: 0.5s;
  
              animation-timing-function: cubic-bezier(0.39, 0.58, 0.57, 1);
  
              animation-delay: 1s;
  
              animation-iteration-count: 2;

}

            .infobar:valid,
            .infobar:not(:focus-within):not(.infobar-focus) .infobar-content  {

              display: none;

}

            .infobar:focus-within,
            .infobar.infobar-focus  {

              background-color: #f9f9f9;
  
              border-color: #878787;
  
              border-radius: 8px;
  
              opacity: 1;
  
              transition-property: opacity, background-color, border-color,
                border-radius, color;

}

            .infobar-content  {

              border: 2px solid;
  
              border-color: #f9f9f9;
  
              border-radius: 6px;
  
              background-color: #f9f9f9;
  
              overflow: auto;

}

            .infobar-content span  {

              font-family: Arial, Helvetica, sans-serif;
  
              font-size: 14px;
  
              line-height: 18px;
  
              word-break: break-word;
  
              white-space: pre-wrap;
  
              margin-inline: 4px;
  
              margin-block: 4px;

}

            .infobar .infobar-icon,
            .infobar .infobar-close-icon,
            .infobar .infobar-link-icon  {

              cursor: pointer;
  
              background-position: center;
  
              background-repeat: no-repeat;

}

            .infobar .infobar-close-icon,
            .infobar .infobar-link-icon  {

              align-self: flex-start;

}

            .infobar .infobar-icon  {

              position: absolute;
  
              min-inline-size: 24px;
  
              min-block-size: 24px;

}

            @keyframes flash   {


              0%,
              100%  {

                background-color: #737373;

}

              50%  {

                background-color: #dd6a00;

}

}

            .infobar:focus-within .infobar-icon,
            .infobar.infobar-focus .infobar-icon  {

              z-index: -1;
  
              background-image: none;
  
              margin: 4px;

}

            .infobar .infobar-close-icon  {

              min-inline-size: 22px;
  
              min-block-size: 22px;

}

            .infobar .infobar-icon  {

              background-color: transparent;
  
              background-size: 70%;
  
              background-image: url(assets/images/image_0003.png);

}

            .infobar .infobar-link-icon  {

              right: 4px;
  
              background-size: 60%;
  
              background-image: url(assets/images/image_0002.png);

}

            .infobar .infobar-close-icon  {

              appearance: none;
  
              background-size: 80%;
  
              background-image: url(assets/images/image_0001.png);

}

            .infobar  {

              top: 16px;
  
              bottom: auto;

}

            .infobar  {

              right: 16px;
  
              left: auto;

}
/* === FINAL & CORRECT 2-COLUMN STICKY LAYOUT === */

/* 1. Define the main grid container */
.grid---ratio-1x2 {
  display: grid !important;
  grid-template-columns: 1fr 1.25fr !important; /* Left column for title, Right for content */
  grid-column-gap: 5rem !important;
  align-items: start !important; /* Align items to the top of their cell */
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}

/* 2. Reset all children to a known state */
.grid---ratio-1x2 > * {
  position: static !important;
  grid-column: auto !important;
  grid-row: auto !important;
}

/* 3. Place the title block in the LEFT column and make it sticky */
.title-wrapper-sticky {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 2 !important;
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 120px !important;
}

/* 4. Place ALL images and text blocks into the RIGHT column */

/* ROW 1: Image + Text */
#w-node-bfb7f171-64f8-31d8-96bc-5cf8a07d9d3c-f6fe6adc { /* Image 1 */
  grid-column: 2 !important;
  grid-row: 1 !important;
  margin-bottom: 1rem; /* Space between image and its text */
}
.container-5 { /* Easy Editing Text */
  grid-column: 2 !important;
  grid-row: 2 !important;
  margin-bottom: 20vh; /* Large space before the next image */
}

/* ROW 2: Image + Text */
.div-block-243 { /* Image 2 Container */
  grid-column: 2 !important;
  grid-row: 3 !important;
  margin-bottom: 1rem;
}
#w-node-b44477ce-9a41-0390-0b71-cfbf88218e56-f6fe6adc { /* Rich 3D Asset Library Text */
  grid-column: 2 !important;
  grid-row: 4 !important;
  margin-bottom: 20vh;
}

/* ROW 3: Image + Text */
#w-node-c66b1519-3f07-6cd1-7aab-715104297781-f6fe6adc { /* Image 3 */
  grid-column: 2 !important;
  grid-row: 5 !important;
  margin-bottom: 1rem;
}
#w-node-_1f4e6c60-05e8-64af-0ee7-912bb40ff6df-f6fe6adc { /* Custom Templates Text */
  grid-column: 2 !important;
  grid-row: 6 !important;
}