@font-face {
  font-family: "Dosis Med";
  src: url(./font/Dosis-Medium.otf);
}
@font-face {
  font-family: "Dosis Bold";
  src: url(./font/Dosis-Bold.otf);
}

@font-face {
  font-family: "Reg";
  src: url(./font/Dosis-Regular.otf);
}

@font-face {
  font-family: "Sem";
  src: url(./font/Dosis-SemiBold.otf);
}
@font-face {
  font-family: "Encode";
  src: url(./font/static/EncodeSans-SemiBold.ttf);
}

body,
p {
  margin: 0;
  box-sizing: border-box;
}
button {
  all: unset;
}
/* Header */

.encabezado {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 6.375rem;
  background: #ffffff 0% 0% no-repeat;
  box-shadow: 0rem 0.1875rem 0.375rem #00000029;
  opacity: 1;
  gap: 2rem;
  z-index: 1;
  box-sizing: border-box;
}

.logo {
  margin-left: 5.1875rem;
  width: 13em;
  height: 5.7em;
  opacity: 1;
}

.info {
  display: flex;
  justify-content: space-evenly;
  height: 3.5rem;
  gap: 2rem;
  margin-right: 2rem;
}

.cont-caja {
  display: flex;
  height: 3.5rem;
  overflow: hidden;
  gap: 0.625rem;
}

.menu {
  width: 2.6875rem;
  height: 1.75rem;
  object-fit: cover;
  align-self: center;
}
a:link,
a:visited {
  text-decoration: none;
}
.buttons_home {
  text-decoration: none;
  font: normal normal bold 1.0625rem/1.3125rem "Dosis Bold";
  letter-spacing: 0px;
  color: #666666;
  display: flex;
  justify-content: center;
  align-items: center;
  left: 98.8125rem;
  width: 7.625rem;
  height: 3.1875rem;
  background: #ffffff 0% 0% no-repeat padding-box;
  border: 0.125rem solid #6c757d;
  border-radius: 1.625rem;
  opacity: 1;
  white-space: nowrap;
}
.contact {
  width: auto;
  margin-top: 0rem;
  display: flex;
  justify-content: center;
  gap: 2rem;
  align-items: center;
}
.part1 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.contact_tel {
  display: flex;
  justify-content: space-between;
  gap: 0.625rem;
}
.contact_tel img {
  width: 1.8125rem;
  height: 1.8125rem;
}

.days {
  display: flex;
  height: auto;
  margin: 0%;
  font: normal normal bold 1.3rem/1.25rem "Dosis Med";
  color: #28373b;
  text-align: left;
  margin-left: 0;
  line-height: 2rem;
  white-space: nowrap;
}

.number {
  padding: 0%;
  margin: 0rem;
  width: 10.625rem;
  height: 2rem;
  text-align: left;
  font: normal normal 500 1.5625rem/2rem "Dosis Med";
  letter-spacing: 0rem;
  color: #256a8f;
  opacity: 1;
  white-space: nowrap;
}

/* Icono con animacion fija  */
.icon_flot {
  position: fixed;
  z-index: 12;
  top: 0.875rem;
  left: 4.5rem;
  width: 5.5rem;
  height: 5.5rem;
  opacity: 0;
  transition: opacity 0.1s ease-in-out;
}

.icon_flot.visible {
  opacity: 1;
}

/* Index Formulario */

.container_grid {
  min-height: 100dvh;
  display: grid;
  grid-template-rows: auto auto 1fr auto auto;
}
.center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.column {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.space_between {
  display: flex;
  justify-content: space-between;
}
.align_self {
  align-self: center;
}

.content_form {
  width: 80%;
}
.title_form {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 2.75rem;
}
.title {
  font: normal normal normal 2rem/2.5rem "Reg";
  letter-spacing: 0px;
  color: #1080af;
  white-space: nowrap;
  margin: 1rem 0;
}

.title_first {
  font: normal normal normal 3.75rem/4.75rem "Reg";
  letter-spacing: 0px;
  color: #1080af;
  opacity: 1;
  margin: 0;
}

.title_sub_form {
  font: normal normal bold 2.1875rem/2.75rem "Dosis Bold";
  letter-spacing: 0px;
  color: #e4373b;
  opacity: 1;
  white-space: nowrap;
}
.title_seccion {
  width: 100%;
}

.date_title {
  font: normal normal 600 1.7rem/2rem "Sem";
  letter-spacing: 0.0938rem;
  color: #666666;
  opacity: 1;
  margin-bottom: 1rem;
}
.date_adv {
  margin-top: 0.1rem;
  font: normal normal 600 1.25rem/1.625rem "Sem";
  letter-spacing: 0.075rem;
  color: #e4373b;
  opacity: 1;
}
.mar_top {
  margin-top: 1.375rem;
}
.text_bold {
  font: normal normal bold 1.875rem/2.375rem "Dosis Bold";
  letter-spacing: 0px;
}

.text_reg {
  font: normal normal bold 1.875rem/2.375rem "Reg";
  color: #666666;
  letter-spacing: 0px;
  margin-right: 0.4rem;
}

.img_barra {
  margin-top: 2rem;
  margin-bottom: 2rem;
  height: 1.5625rem;
  object-fit: contain;
  width: 100%;
}
.plan_price {
  width: 68%;

  opacity: 1;
}

.checks_vehiculo {
  flex-direction: column-reverse;
  gap: 1rem;
}

.grid_moto {
  grid-column: span 2;
}
.question {
  font: normal normal normal 1.5625rem / 2rem "Reg";
  letter-spacing: 0px;
  color: #666666;
  opacity: 1;
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.hr {
  width: 100%;
  margin-top: 4.875rem;
  margin-bottom: 2.4375rem;
}

.aclaracion {
  font: normal normal 600 1.25rem/1.625rem "Sem";
  letter-spacing: 0.075rem;
  color: #e4373b;
}

/* Form */
.containers_form {
  justify-content: center;
}
input {
  outline: none;
}

input:focus {
  border: none;
  background-color: initial;
}
.inputs_form {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: center;
  width: 100%;
  gap: 1rem;

  margin-top: 2.3125rem;
}

.form_inputs_select {
  place-items: center;
}
.input {
  justify-content: center;
}
.input label {
  font: normal normal normal 1.5625rem/2rem "Reg";
  letter-spacing: 0px;
  color: #666666;
  margin-left: 1rem;
}
.label_acre {
  color: #050505 !important;
}

.label-error {
  display: flex;
}

.label-error p {
  margin-top: 0;
  text-align: end;
  padding: 0 2rem;
}

.input input {
  width: 100%;
  height: 3.5625rem;
  font: normal normal normal 1.5625rem/2rem "Reg";
  color: #666666;
  border: 1px solid #206990;
  border-radius: 10px;
  box-sizing: border-box;
  margin-top: 0.5rem;
  padding-left: 1rem;
}

.input_span {
  width: 98%;
  height: 1.1875rem;
  font: normal normal normal 0.9375rem/1.1875rem "Reg";
  letter-spacing: 0px;
  color: #666666;
  opacity: 1;
  margin-top: 0.625rem;
  align-self: center;
}

.input_check {
  width: auto;
  display: flex;
  align-items: center;
  margin-right: 2rem;
}
.margin_top_span {
  margin-top: 7rem;
}
.input_check p {
  font: normal normal normal 1.5625rem/2rem "Reg";
  letter-spacing: 0px;
  color: #666666;
  opacity: 1;
}
.checkbox input[type="checkbox"]:checked {
  color: #1080af;
}
.checkbox {
  width: 2.5rem;
  height: 2.4375rem;
  background: #ffffff 0% 0% no-repeat padding-box;
  border: 1px solid #707070;
  border-radius: 10px;
  margin-right: 1.5rem;
}

.accsesorios_desplegado .checkbox {
  width: 2.5rem;
  height: 2.4375rem;
  background: #ffffff 0% 0% no-repeat padding-box;
  border: 1px solid #707070;
  border-radius: 10px;
  margin-right: 1.5rem;
}

.input_check_relleno {
  opacity: 0;
}

/* -------------------- */
.input_container_center {
  display: flex;

  flex: 1;
  gap: 2rem;
  grid-column: span 2;
}

.input1 {
  min-width: 20%;
}
.ocultar {
  display: none;
}
.visible {
  display: block;
}

.accsesorios_inputs {
  min-width: 33.5rem;

  min-height: 3.5625rem;
  color: #666666;
  border: 1px solid #206990;
  border-radius: 10px;
  box-sizing: border-box;

  box-sizing: border-box;

  background-color: #ffffff;
}

.accsesorios_desplegado {
  display: none;
}
.active {
  display: flex;
  flex-direction: column;
  width: auto;
  height: auto;
  align-self: center;
  margin: 0 4%;
  gap: 1rem;
  padding: 1.5rem 0;
  background-color: #ffffff;
}

.summary_acc {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 0.5rem;
}

.title_acc {
  all: unset;
  font: normal normal normal 1.5625rem/2rem "Reg";
  letter-spacing: 0px;
  color: #666666;
  margin-left: 1rem;

  width: 100%;
}
.icon_acc {
  width: 1.5rem;
  height: 1.5rem;
  position: relative;
  right: 2.625rem;

  transition: transform 0.3s ease;
  font: normal normal normal 1.5625rem/2rem "Reg";
}

.icon_acc_rotate {
  transform: rotate(180deg);
}

.accsesorios_desplegado .width_acc {
  width: 95%;
}

.relative {
  position: relative;
}
.absolute {
  position: absolute;
  height: auto;
  z-index: 999999999;
  width: 40rem;
}

.acc_p {
  margin-left: 1rem;
  position: relative;

  letter-spacing: 0px;

  opacity: 1;
  margin-top: 4rem;
}

.inputs_flex {
  display: flex;
  gap: 1rem;
}

.select_bank {
  width: 33.5rem;
  height: 3.5625rem;
  border: 1px solid #206990;
  border-radius: 10px;
  box-sizing: border-box;
  margin-top: 0.5rem;
}
.input_file_container {
  height: auto;
  position: relative;
  width: 70%;
}

.input_img_cards {
  gap: 1rem;
  display: flex;
  align-self: center;
  flex-wrap: wrap;
}
.gap_img {
  gap: 1rem;
}
.card_credit {
  position: relative;
  z-index: 3333;
  width: 4.8125rem;
  height: 3.0625rem;
  object-fit: contain;
}

.input_img {
  display: flex;
  justify-content: space-between;
  width: 33.5rem;
  height: auto;
  margin-right: 3rem;
}

.input_img img {
  max-width: 12.8125rem;
  height: 5.6875rem;
  object-fit: contain;
  margin-bottom: 1rem;
  margin-right: 2rem;
  border-radius: 1rem;
}

.input_img .input_img_acc {
  width: 9.8125rem;
  height: 4.6875rem;
  object-fit: contain;
  margin-bottom: 1rem;
}

.img_file_principal {
  align-self: flex-end;
  width: 12.8125rem;
  height: 8.6875rem;
  object-fit: contain;
}
.input_container_center_img {
  display: flex;
  justify-content: center;
  flex: 1;
  gap: 1rem;
  grid-column: span 2;
}
.label_img {
  font: normal normal normal 1.5625rem/2rem "Reg";
  letter-spacing: 0px;
  color: #666666;
  margin-left: 1rem;
  margin-bottom: 1rem;
  align-self: flex-end;
}

input[type="file"] {
  position: absolute;
  width: 100%;
  top: 0;
  right: 0;
  opacity: 0;
  font-size: 20px;
  cursor: pointer;
}

.file-button {
  width: 12.125rem;
  height: 2.125rem;
  font: normal normal bold 1.25rem/1.625rem "Dosis Bold";
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 1;
  background: #206990 0% 0% no-repeat padding-box;
  opacity: 1;
  white-space: nowrap;
}
.file-name {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
  font: normal normal normal 1.25rem/1.625rem "Reg";
  letter-spacing: 0px;
  color: #d1d1d1;
  opacity: 1;
  white-space: nowrap;
  overflow: hidden;
  text-align: left;
}
.x {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  right: 0;
  width: 2.375rem;
  height: 2.125rem;
  background: #206990 0% 0% no-repeat padding-box;
  opacity: 1;
  cursor: pointer;
  position: relative;
  z-index: 555555;
}
.x img {
  width: 1.4rem;
  height: 1.4rem;
  pointer-events: none;
}

.button_form {
  align-self: center;
  display: none;
  justify-content: center;
  margin-top: 5rem;
  margin-bottom: 1rem;
  width: 33.5rem;
  height: 4.375rem;
  background: #1080af 0% 0% no-repeat padding-box;
  border-radius: 47px;
  opacity: 1;
  text-align: center;
  font: normal normal bold 1.875rem/1.75rem "Dosis Bold";
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 1;
}
.flex_end {
  display: flex;
  flex-direction: column;
  justify-content: end;
}

.campo_obligatorio {
  margin-top: 0.5rem;
  width: 100%;
  text-align: center;
  font: normal normal normal 1.25rem / 1.625rem "Reg";
  color: brown;
  opacity: 0;
}

.font_min {
  font: normal normal normal 0.9375rem/1.1875rem "Reg";
}
.input_file_gnc {
  display: none;
}

.input_file_llantas {
  display: none;
}

.input_file_neumaticos {
  display: none;
}

.flex .form_none {
  display: grid;
}
.flex {
  display: flex;
}
.container_0km {
  display: none;
}
.container_cedula {
  display: flex;
}

/* css agregado  */

.container_visible {
  flex-direction: column;
  display: flex;
  margin: 3rem 0px 0px;
  justify-content: center;
  width: 100%;
  align-items: center;
}
.capture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.paso_1 {
  font: normal normal bold 2.5rem/3rem "Reg";
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 1;
  margin: 0 1rem;
  cursor: pointer;
}

.custom-file-input_movil {
  position: relative;
  overflow: hidden;
  opacity: 1;
  display: flex;
  justify-content: space-between;
  padding: 1rem;
  background-color: #1080af;
  border-radius: 3rem;
  padding: 1rem;
  cursor: pointer;
}

.container_fotos {
  margin-top: 4rem;
  display: flex;
  justify-content: center;
}
.label_img_fotos {
  font: normal normal normal 1.9625rem / 2.5rem "Reg";
  letter-spacing: 0px;
  color: #000000;
  text-align: left;
  white-space: nowrap;
}

.progreso {
  border-radius: 999999rem;
  padding: 0.5rem 1rem;
  color: hsl(234, 47%, 46%);
  font: normal normal normal 2.5rem / 3rem "Dosis Bold";
  letter-spacing: 0px;

  text-align: center;
  white-space: nowrap;
}

.secc_title {
  display: flex;
  align-items: center;
  width: 85%;
  justify-content: space-between;
  margin-bottom: -1rem;

  gap: 3rem;
}

.img_ej {
  width: 100%;
  height: 20vh;
  object-fit: contain;
}
.act_camara {
  padding: 0.2rem;
  background-color: #1080af;
  width: 12rem;
  text-align: center;
  border-radius: 1rem;
  font: normal normal bold 1.875rem/2.375rem "Reg";
  color: #ffffff;
  letter-spacing: 0px;
  margin-right: 0.4rem;
}

.inactive_inputs {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  @media only screen and (max-width: 768px) {
    width: 100%;
  }
}
.seccion {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  @media only screen and (max-width: 768px) {
    width: 100%;
  }
}

.title_fin_cot {
  display: none;
  font: normal normal normal 2.8125rem/3.5625rem "Reg";
  letter-spacing: 0.1688rem;
  color: #13a700;
  opacity: 1;
  align-self: center;
}

/* footer */

.robot_info {
  display: block;
  width: 11.375rem;
  position: sticky;
  bottom: 0;
  margin-left: auto;
}

.logo_flotante_cotizador {
  width: auto;
  height: auto;
  position: relative;

  display: flex;
  flex-direction: column;
  align-items: center;
}

.gif1 {
  width: 11.375rem;
  height: 4.375rem;
  object-fit: cover;
}
.gif2 {
  width: 8.625rem;
  height: 8.625rem;
}

footer {
  width: 100%;
  height: auto;
  background: #206990 0% 0% no-repeat padding-box;
  opacity: 1;
  /* margin-bottom: 8rem;  quite esto*/
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}
.footer_cotizacion {
  width: 100%;
  height: auto;
  margin-bottom: 0;
  background: #206990 0% 0% no-repeat padding-box;
  opacity: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}
.container_footer {
  width: 90%;
  height: auto;
  padding-bottom: 1rem;
  box-sizing: border-box;
}

.div1 {
  width: 100%;
  height: 4.75rem;
  display: flex;
  justify-content: space-between;

  margin-top: 1rem;
  margin-bottom: 1.125rem;
}

.contenido1 {
  width: 27.4375rem;
  height: 1.875rem;

  align-self: center;
  display: flex;
  justify-content: space-between;
}

.contenido2 {
  width: 24.875rem;
  height: 4.75rem;
  text-align: right;
  font: normal normal normal 1.375rem/1.75rem "Reg";
  letter-spacing: 0rem;
  color: #ffffff;
  /* agregue esta propiedad */
  padding-top: 0.5rem;
}

.con2_1 {
  font: normal normal 600 1.875rem/2.375rem "Sem";
  letter-spacing: 0rem;
  color: #ffffff;
}

.redes {
  width: 7.8125rem;
  height: 100%;

  display: flex;
  justify-content: space-between;
  align-items: center;
}

.redes img {
  width: 1.875rem;
  height: 100%;
}

.redes p {
  width: 5.25rem;
  height: 1.75rem;
  text-align: right;
  font: normal normal normal 1.375em/1.75em "Reg";
  letter-spacing: 0.125rem;
  color: #ffffff;
  opacity: 1;
}

.div2 {
  width: 100%;
  height: 6.3125rem;

  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.logo_ssn {
  width: 21.75rem;
  height: 6.3125rem;
}

.logo_camara {
  width: 14.375rem;
  height: 4.3125rem;
}

.contenido4 {
  height: 4.3125rem;
  width: 75%;

  display: flex;
  justify-content: space-between;
  align-items: center;
}

.contenido5 {
  height: 1.75rem;
  display: flex;

  white-space: nowrap;
}

.contenido5_movil {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.2rem;
}

.numero_tel {
  width: 9.4375rem;
  height: 1.75rem;
  text-align: right;
  font: normal normal bold 1.375em/1.75em "Dosis Bold";
  letter-spacing: 0rem;
  color: #ffffff;
  margin-right: 0.3125rem;
  white-space: nowrap;
}

.matricula {
  width: 20.75rem;
  height: 1.75rem;
  text-align: right;
  font: normal normal normal 1.375em/1.75em "Reg";
  letter-spacing: 0rem;
  color: #ffffff;
  white-space: nowrap;
}

.letra_chica {
  display: flex;
  height: auto;
  text-align: center;
  font: normal normal 500 1.0625em "Reg";
  letter-spacing: 0rem;
  color: #ffffff;
}
.tuseguro {
  height: 0.625rem;
}
.align_self_button {
  align-self: center;
}

/* footer */

.desktop_none {
  display: none;
}
.desktop_none_block {
  display: none;
}

@media only screen and (max-width: 1855px) {
  html {
    font-size: 10px;
  }
  .input_img .input_img_acc {
    width: 30%;
  }
  .input_img {
    width: 100%;
  }
  .custom-file-input {
    width: 100%;
  }
}

@media only screen and (max-width: 1155px) {
  html {
    font-size: 9px;
  }
  .accsesorios_inputs {
    min-width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  html {
    font-size: 7px;
  }

  .grid_3 {
    grid-row: 3;
  }

  .logo {
    margin-left: 2rem;
  }
  .icon_flot {
    left: 1.3rem;
  }
  .inputs_form {
    grid-template-columns: 1fr;
    display: grid;
  }
  .space_between {
    flex-direction: column;
    align-items: center;
    gap: 2rem;
  }
  .title_movil {
    align-self: center;
  }
  .content_form {
    width: 85%;
  }
  .plan_price {
    width: 92%;
  }
  .movil_none {
    display: none;
  }

  .desktop_none_block {
    display: block;
  }
  .desktop_none {
    display: flex;
  }

  .input_container_center {
    grid-column: span 1;
    justify-content: flex-start;
  }

  .file-button {
    font: normal normal bold 1.05rem / 1.425rem "Dosis Bold";
  }

  /* Footer */
  .contenido5_movil {
    flex-direction: column;
  }
  .contenido1 {
    justify-content: center;
  }

  .contenido4 {
    width: auto;
  }
  .div2 {
    position: relative;
    justify-content: space-evenly;
  }

  .letra_chica {
    margin-top: 1rem;
  }
}
@media only screen and (max-width: 483px) {
  .contenido5_movil {
    flex-direction: column;
  }
  .font {
    font-size: 10px;
  }
  .input_img_cards {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }
}

@media screen and (max-device-width: 375px) {
  html {
    font-size: 5.5008px;
  }
}