:root {
  --color--off_white: #f6f4ee;
  --color--slate: #36413e;
  --font--h1: 2.2rem;
  --font--h2: 2rem;
  --font--h3: 1.8rem;
  --font--h4: 1.6rem;
  --font--h5: 1.4rem;
  --font--h6: 1.2rem;
  --color--orange: #ff5d00;
  --color--white: white;
  --color--sage-50: #e2e7e0;
  --color--sage: #c6d3c5;
  --color--sea: #809894;
  --color--orange-dark: #cc4a00;
  --color--color--off-white: white;
  --font--hepta: "Hepta Slab", sans-serif;
  --font--inter: Arial, "Helvetica Neue", Helvetica, sans-serif;
  --padding--global: var(--size--desktop);
  --padding--tablet: var(--size--tablet);
  --padding--landscape: var(--size--landscape);
  --padding--portrait: var(--size--portrait);
  --size--desktop: 2rem;
  --size--portrait: .5rem;
  --size--landscape: 1rem;
  --size--tablet: 1.5rem;
}

body {
  background-color: var(--color--off_white);
  color: var(--color--slate);
  padding-left: 2rem;
  padding-right: 2rem;
  font-family: Hepta Slab, sans-serif;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.5;
}

h1 {
  font-size: var(--font--h1);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.2;
}

h2 {
  font-size: var(--font--h2);
  margin-top: 0;
  margin-bottom: 0;
  font-style: normal;
  font-weight: 500;
  line-height: 1.2;
}

h3 {
  font-size: var(--font--h3);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.2;
}

h4 {
  font-size: var(--font--h4);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.2;
}

h5 {
  font-size: var(--font--h5);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.2;
}

h6 {
  font-size: var(--font--h6);
  margin-top: 0;
  margin-bottom: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
}

p {
  max-width: 80ch;
  margin-bottom: 1.5rem;
}

a {
  color: var(--color--orange);
  text-decoration: none;
}

a:hover {
  color: var(--color--slate);
}

ul {
  margin-top: 0;
  margin-bottom: 1.5rem;
  padding-left: 1rem;
}

li {
  max-width: 80ch;
  padding-left: .5rem;
}

img {
  object-fit: fill;
  width: 100%;
}

strong {
  font-weight: bold;
}

.video-container {
  background-color: #000;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100svh;
  display: flex;
  position: absolute;
  inset: 0%;
}

.video-wrapper {
  background-color: #000;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.body-black {
  background-color: #000;
}

@media screen and (max-width: 991px) {
  .nav {
    padding-right: 1rem;
  }

  .nav.overide {
    padding-right: 2rem;
  }

  .nav-container {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .nav-wrapper {
    grid-template-rows: auto;
    grid-template-columns: 1fr max-content max-content;
    grid-auto-columns: 1fr;
  }

  .nav-menu {
    background-color: #fff;
    border-radius: 50px;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    margin-top: 10px;
    padding: 20px;
    display: flex;
    box-shadow: 0 8px 50px #0000000d;
  }

  .nav-dropdown {
    margin-left: 0;
    margin-right: 0;
  }

  .nav-dropdown-list.shadow-tree.w--open {
    position: absolute;
  }

  .nav-burger {
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 40px;
    height: 40px;
    padding: 11px 0;
    display: flex;
  }

  .nav-burger.w--open {
    color: #fff;
    background-color: #a6b1bf;
  }

  .burger-bar {
    background-color: var(--color--orange);
    width: 30px;
  }

  .page-hero {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-direction: column;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    min-height: auto;
    display: flex;
  }

  .footer {
    flex-direction: column;
    align-items: center;
    padding-top: 2rem;
  }

  .project-hero-img {
    aspect-ratio: 3 / 2;
  }

  .project-gallery {
    grid-template-columns: 1fr 1fr;
  }

  .page-hero-title {
    font-size: 3rem;
  }

  .introduction {
    grid-column-gap: 3vmin;
    grid-row-gap: 3vmin;
    grid-template-columns: 1fr;
  }

  .page-hero-img-wrapper {
    order: -1;
  }

  .award-img {
    max-width: 70px;
  }

  .callout-grid {
    grid-template-columns: 1fr 1fr;
  }

  .callout-text {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .featured-project-list, .featured-project-list.overview, .featured-project-list.overview {
    grid-template-columns: 1fr 1fr;
  }

  .insights-body {
    column-count: 1;
  }

  .insights-grid {
    grid-template-columns: 1fr 1fr;
  }

  .material-symbols-outlined.menu {
    padding: 8px;
    display: flex;
  }

  .material-symbols-outlined.menu-close {
    width: 48px;
    height: 48px;
    color: var(--color--orange);
    cursor: pointer;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    padding: 8px;
    font-size: 30px;
    display: flex;
  }

  .material-symbols-outlined.menu-close:hover {
    color: var(--color--slate);
  }

  .search-result-list {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .nav-menu-main {
    justify-content: flex-end;
  }

  .callout-major {
    min-height: auto;
    padding: 2rem;
  }

  .callout-minor {
    min-height: auto;
  }

  .img-expertise-copy {
    aspect-ratio: 1;
  }

  .callout-gallery {
    padding: 2rem;
  }

  .gallery-wrapper {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr 1fr;
  }

  .gallery-slider-left {
    left: -20px;
  }

  .gallery-slider-right {
    right: -20px;
  }

  .facts-figures-grid {
    width: auto;
  }

  .facts-figures-box {
    aspect-ratio: auto;
  }

  .client-list {
    column-count: 5;
  }

  .section-hero {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-direction: column;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    display: flex;
  }

  .footer-icons-wrapper {
    margin-left: 0;
  }

  .book-title-wrapper {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .books-grids {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .insight-hero-title {
    font-size: var(--font--h2);
  }

  .nav-menu-minor {
    background-color: var(--color--white);
    justify-content: space-between;
    margin-top: 5rem;
    padding-left: 2rem;
    padding-right: 1rem;
    display: none;
    position: fixed;
    inset: 0% 0% auto;
  }

  .page-hero-minor {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-direction: column;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    min-height: auto;
    display: flex;
  }

  .img-expertise-essence {
    aspect-ratio: 1;
  }

  .callout-home {
    min-height: auto;
    padding: 2rem;
  }

  .page-hero-img-wrapper-2, .page-hero-img-wrapper-3 {
    order: -1;
  }

  .note-3d, .name-3d {
    max-width: 33%;
  }
}

@media screen and (max-width: 767px) {
  body {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  h1 {
    font-size: var(--font--h2);
  }

  h2 {
    font-size: var(--font--h3);
  }

  h3 {
    font-size: var(--font--h4);
  }

  h4 {
    font-size: var(--font--h5);
  }

  h5 {
    font-size: var(--font--h6);
  }

  .nav {
    padding-left: 1rem;
    padding-right: .5rem;
  }

  .nav.overide {
    padding-right: 1rem;
  }

  .nav-container {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .nav-logo-link {
    padding-left: 0;
  }

  .nav-menu {
    border-radius: 20px;
    flex-direction: column;
    padding-bottom: 30px;
  }

  .nav-dropdown {
    flex-direction: column;
    align-items: center;
    display: flex;
  }

  .nav-dropdown-list.shadow-tree {
    box-shadow: 0 8px 50px #0000000d;
  }

  .nav-dropdown-list.shadow-tree.w--open {
    position: relative;
  }

  .nav-dropdown-list.shadow-tree.mobile-shdow-hide {
    box-shadow: none;
    box-shadow: none;
  }

  .nav-devider {
    width: 200px;
    max-width: 100%;
    height: 1px;
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .nav-link-login {
    margin-right: 5px;
    padding-top: 10px;
    padding-bottom: 10px;
    display: inline-block;
  }

  .mobile-margin-top-10 {
    margin-top: 10px;
  }

  .burger-bar {
    height: 3px;
  }

  .introduction-info {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .project-gallery {
    grid-template-columns: 1fr;
  }

  .introduction {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: 1fr;
  }

  .page-hero-img-wrapper {
    border-radius: 2rem;
  }

  .award-img {
    max-width: 60px;
  }

  .modal-project-trigger.projects {
    display: none;
  }

  .awards-wrapper {
    margin-top: 1rem;
    margin-right: 1rem;
  }

  .insight-hero-img {
    aspect-ratio: 3 / 2;
  }

  .insight-hero {
    border-radius: 1rem;
  }

  .insight-hero-content {
    aspect-ratio: 2.39;
  }

  .insight {
    font-size: 1rem;
  }

  .insights-grid-wrapper.more {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .search-result-list {
    grid-template-columns: 1fr 1fr;
  }

  .nav-menu-secondary {
    justify-content: space-between;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .nav-menu-secondary.overide {
    padding-left: 0;
    padding-right: 0;
  }

  .cta-wrapper {
    grid-template-columns: 1fr;
  }

  .featured-projects.reveal {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .div-block-14 {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-direction: column;
    display: flex;
  }

  .h1 {
    font-size: var(--font--h2);
  }

  .h2 {
    font-size: var(--font--h3);
  }

  .h3 {
    font-size: var(--font--h4);
  }

  .h4 {
    font-size: var(--font--h5);
  }

  .h5 {
    font-size: var(--font--h6);
  }

  .callout-minor-grid {
    background-color: var(--color--sage);
    border-radius: 2rem;
    flex-direction: column;
    padding: 2rem;
    display: flex;
  }

  .callout-text-wrapper {
    max-width: none;
  }

  .gallery-slider-left {
    left: -20px;
  }

  .gallery-slider-right {
    right: -20px;
  }

  .facts-figures-grid {
    grid-template-columns: 1fr 1fr;
  }

  .client-list {
    column-count: 4;
  }

  .client-list-wrapper {
    max-height: 100svh;
  }

  .main, .div-block-19 {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .section-hero.reveal {
    padding: 2rem;
  }

  .terms-wrapper.reveal {
    border-radius: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .book-wrapper {
    border-radius: 1.5rem;
  }

  .book-title-wrapper {
    padding-top: 0;
    padding-bottom: 0;
  }

  .books-grids {
    grid-column-gap: .5rem;
    border-radius: 1.5rem;
  }

  .insight-hero-title {
    font-size: var(--font--h3);
  }

  .contact-info {
    border-radius: 1.5rem;
  }

  .contact-wrapper {
    grid-template-columns: 1fr;
  }

  .cta-content {
    border-radius: 1.5rem;
    max-width: none;
  }

  ._3d-project-name {
    display: none;
  }

  .nav-menu-minor {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    justify-content: space-between;
    padding-left: 1rem;
    padding-right: .5rem;
  }

  .page-hero-img-wrapper-2, .page-hero-img-wrapper-3 {
    border-radius: 2rem;
  }

  .note-3d, .name-3d {
    max-width: none;
    bottom: 1rem;
    left: 1rem;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: var(--font--h3);
  }

  h2 {
    font-size: var(--font--h4);
  }

  h3 {
    font-size: var(--font--h5);
  }

  h4 {
    font-size: var(--font--h6);
  }

  .nav-container, .nav-wrapper {
    padding-top: .5rem;
    padding-bottom: .5rem;
  }

  .nav-menu {
    flex-direction: column;
  }

  .nav-link {
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
  }

  .nav-dropdown-toggle {
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
  }

  .nav-dropdown-list.w--open {
    margin-top: 2rem;
    margin-left: -1rem;
    inset: 0% auto auto 0%;
  }

  .nav-dropdown-list._3d-scene.w--open {
    inset: 0% 0% auto auto;
    inset: 0% 0% auto auto;
  }

  .nav-logo {
    height: 20px;
  }

  .project-hero-img {
    aspect-ratio: 1;
    border-radius: 1rem;
  }

  .introduction-info {
    border-radius: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .gallery-item {
    border-radius: 1rem;
  }

  .introduction {
    grid-column-gap: 5vmin;
    grid-row-gap: 5vmin;
  }

  .testimonial {
    border-radius: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .page-hero-img-wrapper {
    border-radius: 1rem;
  }

  .award-img {
    max-width: 50px;
  }

  .footer-links-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    justify-content: center;
  }

  .callout-img {
    aspect-ratio: 1;
    border-radius: 1rem 1rem 0 0;
  }

  .callout-section {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    border-radius: 1rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .callout-grid {
    display: block;
    position: relative;
    inset: auto;
  }

  .callout-text {
    padding-left: 1rem;
    padding-right: 1rem;
    position: relative;
  }

  .callout-wrapper {
    background-color: var(--color--orange);
    border-radius: 0 0 1rem 1rem;
  }

  .callout-bg-img {
    display: none;
    position: relative;
    inset: auto;
  }

  .featured-project-list, .featured-project-list.overview, .featured-project-list.overview {
    grid-template-columns: 1fr;
  }

  .insight-hero-img {
    aspect-ratio: auto;
  }

  .insights-content {
    border-radius: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .insight-hero-content {
    padding: 1rem 0 1rem 1rem;
  }

  .insight {
    font-size: 1rem;
  }

  .insights-grid {
    grid-template-columns: 1fr;
  }

  .next, .previous {
    font-size: .75rem;
  }

  .material-symbols-outlined.search-icon {
    margin-left: -12px;
  }

  .material-symbols-outlined.menu-close {
    margin-bottom: 1rem;
    margin-right: .5rem;
    position: absolute;
    inset: auto 0% 0% auto;
  }

  .search-result-list {
    grid-template-columns: 1fr;
  }

  .search-icon {
    display: none;
  }

  .page-count-wrapper, .next-wrapper {
    font-size: .75rem;
  }

  .talk-form {
    grid-column-gap: .5rem;
  }

  .talk-form-block {
    max-width: 100vw;
    padding-left: 1rem;
    padding-right: 1rem;
    overflow: hidden;
  }

  .nav-menu-secondary {
    flex-direction: column;
    align-items: flex-end;
    height: auto;
  }

  .nav-menu-main {
    display: none;
  }

  .insight-hero-heading {
    font-size: 1rem;
  }

  .featured-projects.reveal {
    background-color: #e2e7e000;
    border-radius: 1rem;
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .search {
    border-radius: 2rem;
    flex-direction: column;
    align-items: stretch;
  }

  .modal-search-close {
    margin-left: 0;
    margin-right: 0;
  }

  .search-button-wrapper {
    justify-content: space-between;
  }

  .insight-page-hero {
    border-radius: 1rem;
  }

  .callout-major {
    border-radius: 1rem;
    padding: 1rem;
  }

  .callout-major.reveal {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .h1 {
    font-size: var(--font--h3);
  }

  .h2 {
    font-size: var(--font--h4);
  }

  .h3 {
    font-size: var(--font--h5);
  }

  .h4 {
    font-size: var(--font--h6);
  }

  .callout-minor-grid {
    border-radius: 1rem;
    padding: 1rem;
  }

  .callout-minor-grid.reveal {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .img-expertise-copy {
    border-radius: 1rem;
  }

  .callout-gallery {
    border-radius: 1rem;
    padding: 1rem;
  }

  .gallery-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: 1fr;
  }

  .gallery-slide-wrapper {
    max-width: 100%;
    margin-right: 0%;
  }

  .gallery-slider-left {
    margin-left: -12px;
    left: -20px;
  }

  .gallery-slider-right {
    margin-right: -12px;
    right: -20px;
  }

  .gallery-slide-nav {
    display: none;
  }

  .facts-figures-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    border-radius: 1rem;
    padding: 1rem;
  }

  .facts-figures-grid {
    flex-direction: column;
    display: flex;
  }

  .client-list-section {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    border-style: none;
    padding: 0;
  }

  .client-list {
    column-count: 2;
    padding: 1rem;
  }

  .client-list-wrapper {
    max-height: 50svh;
  }

  .main {
    padding-top: 4rem;
  }

  .section-hero.reveal {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .book-wrapper {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    border-radius: 1rem;
    padding: 1rem;
  }

  .book-title-wrapper {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .books-grids {
    border-radius: 1rem;
    grid-template-columns: 1fr;
    padding: 1rem;
  }

  .insight-hero-title {
    font-size: var(--font--h5);
  }

  ._3d-scene-name {
    display: none;
  }

  .contact-info {
    border-radius: 1rem;
  }

  .cta-content {
    border-radius: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .show-for-portrait {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-top: -1rem;
    margin-bottom: -.5rem;
    display: flex;
  }

  .nav-menu-minor {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    flex-direction: column;
    align-items: flex-start;
    margin-top: 4rem;
    padding: 1rem;
  }

  .page-hero-minor {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .callout-home {
    border-radius: 1rem;
    padding: 1rem;
  }

  .page-hero-img-wrapper-2, .page-hero-img-wrapper-3 {
    border-radius: 1rem;
  }

  .knowmore-content {
    max-width: 100vw;
    padding-left: 1rem;
    padding-right: 1rem;
    overflow: hidden;
  }
}
