@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-MediumItalic.otf') format("opentype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-Bold.otf') format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-Medium.otf') format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-BoldItalic.otf') format("opentype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-Regular.otf') format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-LightItalic.otf') format("opentype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-Light.otf') format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Neue Montreal;
  src: url('../fonts/NeueMontreal-Italic.otf') format("opentype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

:root {
  --color--black: #030303;
  --typography--body: "Neue Montreal", sans-serif;
  --color--grey: #8d98af;
  --text-r--size: 16px;
  --text-r--height: 24px;
  --text-r--size-mobile: 16px;
  --text-r--height-mobile: 24px;
  --typography--heading: "Neue Montreal", sans-serif;
  --color--white: white;
  --h1--size: 64px;
  --h1--height: 80px;
  --h1--letter-spacing: .5px;
  --h1--size-mobile: 56px;
  --h1--height-mobile: 72px;
  --h1--letter-spacing-mobile: 0px;
  --h2--size: 56px;
  --h2--height: 72px;
  --h2--size-mobile: 48px;
  --h2--height-mobile: 60px;
  --h3--size: 48px;
  --h3--height: 60px;
  --h3--size-mobile: 40px;
  --h3--height-mobile: 50px;
  --h4--size: 40px;
  --h4--height: 50px;
  --h4--size-mobile: 32px;
  --h4--height-mobile: 36px;
  --h5--size: 32px;
  --h5--height: 36px;
  --h5--size-mobile: 28px;
  --h5--height-mobile: 35px;
  --h6--size: 28px;
  --h6--height: 35px;
  --h6--size-mobile: 24px;
  --h6--height-mobile: 30px;
  --typography--optional\<deleted\|variable-13537fb3-c162-0c27-a4e3-3a2647c69938\>: Arial, "Helvetica Neue", Helvetica, sans-serif;
  --text-xxl--size\<deleted\|variable-819a09d8-1de8-2579-6706-1aef5b88a576\>: 0px;
  --text-xxl--height\<deleted\|variable-343bf2d0-100d-1a56-03c7-c37627232278\>: 0px;
  --text-xxl--size-mobile\<deleted\|variable-ec9c7adf-8c15-bf88-681c-57d3899d4a9c\>: 0px;
  --text-xxl--height-mobile\<deleted\|variable-0cc55b41-1308-170d-4a02-4714e50fb306\>: 0px;
  --text-xl--size\<deleted\|variable-d988c2a7-b59f-c2aa-e47b-484b5c602b47\>: 0px;
  --text-xl--height\<deleted\|variable-99bea9b7-aa68-8768-1aad-6381e54c42be\>: 0px;
  --text-xl--size-mobile\<deleted\|variable-c808f7f4-7ac7-c4b8-1cac-3c983fe03db6\>: 0px;
  --text-l--height-mobile: 24px;
  --text-l--size: 20px;
  --text-l--height: 32px;
  --text-l--size-mobile: 16px;
  --text-s--size: 14px;
  --text-s--height: 20px;
  --text-s--size-mobile: 14px;
  --text-s--height-mobile: 20px;
  --text-xs--size\<deleted\|variable-3189f132-7ae9-a645-b898-c9e5e5304eca\>: 0px;
  --text-xs--height\<deleted\|variable-e1fab2ef-85b1-69d8-fbe5-a4dd1bbac6f4\>: 0px;
  --text-xs--size-mobile\<deleted\|variable-f2ff2839-5e44-5a70-e81c-2ac71352731e\>: 0px;
  --text-xs--height-mobile\<deleted\|variable-01cfde2f-3706-cc88-c30f-ea562763939d\>: 0px;
  --text-xxs--size\<deleted\|variable-42d39219-173a-197d-fc63-f5a1e7b1dbbe\>: 0px;
  --text-xxs--height\<deleted\|variable-a37550a5-a4f9-3687-0e86-d398302be3be\>: 0px;
  --text-xxs--size-mobile\<deleted\|variable-c40fd1af-c6ae-d3d4-c1c4-db0312c23b3a\>: 0px;
  --text-xxs--height-mobile\<deleted\|variable-92017c92-526a-5b6a-2c67-710a9461a676\>: 0px;
  --display-1--size\<deleted\|variable-c7fddccc-d7d1-a31e-1840-f648f4d6e4cc\>: 0px;
  --display-1--height\<deleted\|variable-be461f0d-219e-953d-643a-61a5982d716b\>: 0px;
  --display-1--size-mobile\<deleted\|variable-5b3f6b6e-69cb-df9a-e9cd-ca10885c34f0\>: 0px;
  --display-1--height-mobile\<deleted\|variable-7a887b48-6aa2-91c4-5fc8-652dd5b922e2\>: 0px;
  --display-2--size\<deleted\|variable-e94ad1fc-534e-ab22-11c7-efb52f50b0f7\>: 0px;
  --display-2--height\<deleted\|variable-59b5b29a-2bc2-e19e-16c8-4ce8c89ac84f\>: 0px;
  --display-2--size-mobile\<deleted\|variable-4f12a3fc-d1b3-21da-a6b1-174dadec143b\>: 0px;
  --display-2--height-mobile\<deleted\|variable-28cd6a23-6248-1593-02e7-da71f8c1fb98\>: 0px;
  --display-3--size\<deleted\|variable-86022666-7774-41d1-1ba0-2af3c52d299d\>: 0px;
  --display-3--height\<deleted\|variable-30f62cc0-6953-4399-713c-40a1d987db20\>: 0px;
  --display-3--size-mobile\<deleted\|variable-1004ba66-c694-d2a0-6f4b-0031ed431688\>: 0px;
  --display-3--height-mobile\<deleted\|variable-66f55251-0797-bf6f-d9ac-b4a47a44dd16\>: 0px;
  --border-radius--pill: 9999px;
  --color--divider-2: #262626;
  --color--divider-1: #e5ebf0;
  --state--success: white;
  --state--error: white;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

@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 {
  background-color: var(--color--black);
  font-family: var(--typography--body);
  color: var(--color--grey);
  font-size: var(--text-r--size);
  line-height: var(--text-r--height);
}

h1 {
  font-family: var(--typography--heading);
  color: var(--color--white);
  font-size: var(--h1--size);
  line-height: var(--h1--height);
  letter-spacing: var(--h1--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
}

h2 {
  font-family: var(--typography--heading);
  color: var(--color--white);
  font-size: var(--h2--size);
  line-height: var(--h2--height);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
}

h3 {
  font-family: var(--typography--heading);
  color: var(--color--white);
  font-size: var(--h3--size);
  line-height: var(--h3--height);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
}

h4 {
  font-family: var(--typography--heading);
  color: var(--color--white);
  font-size: var(--h4--size);
  line-height: var(--h4--height);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
}

h5 {
  font-family: var(--typography--heading);
  color: var(--color--white);
  font-size: var(--h5--size);
  line-height: var(--h5--height);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
}

h6 {
  font-family: var(--typography--heading);
  color: var(--color--white);
  font-size: var(--h6--size);
  line-height: var(--h6--height);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
}

p {
  margin-bottom: 0;
}

a {
  color: var(--color--white);
  text-decoration: none;
  transition: transform .2s;
}

a:hover {
  transform: scale(1.05);
}

ul, ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 24px;
}

img {
  object-fit: contain;
  max-width: none;
  display: inline-block;
}

form {
  background-color: #0000;
}

.font-heading {
  font-family: var(--typography--heading);
}

.font-body {
  font-family: var(--typography--body);
}

.font-optional {
  font-family: var(--typography--optional\<deleted\|variable-13537fb3-c162-0c27-a4e3-3a2647c69938\>);
}

.text-xxl {
  font-size: var(--text-xxl--size\<deleted\|variable-819a09d8-1de8-2579-6706-1aef5b88a576\>);
  line-height: var(--text-xxl--height\<deleted\|variable-343bf2d0-100d-1a56-03c7-c37627232278\>);
}

.text-xl {
  font-size: var(--text-xl--size\<deleted\|variable-d988c2a7-b59f-c2aa-e47b-484b5c602b47\>);
  line-height: var(--text-xl--height\<deleted\|variable-99bea9b7-aa68-8768-1aad-6381e54c42be\>);
}

.text-l {
  font-size: var(--text-l--size);
  line-height: var(--text-l--height);
}

.text-r {
  font-size: var(--text-r--size);
  line-height: var(--text-r--height);
}

.text-s {
  font-size: var(--text-s--size);
  line-height: var(--text-s--height);
}

.text-xs {
  font-size: var(--text-xs--size\<deleted\|variable-3189f132-7ae9-a645-b898-c9e5e5304eca\>);
  line-height: var(--text-xs--height\<deleted\|variable-e1fab2ef-85b1-69d8-fbe5-a4dd1bbac6f4\>);
}

.text-xxs {
  font-size: var(--text-xxs--size\<deleted\|variable-42d39219-173a-197d-fc63-f5a1e7b1dbbe\>);
  line-height: var(--text-xxs--height\<deleted\|variable-a37550a5-a4f9-3687-0e86-d398302be3be\>);
}

.display-1 {
  font-size: var(--display-1--size\<deleted\|variable-c7fddccc-d7d1-a31e-1840-f648f4d6e4cc\>);
  line-height: var(--display-1--height\<deleted\|variable-be461f0d-219e-953d-643a-61a5982d716b\>);
}

.display-2 {
  font-size: var(--display-2--size\<deleted\|variable-e94ad1fc-534e-ab22-11c7-efb52f50b0f7\>);
  line-height: var(--display-2--height\<deleted\|variable-59b5b29a-2bc2-e19e-16c8-4ce8c89ac84f\>);
}

.display-3 {
  font-size: var(--display-3--size\<deleted\|variable-86022666-7774-41d1-1ba0-2af3c52d299d\>);
  line-height: var(--display-3--height\<deleted\|variable-30f62cc0-6953-4399-713c-40a1d987db20\>);
}

.h1 {
  font-family: var(--typography--heading);
  font-size: var(--h1--size);
  line-height: var(--h1--height);
}

.h2 {
  font-family: var(--typography--heading);
  font-size: var(--h2--size);
  line-height: var(--h2--height);
}

.h3 {
  font-family: var(--typography--heading);
  font-size: var(--h3--size);
  line-height: var(--h3--height);
}

.h4 {
  font-family: var(--typography--heading);
  font-size: var(--h4--size);
  line-height: var(--h4--height);
}

.h5 {
  font-family: var(--typography--heading);
  font-size: var(--h5--size);
  line-height: var(--h5--height);
}

.h6 {
  font-family: var(--typography--heading);
  font-size: var(--h6--size);
  line-height: var(--h6--height);
}

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

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

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

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

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

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

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

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

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

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

.svg-icon {
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  display: flex;
}

.svg-icon._4 {
  width: 4px;
}

.svg-icon._8 {
  width: 8px;
}

.svg-icon._12 {
  width: 12px;
}

.svg-icon._16 {
  width: 16px;
}

.svg-icon._20 {
  width: 20px;
}

.svg-icon._24 {
  width: 24px;
}

.svg-icon._28 {
  width: 28px;
}

.svg-icon._32 {
  width: 32px;
}

.svg-icon._36 {
  width: 36px;
}

.svg-icon._40 {
  width: 40px;
}

.svg-icon._44 {
  width: 44px;
}

.svg-icon._48 {
  width: 48px;
}

.svg-icon._52 {
  width: 52px;
}

.svg-icon._56 {
  width: 56px;
}

.svg-icon._60 {
  width: 60px;
}

.svg-icon._64 {
  width: 64px;
}

.image-full {
  object-fit: contain;
  width: 100%;
  max-width: none;
  height: 100%;
}

.image-full.cover {
  object-fit: cover;
}

.image-full.contain {
  object-fit: contain;
}

.image-full._w-auto {
  width: auto;
}

.image-full.h-auto {
  height: auto;
}

.image-full.contain-left-center {
  object-fit: contain;
  object-position: 0% 50%;
}

.image-full-absolute {
  object-fit: contain;
  width: 100%;
  max-width: none;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.image-full-absolute.cover {
  object-fit: cover;
}

.image-full-absolute.contain {
  object-fit: contain;
}

.image-full-absolute._w-auto {
  width: auto;
}

.image-full-absolute.h-auto {
  height: auto;
}

.link {
  text-decoration: none;
}

.button {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  border: 1px solid var(--color--white);
  border-radius: var(--border-radius--pill);
  background-color: var(--color--white);
  color: var(--color--black);
  text-align: center;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 16px 32px;
  font-weight: 500;
  display: flex;
}

.button.size-s {
  font-size: var(--text-s--size);
  line-height: var(--text-s--height);
  padding: 8px 16px;
  font-weight: 400;
}

.button.outline-white {
  color: var(--color--white);
  background-color: #0000;
}

.section {
  z-index: 1;
  position: relative;
  overflow: hidden;
}

.section.hero {
  padding-top: 96px;
  padding-bottom: 36px;
}

.section.featured-projects {
  padding-top: 36px;
  padding-bottom: 80px;
}

.section.projects, .section.cta {
  padding-top: 80px;
  padding-bottom: 80px;
}

.container {
  width: 100%;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 80px;
  padding-right: 80px;
}

.global-css {
  display: none;
}

.navbar {
  background-color: #0000;
}

.navbar-inner-wrap {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  border-bottom: 1px solid var(--color--divider-2);
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 16px;
  display: flex;
}

.navbar-brand {
  width: 153px;
  height: 32px;
  margin: 0 auto 0 0;
  padding: 0;
}

.hero-content {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.hero-title {
  max-width: 800px;
}

.hero-paragraph {
  max-width: 808px;
  margin-top: 24px;
}

.hero-cta-wrap {
  margin-top: 40px;
}

.projects-grid {
  grid-column-gap: 80px;
  grid-row-gap: 120px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.5fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.projects-grid.reverse {
  grid-template-columns: 1.5fr 1fr;
}

.project-card {
  grid-column-gap: 32px;
  grid-row-gap: 32px;
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.projects-v-flex {
  grid-column-gap: 120px;
  grid-row-gap: 120px;
  flex-direction: column;
  display: flex;
}

.project-card-image {
  aspect-ratio: 480 / 380;
  width: 100%;
  overflow: hidden;
}

.project-card-image:hover {
  transform: none;
}

.project-card-details {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.projects-marquee {
  flex-direction: row;
  display: flex;
}

.projects-marquee-items {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  flex-direction: row;
  padding-left: 16px;
  display: flex;
}

.projects-marquee-item {
  aspect-ratio: 480 / 330;
  flex: none;
  width: 33.33vw;
  overflow: hidden;
}

.projects-marquee-item:hover {
  transform: none;
}

.cta-section-content {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  text-align: center;
  flex-direction: column;
  align-items: center;
  display: flex;
}

.footer-inner-wrap {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  border-top: 1px solid var(--color--divider-2);
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding-top: 16px;
  padding-bottom: 32px;
  display: flex;
}

.footer-social-links {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  flex-direction: row;
  align-items: center;
  display: flex;
}

.footer-social-link-divider {
  background-color: var(--color--divider-1);
  border-radius: 50%;
  width: 4px;
  height: 4px;
}

.project-card-link {
  font-weight: 500;
}

.footer-copyright {
  text-align: right;
}

@media screen and (max-width: 991px) {
  .section.hero {
    padding-top: 80px;
  }

  .section.featured-projects {
    padding-bottom: 72px;
  }

  .section.projects, .section.cta {
    padding-top: 72px;
    padding-bottom: 72px;
  }

  .container {
    padding-left: 56px;
    padding-right: 56px;
  }

  .navbar-brand {
    margin: 0 auto 0 0;
    padding: 0;
  }

  .projects-grid {
    grid-column-gap: 40px;
    grid-row-gap: 64px;
    grid-template-columns: 1fr 1fr;
  }

  .projects-grid.reverse {
    grid-template-columns: 1fr 1fr;
  }

  .projects-v-flex {
    grid-column-gap: 64px;
    grid-row-gap: 64px;
  }

  .projects-marquee-item {
    width: 400px;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: var(--text-r--size-mobile);
    line-height: var(--text-r--height-mobile);
  }

  h1 {
    font-size: var(--h1--size-mobile);
    line-height: var(--h1--height-mobile);
    letter-spacing: var(--h1--letter-spacing-mobile);
  }

  h2 {
    font-size: var(--h2--size-mobile);
    line-height: var(--h2--height-mobile);
  }

  h3 {
    font-size: var(--h3--size-mobile);
    line-height: var(--h3--height-mobile);
  }

  h4 {
    font-size: var(--h4--size-mobile);
    line-height: var(--h4--height-mobile);
  }

  h5 {
    font-size: var(--h5--size-mobile);
    line-height: var(--h5--height-mobile);
  }

  h6 {
    font-size: var(--h6--size-mobile);
    line-height: var(--h6--height-mobile);
  }

  .text-xxl {
    font-size: var(--text-xxl--size-mobile\<deleted\|variable-ec9c7adf-8c15-bf88-681c-57d3899d4a9c\>);
    line-height: var(--text-xxl--height-mobile\<deleted\|variable-0cc55b41-1308-170d-4a02-4714e50fb306\>);
  }

  .text-xl {
    font-size: var(--text-xl--size-mobile\<deleted\|variable-c808f7f4-7ac7-c4b8-1cac-3c983fe03db6\>);
    line-height: var(--text-l--height-mobile);
  }

  .text-l {
    font-size: var(--text-l--size-mobile);
    line-height: var(--text-r--height-mobile);
  }

  .text-r {
    font-size: var(--text-r--size-mobile);
    line-height: var(--text-r--height-mobile);
  }

  .text-s {
    font-size: var(--text-s--size-mobile);
    line-height: var(--text-s--height-mobile);
  }

  .text-xs {
    font-size: var(--text-xs--size-mobile\<deleted\|variable-f2ff2839-5e44-5a70-e81c-2ac71352731e\>);
    line-height: var(--text-xs--height-mobile\<deleted\|variable-01cfde2f-3706-cc88-c30f-ea562763939d\>);
  }

  .text-xxs {
    font-size: var(--text-xxs--size-mobile\<deleted\|variable-c40fd1af-c6ae-d3d4-c1c4-db0312c23b3a\>);
    line-height: var(--text-xxs--height-mobile\<deleted\|variable-92017c92-526a-5b6a-2c67-710a9461a676\>);
  }

  .display-1 {
    font-size: var(--display-1--size-mobile\<deleted\|variable-5b3f6b6e-69cb-df9a-e9cd-ca10885c34f0\>);
    line-height: var(--display-1--height-mobile\<deleted\|variable-7a887b48-6aa2-91c4-5fc8-652dd5b922e2\>);
  }

  .display-2 {
    font-size: var(--display-2--size-mobile\<deleted\|variable-4f12a3fc-d1b3-21da-a6b1-174dadec143b\>);
    line-height: var(--display-2--height-mobile\<deleted\|variable-28cd6a23-6248-1593-02e7-da71f8c1fb98\>);
  }

  .display-3 {
    font-size: var(--display-3--size-mobile\<deleted\|variable-1004ba66-c694-d2a0-6f4b-0031ed431688\>);
    line-height: var(--display-3--height-mobile\<deleted\|variable-66f55251-0797-bf6f-d9ac-b4a47a44dd16\>);
  }

  .mobile-display-1 {
    font-size: var(--display-1--size-mobile\<deleted\|variable-5b3f6b6e-69cb-df9a-e9cd-ca10885c34f0\>);
    line-height: var(--display-1--height-mobile\<deleted\|variable-7a887b48-6aa2-91c4-5fc8-652dd5b922e2\>);
  }

  .mobile-display-2 {
    font-size: var(--display-2--size-mobile\<deleted\|variable-4f12a3fc-d1b3-21da-a6b1-174dadec143b\>);
    line-height: var(--display-2--height-mobile\<deleted\|variable-28cd6a23-6248-1593-02e7-da71f8c1fb98\>);
  }

  .mobile-display-3 {
    font-size: var(--display-3--size-mobile\<deleted\|variable-1004ba66-c694-d2a0-6f4b-0031ed431688\>);
    line-height: var(--display-3--height-mobile\<deleted\|variable-66f55251-0797-bf6f-d9ac-b4a47a44dd16\>);
  }

  .h1 {
    font-size: var(--h1--size-mobile);
    line-height: var(--h1--height-mobile);
  }

  .h2 {
    font-size: var(--h2--size-mobile);
    line-height: var(--h2--height-mobile);
  }

  .h3 {
    font-size: var(--h3--size-mobile);
    line-height: var(--h3--height-mobile);
  }

  .h4 {
    font-size: var(--h4--size-mobile);
    line-height: var(--h4--height-mobile);
  }

  .h5 {
    font-size: var(--h5--size-mobile);
    line-height: var(--h5--height-mobile);
  }

  .h6 {
    font-size: var(--h6--size-mobile);
    line-height: var(--h6--height-mobile);
  }

  .mobile-h1 {
    font-family: var(--typography--heading);
    font-size: var(--h1--size-mobile);
    line-height: var(--h1--height-mobile);
  }

  .mobile-h2 {
    font-family: var(--typography--heading);
    font-size: var(--h2--size-mobile);
    line-height: var(--h2--height-mobile);
  }

  .mobile-h3 {
    font-family: var(--typography--heading);
    font-size: var(--h3--size-mobile);
    line-height: var(--h3--height);
  }

  .mobile-h4 {
    font-family: var(--typography--body);
    font-size: var(--h4--size-mobile);
    line-height: var(--h4--height-mobile);
  }

  .mobile-h5 {
    font-family: var(--typography--heading);
    font-size: var(--h5--size-mobile);
    line-height: var(--h5--height-mobile);
  }

  .mobile-h6 {
    font-family: var(--typography--heading);
    font-size: var(--h6--size-mobile);
    line-height: var(--h6--height-mobile);
  }

  .link {
    grid-column-gap: 4px;
    grid-row-gap: 4px;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .section.hero {
    padding-top: 64px;
  }

  .section.featured-projects {
    padding-bottom: 64px;
  }

  .section.projects, .section.cta {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .container {
    padding-left: 32px;
    padding-right: 32px;
  }

  .navbar-inner-wrap {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .projects-grid, .projects-grid.reverse {
    grid-template-columns: 1fr;
  }

  .footer-inner-wrap {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding-bottom: 24px;
  }

  .project-card-link {
    font-weight: 400;
  }
}

@media screen and (max-width: 479px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .projects-marquee-item {
    width: 327px;
  }
}


@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-MediumItalic.otf') format('opentype');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-BoldItalic.otf') format('opentype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-LightItalic.otf') format('opentype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-Italic.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}