/* FONTS */
@font-face {
  font-family: "Montserrat Bold";
  src: url("/general/fonts/Montserrat-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Bold Italic";
  src: url("/general/fonts/Montserrat-BoldItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Italic";
  src: url("genearl/fonts/Montserrat-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Light";
  src: url("/general/fonts/Montserrat-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Light Italic";
  src: url("/general/fonts/Montserrat-LightItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Medium";
  src: url("/general/fonts/Montserrat-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Medium Italic";
  src: url("/general/fonts/Montserrat-MediumItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Regular";
  src: url("/general/fonts/Montserrat-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Montserrat Semi Bold";
  src: url("/general/fonts/Montserrat-SemiBold.ttf") format("truetype");
}

@font-face {
  font-family: 'Montserrat', sans-serif;
  src: url('Montserrat-VariableFont_wght.ttf') format('truetype');
  font-weight: 200 900;
}

.strong {
  font-weight: 700;
}
body {
  font-family: "Montserrat", sans-serif;
}
/* HEADER */
.header {
  background: #005073;
  padding: 30px 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.headerLogo {
  display: flex;
  flex-direction: row;
  gap: 30px;
  align-items: center;
}
.headerLogo span {
  font-size: 20px;
  font-weight: 500;
color: #9CADBC;
}
.languageDiv {
  display: flex;
  align-items: center;
  gap: 30px;
  color: white;
}
.languageDiv span {
  font-size:16px;
color: #FFFFFF;
}
.btnsLang {
  display: flex;
  gap: 5px;
  flex: 1 1 auto;
}

.btnLang {
  background-color: #005073;
  color: white;
  padding: 5px;
  border: none;
  cursor: pointer;
  border: 1px solid white;
  border-radius: 8px;
  font-size:13px;
  font-weight: 600;
}

.btnLang:hover {
  background-color: white;
  color: #005073;
}

.btnsLang a {
  text-decoration: none;
}

.btnLangActive {
  background-color: white;
  color: #005073;
}

/* FIN HEADER */

/* FOOTER */

.footer {
  background: #005073;
  padding: 30px 100px;
}

.groupFooter {
  display: flex;
  gap: 25px;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 20px;
}

.legalFooter {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
}

.legalFooter span,
.legalFooter span a {
  color: #dfe8f0;
  font-size: 14px;
}

/* FIN FOOTER */

/* HOME */
.background-palm {
  background-color: white;
  background-image: url("/general/images/palmera.png");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 500px 1100px;
}

.h1-home {
  color: #005073;
  font-size: 37px;
  text-align: center;
  margin-top: 45px;
  font-weight: 500;
}

.operation-data {
  margin-top: 35px;
}

.cont-operation-data {
  background: #dfe8f0;
  padding: 35px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 15px;
  font-size: 15px;
}

.title-container {
  color: #005073;
  text-align: center;
  font-weight: 700;
  font-size: 20px;
}

.cont-operation-data div {
  display: flex;
  gap: 15px;
  width: 100%;
}

.cont-operation-data div span:first-child {
  font-weight: 700;
  text-align: right;
  width: 50%;
}

.cont-operation-data div span:nth-child(2) {
  text-align: left;
  width: 50%;
}
.price {
  margin-top: 65px;
}
.cont-price {
  background: #4981a7;
  border-radius: 25px;
  padding: 35px;
  display: flex;
  justify-content: center;
}

.cont-price div {
  background: #ffffff;
  color: #005073;
  font-weight: 700;
  font-size: 20px;
  padding: 10px 70px;
}

.cont-pay-method {
  background: #4981a7;
  border-radius: 25px;
  display: flex;
  justify-content: center;
}

.cont-pay-method > div {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  padding: 35px;
}

.pay-method {
  margin-top: 65px;
}

.check-pay-method {
  display: flex;
  align-items: center;
  gap: 15px;
}

.check-pay-method label {
  font-size: 20px;
  font-weight: 500;
  color: #ffffff;
}

.customer-data {
  margin-top: 35px;
}

.cont-customer-data {
  background: #dfe8f0;
  display: flex;
  justify-content: center;
  padding: 50px 95px;
  gap: 40px;
}

.customer-data-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.cont-benefits {
  margin-top: 15px;
  background: #dddddd;
  padding: 30px 80px;
  display: flex;
  gap: 55px;
  align-items: center;
  justify-content: center;
}

.cont-benefits-left {
  display: flex;
  align-items: center;
  gap: 20px;
}

.cont-benefits-text {
  display: flex;
  flex-direction: column;
  color: #222526;
}

.cont-benefits-text .text {
  font-weight: 500;
  font-size: 18px;
}

.cont-benefits-text .subtext {
  font-size: 24px;
}
.cont-benefits-text .subtext span:first-child {
  font-weight: 700;
}

.cont-benefits-text .subtext span:nth-child(2) {
  font-style: italic;
}

.cont-ads {
  margin-top: 50px;
  display: flex;
  justify-content: space-between;
  gap: 5px;
  flex-wrap: wrap;
  align-items: center;
}
.cont-ads img {
  z-index: 1;
}
.customer-data-inputs,
.customer-data-inputs:focus {
  border: 1px solid #707070;
  background: transparent;
}

.customer-data-form label {
  font-size: 15px;
  font-weight: 700;
  color: #222526;
}

.input-group.with-icon > img {
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  pointer-events: none;
  position: absolute;
  z-index: 3;
  top: 50%;
}

.input-group.with-icon > img,
.input-group.with-icon.icon-right > img {
  right: 0.7rem;
}

.input-group.with-icon > input,
.input-group.with-icon.icon-right > input {
  padding-right: 1.7rem;
  background: transparent;
  border: 1px solid #707070;
}

.btn-info-div {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.btn-info {
  background: #ffffff;
  border: 1px solid #005073;
  border-radius: 10px;
  color: #005073;
  text-decoration: none;
  padding: 10px 15px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.48px;
}

.btn-info:hover {
  color: white;
  background: #005073;
}

.btn-info:hover img {
  fill: #ffffff;
}

.terms-container {
  margin-top: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.terms-container label {
  font-size: 11px;
  color: #000000;
}

.btn-payment-div {
  display: flex;
  justify-content: center;
  margin: 25px;
}

.btn-payment {
  background: #005073;
  border-radius: 10px;
  padding: 20px 35px;
  color: white;
  border: none;
  cursor: pointer;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0.51px;
  color: #ffffff;
}

.btn-payment:hover {
  background: #222526;
}

.contact-info {
  border: 1px solid #b47554;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 15px;
  font-size: 15px;
  color: #b47554;
  font-weight: 500;
}

.contact-info a {
  color: #b47554;
  font-weight: 700;
}

.background-plane {
  margin-top: -50px;
}

.background-plane img {
  width: 100%;
}

.background-plane > .col-md-12 {
  padding: 0;
}

.bottom-btn {
  background: #dfe8f0;
  border: 1px solid #ffffff;
  border-radius: 3px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.48px;
  color: #005073;
  padding: 10px 15px;
}

.bottom-title {
  font-size: 30px;
  font-weight: 600;
}

.bottom-subtitle {
  font-size: 19px;
  font-weight: 500;
  letter-spacing: 0.76px;
  color: #dfe8f0;
}

.background-bottom img {
  width: 100%;
}

.background-bottom > .col-md-12 {
  padding: 0;
}

.background-bottom {
  position: relative;
}

.cont-background-bottom-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.background-bottom-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 25px;
  align-items: center;
  text-align: center;
  color: white;
}

.h5Small {
  font-size: 21px;
  color: #222526;
}

.h5Bold {
  font-size: 30px;
  font-weight: 700;
  color: #005073;
}

.h5Medium {
  font-weight: 500;
  font-size: 25px;
}

.close {
  font-size: 11px;
  color: #005073;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.close:hover {
  color: #000;
}

.modal-header {
  background: #dfe8f0;
  padding: 37px 20px 37px 77px;
}

.modal-body {
  background: #eff3f7;
  padding: 75px 150px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.modal-body h3 {
  font-weight: 500;
}
.modal-title {
  display: flex;
  flex-direction: column;
}

.payMethodInfoTitle {
  font-size: 18px;
  font-weight: 700;
  color: #005073;
}

.payMethodInfoText {
  margin-left: 15px;
  font-size: 15px;
  color: #222526;
}

.btn-info:hover #Trazado_461 {
  stroke: #fff;
}
/* FIN HOME */

/* PAY STATUS */

.cont-acept-pay {
  background: #e4e4e4;
  border-radius: 10px;
  padding: 50px 115px;
  display: flex;
  gap: 45px;
  margin-top: 55px;
  font-size: 18px;
  font-weight: 500;
  color: #222526;
}

.cont-operation-resume {
  margin-top: 30px;
  margin-bottom: 50px;
}

.cont-operation-resume .title-container {
  text-align: left;
  padding-left: 67px;
}
.operation-resume {
  background: #dfe8f0;
  padding: 37px 67px;
}

.personal-data {
  display: flex;
  flex-direction: column;
  font-weight: 700;
  font-size: 18px;
  color: #222526;
}

.content-operation-resume {
  display: flex;
  flex-direction: column;
  gap: 17px;
}

.content-operation-resume-text {
  display: flex;
  flex-direction: column;
}

.content-operation-resume-text span {
  font-size: 15px;
  color: #222526;
}

.content-operation-resume-text span:first-child {
  font-weight: 700;
}

/*  FIN PAY STATUS */

@media only screen and (max-width: 800px) {
  .background-palm {
    background-image: none;
  }
  /* HEADER */
  .header {
    padding: 20px;
  }

  .headerLogo {
    flex-direction: column;
    align-items: start;
    gap:10px;
  }

  .languageDiv span {
    display: none;
  }

  .btnLang {
    padding: 2px 5px;
  }
  .headerLogo span {
    font-size: 15px;
  }

  /* FIN HEADER */

  /* FOOTER */
  .footer {
    padding: 30px 45px;
  }
  .legalFooter {
    gap: 10px;
  }
  /* FIN FOOTER */

  /* HOME */
  .h1-home {
    font-size: 19px;
  }
  .cont-operation-data {
    padding: 30px 25px;
  }
  .cont-operation-data div {
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
  .check-pay-method label {
    font-size: 16px;
  }
  .cont-operation-data div span:first-child {
    text-align: left;
    width: 100%;
  }

  .cont-operation-data div span:nth-child(2) {
    text-align: left;
    width: 100%;
  }
  .terms-container label {
    font-size: 14px;
  }
  .contact-info {
    font-size: 14px;
  }
  .price {
    margin: 20px 15px;
  }
  .pay-method {
    margin: 20px 15px;
  }
  .terms-container {
    margin-left: 25px;
    margin-right: 25px;
  }
  .cont-customer-data {
    flex-direction: column;
    padding: 50px;
    gap: 20px;
  }
  .cont-benefits {
    margin-top: 15px;
    padding: 30px;
    flex-direction: column;
    gap: 20px;
    align-items: start;
    justify-content: flex-start;
  }

  .cont-benefits-left {
    flex-direction: column;
    align-items: start;
  }

  .cont-ads {
    justify-content: center;
  }
  .background-plane {
  margin-top: 10px;
}

  .cont-background-bottom-text {
    width: 100%;
    padding: 30px;
  }

  .modal-header {
    padding: 25px;
  }

  .modal-body {
    padding: 25px;
    gap: 20px;
  }
  .modal-body h3 {
    font-size: 21px;
  }
  .close span {
    display: none;
  }

  .h5Small {
    font-size: 16px;
    color: #222526;
  }

  .h5Bold {
    font-size: 23px;
    font-weight: 700;
    color: #005073;
  }

  .h5Medium {
    font-weight: 500;
    font-size: 19px;
  }
  /* FIN HOME */

  /* PAY STATUS */
  .cont-acept-pay {
    margin: 15px;
    padding: 30px;
    gap: 10px;
    margin-top: 50px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  .cont-operation-resume .title-container {
    padding-left: 30px;
    text-align: center;
  }
  .operation-resume {
    background: #dfe8f0;
    padding: 30px;
    margin: 15px;
  }

  /* FIN PAY STATUS */
}
