:root {
  --body: Outfit, sans-serif;
  --pure-black: black;
  --pure-white: white;
  --primary: #4e51a6;
  --primary-light: #f2f3ff;
  --secondary-light: #fdece7;
  --transparent: #fff0;
  --light-black: #e3e3e3;
  --_colors---background: var(--_colors---white);
  --_colors---text: white;
  --_colors---white: white;
  --_colors---black: black;
  --_colors---primary: #4e51a6;
  --_colors---transparent: #fff0;
  --headings: "Nunitosans 10 Pt";
  --rich-black: #1a1a1a;
  --ternary-light: white;
}

body {
  font-family: var(--body);
  color: var(--pure-black);
  font-size: 4rem;
  line-height: 1.4;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 38px;
  font-weight: 700;
  line-height: 1.4;
}

h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 700;
}

h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 24px;
  font-weight: 700;
}

h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
}

h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}

p {
  margin-bottom: 0;
}

a {
  color: var(--pure-black);
  text-decoration: none;
  transition: all .3s;
}

img {
  max-width: 100%;
  display: inline-block;
}

.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;
  }
}

.section--navbar {
  background-color: #fff;
  padding-top: 4rem;
  padding-bottom: 4rem;
  transition: box-shadow .4s;
}

.section--navbar.is--pinned {
  box-shadow: 1px 1px 12px 4px #00000014;
}

.logo {
  grid-column-gap: 1px;
  align-items: center;
  font-size: 5rem;
  font-weight: 600;
  display: flex;
}

.logo.logo--footer {
  color: var(--pure-white);
  font-weight: 400;
}

.container-ss {
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 4rem;
  padding-right: 4rem;
}

.col-ss {
  flex: 1 0 auto;
  max-width: 100%;
  padding-left: 4rem;
  padding-right: 4rem;
}

.col-ss.col--expertise__content {
  flex-grow: 0;
}

.col-ss.col--expertise__visuals {
  max-width: 85%;
}

.col-ss.col--full {
  flex-basis: 100%;
}

.col-ss.col--hero-content, .col-ss.col--hero-visuals {
  flex-basis: 50%;
  max-width: 50%;
}

.col-ss.col--contact-content, .col-ss.col--contact-form {
  flex-grow: 0;
  flex-basis: 50%;
  max-width: 50%;
}

.col-ss.col--quotes {
  flex: 0 0 35%;
  max-width: 35%;
}

.col-ss.col--my-approach {
  flex: 0 0 65%;
  max-width: 65%;
}

.col-ss.col--project-basics, .col-ss.col--project-details {
  flex-basis: 40%;
  max-width: 40%;
}

.col-ss.col--contact-content, .col-ss.col--contact-form {
  flex-grow: 0;
  flex-basis: 50%;
  max-width: 50%;
}

.col-ss.col--footer-logo {
  flex: 0 0 28%;
  max-width: 28%;
}

.col-ss.col--footer-services {
  flex: 0 0 24%;
  max-width: 24%;
}

.col-ss.col--footer-info {
  flex-grow: 0;
  flex-basis: 24%;
  max-width: 24%;
}

.col-ss.col--project-basics, .col-ss.col--project-details {
  flex-basis: 40%;
  max-width: 40%;
}

.row-ss {
  grid-row-gap: 10rem;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-left: -4rem;
  margin-right: -4rem;
  display: flex;
}

.row-ss.row--my-approach {
  margin-top: 12rem;
}

.row-ss.row--footer-nav, .row-ss.row--project-details, .row-ss.row--footer-nav, .row-ss.row--project-details {
  align-items: flex-start;
}

.section__heading {
  font-size: 8rem;
  line-height: 1.2;
}

.section__desc {
  margin-top: 8rem;
  line-height: 1.5;
}

.section__desc.desc--services {
  max-width: 75ch;
}

.cl--portfolio {
  grid-column-gap: 16rem;
  grid-row-gap: 16rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.ci--portfolio {
  position: relative;
}

.project__thumb {
  box-shadow: 5px 0 15px 1px #0000000d;
}

.portfolio__title {
  color: var(--pure-black);
  font-size: 5rem;
}

.portfolio__platform {
  color: #727272;
  margin-top: 2rem;
  font-size: 4rem;
}

.section--contact-us, .section--contact-us.section__padding, .section--contact-us.section__padding {
  background-image: linear-gradient(#fff, #e8e9ff);
}

.email__address {
  margin-top: 2rem;
  font-size: 5rem;
  font-weight: 600;
  display: inline-block;
}

.contact-form__grid {
  grid-column-gap: 8rem;
  grid-row-gap: 8rem;
  grid-template-rows: auto auto auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: column dense;
  display: grid;
}

.contact-form__wrapper {
  background-color: var(--pure-white);
  text-align: left;
  flex-direction: column;
  margin-bottom: 0;
  padding: 8rem;
  box-shadow: 0 0 15px 1px #3e408426;
}

.success-message {
  background-color: #96fdce;
}

.section--footer {
  padding-top: 12rem;
  padding-bottom: 12rem;
}

.copyright-text {
  color: #f8f8fc;
  text-align: center;
}

.portfolio__thumbs {
  border-radius: 4rem;
  padding: 12rem 8rem;
  transition: all .4s;
  position: relative;
  overflow: hidden;
}

.portfolio__featured-image {
  z-index: 2;
  transition: opacity .3s;
  position: relative;
}

.portfolio__slider__nav {
  display: none;
}

.portfolio__thumbs-slider {
  height: auto;
  position: absolute;
  inset: 0%;
}

.portfolio__thumbs-wrapper {
  position: relative;
}

.header-group {
  z-index: 100;
  position: relative;
}

.header-group.is--sticky {
  position: sticky;
  top: 0;
}

.footer-group {
  background-color: var(--primary);
}

.logo--icon.icon--opening-tag {
  transition: all .3s;
}

.btn-ss {
  grid-column-gap: 4rem;
  border: 1px solid var(--transparent);
  text-transform: capitalize;
  border-radius: 100vw;
  justify-content: center;
  align-items: center;
  min-width: 40rem;
  padding: 3rem 4rem;
  display: flex;
}

.btn-ss.is--primary--solid {
  border-color: var(--primary);
  background-color: var(--primary);
  color: var(--pure-white);
}

.btn-ss.is--primary--solid:hover {
  background-color: var(--transparent);
  color: var(--primary);
}

.btn-ss.is--primary--ghost {
  border-color: var(--primary);
  color: var(--primary);
}

.btn-ss.is--primary--ghost:hover {
  background-color: var(--primary);
  color: var(--pure-white);
}

.portfolio--info {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 4rem;
  padding-left: 4rem;
  padding-right: 4rem;
  display: flex;
}

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

.section__content.content--copyright {
  border-top: 1px solid var(--pure-white);
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.section__content.content--project-basics {
  flex-direction: column;
  display: flex;
}

.section__content.content--breadcrumbs {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-wrap: wrap;
  display: flex;
}

.visual-wrapper {
  aspect-ratio: 16 / 9;
  position: relative;
  overflow: hidden;
}

.visual-wrapper.has--radius {
  border-radius: 4rem;
}

.visual-wrapper.visual--page-design {
  aspect-ratio: auto;
}

.visual-wrapper.ratio--preview-of-speed {
  aspect-ratio: 1 / 1.415;
}

.visual-wrapper.ratio--square {
  aspect-ratio: 1;
}

.visual-wrapper.is--full {
  aspect-ratio: auto;
  width: 100%;
  height: 100%;
}

.visual--img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.contact--email {
  margin-top: 8rem;
}

.email__image {
  margin-top: 16rem;
}

.field__label {
  font-weight: 600;
}

.field__input {
  margin-top: 3rem;
  margin-bottom: 0;
}

.field__input.field--textarea {
  height: 32rem;
}

.cta-wrapper {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  margin-top: 8rem;
  display: flex;
}

.cta-wrapper.portfolio__cta-wrapper {
  justify-content: center;
  align-items: center;
}

.cta-wrapper.contact--cta-wrapper {
  justify-content: flex-end;
}

.clw--portfolio {
  margin-top: 10rem;
}

.section__form {
  padding-left: 12rem;
}

.footer-nav__title {
  color: var(--pure-white);
  font-size: 4rem;
}

.cl--footer-services {
  grid-row-gap: 2rem;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 4rem;
  display: flex;
}

.footer-nav__link {
  opacity: .8;
  color: var(--pure-white);
}

.project-details__item {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  border-bottom: 1px solid var(--light-black);
  flex-direction: column;
  align-items: flex-start;
  padding-top: 4rem;
  padding-bottom: 4rem;
  display: flex;
}

.project-details--title {
  font-size: 5rem;
}

.problem__title {
  font-size: 4.5rem;
  font-weight: 500;
  display: none;
}

.project__briefing {
  margin-top: 3rem;
  font-size: 3.5rem;
}

.project-solution {
  margin-top: 4rem;
}

.section--breadcrumbs {
  background-color: var(--primary-light);
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.section--breadcrumbs.is--sticky {
  z-index: 90;
  z-index: 90;
  position: sticky;
  top: 0;
}

.breadcrumbs__link {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  color: var(--primary);
  font-size: 4.2rem;
  font-weight: 500;
  display: flex;
}

.logo-only {
  text-align: center;
}

.project-info {
  margin-top: 4rem;
}

@media screen and (min-width: 1280px) {
  .portfolio__slider__arrow--right, .portfolio__slider__arrow--left, .portfolio__slider__nav {
    display: none;
  }
}

@media screen and (max-width: 991px) {
  .col-ss.col--services, .col-ss.col--current-projects {
    max-width: 100%;
  }

  .col-ss.col--footer-services, .col-ss.col--footer-info {
    flex-basis: 33.3333%;
    max-width: 33.3333%;
  }

  .col-ss.col--project-basics, .col-ss.col--project-details {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col-ss.col--services, .col-ss.col--current-projects {
    max-width: 100%;
  }

  .col-ss.col--expertise__visuals {
    max-width: 80%;
  }

  .col-ss.col--hero-content {
    flex-basis: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .col-ss.col--hero-visuals {
    flex-grow: 0;
    flex-basis: 75%;
    order: -1;
    max-width: 75%;
    margin-left: auto;
    margin-right: auto;
  }

  .col-ss.col--contact-content {
    flex-basis: 40%;
    max-width: 40%;
  }

  .col-ss.col--contact-form {
    flex-basis: 60%;
    max-width: 60%;
  }

  .col-ss.col--quotes {
    flex-basis: 60%;
    max-width: 60%;
    margin-left: auto;
    margin-right: auto;
  }

  .col-ss.col--my-approach {
    flex-basis: 100%;
    order: -1;
    max-width: 100%;
  }

  .col-ss.col--footer-logo {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-ss.col--footer-services, .col-ss.col--footer-info {
    flex-basis: 33.3333%;
    max-width: 33.3333%;
  }

  .col-ss.col--project-basics, .col-ss.col--project-details {
    flex-basis: 50%;
    max-width: 50%;
  }

  .section__bg.bg--services {
    border-radius: 4rem;
  }

  .section__bg.bg--current-projects {
    transform: none;
  }

  .current-projects__featured-image {
    flex-basis: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .current-projects__details {
    flex-basis: 100%;
    max-width: 100%;
  }

  .cl--services {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .list--my-approach {
    padding-left: 0;
  }

  .cl--portfolio {
    grid-column-gap: 8rem;
    grid-row-gap: 8rem;
  }

  .portfolio__thumbs {
    padding: 6rem 4rem;
  }

  .portfolio--info {
    flex-direction: column;
    padding-left: 0;
    padding-right: 0;
  }

  .section__form {
    padding-left: 0;
  }

  .cl--preview-of-speed {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .row--grid {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
  }
}

@media screen and (max-width: 767px) {
  .section--navbar {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .container-ss, .col-ss, .col-ss.col--services {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .col-ss.col--contact-content, .col-ss.col--contact-form {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-ss.col--footer-services, .col-ss.col--footer-info {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col-ss.col--project-basics, .col-ss.col--project-details {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-ss.col--services {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .col-ss.col--expertise__visuals {
    max-width: 100%;
    margin-top: 4rem;
  }

  .col-ss.col--contact-content, .col-ss.col--contact-form {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-ss.col--my-approach {
    flex-basis: 100%;
    order: -1;
    max-width: 100%;
  }

  .col-ss.col--footer-services, .col-ss.col--footer-info {
    flex-basis: 50%;
    max-width: 50%;
  }

  .col-ss.col--project-basics, .col-ss.col--project-details {
    flex-basis: 100%;
    max-width: 100%;
  }

  .nav__item {
    color: var(--pure-white);
    border-radius: 0;
    padding: 4rem;
  }

  .nav__item:hover {
    background-color: var(--primary);
    color: var(--pure-white);
  }

  .row-ss {
    margin-left: -3rem;
    margin-right: -3rem;
  }

  .row-ss.row--my-approach {
    margin-top: 10rem;
  }

  .nav__brand.w--current {
    padding-left: 0;
  }

  .nav__menu {
    background-color: var(--pure-black);
  }

  .section__bg.bg--services, .section__bg.bg--current-projects, .section__bg.bg--services, .section__bg.bg--current-projects {
    border-radius: 0;
  }

  .ci--services {
    border-radius: 2rem;
    padding: 6rem 4rem;
  }

  .section--my-approach {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .cl--services {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
  }

  .current-projets__cta-wrapper {
    margin-top: 10rem;
  }

  .portfolio__thumbs {
    border-radius: 2rem;
  }

  .clw--current-projects, .clw--services, .hero__cta-wrapper {
    margin-top: 10rem;
  }

  .menu-button {
    padding: 2rem;
  }

  .menu-button.w--open {
    background-color: var(--pure-black);
  }

  .section__visuals.visual--full-page {
    margin-top: 10rem;
  }

  .visual-wrapper, .visual-wrapper.has--radius, .visual-wrapper.has--radius {
    border-radius: 2rem;
  }

  .section-inner {
    margin-left: -3rem;
    margin-right: -3rem;
  }

  .container-inner {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .margin--cta-wrapper, .margin--clw {
    margin-top: 10rem;
  }

  .cl--current-projects {
    grid-column-gap: 20rem;
    grid-row-gap: 20rem;
  }

  .cta-wrapper, .clw--portfolio, .clw--preview-of-sections {
    margin-top: 10rem;
  }

  .clw--preview-of-speed {
    margin-top: 8rem;
  }

  .section--breadcrumbs {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .design-of-page {
    margin-top: 10rem;
  }
}

@media screen and (max-width: 479px) {
  .col-ss.col--hero-visuals {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-ss.col--footer-services, .col-ss.col--footer-info, .col-ss.col--hero-visuals {
    flex-basis: 100%;
    max-width: 100%;
  }

  .col-ss.col--quotes {
    flex-basis: 80%;
    max-width: 80%;
  }

  .col-ss.col--footer-services, .col-ss.col--footer-info {
    flex-basis: 100%;
    max-width: 100%;
  }

  .row-ss {
    flex-wrap: wrap;
  }

  .section__bg {
    right: 0%;
  }

  .ci--services {
    flex-basis: 100%;
    margin-right: 0;
  }

  .ci--services:last-child {
    margin-bottom: 0;
  }

  .service__desc {
    margin-bottom: 2rem;
  }

  .ci--current-projects {
    flex-wrap: wrap;
  }

  .current-projects__details {
    flex-basis: 100%;
    max-width: 100%;
  }

  .btn--px {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .cl--services {
    grid-template-rows: 1fr minmax(200px, 1fr) auto auto auto auto;
    grid-template-columns: minmax(100%, 1fr);
  }

  .list--my-approach {
    margin-top: 2rem;
    padding-left: 0;
  }

  .cl--portfolio {
    grid-template-columns: 1fr;
  }

  .contact-form__wrapper {
    background-color: var(--transparent);
    box-shadow: none;
    padding: 0;
  }

  .contact__details {
    padding-right: 0;
  }

  .current-projets__cta-wrapper {
    flex-direction: column;
    align-items: stretch;
  }

  .image-2 {
    margin-bottom: 3rem;
  }

  .portfolio--info {
    align-items: stretch;
  }

  .hero__cta-wrapper, .portfolio__cta {
    flex-direction: column;
    align-items: stretch;
  }

  .section__content.content--breadcrumbs {
    grid-row-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .cta-wrapper {
    flex-direction: column;
  }

  .cta-wrapper.portfolio__cta-wrapper {
    flex-direction: column;
    align-items: stretch;
  }

  .cta-wrapper.contact--cta-wrapper {
    flex-direction: column;
  }
}

#w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31df-9d9d31ca, #w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31e3-9d9d31ca, #w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31e7-9d9d31ca, #w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31eb-9d9d31ca {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31ef-9d9d31ca {
  grid-area: 5 / 1 / 6 / 2;
}

@media screen and (max-width: 479px) {
  #w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31df-9d9d31ca, #w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31e3-9d9d31ca, #w-node-_334466eb-8ec1-194d-d7b4-20bd9d9d31e7-9d9d31ca {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}
