@font-face {
  font-family: 'Font Titles';
  src: url('./assets/fonts/font_1.woff2') format('woff2');
}

@font-face {
  font-family: 'Font Generic';
  src: url('./assets/fonts/font_2.woff2') format('woff2');
}

@font-face {
  font-family: 'Font Subtitles';
  src: url('./assets/fonts/font_3.woff2') format('woff2');
}

:root {
  /* COLORS */
  --primary-color: #000;
  --secondary-color: #fff;
  --padding-section: 0rem 2.15rem 3.4rem;
  --header-padding-left-right: 2.125rem;
  --nav-margin-left-right: 2.125rem;
  /* FONTS FOR SECTION */
  /* Logo Text */
  --logo-font-family: 'Font Titles', sans-serif;
  --logo-font-size: 1.6rem;
  /* Titles - h2 */
  --title-font-family: 'Font Titles', sans-serif;
  --title-font-size: 1.63rem;
  --title-font-weight: bold;
  --title-line-height: 2.1rem;
  /* Subtitles - h3 */
  --subtitle-font-family: 'Font Subtitles', sans-serif;
  --subtitle-font-size: 1.6rem;
  --subtitle-font-weight: bold;
  --subtitle-line-height: 2rem;
  /* Text - Lists */
  /* Paragraphs - p */
  --paragraph-font-family: 'Font Generic', sans-serif;
  --paragraph-font-size: 1rem;
  --paragraph-font-weight: 400;
  --paragraph-line-height: 145%;
  /* Letters - p */
  --letter-font-family: 'Font Titles', sans-serif;
  --letter-font-size: 1.5rem;
  --letter-font-weight: bold;
  /* Email */
  --email-font-family: 'Font Generic', sans-serif;
  --email-font-size: 1rem;
  --email-font-weight: 400;
  --email-line-height: 0rem;
  /* Backgrounds Sections */
  --bg-section-services: #000;
  --bg-section-workflow: rgba(36, 35, 35, 0.78);
  --bg-section-about: #fff;
  --bg-section-clients: #a0c2e7;
  --bg-section-contact: #242323;
  /* Margins */
  --margin-section-bottom: 1.25rem;
}
/****************************/
/**  Mobile First Design   **/
/** Naming Convention: BEM **/
/****************************/
/* BODY */
body {
  font-size: 1rem;
  font-family: 'Font Generic', sans-serif;
  font-weight: 400;
  background: url('./assets/images/background.png') center center fixed no-repeat;
  background-size: cover;
}

/* WRAPPER */
.background-image {
  background: url('./assets/images/background-desk.jpg') top center fixed no-repeat;
  background-size: cover;
  background-size: 300vw auto;
}

/* HEADER and NAVBAR */
nav {
  display: flex;
  justify-content: space-between;
  height: 4rem;
  background-color: var(--primary-color);
  overflow: hidden;
}
/* Container */
.nav-logo-container {
  position: relative;
  display: flex;
  justify-content: left;
  align-items: center;
  margin: 0.875rem var(--nav-margin-left-right);
  z-index: 2;
}
/* Translio Logo */
.nav-logo {
  width: fit-content;
  font-family: var(--logo-font-family);
  font-size: 1.6rem;
  color: var(--secondary-color);
  z-index: 1;
}
/* Inactive mobile navbar */
.nav-links {
  display: none;
  position: absolute;
  width: 100%;
  height: 0;
  padding: 5.25rem var(--header-padding-left-right) 1.5rem var(--header-padding-left-right);
  background-color: var(--secondary-color);
  z-index: 1;
  transition: height 0.3s ease;
}
.nav-links--desktop {
  display: none;
}
/* Active mobile navbar */
.nav-links.mobile-menu {
  display: flex;
  flex-direction: column;
  height: 100vh;
  height: 100svh;
}
/* Navbar items */
.nav-links ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: left;
  margin: 0rem;
  padding: 0rem;
}
.nav-item {
  margin: 0.625rem 0rem;
  cursor: pointer;
}
/* Hamburger Container */
.menu-hamburger {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  margin: 0.875rem var(--nav-margin-left-right);
  z-index: 1;
}
/* Hamburger icon */
.hamburger-icon {
  color: #fff;
}
/* Close icon */
.close-icon {
  display: none;
  color: #000;
}

/* SPECIAL SECTION */
/* Home */
.h-section {
  position: relative;
  display: flex;
  max-height: 624px;
  margin-bottom: 1.805rem;
  z-index: 0;
}
.h-section-1-container {
  width: 100%;
}
.h-section-1-container-1 {
  position: relative;
  background-color: white;
  padding: 1.55rem 2.25rem 4.16rem 2.125rem;
}
.h-section-2-container {
  display: none;
}
.h-section-1-container-1__title-logo {
  width: fit-content;
  margin-bottom: 1.11rem;
}
.h-section-1-container-1__title-logo h1 {
  width: fit-content;
  font-family: var(--logo-font-family);
  font-size: 2.6rem;
  color: var(--primary-color);
  z-index: 1;
}
.h-section-1-container-1__title-logo div {
  width: 100%;
  height: 0.11rem;
  background-color: var(--primary-color);
}
.h-section-1-container-1__title {
  font-family: 'Font Generic';
  font-size: 1.9rem;
  line-height: 140%;
  letter-spacing: -0.2px;
  padding-bottom: 0.56rem;
}
.h-section-1-container-1__icon {
  display: block;
  width: 2.2rem;
}

/* SECTIONS (Services, Workflow, About, Our Clients and Contact Us) */
/* Padding */
.section {
  padding: var(--padding-section);
}
/* Margin */
.section-services--mod,
.section-workflow--mod,
.section-about--mod,
.section-clients--mod {
  margin-bottom: var(--margin-section-bottom);
}
/* Background */
.section-services--bg {
  background-color: var(--bg-section-services);
}
.section-workflow--bg {
  background-color: var(--bg-section-workflow);
}
.section-about--bg {
  background-color: var(--bg-section-about);
}
.section-clients--bg {
  background-color: var(--bg-section-clients);
}
.section-contact--bg {
  background-color: var(--bg-section-contact);
}

/* SECTION - PART 1 */
/* Container */
.section-part-1 {
  display: flex;
  justify-content: end;
  align-items: end;
  margin-bottom: 1.44rem;
}
/* Title */
.section-part-1__title-text {
  width: fit-content;
  font-family: var(--title-font-family);
  font-size: var(--title-font-size);
  font-weight: var(--title-font-weight);
  line-height: var(--title-line-height);
  margin-top: auto;
  color: var(--secondary-color);
}
.section-part-1__title-text--mod {
  color: var(--primary-color);
}
/* Pendulum */
.section-part-1__pendulum {
  width: 2.2rem;
  height: 4.389rem;
  margin-left: 1.25rem;
}
.section-part-1__pendulum-item-1 {
  width: 50%;
  height: 50%;
  border-right: 1px solid white;
}
.section-part-1__pendulum-item-2 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50%;
  border-radius: 100%;
  border: 1px solid white;
}
.section-part-1__pendulum-item-2-inner {
  width: 0.56rem;
  height: 0.56rem;
  border-radius: 100%;
  background-color: #fff;
}
.section-part-1__pendulum-item-2-inner--mod {
  background-color: #000;
}
.section-part-1__pendulum-item-1--mod {
  border-color: #000;
}
.section-part-1__pendulum-item-2--mod {
  border-color: #000;
}

/* SECTION - PART 2 */
.section-part-2 {
  max-width: 500px;
  margin: auto;
}
/* Container */
.section-part-2-services--mod,
.section-part-2-about--mod,
.section-part-2-contact--mod {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.section-part-2-contact--mod .section-part-2__text {
  display: flex;
}
.section-part-2-contact--mod .section-part-2__text-paragraph {
  margin-left: 1rem;
  line-height: 35px;
}
.section-part-2-services--mod .letter-container-1__paragraph {
  line-height: 35px;
}
.section-part-2-services--mod {
  flex-direction: row-reverse;
}
.section-part-2-services--mod .section-part-2__text {
  margin-left: 1rem;
}
/* Text Container */
.section-part-2__text {
  margin-bottom: 1.11rem;
}

/* Subtitle */
.section-part-2__text-subtitle {
  font-family: var(--subtitle-font-family);
  font-size: var(--subtitle-font-size);
  font-weight: var(--subtitle-font-weight);
  line-height: var(--subtitle-line-height);
}
/* Paragraphs */
.section-part-2__text-paragraph {
  font-family: var(--paragraph-font-family);
  font-size: var(--paragraph-font-size);
  font-weight: var(--paragraph-font-weight);
  line-height: var(--paragraph-line-height);
  color: var(--secondary-color);
}
.section-part-2__text-paragraph-bold {
  font-weight: bold;
}
.section-part-2__letter--mod {
  display: flex;
  justify-content: end;
  width: 100%;
}
.letter-container-1__paragraph {
  font-family: var(--letter-font-family);
  font-size: var(--letter-font-size);
  font-weight: var(--letter-font-weight);
  color: var(--secondary-color);
}
.letter-container-1__underline {
  width: 100%;
  height: 0.11rem;
  background-color: var(--secondary-color);
}
.letter-container-1-all-devices {
  width: fit-content;
}
/* Letter container */
.letter-container-2 {
  display: flex;
  flex-direction: column;
  padding-right: 1.11rem;
}
.letter-container-2__email {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 2.61rem;
  margin-bottom: 1.11rem;
}
.letter-container-2__email-icon {
  color: white;
  width: 1.11rem;
  margin-right: 0.56rem;
}
.letter-container-2__email-text {
  font-family: var(--email-font-family);
  font-size: var(--email-font-size);
  font-weight: var(--email-font-weight);
  color: var(--secondary-color);
}
.letter-container-2__email-image {
  width: 5.56rem;
}
.letter-container-2__email-img {
  width: 100%;
  border-radius: 100%;
}
.section-part-2-workflow--mod li {
  margin-top: 2.22rem;
  font-family: 'Font Generic';
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.1rem;
}
.section-part-2-workflow--mod li:nth-child(3) {
  margin-top: 3rem;
}
.section-part-2-workflow--mod li:nth-child(3) div:nth-child(1) {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
.section-part-2-about--mod ul,
.section-part-2-clients--mod ul {
  padding-left: 1.1rem;
}
.section-part-2-about--mod li,
.section-part-2-clients--mod li {
  margin-top: 0.83rem;
  font-family: 'Font Generic';
  font-size: 1rem;
  font-weight: 400;
  line-height: 130%;
  list-style: unset;
}
.section-part-2__icon {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  height: 5rem;
  margin-bottom: 1.67rem;
}
/* Icon Hair Person */
.section-part-2__icon-hair-person {
  width: 5rem;
  height: 5rem;
}
.section-part-2__icon-hair-person path {
  fill: #fff;
}
/* Icon Pencil */
.section-part-2__icon-pencil {
  position: absolute;
  top: 80%;
  width: 1.66rem;
  height: 1.66rem;
}
.section-part-2__icon-pencil path {
  fill: #fff;
}
/* Icon Simple Person */
.section-part-2__icon-simple-person {
  width: 5rem;
  height: 5rem;
}
.section-part-2__icon-simple-person path {
  fill: #fff;
}
/* Icon Paper */
.section-part-2__icon-paper {
  position: absolute;
  top: 66%;
  width: 2.78rem;
  height: 2.78rem;
}
.section-part-2__icon-simple-person--mod {
  width: 5.22rem;
}
/* Icon Paper Modification (Workflow) */
.section-part-2__icon-paper {
  position: absolute;
  top: 66%;
  width: 2.78rem;
  height: 2.78rem;
}
/* Icon Message (Workflow) */
.section-part-2__icon-message {
  position: absolute;
  top: -0.83rem;
  width: 2.78rem;
  height: 2.78rem;
}

/* ANIMATIONS */
.animate {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1.5s ease, transform 0.5s ease;
}
.animate.active {
  opacity: 1;
  transform: translateY(0);
}

/* RESPONSIVENESS - 786px and 1150px */
@media screen and (min-width: 786px) {
  /* WRAPPER */
  .background-image {
    background: url('./assets/images/background-desk.jpg') top center fixed no-repeat;
    background-size: cover;
    background-size: 100vw auto;
  }
  body {
    overflow: unset !important;
  }
  /* NAVBAR */
  .nav-logo-container {
    margin: 1.11rem 2.8rem;
  }
  .nav-links {
    margin-right: 2.8rem;
  }
  .nav-logo {
    color: #fff !important;
  }
  .nav-links {
    position: relative;
    display: flex !important;
    flex-direction: row !important;
    justify-content: center;
    align-items: center;
    width: unset;
    height: 100%;
    background-color: unset;
    padding: 0rem;
    margin-right: var(--nav-margin-left-right);
    margin-left: var(--nav-margin-left-right);
  }
  .nav-links--mobile {
    display: none !important;
  }
  .nav-links--desktop {
    display: flex !important;
  }
  .nav-item {
    margin: 0.625rem;
  }
  .nav-item a {
    color: #fff;
  }
  .menu-hamburger {
    display: none;
  }
  .mobile-menu {
    display: none;
  }
  .mobile-menu.active {
    display: flex;
  }
  /* SECTION */
  .section {
    padding-left: 5.55rem;
    padding-right: 5.55rem;
  }
  .section-part-2 {
    max-width: 500px;
    margin: 0px;
  }
  /* HOME */
  .h-section-1-container-1 {
    padding-left: 20%;
  }
  .h-section-2-container {
    display: block;
    width: 50%;
    background: url('./assets/images/quotes.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 70.5%;
  }
  .h-section-1-container-1--mod {
    max-width: 650px;
    margin-top: 2.22rem;
    margin-left: auto;
    margin-right: auto;
  }
  .h-section-1-container-1__title {
    margin-bottom: 1.11rem;
  }

  /* SECTIONS */
  .section-services--mod,
  .section-workflow--mod,
  .section-about--mod,
  .section-clients--mod {
    margin-bottom: XX;
  }
  .section-part-1 {
    margin-bottom: 1.94rem;
  }
  .section-part-2-services--mod {
    flex-direction: row-reverse;
  }
  .section-part-2-contact--mod {
    flex-direction: row;
  }
  .section-part-2-contact--mod > .section-part-2__text {
    display: flex;
  }
  .section-part-2-contact--mod {
    max-width: 800px;
  }
  .letter-container-1__paragraph {
    font-size: 9rem;
    line-height: 90% !important;
  }
  .section-part-2-workflow--mod li {
    display: flex;
  }
  .section-part-2__icon {
    width: unset;
  }
  .section-part-2-workflow--mod li:nth-child(1) div:nth-child(1),
  .section-part-2-workflow--mod li:nth-child(4) div:nth-child(1) {
    padding-left: 4.56rem;
  }
  .section-part-2-workflow--mod li:nth-child(2) div:nth-child(1) {
    padding-left: 5.1rem;
  }
  .section-part-2 {
    max-width: 650px;
    margin: auto;
  }
  .section-part-2-workflow--mod .section-part-2__text {
    margin-left: 2.77rem;
  }
  .section-part-2-services--mod > .section-part-2__text,
  .section-part-2-workflow--mod li:nth-child(1) > .section-part-2__text,
  .section-part-2-workflow--mod li:nth-child(4) > .section-part-2__text {
    margin-left: 3.33rem;
  }
  .section-part-1__title-text {
    font-size: 2.2rem;
  }
  /* Letter */
  .section-part-2-contact--mod .section-part-2__letter .letter-container-1 {
    display: none !important;
  }
  .letter-container-1-all-devices {
    display: block !important;
    width: fit-content;
    margin-right: 2.2rem;
  }
  .letter-container-1-all-devices .letter-container-1__paragraph {
    font-size: 8rem;
  }
  .section-part-2__letter--mod {
    margin: 0px 0px 0px 1.6rem;
    width: unset;
  }
}

/* RESPONSIVENESS - 1150px or more */
@media screen and (min-width: 1150px) {
  /* NAVBAR */
  .nav-logo-container {
    margin: 1.11rem 6rem;
  }
  .nav-links {
    margin-right: 6rem;
  }
  .nav-item {
    margin-left: 1rem;
    margin-right: 1rem;
  }
  /* HOME */
  .h-section-1-container-1 {
    padding-left: 25%;
  }
  .h-section-1-container-1--mod {
    max-width: 800px;
    margin-top: 3rem;
    margin-left: auto;
    margin-right: auto;
  }
  .h-section-1-container-1__title-logo h1 {
    font-size: 3.9rem;
  }
  .h-section-1-container-1__title {
    max-width: 700px;
    font-size: 2.5rem;
  }
  .section-part-1 {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
  .section-part-1__pendulum {
    width: 2.7rem;
    height: 5.5rem;
  }
  .letter-container-1__paragraph {
    font-size: 16rem;
    line-height: 90% !important;
  }
  .letter-container-1-all-devices .letter-container-1__paragraph {
    font-size: 15rem;
  }
  .letter-container-2__email-image {
    width: unset;
  }
  .section-part-2-about--mod li,
  .section-part-2-clients--mod li,
  .section-part-2__text-paragraph {
    font-size: 1.3rem;
  }
  .section-part-1 {
    margin-bottom: 3.61rem;
  }
  .section-part-2__letter--mod {
    margin-left: 2.77rem;
  }
  .section-part-2 {
    max-width: 750px;
  }
  .letter-container-2__email-text {
  }
}

@media screen and (min-width: 1400px) {
  .h-section-1-container-1 {
    padding-left: 35%;
  }
}

@media screen and (min-width: 1900px) {
  .h-section-1-container-1 {
    padding-left: 40%;
  }
  .h-section-2-container {
    background-position: right;
  }
}
