@import url('https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css');

@font-face {
  font-family: 'Gotham Black';
  src: url('fonts/Gotham-Black.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'GothamBook';
  src: url('fonts/GothamBook.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'GothamMedium';
  src: url('fonts/GothamMedium.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

/* CUERPO */
.contenedor-calculadora p, .contenedor-calculadora h1, .contenedor-calculadora h2{
    font-family: 'GothamBook'; 
    font-size: 40px;
}

.contenedor-calculadora h1{
    font-size: 60px!important;
    color: #565454 !important;
}

.contenedor-calculadora h2{
    margin-top: 35px;
    font-size:30px!important;
}

.contenedor-calculadora p{
    font-size:20px;
}

.contenedor-calculadora{
  background: #7D3783;
  background: linear-gradient(45deg,#009EFC 0%, #002B9E 100%, rgba(0, 0, 0, 1) 20%);
  border-radius: 55px;
  color: white;
}

.contenedor-precios{
    color: black;
}

/* Primera columna */
.c-datos{
  margin-left: 20px!important;
  padding: 0px;
}

.c-datos-hijo{
	padding:35px;
}

.c-empresas{
  padding: 20px;
}

.d-grid button .nombre-empresa{
  font-family: 'GothamMedium';
  font-size: 22px;
  font-weight: bold;
}

.d-grid button .incluye{
  font-family: 'GothamBook';
  font-size: 17px;
  text-align: left;
  margin-bottom: 0px;
}

.d-grid button .descripcion{
  font-family: 'GothamBook';
  font-size: 17px;
  text-align: left;
  font-weight: bold;
}

.c-empresas button span{
  font-family: 'GothamBook';
  font-weight: bold;
  display: block;
  font-size: 13px;
}

.c-empresas button:hover .nombre-empresa,
.c-empresas button.active .nombre-empresa {
  color: #00a1ff;
}

.c-empresas button:hover .incluye,
.c-empresas button.active .incluye {
  color: #575771;
}

.c-empresas button:hover .descripcion,
.c-empresas button.active .descripcion {
  color: #00a1ff;
  font-weight: bold;
	
}



/* Segunda columna */
.contenedor-precios h5, .contenedor-precios .c-switch, .contenedor-precios .c-precios, .contenedor-precios .c-total, .c-total-descuento{
    padding: 10px!important;
}

.contenedor-precios > div {
  padding: 4px;
  margin-top: 20px;
}

.contenedor-precios h5{
  font-family: 'GothamMedium';
  font-size: 35px;
}

/* Color base del switch */
#switchPlan.form-check-input {
  width: 3rem;
  height: 1.5rem;
  background-color: #ccc;
  border: 1px solid #aaa;
  transition: background-color 0.3s, border-color 0.3s;
  cursor: pointer;
}

/* El "thumb" (círculo deslizante) */
#switchPlan.form-check-input::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 1.1rem;
  height: 1.1rem;
  background-color: white;
  border-radius: 50%;
  transition: transform 0.3s ease-in-out;
}

/* Cuando el switch está activado */
#switchPlan.form-check-input:checked {
  background-color: #dc1085;
  border-color: #dc1085;
}

/* Desplazar el thumb cuando está activado */
#switchPlan.form-check-input:checked::before {
  transform: translateX(1.4rem);
}

.c-switch{
  font-family: 'GothamBook';
  font-size: 22px;
  color: #1d70ad!important;
}

.c-precios, .c-total, .c-total-descuento{
  font-family: 'GothamBook';
  font-size: 15px!important;
}

.c-precios li, .c-switch label, .c-total {
  color: #067DC4;
}

/* CARACTERISTICAS -> IMPLEMENTACION */
.c-personalizado {
  border-radius: 50px!important;
}

.c-empresas .btn.active {
  background-color: white;
  color: #0d6efd;
  border: 2px solid #0b5ed7;
}

.c-implementacion{
   margin-top: 100px;
}

.c-implementacion .c-titulo h2{
  font-size: 50px!important;
  margin-bottom: -20px;
}

.c-implementacion .c-titulo span{
  font-family: 'Gotham Black';
  display: block; 
  color: #00a1ff;
  font-size: 50px;
  margin-bottom: 50px;
  text-align: center;
}

.c-implementacion .c-descripcion h2, .c-implementacion .c-descripcion{
  font-family: 'GothamMedium';
  color: #00a1ff;
  font-size: 25px!important;
  text-align: center;
  font-weight:600;
}

.c-implementacion .deshijo{
  background: #EFF7F5;
  padding: 30px;
  margin: auto;
  width: 70%;
  border-radius: 40px;
  text-align: center;
}

.c-implementacion .deshijos{
  background: #EBD5E4;
  padding: 33px 33px 52px 33px;
  margin: auto;
  width: 70%; 
  border-radius: 40px;
}

.c-implementacion .c-descripcion p{
  font-family: 'GothamBook';
  font-size: 17px;
}

/* CARACTERISTICAS -> INCLUYE */
.c-incluye1{
  background: #53A98C;
  background: linear-gradient(45deg,rgba(83, 169, 140, 1) 0%, rgba(70, 170, 230, 1) 100%);
  color: white;
  padding: 30px;
  border-radius: 40px;
  width: 90%;
  margin: auto;
}

.c-incluye2{
  background: #772C77;
  background: linear-gradient(45deg,rgba(119, 44, 119, 1) 0%, rgba(226, 70, 126, 1) 100%);  
  color: white;
  padding: 30px;
  border-radius: 40px;
  width: 90%;
  margin: auto;
}

.c-incluye1 .t-principal, .c-incluye2 .t-principal{
  color: white;
  font-family: 'GothamMedium';
  font-size: 25px;
}

.c-incluye1 .titulo{
  font-size: 16px;
  font-family: 'GothamBook';
  font-weight: bold;
  margin-bottom: 0px;
}

.c-incluye1 p{
  font-size: 17px;
  font-family: 'GothamBook';
  margin-left: 15px;
}

.c-incluye1 .des{
  font-size: 17px;
  margin-left: 29px;
  font-family: 'GothamBook';
  margin-bottom: 37px;
}

.c-incluye2 .titulo{
  font-size: 15px;
  font-family: 'GothamBook';
  font-weight: bold;
  margin-bottom: 0px;
}

.c-incluye2 p{
  font-size: 16px;
  font-family: 'GothamBook';
  margin-left: 15px;
}

.c-incluye2 .des{
  font-size: 16px;
  margin-left: 29px;
  font-family: 'GothamBook';
  margin-bottom: 12px;
}

/* Media Queries para tablets (md: 768px a 991.98px) - Mantenida de antes */
@media (min-width: 768px) and (max-width: 991.98px) {
  /* Ajustes generales para contenedor calculadora */
  .contenedor-calculadora {
    border-radius: 25px;
    padding: 2px;
  }
  .contenedor-calculadora p {
    font-size: 16px;
  }
  .contenedor-calculadora h2 {
    font-size: 22px !important;
    margin-top: 20px;
  }

  /* Panel izquierdo */
  .c-datos {
    margin-left: 5px !important;
    padding: 5px !important;
  }
  .c-empresas {
    padding: 10px;
  }
  .d-grid button .nombre-empresa {
    font-size: 16px;
  }
  .d-grid button .incluye,
  .d-grid button .descripcion {
    font-size: 13px;
  }
  .c-empresas button span {
    font-size: 10px;
  }
  #inputUsuarios {
    font-size: 16px;
    width: 25% !important;
  }

  /* Panel derecho */
  .contenedor-precios h5 {
    font-size: 24px;
  }
  .c-precios, .c-total, .c-total-descuento {
    font-size: 12px !important;
  }
  .contenedor-precios > div {
    padding: 2px;
    margin-top: 10px;
  }
  #btnDescargar {
    width: 160px;
    font-size: 13px;
    padding: 8px;
  }

  /* Sección implementación */
  .c-implementacion {
    margin-top: 40px;
  }
  .c-implementacion .c-titulo h2,
  .c-implementacion .c-titulo span {
    font-size: 30px !important;
  }
  .c-implementacion .c-descripcion h2 {
    font-size: 18px !important;
  }
  .c-implementacion .c-descripcion p {
    font-size: 14px;
  }
  .c-implementacion .deshijo,
  .c-implementacion .deshijos {
    width: 95%;
    padding: 15px;
    border-radius: 20px;
  }
  .c-incluye1,
  .c-incluye2 {
    padding: 15px;
    width: 100%;
    border-radius: 20px;
  }
  .c-incluye1 .t-principal,
  .c-incluye2 .t-principal {
    font-size: 18px;
  }
  .c-incluye1 .titulo,
  .c-incluye2 .titulo {
    font-size: 13px;
  }
  .c-incluye1 p,
  .c-incluye2 p,
  .c-incluye1 .des,
  .c-incluye2 .des {
    font-size: 13px;
    margin-left: 8px;
  }
  .c-incluye1 .des,
  .c-incluye2 .des {
    margin-bottom: 15px;
  }
}

/* Media Queries para móviles (sm y xs: <768px) */
@media (max-width: 767.98px) {
  /* Ajustes generales para contenedor calculadora */
  .contenedor-calculadora {
    border-radius: 15px;
    padding: 1px;
	top:-50px;
	  position:relative;
  }
  .contenedor-calculadora p {
    font-size: 14px;
  }
  .contenedor-calculadora h2 {
    font-size: 20px !important;
    margin-top: 15px;
  }

  /* Panel izquierdo */
  .c-datos {
    margin-left: 0 !important;
    padding: 5px !important;
  }
	.c-datos-hijo{
		padding:10px;
	}
  .c-empresas {
    padding: 5px;
  }
  .d-grid button .nombre-empresa {
    font-size: 14px;
  }
  .d-grid button .incluye,
  .d-grid button .descripcion {
    font-size: 12px;
  }
  .c-empresas button span {
    font-size: 9px;
  }
  #inputUsuarios {
    font-size: 14px;
    width: 100% !important; /* Más ancho para toque táctil */
  }

  /* Panel derecho */
  .contenedor-precios h5 {
    font-size: 20px;
  }
  .c-precios, .c-total, .c-total-descuento {
    font-size: 11px !important;
  }
  .contenedor-precios > div {
    padding: 1px;
    margin-top: 5px;
  }
  #btnDescargar {
    width: 100%; /* Ocupa todo el ancho para fácil toque */
    font-size: 12px;
    padding: 10px;
  }

  /* Sección implementación */
  .c-implementacion {
    margin-top: 30px;
  }
  .c-implementacion .c-titulo h2,
  .c-implementacion .c-titulo span {
    font-size: 25px !important;
  }
  .c-implementacion .c-descripcion h2 {
    font-size: 16px !important;
  }
  .c-implementacion .c-descripcion p {
    font-size: 12px;
  }
  .c-implementacion .deshijo,
  .c-implementacion .deshijos {
    width: 100%;
    padding: 10px;
    border-radius: 15px;
  }
  .c-incluye1,
  .c-incluye2 {
    padding: 10px;
    width: 100%;
    border-radius: 15px;
  }
  .c-incluye1 .t-principal,
  .c-incluye2 .t-principal {
    font-size: 16px;
  }
  .c-incluye1 .titulo,
  .c-incluye2 .titulo {
    font-size: 12px;
  }
  .c-incluye1 p,
  .c-incluye2 p,
  .c-incluye1 .des,
  .c-incluye2 .des {
    font-size: 12px;
    margin-left: 5px;
  }
  .c-incluye1 .des,
  .c-incluye2 .des {
    margin-bottom: 10px;
  }
}




/*  CSS PARA MOVILES    */











