@font-face {
  font-family: Gotham;
  src: url('../fonts/gotham_medium-webfont.woff2') format('woff2'),
  url('../fonts/gotham_medium-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: Gotham;
  src: url('../fonts/gothambook-webfont.woff2') format('woff2'),
  url('../fonts/gothambook-webfont.woff') format('woff');
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: Gilroy;
  src: url('../fonts/gilroy-bold-webfont.woff2') format('woff2'),
  url('../fonts/gilroy-bold-webfont.woff') format('woff');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: Gilroy;
  src: url('../fonts/gilroy-regular-webfont.woff2') format('woff2'),
  url('../fonts/gilroy-regular-webfont.woff') format('woff');
  font-weight: 100;
  font-style: normal;
}

:root{
  --dark-blue: #245085;
  --darker-blue: #122843;
  --light-blue: #58BAB0;
  --text-color: #313131;
}



h1, h2, h3, h4, h5, h6 {

  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inherit;
}




.h1, .h2, .h3, .h4, .h5, .h6 {

  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

html {
  scroll-behavior: smooth;
}

/* FLEXBOX CALCULADORA PARA FOOTER SIEMPRE ABAJO */

body{ min-height: 100vh; margin:0;}

header{ min-height:50px;}
footer{ min-height:50px;}

body{ display:flex; flex-direction:column; }
.calculadoraSection{ flex:1; }

/* FIN FLEXBOX CALCULADORA PARA FOOTER SIEMPRE ABAJO */

body {
  font-family: 'Gilroy';
  overflow-x: hidden;
}

.hidden {
  display: none;
}

a {
	color:auto;
	text-decoration: none;
}

ul {
  list-style: none;
  padding: 0;
}

.hide-mobile {
  display: block;
}

.banner-central .promo .p1 strong span.hide-mobile {
  display: inline-block;
}

.hide-desktop {
  display: none;
}



.banner-central .promo .p1 strong span.hide-desktop {
  display: none;
}


/* .special-p {white-space: pre; margin-left: -25px; letter-spacing: -0.2px;} */
/* -------------------------------------------- */


/* ----------------   header  ----------------- */


/* -------------------------------------------- */




.header {

  padding: 0 10px 0 10px;

  background: #fff;

  box-shadow: 0px 2px 3px #00000019;

  position: fixed;

  width: 100%;

  height: 72px;

  top: 0;
  z-index: 4;

}



.header .logo-foto {

  height: 50px;

  margin-top: 10px;

}



.header .logo-foto img {

  height: 100%;

}



.header .phone {

  background-color: #ffffff;

  height: 60px;

  margin-top: 6px;

  width: 250px;

  border-radius: 15px;

  border: solid 5px #7db963;

  color: #7db963;

  display: inline-block;

}



.header .phone a {

  font-size: 16px;

  line-height: 20px;

  display: inline-block;

  margin-left: 12px;

}



.header .phone a:hover {

  text-decoration: none;

}



.header .phone a img {

  padding: 8px;
  margin-left: 7px;
  width: 20%;
  vertical-align: middle;
}



.header .phone a span {

  font-size: 16px;

  line-height: 20px;

  display: inline-block;

  vertical-align: middle;

  margin-left: 12px;

}


.header .phone a span:nth-of-type(1) {
  font-family: 'Gilroy-Bold';
  font-size: 24px;
}

.header .phone a span:nth-of-type(2) {
  font-family: 'Gilroy-Bold';
  font-size: 16px;
}


.header button {

  vertical-align: middle;

}



.header i {

  width: 60px;

  color: #ffffff;

}



.header i .fa-2x {

  font-size: 1.5em;

}



/* -------------------------------------------- */

/* -----------------   NAV  ------------------- */

/* -------------------------------------------- */



.menu nav .container {

  z-index: 3;

  position: relative;

}



.wrapper-menu {

  display: none;

  width: 100%;

  height: 100%;

  position: fixed;

  z-index: 3;

}



.wrapper-menu .container {

  position: relative;

}



nav.menu {

  background-color: #ffffff;

  color: #000000;

  width: 325px;

  top: auto;

  right: 0;

  text-align: right;

  padding-top: 72px;

  z-index: 2;

  position: absolute;

}



.close-menu {

  width: 100%;

  height: 100%;

  background-color: #000;

  opacity: .5;

  z-index: 1;

  position: absolute;

  top: 0;

}



nav .dropdown-item {

  color: #000000;

}



.btn-dropdown {

  width: 100%;

  -webkit-appearance: none;

  background-color: inherit;

  border: none;

  padding: 0;

  margin: 14px 0 0 0;

}



.btn-dropdown::after {

  display: none;

}



nav a {

  color: #ffffff;

}



nav .navbar-nav {

  font-family: 'Gilroy-Bold';

}



nav .navbar-nav li {

  padding: 6px 6px;

  border-bottom: 1px solid #555555;

}



nav .subnavbar-nav {

  font-family: 'Gilroy-Regular';

  font-size: 18px;

}



.nav-item:hover {

  background-color: #999999;

  color: #fff;

}



.dropdown-item:hover {

  background-color: #999999;

  color: #fff;

}



.dropdown-item.active, .dropdown-item:active, .dropdown-item:focus {

  background-color: inherit;

  color: #000000;

}



/* -------------------------------------------- */


/* ------------- BANNER CENTRAL --------------- */


/* -------------------------------------------- */





/* -------------------------------------------- */

/* --------------- FORMULARIO ----------------- */

/* -------------------------------------------- */



form {

  background-color: #fff;
  margin: 75px 0 20px 0;
  padding: 25px 0;
  text-align: center;
  min-height: 345px;
}

form .form .lead .introduce-tu-telefono {

  margin-top: 25px;

  font-size: 16px;
}


.form .lead .introduce-tu-telefono img {
  position: absolute;
  margin-top: 6px;
  margin-left: 10px;
  width: 26px;
}


form .form .lead .introduce-tu-telefono input {

  text-align: center;

  width: 65%;

  border: none;

  height: 40px;

  margin: 0 auto;

  border: 1px dashed #999;
}



form .form .btn-quiero button {

  width: 70%;

  background-color: #7db963;

  border-radius: 20px;

  height: 52px;

  border: 4px solid;

  margin: 23px auto 10px auto;

  color: #fff;

  box-shadow: 6px 7px 4px -2px #999;
}



form .form .conditions {

  color: #fff;

  font-size: 14px;

}



form .form .conditions a {

  color: #fff;

}


.factura {
  text-align: center;
}
.factura p {

  color: #000000;

  font-size: 22px;

  width: 85%;

  margin: 0px auto 0 auto;

}



.factura button {

  width: 70%;

  max-width: 300px;
  background-color: #7db963;

  text-align: left;

  border: none;

  border-radius: 10px;

  height: 50px;

  margin: 23px;

  color: #fff;

  position: relative;

  font-weight: 600;
}



.factura button img {

  padding: 8px;

  margin-right: 10px;

  height: 100%;

  transform: translate(-22px, -22px);
}



.factura button span {

  width: 100%;

  text-align: center;

  border: none;

  border-radius: 10px;

  height: 50px;

  padding: 10px;

  color: #fff;

  position: absolute;

  left: 0;

  top: 0;

}



.fr-line1 {
  font-size: 25px;
  padding: 20px 20px 5px 14px;
  text-align: left;
}

.fr-line1 h2 {
  font-size: 20px;
  color: #262626;
  font-family: Gotham;
  font-weight: 600;
  white-space: nowrap;
}


.fr-line1 p {
  font-size: 16px;
  font-weight: 300;
  margin-top: 10px !important;
  color: #262626;
  font-family: Gilroy;
}
.fr-line3 {
  display: flex;
  justify-content: left;

}
.fr-line4{
  text-align: left;
  color: #414141;
  font-size: 12px;
  margin-top: 12px;
  font-family: Gilroy;
}


.fr2 button {
  width: 40%;
  height: 52px;
  background-color: #58BAB0;
  background: linear-gradient(90deg, #58BAB0, #58BAB0 53%, #245085) var(--x, 0)/ 200%;
  color: #fff;
  font-family: Gilroy;
  border: none;
  border-radius: 25px;
  margin: 23px 23px 10px 0px;
  -moz-transition: background .6s ease-in-out;
  -webkit-transition: background .6s ease-in-out;
  -ms-transition: background .6s ease-in-out;
  -o-transition: background .6s ease-in-out;
  transition: background .6s ease;
}
.fr2 button:hover {
  --x: 100%;
  color:#fff;
}

.fr2 button:active,
.fr2 button:focus,
.fr2 button:focus-visible,
.fr2 button:focus-within {
  outline: none;
  box-shadow: none;
}

/* #drop_file_zone {
  width: 100%;
  height: 100px;
  margin: 0px auto;
  border: 1px dashed #3F3F3F;
  cursor: pointer;
} */
/* #drop_file_zone #drag_upload_file{
  background-image: url(../img/fotofac/upload-icon.svg);
} */


#selectfile {

  display: none;

}



.input-xl {
  width: 100%;
  border: 1px solid #3F3F3F;
  border-radius: 4px;
  height: 45px;
  padding-left: 18px;
  margin-top: 32px;
  color: #3F3F3F;
  text-align: center;
  font-size: 16px;
  font-family: Gilroy;
  font-weight: 300;
}

.input-xl::placeholder{
  color: #A8A8A8;
}

.input-xl:focus-visible {
  outline: none;
}



.succes-form, .fail-form {

  display: block;

  margin: 25% 15%;

  color: #fff;

}



.succes-form i, .fail-form i {

  margin-top: 10%;

}



/* -------------------------------------------- */


/* ----------------- FOOTER ------------------- */


/* -------------------------------------------- */





footer {
  background-color: #245085;
  width: 100%;
  font-size: 14px;
  text-align: center;
}

footer img {
  transform: translateY(-50%);
  top: 50%;
  position: relative;
  height: 34px;
}

footer li {
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  color: #fff;
}
footer li a:hover {
  text-decoration: none;
  text-decoration:  underline;
  color: #fff;
}
footer ul {
  margin: 3% auto;
}
footer li a {
  color: #fff;
  font-family: Gilroy;
}


/* -------------------------------------------- */


/* ----------------- MODAL -------------------- */


/* -------------------------------------------- */




#enviar-factura .modal-content {

    background-color: inherit;

    border: none;

}




.modal-dialog {


    max-width: 800px;


}

.modal-backdrop {


  z-index: 0;


}





.modal-dialog {


  margin-top: 8%;


}




.modal-dialog form {

  margin: 0;

  border-radius: 0;

  color: #ffffff;

  position: relative;

}


/* -------------------------------------------- */


/* -------------- ANIMACIONES ----------------- */


/* -------------------------------------------- */





.close-section {


  height: 100%;


  position: absolute;


  width: 100%;


  background-color: #00000099;


}


/********** fotofactura **********/
/*********************************/

#formDataFact {
  width: 84%;
  max-width: 700px;
  margin: 0 auto;
  margin-top: 3%;
  margin-bottom: 3%;
  border-radius: 20px;
  padding: 15px 70px;
  color: var(--dark-blue);
  box-shadow: 5px 5px 8px 0 #999999;
}


.panel-line-001 {
  position: relative;
  text-align: center;
  margin-top: 110px;
  width: 100%;
  padding: 12px;
  font-size: 24px;
}

.panel-line-001 span {
  font-family: 'Gilroy-Bold';
}

.facturassubidas {
  text-align: center;
  background-color: #6f6f6f;
  color: #fff;
  font-size: 24px;
  padding: 20px;
  margin-bottom: 4%;
}

.facturassubidas span {
  font-family: 'Gilroy-Bold';
}


/* ----------- SECTION MAIN ----------- */

.main{
  background: #F6F6F6;
  height: 87.8vh;
  min-height: 54rem;
  padding-top: 6rem;
}
.main p{
  margin: 0;
}

.main #formDataFact{
  background-color: #fff;
  width: 600px;
  max-width: 100%;
  min-height: 436px;
  box-shadow: 0px 3px 15px #00000029;
  border-radius: 42px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 3rem 4rem;
}

.main .succes-form {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 3rem;
  margin: auto;
  text-align: center;
  color: var(--dark-blue);
}

.main .fail-form {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 3rem;
  margin: auto;
  text-align: center;
  color: var(--dark-blue);
}

.main #formDataFact .titleFac{
  margin-bottom: 20px;
}

.main #formDataFact #drop_file_zone .subTitle{
  font-size: 16px;
  margin-bottom: 4px;
}
.main #formDataFact #drop_file_zone .subTitle > span:nth-of-type(2){
  display: none;
}
.main #drop_file_zone #drag_upload_file{
  background-image: url(../img/icon-upload.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12%;
  border: 1px dashed #707070;
  background-color: #FFFFFF;
  height: 6rem;
  width: 100%;
  margin-bottom: 1rem;
  cursor: pointer;
  transition: background-color .2s;
  -o-transition: background-color .2s;
  -moz-transition: background-color .2s;
}
.main #drop_file_zone #drag_upload_file.loading{
  background-image: url(../img/loading.gif);
  border: 1px dashed #707070;
  background-color: #EFF4F5;
  cursor: not-allowed;
  background-size: 65px;
}
.main #drop_file_zone #drag_upload_file.is-dragover{
  background-color: #EFF4F5;
}
.main #formDataFact #drag_upload_file #selectfile {
  display: none;
}
.main #formDataFact .terminos{
  font-size: 12px;
}
.main #formDataFact .terminos input{
  transform: scale(1.2);
  margin-right: 4px;
}
.main #formDataFact .terminos a{
  cursor: pointer;
}
.politica-de-privacidad {
  text-decoration: underline;
  color: #414141;
}
.politica-de-privacidad:hover {
  font-style: none;
  color: #414141;
}
.main #formDataFact .terminos a:hover{
  text-decoration: underline;
}
.main #formDataFact .buttonSend{
  width: max-content;
  background-color: var(--rojo-total);
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 20px;
  padding: 10px 14px;
  line-height: 1;
  margin-top: 12px;
  min-width: 145px;
}
.main #formDataFact .buttonSend:focus,
.main #formDataFact .buttonSend:focus-visible,
.main #formDataFact .buttonSend:focus-within{
  outline: none;
  box-shadow: none;
}
.main .error{
  font-size: 14px;
  color: var(--rojo-total);
  text-align: center;
}

.main .imagenItem{
  display: flex;
  align-items: center;
}
.main .imagenItem img{
  width: 25px;
  margin-right: 5px;
}
.main .imagenItem p{
  white-space: nowrap;
  text-overflow: ellipsis;
  width: fit-content;
  overflow: hidden;
  font-size: 12px;
}
.main .imagenItem i{
  margin-left: 10px;
  cursor: pointer;
  font-size: 16px;
}

.main .errorimg{
  font-size: 14px;
  color: var(--rojo-total);
  text-align: center;
}

.main > .container:first-of-type{
  display: flex;
  justify-content: space-between;
  height: 100%;
  padding-top: 5.5%;
}
.main .infoText .title{
  font-family: Gotham;
  font-weight: 600;
  color: #245085;
  font-size: 42px;
  max-width: 35rem;
  line-height: 1.1;
  margin-top: 1.5rem;
}

.main .infoText .title2{
  font-family: Gilroy;
  color: #245085;
  max-width: 38rem;
  line-height: 1.1;
  font-size: 25px;
  font-weight: 300;
  margin-top: 3rem;
}
.main .subMob{
  display: none;
}
.infoText .manchetaMain{
  height: 140px;
  width: 140px;
  background: transparent linear-gradient(180deg, #58BAB0 0%, #56B6AE 0%, #245085 100%) 0% 0% no-repeat padding-box;
  border-radius: 50%;
  font-family: 'Gilroy';
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  transform: rotate(-26deg) translateX(-12%);
  user-select: none;
  position: absolute;
  margin-top: 35px;
  margin-left: 15px;
}
.infoText .manchetaMain p{
  font-size: 43px;
  line-height: 0.6;
  font-weight: 500;
  margin-top: 7px;
}
.infoText .manchetaMain span{
  font-size: 17px;
  line-height: 1;
  font-weight: 300;
  margin-top: 15px;
}
/* ----------- FIN SECTION MAIN ----------- */

/**************************************************/
/* HORARIO ATENCION FUERA DE HORARIO*/
/**************************************************/

select:hover, select:focus, select:focus-visible, select:focus-within {
  box-shadow: none !important;
  outline: none;
  border-color: #ced4da;
}

.select-css {
  border: 1px solid #ced4da;
  color: #313131;
  font-size: 13px;
  border-radius: 0.25rem;
  height: 30px;
  padding-left: 5px;
  padding: unset;
  -webkit-appearance: auto;
  appearance: auto;
  background-image: none;
}

.select-css:hover, .select-css:active, .select-css:focus{
  border-color: #ced4da;
}

.atencion-llamada {
  display: inline-block;
  margin-top: 5px;
  margin-bottom: 5px;
  display: none;
  text-align: center;
  width: 100%;
}

.llamadme {
  font-size: 13px;
  display: inline-block;
  white-space: nowrap;
  color: #313131;
  font-weight: 400;
  padding-right: 5px;
}

.input-show {
  display: inline-block !important;
  color: #313131;
}

/*********************************/