/* 
@font-face {
  font-family: "Brandon Black";
  src: url("../font/BrandonGrotesque-Black.otf") format("opentype");
}

@font-face {
  font-family: "Brandon Light";
  src: url("../font/BrandonGrotesque-Light.otf") format("opentype");
} 
*/

@font-face {
  font-family: "Monument Regular";
  src: url("../font/MonumentExtended-Regular.otf") format("opentype");
}

@font-face {
  font-family: "Monument Ultrabold";
  src: url("../font/MonumentExtended-Ultrabold.otf") format("opentype");
}

@font-face {
  font-family: "Roboto Slab";
  src: url("../font/RobotoSlab-VariableFont_wght.ttf") format("opentype");
}

.monumentUltrabold {
  font-family: "Monument Ultrabold", Sans-serif;
}
.monumentRegular {
  font-family: "Monument Regular", Sans-serif;
}
/* .robotoSlab {
  font-family: "Roboto Slab", serif;
} */

*,
*:after,
*:before {
  box-sizing: inherit;
  margin: 0;
  padding: 0;
}

html {
  box-sizing: border-box;
  font-family: "Roboto Slab", serif;
  font-size: clamp(1px, 0.88vw, 50px);
  line-height: 1.5;
  scroll-behavior: smooth;
  color: #000000;
  --spacing: 7.55vw;
}

input,
button,
textarea,
select {
  font-family: inherit;
  outline: none;
}

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

img {
  border: none;
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

picture {
  display: flex;
  width: 100%;
}

a {
  display: inline-block;
  text-decoration: none;
}

.hero {
  position: relative;
  background-color: #e31c3d;
}

.hero-content {
  width: 100%;
  position: absolute;
  top: 34%;
}

.hero-title {
  position: relative;
  font-size: 14rem;
  text-align: center;
  line-height: 1;
  letter-spacing: -2px;
}

.title-image {
  width: 7vw;
  position: absolute;
  left: 0;
  bottom: 60%;
  /* right: 19%; */
  display: unset;
}

.subtitle {
  position: relative;
  text-align: center;
  font-size: 5.1rem;
  line-height: 1;
}

.reg {
  font-size: large;
  position: absolute;
  top: 0px;
}

.hero-text {
  color: #ffffff;
  width: 88vw;
  border-top: 1px black solid;
  position: relative;
  padding-top: 18px;
  margin-top: 10px;
  line-height: 1.5;
  text-align: justify;
  transform: translateX(-50%);
  left: 50%;
  font-size: 3rem;
}

.video {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0;
}

.video .embed-iframe {
  position: absolute;
  border: none;
  width: 100%;
  height: 100%;
}

.logos {
  overflow: hidden;
  background-color: #ffffff;
  position: relative;
  padding: 44vw 9vw;
}

.logos-wrapper {
  display: flex;
  flex-direction: column;
  gap: 10vw;
  padding: 0;
}


.slide-1 {
  --slide-size: 100%;
  --slide-padding: 2vw;
  --slide-btn-height: 14vw;
  --padding-list: -4.5vw;
  width: 100%;
  height: auto;
  display: flex;
}


.slide-1 .slide_prev,
.slide-1 .slide_next {
  cursor: pointer;
  background-color: transparent;
  background-image: url(../img/arrow.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: var(--slide-btn-height);
  height: var(--slide-btn-height);
  border: none;
  align-self: center;
}

.slide-1 .slide_prev {
  margin-left: var(--padding-list);
}

.slide-1 .slide_next {
  margin-right: var(--padding-list);
  transform: rotate(180deg);
}

.slide-1 .viewport {
  overflow: hidden;
  min-height: 100px;
  /* width: 60%; */
  flex: 1;
}

.slide-1 .container {
  display: flex;
  flex-direction: row;
  width: 100%;
}

.slide-1 .slide {
  flex: 0 0 var(--slide-size);
  width: 100%;
  overflow: hidden;
  padding: 0 var(--slide-padding);
}

/* desktop */
@media screen and (min-width: 768px) {
  .slide-1 {
    display: none;
  }
}






.logos-images {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 7vw;
  width: 170%;
  margin-left: -49%;
}

.logos-text {
  background-color: #e31c3d;
  text-align: center;
  font-weight: 600;
  font-size: 4.6rem;
  padding: 4vw;
  line-height: 1.4;
}

.rel {
  color: #ffffff;
  position: relative;
}

.rel .reg {
  font-size: medium;
  position: static;
}

.frame {
  position: absolute;
  border: #e31c3d 1px solid;
  /* height: 11.45vw; */
  aspect-ratio: 16 / 9;
  width: 44vw;
}

.frame-1 {
  top: -1px;
  right: -1px;
}

.frame-2 {
  bottom: -1px;
  left: -1px;
}

.subscribe {
  position: relative;
  background-color: #e31c3d;
  color: #929292;
}

.form-content {
  position: absolute;
  left: 50%;
  background-color: #000000;
  transform: translate(-50%, -50%);
  padding: 6vw 12vw;
  top: 50%;
  width: 84%;
}

.form-title {
  text-align: center;
  color: #e31c3d;
  line-height: 1.2;
  font-size: 4.2rem;
}

.form-subscribe {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 3.8vw;
  margin-top: 3.4vw;
}

.form-group {
  display: flex;
  justify-content: flex-end;
}

.form-input {
  color: #929292;
  width: 100%;
  border: none;
  font-size: 3rem;
  padding: 1.6vw 2.6vw;
}

.submit {
  appearance: none;
  border: 1px #e31c3d solid;
  color: #e31c3d;
  background: transparent;
  padding: 1.8vw 3.8vw;
  margin: 1.6vw 0;
  font-size: 3rem;
}

.accept {
  display: flex;
  align-items: start;
  gap: 4px;
}

.accept-text {
  font-weight: 600;
  font-size: 1.8rem;
}

.accept input[type="checkbox"] {
  outline: 1px #e31c3d solid;
  margin-top: 3px;
}

.footer {
  background-color: #000000;
  display: flex;
  justify-content: center;
  color: #ffffff;
}

.footer-content {
  padding: 2vw;
  padding: 1vw 1.4vw;
  width: 50%;
  padding: 6.2vw 4.4vw;
}

.countries {
  margin-top: 2vw;
  display: flex;
  gap: 4px;
  border-left: none;
}

.countries .image{
  width: 22%;
  align-self: center;
}

.countries .names{
  display: grid;
  grid-template-columns: 3fr 4fr 3fr;
  /* repeat(3, 1fr); */
  font-size: 2.2rem;
  row-gap: 1vw;
}

.countries .names div{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
}

.countries .border{
  border-left: 1px #e31c3d solid;
}

.countries p{
  text-align: center;
}

.footer-title {
  color: #e31c3d;
  font-size: 5rem;
}

.contact-link {
  color: #ffffff;
  font-size: 2.6rem;
}

.contact-link:link,
.contact-link:visited,
.contact-link:hover,
.contact-link:active {
  color: #ffffff;
}

.social-media {
  flex-direction: column;
  align-items: center;
  padding: 1vw 3vw;
  display: flex;
  justify-content: center;
  gap: 4vw;
  border-left: 1px #e31c3d solid;
}

.icon {
  aspect-ratio: 1;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 8vw;
  min-width: 25px;
}

.icon-facebook {
  background-image: url("../img/social-facebook.jpg");
}
.icon-instagram {
  background-image: url("../img/social-instagram.jpg");
}
.icon-linkedin {
  background-image: url("../img/social-linkedin.jpg");
}
.icon-x {
  background-image: url("../img/social-x.jpg");
}

@media only screen and (max-width: 768px) {
  .desktop {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  html {
    font-size: clamp(1px, 0.66vw, 50px);
  }

  .hero-content {
    top: 16%;
  }

  .hero-text {
    width: 34.8vw;
    left: 26.8vw;
    line-height: 1.3;
    font-size: 1.6rem;
    transform: unset;
  }

  .logos {
    padding: var(--spacing) var(--spacing) 9.5vw;
  }

  .logos-wrapper {
    border: #e31c3d 1px solid;
    padding: calc(var(--spacing) / 2) var(--spacing);
    gap: calc(var(--spacing) / 3);
  }

  .logos-images {
    gap: 3vw;
    width: unset;
    margin-left: unset;
  }

  .logos-text {
    padding: 1vw;
    font-size: 2.6rem;
    line-height: 1.2;
  }

  .frame {
    aspect-ratio: 16 / 10;
    width: 16.66vw;
  }

  .frame-1 {
    display: none;
  }

  .frame-2 {
    bottom: 14px;
    left: unset;
    right: -1px;
  }

  .form-content {
    width: 30%;
    padding: 2.34vw 4.16vw;
  }

  .form-title {
    font-size: 2.2rem;
  }

  .form-subscribe {
    gap: 1.3vw;
    margin-top: 1.6vw;
  }

  .form-input {
    padding: 0.8vw;
    font-size: 1.6rem;
  }

  .submit {
    padding: 0.6vw 1.6vw;
    margin: 0.8vw 0;
    font-size: 1.6rem;
  }

  .accept-text {
    font-size: 0.8rem;
  }

  .footer-content {
    width: 20%;
    padding: 1.8vw 3vw;
    border-left: 1px #e31c3d solid;
    border-right: 1px #e31c3d solid;
    width: unset;
  }

  .countries {
    width: 40%;
    padding: 1.8vw 2vw;
    margin-top: 0;
    border-left: none;
  }

  .countries .image{
    width: 28%;
  }

  .countries .names{
    padding: 8px 0;
    width: 72%;
    font-size: 2.05rem;
  }

  
  
  .footer-title {
    font-size: 4rem;
  }
  
  .contact-link {
    font-size: 2.05rem;
  }
  
  .social-media {
    flex-direction: row;
    padding: 1vw 3vw;
    border-left: none;
    gap: 2.4vw;
  }
  
  .icon {
    width: 4vw;
    min-width: 30px;
  }

  .mobile {
    display: none;
  }
}
