@font-face {
  font-family: "Neue Montreal";
  src: url("../fonts/NeueMontreal-Light.woff2") format("woff2"),
    url("../fonts/NeueMontreal-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("../fonts/NeueMontreal-Regular.woff2") format("woff2"),
    url("../fonts/NeueMontreal-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("../fonts/NeueMontreal-Medium.woff2") format("woff2"),
    url("../fonts/NeueMontreal-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("../fonts/NeueMontreal-Bold.woff2") format("woff2"),
    url("../fonts/NeueMontreal-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Super2";
  src: url("../fonts/Super2.woff2") format("woff2"),
    url("../fonts/Super2.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
.button {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 6rem;
  font-size: 2.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 4rem;
  border-radius: 100vmax;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 1rem;
  text-wrap: nowrap;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media only screen and (max-width: 1920px) {
  .button {
    font-size: 1.4rem;
    height: 5rem;
  }
}
.button.small {
  height: 4rem;
  font-size: 1.6rem;
  padding: 0 2rem;
}
.button:hover {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.button:hover.border.dark {
  background: #000;
  color: #fff;
}
.button.primary {
  background: #000;
  color: #fff;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.button.primary:hover {
  background: #0119ff;
}
.button.secondary {
  background: #fff;
  color: #000;
}
.button.secondary:hover {
  background: #0119ff;
  color: #fff;
}
.button.border.dark {
  border: solid #000 0.2rem;
  color: #000;
}
.button i {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.button i svg {
  width: 2.4rem;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.circle-button {
  width: 9rem;
  height: 9rem;
  background: #0119ff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 2rem;
  color: #fff;
  cursor: pointer;
  border-radius: 100%;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media only screen and (max-width: 1024px) {
  .circle-button {
    width: 7rem;
    height: 7rem;
    font-size: 1.8rem;
  }
}
.circle-button:hover {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background: #000;
}
.link {
  font-size: 2.6rem;
  cursor: pointer;
  position: relative;
  white-space: nowrap;
  font-weight: 500;
  letter-spacing: -0.05em;
}
@media only screen and (max-width: 1600px) {
  .link {
    font-size: 1.4rem;
    height: 2.2rem;
    letter-spacing: -0.02em;
  }
}
.link::before,
.link::after {
  position: absolute;
  width: 100%;
  height: 0.14rem;
  top: 100%;
  left: 0;
  pointer-events: none;
}
.link.large {
  font-size: 4rem;
  height: 6rem;
}
@media only screen and (max-width: 1600px) {
  .link.large {
    font-size: 2.6rem;
    height: 4rem;
  }
}
.link.large.dark {
  border-bottom: solid #000 0.2rem;
}
.link.large.dark::before,
.link.large.dark::after {
  background: #fff;
  height: 0.2rem;
}
.link.large.light {
  border-bottom: solid #fff 0.2rem;
}
.link.large.light::before,
.link.large.light::after {
  background: #000;
  height: 0.2rem;
}
.link.dark {
  color: #000;
  border-bottom: solid #000 0.14rem;
}
.link.dark::before,
.link.dark::after {
  background: #fff;
}
.link.light {
  color: #fff;
  border-bottom: solid #fff 0.14rem;
}
.link.light::before,
.link.light::after {
  background: #000;
}
.link.transparent.light {
  color: #fff;
  border-bottom: solid rgba(0, 0, 0, 0) 0.14rem;
}
.link.transparent.light::before,
.link.transparent.light::after {
  background: #fff;
}
.link::before {
  content: "";
}
.link.line-animated::before {
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  -webkit-transform: scale3d(0, 1, 1);
  transform: scale3d(0, 1, 1);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.link.line-animated:hover::before {
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}
.work-cards {
  padding-bottom: 10rem;
}
.work-cards .items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
  margin-top: 8rem;
}
@media only screen and (max-width: 1920px) {
  .work-cards .items {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 768px) {
  .work-cards .items {
    grid-template-columns: repeat(1, 1fr);
  }
}
.work-cards .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  cursor: pointer;
}
.work-cards .item:hover .gif-item {
  display: block;
}
.work-cards .item:hover .video {
  opacity: 1;
  visibility: visible;
}
.work-cards .video {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
}
.work-cards .video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  inset: 0;
}
.work-cards figure {
  overflow: hidden;
  position: relative;
  border-radius: 4rem;
  height: 76rem;
}
@media only screen and (max-width: 1024px) {
  .work-cards figure {
    border-radius: 2rem;
  }
}
.work-cards figure .gif-item {
  display: none;
  position: absolute;
  inset: 0;
}
@media only screen and (max-width: 1600px) {
  .work-cards figure {
    height: 60rem;
  }
}
@media only screen and (max-width: 1024px) {
  .work-cards figure {
    height: 40rem;
  }
}
.work-cards figure img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.work-cards figure figcaption {
  position: absolute;
  inset: auto 4rem 4rem 4rem;
}
@media only screen and (max-width: 1600px) {
  .work-cards figure figcaption {
    inset: auto 2rem 2rem 2rem;
  }
}
@media only screen and (max-width: 1600px) {
  .work-cards figure figcaption {
    inset: auto 1rem 1rem 1rem;
  }
}
.work-cards figure figcaption ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 2rem;
}
@media only screen and (max-width: 1600px) {
  .work-cards figure figcaption ul {
    gap: 1rem;
  }
}
@media only screen and (max-width: 1024px) {
  .work-cards figure figcaption ul li {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}
.work-cards figure figcaption ul li a {
  font-size: 2rem;
  background: #fff;
  height: 5rem;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  white-space: nowrap;
  padding: 0 2rem;
  border-radius: 100vmax;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media only screen and (max-width: 1600px) {
  .work-cards figure figcaption ul li a {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 1370px) {
  .work-cards figure figcaption ul li a {
    font-size: 1.4rem;
    height: 3.6rem;
  }
}
@media only screen and (max-width: 1024px) {
  .work-cards figure figcaption ul li a {
    font-size: 1.4rem;
    padding: 0 1rem;
  }
}
.work-cards figure figcaption ul li a:hover {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background: #000;
  color: #fff;
}
.work-cards .caption {
  padding: 4rem 0;
}
@media only screen and (max-width: 1600px) {
  .work-cards .caption {
    padding: 2rem 0;
  }
}
.work-cards .caption span {
  font-size: 3.2rem;
  color: #000;
}
@media only screen and (max-width: 1600px) {
  .work-cards .caption span {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .work-cards .caption span {
    font-size: 2rem;
  }
}
.work-cards .control-bar {
  padding-right: 8rem;
}
@media only screen and (max-width: 1600px) {
  .work-cards .control-bar {
    padding-right: 4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .work-cards .control-bar {
    padding-right: 1rem;
  }
}
.work-cards .control-bar .swiper-pagination {
  background: hsla(0, 0%, 100%, 0.2);
}
.work-cards .control-bar .swiper-pagination span {
  background: #fff;
}
.work-cards .control-bar .buttons svg {
  width: 6rem;
  stroke: #fff;
  stroke-width: 0.1rem;
}
.contnet-large-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 40rem;
  margin-bottom: 20rem;
}
@media only screen and (max-width: 1600px) {
  .contnet-large-card {
    gap: 20rem;
  }
}
@media only screen and (max-width: 1024px) {
  .contnet-large-card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 6rem;
    gap: 8rem;
  }
}
.contnet-large-card .image {
  max-width: 80rem;
  width: 100%;
  height: 100%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin: 0 !important;
}
@media only screen and (max-width: 1600px) {
  .contnet-large-card .image {
    max-width: 60rem;
    width: 100%;
  }
}
:root {
  --gap: 4rem;
}
@media only screen and (max-width: 1600px) {
  :root {
    --gap: 2rem;
  }
}
main {
  position: relative;
  background: #fff;
}
main.pt {
  padding-top: 12rem;
}
main.pt-2 {
  padding-top: 14rem;
}
@media only screen and (max-width: 1024px) {
  main.pt-2 {
    padding-top: 0;
  }
}
main.pt-1 {
  padding-top: 14rem;
}
@media only screen and (max-width: 1024px) {
  main.pt-1 {
    padding-top: 0;
  }
}
main.pt-1 .services-detail {
  padding-top: 0;
}
section {
  width: 100%;
  padding: 0 8rem;
  position: relative;
}
@media only screen and (max-width: 1600px) {
  section {
    padding: 0 4rem;
  }
}
@media only screen and (max-width: 1024px) {
  section {
    padding: 0 2rem;
  }
}
section.pn {
  padding: 0;
}
section.pl {
  padding: 0 0 0 8rem;
}
@media only screen and (max-width: 1600px) {
  section.pl {
    padding: 0 0 0 4rem;
  }
}
@media only screen and (max-width: 768px) {
  section.pl {
    padding: 0 0 0 2rem;
  }
}
@media only screen and (max-width: 768px) {
  section.pl-2 {
    padding: 0 0 0 2rem;
  }
}
section.pb {
  padding: 0 8rem 8rem 8rem;
}
@media only screen and (max-width: 1600px) {
  section.pb {
    padding: 0 4rem 8rem 4rem;
  }
}
@media only screen and (max-width: 1024px) {
  section.pb {
    padding: 0 2rem 4rem;
  }
}
section.pbd {
  padding: 0 8rem 8rem 8rem;
}
@media only screen and (max-width: 1600px) {
  section.pbd {
    padding: 0 4rem 8rem 4rem;
  }
}
@media only screen and (max-width: 1024px) {
  section.pbd {
    padding: 0 1.4rem 8rem 2rem;
  }
}
section.mt {
  margin: 10rem 0 0;
}
@media only screen and (max-width: 1024px) {
  section.mt {
    margin: 4rem 0 0;
  }
}
.container {
  width: 100%;
  padding: 0 6rem;
}
.row {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.col-2 {
  grid-column: span 2;
}
.col-3 {
  grid-column: span 3;
}
@media only screen and (max-width: 1600px) {
  .col-3 {
    grid-column: span 4;
  }
}
@media only screen and (max-width: 1024px) {
  .col-3 {
    grid-column: span 6;
  }
}
@media only screen and (max-width: 648px) {
  .col-3 {
    grid-column: span 12;
  }
}
.col-4 {
  grid-column: span 4;
}
@media only screen and (max-width: 1024px) {
  .col-4 {
    grid-column: span 6;
  }
}
@media only screen and (max-width: 768px) {
  .col-4 {
    grid-column: span 12;
  }
}
.col-5 {
  grid-column: span 5;
}
.col-6 {
  grid-column: span 6;
}
@media only screen and (max-width: 1024px) {
  .col-6 {
    grid-column: span 12;
  }
}
.col-7 {
  grid-column: span 7;
}
.col-8 {
  grid-column: span 8;
}
.col-9 {
  grid-column: span 9;
}
.col-10 {
  grid-column: span 9;
}
.col-12 {
  grid-column: span 12;
}
figure.lazy {
  background: #000 linear-gradient(-45deg, #000 40%, #1e1e1e 50%, #0e0e0e 60%);
  background-size: 300%;
  background-position-x: 100%;
  -webkit-animation: shimmer 1s infinite linear;
  animation: shimmer 1s infinite linear;
}
@-webkit-keyframes shimmer {
  to {
    background-position-x: 0%;
  }
}
@keyframes shimmer {
  to {
    background-position-x: 0%;
  }
}
a:hover .cursor-big {
  opacity: 0;
}
.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #000;
  z-index: 101;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.overlay svg {
  fill: #fff;
}
.start {
  padding-bottom: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .start {
    height: auto;
    padding-top: 0;
  }
}
.start.type-2 {
  height: 80vh;
}
.start.type-2 .caption {
  max-width: 100%;
}
.start.type-3 {
  height: 85vh;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin: 0 8rem 20rem;
  gap: 10rem;
}
@media only screen and (max-width: 1600px) {
  .start.type-3 {
    margin: 4rem 4rem 10rem;
  }
}
@media only screen and (max-width: 1024px) {
  .start.type-3 {
    margin: 0 2rem 4rem;
    gap: 5rem;
    height: auto;
  }
}
@media only screen and (max-width: 768px) {
  .start.type-3 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3rem;
  }
}
.start.type-3 .caption {
  width: 45%;
  margin: 0;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  position: relative;
  z-index: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-left: auto;
  padding-left: 10rem;
}
@media only screen and (max-width: 1600px) {
  .start.type-3 .caption {
    padding-right: 10rem;
  }
}
@media only screen and (max-width: 768px) {
  .start.type-3 .caption {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .start.type-3 .caption {
    padding-right: 0;
    padding-left: 0;
  }
}
.start.type-3 .caption span {
  font-size: 12rem;
  line-height: 1;
  max-width: 80rem;
  text-align: left;
}
@media only screen and (max-width: 1920px) {
  .start.type-3 .caption span {
    font-size: 8.6rem;
  }
}
@media only screen and (max-width: 1600px) {
  .start.type-3 .caption span {
    font-size: 7rem;
  }
}
@media only screen and (max-width: 1370px) {
  .start.type-3 .caption span {
    font-size: 5.6rem;
  }
}
@media only screen and (max-width: 768px) {
  .start.type-3 .caption span {
    font-size: 4rem;
    max-width: 100%;
  }
}
.start.type-3 .caption .text-caption {
  margin: auto 0 0 0;
  max-width: 40rem;
  width: 100%;
  background: #fff;
  padding: 10rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 8rem;
  position: relative;
}
@media only screen and (max-width: 1600px) {
  .start.type-3 .caption .text-caption {
    padding: 4rem 0;
    gap: 4rem;
  }
}
@media only screen and (max-width: 768px) {
  .start.type-3 .caption .text-caption {
    max-width: 100%;
    padding: 0;
  }
}
.start.type-3 .caption .text-caption p {
  font-size: 2.4rem;
  line-height: 1;
  text-indent: 8rem;
  letter-spacing: -0.01em;
}
@media only screen and (max-width: 1370px) {
  .start.type-3 .caption .text-caption p {
    font-size: 2rem;
  }
}
.start.type-3 .caption .text-caption .buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
.start .video {
  width: 55%;
  height: 100%;
  position: absolute;
  z-index: 2;
  max-height: 100%;
}
@media only screen and (max-width: 768px) {
  .start .video {
    width: 100%;
    height: 40rem;
    position: relative;
  }
}
.start .video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  clip-path: polygon(0% 0%, 100% 0%, 100% 66%, 85% 66%, 85% 100%, 0% 100%);
  position: absolute;
  inset: 0;
}
.start .video .video-reel {
  opacity: 0;
}
.start .video a {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 1024px) {
  .start .video a {
    display: none;
  }
}
.start .video #close-reel {
  position: absolute;
  top: 1rem;
  right: 1rem;
  cursor: pointer;
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  opacity: 0;
  visibility: hidden;
}
.start .video #close-reel svg {
  stroke: #fff;
}
.start .fullscreen a {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.start .fullscreen #close-reel {
  opacity: 1;
  visibility: visible;
}
.start .fullscreen #close-reel svg {
  stroke: #fff;
}
.start .caption {
  max-width: 110rem;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  gap: 2rem;
}
@media only screen and (max-width: 1920px) {
  .start .caption {
    max-width: 80rem;
  }
}
.start .caption span {
  font-size: 12rem;
  text-align: center;
  letter-spacing: -0.06em;
}
@media only screen and (max-width: 1600px) {
  .start .caption span {
    font-size: 8.4rem;
  }
}
.start .caption small {
  font-size: 4rem;
  max-width: 60rem;
  text-indent: 8rem;
  letter-spacing: -0.01em;
}
@media only screen and (max-width: 1600px) {
  .start .caption small {
    max-width: 35rem;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  .start .caption small {
    font-size: 1.8rem;
  }
}
.start .detail-caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  gap: 2rem;
  position: relative;
}
.start .detail-caption .barcode {
  position: absolute;
  right: 10rem;
  top: 10rem;
}
@media only screen and (max-width: 1600px) {
  .start .detail-caption .barcode {
    top: 4rem;
    right: 4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .start .detail-caption .barcode {
    display: none;
  }
}
.start .detail-caption .barcode img {
  width: 8rem;
}
@media only screen and (max-width: 1600px) {
  .start .detail-caption .barcode img {
    width: 5rem;
  }
}
.start .bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 8rem;
}
@media only screen and (max-width: 1370px) {
  .start .bottom {
    padding: 0 4rem;
  }
}
@media only screen and (max-width: 768px) {
  .start .bottom {
    margin-top: 6rem;
    padding: 0 1.4rem;
  }
}
.start .bottom span {
  font-size: 2.6rem;
  color: #000;
  font-weight: 500;
  letter-spacing: -0.05em;
  margin-left: auto;
}
@media only screen and (max-width: 1600px) {
  .start .bottom span {
    font-size: 1.6rem;
    letter-spacing: -0.05em;
  }
}
.start .filter-menu {
  padding: 4rem 4rem 2rem;
}
@media only screen and (max-width: 768px) {
  .start .filter-menu {
    padding: 4rem 2rem 2rem;
    margin-top: 6rem;
  }
}
.show-reel {
  padding: 6rem 0 0;
  position: relative;
}
.show-reel .video {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.show-reel video,
.show-reel figure {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  padding: 10rem 0;
}
.show-reel .caption {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.brands {
  width: 100%;
  height: 100vh;
  background: url(/assets/images/main/brands.jpg) no-repeat;
  background-size: cover;
  padding: 12rem 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 1600px) {
  .brands {
    padding: 8rem 6rem;
  }
}
.brands .head {
  width: 100%;
  border-top: solid #fff 0.1rem;
  padding-top: 4rem;
  font-size: 1.8rem;
  color: #fff;
  margin-bottom: 8rem;
}
.brands .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.brands .top .icon-text {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.brands .top .icon-text .icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.brands .top .icon-text .icons img {
  width: 16rem;
}
@media only screen and (max-width: 1600px) {
  .brands .top .icon-text .icons img {
    width: 9rem;
  }
}
.brands .top .icon-text span {
  max-width: 70rem;
  font-size: 5rem;
  color: #fff;
  text-indent: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: -4rem;
}
@media only screen and (max-width: 1600px) {
  .brands .top .icon-text span {
    max-width: 47rem;
    font-size: 3rem;
  }
}
.brands .items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  position: relative;
}
.brands .items .item ul li {
  font-size: 8rem;
  color: #fff;
  letter-spacing: -0.03em;
  line-height: 1;
}
@media only screen and (max-width: 1600px) {
  .brands .items .item ul li {
    font-size: 6rem;
  }
}
.brands .items .item ul li.pl {
  padding-left: 10rem;
}
@media only screen and (max-width: 1600px) {
  .brands .items .item ul li.pl {
    padding-left: 8rem;
  }
}
.brands .light-image {
  position: absolute;
  width: 100rem;
  height: 100rem;
  right: 50rem;
  top: 10rem;
}
@media only screen and (max-width: 1600px) {
  .brands .light-image {
    right: 20rem;
    width: 70rem;
    height: 70rem;
  }
}
.works {
  background: #000;
  margin-top: 10rem;
  margin-bottom: 8rem;
}
@media only screen and (max-width: 768px) {
  .works {
    padding: 4rem 0 2rem 2rem;
    margin-top: 6rem;
  }
}
.works .head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 10rem 6rem 10rem 0;
  position: relative;
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .works .head {
    padding: 10rem 1.4rem 10rem 0;
  }
}
@media only screen and (max-width: 768px) {
  .works .head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    padding: 8rem 0 4rem;
  }
}
.works .head .title {
  font-size: 30rem;
  letter-spacing: -0.03em;
  line-height: 0.75em;
  letter-spacing: -0.05em;
  margin-left: 0;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}
@media only screen and (max-width: 1600px) {
  .works .head .title {
    font-size: 20rem;
  }
}
@media only screen and (max-width: 1024px) {
  .works .head .title {
    font-size: 16rem;
  }
}
@media only screen and (max-width: 768px) {
  .works .head .title {
    font-size: 6rem;
    letter-spacing: -0.02em;
  }
}
.works .head .caption {
  max-width: 50rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media only screen and (max-width: 1024px) {
  .works .head .caption {
    max-width: 40rem;
  }
}
@media only screen and (max-width: 768px) {
  .works .head .caption {
    gap: 2rem;
  }
}
.works .head .caption span {
  font-size: 3rem;
  letter-spacing: -0.03em;
}
@media only screen and (max-width: 1600px) {
  .works .head .caption span {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .works .head .caption span {
    font-size: 2rem;
  }
}
.works .head .caption .button {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.works .caption span {
  color: #fff;
}
.works-container .content-headlines {
  margin-bottom: 4rem;
}
.works-container figure {
  margin-bottom: 10rem;
}
.pl .works .swiper {
  padding-top: 6rem;
}
@media only screen and (max-width: 1600px) {
  .pl .works .swiper {
    padding-top: 0;
  }
}
.works-content {
  margin-top: 8rem;
}
.filter-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  border-bottom: solid #000 0.1rem;
  padding-bottom: 4rem;
  width: 100%;
}
@media only screen and (max-width: 1600px) {
  .filter-menu {
    gap: 2rem;
  }
}
@media only screen and (max-width: 1024px) {
  .filter-menu {
    cursor: default;
    overflow: scroll hidden;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    padding-bottom: 0;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 0;
  }
}
.filter-menu li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2rem;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  border-radius: 100vmax;
  height: 10rem;
  text-wrap: nowrap;
  padding: 0 3rem;
}
@media only screen and (max-width: 1600px) {
  .filter-menu li a {
    height: 8rem;
  }
}
@media only screen and (max-width: 1024px) {
  .filter-menu li a {
    height: 6rem;
    padding: 0 1.6rem;
    gap: 1rem;
  }
}
.filter-menu li a.active,
.filter-menu li a:hover {
  background: #000;
  color: #fff;
}
.filter-menu li a.active span,
.filter-menu li a:hover span {
  color: #fff;
}
.filter-menu li a.active .count,
.filter-menu li a:hover .count {
  color: #000;
  background: #fff;
  border: solid rgba(0, 0, 0, 0) 0.1rem;
}
.filter-menu li span {
  font-size: 4rem;
  color: #000;
}
@media only screen and (max-width: 1920px) {
  .filter-menu li span {
    font-size: 3.4rem;
  }
}
@media only screen and (max-width: 1370px) {
  .filter-menu li span {
    font-size: 3.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .filter-menu li span {
    font-size: 1.6rem;
  }
}
.filter-menu li .count {
  border-radius: 100vmax;
  padding: 0.2rem 1rem;
  color: #727272;
  border: solid #727272 0.1rem;
  font-size: 1.4rem;
}
.content-image {
  width: 100%;
  display: block;
  background: #000;
}
.content-image img {
  height: 90vh;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (max-width: 1024px) {
  .content-image img {
    height: auto;
  }
}
.marquee-item {
  position: relative;
  width: 100vw;
  max-width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
}
.marquee-item .marquee {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .marquee-item .marquee {
    margin-top: 2rem;
  }
}
.marquee-item .marquee .item {
  font-size: 20rem;
  text-wrap: nowrap;
}
@media only screen and (max-width: 1370px) {
  .marquee-item .marquee .item {
    font-size: 10rem;
  }
}
@media only screen and (max-width: 1024px) {
  .marquee-item .marquee .item {
    font-size: 6.8rem;
  }
}
.pin-images {
  max-width: 70rem;
  margin: auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10rem 0 10rem;
}
@media only screen and (max-width: 1600px) {
  .pin-images {
    max-width: 70rem;
  }
}
@media only screen and (max-width: 1024px) {
  .pin-images {
    padding: 6rem 0 6rem;
  }
}
.pin-images .static {
  width: 100%;
}
.pin-images .images {
  margin-top: 10rem;
}
.pin-images .pin-image-02,
.pin-images .pin-image-03,
.pin-images .pin-image-04,
.pin-images .pin-image-05,
.pin-images .pin-image-06 {
  position: absolute;
}
@media only screen and (max-width: 1024px) {
  .pin-images .pin-image-02,
  .pin-images .pin-image-03,
  .pin-images .pin-image-04,
  .pin-images .pin-image-05,
  .pin-images .pin-image-06 {
    display: none;
  }
}
.pin-images .pin-image-02 {
  top: 4rem;
  left: -10rem;
  width: 50rem;
}
.pin-images .pin-image-03 {
  top: 25rem;
  right: -10rem;
  width: 76rem;
}
.pin-images .pin-image-04 {
  top: 32rem;
  right: -2rem;
  width: 38rem;
}
.pin-images .pin-image-05 {
  top: 18rem;
  right: -6rem;
  width: 38rem;
}
.pin-images .pin-image-06 {
  top: 24rem;
  right: 14rem;
  width: 30rem;
}
.awwards-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 8rem 0;
  max-width: 140rem;
  width: 100%;
  margin: auto;
  gap: 4rem;
}
.awwards-cards.type-2 {
  padding: 0 0 20rem;
}
@media only screen and (max-width: 1024px) {
  .awwards-cards.type-2 {
    padding: 0 0 4rem;
  }
}
.awwards-cards .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
@media only screen and (max-width: 1024px) {
  .awwards-cards .items {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.awwards-cards .items:nth-child(even) {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.awwards-cards .items .item {
  width: 60%;
  padding: 6rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  border-bottom: solid #000 0.1rem;
}
@media only screen and (max-width: 1024px) {
  .awwards-cards .items .item {
    padding: 2rem 0;
    width: 70%;
  }
}
@media only screen and (max-width: 768px) {
  .awwards-cards .items .item {
    width: 100%;
  }
}
.awwards-cards .items .item span {
  font-size: 25rem;
  line-height: 0.75em;
}
@media only screen and (max-width: 1600px) {
  .awwards-cards .items .item span {
    font-size: 18rem;
  }
}
@media only screen and (max-width: 1024px) {
  .awwards-cards .items .item span {
    font-size: 8rem;
  }
}
.awwards-cards .items .item small {
  font-size: 3rem;
  margin-left: auto;
}
@media only screen and (max-width: 1600px) {
  .awwards-cards .items .item small {
    font-size: 2.2rem;
  }
}
@media only screen and (max-width: 1024px) {
  .awwards-cards .items .item small {
    font-size: 1.6rem;
    width: -webkit-min-content;
    width: -moz-min-content;
    width: min-content;
    text-align: right;
  }
}
.clients {
  padding: 0 8rem 14rem;
  margin-bottom: 14rem;
  background: #000;
}
@media only screen and (max-width: 1920px) {
  .clients {
    padding: 0 4rem 14rem;
  }
}
@media only screen and (max-width: 1024px) {
  .clients {
    padding: 8rem 1.4rem 14rem;
    margin-bottom: 3rem;
  }
}
.clients .content-headlines .headline small {
  color: #fff;
}
.clients .content-headlines .head span {
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .clients.type-2 {
    padding: 8rem 2rem 6rem;
  }
}
.clients .content-headlines.type-4 {
  border: none;
}
@media only screen and (max-width: 1024px) {
  .clients .content-headlines.type-4 {
    padding: 0 0 4rem;
    gap: 4rem;
  }
}
.clients .content-headlines.type-4 .headline,
.clients .content-headlines.type-4 .head,
.clients .content-headlines.type-4 p {
  color: #fff;
}
.clients .logos {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  position: relative;
  gap: 2rem;
  overflow: hidden;
}
@media only screen and (max-width: 1920px) {
  .clients .logos {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media only screen and (max-width: 1600px) {
  .clients .logos {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .clients .logos {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (max-width: 768px) {
  .clients .logos {
    grid-template-columns: repeat(2, 1fr);
  }
}
.clients .logos .item {
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  position: relative;
  overflow: hidden;
  background: none;
  border: solid hsla(0, 0%, 100%, 0.1) 0.1rem;
}
.clients .logos .item img {
  width: auto;
  height: auto;
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
}
@media only screen and (max-width: 1024px) {
  .clients .logos .item img {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}
@media only screen and (max-width: 768px) {
  .clients .logos .item img {
    -webkit-transform: scale(0.45);
    transform: scale(0.45);
  }
}
.clients .marquee-logos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  margin-top: 6rem;
}
.clients .marquee-logos .item {
  width: 40rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  .clients .marquee-logos .item {
    width: 24rem;
  }
}
.clients .marquee-logos .item img {
  max-width: 25rem;
  max-height: 20rem;
}
@media only screen and (max-width: 768px) {
  .clients .marquee-logos .item img {
    max-width: 18rem;
  }
}
.clients .marquee-logos svg {
  width: 100%;
  max-width: 20rem;
  fill: #2f2f2f;
  position: relative;
  z-index: 2;
  -webkit-transition: all 0.7s cubic-bezier(0.86, 0, 0.07, 1);
  transition: all 0.7s cubic-bezier(0.86, 0, 0.07, 1);
  opacity: 0.5;
}
@media only screen and (max-width: 1920px) {
  .clients .marquee-logos svg {
    max-width: 16rem;
  }
}
@media only screen and (max-width: 768px) {
  .clients .marquee-logos svg {
    max-width: 14rem;
  }
}
.services-detail {
  padding-top: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10rem;
}
@media only screen and (max-width: 1370px) {
  .services-detail {
    gap: 4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .services-detail {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-top: 4rem;
  }
}
.services-detail figure {
  width: 30%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .services-detail figure {
    width: 100%;
  }
}
.services-detail figure img {
  width: 100%;
  height: 120rem;
  -o-object-fit: cover;
  object-fit: cover;
}
@media only screen and (max-width: 1600px) {
  .services-detail figure img {
    height: 60rem;
  }
}
@media only screen and (max-width: 1024px) {
  .services-detail figure img {
    height: 80rem;
  }
}
@media only screen and (max-width: 768px) {
  .services-detail figure img {
    height: 40rem;
  }
}
.services-detail .detail {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.services-detail .detail .caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10rem;
}
@media only screen and (max-width: 1600px) {
  .services-detail .detail .caption {
    gap: 8rem;
  }
}
@media only screen and (max-width: 1024px) {
  .services-detail .detail .caption {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.services-detail .detail .caption .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.services-detail .detail .caption .info small {
  font-size: 2rem;
}
.services-detail .detail .caption .info span {
  font-size: 12rem;
  margin-bottom: 10rem;
  word-break: auto-phrase !important;
  line-height: 0.9;
}
@media only screen and (max-width: 1600px) {
  .services-detail .detail .caption .info span {
    font-size: 10rem;
  }
}
@media only screen and (max-width: 1370px) {
  .services-detail .detail .caption .info span {
    font-size: 7rem;
  }
}
.services-detail .detail .caption .info ul {
  max-width: 60rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.services-detail .detail .caption .info ul li {
  border: solid #000 0.1rem;
  border-radius: 100vmax;
  padding: 1rem 2rem;
  font-size: 1.6rem;
}
.services-detail .detail .caption p {
  max-width: 50rem;
  font-size: 2.4rem;
  line-height: 1;
  text-indent: 8rem;
  letter-spacing: -0.01em;
  margin-left: auto;
}
@media only screen and (max-width: 1600px) {
  .services-detail .detail .caption p {
    font-size: 2rem;
    line-height: 1.2;
  }
}
@media only screen and (max-width: 1370px) {
  .services-detail .detail .caption p {
    max-width: 30rem;
    font-size: 1.8rem;
  }
}
.services-detail .detail .bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 40rem;
}
@media only screen and (max-width: 1600px) {
  .services-detail .detail .bottom {
    margin-top: 10rem;
  }
}
.services-detail .detail .bottom span {
  font-size: 2.6rem;
  color: #000;
  font-weight: 500;
  letter-spacing: -0.05em;
}
@media only screen and (max-width: 1600px) {
  .services-detail .detail .bottom span {
    font-size: 1.4rem;
  }
}
.awards-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 2rem;
  border-top: solid #000 0.1rem;
}
@media only screen and (max-width: 1024px) {
  .awards-content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.awards-content small {
  max-width: 50rem;
  font-size: 2.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media only screen and (max-width: 1024px) {
  .awards-content small {
    font-size: 1.8rem;
  }
}
.awards-content .awards-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: 100rem;
  width: 100%;
  padding-bottom: 10rem;
  overflow: hidden;
}
@media only screen and (max-width: 1600px) {
  .awards-content .awards-list {
    max-width: 75rem;
  }
}
@media only screen and (max-width: 1024px) {
  .awards-content .awards-list {
    margin-top: 4rem;
  }
}
.awards-content .awards-list li {
  border-bottom: solid #000 0.1rem;
  height: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 2rem;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .awards-content .awards-list li {
    width: 100%;
    height: auto;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    gap: 1rem;
    padding: 2rem 0 2rem;
  }
}
.awards-content .awards-list li div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .awards-content .awards-list li div {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
@media only screen and (max-width: 1024px) {
  .awards-content .awards-list li .project {
    max-width: 16rem;
    text-align: end;
  }
}
.awards-content .awards-list li:hover {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background: #000;
}
.awards-content .awards-list li:hover span {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  color: #fff;
}
.awards-content .awards-list li:last-child {
  border: none;
}
.awards-content .awards-list li .year {
  width: 16rem;
}
.awards-content .awards-list li span {
  font-size: 3rem;
  color: #000;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media only screen and (max-width: 1024px) {
  .awards-content .awards-list li span {
    font-size: 2.2rem;
  }
}
.awards-content .awards-list li span:first-child {
  padding-right: 10rem;
}
@media only screen and (max-width: 1024px) {
  .awards-content .awards-list li span:first-child {
    padding-right: 4rem;
  }
}
.awards-content .awards-list li span:last-child {
  margin-left: auto;
}
@media only screen and (max-width: 1024px) {
  .awards-content .awards-list li span:last-child {
    margin-left: 0;
  }
}
.text-content {
  max-width: 80rem;
  margin: auto;
  padding-bottom: 10rem;
  font-size: 2rem;
  background: #fff;
}
.text-content p {
  font-size: 2rem;
  line-height: 1.6;
}
@media only screen and (max-width: 1024px) {
  .text-content p {
    font-size: 1.6rem;
  }
}
.text-content .table {
  padding: 0;
  margin-bottom: 6rem;
  margin-top: 4rem;
  width: 100%;
}
.text-content .table tbody tr {
  margin-bottom: 1rem;
  width: 100%;
  background-color: #fafafa;
}
.text-content .table tbody td {
  font-size: 1.6rem;
  padding: 1rem;
  line-height: 2rem;
  max-width: 70rem;
}
@media only screen and (max-width: 768px) {
  .text-content .table tbody td {
    font-size: 1.3rem;
    padding: 1rem;
  }
}
@media only screen and (max-width: 648px) {
  .text-content .table tbody td {
    max-width: 6rem;
  }
}
@media only screen and (max-width: 648px) {
  .text-content .table tbody td strong {
    overflow-wrap: anywhere;
  }
}
.blog-cards {
  max-width: 160rem;
  width: 100%;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
  padding: 10rem 1rem;
}
@media only screen and (max-width: 1024px) {
  .blog-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 768px) {
  .blog-cards {
    grid-template-columns: repeat(1, 1fr);
  }
}
.blog-cards .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  background: #000;
  border-radius: 2rem;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.blog-cards .item:hover {
  background: #0119ff;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.blog-cards .item:hover figure img {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.blog-cards .item figure {
  position: relative;
  overflow: hidden;
  border-radius: 2rem 2rem 0 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.blog-cards .item figure img {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.blog-cards .item .caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 4rem;
  height: 100%;
  padding: 6rem 4rem;
}
.blog-cards .item .caption span {
  font-size: 2.8rem;
  font-weight: 500;
  color: #fff;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media only screen and (max-width: 1920px) {
  .blog-cards .item .caption span {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .blog-cards .item .caption span {
    font-size: 2rem;
  }
}
.blog-cards .item .caption .date {
  font-size: 1.6rem;
  color: #fff;
  opacity: 0.5;
}
@media only screen and (max-width: 768px) {
  .blog-cards .item .caption .date {
    font-size: 1.4rem;
  }
}
.blog-detail {
  max-width: 160rem;
  width: 100%;
  margin: auto;
  padding: 0 2rem 10rem;
}
@media only screen and (max-width: 1024px) {
  .blog-detail {
    padding: 0rem 2rem 10rem;
  }
}
.blog-detail .cover {
  max-width: 100%;
  position: relative;
  margin-bottom: 4rem;
}
.blog-detail .cover img {
  height: 50rem;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 2rem;
}
@media only screen and (max-width: 1024px) {
  .blog-detail .cover img {
    height: 40rem;
  }
}
@media only screen and (max-width: 768px) {
  .blog-detail .cover img {
    height: 30rem;
  }
}
.blog-detail .detail {
  padding: 0 6rem;
}
@media only screen and (max-width: 1024px) {
  .blog-detail .detail {
    padding: 0 2rem;
  }
}
.blog-detail .detail .top h1 {
  font-size: 5rem;
  line-height: 1.2;
  font-weight: 500;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 1024px) {
  .blog-detail .detail .top h1 {
    font-size: 4rem;
  }
}
@media only screen and (max-width: 768px) {
  .blog-detail .detail .top h1 {
    font-size: 3.2rem;
  }
}
.blog-detail .detail .top .date {
  font-size: 1.6rem;
  opacity: 0.5;
}
.blog-detail .detail article {
  max-width: 70%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 3rem;
  margin-top: 4rem;
}
@media only screen and (max-width: 1024px) {
  .blog-detail .detail article {
    max-width: 100%;
  }
}
.blog-detail .detail article p,
.blog-detail .detail article ul,
.blog-detail .detail article ol {
  font-size: 2.2rem;
}
@media only screen and (max-width: 1024px) {
  .blog-detail .detail article p,
  .blog-detail .detail article ul,
  .blog-detail .detail article ol {
    font-size: 1.8rem;
  }
}
.blog-detail .detail article p strong,
.blog-detail .detail article ul strong,
.blog-detail .detail article ol strong {
  font-weight: 500;
}
.blog-detail .detail article p a,
.blog-detail .detail article ul a,
.blog-detail .detail article ol a {
  color: #000;
  text-decoration: underline;
}
.blog-detail .detail article ul,
.blog-detail .detail article ol {
  margin-left: 4rem;
}
@media only screen and (max-width: 1024px) {
  .blog-detail .detail article ul,
  .blog-detail .detail article ol {
    margin-left: 2rem;
  }
}
.blog-detail .detail article p {
  line-height: 1.4;
}
.blog-detail .detail article ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
}
.blog-detail .detail article ul li {
  list-style: disc;
  display: list-item;
  list-style: inside;
}
.blog-detail .detail article ol li {
  margin-bottom: 4rem;
}
.blog-detail .detail article ol li:last-child {
  margin-bottom: 0;
}
.error-content {
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.error-content figure {
  position: relative;
  overflow: hidden;
  height: 80vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  .error-content figure {
    height: 40vh;
  }
}
.error-content figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-animation: rotateScale 4s ease-in-out infinite;
  animation: rotateScale 4s ease-in-out infinite;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}
.error-content figure figcaption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 30rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .error-content figure figcaption {
    max-width: 10rem;
  }
}
.error-content figure figcaption span {
  font-size: 20rem;
}
@media only screen and (max-width: 1370px) {
  .error-content figure figcaption span {
    font-size: 10rem;
  }
}
@media only screen and (max-width: 1024px) {
  .error-content figure figcaption span {
    font-size: 6rem;
  }
}
.error-content figure figcaption small,
.error-content figure figcaption a {
  font-size: 2.2rem;
  text-align: center;
  color: #fff;
}
@media only screen and (max-width: 1370px) {
  .error-content figure figcaption small,
  .error-content figure figcaption a {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 768px) {
  .error-content figure figcaption small,
  .error-content figure figcaption a {
    font-size: 1.4rem;
  }
}
.error-content figure figcaption a {
  text-decoration: underline;
}
.cookies-bar {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  position: fixed;
  z-index: 10;
  inset: auto 0 1rem 0;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: hsla(0, 0%, 100%, 0.5);
  backdrop-filter: blur(17.1px);
  -webkit-backdrop-filter: blur(17.1px);
  -webkit-box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  border-radius: 100vmax;
  padding: 1.4rem 2rem;
}
@media only screen and (max-width: 768px) {
  .cookies-bar {
    width: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-radius: 1rem;
    text-align: center;
    gap: 1.6rem;
    padding: 1rem;
    inset: auto 1rem 1rem 1rem;
  }
}
.cookies-bar span {
  font-size: 2rem;
  color: #000;
  margin-right: 4rem;
}
@media only screen and (max-width: 1600px) {
  .cookies-bar span {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 768px) {
  .cookies-bar span {
    margin-right: 0;
  }
}
.cookies-bar span a {
  color: #000;
  text-decoration: underline;
}
.cookies-bar .buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
.why-us {
  width: 100%;
  height: 100vh;
  background: #000;
  position: relative;
  overflow: hidden;
}
.why-us span {
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 16rem;
  color: #fff;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .why-us span {
    font-size: 8rem;
  }
}
.why-us .items-content .why-items {
  position: absolute;
  inset: 0;
}
.why-us .items-content .why-item {
  max-width: 30rem;
  position: absolute;
  background: #000;
  border: 1px solid #fff;
  color: #fff;
  padding: 2rem;
  font-size: 2.8rem;
  font-weight: 500;
  border-radius: 8px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  white-space: wrap;
  -webkit-animation: float 20s linear infinite;
  animation: float 20s linear infinite;
  -webkit-transform: rotate(var(--rotation));
  transform: rotate(var(--rotation));
}
@media only screen and (max-width: 1024px) {
  .why-us .items-content .why-item {
    max-width: 15rem;
    font-size: 1.6rem;
  }
}
.why-us .items-content .why-item:nth-child(1) {
  --rotation: 15deg;
  top: 15%;
  left: 20%;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}
.why-us .items-content .why-item:nth-child(2) {
  --rotation: -10deg;
  top: 25%;
  left: 60%;
  -webkit-animation-delay: -2s;
  animation-delay: -2s;
}
.why-us .items-content .why-item:nth-child(3) {
  --rotation: 5deg;
  top: 45%;
  left: 15%;
  -webkit-animation-delay: -4s;
  animation-delay: -4s;
}
.why-us .items-content .why-item:nth-child(4) {
  --rotation: -8deg;
  top: 65%;
  left: 70%;
  -webkit-animation-delay: -6s;
  animation-delay: -6s;
}
.why-us .items-content .why-item:nth-child(5) {
  --rotation: 12deg;
  top: 75%;
  left: 30%;
  -webkit-animation-delay: -8s;
  animation-delay: -8s;
}
.why-us .items-content .why-item:nth-child(6) {
  --rotation: -15deg;
  top: 35%;
  left: 80%;
  -webkit-animation-delay: -10s;
  animation-delay: -10s;
}
.why-us .items-content .why-item:nth-child(7) {
  --rotation: 7deg;
  top: 85%;
  left: 50%;
  -webkit-animation-delay: -12s;
  animation-delay: -12s;
}
.why-us .items-content .why-item:nth-child(8) {
  --rotation: -12deg;
  top: 20%;
  left: 40%;
  -webkit-animation-delay: -14s;
  animation-delay: -14s;
}
.why-us .items-content .why-item:nth-child(9) {
  --rotation: 10deg;
  top: 55%;
  left: 25%;
  -webkit-animation-delay: -16s;
  animation-delay: -16s;
}
.why-us .items-content .why-item:nth-child(10) {
  --rotation: -5deg;
  top: 30%;
  left: 75%;
  -webkit-animation-delay: -18s;
  animation-delay: -18s;
}
.why-us .items-content .why-item:nth-child(11) {
  --rotation: 8deg;
  top: 70%;
  left: 85%;
  -webkit-animation-delay: -20s;
  animation-delay: -20s;
}
@-webkit-keyframes float {
  0% {
    -webkit-transform: translate(0, 0) rotate(var(--rotation));
    transform: translate(0, 0) rotate(var(--rotation));
  }
  25% {
    -webkit-transform: translate(50px, 50px)
      rotate(calc(var(--rotation) + 5deg));
    transform: translate(50px, 50px) rotate(calc(var(--rotation) + 5deg));
  }
  50% {
    -webkit-transform: translate(0, 100px) rotate(var(--rotation));
    transform: translate(0, 100px) rotate(var(--rotation));
  }
  75% {
    -webkit-transform: translate(-50px, 50px)
      rotate(calc(var(--rotation) - 5deg));
    transform: translate(-50px, 50px) rotate(calc(var(--rotation) - 5deg));
  }
  100% {
    -webkit-transform: translate(0, 0) rotate(var(--rotation));
    transform: translate(0, 0) rotate(var(--rotation));
  }
}
@keyframes float {
  0% {
    -webkit-transform: translate(0, 0) rotate(var(--rotation));
    transform: translate(0, 0) rotate(var(--rotation));
  }
  25% {
    -webkit-transform: translate(50px, 50px)
      rotate(calc(var(--rotation) + 5deg));
    transform: translate(50px, 50px) rotate(calc(var(--rotation) + 5deg));
  }
  50% {
    -webkit-transform: translate(0, 100px) rotate(var(--rotation));
    transform: translate(0, 100px) rotate(var(--rotation));
  }
  75% {
    -webkit-transform: translate(-50px, 50px)
      rotate(calc(var(--rotation) - 5deg));
    transform: translate(-50px, 50px) rotate(calc(var(--rotation) - 5deg));
  }
  100% {
    -webkit-transform: translate(0, 0) rotate(var(--rotation));
    transform: translate(0, 0) rotate(var(--rotation));
  }
}
.super {
  font-family: "Super2";
}
h1 {
  font-size: 18rem;
  font-weight: 400;
}
@media only screen and (max-width: 1370px) {
  h1 {
    font-size: 12rem;
  }
}
@media only screen and (max-width: 768px) {
  h1 {
    font-size: 6rem;
  }
}
section.dark .content-headlines {
  color: #fff;
}
section.dark .content-headlines.type-4 {
  border-top: solid #fff 0.1rem;
}
.content-caption {
  padding-bottom: 20rem;
}
.content-caption.image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .content-caption.image {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4rem;
  }
}
@media only screen and (max-width: 1920px) {
  .content-caption {
    padding-bottom: 0;
  }
}
.content-caption span {
  max-width: 80rem;
  font-size: 4rem;
  display: block;
  text-indent: 20rem;
}
@media only screen and (max-width: 1920px) {
  .content-caption span {
    font-size: 3rem;
    max-width: 60rem;
  }
}
@media only screen and (max-width: 1600px) {
  .content-caption span {
    font-size: 2rem;
    max-width: 50rem;
  }
}
@media only screen and (max-width: 1024px) {
  .content-caption span {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  .content-caption span {
    max-width: 100%;
  }
}
.content-caption span mark {
  background: none;
  text-decoration: underline;
}
.headlines {
  padding: 20rem 0 10rem;
}
@media only screen and (max-width: 1600px) {
  .headlines {
    padding: 10rem 0 10rem;
  }
}
@media only screen and (max-width: 1024px) {
  .headlines {
    padding: 4rem 0 10rem;
  }
}
.headlines.type-2 {
  padding: 10rem 0;
}
@media only screen and (max-width: 1024px) {
  .headlines.type-2 {
    padding: 4rem 0;
  }
}
.content-headlines {
  padding: 4rem 0 10rem;
  border-top: solid #000 0.1rem;
  border-bottom: solid #000 0.1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 6rem;
}
@media only screen and (max-width: 1024px) {
  .content-headlines {
    padding: 4rem 0 4rem;
  }
}
.content-headlines.type-2 {
  padding: 6rem 0 10rem;
}
@media only screen and (max-width: 1024px) {
  .content-headlines.type-2 {
    padding: 6rem 0 4rem;
  }
}
.content-headlines.type-3 {
  border-top: solid #000 0.1rem;
  border-bottom: none;
}
.content-headlines.type-3 .item {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 8rem;
}
.content-headlines.type-3 .item .head,
.content-headlines.type-3 .item p {
  width: 100%;
  max-width: 100%;
}
.content-headlines.type-3 .item .caption {
  max-width: 100%;
}
.content-headlines.type-4 {
  border-top: solid #000 0.1rem;
  border-bottom: none;
}
.content-headlines.type-5 {
  border-bottom: solid #000 0.1rem;
  border-top: none;
}
.content-headlines.type-6 {
  margin-top: 10rem;
}
@media only screen and (max-width: 1024px) {
  .content-headlines.type-6 {
    margin-top: 6rem;
  }
}
.content-headlines.no-border {
  border: none;
  margin-top: 0;
}
.content-headlines .headline {
  font-size: 2rem;
}
@media only screen and (max-width: 1600px) {
  .content-headlines .headline {
    font-size: 1.4rem;
  }
}
.content-headlines .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 30rem;
}
@media only screen and (max-width: 1024px) {
  .content-headlines .item {
    gap: 6rem;
  }
}
@media only screen and (max-width: 768px) {
  .content-headlines .item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3rem;
  }
}
.content-headlines .head {
  max-width: 60%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 4rem;
}
@media only screen and (max-width: 1600px) {
  .content-headlines .head {
    max-width: 100%;
  }
}
.content-headlines .head small {
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: -0.05em;
  margin-bottom: 4rem;
}
@media only screen and (max-width: 1024px) {
  .content-headlines .head small {
    margin-bottom: 2rem;
    font-size: 1.8rem;
  }
}
.content-headlines .head svg {
  width: 8rem;
}
@media only screen and (max-width: 1600px) {
  .content-headlines .head svg {
    width: 5rem;
  }
}
.content-headlines .head span {
  font-size: 10rem;
  display: block;
  letter-spacing: -0.03em;
  line-height: 1.1;
}
@media only screen and (max-width: 1600px) {
  .content-headlines .head span {
    font-size: 6rem;
  }
}
@media only screen and (max-width: 1370px) {
  .content-headlines .head span {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 1024px) {
  .content-headlines .head span {
    font-size: 3.2rem;
  }
}
.content-headlines small {
  font-size: 1.4rem;
}
.content-headlines p {
  font-size: 3.4rem;
  letter-spacing: -0.01em;
}
.content-headlines p.indent {
  text-indent: 4vw;
}
@media only screen and (max-width: 1600px) {
  .content-headlines p {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 1370px) {
  .content-headlines p {
    font-size: 1.6rem;
  }
}
.content-headlines .caption {
  max-width: 40%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 10rem;
}
@media only screen and (max-width: 1600px) {
  .content-headlines .caption {
    max-width: 40rem;
    gap: 8rem;
  }
}
@media only screen and (max-width: 768px) {
  .content-headlines .caption {
    max-width: 100%;
    gap: 4rem;
  }
}
.content-headlines .caption p {
  text-indent: 8rem;
}
.content-headlines .caption .buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .content-headlines .caption .buttons {
    gap: 1rem;
  }
}
.content-headlines .caption .circle-button {
  margin-top: auto;
}
.content-headlines .location {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2rem;
}
.accordion-container {
  width: 100%;
  padding: 0 0 10rem;
}
@media only screen and (max-width: 1024px) {
  .accordion-container {
    margin: 0 auto;
    padding: 0;
  }
}
.accordion-container .accordion-menu {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
  counter-reset: item;
}
@media only screen and (max-width: 1024px) {
  .accordion-container .accordion-menu {
    gap: 0;
  }
}
.accordion-container .accordion-menu > li {
  border-bottom: solid #000 0.1rem;
  padding: 6rem 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  counter-increment: item;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .accordion-container .accordion-menu > li {
    padding: 3rem 0 0;
  }
}
.accordion-container .accordion-menu > li::before {
  content: counter(item);
  display: inline-block;
  margin-right: 1rem;
  font-size: 2rem;
  color: #2f2f2f;
  position: absolute;
  top: 2rem;
  left: 0;
}
.accordion-container .accordion-menu > li.open {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.accordion-container .accordion-menu > li.open .dropdownlink i .icon-open {
  display: none;
}
.accordion-container .accordion-menu > li.open .dropdownlink i .icon-close {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.accordion-container .accordion-menu .dropdownlink {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 7rem;
  color: #2f2f2f;
  position: relative;
  -webkit-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
  letter-spacing: -0.04em;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 1370px) {
  .accordion-container .accordion-menu .dropdownlink {
    font-size: 5.2rem;
  }
}
@media only screen and (max-width: 1024px) {
  .accordion-container .accordion-menu .dropdownlink {
    min-height: 8rem;
    padding: 2rem 0 2rem 0;
    font-size: 2.6rem;
  }
}
.accordion-container .accordion-menu .dropdownlink i {
  width: 7rem;
  height: 7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  right: 4rem;
  font-size: 1.8rem;
  background: #000;
  border-radius: 100vmax;
  margin-right: 4rem;
}
@media only screen and (max-width: 1370px) {
  .accordion-container .accordion-menu .dropdownlink i {
    width: 5rem;
    height: 5rem;
    margin-right: 2rem;
  }
}
@media only screen and (max-width: 1024px) {
  .accordion-container .accordion-menu .dropdownlink i {
    width: 4rem;
    height: 4rem;
    margin-right: 0;
  }
}
.accordion-container .accordion-menu .dropdownlink i svg {
  width: 3rem;
}
@media only screen and (max-width: 1370px) {
  .accordion-container .accordion-menu .dropdownlink i svg {
    width: 2.2rem;
  }
}
@media only screen and (max-width: 1024px) {
  .accordion-container .accordion-menu .dropdownlink i svg {
    width: 1.8rem;
  }
}
.accordion-container .accordion-menu .dropdownlink i .icon-open {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.accordion-container .accordion-menu .dropdownlink i .icon-close {
  display: none;
}
.accordion-container .submenuItems {
  display: none;
  padding: 10rem 0 4rem;
}
@media only screen and (max-width: 1024px) {
  .accordion-container .submenuItems {
    padding: 0 0 4rem;
  }
}
.accordion-container .submenuItems .tab-itens {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 10rem;
}
@media only screen and (max-width: 768px) {
  .accordion-container .submenuItems .tab-itens {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4rem;
  }
}
.accordion-container .submenuItems .tab-itens .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.accordion-container .submenuItems .tab-itens .caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
}
.accordion-container .submenuItems .tab-itens .caption .button {
  width: -webkit-min-content;
  width: -moz-min-content;
  width: min-content;
}
.accordion-container .submenuItems .tab-itens p {
  max-width: 50rem;
  margin-left: auto;
}
@media only screen and (max-width: 1024px) {
  .accordion-container .submenuItems .tab-itens p {
    max-width: 28rem;
  }
}
@media only screen and (max-width: 768px) {
  .accordion-container .submenuItems .tab-itens p {
    margin-left: 0;
    max-width: 100%;
  }
}
.accordion-container .submenuItems .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8rem;
}
.accordion-container .submenuItems .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2rem;
}
.accordion-container .submenuItems .list ul li {
  font-size: 2rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .accordion-container .submenuItems .list ul li {
    font-size: 1.6rem;
  }
}
.accordion-container .submenuItems .list ul li::before {
  content: "âœº";
  margin-right: 1rem;
}
.accordion-container .submenuItems p {
  max-width: 70%;
  font-size: clamp(2rem, 6vw, 2.4em);
  color: #2f2f2f;
  font-weight: 500;
  line-height: 1.4;
  margin-right: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: -0.24px;
}
@media only screen and (max-width: 1920px) {
  .accordion-container .submenuItems p {
    font-size: 2.4rem;
    max-width: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  .accordion-container .submenuItems p {
    font-size: 1.8rem;
  }
}
.accordion-container .submenuItems p strong {
  font-weight: 500;
}
.lets-talk {
  width: 100%;
  padding: 6rem;
  border: solid #000 0.1rem;
  border-radius: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-bottom: 10rem;
}
@media only screen and (max-width: 1024px) {
  .lets-talk {
    padding: 4rem 2rem;
    margin-bottom: 2rem;
  }
}
.lets-talk small {
  font-size: 2rem;
  color: #000;
  letter-spacing: -0.03em;
}
@media only screen and (max-width: 1024px) {
  .lets-talk small {
    font-size: 1.6rem;
  }
}
.lets-talk .item .icons {
  margin: 8rem 0;
}
@media only screen and (max-width: 1600px) {
  .lets-talk .item .icons {
    margin: 4rem 0;
  }
}
.lets-talk .item .icons img {
  width: 20rem;
}
@media only screen and (max-width: 1600px) {
  .lets-talk .item .icons img {
    width: 14rem;
  }
}
@media only screen and (max-width: 768px) {
  .lets-talk .item .icons img {
    width: 10rem;
  }
}
.lets-talk .item .caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 60rem;
}
@media only screen and (max-width: 1600px) {
  .lets-talk .item .caption {
    gap: 20rem;
  }
}
@media only screen and (max-width: 768px) {
  .lets-talk .item .caption {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 4rem;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.lets-talk .item .caption span {
  font-size: 10rem;
  letter-spacing: -0.03em;
  line-height: 1.1;
  letter-spacing: -0.03em;
}
@media only screen and (max-width: 1600px) {
  .lets-talk .item .caption span {
    font-size: 4.8rem;
    letter-spacing: -0.02em;
  }
}
@media only screen and (max-width: 1024px) {
  .lets-talk .item .caption span {
    font-size: 3.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .lets-talk .item .caption span {
    font-size: 2.2rem;
  }
}
.content-form {
  width: 100%;
  padding: 12rem;
  border-radius: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-bottom: 10rem;
  background: #000;
  position: relative;
}
@media only screen and (max-width: 1370px) {
  .content-form {
    padding: 10rem;
  }
}
@media only screen and (max-width: 1024px) {
  .content-form {
    padding: 4rem 2rem;
    margin-bottom: 4rem;
  }
}
.content-form .head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .content-form .head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    gap: 4rem;
  }
}
.content-form .head .mail-address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 2.4rem;
  height: 6rem;
  gap: 2rem;
  letter-spacing: -0.01em;
  font-weight: 500;
}
@media only screen and (max-width: 1370px) {
  .content-form .head .mail-address {
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .content-form .head .mail-address {
    font-size: 1.8rem;
  }
}
.content-form .head .mail-address span {
  font-size: 2.4rem;
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .content-form .head .mail-address span {
    font-size: 1.8rem;
  }
}
.content-form .head .mail-address .mail {
  background: #ededed;
  height: 100%;
  padding: 0 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.content-form .head img {
  width: 14rem;
}
.content-form form {
  width: 100%;
  margin-top: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.content-form form .row {
  gap: 6rem;
}
@media only screen and (max-width: 1024px) {
  .content-form form .row {
    gap: 2rem;
  }
}
.content-form form .form-item {
  position: relative;
  letter-spacing: -0.01em;
  height: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
}
@media only screen and (max-width: 1024px) {
  .content-form form .form-item {
    height: 8rem;
  }
}
.content-form form .form-textarea {
  position: relative;
  letter-spacing: -0.01em;
  height: 20rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
}
.content-form form .title {
  position: absolute;
  left: 0;
  top: 3.6rem;
  font-size: 3rem;
  font-weight: 500;
  color: #fff;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  pointer-events: none;
}
@media only screen and (max-width: 1370px) {
  .content-form form .title {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 1024px) {
  .content-form form .title {
    font-size: 2rem;
  }
}
.content-form form input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: rgba(0, 0, 0, 0);
  caret-color: #fff;
  color: #fff;
}
.content-form form input:-webkit-autofill,
.content-form form input:-webkit-autofill:hover,
.content-form form input:-webkit-autofill:focus,
.content-form form input:-webkit-autofill:active {
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
  -webkit-text-fill-color: #fff !important;
  -webkit-box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0) inset;
  box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0) inset;
}
.content-form form input[type="text"]:not(:-moz-placeholder) ~ .title,
.content-form form input[type="email"]:not(:-moz-placeholder) ~ .title,
.content-form form input[type="number"]:not(:-moz-placeholder) ~ .title,
.content-form form textarea:not(:-moz-placeholder) ~ .title {
  top: 1.6rem;
  font-size: 1.6rem;
  color: #fff;
}
.content-form form input[type="text"]:not(:-ms-input-placeholder) ~ .title,
.content-form form input[type="email"]:not(:-ms-input-placeholder) ~ .title,
.content-form form input[type="number"]:not(:-ms-input-placeholder) ~ .title,
.content-form form textarea:not(:-ms-input-placeholder) ~ .title {
  top: 1.6rem;
  font-size: 1.6rem;
  color: #fff;
}
.content-form form input[type="text"]:focus ~ .title,
.content-form form input[type="text"]:not(:placeholder-shown) ~ .title,
.content-form form input[type="email"]:focus ~ .title,
.content-form form input[type="email"]:not(:placeholder-shown) ~ .title,
.content-form form input[type="number"]:focus ~ .title,
.content-form form input[type="number"]:not(:placeholder-shown) ~ .title,
.content-form form textarea:focus ~ .title,
.content-form form textarea:not(:placeholder-shown) ~ .title {
  top: 1.6rem;
  font-size: 1.6rem;
  color: #fff;
}
.content-form form input,
.content-form form textarea {
  font-family: "Neue Montreal";
  outline: none;
  border: 0;
  border-bottom: 1px solid #fff;
  color: #fff;
  background: none;
  width: 100%;
}
.content-form form input::-webkit-input-placeholder,
.content-form form textarea::-webkit-input-placeholder {
  opacity: 0;
}
.content-form form input::-moz-placeholder,
.content-form form textarea::-moz-placeholder {
  opacity: 0;
}
.content-form form input:-ms-input-placeholder,
.content-form form textarea:-ms-input-placeholder {
  opacity: 0;
}
.content-form form input::-ms-input-placeholder,
.content-form form textarea::-ms-input-placeholder {
  opacity: 0;
}
.content-form form input::placeholder,
.content-form form textarea::placeholder {
  opacity: 0;
}
.content-form form input {
  height: 6rem;
  font-size: 4rem;
}
@media only screen and (max-width: 1024px) {
  .content-form form input {
    font-size: 3rem;
  }
}
.content-form form textarea {
  height: 20rem;
  font-size: 4rem;
  margin-top: 4rem;
  padding-top: 4rem;
}
@media only screen and (max-width: 1024px) {
  .content-form form textarea {
    font-size: 3rem;
  }
}
.content-form form .button {
  margin-top: 4rem;
  margin-left: auto;
}
.modalbox {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.85);
  z-index: 11;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  padding: 2rem;
}
.modalbox.visible {
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.modalbox .modalbox-content {
  max-width: 120rem;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  background: #fff;
  padding: 2rem 4rem 4rem;
  border-radius: 2rem;
}
.modalbox .modalbox-content .head {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 10rem;
  margin-bottom: 2rem;
}
.modalbox .modalbox-content .head .title {
  font-size: 6rem;
  font-weight: 500;
}
@media only screen and (max-width: 1024px) {
  .modalbox .modalbox-content .head .title {
    font-size: 2.4rem;
  }
}
.modalbox .modalboxClose {
  width: 2.4rem;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 100%;
}
.modalbox .modalboxClose svg {
  width: 2rem;
}
.modalbox .content-form {
  margin-bottom: 0;
}
.control-bar {
  width: 100%;
  height: 10rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 4rem;
}
@media only screen and (max-width: 768px) {
  .control-bar {
    padding-right: 2rem;
  }
}
.control-bar .swiper-pagination {
  position: relative;
  height: 0.2rem;
  background: rgba(0, 0, 0, 0.2);
}
.control-bar .swiper-pagination span {
  background: #000;
}
.control-bar .buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0;
}
.control-bar .buttons svg {
  width: 6rem;
  stroke: #000;
  stroke-width: 0.1rem;
}
@media only screen and (max-width: 768px) {
  .control-bar .buttons svg {
    width: 4.8rem;
  }
}
.carousel-slider {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 768px) {
  .carousel-slider {
    padding-bottom: 6rem;
  }
}
.carousel-slider figure {
  overflow: hidden;
  position: relative;
}
.carousel-slider figure img {
  border-radius: 2rem;
  -o-object-fit: cover;
  object-fit: cover;
}
.costumer {
  border-top: solid #000 0.1rem;
  padding-top: 6rem;
  padding-bottom: 10rem;
}
.costumer .head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin-bottom: 6rem;
}
@media only screen and (max-width: 768px) {
  .costumer .head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.costumer .head .left {
  max-width: 100rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 4rem;
}
.costumer .head .left small {
  font-size: 1.4rem;
}
.costumer .head .left span {
  font-size: 10rem;
  letter-spacing: -0.03em;
  line-height: 1;
}
@media only screen and (max-width: 1370px) {
  .costumer .head .left span {
    font-size: 6.8rem;
    letter-spacing: -0.01em;
  }
}
@media only screen and (max-width: 1024px) {
  .costumer .head .left span {
    max-width: 80rem;
    font-size: 4.8rem;
  }
}
.costumer .swiper-pagination {
  font-size: 4rem;
}
@media only screen and (max-width: 1370px) {
  .costumer .swiper-pagination {
    font-size: 2.6rem;
  }
}
@media only screen and (max-width: 1024px) {
  .costumer .swiper-pagination {
    font-size: 1.8rem;
  }
}
.costumer .swiper .swiper-slide {
  border: solid #000 0.1rem;
  border-radius: 2rem;
  padding: 4rem;
  gap: 4rem;
  height: auto;
}
@media only screen and (max-width: 768px) {
  .costumer .swiper .swiper-slide {
    padding: 2rem;
  }
}
.costumer .swiper .swiper-slide .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4rem;
  margin-bottom: 6rem;
}
@media only screen and (max-width: 1600px) {
  .costumer .swiper .swiper-slide .info {
    margin-bottom: 4rem;
  }
}
.costumer .swiper .swiper-slide .info img {
  width: 14rem;
  border-radius: 2rem;
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
}
.costumer .swiper .swiper-slide .info .caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 1.4em;
  font-style: italic;
  color: #7b7b7b;
}
@media only screen and (max-width: 768px) {
  .costumer .swiper .swiper-slide .info .caption {
    font-size: 1.4rem;
  }
}
.costumer .swiper .swiper-slide .info .caption span {
  font-size: 2.2rem;
  color: #000;
  margin-bottom: 2rem;
  font-style: normal;
}
.costumer .swiper .swiper-slide p {
  font-size: 2.6rem;
  letter-spacing: 0.01em;
}
@media only screen and (max-width: 1600px) {
  .costumer .swiper .swiper-slide p {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  .costumer .swiper .swiper-slide p {
    font-size: 1.6rem;
  }
}
.cursor-small {
  top: 0px;
  left: 0px;
  z-index: 100;
  height: 0;
  width: 0;
  border-radius: 50%;
  background-color: #be9a48;
}
.cursor-big {
  top: 0px;
  left: 0px;
  height: 100px;
  width: 100px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #0119ff;
  border-radius: 50%;
  padding: 10px;
  pointer-events: none;
  position: fixed;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: color 0.5s ease;
  transition: color 0.5s ease;
  z-index: 9999;
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  gap: 1rem;
  opacity: 0;
}
.cursor-big img {
  width: 3rem;
}
header {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 4rem 8rem;
  position: relative;
  z-index: 103;
  -webkit-transition: all 1s;
  transition: all 1s;
}
@media only screen and (max-width: 1600px) {
  header {
    padding: 4rem;
  }
}
@media only screen and (max-width: 1024px) {
  header {
    padding: 2rem 2rem;
    position: relative;
  }
}
header.scrolled {
  -webkit-transition: all 1s;
  transition: all 1s;
  -webkit-transform: translateY(-14rem);
  transform: translateY(-14rem);
}
header .logo svg {
  width: 30rem;
  fill: #000;
}
@media only screen and (max-width: 1370px) {
  header .logo svg {
    width: 20rem;
  }
}
header .text {
  max-width: 28em;
  font-size: 1.6rem;
  letter-spacing: -0.05em;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
header .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  header .right {
    width: auto;
  }
}
@media only screen and (max-width: 1024px) {
  header .right .button {
    display: none;
  }
}
header .right .menu-button {
  width: 4rem;
  height: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  cursor: pointer;
}
header .right .menu-button .lines {
  width: 4rem;
  height: 2rem;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
header .right .menu-button .lines .line {
  width: 100%;
  height: 0.2rem;
  background: #000;
  position: absolute;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
header .right .menu-button .lines .line:first-child {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
header .right .menu-button .lines .line:last-child {
  -webkit-transform: translateY(2rem);
  transform: translateY(2rem);
}
header .right .menu-button.active .lines .line:first-child {
  -webkit-transform: translateY(1rem) rotate(45deg);
  transform: translateY(1rem) rotate(45deg);
}
header .right .menu-button.active .lines .line:last-child {
  -webkit-transform: translateY(1rem) rotate(-45deg);
  transform: translateY(1rem) rotate(-45deg);
}
.menu-content {
  position: fixed;
  width: 100%;
  height: 100%;
  top: -100%;
  left: 0;
  background: #000;
  z-index: 102;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 0 8rem 8rem;
}
@media only screen and (max-width: 1600px) {
  .menu-content {
    padding: 0 4rem 2rem;
  }
}
@media only screen and (max-width: 1024px) {
  .menu-content {
    padding: 0 1.4rem 4rem;
    height: 100dvh;
  }
}
.menu-content .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 18rem;
}
@media only screen and (max-width: 1600px) {
  .menu-content .menu {
    margin-top: 12rem;
  }
}
@media only screen and (max-width: 1024px) {
  .menu-content .menu {
    margin-top: 20rem;
  }
}
@media only screen and (max-width: 1024px) {
  .menu-content .menu {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.menu-content .menu ul:hover li {
  opacity: 0.3;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.menu-content .menu ul li {
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.menu-content .menu ul li:hover {
  opacity: 1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.menu-content .menu ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 14rem;
  color: #fff;
  gap: 1rem;
  line-height: 1;
  margin-bottom: 1rem;
  font-weight: 400;
}
@media only screen and (max-width: 1920px) {
  .menu-content .menu ul li a {
    font-size: 9rem;
  }
}
@media only screen and (max-width: 1600px) {
  .menu-content .menu ul li a {
    font-size: 6.8rem;
  }
}
@media only screen and (max-width: 1370px) {
  .menu-content .menu ul li a {
    font-size: 5.2rem;
  }
}
@media only screen and (max-width: 1024px) {
  .menu-content .menu ul li a {
    font-size: 4.8rem;
  }
}
.menu-content .menu ul li a.link {
  height: auto;
}
.menu-content .menu ul li a.link.line-animated::before {
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  -webkit-transform: scale3d(0, 4, 1);
  transform: scale3d(0, 4, 1);
  -webkit-transition: -webkit-transform 0.7s;
  transition: -webkit-transform 0.7s;
  transition: transform 0.7s;
  transition: transform 0.7s, -webkit-transform 0.7s;
}
.menu-content .menu ul li a.link.line-animated:hover::before {
  -webkit-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
  -webkit-transform: scale3d(1, 4, 1);
  transform: scale3d(1, 4, 1);
}
.menu-content .bottom {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: auto;
}
@media only screen and (max-width: 1600px) {
  .menu-content .bottom {
    margin-top: auto;
  }
}
@media only screen and (max-width: 1024px) {
  .menu-content .bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 2rem;
  }
}
.menu-content .bottom .social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  margin-bottom: 4rem;
  margin-left: auto;
}
@media only screen and (max-width: 1024px) {
  .menu-content .bottom .social {
    margin-left: 0;
  }
}
.menu-content .bottom .social li a svg {
  width: 4rem;
  fill: #fff;
}
@media only screen and (max-width: 768px) {
  .menu-content .bottom .social li a svg {
    width: 3rem;
  }
}
.menu-content .bottom .nav {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  .menu-content .bottom .nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.menu-content .bottom .nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
.menu-content .bottom .nav ul li a {
  font-size: 2rem;
  color: #fff;
}
@media only screen and (max-width: 1600px) {
  .menu-content .bottom .nav ul li a {
    font-size: 1.4rem;
  }
}
.menu-content .bottom .nav span {
  font-size: 2rem;
}
.menu-content .bottom .nav span a {
  color: #fff;
}
.time-zone-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12rem;
}
@media only screen and (max-width: 1024px) {
  .time-zone-items {
    gap: 4rem;
  }
}
@media only screen and (max-width: 768px) {
  .time-zone-items {
    display: none;
  }
}
.time-zone-items .item {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.time-zone-items .item span {
  font-size: 1.6rem;
  font-weight: 500;
}
.lang {
  width: 8rem;
  height: 6rem;
  margin: 0 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid rgba(0, 0, 0, 0) 0.2rem;
  position: relative;
}
.lang button {
  background: none;
}
.lang .select-lang {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  padding: 0 1rem;
}
.lang .select-lang span {
  font-size: 1.6rem;
}
.lang .select-lang span,
.lang .select-lang svg {
  color: #000;
}
.lang .select-lang svg {
  width: 2rem;
  margin-left: auto;
}
.lang .select-lang-menu {
  position: absolute;
  width: 100%;
  top: calc(100% + 2rem);
  left: 0;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 0 1rem;
  border: solid #000 0.2rem;
  border-radius: 1rem;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.lang .select-lang-menu.active {
  top: 100%;
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.lang .select-lang-menu li {
  height: 5rem;
  font-size: 1.6rem;
  color: #2f2f2f;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: solid rgba(0, 0, 0, 0.1) 0.1rem;
  cursor: pointer;
}
.lang-button {
  width: 9rem;
  height: 5.6rem;
  margin: 0 3rem;
  position: relative;
}
@media only screen and (max-width: 1600px) {
  .lang-button {
    height: 5rem;
  }
}
@media only screen and (max-width: 1024px) {
  .lang-button {
    width: 7rem;
    margin: 0 2rem;
  }
}
.lang-button.active .lang-menu-item {
  border-radius: 2rem;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.lang-button.active ul {
  max-height: 20rem;
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.lang-button .lang-menu-item {
  border: solid #000 0.2rem;
  width: 100%;
  border-radius: 5rem;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  overflow: hidden;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.lang-button .lang-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 5.6rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  position: relative;
  padding: 0 1.4rem;
}
@media only screen and (max-width: 1600px) {
  .lang-button .lang-item {
    height: 4.6rem;
  }
}
.lang-button .lang-item span {
  font-size: 2rem;
}
@media only screen and (max-width: 1920px) {
  .lang-button .lang-item span {
    font-size: 1.4rem;
  }
}
.lang-button .lang-item svg {
  width: 2rem;
  margin-left: auto;
}
.lang-button ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.4s ease;
  transition: max-height 0.4s ease;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.lang-button ul li {
  height: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 2rem;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  padding: 0 1rem;
}
@media only screen and (max-width: 1920px) {
  .lang-button ul li {
    font-size: 1.4rem;
    height: 4rem;
  }
}
.lang-button ul li:hover {
  background: #000;
  color: #fff;
}
footer {
  width: 100%;
}
footer .content {
  width: 100%;
  padding: 14rem 8rem 0;
  background: #000;
  background-size: cover;
  padding-top: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh;
}
@media only screen and (max-width: 1024px) {
  footer .content {
    padding: 6rem 2rem 0;
    min-height: auto;
  }
}
footer .content .head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
footer .content .head svg {
  width: 14rem;
}
@media only screen and (max-width: 1600px) {
  footer .content .head svg {
    width: 8rem;
  }
}
@media only screen and (max-width: 1024px) {
  footer .content .head svg {
    width: 3.8rem;
  }
}
footer .title {
  font-size: 16rem;
  color: #fff;
  letter-spacing: -0.05em;
}
@media only screen and (max-width: 1920px) {
  footer .title {
    font-size: 13rem;
  }
}
@media only screen and (max-width: 1920px) {
  footer .title {
    font-size: 9rem;
  }
}
@media only screen and (max-width: 1024px) {
  footer .title {
    font-size: 3.8rem;
  }
}
footer nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 12rem 0 8rem;
}
@media only screen and (max-width: 1600px) {
  footer nav {
    margin: 6rem 0 8rem;
  }
}
@media only screen and (max-width: 768px) {
  footer nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 6rem;
    margin: 6rem 0 8rem;
  }
}
footer nav .menu {
  gap: 4rem 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media only screen and (max-width: 1024px) {
  footer nav .menu {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  footer nav .menu ul {
    width: 50%;
  }
}
footer nav .menu ul.type-2 {
  margin-left: 6rem;
}
@media only screen and (max-width: 1024px) {
  footer nav .menu ul.type-2 {
    margin-left: 3rem;
  }
}
footer nav .menu ul.type-2 span {
  font-size: 4rem;
  color: #fff;
  letter-spacing: -0.05em;
  line-height: 1.4;
  font-weight: 500;
}
@media only screen and (max-width: 1370px) {
  footer nav .menu ul.type-2 span {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 768px) {
  footer nav .menu ul.type-2 span {
    font-size: 2.6rem;
  }
}
footer nav .menu ul.type-2 li {
  margin-top: 1rem;
}
footer nav .menu ul.type-2 li a {
  font-size: 2rem;
}
@media only screen and (max-width: 1370px) {
  footer nav .menu ul.type-2 li a {
    font-size: 1.8rem;
  }
}
footer nav .menu ul li a {
  font-size: 4rem;
  color: #fff;
  letter-spacing: -0.05em;
  line-height: 1.4;
}
@media only screen and (max-width: 1370px) {
  footer nav .menu ul li a {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 768px) {
  footer nav .menu ul li a {
    font-size: 2.4rem;
  }
}
footer nav .caption {
  max-width: 66rem;
  margin-right: -3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 4rem;
}
@media only screen and (max-width: 1600px) {
  footer nav .caption {
    max-width: 30rem;
  }
}
@media only screen and (max-width: 1024px) {
  footer nav .caption {
    max-width: 40rem;
  }
}
@media only screen and (max-width: 768px) {
  footer nav .caption {
    max-width: 100%;
  }
}
footer nav .caption span {
  font-size: 4.6rem;
  color: #fff;
  letter-spacing: -0.01em;
  line-height: 1.1;
  text-indent: 4rem;
}
@media only screen and (max-width: 1600px) {
  footer nav .caption span {
    font-size: 2rem;
  }
}
footer nav .caption .button {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
footer .center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 8rem;
}
@media only screen and (max-width: 768px) {
  footer .center {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
footer .center ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4rem;
}
@media only screen and (max-width: 768px) {
  footer .center ul {
    width: 100%;
    gap: 1rem;
    margin-bottom: 4rem;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
@media only screen and (max-width: 768px) {
  footer .center ul li:last-child {
    margin-left: auto;
  }
}
footer .center a {
  font-size: 4rem;
  color: #fff;
  letter-spacing: -0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  footer .center a {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
footer .center a svg {
  width: 4rem;
}
@media only screen and (max-width: 768px) {
  footer .center a svg {
    width: 3rem;
  }
}
@media only screen and (max-width: 1370px) {
  footer .center a {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 768px) {
  footer .center a {
    font-size: 2.6rem;
  }
}
footer .bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: auto;
}
@media only screen and (max-width: 1024px) {
  footer .bottom {
    margin-top: 0;
  }
}
footer .bottom .item {
  padding: 6rem 0;
  border-top: solid #fff 0.1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  footer .bottom .item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
  }
}
footer .bottom ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
@media only screen and (max-width: 768px) {
  footer .bottom ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 2rem;
  }
}
footer .bottom ul li a {
  font-size: 2rem;
  color: #fff;
  white-space: normal;
}
@media only screen and (max-width: 1600px) {
  footer .bottom ul li a {
    font-size: 1.4rem;
  }
}
footer .bottom span {
  font-size: 2rem;
  color: #fff;
}
@media only screen and (max-width: 1600px) {
  footer .bottom span {
    font-size: 1.4rem;
  }
}
footer .bottom .logo {
  margin-bottom: 2rem;
}
body,
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 10px;
}
* {
  margin: 0;
  padding: 0;
  outline: none;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none;
  list-style: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
img {
  width: 100%;
  vertical-align: middle;
}
body {
  overflow-x: hidden;
  overflow-y: auto;
  font-family: "Poppins", sans-serif;
  /* background: #fff;
  color: #000;
  font-size: 1.6rem;
  line-height: 1.6;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: transparent;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -webkit-font-feature-settings: "pnum";
  font-feature-settings: "pnum"; */
}
body.no-scroll {
  overflow: hidden;
  position: fixed;
  inset: 0;
}
body::-webkit-scrollbar {
  width: 0.4rem;
}
body::-webkit-scrollbar-thumb {
  background: #000;
  border-radius: 1rem;
}
body.dark {
  background: #000;
}
body.dark header .logo svg {
  width: 30rem;
  fill: #fff;
}
@media only screen and (max-width: 1370px) {
  body.dark header .logo svg {
    width: 20rem;
  }
}
body.dark header .time-zone-items {
  color: #fff;
}
body.dark header .button.border.dark {
  border: solid #fff 0.1rem;
  color: #fff;
}
body.dark header .right .menu-button .lines .line {
  background: #fff;
}
#smooth-content {
  will-change: transform;
}
.lazy-waiting,
.lazy-loading {
  display: block;
  visibility: hidden;
  min-height: 300px;
}
:not(body).lazy-done {
  display: block;
  -webkit-animation: fadeIn 2s;
  animation: fadeIn 2s;
  visibility: visible;
}
body.lazy-done {
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.site-list {
  width: 40rem;
  min-height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-top: 6rem;
  margin: auto;
}
.site-list img {
  width: 30rem;
}
.site-list .links ol {
  margin-top: 6rem;
}
.site-list .links ol li {
  margin: 2rem 0;
  list-style-type: decimal;
  font-size: 2rem;
  color: #fff;
  padding-left: 1rem;
}
.site-list .links ol li a {
  font-size: 2rem;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-transform: capitalize;
}
.site-list .links ol li a:hover {
  text-decoration: underline;
} /*# sourceMappingURL=layout.min.css.map */

.play-our-reel-class{
  padding-top: 60px !important;
}

.font-times-new-roman{
  font-family: 'Times New Roman', Times, serif !important;
}

