body {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h5, p {
  font-weight: normal;
  margin: 0;
}

:focus, button:focus, a:focus {
  outline: 0;
}

ol, ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

li {
  list-style: none;
}

a {
  color: inherit;
}
a:focus, a:hover {
  color: inherit;
  text-decoration: none;
  outline: 0;
}

form {
  margin: 0;
}

input:focus, textarea:focus, select:focus {
  outline: 0;
}

button {
  border: none;
  background-color: transparent;
  padding: 0;
}
button:focus, button:hover {
  color: inherit;
  text-decoration: none;
  outline: 0;
}

/* Config */
html,
body {
  margin: 0;
  padding: 0;
  width: 100vw;
  height: auto;
  height: auto;
  background: #fff;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
}

body.scrollnone,
html.scrollnone {
  overflow-y: hidden !important;
}

html {
  overflow-x: hidden !important;
  width: 100vw;
}

body {
  overflow-x: hidden !important;
  width: 100vw;
}

html {
  background: #fff;
}

* {
  outline: none !important;
  box-sizing: border-box;
  text-decoration: none;
  outline: none;
  margin: 0;
  padding: 0;
  border: none;
}

div,
*,
a,
ul,
li,
p,
h1,
h2,
h3,
h4,
h5,
h6,
div:focus,
*:focus,
a:focus {
  box-sizing: border-box;
  text-decoration: none;
  outline: none;
  margin: 0;
  padding: 0;
  border: none;
}

ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

li {
  list-style-type: none;
}

button,
a,
input {
  -webkit-appearance: none;
}

::-webkit-scrollbar {
  width: 4px;
  background: #fff;
}

::-webkit-scrollbar-thumb {
  background: #3c3c3c;
  border-radius: 125px;
}

/* /Config */
/* Fonts */
@font-face {
  font-family: "dm-regular";
  src: url("../fonts/DMSans/DMSans-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "dm-medium";
  src: url("../fonts/DMSans/DMSans-Medium.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "dm-bold";
  src: url("../fonts/DMSans/DMSans-Bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-extraLight";
  src: url("../fonts/Nunito/Nunito-ExtraLight.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-Light";
  src: url("../fonts/Nunito/Nunito-Light.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-regular";
  src: url("../fonts/Nunito/Nunito-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-medium";
  src: url("../fonts/Nunito/Nunito-Medium.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-semibold";
  src: url("../fonts/Nunito/Nunito-SemiBold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-bold";
  src: url("../fonts/Nunito/Nunito-Bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-extrabold";
  src: url("../fonts/Nunito/Nunito-ExtraBold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "nu-black";
  src: url("../fonts/Nunito/Nunito-Black.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
/* /Fonts */
/* Variables */
/* /Variables */
/* Mixins */
h1 {
  font-size: 190px;
  line-height: 190px;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "dm-regular";
}
h1.white {
  color: #f2f2f2;
}
@media screen and (max-width: 769px) {
  h1 {
    font-size: 76px;
    line-height: 76px;
  }
}
@media screen and (max-width: 360px) {
  h1 {
    font-size: 58px;
    line-height: 58px;
  }
}

h2 {
  font-size: 40px;
  line-height: 41px;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "dm-regular";
}
h2.white {
  color: #fff;
}

h3 {
  font-size: 28px;
  line-height: normal;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "dm-regular";
}
h3.white {
  color: #f2f2f2;
}

h5 {
  font-size: 12px;
  letter-spacing: 2.6px;
  line-height: normal;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "dm-medium";
  text-transform: uppercase;
}
h5.white {
  color: #f2f2f2;
}

p {
  font-size: 16px;
  line-height: 28px;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "nu-regular";
}
p.white {
  color: #f2f2f2;
}

/* /Mixins */
/* Style */
/* Loader */
div.loader {
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #000;
  position: fixed;
  z-index: 99999;
  /***************************************************
  * Generated by SVG Artista on 4/19/2023, 10:53:12 AM
  * MIT license (https://opensource.org/licenses/MIT)
  * W. https://svgartista.net
  **************************************************/
}
div.loader svg .svg-elem-1 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}
div.loader svg.active .svg-elem-1 {
  fill: white;
}
div.loader svg .svg-elem-2 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.1s;
}
div.loader svg.active .svg-elem-2 {
  fill: white;
}
div.loader svg .svg-elem-3 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s;
}
div.loader svg.active .svg-elem-3 {
  fill: white;
}
div.loader svg .svg-elem-4 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.3s;
}
div.loader svg.active .svg-elem-4 {
  fill: white;
}
div.loader svg .svg-elem-5 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.4s;
}
div.loader svg.active .svg-elem-5 {
  fill: white;
}
div.loader svg .svg-elem-6 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s;
}
div.loader svg.active .svg-elem-6 {
  fill: white;
}
div.loader svg .svg-elem-7 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s;
}
div.loader svg.active .svg-elem-7 {
  fill: white;
}
div.loader svg .svg-elem-8 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7s;
}
div.loader svg.active .svg-elem-8 {
  fill: white;
}
div.loader svg .svg-elem-9 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}
div.loader svg.active .svg-elem-9 {
  fill: white;
}
div.loader svg .svg-elem-10 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
}
div.loader svg.active .svg-elem-10 {
  fill: white;
}
div.loader svg .svg-elem-11 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}
div.loader svg.active .svg-elem-11 {
  fill: white;
}
div.loader svg .svg-elem-12 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
}
div.loader svg.active .svg-elem-12 {
  fill: white;
}
div.loader svg .svg-elem-13 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s;
}
div.loader svg.active .svg-elem-13 {
  fill: white;
}
div.loader svg .svg-elem-14 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
}
div.loader svg.active .svg-elem-14 {
  fill: white;
}
div.loader svg .svg-elem-15 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s;
}
div.loader svg.active .svg-elem-15 {
  fill: white;
}
div.loader svg .svg-elem-16 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
}
div.loader svg.active .svg-elem-16 {
  fill: white;
}
div.loader svg .svg-elem-17 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
}
div.loader svg.active .svg-elem-17 {
  fill: white;
}
div.loader svg .svg-elem-18 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s;
}
div.loader svg.active .svg-elem-18 {
  fill: white;
}
div.loader svg .svg-elem-19 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s;
}
div.loader svg.active .svg-elem-19 {
  fill: white;
}
div.loader svg .svg-elem-20 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9s;
}
div.loader svg.active .svg-elem-20 {
  fill: white;
}
div.loader svg .svg-elem-21 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2s;
}
div.loader svg.active .svg-elem-21 {
  fill: white;
}
div.loader svg .svg-elem-22 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s;
}
div.loader svg.active .svg-elem-22 {
  fill: white;
}
div.loader svg .svg-elem-23 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s;
}
div.loader svg.active .svg-elem-23 {
  fill: white;
}
div.loader svg .svg-elem-24 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3s;
}
div.loader svg.active .svg-elem-24 {
  fill: white;
}
div.loader svg .svg-elem-25 {
  fill: transparent;
  transition: fill 0.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4s;
}
div.loader svg.active .svg-elem-25 {
  fill: white;
}

/* /Loader */
/* Home */
div.cookies {
  width: 575px;
  height: 123px;
  background-color: #fff;
  border-radius: 19px;
  position: fixed;
  bottom: 40px;
  left: calc(50vw - 287.5px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 45px 0 50px;
  z-index: 99;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0px 0px 10px #ccc);
}
@media screen and (max-width: 769px) {
  div.cookies {
    width: calc(100vw - 50px);
    left: 25px;
    bottom: 25px;
    display: block;
    padding: 25px;
    height: auto;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.16);
  }
}
div.cookies.opacity {
  opacity: 1;
  pointer-events: all;
}
div.cookies.none {
  opacity: 0;
  pointer-events: none;
}
div.cookies h3 {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 18px;
  line-height: 30px;
  color: #000;
  text-transform: uppercase;
  max-width: 250px;
}
div.cookies h3 a {
  border-bottom: 2px solid #000;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  display: block;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}
div.cookies button.accept {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  cursor: pointer;
}
div.cookies button.accept svg {
  margin-left: 45px;
}
div.cookies button.accept svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
div.cookies button.accept:hover, div.cookies button.accept.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
div.cookies button.accept:hover svg path, div.cookies button.accept.active svg path {
  fill: #fff;
}
@media screen and (max-width: 769px) {
  div.cookies button.accept {
    margin-top: 25px;
  }
}

header.header-home {
  display: block;
  width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
header.header-home div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 769px) {
  header.header-home div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  header.header-home div.container {
    max-width: calc(100vw - 80px);
  }
}
header.header-home div.container ul {
  margin-top: 50px;
  width: 163px;
}
@media screen and (max-width: 769px) {
  header.header-home div.container ul {
    margin-top: 35px;
    width: auto;
  }
}
header.header-home div.container ul li a {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 18px;
  line-height: 24px;
  color: #fff;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
}
header.header-home div.container ul li a:hover, header.header-home div.container ul li a.active {
  border-bottom: 1px solid #fff;
}
header.header-home div.container ul li + li {
  margin-top: 12px;
}
header.header-home div.container ul li:last-child {
  margin-top: 16px;
}
header.header-home div.container ul li:last-child a svg path {
  fill: #fff;
}
header.header-home div.container ul + a {
  margin-top: 43px;
}
@media screen and (max-width: 769px) {
  header.header-home div.container ul + a {
    margin-top: 40px;
  }
}
@media screen and (max-width: 360px) {
  header.header-home div.container ul + a {
    margin-top: 34px;
  }
}
@media screen and (max-width: 360px) {
  header.header-home div.container ul + a svg {
    width: 140px;
  }
}
header.header-home div.container ul + a + a {
  margin-top: 50px;
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 18px;
  line-height: 24px;
  color: #fff;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
}
@media screen and (max-width: 769px) {
  header.header-home div.container ul + a + a {
    display: none;
  }
}
header.header-home div.container ul + a + a:hover, header.header-home div.container ul + a + a.active {
  border-bottom: 1px solid #fff;
}

section.banner-home {
  display: block;
  position: relative;
  top: 0;
  background-color: #000;
}
section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide {
  position: relative;
  width: 100vw;
  height: 100vh;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 769px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide {
    height: calc(100vh - 90px);
    min-height: 600px;
    height: 600px;
  }
}
@media screen and (max-width: 360px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide {
    min-height: 460px;
    height: 460px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide {
    height: calc(100vh - 90px);
    min-height: 600px;
    height: 600px;
  }
}
section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide img {
  width: 100vw;
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  opacity: 0.74;
}
@media screen and (max-width: 769px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide img {
    height: calc(100vh - 90px);
    min-height: 600px;
    height: 600px;
  }
}
@media screen and (max-width: 360px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide img {
    min-height: 460px;
    height: 460px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide img {
    height: calc(100vh - 90px);
    min-height: 600px;
    height: 600px;
  }
}
section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide div.caption {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  margin-bottom: 60px;
}
@media screen and (max-width: 769px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide div.caption {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide div.caption {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 360px) {
  section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide div.caption {
    margin-bottom: 40px;
  }
}
section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide div.caption h2 {
  max-width: 200px;
  margin-bottom: 15px;
}
section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide div.caption h2,
section.banner-home div.slider-home div.swiper-wrapper div.swiper-slide div.caption h5 {
  color: #fff;
}
section.banner-home a.scroll-down {
  position: absolute;
  width: 38px;
  height: 38px;
  bottom: 98px;
  left: calc(50vw - 19px);
  z-index: 1;
  -webkit-animation: scroll 1.4s ease-in-out infinite;
          animation: scroll 1.4s ease-in-out infinite;
}
@media screen and (max-width: 769px) {
  section.banner-home a.scroll-down {
    left: auto;
    right: 25px;
  }
}
section.banner-home a.scroll-down svg {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-home a.scroll-down:hover svg {
  transform: scale(1.1);
}

@-webkit-keyframes scroll {
  from {
    transform: translateY(0);
  }
  50% {
    transform: translateY(20px);
  }
  to {
    transform: translateY(0);
  }
}

@keyframes scroll {
  from {
    transform: translateY(0);
  }
  50% {
    transform: translateY(20px);
  }
  to {
    transform: translateY(0);
  }
}
a.whatsapp-button {
  width: 66px;
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  right: 20px;
  bottom: 40px;
  background-color: #3c3c3c;
  z-index: 3;
  border-radius: 50%;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
@media screen and (max-width: 769px) {
  a.whatsapp-button {
    right: 25px;
    bottom: 25px;
    width: 60px;
    height: 60px;
  }
}
@media screen and (max-width: 360px) {
  a.whatsapp-button {
    right: 15px;
    bottom: 15px;
    width: 55px;
    height: 55px;
  }
}
a.whatsapp-button:hover {
  transform: scale(1.1);
}
a.whatsapp-button svg {
  width: 41px;
}
@media screen and (max-width: 769px) {
  a.whatsapp-button svg {
    width: 38px;
    height: 38px;
  }
}
@media screen and (max-width: 360px) {
  a.whatsapp-button svg {
    width: 34px;
    height: 34px;
  }
}

section.phrase-home div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: flex;
  position: relative;
  justify-content: space-between;
  padding: 50px 0 60px 0;
}
@media screen and (max-width: 769px) {
  section.phrase-home div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.phrase-home div.container {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  section.phrase-home div.container {
    display: block;
  }
}
section.phrase-home div.container h2 {
  max-width: 385px;
}
section.phrase-home div.container p {
  max-width: 90%;
  margin-top: 5px;
  font-size: 28px;
  line-height: normal;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "dm-regular";
  font-size: 26px;
  text-align: center;
}
section.phrase-home div.container p.white {
  color: #f2f2f2;
}
@media screen and (max-width: 769px) {
  section.phrase-home div.container p {
    margin-top: 34px;
    font-size: 20px;
  }
}
section.phrase-home div.container a {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  margin-top: 50px;
}
section.phrase-home div.container a svg {
  margin-left: 45px;
}
section.phrase-home div.container a svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.phrase-home div.container a:hover, section.phrase-home div.container a.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
section.phrase-home div.container a:hover svg path, section.phrase-home div.container a.active svg path {
  fill: #fff;
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.phrase-home div.container a {
    margin-left: 30px;
  }
}
section.phrase-home div.container > div.content {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

section.recent-projects {
  background-color: #eaeaea;
}
section.recent-projects div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  padding: 50px 0 42px 0;
}
@media screen and (max-width: 769px) {
  section.recent-projects div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.recent-projects div.container {
    max-width: calc(100vw - 80px);
  }
}
section.recent-projects div.container h3.init {
  font-size: 16px;
  line-height: 28px;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "nu-regular";
  text-align: right;
  text-transform: uppercase;
}
section.recent-projects div.container h3.init.white {
  color: #f2f2f2;
}
section.recent-projects div.container div.grid {
  margin-top: 45px;
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  grid-gap: 16px;
  grid-template-areas: "a1 a1 a1 a2 a2 a2 a2 a2" "a3 a3 a3 a3 a3 a4 a4 a4";
}
@media screen and (max-width: 769px) {
  section.recent-projects div.container div.grid {
    display: block;
    margin-top: 25px;
  }
}
section.recent-projects div.container div.grid a {
  width: 100%;
  height: 333px;
  background-color: #000;
  position: relative;
  display: block;
}
@media screen and (max-width: 769px) {
  section.recent-projects div.container div.grid a {
    height: 220px;
  }
}
section.recent-projects div.container div.grid a svg.plus {
  position: absolute;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.recent-projects div.container div.grid a div.caption {
  position: absolute;
  left: -30px;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  opacity: 0;
  bottom: 20px;
}
section.recent-projects div.container div.grid a div.caption h3,
section.recent-projects div.container div.grid a div.caption h5 {
  text-align: left;
  color: #fff;
}
section.recent-projects div.container div.grid a:hover img {
  opacity: 0.6;
}
section.recent-projects div.container div.grid a:hover div.caption {
  opacity: 1;
  left: 30px;
}
section.recent-projects div.container div.grid a:hover svg.plus {
  opacity: 1;
}
section.recent-projects div.container div.grid a img {
  width: 100%;
  height: 333px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
@media screen and (max-width: 769px) {
  section.recent-projects div.container div.grid a img {
    height: 220px;
  }
}
@media screen and (max-width: 769px) {
  section.recent-projects div.container div.grid a + a {
    margin-top: 16px;
  }
}
section.recent-projects div.container div.grid a:nth-child(1) {
  grid-area: a1;
}
section.recent-projects div.container div.grid a:nth-child(2) {
  grid-area: a2;
}
section.recent-projects div.container div.grid a:nth-child(3) {
  grid-area: a3;
}
section.recent-projects div.container div.grid a:nth-child(4) {
  grid-area: a4;
}
section.recent-projects div.container a.button {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  margin-top: 50px;
}
section.recent-projects div.container a.button svg {
  margin-left: 45px;
}
section.recent-projects div.container a.button svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.recent-projects div.container a.button:hover, section.recent-projects div.container a.button.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
section.recent-projects div.container a.button:hover svg path, section.recent-projects div.container a.button.active svg path {
  fill: #fff;
}

section.our-work div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: flex;
  position: relative;
  justify-content: space-between;
  padding: 40px 0 70px 0;
}
@media screen and (max-width: 769px) {
  section.our-work div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.our-work div.container {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  section.our-work div.container {
    display: block;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.our-work div.container div.content {
    margin-right: 30px;
  }
}
section.our-work div.container div.content h2 {
  max-width: 250px;
}
section.our-work div.container div.content p {
  margin-top: 34px;
  max-width: 400px;
}
section.our-work div.container div.content a {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  margin-top: 80px;
}
section.our-work div.container div.content a svg {
  margin-left: 45px;
}
section.our-work div.container div.content a svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.our-work div.container div.content a:hover, section.our-work div.container div.content a.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
section.our-work div.container div.content a:hover svg path, section.our-work div.container div.content a.active svg path {
  fill: #fff;
}
@media screen and (max-width: 769px) {
  section.our-work div.container div.content a {
    margin-top: 50px;
  }
}
section.our-work div.container ul.explain {
  display: block;
}
@media screen and (max-width: 769px) {
  section.our-work div.container ul.explain {
    margin-top: 40px;
  }
}
section.our-work div.container ul.explain li {
  width: 584px;
  border-bottom: 1px solid #dedede;
  cursor: pointer;
}
@media screen and (max-width: 769px) {
  section.our-work div.container ul.explain li {
    width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.our-work div.container ul.explain li {
    width: 360px;
  }
}
section.our-work div.container ul.explain li div.title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 28px;
  color: #3c3c3c;
  padding-bottom: 20px;
}
section.our-work div.container ul.explain li div.title div.plus {
  width: 11px;
  height: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
section.our-work div.container ul.explain li div.title div.plus span {
  width: 11px;
  height: 1px;
  background-color: #3c3c3c;
  display: block;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.our-work div.container ul.explain li div.title div.plus span:last-child {
  width: 1px;
  height: 11px;
  position: absolute;
  left: 5px;
  top: 0;
}
section.our-work div.container ul.explain li div.explain-description {
  display: none;
}
section.our-work div.container ul.explain li div.explain-description p {
  margin-left: 25px;
  box-sizing: border-box;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  pointer-events: none;
  height: -webkit-fit-content !important;
  height: -moz-fit-content !important;
  height: fit-content !important;
}
section.our-work div.container ul.explain li.active div.title div.plus span:last-child {
  transform: rotate(90deg);
}
section.our-work div.container ul.explain li + li {
  margin-top: 30px;
}

section.lettering-project {
  background-color: #000;
  padding: 105px 0;
}
@media screen and (max-width: 769px) {
  section.lettering-project {
    padding: 90px 25px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.lettering-project {
    padding: 105px 40px;
  }
}
section.lettering-project h2 {
  color: #fff;
  text-align: center;
}
section.lettering-project a {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  border-color: #fff;
  justify-content: center;
  margin: 0 auto;
  margin-top: 45px;
}
section.lettering-project a svg {
  margin-left: 45px;
}
section.lettering-project a svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.lettering-project a:hover, section.lettering-project a.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
section.lettering-project a:hover svg path, section.lettering-project a.active svg path {
  fill: #fff;
}
section.lettering-project a:hover {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

footer.footer div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  padding: 65px 0 45px 0;
}
@media screen and (max-width: 769px) {
  footer.footer div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  footer.footer div.container {
    max-width: calc(100vw - 80px);
  }
}
footer.footer div.container ul.grid {
  display: grid;
  justify-content: space-between;
  grid-template-columns: repeat(4, auto);
}
@media screen and (max-width: 769px) {
  footer.footer div.container ul.grid {
    display: block;
  }
}
footer.footer div.container ul.grid li {
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}
footer.footer div.container ul.grid li h4 {
  font-family: "nu-regular";
  font-size: 18px;
  line-height: 24px;
  font-weight: normal;
  color: #000;
  margin-bottom: 12px;
}
footer.footer div.container ul.grid li a {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
footer.footer div.container ul.grid li a:hover {
  color: #3c3c3c;
}
footer.footer div.container ul.grid li a,
footer.footer div.container ul.grid li p {
  font-family: "nu-regular";
  font-size: 16px;
  line-height: 28px;
  font-weight: normal;
  color: #c7c7c7;
  display: block;
  max-width: 320px;
}
footer.footer div.container ul.grid li:last-child a {
  font-family: "nu-regular";
  font-size: 18px;
  line-height: 24px;
  font-weight: normal;
  color: #000;
  margin-bottom: 12px;
  border-bottom: 1px solid transparent;
  display: block;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
}
footer.footer div.container ul.grid li:last-child a:hover {
  border-bottom: 1px solid #000;
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  footer.footer div.container ul.grid li:nth-child(2),
footer.footer div.container ul.grid li:nth-child(3) {
    padding: 0 15px;
  }
}
@media screen and (max-width: 769px) {
  footer.footer div.container ul.grid li + li {
    margin-top: 25px;
  }
}
footer.footer div.container div.copyrights {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 85px;
}
@media screen and (max-width: 769px) {
  footer.footer div.container div.copyrights {
    display: block;
  }
}
footer.footer div.container div.copyrights a:first-child svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
footer.footer div.container div.copyrights a:first-child:hover svg path {
  fill: #3c3c3c;
}
footer.footer div.container div.copyrights a + a {
  display: flex;
  align-items: center;
  font-family: "dm-medium";
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 12px;
  color: #c7c7c7;
}
@media screen and (max-width: 769px) {
  footer.footer div.container div.copyrights a + a {
    margin-top: 25px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  footer.footer div.container div.copyrights a + a {
    margin-right: 80px;
  }
}
@media screen and (min-width: 1168px) and (max-width: 1290px) {
  footer.footer div.container div.copyrights a + a {
    margin-right: 60px;
  }
}
footer.footer div.container div.copyrights a + a svg {
  margin-left: 40px;
}
@media screen and (max-width: 769px) {
  footer.footer div.container div.copyrights a + a svg {
    margin-left: 25px;
  }
}
@media screen and (max-width: 360px) {
  footer.footer div.container div.copyrights a + a svg {
    margin-left: 10px;
  }
}
footer.footer div.container div.copyrights a + a svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
footer.footer div.container div.copyrights a + a:hover svg path {
  fill: #3c3c3c;
}

/* /Home */
/* About */
header.common {
  height: 85px;
  display: block;
  width: 100vw;
  top: 0;
  margin: 0;
}
@media screen and (max-width: 769px) {
  header.common {
    position: relative;
    z-index: 999;
  }
}
header.common div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: center;
  height: 85px;
}
@media screen and (max-width: 769px) {
  header.common div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  header.common div.container {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  header.common div.container a svg {
    width: 150px;
  }
}
header.common div.container ul {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 769px) {
  header.common div.container ul {
    display: none;
  }
}
header.common div.container ul li a {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 18px;
  line-height: 24px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
}
header.common div.container ul li a:hover, header.common div.container ul li a.active {
  border-bottom: 1px solid #000;
}
header.common div.container ul li + li {
  margin-left: 40px;
}
header.common div.container ul li:last-child {
  margin-left: 65px;
}
header.common div.container ul li:last-child a svg path {
  fill: #000;
}
header.common div.container div.hamburger {
  display: none;
}
@media screen and (max-width: 769px) {
  header.common div.container div.hamburger {
    display: block;
    display: block;
    width: 18px;
    cursor: pointer;
  }
}
header.common div.container div.hamburger span {
  background: #575757;
  height: 2px;
  width: 18px;
  display: block;
  transition: all 0.35s ease;
}
header.common div.container div.hamburger span:nth-child(2) {
  margin-top: 5px;
}
@media screen and (max-width: 769px) {
  header.common div.container div.hamburger.active span.top {
    transform: translateY(-3px) translateX(0) rotate(45deg);
  }
}
@media screen and (max-width: 769px) {
  header.common div.container div.hamburger.active span.bottom {
    transform: translateY(-11px) translateX(0) rotate(-45deg);
    position: relative;
    z-index: 999999999;
  }
}

div.menu {
  width: 0px;
  height: 100vh;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  padding: 0 25px;
  z-index: 99;
  display: flex;
  flex-direction: column;
  justify-content: center;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  pointer-events: none;
  left: 100vw;
}
div.menu.active {
  opacity: 1;
  width: 100vw;
  left: 0;
  pointer-events: all;
}
div.menu.active ul {
  opacity: 1;
}
div.menu ul {
  display: flex;
  align-items: center;
  flex-direction: column;
  align-items: flex-end;
  opacity: 0;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
div.menu ul li a {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 18px;
  line-height: 24px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
}
div.menu ul li a:hover, div.menu ul li a.active {
  border-bottom: 1px solid #000;
}
div.menu ul li + li {
  margin-top: 6vh;
}
div.menu ul li:last-child {
  margin-left: 65px;
}
div.menu ul li:last-child a svg path {
  fill: #000;
}

section.banner-studio div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  padding-top: 90px;
}
@media screen and (max-width: 769px) {
  section.banner-studio div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-studio div.container {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  section.banner-studio div.container {
    padding-top: 70px;
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-studio div.container {
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-studio div.container h1 {
    font-size: 140px;
  }
}
section.banner-studio div.container div.content {
  width: 750px;
  margin-top: 50px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 40px;
}
@media screen and (max-width: 769px) {
  section.banner-studio div.container div.content {
    width: calc(100vw - 50px);
    display: block;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-studio div.container div.content {
    width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  section.banner-studio div.container div.content p + p {
    margin-top: 20px;
  }
}
section.banner-studio div.container a.scroll-down {
  position: absolute;
  width: 38px;
  height: 38px;
  bottom: 70px;
  right: calc(50vw - 19px);
  right: 0;
  right: calc((((((100vw - 1088px) / 2)) * -1) + 140px));
  z-index: 1;
  -webkit-animation: scroll 1.4s ease-in-out infinite;
          animation: scroll 1.4s ease-in-out infinite;
}
@media screen and (max-width: 769px) {
  section.banner-studio div.container a.scroll-down {
    right: 25px;
    bottom: 10px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-studio div.container a.scroll-down {
    bottom: 10px;
  }
}
section.banner-studio div.container a.scroll-down svg {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-studio div.container a.scroll-down svg path {
  fill: #000000;
}
section.banner-studio div.container a.scroll-down svg #Elipse_3 {
  stroke: #000000;
}
section.banner-studio div.container a.scroll-down:hover svg {
  transform: scale(1.1);
}

section.partners {
  margin-top: 50px;
  position: relative;
  padding-bottom: 95px;
}
section.partners img.banner {
  width: 100vw;
  height: 410px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
@media screen and (max-width: 769px) {
  section.partners img.banner {
    height: 315px;
  }
}
section.partners ul {
  max-width: 690px;
  width: 690px;
  margin: 0 auto;
  display: flex;
  position: relative;
  justify-content: space-between;
  z-index: 1;
  padding-top: 100px;
}
@media screen and (max-width: 769px) {
  section.partners ul {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.partners ul {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  section.partners ul {
    display: block;
  }
}
section.partners ul li img {
  width: 320px;
  height: 430px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
@media screen and (max-width: 769px) {
  section.partners ul li img {
    width: calc(100vw - 50px);
  }
}
section.partners ul li h3 {
  margin-top: 20px;
}
section.partners ul li h5 {
  margin-top: 10px;
}
section.partners ul li h3,
section.partners ul li h5 {
  text-align: center;
}
@media screen and (max-width: 769px) {
  section.partners ul li + li {
    margin-top: 25px;
  }
}
section.partners div.lettering {
  width: 900px;
  margin: 0 auto;
  margin-top: 110px;
}
@media screen and (max-width: 769px) {
  section.partners div.lettering {
    width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.partners div.lettering {
    width: calc(100vw - 80px);
  }
}
section.partners div.lettering h3 {
  text-align: center;
}
section.partners div.lettering h3 p {
  font-size: 28px;
  line-height: normal;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "dm-regular";
}
section.partners div.lettering h3 p.white {
  color: #f2f2f2;
}

section.talents {
  background-color: #eaeaea;
  padding-top: 55px;
  padding-bottom: 70px;
  position: relative;
}
@media screen and (max-width: 769px) {
  section.talents {
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.talents {
    padding-bottom: 80px;
  }
}
section.talents div.container {
  max-width: 812px;
  width: 812px;
  margin: 0 auto;
  display: block;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 769px) {
  section.talents div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.talents div.container {
    max-width: calc(100vw - 80px);
  }
}
section.talents div.container h2 {
  text-align: center;
}
@media screen and (max-width: 769px) {
  section.talents div.container h2 {
    width: calc(100vw - 50px);
  }
}
section.talents div.container div.slider-talents {
  margin-top: 50px;
}
section.talents div.container div.slider-talents div.swiper-wrapper div.swiper-slide img {
  width: 260px;
  height: 317px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  margin-bottom: 15px;
}
@media screen and (max-width: 769px) {
  section.talents div.container div.slider-talents div.swiper-wrapper div.swiper-slide img {
    width: calc(100vw - 50px);
    height: calc(100vw);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.talents div.container div.slider-talents div.swiper-wrapper div.swiper-slide img {
    width: calc((100vw - 97px) / 2);
    height: calc(((100vw - 97px) / 2) + 30px);
  }
}
@media screen and (min-width: 940px) and (max-width: 1168px) {
  section.talents div.container div.slider-talents div.swiper-wrapper div.swiper-slide img {
    width: calc((790px) / 3);
    height: calc((790px) / 3 + 80px);
  }
}
section.talents div.container div.slider-talents div.swiper-wrapper div.swiper-slide h5 {
  color: #a7a7a7;
}
section.talents div.container div.slider-talents div.swiper-wrapper div.swiper-slide h3 {
  font-size: 18px;
}
section.talents div.swiper-button-prev,
section.talents div.swiper-button-next {
  position: absolute;
  display: block;
  z-index: 3;
  bottom: auto;
  cursor: pointer;
  pointer-events: all !important;
  opacity: 1 !important;
  top: 285px;
  margin: 0;
  width: 38px;
  height: 38px;
}
@media screen and (max-width: 769px) {
  section.talents div.swiper-button-prev,
section.talents div.swiper-button-next {
    top: auto;
    bottom: 30px;
  }
}
@media screen and (min-width: 770px) and (max-width: 940px) {
  section.talents div.swiper-button-prev,
section.talents div.swiper-button-next {
    top: auto;
    bottom: 30px;
  }
}
section.talents div.swiper-button-prev svg,
section.talents div.swiper-button-next svg {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.talents div.swiper-button-prev::after,
section.talents div.swiper-button-next::after {
  display: none;
}
section.talents div.swiper-button-prev:hover svg,
section.talents div.swiper-button-next:hover svg {
  transform: scale(1.1);
}
section.talents div.swiper-button-prev {
  left: calc((((100vw - 812px) / 2) - 60px));
  right: auto;
}
@media screen and (max-width: 769px) {
  section.talents div.swiper-button-prev {
    left: calc(50vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 940px) {
  section.talents div.swiper-button-prev {
    left: calc(50vw - 50px);
  }
}
section.talents div.swiper-button-next {
  right: calc((((100vw - 812px) / 2) - 60px));
  left: auto;
}
@media screen and (max-width: 769px) {
  section.talents div.swiper-button-next {
    right: calc(50vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 940px) {
  section.talents div.swiper-button-next {
    right: calc(50vw - 50px);
  }
}

/* /About */
/* Projects */
section.projects {
  margin-top: 70px;
  padding-bottom: 80px;
}
@media screen and (max-width: 769px) {
  section.projects {
    margin-top: 44px;
  }
}
section.projects div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
}
@media screen and (max-width: 769px) {
  section.projects div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.projects div.container {
    max-width: calc(100vw - 80px);
  }
}
section.projects div.container div.filter {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 769px) {
  section.projects div.container div.filter {
    flex-wrap: wrap;
    justify-content: center;
  }
}
section.projects div.container div.filter button {
  color: #000;
  font-family: "dm-regular";
  font-size: 12px;
  line-height: 16px;
  border: 1px solid #000;
  text-transform: uppercase;
  border-radius: 23px;
  height: 33px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  cursor: pointer;
  background-color: #fff;
}
@media screen and (max-width: 769px) {
  section.projects div.container div.filter button {
    margin-top: 6px;
  }
}
section.projects div.container div.filter button.active {
  background-color: #000;
  color: #fff;
}
section.projects div.container div.filter button + button {
  margin-left: 6px;
}
section.projects div.container div.grid {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 16px;
}
@media screen and (max-width: 769px) {
  section.projects div.container div.grid {
    display: block;
  }
}
section.projects div.container div.grid a {
  width: 100%;
  height: 419px;
  background-color: #000;
  position: relative;
  display: block;
  overflow: hidden;
}
@media screen and (max-width: 769px) {
  section.projects div.container div.grid a {
    height: 220px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.projects div.container div.grid a {
    height: 360px;
  }
}
section.projects div.container div.grid a div.hover {
  position: absolute;
  width: 100%;
  height: 419px;
  left: 0;
  top: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 34px;
  align-items: center;
  opacity: 0;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
@media screen and (max-width: 769px) {
  section.projects div.container div.grid a div.hover {
    height: 220px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.projects div.container div.grid a div.hover {
    height: 360px;
  }
}
section.projects div.container div.grid a div.hover svg {
  position: absolute;
  left: calc(50% - 17px);
  top: calc(50% - 17px);
  width: 34px;
  height: 34px;
}
section.projects div.container div.grid a div.hover h3,
section.projects div.container div.grid a div.hover h5 {
  text-align: center;
  color: #fff;
  transform: translateY(80px);
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.projects div.container div.grid a svg.plus {
  position: absolute;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.projects div.container div.grid a div.caption {
  position: absolute;
  left: -30px;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  opacity: 0;
  bottom: 20px;
}
section.projects div.container div.grid a div.caption h3,
section.projects div.container div.grid a div.caption h5 {
  text-align: left;
  color: #fff;
}
section.projects div.container div.grid a:hover img {
  opacity: 0.6;
}
section.projects div.container div.grid a:hover div.hover {
  opacity: 1;
}
section.projects div.container div.grid a:hover div.hover h3,
section.projects div.container div.grid a:hover div.hover h5 {
  transform: translateY(0);
}
section.projects div.container div.grid a img {
  width: 100%;
  height: 419px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
@media screen and (max-width: 769px) {
  section.projects div.container div.grid a img {
    height: 220px;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.projects div.container div.grid a img {
    height: 360px;
  }
}
@media screen and (max-width: 769px) {
  section.projects div.container div.grid a + a {
    margin-top: 16px;
  }
}

/* /Projects */
/* Project */
section.banner-project {
  width: 100vw;
  height: calc(100vh - 85px);
  display: block;
  position: relative;
  background-color: #000;
}
section.banner-project img {
  width: 100vw;
  height: calc(100vh - 85px);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.6;
}
section.banner-project div.title {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: flex;
  position: relative;
  align-items: center;
  justify-content: space-between;
  padding-top: 50px;
}
@media screen and (max-width: 769px) {
  section.banner-project div.title {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-project div.title {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  section.banner-project div.title {
    display: block;
  }
}
section.banner-project div.title a {
  color: #fff;
  font-family: "dm-regular";
  font-size: 12px;
  line-height: 16px;
  border: 1px solid #fff;
  text-transform: uppercase;
  border-radius: 23px;
  height: 33px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  cursor: pointer;
}
@media screen and (max-width: 769px) {
  section.banner-project div.title a {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
}
section.banner-project div.title a:hover {
  background-color: #fff;
  color: #000;
}
section.banner-project div.title h2 {
  max-width: 300px;
}
@media screen and (max-width: 769px) {
  section.banner-project div.title h2 {
    margin-top: 15px;
  }
}
section.banner-project div.title h2,
section.banner-project div.title h5 {
  color: #fff;
}
@media screen and (max-width: 769px) {
  section.banner-project div.title h5 {
    margin-top: 10px;
  }
}
section.banner-project a.scroll-down {
  position: absolute;
  width: 38px;
  height: 38px;
  bottom: 98px;
  left: calc(50vw - 19px);
  z-index: 1;
  -webkit-animation: scroll 1.4s ease-in-out infinite;
          animation: scroll 1.4s ease-in-out infinite;
}
section.banner-project a.scroll-down svg {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-project a.scroll-down:hover svg {
  transform: scale(1.1);
}

section.about-project div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  padding-top: 45px;
  padding-bottom: 90px;
}
@media screen and (max-width: 769px) {
  section.about-project div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.about-project div.container {
    max-width: calc(100vw - 80px);
  }
}
section.about-project div.container div.content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
}
@media screen and (max-width: 769px) {
  section.about-project div.container div.content {
    display: block;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.about-project div.container div.content div.text {
    margin-right: 30px;
  }
}
section.about-project div.container div.content div.text h3 {
  max-width: 444px;
}
section.about-project div.container div.content div.text p {
  margin-top: 10px;
  max-width: 444px;
}
section.about-project div.container div.content ul.info {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 30px;
  position: relative;
}
@media screen and (max-width: 769px) {
  section.about-project div.container div.content ul.info {
    margin-top: 25px;
  }
}
section.about-project div.container div.content ul.info li {
  display: flex;
  flex-direction: column;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
}
section.about-project div.container div.content ul.info li p {
  color: #000;
}
section.about-project div.container div.content ul.info li h3 {
  color: #3c3c3c;
}
section.about-project div.container div.grid {
  margin-top: 45px;
  display: flex;
  flex-wrap: wrap;
  grid-gap: 16px;
  margin-bottom: 50px;
}
@media screen and (max-width: 769px) {
  section.about-project div.container div.grid {
    display: block;
  }
}
section.about-project div.container div.grid button:nth-child(4n-1),
section.about-project div.container div.grid button:nth-child(4n-2) {
  width: 60%;
}
section.about-project div.container div.grid button:nth-child(4n),
section.about-project div.container div.grid button:nth-child(4n-3) {
  width: 38%;
}
section.about-project div.container div.grid button.lastopenGallery {
  width: 100%;
}
section.about-project div.container div.grid button.openGallery {
  height: 333px;
  background-color: #000;
  position: relative;
  display: block;
  cursor: pointer;
}
@media screen and (max-width: 769px) {
  section.about-project div.container div.grid button.openGallery {
    height: 220px;
    width: 100%;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.about-project div.container div.grid button.openGallery {
    width: 100%;
  }
}
section.about-project div.container div.grid button.openGallery svg.plus {
  position: absolute;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.about-project div.container div.grid button.openGallery div.caption {
  position: absolute;
  left: -30px;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  opacity: 0;
  bottom: 20px;
}
section.about-project div.container div.grid button.openGallery div.caption h3,
section.about-project div.container div.grid button.openGallery div.caption h5 {
  text-align: left;
  color: #fff;
}
section.about-project div.container div.grid button.openGallery:hover img {
  opacity: 0.6;
}
section.about-project div.container div.grid button.openGallery:hover div.caption {
  opacity: 1;
  left: 30px;
}
section.about-project div.container div.grid button.openGallery:hover svg.plus {
  opacity: 1;
}
section.about-project div.container div.grid button.openGallery img {
  width: 100%;
  height: 333px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
@media screen and (max-width: 769px) {
  section.about-project div.container div.grid button.openGallery img {
    height: 220px;
  }
}
@media screen and (max-width: 769px) {
  section.about-project div.container div.grid button + button {
    margin-top: 16px;
  }
}
section.about-project div.container div.navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #707070;
  padding-top: 15px;
}
@media screen and (max-width: 769px) {
  section.about-project div.container div.navigation {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "a1 a1" "a2 a3";
  }
}
section.about-project div.container div.navigation a.prev {
  grid-area: a2;
  margin-top: 10px;
}
section.about-project div.container div.navigation a:nth-child(2) {
  grid-area: a1;
  justify-self: center;
}
section.about-project div.container div.navigation a.next {
  grid-area: a3;
  justify-self: right;
  margin-top: 10px;
}
section.about-project div.container div.navigation a {
  font-size: 20px;
  line-height: normal;
  color: #3c3c3c;
  font-family: "dm-regular";
  font-weight: normal;
}
section.about-project div.container div.navigation a.prev, section.about-project div.container div.navigation a.next {
  display: flex;
  align-items: center;
}
section.about-project div.container div.navigation a.prev svg, section.about-project div.container div.navigation a.next svg {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.about-project div.container div.navigation a.prev:hover svg {
  transform: translateX(-8px);
}
section.about-project div.container div.navigation a.prev svg {
  margin-right: 10px;
}
section.about-project div.container div.navigation a.next:hover svg {
  transform: translateX(8px) rotate(180deg);
}
section.about-project div.container div.navigation a.next svg {
  margin-left: 10px;
  transform: rotate(180deg);
}

div.full-slider {
  background-color: rgba(0, 0, 0, 0.8);
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0;
  display: block;
  position: fixed;
  z-index: 9999;
  opacity: 0;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  pointer-events: none;
}
div.full-slider.active {
  opacity: 1;
  pointer-events: all;
}
div.full-slider div.close {
  display: block;
  display: block;
  width: 18px;
  cursor: pointer;
  position: absolute;
  top: 40px;
  right: 40px;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
@media screen and (max-width: 769px) {
  div.full-slider div.close {
    right: 25px;
    top: 25px;
  }
}
div.full-slider div.close:hover {
  transform: scale(1.1);
}
div.full-slider div.close span {
  background: #fff;
  height: 2px;
  width: 18px;
  display: block;
  transition: all 0.35s ease;
}
div.full-slider div.close span:nth-child(2) {
  margin-top: 5px;
}
div.full-slider div.close span.top {
  transform: translateY(-3px) translateX(0) rotate(45deg);
}
div.full-slider div.close span.bottom {
  transform: translateY(-11px) translateX(0) rotate(-45deg);
  position: relative;
  z-index: 999999999;
}
div.full-slider div.info {
  position: absolute;
  width: 890px;
  bottom: 60px;
  left: calc((100vw - 890px) / 2);
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1;
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  div.full-slider div.info {
    left: 40px;
    bottom: 140px;
    width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  div.full-slider div.info {
    left: 25px;
    width: calc(100vw - 50px);
    bottom: auto;
    top: calc(50vh - ((100vw - 50px) / 2) - 40px);
  }
}
div.full-slider div.info h5 {
  color: #fff;
}
div.full-slider div.info h6 {
  font-family: "nu-regular";
  font-weight: normal;
  font-size: 18px;
  color: #fff;
}
div.full-slider div.container {
  max-width: 890px;
  width: 890px;
  margin: 0 auto;
  display: block;
  position: relative;
  height: 100vh;
}
@media screen and (max-width: 769px) {
  div.full-slider div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  div.full-slider div.container {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (min-width: 1168px) {
  div.full-slider div.container {
    width: calc(100vw - 100px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  div.full-slider div.container {
    width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  div.full-slider div.container {
    width: calc(100vw - 50px);
  }
}
div.full-slider div.container div.intern-project-slider {
  overflow: hidden;
}
div.full-slider div.container div.intern-project-slider div.swiper-wrapper div.swiper-slide div.img {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
div.full-slider div.container div.intern-project-slider div.swiper-wrapper div.swiper-slide div.img img {
  max-height: calc(100vh - 200px);
  max-width: 890px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
@media screen and (max-width: 769px) {
  div.full-slider div.container div.intern-project-slider div.swiper-wrapper div.swiper-slide div.img img {
    max-width: calc(100vw - 50px);
    max-height: calc(100vw - 50px);
  }
}
div.full-slider div.swiper-button-prev,
div.full-slider div.swiper-button-next {
  position: absolute;
  display: block;
  z-index: 3;
  bottom: auto;
  cursor: pointer;
  pointer-events: all !important;
  opacity: 1 !important;
  top: calc(50vh - 19px);
  margin: 0;
  width: 38px;
  height: 38px;
}
@media screen and (max-width: 769px) {
  div.full-slider div.swiper-button-prev,
div.full-slider div.swiper-button-next {
    top: auto;
    bottom: 60px;
  }
}
@media screen and (max-width: 360px) {
  div.full-slider div.swiper-button-prev,
div.full-slider div.swiper-button-next {
    bottom: 40px;
  }
}
@media screen and (min-width: 770px) and (max-width: 940px) {
  div.full-slider div.swiper-button-prev,
div.full-slider div.swiper-button-next {
    top: auto;
    bottom: 30px;
  }
}
div.full-slider div.swiper-button-prev svg,
div.full-slider div.swiper-button-next svg {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
div.full-slider div.swiper-button-prev svg path,
div.full-slider div.swiper-button-next svg path {
  fill: #fff;
}
div.full-slider div.swiper-button-prev svg g#Elipse_3,
div.full-slider div.swiper-button-next svg g#Elipse_3 {
  stroke: #fff;
}
div.full-slider div.swiper-button-prev::after,
div.full-slider div.swiper-button-next::after {
  display: none;
}
div.full-slider div.swiper-button-prev:hover svg,
div.full-slider div.swiper-button-next:hover svg {
  transform: scale(1.1);
}
div.full-slider div.swiper-button-prev {
  left: calc((((100vw - 890px) / 2) - 60px));
  right: auto;
}
@media screen and (max-width: 769px) {
  div.full-slider div.swiper-button-prev {
    left: calc(50vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  div.full-slider div.swiper-button-prev {
    left: 50px;
  }
}
div.full-slider div.swiper-button-next {
  right: calc((((100vw - 890px) / 2) - 60px));
  left: auto;
}
@media screen and (max-width: 769px) {
  div.full-slider div.swiper-button-next {
    right: calc(50vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  div.full-slider div.swiper-button-next {
    right: 50px;
  }
}

/* /Project */
/* Faq */
section.banner-faq div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  padding-bottom: 40px;
}
@media screen and (max-width: 769px) {
  section.banner-faq div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-faq div.container {
    max-width: calc(100vw - 80px);
  }
}
section.banner-faq div.container div.main-title {
  margin-top: 50px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 769px) {
  section.banner-faq div.container div.main-title {
    display: block;
  }
}
section.banner-faq div.container div.main-title h2 {
  width: 220px;
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-faq div.container div.main-title h2 {
    margin-right: 30px;
  }
}
section.banner-faq div.container div.main-title p {
  width: 565px;
}
@media screen and (max-width: 769px) {
  section.banner-faq div.container div.main-title p {
    width: calc(100vw - 50px);
    margin-top: 15px;
  }
}
section.banner-faq div.container ul.explain {
  display: block;
  margin-top: 100px;
}
@media screen and (max-width: 769px) {
  section.banner-faq div.container ul.explain {
    margin-top: 80px;
  }
}
section.banner-faq div.container ul.explain li {
  border-bottom: 1px solid #dedede;
  cursor: pointer;
}
section.banner-faq div.container ul.explain li div.title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: "dm-bold";
  font-weight: normal;
  font-size: 28px;
  color: #3c3c3c;
  padding-bottom: 20px;
}
section.banner-faq div.container ul.explain li div.title div.plus {
  width: 11px;
  height: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
section.banner-faq div.container ul.explain li div.title div.plus span {
  width: 11px;
  height: 1px;
  background-color: #3c3c3c;
  display: block;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-faq div.container ul.explain li div.title div.plus span:last-child {
  width: 1px;
  height: 11px;
  position: absolute;
  left: 5px;
  top: 0;
}
section.banner-faq div.container ul.explain li div.explain-description {
  display: none;
}
section.banner-faq div.container ul.explain li div.explain-description p {
  margin-left: 25px;
  box-sizing: border-box;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  pointer-events: none;
  height: -webkit-fit-content !important;
  height: -moz-fit-content !important;
  height: fit-content !important;
}
section.banner-faq div.container ul.explain li.active div.title div.plus span:last-child {
  transform: rotate(90deg);
}
section.banner-faq div.container ul.explain li + li {
  margin-top: 30px;
}

/* /Faq */
/* Contact */
section.banner-contact div.container {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  padding-top: 50px;
  border-bottom: 1px solid #707070;
  padding-bottom: 85px;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-contact div.container {
    max-width: calc(100vw - 80px);
  }
}
section.banner-contact div.container p {
  margin-top: 25px;
  max-width: 440px;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container p {
    width: calc(100vw - 50px);
  }
}
section.banner-contact div.container div.grid {
  display: grid;
  grid-template-columns: 500px 1fr;
  margin-top: 50px;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container div.grid {
    display: block;
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-contact div.container div.grid {
    grid-template-columns: 1fr 450px;
  }
}
section.banner-contact div.container div.grid form #form-send span,
section.banner-contact div.container div.grid form #form-send a,
section.banner-contact div.container div.grid form #form-erro span,
section.banner-contact div.container div.grid form #form-erro a {
  font-size: 16px;
  line-height: 28px;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "nu-bold";
}
section.banner-contact div.container div.grid form #form-send span + p,
section.banner-contact div.container div.grid form #form-erro span + p {
  margin-top: 10px;
  max-width: 260px;
}
section.banner-contact div.container div.grid form #form-send span + p {
  max-width: 260px;
}
section.banner-contact div.container div.grid form #form-erro span + p {
  max-width: 340px;
}
section.banner-contact div.container div.grid form input,
section.banner-contact div.container div.grid form textarea {
  width: 500px;
  border-bottom: 1px solid #707070;
  resize: none;
  font-family: "nu-regular";
  font-size: 16px;
  font-weight: normal;
  color: #000;
  height: 46px;
  cursor: pointer;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container div.grid form input,
section.banner-contact div.container div.grid form textarea {
    width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-contact div.container div.grid form input,
section.banner-contact div.container div.grid form textarea {
    width: calc(100vw - 560px);
    max-width: 500px;
  }
}
section.banner-contact div.container div.grid form input + input,
section.banner-contact div.container div.grid form input + textarea {
  margin-top: 15px;
}
section.banner-contact div.container div.grid form textarea {
  height: 80px;
  padding-top: 8px;
}
section.banner-contact div.container div.grid form button {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  width: 172px;
  min-width: 172px;
  height: 46px;
  justify-content: space-between;
  margin-top: 38px;
  background-color: #fff;
  cursor: pointer;
}
section.banner-contact div.container div.grid form button svg {
  margin-left: 45px;
}
section.banner-contact div.container div.grid form button svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-contact div.container div.grid form button:hover, section.banner-contact div.container div.grid form button.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
section.banner-contact div.container div.grid form button:hover svg path, section.banner-contact div.container div.grid form button.active svg path {
  fill: #fff;
}
section.banner-contact div.container div.grid form ::-moz-placeholder {
  font-family: "nu-regular";
  font-size: 16px;
  font-weight: normal;
  color: #000;
  text-transform: uppercase;
}
section.banner-contact div.container div.grid form :-ms-input-placeholder {
  font-family: "nu-regular";
  font-size: 16px;
  font-weight: normal;
  color: #000;
  text-transform: uppercase;
}
section.banner-contact div.container div.grid form ::placeholder {
  font-family: "nu-regular";
  font-size: 16px;
  font-weight: normal;
  color: #000;
  text-transform: uppercase;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container div.grid div.info {
    margin-top: 80px;
  }
}
section.banner-contact div.container div.grid div.info h5 {
  text-align: right;
  margin-bottom: 40px;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container div.grid div.info h5 {
    margin-bottom: 30px;
  }
}
section.banner-contact div.container div.grid div.info a {
  font-size: 40px;
  line-height: 41px;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "dm-regular";
  display: block;
  text-align: right;
  margin-left: auto;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}
section.banner-contact div.container div.grid div.info a.white {
  color: #fff;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container div.grid div.info a {
    font-size: 30px;
    line-height: 30px;
  }
}
@media screen and (max-width: 360px) {
  section.banner-contact div.container div.grid div.info a {
    font-size: 23px;
    line-height: 23px;
  }
}
section.banner-contact div.container div.grid div.info a.button {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  margin-top: 50px;
  font-size: 14px !important;
  line-height: 19px !important;
  display: flex;
  gap: 10px;
  border-bottom: #000 1px solid !important;
}
section.banner-contact div.container div.grid div.info a.button svg {
  margin-left: 45px;
}
section.banner-contact div.container div.grid div.info a.button svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-contact div.container div.grid div.info a.button:hover, section.banner-contact div.container div.grid div.info a.button.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
section.banner-contact div.container div.grid div.info a.button:hover svg path, section.banner-contact div.container div.grid div.info a.button.active svg path {
  fill: #fff;
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-contact div.container div.grid div.info a.button {
    margin-left: 30px;
  }
}
section.banner-contact div.container div.grid div.info a.button svg {
  margin-left: 0;
}
section.banner-contact div.container div.grid div.info a.button svg path {
  fill: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-contact div.container div.grid div.info a.button:hover svg path {
  fill: #fff;
}
section.banner-contact div.container div.grid div.info a:not(.address) {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 2px solid transparent;
  font-size: 35px;
}
section.banner-contact div.container div.grid div.info a:not(.address):hover {
  border-bottom: 2px solid #3c3c3c;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container div.grid div.info a:not(.address) {
    font-size: 22px;
    line-height: 25px;
  }
}
section.banner-contact div.container div.grid div.info h5 + a + a {
  margin-top: 10px;
}
section.banner-contact div.container div.grid div.info a + a + a {
  font-size: 16px;
  line-height: 28px;
  font-weight: normal;
  color: #3c3c3c;
  font-family: "nu-regular";
}
section.banner-contact div.container div.grid div.info a + a + a.white {
  color: #f2f2f2;
}
section.banner-contact div.container div.grid div.info a.address {
  margin-top: 110px;
  font-family: "nu-regular";
  font-size: 18px;
  line-height: 24px;
  font-weight: normal;
  color: #000;
  margin-bottom: 12px;
  width: 310px;
  margin-left: auto;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
}
@media screen and (max-width: 769px) {
  section.banner-contact div.container div.grid div.info a.address {
    margin-top: 50px;
  }
}
section.banner-contact div.container div.grid div.info a.address:hover {
  border-bottom: 1px solid #3c3c3c;
}

/* /Contact */
/* Privacy */
section.banner-privacy {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: block;
  position: relative;
  padding-top: 90px;
  border-bottom: 1px solid #707070;
  padding-bottom: 85px;
}
@media screen and (max-width: 769px) {
  section.banner-privacy {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-privacy {
    max-width: calc(100vw - 80px);
  }
}
@media screen and (max-width: 769px) {
  section.banner-privacy {
    padding-bottom: 85px;
    padding-top: 50px;
  }
}
section.banner-privacy h1 {
  margin-bottom: 60px;
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-privacy h1 {
    font-size: 120px;
  }
}
@media screen and (max-width: 769px) {
  section.banner-privacy h1 {
    font-size: 60px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 360px) {
  section.banner-privacy h1 {
    font-size: 50px;
  }
}

/* /Privacy */
/* 404 */
section.banner-404 {
  max-width: 1088px;
  width: 1088px;
  margin: 0 auto;
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 50px;
  border-bottom: 1px solid #707070;
  padding-bottom: 85px;
  height: calc(100vh - 85px);
}
@media screen and (max-width: 769px) {
  section.banner-404 {
    max-width: calc(100vw - 50px);
  }
}
@media screen and (min-width: 770px) and (max-width: 1167px) {
  section.banner-404 {
    max-width: calc(100vw - 80px);
  }
}
section.banner-404 p {
  margin-top: 8px;
  font-size: 18px;
}
section.banner-404 a {
  font-family: "dm-regular";
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #000;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  border-bottom: 1px solid transparent;
  display: flex;
  align-items: center;
  border: 1px solid #000;
  height: 46px;
  padding: 0 20px;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 23px;
  text-transform: uppercase;
  margin-top: 80px;
}
section.banner-404 a svg {
  margin-left: 45px;
}
section.banner-404 a svg path {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
}
section.banner-404 a:hover, section.banner-404 a.active {
  background-color: #3c3c3c;
  border-color: #3c3c3c;
  color: #fff;
}
section.banner-404 a:hover svg path, section.banner-404 a.active svg path {
  fill: #fff;
}
section.banner-404 a svg {
  margin-left: 20px;
}

/* /404 */
/* /Style */