*::-webkit-scrollbar {
  width: 5px;
  background-color: #0a142b;
}
*::-webkit-scrollbar-thumb {
  width: 5px;
  border-radius: 30px;
  background-color: #9d7c00;
}
body {
  background-color: #0a142b;
  color: #fff;
  padding-top: 100px;
}

.sitePreloader {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 80;
  width: 100%;
  height: 100%;
  opacity: 1;
  display: block;
  visibility: visible;
  transition: all 1.2s ease-in-out, display 1.2s ease allow-discrete;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sitePreloader.hide {
  background-color: transparent;
  opacity: 0;
  visibility: hidden;
  display: none;
}

.sitePreloader svg {
  z-index: 1;
  transform: scale(1.2);
}

.sitePreloader rect {
  width: 0px;
  /* transform: translateX(100%); */
  transform-origin: right;
  transition: all 0.7s linear var(--delay);
}

.stop1 {
  stop-color: #fab912;
}
.stop2 {
  stop-color: #fcd36a;
}
.stop3 {
  stop-color: #f2bc32;
}
.stop4 {
  stop-color: #c89f0e;
}

.animate.sitePreloader rect {
  width: 140px;
  /* transform: translateX(0); */
}

.animate.sitePreloader path {
  stroke-dasharray: 0 1500;
  animation: write 2s linear 0s infinite forwards;
}

.curtainsPreloader {
  width: 100%;
  height: 100%;
  background-color: #0a142b;
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: top;
}

@keyframes write {
  0% {
    stroke-dasharray: 0 1500;
  }

  100% {
    stroke-dasharray: 1500 1500;
  }
}

.itemMenu {
  position: relative;
  cursor: pointer;
}

.itemMenu:before {
  content: "";
  position: absolute;
  top: 100%;
  width: 0%;
  left: 5%;
  height: 2px;
  background-color: #9d7c00;
  transition: all 0.25s ease-in-out;
}

.itemMenu.active::before {
  width: 90%;
}
.itemMenu.active:hover::before {
  width: 0%;
}

.word {
  overflow: hidden;
  padding: 0px 0 3px;
}

.char {
  opacity: 0;
  /* transform: translateY(50px); */
}

[data-aos="reveal-image"] {
  clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%, 0% 100%);
  transition-property: clip-path;
}

[data-aos="reveal-image"].aos-animate {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%);
}

[data-aos="reveal-image-up"] {
  clip-path: polygon(0% 100%, 100% 100%, 100% 100%, 0% 100%, 0% 100%);
  transition-property: clip-path;
}

[data-aos="reveal-image-up"].aos-animate {
  clip-path: polygon(0% 100%, 100% 100%, 100% 0%, 0% 0%, 0% 100%);
}

.contactBtn {
  display: flex;
  text-transform: uppercase;
  justify-content: center;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: #fff;
  font-size: 22px;
  margin: 30px auto 0;
  font-weight: 600;
  width: fit-content;
  position: relative;
  padding: 10px 10px 10px 20px;
  transition: opacity 1.5s ease-in-out, transform 1.5s ease-in-out, color 0.25s ease-in-out !important;
}

.contactBtn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: rgb(250, 185, 18);
  background: linear-gradient(
    90deg,
    rgba(250, 185, 18, 1) 0%,
    rgba(252, 211, 106, 1) 33%,
    rgba(242, 188, 50, 1) 66%,
    rgba(197, 136, 30, 1) 100%
  );
  transition: all 0.25s ease-in-out;
  z-index: -1;
}
.contactBtn:hover::before {
  opacity: 1;
  width: 100%;
}
.contactBtn:hover {
  color: #0a142b;
}

.contactBtn span {
  width: 25px;
  height: 25px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/flecha-next-1.png);
  transition: all 0.25s ease-in-out;
}

.contactBtn:hover span{
  mix-blend-mode: difference;
}

.panelInner.noHeight {
  height: auto;
  min-height: initial;
  max-width: initial;
  width: initial;
}


.model {
  width: 75%;
  aspect-ratio: 16/9;
  position: relative;
}

.model:before {
  content: "";
  position: absolute;
  top: -4px;
  left: -2px;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  border: 10px solid #0b142b;
  border-left: 0px solid #0b142b;
  pointer-events: none;
}

#worldMap {
  width: 100%;
  height: 100%;
}

[data-splitting] {
  opacity: 0;
}
[data-splitting].splitting {
  opacity: 1;
}

/* Utilities */

.siteSection {
  width: 100%;
  position: relative;
  overflow: hidden;
  padding: 80px 0px;
}

.siteSection:has(+ .reduceTopSpace) {
  padding-bottom: 0;
}

.clearBg {
  background: #0a4678;
  background: linear-gradient(45deg, #02655e4d 0%, #0a46784d 100%);
}

.wrapper {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
}

.narrowerWrapper {
  width: 80%;
  max-width: 1000px;
}

.flex {
  display: flex;
  flex-wrap: wrap;
}

.justify-start {
  justify-content: flex-start;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: flex-end;
}
.justify-between {
  justify-content: space-between;
}

.row-reverse {
  flex-direction: row-reverse;
}

.align-start {
  align-items: flex-start;
}
.align-center {
  align-items: center;
}
.align-end {
  align-items: flex-end;
}
.align-stretch {
  align-items: stretch;
}

.text-white {
  color: #fff;
}

.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}

.uppercase {
  text-transform: uppercase;
}

.subtitleSite {
  font-size: 32px;
  position: relative;
  width: fit-content;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 24px;
}

.withLine:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 2px;
  background: rgb(250, 185, 18);
  background: linear-gradient(
    90deg,
    rgba(250, 185, 18, 1) 0%,
    rgba(252, 211, 106, 1) 33%,
    rgba(242, 188, 50, 1) 66%,
    rgba(197, 136, 30, 1) 100%
  );
}

.bgGradient-1 {
  background: rgb(3, 55, 72);
  background: linear-gradient(45deg, #02655e4d 0%, #0a46784d 100%);
}
.bgGradient-1-darker {
  background: rgb(3, 55, 72);
  background: linear-gradient(
    45deg,
    #033748cc 0%,
    #1a3b39cc 50%,
    #0a142dcc 100%
  );
}

.siteParagraph {
  font-size: 22px;
  font-weight: 300;
  text-align: left;
  line-height: 1;
}

.font-bold {
  font-weight: 600;
}

.bg-cv {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.bg-ct {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

.mx-auto {
  margin: 0 auto;
}

.mb-4 {
  margin-bottom: 1rem;
}
.mb-6 {
  margin-bottom: 1.25rem;
}

.rectVertical {
  aspect-ratio: 3/4;
}

.square {
  aspect-ratio: 1/1;
}

/* ____________________ */

.textImageWrapper {
  gap: 65px;
}

.imgGrowthText .textImageWrapper {
  align-items: stretch;
}

.textSide {
  width: calc(50% - 32.5px);
}

.imgGrowthText .textSide {
  align-self: center;
}

.textSide h2,
.wysiwygContainer h2,
.wysiwygContainer h3 {
  font-size: 32px;
  position: relative;
  font-weight: 600;
  margin-bottom: 24px;
  text-transform: uppercase;
  line-height: 1;
}

.wysiwygContainer a {
  color: #fff;
}

.wysiwygContainer ol li b {
  font-weight: 600;
  font-size: 24px;
  margin-bottom: 1.25rem;
  display: block;
}

.wysiwygContainer.subtitleGold h2 {
  background: rgb(250, 185, 18);
  background: linear-gradient(
    90deg,
    rgba(250, 185, 18, 1) 0%,
    rgba(252, 211, 106, 1) 33%,
    rgba(242, 188, 50, 1) 66%,
    rgba(197, 136, 30, 1) 100%
  );
  color: #0a142d;
  padding: 6px 1rem 0;
  width: fit-content;
}

.wysiwygContainer.subtitleGold h2 .word {
  padding: 2px 0;
}

.wysiwygContainer.subtitleGold h2:before {
  display: none;
}

.textSide h2:before,
.wysiwygContainer.underlineSubtitles h2:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 2px;
  background: rgb(250, 185, 18);
  background: linear-gradient(
    90deg,
    rgba(250, 185, 18, 1) 0%,
    rgba(252, 211, 106, 1) 33%,
    rgba(242, 188, 50, 1) 66%,
    rgba(197, 136, 30, 1) 100%
  );
}

.wysiwygContainer.dropdowns h3 {
  font-size: 22px;
  position: relative;
  width: 100%;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1;
  padding: 5px 30px 5px 0;
  cursor: pointer;
  margin-bottom: 0;
  transition: all 0.25s ease-in-out;
}

.wysiwygContainer h4 {
  font-size: 25px;
  width: 100%;
  margin-bottom: 1.25rem;
}
.wysiwygContainer h5 {
  font-size: 22px;
  width: 100%;
  margin-bottom: 1.25rem;
}
.wysiwygContainer h6 {
  font-size: 20px;
  width: 100%;
  margin-bottom: 1.25rem;
}

.wysiwygContainer h3.active {
  background: rgb(250, 185, 18);
  background: linear-gradient(
    90deg,
    rgba(250, 185, 18, 1) 0%,
    rgba(252, 211, 106, 1) 33%,
    rgba(242, 188, 50, 1) 66%,
    rgba(197, 136, 30, 1) 100%
  );
  color: #0a142d;
  padding: 9px 30px 5px 10px;
  margin-top: -10px;
}

.wysiwygContainer h3 .word {
  padding: 2px 0;
}

.wysiwygContainer h3:before {
  content: "";
  position: absolute;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  background-image: url(../images/plus.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  transition: all 0.25s linear;
}

.wysiwygContainer.legalWysiwygContainer h3:before {
  display: none;
}

.legalWysiwygContainer.wysiwygContainer.dropdowns ul:before,
.legalWysiwygContainer.wysiwygContainer ul:before {
  display: none;
}

.wysiwygContainer h3.active:before {
  background-image: url(../images/minus.svg);
}

.wysiwygContainer ul {
  position: relative;
  list-style-type: disc;
  width: 100%;
  overflow: hidden;
  transition: all 0.5s ease-in-out;
  interpolate-size: allow-keywords;
  padding: 5px 30px;
  margin-bottom: 10px;
}

.wysiwygContainer.dropdowns ul {
  height: 0px;
}

.wysiwygContainer ul.active {
  height: auto;
  padding: 10px 40px 20px;
}

.wysiwygContainer.dropdowns ul:before {
  content: "";
  position: absolute;
  bottom: 0%;
  left: 0;
  width: 100%;
  height: 2px;
  background: rgb(250, 185, 18);
  background: linear-gradient(
    90deg,
    rgba(250, 185, 18, 1) 0%,
    rgba(252, 211, 106, 1) 33%,
    rgba(242, 188, 50, 1) 66%,
    rgba(197, 136, 30, 1) 100%
  );
}

.wysiwygContainer ul li {
  width: 100%;
  font-size: 22px;
  font-weight: 300;
  margin-bottom: 20px;
}

.wysiwygContainer ul li:last-of-type {
  margin-bottom: 0;
}

.textSide p,
.wysiwygContainer p {
  font-size: 22px;
  font-weight: 300;
  text-align: left;
  line-height: 1;
  margin-bottom: 1.25rem;
}

.wysiwygContainer p:last-of-type {
  margin-bottom: 0;
}

.legalWysiwygContainer p:last-of-type,
.legalWysiwygContainer ul {
  margin-bottom: 1.25rem;
}

.smallParagraphBackdrop p {
  text-align: center;
  font-size: 35px;
}

.smallParagraphBackdrop h2 {
  font-size: 40px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.titleTextBlock.wysiwygContainer h2 {
  text-align: center;
}
.titleTextBlock.wysiwygContainer p {
  text-align: center;
  width: 85%;
  margin: 0 auto 1.25rem;
  font-size: 26px;
}

.titleTextBlock.wysiwygContainer p:last-of-type {
  margin-bottom: 0;
}

.wysiwygContainer strong,
.wysiwygContainer b {
  font-weight: 600;
  display: inline-block;
}

.legalWysiwygContainer p {
  line-height: 1.2;
}
.legalWysiwygContainer span {
  font-size: 1.25rem;
}

.imgSide {
  width: calc(50% - 32.5px);
}

.moreText .textSide {
  width: calc(50% - 32.5px);
}
.moreText .imgSide {
  width: calc(45% - 32.5px);
}
.moreImg .imgSide {
  width: calc(55% - 32.5px);
}
.moreImg .textSide {
  width: calc(45% - 32.5px);
  align-self: center;
}

.halfScreenImage .imgSide {
  width: calc(calc(50% - 32.5px) + calc(calc(100vw - 1404px) / 2));
  position: relative;
  margin-right: min(calc(calc(calc(100vw - 1404px) / 2) * -1), -5vw);
}
.halfScreenImage .row-reverse .imgSide {
  margin-left: min(calc(calc(calc(100vw - 1404px) / 2) * -1), -5vw);
  margin-right: 0;
}

.visionSection {
  padding: 100px 0;
}

.innovationsWrapper {
  padding: 60px 30px;
}

.innovationSubtitle {
  margin-bottom: 35px;
}

.wrapperColsInnovations {
  gap: 30px;
}

.halfBlock {
  width: calc(50% - 15px);
}

.formWrapper {
  background-color: #033748cc;
  background: linear-gradient(
    45deg,
    #033748cc 0%,
    #1a3b39cc 50%,
    #0a142dcc 100%
  );
  padding: 50px 40px;
  gap: 30px;
}

.contactForm {
  width: 100%;
}

.labelContactForm {
  display: block;
  width: 100%;
  margin-bottom: 25px;
}

.textLabelContactForm {
  margin-bottom: 10px;
  font-weight: 600;
}

.inputContactForm {
  background-color: transparent;
  height: 50px;
  padding: 10px 20px;
  width: 100%;
  border: 1px solid #fff;
  color: #fff;
  font-size: 16px;
}

.inputContactForm:focus {
  outline: none;
}

.textareaContactForm {
  width: 100%;
  aspect-ratio: 16/9;
  max-height: 300px;
  padding: 10px 20px;
  background: transparent;
  border: 1px solid #fff;
  color: #fff;
}

.textareaContactForm:focus {
  outline: none;
}

.textareaContactForm:disabled,
.inputContactForm:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.submitContactBtn {
  font-size: 24px;
  cursor: pointer;
  gap: 10px;
  display: block;
  margin: 0 auto;
  width: fit-content;
  padding: 5px 10px;
  background: transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: 600;
}

.submitContactBtn span {
  width: 20px;
  height: 20px;
  background-image: url(../images/arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  display: block;
}

.wrapperContactCars {
  gap: 25px;
}

.wrapperContactCars .noteItem {
  width: calc(33.333% - 16.6666666px);
}

.wrapperContactCars .noteContent {
  width: 100%;
  padding: 15px 20px;
  background: linear-gradient(
    252.09deg,
    #0a142d 1.04%,
    #1a3b39 58.42%,
    #033748 115.8%
  );
}

.wrapperContactCars h2 {
  font-size: 22px;
}

.noteContent p {
  font-size: 18px;
}

.wrapperContactCars .noteContent p {
  background: none;
  padding: 0;
  margin-bottom: 15px;
  display: block;
  min-height: initial;
}

.wrapperContactCars .noteContent p:last-of-type {
  margin-bottom: 0;
}

.noteContent .font-bold {
  font-weight: 600;
}

.noteContent a {
  display: block;
  color: #fff;
  text-decoration: none;
  font-weight: 300;
}

.h-full {
  min-height: 100vh;
}

.loginSection .formWrapper {
  max-height: 800px;
  padding: 70px 70px;
}

.helpText {
  margin-top: 20px;
  font-size: 18px;
  text-align: center;
}

.helpText a {
  color: #fff;
  text-decoration: none;
}

.textError {
  font-size: 16px;
  color: red;
  display: none;
  font-weight: 600;
}

.error .textError {
  display: block;
}

.splitBlockText.sectionWithSquares {
  padding: 250px 0;
}

.splitBlockTextWrapper {
  gap: 5%;
  flex-wrap: wrap;
  justify-content: center;
}

.splitBlockTextSide {
  width: 40%;
  font-size: 22px;
}

.dualTableImg {
  width: 100px;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center;
  margin-right: 30px;
}

.dualTable .wysiwygContainer {
  width: calc(100% - 130px);
}

.opacitySection {
  position: relative;
}

.opacitySection:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #00000055;
}

.cookiesCont {
  position: fixed;
  z-index: 70;
  bottom: 15px;
  background-color: #0b142b;
  padding: 15px 20px;
  max-width: 800px;
  margin: 0 auto;
  width: 80%;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}

.containerCookiesWrapper {
  width: 80%;
  margin: 0 auto;
}

.containerCookiesWrapper a {
  color: #fff;
}

.containerCookiesWrapper .siteParagraph {
  text-align: center;
  font-size: 17px;
  margin-bottom: 20px;
  line-height: 1.3;
}

strong {
  font-weight: 600;
}

.cookiesBtn {
  font-weight: 700;
  font-size: 18px;
  padding: 12.5px 20px;
  cursor: pointer;
}

.paperplaneDesign {
  margin-top: 20px;
  font-size: 12px;
}

.paperplaneDesign a {
  text-decoration: none;
  color: #fff;
  font-weight: bold;
}

.messageForm {
  display: none;
  font-weight: bold;
}

.success .successMessageForm {
  display: block;
  margin-bottom: 10px;
}
.error .errorMessageForm {
  display: block;
  margin-bottom: 10px;
}

@media only screen and (max-width: 1400px) {
  .halfScreenImage .imgSide {
    width: calc(46% + 10vw);
    margin-right: -10vw;
  }
  .halfScreenImage .row-reverse .imgSide {
    margin-left: -10vw;
    margin-right: 0vw;
  }
}

@media only screen and (height <= 800px) {
  .loginSection .formWrapper {
    max-height: initial;
  }
}

@media only screen and (max-width: 1024px) {
  .smallParagraphBackdrop h2 {
    font-size: 36px;
  }
  .splitBlockText.sectionWithSquares {
    padding: 150px 0;
  }

  .splitBlockTextSide {
    width: 47.5%;
  }
  .wrapperContactCars .noteItem {
    width: calc(50% - 25px);
  }
  .model {
    width: 60%;
    aspect-ratio: 1 / 1;
    order: 1;
  }

  .wrapper {
    width: 90%;
  }

  .textImageWrapper {
    gap: 35px;
  }

  .loginSection .formWrapper {
    padding: 50px;
  }

  body {
    padding-top: 70px;
  }
  .topNavBarContainer {
    height: 70px;
  }
  .burgerMenuDropdown {
    position: fixed;
    top: 70px;
    height: 0px;
    width: 100%;
    z-index: 75;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    overflow: hidden;
    padding: 0 10px;
    transition: all 0.5s ease-in-out;
  }

  .burgerMenuDropdown.open {
    height: calc(100vh - 70px);
    padding: 10px;
  }
  .itemMenuLogin {
    display: none;
  }
  .itemMenuLogin.mobile {
    display: block;
    width: fit-content;
    margin: 75px auto 0;
  }

  .innerBurgerMenuDropDown {
    max-height: 100%;
    overflow-y: auto;
    width: 100%;
    text-align: center;
  }

  .subItemMenuBurger,
  .subItemMenuBurgerContainer {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
  }

  .yellowMenuLine {
    height: 1px;
    opacity: 0.3;
  }

  .dropdownContent a {
    text-align: center;
    padding: 5px 0;
  }
}

@media only screen and (max-width: 768px) {
  .wysiwygContainer.dropdowns h3 {
    font-size: 18px;
  }

  .cookiesCont {
    width: 100%;
    left: 0;
    transform: none;
    bottom: 0;
  }

  .cookiesBtn {
    padding: 10px 20px;
  }

  .containerCookiesWrapper {
    width: 100%;
  }

  .smallParagraphBackdrop h2 {
    font-size: 32px;
  }
  .loginSection .formWrapper {
    padding: 30px;
  }

  .splitBlockText.sectionWithSquares {
    padding: 60px 0;
  }

  .splitBlockTextWrapper {
    gap: 0;
    justify-content: flex-start;
  }

  .splitBlockTextSide {
    width: 100%;
  }

  .wrapperContactCars h2 {
    font-size: 20px;
  }

  .noteContent p {
    font-size: 16px;
  }

  .wysiwygContainer h3,
  .wysiwygContainer ul li {
    font-size: 18px;
  }

  .wrapperContactCars .noteItem {
    width: 100%;
  }

  .model {
    width: 100%;
  }

  .sitePreloader svg {
    z-index: 1;
    transform: scale(1.2);
  }

  .sitePreloader svg {
    width: 340px;
    height: 120px;
  }

  .textImageWrapper {
    gap: 20px;
  }

  .textImageWrapper.align-stretch {
    align-items: start;
  }

  .textSide {
    width: 100%;
  }
  .moreText .textSide {
    width: 100%;
  }
  .moreImg .textSide {
    width: 100%;
  }

  .halfScreenImage .imgSide {
    margin-right: 0;
    margin-left: 0;
  }

  .imgSide,
  .halfScreenImage .imgSide {
    width: 100%;
    order: 1;
  }
  .moreText .imgSide,
  .halfScreenImage .imgSide {
    width: 100%;
  }
  .moreImg .imgSide,
  .halfScreenImage .imgSide {
    width: 100%;
    min-height: auto;
  }

  .rectVertical {
    aspect-ratio: 1/1;
  }

  .visionSection,
  .siteSection {
    padding: 60px 0;
  }

  .textImageWrapper .imgSide {
    aspect-ratio: 1/1;
  }

  .halfBlock {
    width: 100%;
  }

  .wrapperColsInnovations {
    gap: 0px;
  }

  .titleTextBlock.wysiwygContainer p {
    width: 100%;
    font-size: 22px;
  }

  .wysiwygContainer p {
    font-size: 18px;
  }

  .wysiwygContainer h2 {
    font-size: 26px;
  }
}
