 :root {
   --logo: #ffffff;
   --menu: #ffffff;
   --footerBg: var(--black);
   --footerFg: var(--white);
   ;
 }

 .gallery-container {
   width: 100vw;
   height: 100vh;
   overflow: hidden;
   position: relative;
   background-color: var(--black);
 }

 .gallery-container * {
   color: var(--white);
 }

 .gallery-container.hidden {
   top: -10000000px;
   left: -10000000px;
   pointer-events: none;
   position: absolute !important;
   height: 1px;
   width: 1px;
   overflow: hidden;
   clip: rect(1px 1px 1px 1px);
   clip: rect(1px, 1px, 1px, 1px);
   white-space: nowrap;
 }

 .gallery-container.scene {
   user-select: none;
   pointer-events: all;
 }

 .gallery {
   position: relative;
   width: 110vw;
   /* large enough to fit parallax range */
   height: 105vh;
 }

 .bg-grid {
   background-image: url("/assets/graphics/bg.png");
   background-size: cover;
   /* or contain, 100% 100%, etc. */
   background-position: center;
   background-repeat: no-repeat;
   height: 100vh;
   width: 100vw;
   position: fixed;
   top: 0;
   left: 0;
   z-index: 0;
   opacity: 1;
 }

 [data-barba-namespace="Our Work"] {
   background-color: var(--black);
 }

 [data-barba-namespace=Home] {
   background-color: var(--black);
 }

 [data-barba-namespace=Home] .bg-grid {
   opacity: 0;
 }

 [data-template=people],
 [data-template=projects] {
   background-color: var(--black);
 }

 [data-template=people] .item,
 [data-template=projects] .item {
   will-change: transform, filter;
   backface-visibility: hidden;
   transform: translateZ(0);
 }

 .gallery-container.homepage .inner {
   position: absolute;
   /* width: 100%; */
   /* height: 100%; */
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 130vw;
   aspect-ratio: 1.5906862745;
   /* height: auto; */
 }

 .gallery-container.homepage .img-wrapper {
   position: absolute;
   height: auto;
   display: block;
   aspect-ratio: 1;
   width: 15vw;
   background-color: #eee;
   box-shadow: 0 20px 30px rgba(0, 0, 0, 0.3);
   transition: border-radius 0.3s ease;
   aspect-ratio: 1;
   height: auto;
   width: 29vw;
   text-align: right;
   background-color: transparent;
 }

 .gallery-container.homepage .img-wrapper._0 {
   top: -8%;
   left: 18.1%;
   width: 39vw;
   aspect-ratio: unset;
 }

 .gallery-container.homepage .img-wrapper._0 .aspectholder {
   clip-path: url(#img1Path);
 }

 .gallery-container.homepage .img-wrapper._0.two {
   top: -14.7%;
   left: 11.95%;
   width: 39vw;
 }

 .gallery-container.homepage .img-wrapper._0.three {
   top: -5.1%;
   left: 3.5%;
   width: 30vw;
 }

 .gallery-container.homepage .img-wrapper._1 {
   top: -23.8%;
   left: 75.37%;
   width: 33.5vw;
   aspect-ratio: 1;
 }

 .gallery-container.homepage .img-wrapper._1 .aspectholder {
   clip-path: url(#img2Path);
 }

 .gallery-container.homepage .img-wrapper._1.two {
   top: -17.8%;
   left: 50.37%;
 }

 .gallery-container.homepage .img-wrapper._1.three {
   top: -15.7%;
   left: 40.3%;
 }

 .gallery-container.homepage .img-wrapper._2 {
   top: 75.4%;
   left: 78.37%;
   width: 31.4vw;
   aspect-ratio: 1;
 }

 .gallery-container.homepage .img-wrapper._2 .aspectholder {
   clip-path: url(#img3Path);
 }

 .gallery-container.homepage .img-wrapper._2.two {
   top: 23.8%;
   left: 78.4%;
   width: 33vw;
 }

 .gallery-container.homepage .img-wrapper._2.three {
   top: 10.4%;
   left: 76.9%;
 }

 .gallery-container.homepage .img-wrapper .aspectholder {
   width: 100%;
   height: 100%;
 }

 .gallery-container.homepage .img-wrapper .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .item {
   position: absolute;
   width: 15vw;
   aspect-ratio: 1;
   background-color: #eee;
   box-shadow: 0 20px 30px rgba(0, 0, 0, 0.3);
   transition: border-radius 0.5s ease, transform 0.5s ease, filter 0.5s ease;
   z-index: 1;
   backface-visibility: hidden;
   transform: translateZ(0);
 }

 .item:nth-child(1) {
   top: 35.51%;
   left: 9.3%;
   aspect-ratio: 0.793;
   text-align: right;
   width: 17.1vw;
 }

 .item:nth-child(1) .aspectholder._2 {
   width: 50%;
   height: 50%;
   top: 30%;
   right: -30%;
 }

 .item.two:nth-child(1) {
   top: 69.39%;
   left: 20.98%;
 }

 .item.three:nth-child(1) {
   top: 67.53%;
   left: 54.84%;
 }

 .item:nth-child(2) {
   top: 71.55%;
   left: 3.9%;
   aspect-ratio: 1;
   height: auto;
   width: 36.4vw;
   text-align: right;
   background-color: transparent;
 }

 .item:nth-child(2) .aspectholder._0 {
   clip-path: url(#wwdPath);
   width: 100%;
   height: auto;
   display: block;
   aspect-ratio: unset;
   aspect-ratio: 1;
 }

 .item:nth-child(2) .aspectholder._1 {
   top: 10%;
   left: 0%;
 }

 .item:nth-child(2) .aspectholder._2 {
   top: 80%;
   right: 20%;
 }

 .item.two:nth-child(2),
 .item.three:nth-child(2) {
   width: 36.4vw;
   top: 33.76%;
   left: -8%;
 }

 .item:nth-child(3) {
   top: 38.97%;
   left: 36.1%;
   aspect-ratio: 0.99;
   width: 17.5vw;
 }

 .item:nth-child(3) .aspectholder._2 {
   top: 60%;
 }

 .item.two:nth-child(3) {
   top: 38.85%;
   left: 57.76%;
 }

 .item.three:nth-child(3) {
   top: 38.53%;
   left: 32.65%;
 }

 .item:nth-child(4) {
   top: 25.05%;
   left: 56.33%;
   aspect-ratio: 0.808;
   width: 17.6vw;
 }

 .item:nth-child(4) .aspectholder._2 {
   top: 40%;
   right: -40%;
 }

 .item.two:nth-child(4) {
   top: 32.9%;
   left: 33.02%;
 }

 .item.three:nth-child(4) {
   top: 30.93%;
   left: 59.84%;
 }

 .item:nth-child(5) {
   top: 71.3%;
   left: 36%;
   aspect-ratio: 1;
   height: auto;
   width: 40.9vw;
   text-align: right;
   background-color: transparent;
 }

 .item:nth-child(5) .aspectholder._0 {
   clip-path: url(#wpPath);
   width: 100%;
   height: auto;
   display: block;
   aspect-ratio: unset;
   aspect-ratio: 1.3;
 }

 .item:nth-child(5) .aspectholder._1 {
   top: -10%;
   left: 20%;
 }

 .item:nth-child(5) .aspectholder._2 {
   top: 60%;
   right: 15%;
 }

 .item.two:nth-child(5) {
   top: 71.38%;
   left: 38.63%;
 }

 .item.three:nth-child(5) {
   top: 71.48%;
   left: 13.9%;
 }

 .item:nth-child(6) {
   top: 31.2%;
   left: 77.66%;
   aspect-ratio: 0.646;
   width: 17.1vw;
 }

 .item:nth-child(6) .aspectholder._1 {
   width: 50%;
   height: 50%;
   top: 60%;
   right: unset;
   left: -20%;
 }

 .item:nth-child(6) .aspectholder._2 {
   top: 20%;
 }

 .item.two:nth-child(6) {
   top: 64.54%;
   left: 77.73%;
 }

 .item.three:nth-child(6) {
   top: 58.75%;
   left: 76.5%;
 }

 .item-title {
   position: absolute;
   top: 0;
   left: 0;
   transform: translateY(-100%);
   width: 100%;
   color: #eee;
 }

 .item-title span {
   white-space: nowrap;
 }

 .item-title .fs,
 .item-title blockquote footer,
 blockquote .item-title footer,
 .item-title .project-media-text .project-block-text .fp u,
 .project-media-text .project-block-text .fp .item-title u,
 .item-title .project-media-text .project-block-text .article-text strong u,
 .project-media-text .project-block-text .article-text strong .item-title u,
 .item-title .article-text .project-media-text .project-block-text strong u,
 .article-text .project-media-text .project-block-text strong .item-title u,
 .item-title .project-media-text .project-block-text .person-main-data .person-title strong u,
 .project-media-text .project-block-text .person-main-data .person-title strong .item-title u,
 .item-title .person-main-data .person-title .project-media-text .project-block-text strong u,
 .person-main-data .person-title .project-media-text .project-block-text strong .item-title u {
   display: block;
   position: relative;
   bottom: 2px;
   opacity: 0.5;
 }

 .item .item-holder {
   width: 100%;
   height: 100%;
   position: relative;
   transition: transform 0.5s ease;
 }

 .item .aspectholder {
   display: none;
   width: 100%;
   height: 100%;
   overflow: hidden;
   z-index: 10;
   transition: opacity 0.5s ease, filter 0.5s ease, transform 0.5s ease;
 }

 .item .aspectholder._0 {
   position: absolute;
   display: block;
   width: 100%;
   height: 100%;
 }

 .item .aspectholder._1 {
   position: absolute;
   display: block;
   width: 40%;
   height: 40%;
   top: 20%;
   left: -20%;
   z-index: 0;
   filter: blur(4px);
   opacity: 0.5;
   transform: translateZ(0);
 }

 .item .aspectholder._2 {
   position: absolute;
   display: block;
   width: 40%;
   height: 40%;
   top: 80%;
   right: -20%;
   z-index: 0;
   filter: blur(6px);
   opacity: 0.1;
   transform: translateZ(0);
 }

 .item .aspectholder img {
   transition: transform 0.5s ease;
   transform: scale3d(1.02, 1.02, 1);
 }

 .item .aspectholder {
   width: 100%;
   height: 100%;
 }

 .item .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .item:hover {
   z-index: 10;
   will-change: transform, filter;
 }

 .item:hover .item-holder {
   transform: scale3d(1.05, 1.05, 1);
   will-change: transform;
 }

 .item:hover .aspectholder {
   opacity: 1;
   filter: blur(1px);
   will-change: filter, opacity;
   transform: translateZ(0);
 }

 .item:hover .aspectholder.debut {
   filter: blur(0);
 }

 .item:hover img {
   transform: scale3d(1.07, 1.07, 1);
   will-change: transform;
 }

 .project-title {
   position: fixed;
   top: 0;
   left: 0;
   width: 100vw;
   height: 100dvh;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-direction: column;
   row-gap: var(--Pg);
   z-index: 11;
   color: var(--white);
   pointer-events: none;
   opacity: 0;
 }

 .project-title .project-title-text {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: flex-start;
   row-gap: var(--Pm);
   text-align: center;
   width: 100%;
   max-width: calc(100% - 420px);
   padding: 0 7%;
 }

 [data-view=Parallax] .large {
   width: 100%;
   height: 100%;
   pointer-events: all;
 }

 [data-view=Parallax] .large .inner {
   position: absolute;
   display: grid !important;
   grid-template-columns: repeat(var(--cols), 1fr);
   grid-auto-rows: minmax(min-content, max-content);
   column-gap: 0;
   row-gap: 0;
   width: auto;
   /* large enough to fit parallax range */
   height: auto;
   left: 50% !important;
   top: 50% !important;
   transform: translate(-50%, -50%);
   pointer-events: none;
   padding: 120px;
 }

 [data-view=Parallax] .large .inner:hover .item-container .item {
   opacity: 0.2;
   transition: opacity 0.3s ease;
 }

 [data-view=Parallax] .large .item-container {
   display: flex;
   position: relative;
   align-items: center;
   justify-content: center;
   width: auto;
   aspect-ratio: 1;
   padding: 3.5vw 3.5vw;
   grid-row: span var(--row-span);
 }

 [data-view=Parallax] .large .item-container:hover .item {
   opacity: 1 !important;
   transition: opacity 0.3s ease;
 }

 [data-view=Parallax] .large .item-container .item {
   position: relative;
   pointer-events: auto;
   transform: translate(-50%, -50%);
   top: var(--top) !important;
   left: var(--left) !important;
   right: unset !important;
   bottom: unset !important;
   width: 14vw;
   transition: opacity 0.3s ease;
 }

 @media screen and (min-width: 2150px) {
   [data-view=Parallax] .large .item-container .item {
     width: 13vw;
   }
 }

 [data-view=Parallax] .large .item-container .item .item-title {
   align-items: flex-end;
   text-align: left;
   display: flex;
   justify-content: space-between;
   column-gap: var(--Ph);
   line-height: 1;
   padding-bottom: 4px;
   display: none;
 }

 [data-view=Parallax] .large .item-container .item .item-title .name {
   display: flex;
   column-gap: 8px;
   flex-wrap: wrap;
 }

 [data-view=Parallax] .large .item-container .item .item-title .fs,
 [data-view=Parallax] .large .item-container .item .item-title blockquote footer,
 blockquote [data-view=Parallax] .large .item-container .item .item-title footer,
 [data-view=Parallax] .large .item-container .item .item-title .project-media-text .project-block-text .fp u,
 .project-media-text .project-block-text .fp [data-view=Parallax] .large .item-container .item .item-title u,
 [data-view=Parallax] .large .item-container .item .item-title .project-media-text .project-block-text .article-text strong u,
 .project-media-text .project-block-text .article-text strong [data-view=Parallax] .large .item-container .item .item-title u,
 [data-view=Parallax] .large .item-container .item .item-title .article-text .project-media-text .project-block-text strong u,
 .article-text .project-media-text .project-block-text strong [data-view=Parallax] .large .item-container .item .item-title u,
 [data-view=Parallax] .large .item-container .item .item-title .project-media-text .project-block-text .person-main-data .person-title strong u,
 .project-media-text .project-block-text .person-main-data .person-title strong [data-view=Parallax] .large .item-container .item .item-title u,
 [data-view=Parallax] .large .item-container .item .item-title .person-main-data .person-title .project-media-text .project-block-text strong u,
 .person-main-data .person-title .project-media-text .project-block-text strong [data-view=Parallax] .large .item-container .item .item-title u {
   white-space: nowrap;
 }

 [data-view=Parallax] .large .item-container .item .item-title span {
   white-space: unset;
   display: block;
 }

 [data-view=Parallax] .large .item-container .item .item-title .abv {
   width: fit-content;
 }

 [data-view=Parallax] .large .item-container .item.card-article {
   width: 23vw;
   aspect-ratio: 1 !important;
   text-align: left;
   color: var(--black);
   --white: var(--black);
 }

 [data-view=Parallax] .large .item-container .item.card-article .aspectholder {
   display: block;
   filter: blur(0px) !important;
 }

 [data-view=Parallax] .large .item-container .item.card-article .fm,
 [data-view=Parallax] .large .item-container .item.card-article blockquote {
   font-weight: 400;
 }

 [data-view=Parallax] .large .item-container .item-holder {
   aspect-ratio: unset;
 }

 [data-view=Parallax] .large .item-container:nth-of-type(2n + 1) .item {
   aspect-ratio: unset;
 }

 [data-view=Parallax] .large .item-container:nth-of-type(2n + 1) .item .aspectholder {
   aspect-ratio: 0.8;
   top: 0 !important;
   position: relative;
 }

 [data-view=Parallax] .large .item-container:nth-of-type(2n + 2) .item {
   aspect-ratio: unset;
 }

 [data-view=Parallax] .large .item-container:nth-of-type(2n + 2) .item .aspectholder {
   aspect-ratio: 1;
   top: 0 !important;
   position: relative;
 }

 .gallery-grid {
   width: 100vw;
   height: 100%;
   padding-top: 200px;
   color: var(--white);
   z-index: 1;
   position: relative;
 }

 .gallery-grid.hidden {
   top: -10000000px;
   left: -10000000px;
   pointer-events: none;
   position: absolute !important;
   height: 1px;
   width: 1px;
   overflow: hidden;
   clip: rect(1px 1px 1px 1px);
   clip: rect(1px, 1px, 1px, 1px);
   white-space: nowrap;
 }

 .gallery-grid-top {
   padding-bottom: var(--Pxl);
 }

 .gallery-grid-top-title {
   grid-column: 2/-2;
 }

 .gallery-grid-top-blurb {
   grid-column: 2/10;
 }

 .gallery-grid-cont {
   grid-column: 2/-2;
   padding: 0 7%;
   padding-bottom: 200px;
 }

 .gallery-grid-cont.grid-4 {
   column-gap: var(--Pg);
   row-gap: var(--Pl);
 }

 .gallery-grid-cont-item {
   display: flex;
   flex-direction: column;
   row-gap: var(--Ph);
   will-change: transform;
 }

 .gallery-grid-cont-item .item-title {
   position: relative;
   transform: unset;
   flex-direction: column;
   align-items: flex-start;
   row-gap: 4px;
 }

 .gallery-grid-cont-item .item-title span {
   white-space: unset;
 }

 .gallery-grid-cont-item .aspectholder {
   width: 100%;
   aspect-ratio: 0.8;
   overflow: hidden;
   will-change: transform;
 }

 .gallery-grid-cont-item .aspectholder img {
   transition: transform 0.5s ease;
   transform: translateZ(0);
 }

 .gallery-grid-cont-item .aspectholder * {
   width: 100%;
   aspect-ratio: 0.8;
   object-fit: cover;
   transition: transform 0.5s ease;
   transform: translateZ(0);
 }

 .gallery-grid-cont-item:hover .aspectholder img {
   transform: scale3d(1.1, 1.1, 1);
   transition: transform 0.5s ease;
 }

 .project-archive {
   grid-column: 2/-2;
   color: var(--white);
   padding: var(--Pxl) 6%;
   row-gap: var(--Pl);
 }

 .project-archive-title {
   grid-column: 1/-1;
 }

 .project-archive-list {
   grid-column: 1/-1;
   display: flex;
   flex-direction: column;
 }

 .project-archive-list-item {
   border-top: 1px solid var(--white-20);
   transition: border-top 0.2s ease;
 }

 .project-archive-list-item:hover {
   border-top: 1px solid var(--white);
 }

 .project-archive-list-item:hover summary {
   opacity: 1;
 }

 .project-archive-list-item-row {
   padding: var(--Pg) 0;
   display: flex;
   justify-content: flex-start;
   column-gap: var(--Ps);
 }

 .project-archive-list-item-row .year {
   flex: 1;
 }

 .project-archive-list-item-row .title,
 .project-archive-list-item-row .discipline,
 .project-archive-list-item-row .sector {
   flex: 3;
 }

 .project-archive-list-item-row .region,
 .project-archive-list-item-row .status {
   flex: 2;
 }

 .project-archive-list-item-row *::after {
   content: "";
   display: none;
 }

 .project-archive-list-item-imgs {
   padding-bottom: var(--Pg);
   overflow-x: scroll;
   overflow-y: hidden;
   display: flex;
   flex-direction: row;
   flex-wrap: nowrap;
   width: auto;
   column-gap: var(--Ps);
   scroll-snap-type: x mandatory;
   scroll-padding-left: 100px;
 }

 .project-archive-list-item-imgs .aspectholder {
   height: 300px;
   width: auto;
 }

 .project-archive-list-item-imgs .aspectholder * {
   height: 100%;
   width: auto;
 }

 .sort-options {
   padding: var(--Pm) 7% var(--Pxl) 7%;
   display: flex;
   justify-content: flex-end;
   align-items: center;
   column-gap: var(--Pg);
   position: relative;
 }

 .sort-options:before {
   position: absolute;
   content: "";
   width: 86%;
   left: 7%;
   top: 0;
   height: 1px;
   background-color: var(--white-20);
 }

 .sort-options .custom-radio {
   display: flex;
   align-items: center;
   gap: 8px;
   cursor: pointer;
   position: relative;
   user-select: none;
 }

 .sort-options .custom-radio input[type=radio] {
   opacity: 0;
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   margin: 0;
   cursor: pointer;
 }

 .sort-options .custom-radio input[type=radio]~.custom-radio-box,
 .sort-options .custom-radio input[type=radio]~span {
   opacity: 0.5;
   transition: opacity 0.2s ease;
 }

 .sort-options .custom-radio input[type=radio]:checked~.custom-radio-box {
   background: currentColor;
   opacity: 1;
 }

 .sort-options .custom-radio input[type=radio]:checked~span {
   opacity: 1;
 }

 .sort-options .custom-radio input[type=radio]:checked~.custom-radio-box::after {
   background: var(--white);
 }

 .sort-options .custom-radio-box {
   border: 1px solid var(--white);
   margin-right: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: border-color 0.2s;
   background: transparent;
 }

 .sort-options .custom-radio-box::after {
   content: "";
   display: block;
   width: 10px;
   height: 10px;
   background: transparent;
   transition: background 0.2s;
 }

 @media screen and (max-width: 789px) {
   .sort-options {
     padding: var(--Pm) 0% var(--Pxl) 0%;
     justify-content: flex-start;
   }

   .sort-options:before {
     width: 100%;
     left: 0;
   }
 }

 html,
 body,
 div,
 span,
 applet,
 object,
 iframe,
 h1,
 h2,
 h3,
 h4,
 h5,
 h6,
 p,
 blockquote,
 pre,
 a,
 abbr,
 acronym,
 address,
 big,
 cite,
 code,
 del,
 dfn,
 em,
 img,
 ins,
 kbd,
 q,
 s,
 samp,
 small,
 strike,
 strong,
 sub,
 sup,
 tt,
 var,
 b,
 u,
 i,
 center,
 dl,
 dt,
 dd,
 ol,
 ul,
 li,
 fieldset,
 form,
 label,
 legend,
 table,
 caption,
 tbody,
 tfoot,
 thead,
 tr,
 th,
 td,
 article,
 aside,
 canvas,
 details,
 embed,
 figure,
 figcaption,
 footer,
 header,
 hgroup,
 menu,
 nav,
 output,
 ruby,
 section,
 summary,
 time,
 mark,
 audio,
 video {
   margin: 0;
   padding: 0;
   border: 0;
   font-size: 100%;
   font: inherit;
   vertical-align: baseline;
 }

 article,
 aside,
 details,
 figcaption,
 figure,
 footer,
 header,
 hgroup,
 menu,
 nav,
 section {
   display: block;
 }

 body {
   line-height: 1;
 }

 ol,
 ul {
   list-style: none;
 }

 blockquote,
 q {
   quotes: none;
 }

 blockquote:before,
 blockquote:after,
 q:before,
 q:after {
   content: "";
   content: none;
 }

 table {
   border-collapse: collapse;
   border-spacing: 0;
 }

 html,
 body,
 div,
 span,
 applet,
 object,
 iframe,
 h1,
 h2,
 h3,
 h4,
 h5,
 h6,
 p,
 blockquote,
 pre,
 a,
 abbr,
 acronym,
 address,
 big,
 cite,
 code,
 del,
 dfn,
 em,
 img,
 ins,
 kbd,
 q,
 s,
 samp,
 small,
 strike,
 strong,
 sub,
 sup,
 tt,
 var,
 b,
 u,
 i,
 center,
 dl,
 dt,
 dd,
 ol,
 ul,
 li,
 fieldset,
 form,
 label,
 legend,
 table,
 caption,
 tbody,
 tfoot,
 thead,
 tr,
 th,
 td,
 article,
 aside,
 canvas,
 details,
 embed,
 figure,
 figcaption,
 footer,
 header,
 hgroup,
 menu,
 nav,
 output,
 ruby,
 section,
 summary,
 time,
 mark,
 audio,
 video {
   margin: 0;
   padding: 0;
   border: 0;
   font-size: 100%;
   font: inherit;
   vertical-align: baseline;
 }

 article,
 aside,
 details,
 figcaption,
 figure,
 footer,
 header,
 hgroup,
 menu,
 nav,
 section {
   display: block;
 }

 blockquote,
 q {
   quotes: none;
 }

 blockquote:before,
 blockquote:after,
 q:before,
 q:after {
   content: "";
   content: none;
 }

 table {
   border-collapse: collapse;
   border-spacing: 0;
 }

 * {
   box-sizing: border-box;
 }

 *:before,
 *:after {
   box-sizing: border-box;
 }

 .visually-hidden {
   position: absolute !important;
   height: 1px;
   width: 1px;
   overflow: hidden;
   clip: rect(1px 1px 1px 1px);
   clip: rect(1px, 1px, 1px, 1px);
   white-space: nowrap;
 }

 .hidden {
   display: none !important;
 }

 textarea,
 input,
 button,
 select {
   font-family: inherit;
   font-size: inherit;
   text-align: inherit;
   appearance: none;
   -webkit-appearance: none;
   -moz-appearance: none;
   -ms-appearance: none;
 }

 input,
 textarea,
 input::placeholder,
 textarea::placeholder {
   background: inherit;
   color: inherit;
   border: none;
   padding: 0;
   outline: inherit;
   opacity: 1;
 }

 textarea {
   resize: none;
 }

 input:not([type=submit]),
 textarea {
   display: block;
   width: 100%;
   border-radius: 0;
 }

 input::-webkit-outer-spin-button,
 input::-webkit-inner-spin-button {
   -webkit-appearance: none;
   margin: 0;
 }

 input[type=search]::-webkit-search-decoration,
 input[type=search]::-webkit-search-cancel-button,
 input[type=search]::-webkit-search-results-button,
 input[type=search]::-webkit-search-results-decoration {
   -webkit-appearance: none;
 }

 input[type=number] {
   -moz-appearance: textfield;
 }

 select {
   background: none;
   width: 100%;
   cursor: pointer;
   border: none;
   outline: none;
   border-radius: 0;
   color: var(--fg);
   margin: 0;
   padding: 0;
 }

 select option {
   color: var(--fg);
   margin: 0;
   padding: 0;
   background: var(--bg);
 }

 select:focus {
   outline: none;
 }

 ul,
 li {
   text-decoration: none;
   list-style: none;
 }

 /* Input Elements */
 button,
 input[type=submit],
 input[type=reset],
 div[role=button] {
   background: none;
   color: inherit;
   border: none;
   padding: 0;
   font: inherit;
   cursor: pointer;
   outline: inherit;
   -webkit-appearance: none;
   border-radius: 0;
 }

 input[type=button],
 input[type=button]:focus {
   outline: none;
 }

 a:link,
 a:visited,
 a:link span,
 a:visited span {
   color: inherit;
   cursor: pointer;
   text-decoration: none;
 }

 p {
   margin-bottom: 1rem;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-Thin.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-Thin.woff") format("woff"), url("../fonts/NeueHaasDisplay-Thin.eot") format("embedded-opentype");
   font-weight: 100;
   font-style: normal;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-ThinItalic.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-ThinItalic.woff") format("woff"), url("../fonts/NeueHaasDisplay-ThinItalic.eot") format("embedded-opentype");
   font-weight: 100;
   font-style: italic;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-XThin.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-XThin.woff") format("woff"), url("../fonts/NeueHaasDisplay-XThin.eot") format("embedded-opentype");
   font-weight: 200;
   font-style: normal;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-XThinItalic.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-XThinItalic.woff") format("woff"), url("../fonts/NeueHaasDisplay-XThinItalic.eot") format("embedded-opentype");
   font-weight: 200;
   font-style: italic;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-XXThin.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-XXThin.woff") format("woff"), url("../fonts/NeueHaasDisplay-XXThin.eot") format("embedded-opentype");
   font-weight: 300;
   font-style: normal;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-XXThinItalic.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-XXThinItalic.woff") format("woff"), url("../fonts/NeueHaasDisplay-XXThinItalic.eot") format("embedded-opentype");
   font-weight: 300;
   font-style: italic;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-Roman.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-Roman.woff") format("woff"), url("../fonts/NeueHaasDisplay-Roman.eot") format("embedded-opentype");
   font-weight: 400;
   font-style: normal;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-RomanItalic.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-RomanItalic.woff") format("woff"), url("../fonts/NeueHaasDisplay-RomanItalic.eot") format("embedded-opentype");
   font-weight: 400;
   font-style: italic;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-Mediu.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-Mediu.woff") format("woff"), url("../fonts/NeueHaasDisplay-Mediu.eot") format("embedded-opentype");
   font-weight: 500;
   font-style: normal;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-MediumItalic.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-MediumItalic.woff") format("woff"), url("../fonts/NeueHaasDisplay-MediumItalic.eot") format("embedded-opentype");
   font-weight: 500;
   font-style: italic;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-Bold.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-Bold.woff") format("woff"), url("../fonts/NeueHaasDisplay-Bold.eot") format("embedded-opentype");
   font-weight: 700;
   font-style: normal;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-BoldItalic.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-BoldItalic.woff") format("woff"), url("../fonts/NeueHaasDisplay-BoldItalic.eot") format("embedded-opentype");
   font-weight: 700;
   font-style: italic;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-Black.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-Black.woff") format("woff"), url("../fonts/NeueHaasDisplay-Black.eot") format("embedded-opentype");
   font-weight: 900;
   font-style: normal;
   font-display: swap;
 }

 @font-face {
   font-family: "NHG";
   src: url("../fonts/NeueHaasDisplay-BlackItalic.woff2") format("woff2"), url("../fonts/NeueHaasDisplay-BlackItalic.woff") format("woff"), url("../fonts/NeueHaasDisplay-BlackItalic.eot") format("embedded-opentype");
   font-weight: 900;
   font-style: italic;
   font-display: swap;
 }

 /* Root Elements */
 :root {
   --Fb: 1rem;
   --black: #000000;
   --white: #ffffff;
   --off-white: #ebebeb;
   --grey: #f1f5f2;
   --beige: #c0bda9;
   --blue: #313a73;
   --pink: #f2b4c8;
   --yellow: #ebd96a;
   --green: #2f432d;
   --orange: #c8704e;
   --white-20: #ffffff44;
   --black-20: #00000026;
   --fg: var(--black);
   --bg: var(--white);
   --Pm: 20px;
   --Pg: 28px;
   --negPg: -28px;
   --Ps: 15px;
   --Ph: calc(0.5 * var(--Pm));
   --Pq: calc(0.2 * var(--Ph));
   --Pd: calc(2 * var(--Pm));
   --Pl: 50px;
   --Pxl: 100px;
   --Pxxl: 200px;
   --Hh: auto;
   --Hs: calc(100vh - var(--Hh));
   --Wf: calc(100% + (2 * var(--Pm)));
   --Wg: calc(100% + var(--Pm));
   --Ml: calc(-1 * var(--Pm));
   --Hh: 154px;
   --landscape: 1.38;
   --portrait: 0.9;
   --ease: 0.8s ease;
   --fxxxl: max(calc(calc(200 / 2080) * 100vw), 10px);
   --fxxl: max(calc(calc(130 / 2080) * 100vw), 10px);
   --fxl: max(calc(calc(120 / 2080) * 100vw), 10px);
   --fl: max(calc(calc(60 / 2080) * 100vw), 10px);
   --fm: 25px;
   --fp: max(calc(calc(20 / 2080) * 100vw), 20px);
   --fs: max(calc(calc(16 / 2080) * 100vw), 16px);
   --fms: 13px;
   --fxs: 12px;
   --size: var(--fs);
 }

 @media screen and (min-width: 2080px) {
   :root {
     --Pxl: 180px;
     --Pxxl: 280px;
   }
 }

 @media screen and (max-width: 786px) {
   :root {
     --fxxxl: 150px;
     --fxl: 35px;
     --fl: 30px;
     --fs: 15px;
     --Pg: 20px;
     --Pxl: 50px;
     --negPg: -20px;
   }
 }

 html {
   font-size: var(--size);
   font-weight: 400;
   font-style: normal;
   line-height: 1.25;
   letter-spacing: 0;
   scroll-behavior: smooth;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   font-family: "NHG", Helvetica, sans-serif;
   overflow-x: hidden;
   height: auto;
 }

 body.no-scroll {
   height: 100vh;
   overflow: hidden;
 }

 main {
   min-height: 100vh;
 }

 .visaully-hidden {
   visibility: hidden;
   position: absolute;
   z-index: -10;
   display: none;
 }

 .visaully-hidden {
   display: none;
 }

 /* Details Elements */
 summary,
 summary:focus {
   outline: none;
   list-style-type: none;
   position: relative;
   cursor: pointer;
   transition: all 0.3s;
 }

 details summary::marker,
 details summary::-webkit-details-marker {
   content: "";
   visibility: hidden;
   position: absolute;
   z-index: -10;
   list-style-type: none;
   display: none;
 }

 summary>* {
   width: 100%;
   display: flex;
   justify-content: space-between;
 }

 summary>*::after {
   content: "+";
   margin-left: var(--Pm);
 }

 @media (hover: hover) and (pointer: fine) {
   details summary:hover {
     opacity: 0.5;
   }
 }

 details[open] summary>*::after {
   content: "-";
 }

 details[open] summary~* {
   animation: appear 0.4s ease-in;
   -webkit-animation: appear 0.4s ease-in;
 }

 details.closing summary~* {
   animation: close 0.4s ease-out;
 }

 @keyframes appear {
   0% {
     opacity: 0;
     max-height: 0;
   }

   100% {
     opacity: 1;
     max-height: calc(var(--vh, 1vh) * 100);
   }
 }

 @keyframes close {
   0% {
     opacity: 1;
     max-height: calc(var(--vh, 1vh) * 100);
   }

   100% {
     opacity: 0;
     max-height: 0;
   }
 }

 /* Image/Video Elements */
 .aspectholder>* {
   display: block;
 }

 .aspectholder.controls {
   position: relative;
 }

 .aspectholder.controls .play-btn {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   z-index: 10;
   width: 100px;
   height: 100px;
   background-color: var(--black);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   mix-blend-mode: screen;
 }

 .aspectholder.controls.playing .play-btn {
   display: none;
 }

 video .vsc-controller {
   height: 0 !important;
   width: 0 !important;
   object-fit: unset !important;
 }

 .grid-18 {
   display: grid;
   grid-template-columns: repeat(18, 1fr);
   grid-auto-rows: minmax(min-content, max-content);
   column-gap: 1px;
   row-gap: var(--Pm);
   width: 100%;
 }

 .grid-16 {
   display: grid;
   grid-template-columns: repeat(16, 1fr);
   grid-auto-rows: minmax(min-content, max-content);
   column-gap: 1px;
   row-gap: var(--Pm);
   width: 100%;
 }

 .grid-4 {
   display: grid;
   grid-template-columns: repeat(5, 1fr);
   grid-auto-rows: minmax(min-content, max-content);
   column-gap: var(--Pg);
   row-gap: var(--Pm);
   width: 100%;
 }

 @media screen and (max-width: 1186px) {
   .grid-4 {
     grid-template-columns: repeat(4, 1fr);
   }
 }

 .grid-3 {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   grid-auto-rows: minmax(min-content, max-content);
   column-gap: var(--Pg);
   row-gap: var(--Pm);
   width: 100%;
 }

 .fxxxl {
   font-size: var(--fxxxl);
   line-height: 0.8;
   font-weight: 500;
 }

 .fxxl {
   font-size: var(--fxxl);
   line-height: 0.85;
   font-weight: 500;
 }

 .fxl {
   font-size: var(--fxl);
   line-height: 0.9;
   font-weight: 500;
 }

 .fl,
 .footer .footer-topline .footer-message strong {
   font-size: var(--fl);
   line-height: 1.1;
   font-weight: 500;
 }

 .fm,
 blockquote {
   font-size: var(--fm);
   line-height: 1.2;
   font-weight: 500;
 }

 .fp,
 .article-text strong,
 .person-main-data .person-title strong,
 .privacy-section .page-content strong {
   font-size: var(--fp);
   line-height: 1.2;
   font-weight: 500;
 }

 .fs,
 blockquote footer,
 .project-media-text .project-block-text .fp u,
 .project-media-text .project-block-text .article-text strong u,
 .article-text .project-media-text .project-block-text strong u,
 .project-media-text .project-block-text .person-main-data .person-title strong u,
 .person-main-data .person-title .project-media-text .project-block-text strong u {
   font-size: var(--fs);
   line-height: 1.2;
   font-weight: 400;
   letter-spacing: 0.2px;
 }

 .fxs {
   font-size: var(--fxs);
   line-height: 1.2;
   font-weight: 400;
 }

 strong,
 .bold,
 blockquote footer,
 .project-media-text .project-block-text .fp u,
 .project-media-text .project-block-text .article-text strong u,
 .article-text .project-media-text .project-block-text strong u,
 .project-media-text .project-block-text .person-main-data .person-title strong u,
 .person-main-data .person-title .project-media-text .project-block-text strong u {
   font-weight: 500;
 }

 .upcase {
   text-transform: uppercase;
 }

 .quote {
   text-indent: -0.45em;
 }

 .quote .the-quote {
   text-indent: -0.45em;
 }

 .quote .citation {
   padding-left: 0.45em;
 }

 @supports (hanging-punctuation: first) {
   .quote {
     text-indent: 0;
     hanging-punctuation: first;
   }
 }

 .px {
   padding-left: var(--Pg);
   padding-right: var(--Pg);
 }

 .py {
   padding-top: var(--Pg);
   padding-bottom: var(--Pg);
 }

 .pxs {
   padding-left: calc(var(--Pg) / 2);
   padding-right: calc(var(--Pg) / 2);
 }

 .pys {
   padding-top: calc(var(--Pg) / 2);
   padding-bottom: calc(var(--Pg) / 2);
 }

 .pxl {
   padding-left: calc(var(--Pg) * 2);
   padding-right: calc(var(--Pg) * 2);
 }

 .pyl {
   padding-top: calc(var(--Pg) * 2);
   padding-bottom: calc(var(--Pg) * 2);
 }

 .pr {
   padding-right: var(--Pg);
 }

 .pl {
   padding-left: var(--Pg);
 }

 .pt {
   padding-top: var(--Pg);
 }

 .pb {
   padding-bottom: var(--Pg);
 }

 .prs {
   padding-right: calc(var(--Pg) / 2);
 }

 .pls {
   padding-left: calc(var(--Pg) / 2);
 }

 .pts {
   padding-top: calc(var(--Pg) / 2);
 }

 .pbs {
   padding-bottom: calc(var(--Pg) / 2);
 }

 .prl {
   padding-right: calc(var(--Pg) * 2);
 }

 .pll {
   padding-left: calc(var(--Pg) * 2);
 }

 .ptl {
   padding-top: calc(var(--Pg) * 2);
 }

 .pbl {
   padding-bottom: calc(var(--Pg) * 2);
 }

 .mb-0 {
   margin-bottom: 0;
 }

 .btn {
   display: block;
   width: fit-content;
   display: flex;
   flex-direction: row;
   align-items: baseline;
   column-gap: 15px;
 }

 .btn svg {
   position: relative;
   transition: margin-left 0.5s ease;
 }

 .btn:hover svg {
   margin-left: 5px;
 }

 .parallax-cont {
   overflow: hidden;
   position: relative;
 }

 .parallax-cont .aspectholder {
   position: absolute;
   top: -30%;
   width: 100%;
   height: 110%;
   object-fit: cover;
 }

 .page-blocks {
   min-height: 100vh;
 }

 .shifter {
   width: 50dvw;
   height: 100vh;
   position: fixed;
   z-index: 100000;
   top: 0;
   background-color: var(--black);
 }

 .shifter.uno {
   left: 0;
   transform: translateY(105%);
 }

 .shifter.dos {
   left: 50dvw;
   transform: translateY(-105%);
 }

 @media screen and (max-width: 789px) {
   .shifter {
     width: 100vw;
     height: 100vh;
     position: fixed;
     z-index: 100000;
     top: 0;
     background-color: var(--black);
   }

   .shifter.uno {
     left: 0;
     transform: translateY(105%);
   }

   .shifter.dos {
     right: 0;
     transform: translateY(105%);
   }
 }

 .enter {
   opacity: 0;
   transition: opacity var(--ease), transform var(--ease);
 }

 .enter-child {
   transition: opacity var(--ease), transform var(--ease);
   opacity: 0;
 }

 .enter.entered {
   opacity: 1;
 }

 .enter.entered .enter-child {
   opacity: 1;
   transition: opacity var(--ease) calc(0.2s * var(--stagger));
 }

 .header-bg {
   position: fixed;
   top: 0;
   left: 0;
   height: 110px;
   width: 100vw;
   z-index: 99;
   pointer-events: none;
   background: #000;
   background: linear-gradient(180deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.44) 67%, rgba(0, 0, 0, 0) 100%);
 }

 header {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   z-index: 100;
   width: 100%;
   height: var(--Hh);
   color: var(--fg);
   padding: var(--Pg);
   pointer-events: none;
 }

 header .site_logo {
   pointer-events: all;
   display: block;
   height: 92px;
   width: fit-content;
 }

 header .site_logo * {
   display: block;
   height: 92px;
 }

 header svg path {
   fill: var(--logo);
   transition: fill 0.3s ease;
 }

 header .menu-toggle {
   position: absolute;
   top: var(--Pg);
   right: var(--Pg);
   z-index: 10;
   pointer-events: all;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   color: var(--white);
   transition: opacity 0.3s ease;
   color: var(--menu);
   transition: color 0.3s ease;
   font-weight: 500;
 }
@media (min-width:1200px){
  .home .menu-toggle{
    margin-top: -3px;
  }
}
 header .menu-toggle:hover {
   opacity: 0.5;
 }

 .menu-backdrop {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: 1111;
   background-color: rgba(0, 0, 0, 0.5);
   pointer-events: all;
   opacity: 0;
   pointer-events: none;
 }

 .menu {
   padding: var(--Pg);
   padding-left: 104px;
   position: fixed;
   top: 0;
   right: 0;
   pointer-events: all;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   row-gap: 128px;
   width: 100%;
   height: 100%;
   max-width: 525px;
   text-align: center;
   background-color: var(--white);
   z-index: 11111;
   transform: translateX(110%);
   box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
 }

 .menu-cont {
   display: flex;
   flex-direction: column;
   row-gap: 179px;
 }

 .menu-header {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 .menu-nav {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
 }

 .menu-nav-item {
   transition: opacity 0.3s ease;
 }

 .menu-nav-item:hover {
   opacity: 1;
 }

 .menu-nav:hover .menu-nav-item {
   opacity: 0.4;
 }

 .menu-nav:hover .menu-nav-item:hover {
   opacity: 1;
 }

 .menu-footer {
   display: flex;
   flex-direction: row;
   column-gap: 16px;
 }

 .menu-footer .menu-social-item {
   width: 20px;
   height: 20px;
   transition: opacity 0.3s ease;
 }

 .menu-footer .menu-social-item:hover {
   opacity: 0.4;
 }

 .menu-footer .menu-social-item svg path {
   fill: var(--black);
 }

 .footer {
   position: relative;
   z-index: 1;
   --fg: var(--footerFg);
   --bg: var(--footerBg);
   background-color: var(--footerBg);
   color: var(--footerFg);
 }

 .footer * {
   color: var(--footerFg);
 }

 .footer .footer-topline {
   padding-top: 150px;
   padding-bottom: 120px;
 }

 .footer .footer-topline .footer-message {
   grid-column: 2/6;
   font-weight: 500;
 }

 .footer .footer-topline .footer-message strong {
   text-transform: uppercase;
   line-height: 1;
 }

 .footer .footer-topline .footer-form {
   grid-column: 9/18;
 }

 .footer .footer-bottomline .first {
   grid-column: 2/9;
   display: flex;
   column-gap: 7px;
   align-items: flex-end;
 }

 .footer .footer-bottomline .first nav {
   display: flex;
   column-gap: 7px;
   align-items: center;
 }

 .footer .footer-bottomline .first nav a {
   position: relative;
   padding-left: 7px;
   transition: 0.2s ease;
 }

 .footer .footer-bottomline .first nav a:before {
   content: "";
   position: absolute;
   left: 0;
   top: 10%;
   height: 75%;
   width: 1px;
   background-color: var(--footerFg);
 }

 .footer .footer-bottomline .second {
   grid-column: 9/15;
   color: var(--footerFg);
 }

 .footer .footer-bottomline .second svg {
   rotate: -90deg;
 }

 .footer .footer-bottomline .second button {
   display: flex;
   align-items: center;
   white-space: nowrap;
   transition: opacity 0.2s ease;
 }

 .footer .footer-bottomline .second button:hover {
   opacity: 0.5;
 }

 .footer .footer-bottomline .second button:hover svg {
   margin-left: 0px;
 }

 .footer .footer-bottomline .socials {
   grid-column: 16/18;
   display: flex;
   align-items: center;
   justify-content: flex-end;
   column-gap: 15px;
 }

 .footer .footer-bottomline .socials svg path {
   fill: var(--footerFg);
 }

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

   .menu-nav-item.fl,
   .footer .footer-topline .footer-message strong.menu-nav-item {
     font-size: 55px !important;
   }
 }

 @media screen and (max-width: 1366px) {
   [data-barba-namespace=Home] .footer {
     display: block;
     --fg: var(--footerBg);
     --bg: var(--footerFg);
     color: var(--black);
     background-color: var(--white);
   }

   [data-barba-namespace=Home] .footer * {
     color: var(--black);
   }

   [data-barba-namespace=Home] .footer .footer-bottomline .socials svg path {
     fill: var(--footerFg);
   }

   [data-template=page] header,
   [data-template=project] header,
   [data-template=article] header,
   [data-template=person] header,
   [data-template=connect] header,
   [data-template=article] .project-filter,
   [data-template=project] .project-filter {
     position: absolute;
   }

   header .site_logo * {
     width: 50px;
     height: auto;
   }

   .menu-cont {
     row-gap: 124px;
   }

   .menu-nav-item.fl,
   .footer .footer-topline .footer-message strong.menu-nav-item {
     font-size: 36px !important;
   }

   footer form label {
     column-gap: var(--Ps);
     align-items: flex-start;
   }

   footer input[type=checkbox] {
     width: 16px;
     margin-top: 2px;
   }

   .footer .footer-topline .footer-message,
   .footer .footer-topline .footer-form {
     grid-column: 1/-1;
   }

   .footer .footer-topline {
     padding-top: 60px;
   }

   .footer .footer-bottomline {
     align-items: flex-end;
   }

   .footer .footer-bottomline .first nav a:first-of-type {
     padding-left: 0;
   }

   .footer .footer-bottomline .first nav a:first-of-type:before {
     display: none;
   }

   .footer .footer-bottomline .first {
     grid-column: 1/12;
     flex-direction: column;
     row-gap: 2px;
     text-align: left;
     align-items: flex-start;
   }

   .footer .footer-bottomline .second {
     grid-column: 1/10;
     display: none;
   }

   .footer .footer-bottomline .socials {
     grid-column: 12/-1;
   }
 }

 form {
   display: flex;
   flex-direction: column;
   row-gap: var(--Ps);
 }

 form fieldset,
 form label {
   display: flex;
   flex-direction: row;
   column-gap: var(--Pd);
   align-items: center;
 }

 form label {
   column-gap: var(--Pm);
   cursor: pointer;
 }

 form textarea {
   margin-bottom: var(--Pd);
 }

 form .btn {
   margin-top: var(--Pd);
 }

 input,
 .select-container,
 textarea {
   padding: var(--Ps) 0;
   border-bottom: 1px solid var(--fg);
   transition: opacity 0.2s ease;
   width: 100%;
   position: relative;
 }

 input:hover,
 .select-container:hover,
 textarea:hover {
   opacity: 0.6;
 }

 input .select-arrow,
 .select-container .select-arrow,
 textarea .select-arrow {
   position: absolute;
   right: 0;
   top: 20px;
   bottom: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   rotate: 90deg;
   width: 8px;
   height: 8px;
 }

 input .select-arrow svg,
 .select-container .select-arrow svg,
 textarea .select-arrow svg {
   width: 100%;
   height: 100%;
 }

 input[type=checkbox] {
   appearance: none;
   -webkit-appearance: none;
   -moz-appearance: none;
   width: 16px;
   height: 16px;
   border: 1px solid var(--fg);
   background: transparent;
   position: relative;
   cursor: pointer;
   transition: all 0.2s ease;
   margin: 0;
   padding: 0;
 }

 input[type=checkbox]:checked {
   background: var(--fg);
 }

 input[type=checkbox]:hover {
   border-color: var(--fg);
 }

 .privacy-section {
   min-height: 100vh;
   padding-top: var(--Pxxl);
   padding-bottom: var(--Pxxl);
 }

 .privacy-section .page-title {
   grid-column: 3/-3;
 }

 .privacy-section .page-content {
   grid-column: 8/-3;
   padding-top: var(--Pxl);
 }

 @media screen and (max-width: 789px) {
   .privacy-section .page-title.fxl {
     font-size: 60px;
   }

   .privacy-section .page-title,
   .privacy-section .page-content {
     grid-column: 1/-1;
   }
 }

 .top-line {
   position: relative;
   padding-top: var(--Pg);
 }

 .top-line:after {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 1px;
   background-color: var(--black-20);
 }

 main.search {
   background-color: var(--black);
   color: var(--white);
   --menu: var(--white);
   --logo: var(--white);
 }

 main.search .menu-nav-item,
 main.search .menu-close,
 main.search .searchbtn {
   color: var(--black);
 }

 main.searched {
   background-color: var(--white);
   color: var(--black);
   --menu: var(--black);
   --logo: var(--black);
 }

 main.searched .menu-nav-item {
   color: var(--black);
 }

 .search-section {
   min-height: 100vh;
   padding-top: var(--Pxxl);
   padding-bottom: var(--Pxxl);
 }

 .search-section form {
   grid-column: 2/-2;
 }

 .search-section form input {
   opacity: 0.3;
 }

 .search-section .search-results {
   grid-column: 7/17;
   display: flex;
   flex-direction: column;
   padding-top: var(--Pxl);
   row-gap: 70px;
 }

 .search-section .search-results .top-line:after {
   transition: background-color 0.2s ease;
   background-color: var(--white-20);
 }

 .search-section .search-results .result {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   gap: var(--Ps);
 }

 .search-section .search-results .result-data {
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   row-gap: var(--Ps);
   width: 70%;
 }

 .search-section .search-results .result .result-tag {
   text-align: right;
 }

 .search-section .search-results .result:hover:after {
   background-color: var(--white);
 }

 @media screen and (max-width: 789px) {
   .search-section .page-title.fxl {
     font-size: 60px;
   }

   .search-section .search-results,
   .search-section form {
     grid-column: 1/-1;
   }

   .result-data {
     width: 85% !important;
   }

   .result-tag {
     writing-mode: vertical-rl;
     transform: rotate(-180deg);
   }
 }

 .no-scroll {
   height: 100svh !important;
   overflow: hidden !important;
 }

 [data-barba-namespace="Our People"],
 [data-barba-namespace="Our People"] {
   background-color: var(--black);
 }

 .gallery-container.homepage {
   display: flex;
   align-items: center;
   justify-content: center;
 }

 [data-barba-namespace=Home].on .cont {
   pointer-events: none !important;
 }

 [data-barba-namespace=Home].on .gallery,
 [data-barba-namespace=Home].on header {
   opacity: 1;
   pointer-events: all;
 }

 [data-barba-namespace=Home].on .home-lottie {
   opacity: 0;
   visibility: hidden;
 }

 [data-barba-namespace=Home] .gallery,
 [data-barba-namespace=Home] header {
   opacity: 0;
   pointer-events: none;
   transition: 0.6s opacity ease !important;
 }

 [data-barba-namespace=Home] .gallery {
   position: relative;
   /* margin: auto; */
   top: 50%;
   transform: translate(-50%, -50%);
   left: 50%;
   width: 100vw;
   height: unset;
   width: 100vw;
   height: 100vh;
 }

 [data-barba-namespace=Home] .home-lottie {
   position: fixed;
   top: 50%;
   left: 50%;
   width: 100vw;
   height: auto;
   transform: translate(-50%, -50%);
   position: absolute !important;
   top: 50% !important;
   left: 50% !important;
   width: 130vw;
   height: auto;
   transform: translate(-50%, -50%) !important;
   transition: opacity 0.5s ease 0.1s, visibility 0.5s ease 0.1s;
 }

 .anchor-nav {
   position: absolute;
   z-index: 99;
 }

 .anchor-nav-inner {
   grid-column: 3/12;
   padding: var(--Pg) 0;
   display: flex;
   column-gap: var(--Ps);
   color: var(--menu);
 }

 .anchor-nav-inner button {
   font-weight: 500;
   transition: opacity 0.15s ease;
 }

 .anchor-nav-inner button:hover {
   opacity: 0.5;
 }

 .section {
   position: relative;
 }

 .section.min-true {
   min-height: 100vh;
 }

 @media screen and (min-height: 900px) {
   .section.min-true .section.min-true {
     min-height: 900px;
   }
 }

 .section.bg-black {
   background-color: var(--black);
   color: var(--white);
 }

 .section-text-inner {
   max-width: 550px;
 }

 .section-text {
   position: relative;
   padding-top: var(--Pxl);
   z-index: 1;
   row-gap: var(--Pl);
   display: flex;
   flex-direction: column;
   grid-column: 2/14;
 }

 .section-text.pt-true {
   padding-top: 170px;
 }

 .lottie-container {
   position: absolute;
   z-index: 2;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
   pointer-events: none;
 }

 .lottie-holder {
   pointer-events: none;
   position: absolute;
   z-index: 2;
   width: 40%;
   max-width: 670px;
   min-width: 250px;
 }

 .lottie-holder.Corner_White,
 .lottie-holder.Corner_Black {
   width: 30%;
 }

 .lottie-holder.rotate {
   rotate: -90deg;
 }

 .lottie-holder.flip {
   transform: scaleY(-1);
 }

 .lottie-holder.Line_White,
 .lottie-holder.Line_Black,
 .lottie-holder.Curve_dot_White,
 .lottie-holder.Curve_dot_Black {
   width: 15%;
   max-width: 300px !important;
   min-width: 100px !important;
   max-height: 60%;
 }

 .media-text {
   width: 100%;
   height: 100%;
   position: relative;
   overflow: hidden;
 }

 .media-text strong {
   text-transform: uppercase;
 }

 .media-text.min-true .media-text-text {
   min-height: 100vh;
 }

 .media-text-text {
   position: relative;
   padding-top: var(--Pxl);
   padding-bottom: var(--Pxl);
   z-index: 1;
   background: linear-gradient(0deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%);
   row-gap: var(--Pl);
 }

 .media-text-text.pt-true {
   padding-top: 190px;
 }

 .media-text-text-heading {
   grid-column: 2/14;
 }

 .media-text-text-heading.fl {
   grid-column: 2/span 6;
 }

 .media-text-text-inner {
   grid-column: 2/span 6;
 }

 .media-text-text.pl-true .media-text-text-heading {
   grid-column: 2/14;
 }

 .media-text-text.pl-true .media-text-text-heading.fl {
   grid-column: 3/span 6;
 }

 .media-text-text.pl-true .media-text-text-inner {
   grid-column: 3/span 5;
 }

 .media-text-media {
   width: 100%;
   height: 100%;
   position: absolute;
   inset: 0;
   z-index: 0;
   overflow: hidden;
 }

 .media-text-media .aspectholder {
   width: 100%;
   height: 100%;
 }

 .media-text-media .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .media-text.sbs .media-text-text.grid-18.px {
   grid-column: 2/7;
   display: flex;
   flex-direction: column;
   background: none;
   padding-left: 0;
   padding-right: 0;
 }

 .media-text.sbs .media-text-media {
   grid-column: 10/18;
   padding: var(--Pxl) 0;
 }

 .media-text-alt {
   grid-column: 1/-1;
   padding-bottom: var(--Pxl);
 }

 .media-text-alt .aspectholder {
   grid-column: 4/10;
   width: 100%;
   aspect-ratio: 0.95;
 }

 .media-text-alt .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .media-text-alt-inner {
   grid-column: 11/17;
 }

 .data-list {
   padding-bottom: var(--Pxl);
   row-gap: var(--Pxl);
 }

 .data-list-list {
   padding-bottom: var(--Pl);
   display: grid;
 }

 .data-list-list.row {
   grid-column: 4/18;
   grid-template-columns: repeat(3, 1fr);
   grid-auto-rows: minmax(min-content, max-content);
   column-gap: var(--Pg);
   row-gap: var(--Pg);
   width: 100%;
 }

 .data-list-list.row.narrow {
   grid-template-columns: repeat(4, 1fr);
 }

 .data-list-list.row .data-list-item {
   flex: 1;
 }

 .data-list-list.grid {
   padding-top: var(--Pxl);
   grid-column: 5/17;
   grid-template-columns: repeat(11, 1fr);
   column-gap: 1px;
   row-gap: var(--Pxl);
 }

 .data-list-list.grid .data-list-item:nth-of-type(2n + 1) {
   grid-column: 1/6;
 }

 .data-list-list.grid .data-list-item-text {
   width: calc(100% - 90px);
 }

 .data-list-list.grid .data-list-item:nth-of-type(2n + 2) {
   grid-column: 7/12;
 }

 .data-list-item {
   display: flex;
   flex-direction: column;
   row-gap: var(--Pg);
 }

 .data-list-item-text,
 .data-list-item-inner {
   display: flex;
   flex-direction: column;
   row-gap: 40px;
 }

 .data-list-item-inner {
   row-gap: 50px;
   height: 100%;
   justify-content: space-between;
 }

 .data-list-item .aspectholder {
   width: 100%;
   aspect-ratio: 1.33;
 }

 .data-list-item .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
   aspect-ratio: 1.33;
 }

 .media-block {
   width: 100%;
   height: 100%;
 }

 .media-block .caption {
   padding-top: 10px;
 }

 .media-block .aspectholder {
   width: 100%;
   height: 100%;
 }

 .media-block .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .timeline {
   padding-top: var(--Pxl);
   padding-bottom: var(--Pxl);
   height: 100%;
   display: flex;
   flex-direction: row;
   align-items: center;
   cursor: grab;
 }

 .timeline:active {
   cursor: grabbing;
 }

 .timeline .timeline-swiper {
   width: 100vw;
   overflow: hidden;
 }

 .timeline .timeline-swiper swiper-container {
   width: 100%;
   height: 100%;
 }

 .timeline .timeline-swiper swiper-slide {
   max-width: 260px;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pg);
   padding: 0 var(--Pg);
 }

 .timeline .timeline-swiper swiper-slide:first-of-type {
   margin-left: 100px;
 }

 .timeline .timeline-swiper swiper-slide:last-of-type {
   margin-right: 100px;
 }

 .timeline .timeline-swiper swiper-slide:nth-of-type(2n + 1) .year.two {
   opacity: 0;
 }

 .timeline .timeline-swiper swiper-slide:nth-of-type(2n + 2) .year.one {
   opacity: 0;
 }

 .timeline .timeline-swiper swiper-slide .year {
   width: 100%;
   height: 300px;
   aspect-ratio: 1;
   position: relative;
   display: flex;
   align-items: flex-start;
   justify-content: flex-end;
   writing-mode: vertical-lr;
   font-size: 130px;
   line-height: 0.7;
 }

 .timeline .timeline-swiper swiper-slide .year span {
   display: block;
 }

 .timeline .timeline-swiper swiper-slide .year.two {
   justify-content: flex-start;
 }

 .timeline .timeline-cursor {
   position: absolute;
   width: var(--Pl);
   height: var(--Pl);
   background: white;
   border: 2px solid white;
   border-radius: 50%;
   pointer-events: none;
   transform: translate(var(--Ps), var(--Ps)) scale(0.8);
   transition: opacity 0.2s, transform 0.1s;
   opacity: 0;
   z-index: 9999;
 }

 .timeline .timeline-cursor:after {
   content: "Drag";
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   display: flex;
   color: var(--black);
   font-size: 12px;
   font-weight: 500;
   line-height: 1;
 }

 .timeline:hover .timeline-cursor {
   opacity: 1;
   transform: translate(var(--Ps), var(--Ps)) scale(1);
 }

 .scrolling-list-list {
   grid-column: 2/13;
   height: 100vh;
   min-height: 900px;
   overflow: hidden;
 }

 .scrolling-list-text {
   grid-column: 14/18;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pg);
   height: 100%;
   padding: var(--Pxl) 0;
   position: relative;
   justify-content: flex-end;
 }

 .media-hovers {
   display: flex;
 }

 .media-hovers .media-item {
   flex: 1;
   position: relative;
 }

 .media-hovers .media-item.bg-black {
   background-color: var(--black);
   color: var(--white);
 }

 .media-hovers .media-item.bg-white {
   background-color: var(--white);
   color: var(--black);
 }

 .media-hovers .media-item .aspectholder {
   opacity: 0;
   width: 100%;
   height: 100%;
   transition: opacity 0.5s ease;
 }

 .media-hovers .media-item .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .media-hovers .media-item-inner {
   position: absolute;
   z-index: 1;
   inset: 0;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   text-align: center;
 }

 .media-hovers .media-item:hover .aspectholder {
   opacity: 1;
 }

 .awards {
   padding-top: var(--Pxl);
   padding-bottom: var(--Pxl);
   display: flex;
   flex-direction: column;
   row-gap: var(--Pxl);
 }

 .awards-header-heading {
   grid-column: 2/7;
 }

 .awards-header-text {
   grid-column: 13/18;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pg);
 }

 .awards-header-text .fp,
 .awards-header-text .person-main-data .person-title strong,
 .person-main-data .person-title .awards-header-text strong,
 .awards-header-text .article-text strong,
 .article-text .awards-header-text strong {
   line-height: 1 !important;
 }

 .awards .awards-list {
   row-gap: 0;
 }

 .awards .awards-list-item {
   grid-column: 2/18;
   padding: calc(var(--Pl) / 2) 0;
   position: relative;
 }

 .awards .awards-list-item:first-of-type:before {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   height: 1px;
   width: 100%;
   background-color: var(--fg);
   opacity: 0.15;
 }

 .awards .awards-list-item:after {
   content: "";
   position: absolute;
   bottom: 0;
   left: 0;
   height: 1px;
   width: 100%;
   background-color: var(--fg);
   opacity: 0.15;
 }

 .awards .awards-list-item.hidden {
   display: none;
 }

 .awards .awards-list-item-date {
   grid-column: 1/1;
 }

 .awards .awards-list-item-project {
   grid-column: 2/8;
 }

 .awards .awards-list-item-award {
   grid-column: 8/15;
 }

 .awards .awards-list-item-place {
   grid-column: 15/17;
 }

 .awards-load-more {
   grid-column: 2/12;
   display: flex;
   justify-content: flex-start;
   padding-top: var(--Pl);
 }

 .awards-load-more .load-more-btn svg {
   transform: rotate(90deg);
   position: relative;
 }

 .awards-load-more .load-more-btn:hover {
   opacity: 0.5;
 }

 .awards-load-more .load-more-btn:hover svg {
   margin-left: 0;
 }

 .journal-grid-wrapper {
   padding-bottom: var(--Hh);
 }

 .journal-featured {
   padding-top: calc(var(--Pg) + var(--Hh));
   padding-bottom: var(--Hh);
 }

 .journal-featured .article-card-featured {
   grid-column: 2/18;
   aspect-ratio: 2.9;
   display: flex;
   position: relative;
   column-gap: var(--Pl);
   color: var(--fg);
 }

 .journal-featured .article-card-featured .background {
   background-color: var(--bg);
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   z-index: 0;
   transition: all 0.3s ease;
 }

 .journal-featured .article-card-featured-data {
   position: relative;
   z-index: 1;
   flex: 1;
   height: 100%;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
 }

 .journal-featured .article-card-featured-data .col {
   display: flex;
   flex-direction: column;
   row-gap: var(--Pg);
 }

 .journal-featured .article-card-featured-data .col .read-more {
   position: relative;
   width: fit-content;
 }

 .journal-featured .article-card-featured-data .col .read-more::after {
   width: 100%;
   height: 1px;
   content: "";
   position: absolute;
   bottom: 0;
   left: 0;
   background-color: var(--fg);
   opacity: 0.5;
   transition: all 0.3s ease;
 }

 .journal-featured .article-card-featured-media {
   position: relative;
   z-index: 1;
   flex: 1;
   height: 100%;
 }

 .journal-featured .article-card-featured-media .aspectholder {
   width: 100%;
   height: 100%;
   overflow: hidden;
 }

 .journal-featured .article-card-featured-media .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: all 0.3s ease;
 }

 @media (max-width:768px) {
   .journal-featured .article-card-featured-media .aspectholder img {
     max-height: 220px;
   }
 }

 .journal-featured .article-card-featured:hover .background {
   transform: scale(1.015);
 }

 .journal-featured .article-card-featured:hover .article-card-featured-data .col .read-more::after {
   background-color: var(--fg);
 }

 .journal-grid {
   padding-bottom: var(--Pg);
   grid-column: 2/18;
 }

 .journal-grid.grid-3 {
   gap: var(--Pl);
 }

 @media screen and (min-width: 1900px) {
   .journal-grid.grid-3 {
     grid-template-columns: repeat(4, 1fr);
   }
 }

 @media screen and (max-width: 1400px) {
   .journal-grid.grid-3 {
     grid-template-columns: repeat(2, 1fr);
   }
 }

 .article-card {
   aspect-ratio: 1;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   position: relative;
   color: var(--fg) !important;
 }

 .article-card .background {
   background-color: var(--bg);
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   z-index: 0;
   transition: all 0.3s ease;
 }

 .article-card-data {
   position: relative;
   z-index: 1;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pm);
   font-weight: 500;
 }

 .article-card-data * {
   font-weight: 500;
 }

 .article-card-media {
   position: relative;
   z-index: 1;
   display: flex;
 }

 .article-card-media .fxs {
   flex: 1;
 }

 .article-card-media .media-holder {
   flex: 1;
   aspect-ratio: 1;
   display: flex;
   justify-content: flex-end;
 }

 .article-card-media .media-holder .aspectholder {
   width: 90%;
   height: 90%;
 }

 .article-card-media .media-holder .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: contain;
   object-position: right top;
   max-height: 150px;
 }

 .article-card .read-more {
   position: relative;
   width: fit-content;
 }

 .article-card .read-more::after {
   width: 100%;
   height: 1px;
   content: "";
   position: absolute;
   bottom: 0;
   left: 0;
   background-color: var(--fg);
   opacity: 0.5;
   transition: all 0.3s ease;
 }

 .article-card:hover .background {
   transform: scale(1.015);
 }

 .article-card:hover .read-more::after {
   background-color: var(--fg);
 }

 .articles-load-more {
   grid-column: 2/-2;
   padding-bottom: var(--Pm);
   display: flex;
   justify-content: flex-start;
   padding-top: var(--Pl);
 }

 .articles-load-more .load-more-btn svg {
   transform: rotate(90deg);
   position: relative;
 }

 .articles-load-more .load-more-btn:hover {
   opacity: 0.5;
 }

 .articles-load-more .load-more-btn:hover svg {
   margin-left: 0;
 }

 .article-main {
   background-color: var(--bg);
   display: flex;
   color: var(--fg) !important;
 }

 .article-main-media {
   width: 50vw;
   position: relative;
 }

 .article-main-media .aspectholder {
   width: 100%;
   height: 100vh;
   position: sticky;
   top: 0;
 }

 .article-main-media .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .article-main-data {
   width: 50vw;
   min-height: 100vh;
   padding-top: calc(70px + var(--Hh));
   padding-left: 90px;
   padding-right: 120px;
 }

 .article-main-data .article-title {
   display: flex;
   flex-direction: column;
   row-gap: 80px;
 }

 .article-main-data .article-title .deets {
   display: flex;
   align-items: center;
   column-gap: 10px;
   padding-top: 15px;
   border-top: 1px solid var(--fg);
 }

 .article-main-data .article-title .deets .square {
   display: block;
   position: relative;
   bottom: 1px;
   width: 9px;
   height: 9px;
   background-color: var(--fg);
 }

 .article-main-data .article-blocks {
   padding-top: 80px;
   padding-bottom: calc(70px + var(--Hh));
   display: flex;
   flex-direction: column;
   row-gap: 80px;
 }

 .article-main-data .article-blocks .connect-with {
   display: flex;
   justify-content: space-between;
   padding-top: var(--Ps);
   border-top: 1px solid var(--fg);
 }

 .article-main-data .article-blocks .connect-with a {
   transition: opacity 0.2s ease;
 }

 .article-main-data .article-blocks .connect-with a:hover {
   opacity: 0.2;
 }

 .article-text {
   max-width: 1000px;
 }

 blockquote {
   display: flex;
   flex-direction: column;
   padding-left: 90px;
 }

 blockquote footer {
   background-color: transparent;
   color: var(--fg);
   padding-top: 40px;
 }

 .person-main {
   min-height: 100vh;
 }

 .person-main-data {
   grid-column: 3/9;
   min-height: 100vh;
   padding-top: calc(70px + var(--Hh));
   padding-bottom: calc(70px + var(--Hh));
 }

 .person-main-data a {
   transition: opacity 0.2s ease;
 }

 .person-main-data a:hover {
   opacity: 0.6;
 }

 .person-main-data .person-title {
   display: flex;
   flex-direction: column;
   row-gap: var(--Pl);
 }

 .person-main-data .deets {
   display: flex;
   flex-direction: row;
   column-gap: 15px;
   align-items: center;
 }

 .person-main-data .deets svg {
   width: 20px;
   height: 20px;
 }

 .person-main-data .location {
   display: flex;
   flex-direction: column;
   row-gap: var(--Pm);
 }

 .person-main-data .location-studios {
   display: flex;
   flex-direction: column;
   row-gap: var(--Pm);
 }

 .person-main-data .location-contacts {
   display: flex;
   flex-direction: column;
 }

 .person-main-data .location-contacts a {
   width: fit-content;
 }

 .person-main-data .location-contacts a:last-of-type {
   border-bottom: 1px solid var(--black-20);
 }

 .person-main-media {
   grid-column: 10/-1;
   position: relative;
 }

 .person-main-media .aspectholder {
   position: sticky;
   top: 0;
   width: 100%;
   height: 100vh;
 }

 .person-main-media .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .view-switcher {
   position: fixed;
   z-index: 100;
   top: 0;
   left: 10%;
   padding: var(--Pg);
   color: var(--white);
   display: flex;
   column-gap: 13px;
 }

 .view-switcher .view-btn {
   opacity: 0.5;
   transition: opacity 0.2s ease, transform 0.2s ease;
   pointer-events: all;
 }

 .view-switcher .view-btn.active,
 .view-switcher .view-btn:hover {
   opacity: 1;
   transform: scale(1.1);
 }

 .view-switcher .view-btn.active {
   pointer-events: none;
 }

 .discover-section {
   padding-top: 200px;
   padding-bottom: 200px;
   background-color: var(--bg);
   color: var(--fg);
   position: relative;
 }

 .discover-section-text {
   grid-column: 2/10;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pl);
 }

 .discover-section-text .btn {
   color: var(--fg);
 }

 .discover-section-text .row {
   display: flex;
 }

 .discover-section-text swiper-container {
   overflow: hidden;
   height: var(--fl) !important;
   margin-left: 10px;
 }

 .discover-section-text swiper-slide {
   height: var(--fl) !important;
 }

 .project-filter {
   position: absolute;
   z-index: 102;
   color: var(--menu);
   right: 7%;
   width: 32%;
   padding: calc(var(--Pg) - 2px) 0;
 }

 .project-filter .filter-btn {
   border-bottom: 1px solid var(--menu);
   color: var(--menu);
   padding: 2px 0;
   width: 100%;
   display: flex;
   justify-content: space-between;
 }

 .project-filter .filter-btn svg {
   rotate: 90deg;
   width: 10px;
 }

 .project-filter .filter-btn.active {
   color: var(--black);
   border-bottom: 1px solid var(--black);
 }

 .project-filter .filter-btn.active svg {
   rotate: -90deg;
 }

 .filters-overlay {
   position: fixed;
   background-color: var(--white);
   width: 100vw;
   height: 100vh;
   top: 0;
   left: 0;
   z-index: 101;
   opacity: 0;
   visibility: hidden;
   transition: opacity 0.5s ease, visibility 0.5s ease;
   color: var(--black);
 }

 .filters-overlay.active {
   opacity: 1;
   visibility: visible;
 }

 .filters-overlay-header {
   padding: var(--Pg);
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   align-items: flex-start;
   position: relative;
   z-index: 1;
 }

 .filters-overlay-header .site_logo {
   width: fit-content;
 }

 .filters-overlay .filter-imgs {
   grid-column: 1/11;
   width: 55%;
   height: 100%;
   position: absolute;
   top: 0;
   left: 0;
 }

 .filters-overlay .filter-imgs-img {
   height: 100%;
   width: 100%;
   position: absolute;
   top: 0;
   left: 0;
   opacity: 0;
   transition: opacity 0.5s ease;
 }

 .filters-overlay .filter-imgs-img.active {
   opacity: 1;
   transition: opacity 0.3s ease;
 }

 .filters-overlay .filter-imgs-img .aspectholder {
   width: 100%;
   height: 100%;
 }

 .filters-overlay .filter-imgs-img .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .filters-overlay .filter-container {
   grid-column: 12/-1;
 }

 .filters-overlay .filter-container-btns {
   display: flex;
   flex-direction: row;
   column-gap: 15px;
   padding-bottom: var(--Pl);
 }

 .filters-overlay .filter-container-btns button {
   color: var(--black-20);
   transition: color 0.2s ease;
 }

 .filters-overlay .filter-container-btns button.active,
 .filters-overlay .filter-container-btns button:hover {
   color: var(--black);
 }

 .filters-overlay .filter-container-lists {
   line-height: 1;
 }

 .filters-overlay .filter-container-lists .filter-list {
   display: none;
   row-gap: 10px;
 }

 .filters-overlay .filter-container-lists .filter-list.active {
   display: flex;
   flex-direction: column;
 }

 .filters-overlay .filter-container-lists .filter-list li a {
   transition: color 0.2s ease;
 }

 .filters-overlay .filter-container-lists .filter-list li a:hover,
 .filters-overlay .filter-container-lists .filter-list li a.active {
   opacity: 0.15;
 }

 .project-main-media {
   width: 100vw;
   height: 87vh;
 }

 .project-main-media * {
   object-fit: cover;
   width: 100%;
   height: 100%;
 }

 .project-main-data {
   padding: 100px var(--Pg);
   row-gap: var(--Pxl);
 }

 .project-main-data .lil-link {
   text-decoration: underline;
 }

 .project-main-data .lil-link:hover {
   text-decoration: none;
 }

 .project-main-data-heading {
   grid-column: 2/18;
 }

 .project-main-data-title {
   grid-column: 4/10;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pg);
 }

 .project-main-data-title .hide {
   display: none;
 }

 .project-main-data-info {
   padding: var(--Pm) 0;
   border-top: 1px solid var(--black-20);
   border-bottom: 1px solid var(--black-20);
   grid-column: 12/18;
   display: flex;
 }

 .project-main-data-info .left,
 .project-main-data-info .right {
   flex: 1;
   display: flex;
   flex-direction: column;
   row-gap: var(--Ps);
 }

 .project-main-data-info .left-col,
 .project-main-data-info .right-col {
   display: flex;
   flex-direction: column;
 }

 .project-blocks {
   grid-column: 1/-1;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pxl);
 }

 .project-media-text .project-block-left {
   grid-column: 4/10;
   width: 100%;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pm);
 }

 .project-media-text .project-block-left.quote {
   grid-column: 2/9;
 }

 .project-media-text .project-block-left .quote {
   display: flex;
   flex-direction: column;
   row-gap: var(--Ps);
 }

 .project-media-text .aspectholder {
   grid-column: 4/10;
   width: 100%;
 }

 .project-media-text .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .project-media-text .project-block-text {
   grid-column: 12/-2;
   display: flex;
   flex-direction: column;
   row-gap: var(--Pg);
 }

 .project-media-text .project-block-text .extra {
   border-top: 1px solid var(--black);
   padding-top: var(--Ps);
   margin-top: var(--Ps);
 }

 .project-media-text .project-block-text .extra a {
   text-decoration: underline;
 }

 .project-media-text .project-block-text .extra a:hover {
   text-decoration: none;
 }

 .media-carouselblock {
   position: relative;
 }

 .media-carouselblock swiper-container {
   height: 600px;
 }

 .media-carouselblock swiper-slide {
   width: auto;
   height: 100%;
 }

 .media-carouselblock swiper-slide .aspectholder {
   width: 100%;
   height: 100%;
 }

 .media-carouselblock swiper-slide .aspectholder * {
   width: 100%;
   height: 100%;
   object-fit: cover;
 }

 .media-carouselblock .swiper-pagination-progressbar {
   background-color: #eee;
   height: 4px;
   /* or change to `width` for vertical */
   top: auto;
   /* to override Swiper default if needed */
   bottom: 0;
 }

 .swiper-container {
   width: 100%;
   height: 100%;
   position: relative;
   padding-bottom: calc(var(--Pxl));
   display: flex;
   flex-direction: column;
   row-gap: var(--Pxl);
 }

 swiper-container::part(container) {
   padding-bottom: var(--Pl);
   position: relative;
 }

 swiper-container::part(pagination) {
   position: absolute;
   top: unset;
   bottom: 0;
   width: calc(100% - var(--Pxl) * 2);
   margin: 0 var(--Pxl);
   height: 2px;
   background: rgba(0, 0, 0, 0.15);
   --swiper-pagination-color: var(--black);
 }

 @media screen and (max-width: 789px) {
   swiper-container::part(pagination) {
     width: calc(100% - var(--Pg) * 2);
     margin: 0 var(--Pg);
   }
 }

 .project-recognition {
   padding-bottom: var(--Pxl);
 }

 .project-recognition-heading {
   display: flex;
   flex-direction: row;
   column-gap: var(--Ps);
 }

 .project-recognition-heading button {
   color: var(--black-20);
   transition: color 0.2s ease;
 }

 .project-recognition-heading button.active,
 .project-recognition-heading button:hover {
   color: var(--black);
 }

 .project-recognition-list {
   grid-column: 12/-2;
   display: flex;
   flex-direction: column;
   row-gap: 20px;
 }

 .project-recognition-item {
   display: flex;
   flex-direction: column;
   row-gap: var(--Ps);
   display: none;
 }

 .project-recognition-item.active {
   display: flex;
 }

 .project-recognition-item-title {
   display: flex;
   padding-top: var(--Ps);
   justify-content: space-between;
   border-top: 1px solid var(--black-20);
   column-gap: var(--Pg);
 }

 .project-recognition-item-title .bit {
   display: flex;
   column-gap: var(--Pg);
 }

 .project-recognition-item-title .bat {
   text-align: right;
 }

 .project-recognition-item-link {
   display: flex;
   padding-top: var(--Ps);
   border-top: 1px solid var(--black-20);
   position: relative;
 }

 .project-recognition-item-link a {
   text-decoration: underline;
   line-height: 1;
 }

 .connect-heading {
   padding-top: calc(var(--Pl) + var(--Hh));
   padding-bottom: var(--Pxl);
 }

 .connect-heading-text {
   grid-column: 3/9;
 }

 .connect-content {
   row-gap: var(--Pxl);
   padding-bottom: var(--Pxl);
 }

 .connect-content-item {
   grid-column: 9/17;
   display: flex;
   flex-direction: row;
   flex-wrap: wrap;
   column-gap: 40px;
   row-gap: var(--Pg);
   justify-content: space-between;
 }

 .connect-content-item .secondary {
   padding-top: 22px;
 }

 .connect-content-item a {
   position: relative;
   width: fit-content;
 }

 .connect-content-item a:after {
   content: "";
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   height: 1px;
   background-color: var(--black-20);
   transition: background-color 0.5s ease;
 }

 .connect-content-item a:hover:after {
   background-color: var(--black);
 }

 .connect-content-item .heading {
   width: 100%;
 }

 .connect-content-item .flex-grid {
   width: 100%;
   display: flex;
   flex-direction: row;
   flex-wrap: wrap;
   justify-content: space-between;
   column-gap: 40px;
   row-gap: 75px;
 }

 .connect-content-item-i {
   width: calc(50% - 20px);
   display: flex;
   flex-direction: column;
   justify-content: space-between;
 }

 .connect-content-item-i.connect-enquiries {
   justify-content: flex-start;
 }

 .connect-content-item-i * {
   display: flex;
   flex-direction: column;
 }

 .connect-content-item-i .heading {
   padding-bottom: var(--Ps);
 }

 .connect-content-item-i .connect-enquiries-contact {
   padding-bottom: var(--Ps);
 }

 .connect-content-item .links {
   display: flex;
   flex-direction: column;
 }

 .connect-content-item .link {
   position: relative;
   width: fit-content;
 }

 .connect-content-item .link:after {
   content: "";
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   height: 1px;
   background-color: var(--black-20);
   transition: background-color 0.5s ease;
 }

 .connect-content-item .link:hover:after {
   background-color: var(--black);
 }

 .connect-content-item.connect-form {
   row-gap: var(--Pxl);
   flex-direction: column;
 }

 .connect-content-item.connect-careers {
   flex-direction: column;
 }

 .connect-content-item .ack-text {
   width: 88%;
 }

 .connect-content-item .top-line {
   position: relative;
   padding-top: var(--Pg);
 }

 .connect-content-item .top-line:after {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 1px;
   background-color: var(--black-20);
 }

 .iframe-block iframe {
   width: 100%;
   height: 100%;
   aspect-ratio: 16/9;
 }


 /* SUSTAIBILITY BLOCK */
 /* @media (min-width:992px){
   .reconciliation figure.aspectholder img {
      max-height: 680px;
  }

  .reconciliation  .media-text-text.enter.grid-18.px.entered {
      padding-bottom: 300px;
  }
  .reconciliation  figure.aspectholder img {
      max-width: 615px;
      margin-top: 160px;
  }

  .reconciliation  .fp {
      font-size: 16px;
      font-weight: 400;
  }
} */
 /* SUSTAIBILITY BLOCK */

 /* WHAT WE DO */
 .design-vision-delivered-with-precision .media-text-text.pl-true .media-text-text-heading {
   font-size: var(--fl);
   line-height: 1.1;
   font-weight: 500;
   grid-column: 3 / span 6;
 }

 .data-list.bg-white {
   background: #fff;
 }

 /* WHAT WE DO */
 .page-template-journal .load-more-wrapper {
   display: none;
 }

 /* WYSIWYG */
 .wysiwyg.align-right .media-text-text-inner {
   grid-column: 8 / -3;
 }

 @media screen and (max-width: 789px) {
   .wysiwyg.align-right .media-text-text-inner {
     grid-column: 1 / -1;
   }

 }

 .wysiwyg .fp {
   font-weight: 400;
 }

 .wysiwyg.white .media-text-text {
   background: #fff;
 }

 .wysiwyg h1 {
   font-size: 42px;
   font-weight: 500;
   margin-bottom: 30px;
 }

 .wysiwyg h2 {
   font-size: 32px;
   font-weight: 500;
   margin-bottom: 30px;
 }

 @media (max-width:768px) {
   .wysiwyg h1 {
     font-size: 32px;
   }

   .wysiwyg h2 {
     font-size: 22px;
   }
 }

 /* WYSIWYG DETAIL */
 .wysiwyg-detail {
   padding-top: 80px;
   padding-bottom: calc(70px + var(--Hh));
   display: flex;
   flex-direction: column;
   row-gap: 0;
 }

 .wysiwyg.wysiwyg-detail blockquote {
   display: flex;
   flex-direction: column;
   padding-left: 90px;
 }

 /* .wysiwyg.wysiwyg-detail img {
   margin-bottom: 50px;
 } */

 .page-template-journal .load-more-wrapper {
   display: none;
 }

 .wysiwyg-detail .article-blocks {
   padding-top: 0;
 }

 @media screen and (max-width: 786px) {
   .page-template-template-flexible-php .lottie-holder.uno.Line_White {
     right: 18% !important;
     bottom: 65% !important;
   }
 }

 .wysiwyg-detail strong {
   font-size: var(--fp);
   line-height: 1.2;
   font-weight: 500;
 }

 .white swiper-container::part(pagination) {
   background: rgba(255, 255, 255, 0.15);
   --swiper-pagination-color: var(--white);
 }

 .post-carousel {
   margin: 80px auto;
 }

 .connect-linkedin {
   display: flex;
   justify-content: space-between;
   padding-top: var(--Ps);
   border-top: 1px solid var(--fg);
 }

 .connect-linkedin {
   margin-top: 80px;
 }

 .post-blocks strong {
   font-size: var(--fp);
   line-height: 1.2;
   font-weight: 500;
 }

 .connect-with {
   display: none !important;
 }

 .connect-with.connect-linkedin {
   display: flex !important;
 }

 .wysiwyg-detail .article-blocks {
   padding-bottom: 0;
 }

 .wysiwyg .fp {
   font-weight: 500;
 }

 .wysiwyg ul li {
   list-style: disc;
   list-style-position: outside;
 }

 .wysiwyg ul,
 .wysiwyg ol {
   margin-bottom: 16px;
 }

 .wysiwyg p+ul,
 .wysiwyg p+ol {
   margin-top: -12px;
   padding-left: 16px;
 }

 .wysiwyg ol li {
   list-style: auto;
   list-style-position: outside;
 }

 .explore-off {
   display: none;
 }

 h4 {
   font-size: 20px;
   line-height: 20px;
 }

 .small_heading {
   font-size: var(--fl);
   line-height: 1.1;
   font-weight: 500;
   grid-column: 2 / span 6;
 }

 [data-barba-namespace=Home] .gallery {
   transition: all 1.2s linear !important;
 }

 /* @media (max-width:575px) {
   header .menu-toggle {
     padding-top: 3px;
   }
 } */
@media (min-width:786px) and (max-width:1100px){
    .project-filter {
      margin-right: 20px;
  }
}